DCSIMG
April 2011 - Posts - Arik Poznanski's Blog

Arik Poznanski's Blog

It CAN be done with .NET

News

MVP

MCC

CodeProject MVP

MCPD

MCTS

Subscribe to my blog by email

Arik Poznanski LinkedIn Profile

Email: arik.com at gmail dot com
or, use this form

Locations of visitors to this page


Sela Group

Sela Canada

DZone MVB

Links

Official Blogs

WPF / SL Blogs

Developers Blogs

April 2011 - Posts

MIX 2011: Advanced Feature in Silverlight 5

This session was delivered by Nick Kramer, Senior Program Manager from Microsoft.

IMG_20110414_150931

Topics discussed:

Unrestricted file access

Silverlight 5 trusted apps can access all files. Silverlight 4 trusted apps could only access My Documents and friends.

Access is done using the standard .NET Directory.EnumerateFiles and File.OpenRead

IMG_20110414_150250

Trusted apps in-browser

In Silverlight 4 only out-of-browser application could be trusted with user consent

In Silverlight 5: in-browser trusted apps with admin consent

Trusted apps can access files, Use P/Invoke, COM Interop, etc.

IMG_20110414_150641

IMG_20110414_150817

Group policy

Administrators can set whether a Silverlight 5 application is trusted or not.
The administrator should say which certificates are trusted, same as ClickOnce.

IMG_20110414_151358

P/Invoke

Allows calling system APIs. This could be done in Silverlight 4 using COM, but at sometimes it can be much robust to do the call directly.

Using P/Invoke is optimized for win32 api and native c++ code.

COM Interop is optimized for COM automation APIs, like office.

Using P/Invoke in Silverlight works the same as in .NET Framework

IMG_20110414_151613

HTML support

In Silverlight 5, in-browser WebBrowser control is supported.

IMG_20110414_152547

 

Multiple windows

In Silverlight 5 you can instantiate a Window class as much as you want, only in out-of=browser applications. Also the restrictions on the window position and title were loosen.

IMG_20110414_152930

 

64-bit support

Silverlight 5 can be run in a 64bit process, this means it can now be run under a 64bit browser.

IMG_20110414_153315

 

PivotViewer

PivotViewer will be shipped as part of Silverlight 5 SDK.

Main improvements:

- Dynamic client based collections, instead of static pre-generated XML data

- XAML based visuals, instead of bitmaps

- improved customizability

IMG_20110414_153622

IMG_20110414_153921

That’s it for now,
Arik Poznanski.

kick it on DotNetKicks.com Shout it

MIX 2011: Enhanced Push Notifications and Live Tiles for Windows Phone

This session was delivered by Thomas Fennel, Program manager, from Microsoft.

IMG_20110414_133025

Thomas stated his session by showing what push notifications and tiles are.

Push notification is how you can engage the user when your app is not on the foreground. Tiles are the squares on the Windows Phone home screen.

IMG_20110414_133317

Toast notifications – on the top.

Tile notifications – most popular – includes data for count, title (of app or arbitrary string) and background image.

Then, Thomas explained the normal architecture for a push notification application:

IMG_20110414_133753

Following are the typical scenarios / applications that you would want to use push notifications:

IMG_20110414_134240

This includes:

  • Weather apps
  • Send to WP7
  • Turn based games
  • Twitter clients
  • Traffic map
  • etc.

Thomas then continued with several code samples of these technologies.

That’s it for now,
Arik Poznanski.

kick it on DotNetKicks.com Shout it

MIX 2011: Interactive Panel: Kinect and Natural User Interfaces

The panel participants were Curtis Wong, Alex Kipman, Darren Bennett and Kristin Tolle.

IMG_20110414_120416

Following is a brief summary of the questions and answers discussed in the panel.

Question: What do you think will be the trends in NUI in the future?

Answer by Bennett: NUI used anywhere, not just in games.

