Astrid Hackenberg – Multi-tenant applications on Windows Azure
There are four models of sharing:
- Independent – share nothing
- Isolated – share infrastructure (IAAS)
- Isolated – share platform (PAAS)
- Shared – Share everything (SAAS)
SAAS can be implemented on different ways too. Think about sharing the same Windows Azure worker roles, the same website, but also the same database or even the same data.
When you “apply” SAAS to an existing product think about Access Control and Customization. How can you isolate the users, so no data becomes cross polluted? Users will want to customize the GUI so it looks like an application just for them.
The implementation comes with a lot of choices about what to share. Think about this when you use queues, cache, blobs, tables, compute and endpoints.
Astrid used the FrabrikamShipping sample for showing the migration of an app to the cloud and to SAAS. The new code is in a separate project.
For autoscaling the Cloudninja sample (cloudninja.codeplex.com/) was used.
Alex Turner – Tips and tricks to use Visual Studio to the fullest
Alex showed a lot of keyboard shortcuts so you don’t need the mouse a lot. All the tips are in his presentation that will be published.
Bart de Smet – Behind the scenes of C# async
Bart starts his talk stating it is actually level 600, some stand up an leave, same as last year. He shows a method with three lines of code containing the await statement and then he shows the code the compiler will make of it.
The compiler creates an Awaiter struct (struct as it is not heap allocated), checks if the task is already completed and if not moves it to the threadpool.
Then the sample is expanded with a foreach loop, which the compiler converts into a statemachine.
The async / await stuff comes in the dotNET 4.5 framework and in Visual Studio 11. It is nice to know what the compiler does with it, but in reality you’ll never need to know. 😉
Martin Woodward – Taking your ALM to the cloud with Team Foundation Service
This is Team Foundation on Windows Azure made available as SAAS. It is still under development and a preview is on tfspreview.com. You’ll need an invite to get an account (leave comment if you want one)
- As a startup you don’t need hardware (it is in the cloud)
- It needs low bandwidth (Microsoft uses it cross geo)
- Installation is a breeze (just signup and wait a few minutes, done)
- Updates are quicker (you can opt-out of an update if you want)
- It is public facing (no vpn, even your customer could access it)
Some stuff is still missing in compare with the boxed version
- No data warehouse
- No sharepoint integration (you could use on premises, office 365 …)
- No Virtual Test Lab manager
Olaf Conijn – Unittesting Windows Phone 7
Unittesting of your Windows Phone 7 project can be done on the device with a port of the Silverlight unittesting framework. The port has been done by Smarty Pants. The product is not maintained and the automation part of the framework is not ported. This means no GUI testing by clicking the actual button from the unit test.
Option two is unittesting from Visual Studio by changing all Silverlight referenced assemblies to be copied local. Do the same for all Windows Phone 7 assemblies. These Windows Phone 7 assemblies contain no code, but are needed to compile and to run the unittests. Now you need to mock the dispatcher and the database by extracting an interface and use something like unity to resolve the implementation of the interface (the mock at unittest and the actual dispatcher/database on runtime)
A little sidestep showed that a webrequest has this build in by using the RegisterPrefix operation. Implement your own WebRequestPrefix that returns a mocked WebRequest and IAsyncResult. Return a mocked WebResponse too and you’re done.
Microsoft is pushing Windows 8, dotNET 4.5, MVC4 and VS11 to developers with “build what’s next now”. None of the new stuff is production ready even the Team Foundation Service is a preview. Nice to see what is coming, but it will take some time before I introduce this to a client.
But hé, we’ve got Windows Azure a while now, just like Windows Phone 7. These topics were well represented on techdays. And the overall message was “this stuff is coming, but your old stuff will keep working”.