Answer by Kipman: Using NUI to create a world with less technology, i.e. there will be no need to learn technology, instead the computer will better understand us. Also, the rise of speech technology and the merging of different inputs to accomplish a goal. A world where a phrase like “show me more of that” can be actually work using the speech recognition and NUI.

Answer by Wong: Using the sensors to understand context and intent.

 

Question: How do you see: users with disabilities

Answer by Kipman: Kinect will let us solve this kind of problems in new innovative ways. The potential is magnificent.

Answer by Bennett: Kinect lets you create whatever you want. This can be used, for example, with Autistics, to promote coordination training using the Kinect sensor which is a much more engaging system.

Question: What is natural, when you have cultural differences (like depth people)?

Answer by Kristin: Sign language is very natural

Answer by Bennett: When more data will be gathered we will understand it better

Answer by Kipman: There is no “wrong” way to do things (consider driving..), in the future the world will shift from a view of right / wrong to a more probabilistic world.

Answer by Wong: NUI = Natural User Interactions (not interface)

 

Question: What is the business approach for Kinect SDK based applications?

Answer by Kipman: Out first focus was entertainment in Xbox, later we released the SDK to see what can be done. This is an ongoing journey, nothing more can be shared yet.

 

Question: What is the reaction to the open Kinect community and are you considering embracing this community?

Answer by Kristin: Of course, the SDK will be released as an open source project.

 

Question: Can we get the information of how to do things more ergonomically?

Answer by Kipman: Absolutely, there are already stuff like this. Of course, it depends on the needed experience. Some things should be fun and not fitness or ergonomic oriented.

 

Question: How about researching bug animals?

Answer by Kipman: This is why we released the SDK.

Question: The trend in electronics is usually minimization. what are you expecting in the Kinect future?

Answer by Bennett: The Kinect may be small enough to be portable and may have more range.

Answer by Wong: Similarly to the movie “Minority Report”, such sensors will be deployed everywhere. Of course, this bring the privacy question to the table.

Question: How similar will the Windows SDK be regarding to the Xbox SDK?

Answer by Kipman: They won’t be similar right away, eventually in the future they will be the same. the Xbox version is much more optimized. The APIs will be different since every platform has its own conventions.

Question: What can be tracked using the Kinect sensor?

Answer by Kipman: 20 joints in the Xbox edition. In the PC, the same, but not on the first day.

Question: Can you specify what hardware can we expect in the next versions of Kinect? better camera quality? other sensors?

Answer by Kipman: No. Can’t elaborate.

Question: What is next after entertainment?

Answer by Wong: World telescope is not a game, it shows data.

Answer by Bennett: entertainment is a good starting point, will see what’s next in the future.

Question: What was the hardest part while developing the Kinect sensor?

Answer by Bennett: The platform hardware kept changing.

 

Question: What type of apps are you expecting to see using the SDK?

Answer by Kipman: Exactly those I can’t imagine.

 

That’s it for now,
Arik Poznanski.

kick it on DotNetKicks.com Shout it

MIX 2011: Mono: State of the Union

This session was delivered by Miguel de Icaza, VP developer Platform, Mono Team, Novell.

IMG_20110414_103044

Miguel started by announcing the coming monospace conference: July 23 – July 25, in Boston, MA.

Then Miguel presented the different mono related projects and their status:

Mono includes Mono for iPhone (MonoTouch), MonoMac, Mono for Android, MonoDevelop IDE for Mac and Windows, Moonlight 4 (mono based Silverlight) and more.

Miguel did thanked Microsoft for the large amounts of code it contributed to the mono project. MEF, DLR and F# are core contributions from Microsoft, among other things.

Then, Miguel talked about the “Compiler as a Service” APIs that is available on mono. Basically what it gives you is an evaluate command that can compile and run a C# string at runtime.

Next Miguel talked about the Manos de Mono project which goes along the lines that creating more than a single thread per CPU is a waste.

IMG_20110414_105937

The next subject of the talk was MonoTouch, which is a .NET and C# implementation for iPhone and iPad. It includes all the standard .NET APIs, but instead of implementing WinForms or WPF on the apple devices, they simply created a managed wrapper around existing Apple UI frameworks.

MonoDroid is a .NET and C# implementation for Android, and similarly to MonoTouch, the Android UI was managed wrapped.

That’s it for now,
Arik Poznanski.

kick it on DotNetKicks.com Shout it

MIX 2011: Sensor and Camera Access in the Next Version of Windows Phone

This session was delivered by Mark Paley, Principal Lead Program Manager from Microsoft.

IMG_20110414_091553

The next version of Windows Phone will support a few new sensors, like Gyro and Compass sensors.
Mark started the session by showing several camera and sensors demo.

Some common usage scenario:

  • Sudoku solver
  • Barcode scanner
  • Custom photo application
  • etc.

IMG_20110414_090552

So, what sensors are supported?

  1. Accelerometer – standard on all windows phone devices, provides acceleration data over 3 axis
  2. Compass – gives magnetic heading
  3. Gyroscope – gives rotation velocity (in radians per second) over 3 axis

Mark showed a simple compass application:

IMG_20110414_090927

And explained the compass measures bearing coordinate system.

IMG_20110414_091054

Then Mark presented the new Motion sensor, which is basically all the sensors combined with some math and an easy interface.

IMG_20110414_091210

The motion sensor is the recommended sensor to use, if available.

What it does is it combines the data from all 3 sensors (gyro, compass, accelerometer) to give more accurate information. Since every sensor has it’s own (different) stability problems, we can use all the data combined to eliminate correct the data.

Mark also showed a nice demo of using the motion sensor and how it improves the stability of the measured data.

The motion sensor provides its data in 3 representation:

  • Euler angles
  • Rotation matrix
  • Quaternion

All the sensors have similar API. They all got an IsSupported property, i.e. Accelerometer.IsSupported, Compass.IsSupported, Gyroscope.IsSupported

To use any of the sensors, one needs to create an instance of the sensor, register for the CurrentValueChanged event and start the sensor by using the Start() method.

The compass sometimes needs calibration and thus has a Calibrate event which is raised when needed.

Also, all sensors have a TimeBetweenUpdates setting which controls how often does the event gets generated.

The accelerometer sensor also supported a polling mode where one can use the property accelerometer.IsDataValid and get the current value using accelerometer.CurrnetValue.

Then, Mark showed another demo, this time using the motion sensor and XNA.

So, when you shouldn't use the motion sensor?

  1. When you want data specific to the sensor reading
  2. When you want to do advanced usages like custom motion algorithms or gestures detection
  3. When Motion.IsSupported is false. Note, the motion sensor will work even without a hardware gyroscope sensor

Next, Mark started to talk about the camera sensor.

He showed some demos and presented two ways of using the camera sensor:

  1. Using the PhotoCamera class, which is new in the next version of Windows Phone
  2. Using Silverlight 4 WebCam API, ported from desktop SL, with a few features specific for phone

So, when should you use each API?

You should use the PhotoCamera class when you:

  1. Want to take high resolution photos
  2. Want to handle the hardware camera button
  3. Want to handle focus and flash

You should use the WebCam API when you:

  1. Want to reuse Silverlight 4 knowledge
  2. Want to easily target desktop and phone
  3. Want to record video and audio into a file

Next Mark showed another camera demo, using the PhotoCamera class which has the following APIs:

  • ButtonHalfPress event – raised when the camera hardware button is half pressed
  • ButtonFullPress event – raised when the camera hardware button is fully pressed
  • ButtonRelease event – raised when the camera hardware button is released
  • CaptureCompleted event – raised when the capture of an image is completed
  • camera.Focus() method – will cause the camera to focus
  • camera.CaptureImage() method – will starts to capture an image from the camera sensor

A few more things that are good to know:

  • Most scenarios requires hardware for debugging, only accelerometer and location have an emulator
  • Motion sensors will try to return a result, even if not all 3 sensors exists
  • The camera video output is MP4

That’s it for now,
Arik Poznanski.

kick it on DotNetKicks.com Shout it

MIX 2011: My Schedule for Day 3

MIX11Logo_thumb_0C4B5F9B_thumb[1]_thumb

Following is my planned schedule for the third day of MIX 2011.
Note: I have a Plan B for almost every lecture, just in case.

Day 3, 09:00-10:00
Session
: Designer and Developer: A Case for the Hybrid
Presenter: Jeff Croft
Description: Should designers code? Or is is okay for one to specialize in visual design and expect others to build their vision? As we get farther and farther away from the days of the "webmaster," and become an industry of specialists, are we losing some of the beauty, efficiency, and innovation that can be found at the point where design and development intersect? Jeff Croft, hybrid designer and developer, makes the case that the best web products will always be created by designers who understand the building blocks of the web: the code.

Day 3, 09:00-10:00, Plan B
Session
: The Future of HTML5
Presenter: Giorgio Sardo
Description: We love HTML5 so much that we want it to actually work – in an interoperable, predictable manner across all browsers. In this session you will learn the current status of HTML5 and the Open Web Platform and what will take to bring it to a Recommendation. You will also preview the next emerging standards and understand Microsoft implementation approach through prototypes. Finally ride the DeLorean at 88mph and discover some of the work being done by Microsoft with the W3C on what will lead into HTML6.

Day 3, 10:30-11:30
Session
: Mono: State of the Union
Presenter: Miguel de Icaza
Description: Come learn how Mono can help every one of your current projects: from our C# compiler as a service to running your .NET code on iPhone, Android and Mac. All demos will feature our amazing MonoDevelop cross platform IDE. Come to be energized and fall in love with .NET all over again. This is your second honeymoon. Do not miss it.

Day 3, 10:30-11:30, Plan B
Session
: Analyzing and Improving Windows Phone Application Performance
Presenter: Jeff Wilcox
Description: Been wondering how to tweak that extra bit of performance out of your WP7 app? Come learn how to analyze the performance of your Windows Phone application and make it faster using top techniques and the new profiling tools.

Day 3, 12:00-13:00
Session
: Mind Bending UX - UX Lightning Series
Presenters: Arturo Toledo, Sean Gerety, Rick Barraza and Robby Ingebretsen
Description: Bend your mind and relax your senses in this "Mind Bending" UX lightning session, packed with four topics on how to think outside of the proverbial design box. UX Lightning sessions are a full hour session with 4 exceptional speakers each presenting 10 minute topics. Hear from Sean Gerety speaking on "What Software can Learn from the World of Magic", Arturo Toledo with "Extending the Human DNA with Design", Rick Barraza with "What Brains, Football and Hobbits teach us about Designer & Developer", and Robby Ingebretsen with "Farming for Ideas: How to Be The Most Creative You". Attendees will learn from these experts how to rethink design and UX.

Day 3, 12:00-13:00, Plan B
Session
: Interactive Panel: Kinect and Natural User Interfaces (NUI)
Presenters: Alex Kipman, Darren Bennett, Curtis Wong and Kristin Tolle
Description: With Microsoft Kinect for Xbox 360, you are the controller. The system senses the 3rd dimension (depth) of the players and the environment, and revolutionizes the experience of how a player interacts with games and entertainment. With its broad availability and low cost, many researchers and practitioners in computer science, electronic engineering and robotics are leveraging the sensing technology to develop new ways of interacting with machines. The NUI era is upon us. In this panel, Kinect device and game creators will converse with NUI researchers and scientists, focusing on some of the principles behind the Kinect sensing technology and reflecting on the potential for computers that can "see" in 3-D. What does this mean for how humans and computers will communicate going forward? With vision, computers are better able to understand user intention, learn from what they see and reason about what the user really wants to do, all without responding to events streamed from mice and keyboards. The audio/voice recognition technology advancements in Kinect plus accurate 3-D sensing help make natural user interaction with computers real. Technology is starting to become invisible. What does this all mean? What do you want to know? This is an interactive panel which means attendees will be encouraged to ask questions when they have them in mind to help drive the conversation. So, come prepared with questions and ask whatever you want.

Day 3, 13:30-14:30
Session
: Good JavaScript Habits for C# Developers
Presenter: Elijah Manor
Description: It seems that far too many people come to jQuery thinking that their previous knowledge with object-oriented languages like C# or Java will help them be successful at client-side scripting. In many cases, you can be successful with this approach, however, the more JavaScript you write you will inevitably find yourself uncovering strange bugs because you didn't take time to learn JavaScript properly. This session is targeted for developers that use jQuery, but haven’t invested adequate time to learn some of the foundational JavaScript concepts that differ from C#. If you would like to avoid some of these common mistakes when bringing your existing expertise to JavaScript, then please join me as I try to explain some of the differences.

Day 3, 13:30-14:30, Plan B
Session
: Windows Phone Session (TBA)
Presenter: Thomas Fennel
Description: TBA.

Day 3, 15:00-16:00
Session
: Advanced Features in Silverlight 5
Presenter: Nick Kramer
Description: Looking to unlock more advanced capabilities in Silverlight? Silverlight 5 adds significant features including Multiple Windows, Unrestricted File Access, P/Invoke, Group Policy, 64-bit, and HTML support. This session will dive into the features, their APIs, and the scenarios these features can enable.

Day 3, 15:00-16:00, Plan B
Session
: Windows Phone Session (TBA)
Presenter: Sean McKenna
Description: TBA.

That’s it for now,
Arik Poznanski.

kick it on DotNetKicks.com Shout it

MIX 2011: Back to Square One

This session was delivered by Nishant Kothary.

IMG_20110413_165542

In this session Nishant tries to solve the $64000 question: Why do we suck at predictably building great software?

IMG_20110413_170318

This session was simply amazing. There are almost any software in this session, and yet Nishant succeeded to pass a very interesting lecture in a fun way.

I deliberately don’t want to elaborate because I know I can’t express it better than Nishant. Just go see the video, fun is guaranteed.

That’s it for now,
Arik Poznanski.

kick it on DotNetKicks.com Shout it

MIX 2011: Graphics and 3D with Silverlight 5

This session was delivered by Aaron Oneal, Program Manager from Microsoft.

IMG_20110413_155343

Aaron started his presentation with a very cool demo of the 3D capabilities of Silverlight 5. His demo used a model containing 140,000 triangles, with excellent performance.

IMG_20110413_153014

IMG_20110413_153159

Next, Aaron discussed why 3D graphics was emphasized in Silverlight 5 (3rd most wanted feature on Silverlight User Voice) and what are the common scenarios for using 3D graphics (geographic apps, astronomy, 3D charts and reports, medical imaging, etc.)

Aaron continued with a comparison of Silverlight 3D graphics with other 3D APIs like WPF 3D, XNA, Direct3D and more.

IMG_20110413_154109

Then Aaron explained how to use 3D Graphics in general and specifically how to do it in Silverlight 5. This includes basic model creation, animation, texturing and other advanced topics.

IMG_20110413_154818

That’s it for now,
Arik Poznanski.

kick it on DotNetKicks.com Shout it

MIX 2011: What’s New in the Windows Phone Developer Tools

This mini-session was delivered by Vibhor Agarwal, Senior Program Manager from Microsoft.

IMG_20110413_143633

Vibhor presented only the new Emulator enhancements and the new profiler provided in the next version of the developer tools.

Some of the new emulator enhancements:

  • Memory model improvements
  • Media support for H.264, AAC
  • Sensor support – Accelerometer and Location

Vibhor showed a demo about the new accelerometer emulation:

IMG_20110413_144315

and new location emulation:

IMG_20110413_144441

Then, Vibhor presented how one can use the new profiler to analyze a windows phone application for finding performance issues.

The profiler has two supported modes, execution profiling and memory profiling. It was suggested that the memory profiler should be used only when you are sure this is actually a problem. The starting point should be the execution profiling.

We’ve seen several different graphs, including:

  • Frame Rate graph
  • CPU usage %
  • Memory usage
  • Storyboards
  • Image loads

IMG_20110413_145129

Of course, we can drill down and see how much CPU time we have spent in each function, like any normal profiler.

It should be noted that the profiler is a CPU sampling based profiler.

Also shown was the profiler analyzer that searches for common anti-patterns that developers sometimes use and recommends how to detect issues related to them.

All in all, very interesting presentation of an important tool.

That’s it for now,
Arik Poznanski.

kick it on DotNetKicks.com Shout it

MIX 2011: Get Ready for Fast Application Switching in Windows Phone

This mini-session was delivered by Adina Trufinescu.

IMG_20110413_141541

The agenda for this session was:

  • Application Resume User Experience
  • Application Lifecycle
  • Phone Resource Management
  • Key Developer Scenarios

Adina started by discussing the next version of Windows Phone, codenamed Mango, where there is much improvements in the area of returning to a previously active application.

To take advantage of this in your application you will need to recompile your application against the new developers tools.

Adina then explained the new application lifecycle in Mango, which includes a new “dormant” state.

IMG_20110413_140645

IMG_20110413_140742

This “dormant” state is another stage before tombstoning. In this state the application resources are almost entirly freed, except memory usage but the process is not closed.
So, returning from a dormant state doesn’t requires you to deserialize your data and reload state. Only if the application was actually tombstoned you must reload your state.

To know whether you came back from “dormant” state or “tombstoned” state you can check a new property named IsAppInstancePreserved.

Adina then presented exactly what kind of resources are cleaned on “dormant” state and who is in charge of getting them back once reactivated.

IMG_20110413_141334

IMG_20110413_141530

That’s it for now,
Arik Poznanski.

kick it on DotNetKicks.com Shout it

MIX 2011: Building In Browser Experiences with Silverlight 5

This session was delivered by Steve Lasker, Lead Program Manager from Microsoft.

IMG_20110413_113319

In this session Steve showed some of the enhancements in Silverlight 5 used to provide a more productive solution for developers.

Steve showed complete demos on the following subjects:

  • Binding in Style Setters

IMG_20110413_113906

  • Implicit Data Templates

IMG_20110413_114228

  • RelativeSource Ancestor Bindings

IMG_20110413_114448

  • Custom Markup Extensions

IMG_20110413_115824

  • Data Binding Debugging

IMG_20110413_115129

  • DataContextChanged event
  • UpdateSourceTrigger

IMG_20110413_120130

  • WCF RIA Services Enhancments

IMG_20110413_120715

  • Text, Printing & Media
    • Text Enhancements

IMG_20110413_120919

    • Text Clarity

IMG_20110413_120803

    • Vector Printing

IMG_20110413_121007

That’s it for now,
Arik Poznanski.

kick it on DotNetKicks.com Shout it

MIX 2011: Day 2 Keynotes Summary

Yet another post on MIX 2011 second day keynotes.

The Keynotes started by Joe Belfiore presenting some information about how Windows Phone Updates are done.
Specifically, Joe answered the common questions:

  • Why the update came later than anticipated? (deployments bugs..)
  • Who decides when to update? (MS and the operators)

IMG_20110413_090710

Joe stated that there are currently almost 13K apps in the Windows Phone market.
The next edition of Windows Phone Ecosystem will support 16 additional languages and up to 35 countries will be able to both publish and consume applications from the market.

The new version of Windows Phone 7 was announced, codename Mango.
Among its capabilities:

  • Internet Explorer 9 on the phone, with the same HTML 5 support. There was a nice comparison of the mobile browsers iPhone vs. Android vs. Windows Phone Mango.
  • Enable custom ringtones
  • Improved Panorama and Pivot controls
  • Sockets support
  • Built-in SQL Server
  • More launchers and choosers
  • Calendar integration
  • Motion Sensor
  • Multi-tasking via fast application switching and running certain apps in the background.
  • and many more…

IMG_20110413_094102

A Motion Sensor now wraps the complex math around the accelerometer and compass sensors.

Then Scott Guthrie came to the stage and presented some new features of the Mango developer tools like the accelerometer emulation and location emulation.

IMG_20110413_095508

And the new Windows Phone profiler that will come free as part of the developer tools.

IMG_20110413_095835

Scott also presented many performance optimizations that where done in the Mango operating system, specifically in the following areas:

  • Getting user input while scrolling
  • Decoding images loaded from the net
  • Garbage collection
  • Memory usage

Also in Mango, support for Silverlight 4, this is a nice improvement that didn’t got enough attention, IMHO.

Next Silverlight 5 Beta was announced to be available for download.

IMG_20110413_102544

Silverlight 5 presents many new features, among them:

  • Media improvements (hardware accelerated decoding)
  • New 3D XNA-based APIs
  • Binding in style setters
  • Implicit data template
  • Data binding debugging
  • and more…

Finally, the Kinect SDK for Windows was announced with a small surprise: every MIX attendee will get a free Kinect sensor to play with at home…

IMG_20110413_104443

That’s it for now,
Arik Poznanski.

kick it on DotNetKicks.com Shout it

MIX 2011: My Schedule for Day 2

MIX11Logo_thumb_0C4B5F9B_thumb[1]

Following is my planned schedule for the second day of MIX 2011.
Note: I have a Plan B for almost every lecture, just in case.

Day 2, 09:00-11:00
Session
: Day 2 Keynotes
Presenters: Dean Hachamovitch, Joe Belfiore and Scott Guthrie
Description: MIX 2011 keynotes

Day 2, 11:30-12:30
Session
: Building In Browser Experiences with Silverlight 5
Presenter: Steve Lasker
Description: Whether using MVVM or building data driven browser based plug-in experiences, Silverlight 5 addresses many of the top Data asks. See how it becomes easier to build, maintain and debug with Silverlight 5 features such as Implicit Data Templates, Custom Markup Extensions, Binding within Style Setters, TextLayout, Printing, DataContextChanged, RIA Services or Databinding Debugging within XAML. Learn how Silverlight 5 enhances your productivity and users with rich internet deployed applications.

Day 2, 11:30-12:30, Plan B
Session: Windows Phone Session (TBA)
Presenter: Andrew Clinick
Description: TBA.

Day 2, 14:00-14:25
Session
: DIVA - The Future of Live Sports Consumption on the Web
Presenter: Jim Irving
Description: Sky Sports is delivering a ground breaking video experience for their UEFA Champions League coverage using Deltatre’s Data Integrated Video Application (DIVA). In this session Jim will present a case study on how DIVA uses Silverlight and Smooth Streaming to go well beyond simple video delivery by leveraging very rich synchronized meta-data overlays. The result is an interactive, immersive, and engaging experience that shows the future for live sports consumption on the web.

Day 2, 14:00-14:25, Plan B
Session: Windows Phone Session (TBA)
Presenter: Adina Trufinescu
Description: TBA.

Day 2, 14:35-15:00
Session
: Windows Phone Session (TBA)
Presenter: Vibhor Agarwal
Description: TBA.

Day 2, 14:35-15:00, Plan B
Session: A Soccer Team in the Clouds: Social Gaming Running in Windows Azure
Presenter: Patricio Jutard
Description: Bola is a successful social game published by Three Melons - now Disney Corp - in different social networks including Facebook and Orkut. This session will present a highly-scalable, flexible, Azure-based architecture design that supports more than 10 million users with spikes of over 1.2 million daily active users and 80,000 concurrent sessions with 50 matches playing simultaneously from more than 120 countries. We'll analyze considerations of storage and performance tuning using Memcached, custom monitoring, maintenance and the incorporation of Celebrata tools as part of the solution.

Day 2, 15:30-16:30
Session
: Graphics & 3D with Silverlight 5
Presenter: Aaron Oneal
Description: Ready to take your visuals to another dimension? Silverlight 5 gives you a direct path to the GPU with a powerful immediate mode 3D graphics API. This talk provides an overview of the new features and general 3D graphics concepts, then gets technical exploring the new APIs. You will learn how to integrate 3D into your application and put the fundamentals to use by drawing 3D geometry, shading with color and texture, and creating animations. With these skills you will be on your way to differentiating your applications with high impact visualizations.

Day 2, 15:30-16:30, Plan B
Session: Script#: Compiling C# to JavaScript using Visual Studio
Presenter: Nikhil Kothari
Description: Script#, a C# to JavaScript compiler, brings the power of Visual Studio and .NET Tools to build a productive development model for creating, testing and managing applications using HTML, CSS and JavaScript along with popular frameworks such as jQuery. This session provides a hands-on look at using Script#, shares success stories and experiences from real-world use, along with a project road-map.

Day 2, 17:00-18:00
Session
: Tips for Improving Performance in Applications Built with Silverlight
Presenter: Mike Cook
Description: In its fifth version, Silverlight enables developers and designers to work together to build more impressive and complex applications than ever before, but with great power comes great responsibility. Come learn the tricks to keeping your Silverlight applications smooth and responsive and the tools to light your way should you find yourself in trouble.

Day 2, 17:00-18:00, Plan B
Session
: Back to Square One
Presenter: Nishant Kothary
Description: We’ve tried it all in our pursuit to create the next runaway software success — fancy processes, expensive tools, powerful computers, bigger budgets, smaller budgets, swankier offices, ‘expert’ consultants, astrology, rabbits’ feet, you name it. But it seems like most of us still fail. We ship late. Our products suck. Our employees quit. Our customers hate us. Why? In "Back to Square One," Nishant Kothary will attempt to answer this elusive question by expanding on insights shared in his prior highly-rated talks, "A Website Named Desire" and "The Elephant in the Room." Much like previous years, this talk will draw from fields like philosophy, psychology, economics, art, even religion, to find its answers. But the $64,000 question is — Will there be pictures of puppies this year? You'll just have to drop by to find out.

That’s it for now,
Arik Poznanski.

kick it on DotNetKicks.com Shout it

MIX 2011: Java-Script – The Language

This session was presented by Luke Hoban, a Microsoft PM that also worked on C# and F#.

IMG_20110412_162714

In his talk, Luke started by going over the history of the Java-Script language.

IMG_20110412_153614

Later he started to review the core concepts that comprises the Java-Script language.

  • The basic syntax
  • Type system
  • Objects
  • Functions
  • Prototypal inheritance

Luke gave a nice slide that contains most of the Java-Script syntax, personally I think it’s a great way to get up to speed on a new language:

IMG_20110412_153824

Other things that Luke showed were common usage patterns for Java-Script and the new features in EcmaScript 5 (=Java-Script), like the “strict mode” feature which is supported in the new Internet Explorer 10 Platform Preview 1.

All in all, Luke gave a great review of the Java-Script language and the new features in its latest version.

That’s it for now,
Arik Poznanski.

kick it on DotNetKicks.com Shout it

MIX 2011: Deep Dive MVVM

This session was delivered by Laurent Bugnion, the creator of MVVM Light.

IMG_20110412_140743

In this session Laurent talked about advanced MVVM topics that every WPF/SL developer face sooner or later.

Laurent used a demo application an showed how to solve some common issues.

For example, how can one share view-models between several different platforms (Silverlight / WP7), short answer: add shared files as links.

Also discussed: what strategy should be used to create view-models and exposes them. Short answer: Either create them in advance and expose them as properties or generate them on the fly, this is of course scenario-dependent.

Laurent also discussed the ancient MVVM question of how can one open a dialog from the view-model (short answer: IDialogService), or navigate from the view-model (S.A.: INavigationService) or invoking animations from the view-model (S.A.: States + Behaviors).

Finally Laurent discussed some common issues when unit-testing view-models.

All in all, it was an excellent lecture. It’s always nice to see top developers struggles with the same issues you face on the everyday. And if you have the same solution that’s also something..

That’s it for now,
Arik Poznanski.

kick it on DotNetKicks.com Shout it
More Posts Next page »