26 Apr 2010 @ 9:18 PM 

Last Monday 19th April 2010 the Philippines launched Visual Studio 2010 and the Windows Azure Platform all in one go, and I was invited to speak on the developer track about Windows Azure, twice!

HotelWindowCity

The theme for the event was “First Flight” and all the presenters were ‘Captains’. The community event was organised through a Facebook group and attracted a lot of interest. It was held in the Shangri La in Manila, which is also where I stayed for the weekend.

I flew in on the Saturday night (late) and spent Sunday practising my talk and took a brief walk out into the nearby shopping centre to sample the local cuisine. And although I didn’t get to see much of the Philippines, I have to say that the food is reason enough to visit!

The event was fantastic. Looking at the profiles of some of the attendees on Facebook, I could see people were travelling from all around to attend the event. And why not? It had some great speakers.

image

There were separate business and developer tracks and of course I spent all my time hanging around with the developers! First up, Tanuj Vohra, Partner Director PM for the testing tools in VS2010 did a keynote about the Visual Studio release. Tanuj just came off a road trip through Australia as well and is working very hard to promote the Visual Studio release all around the Asia Pacific region.

Chappell Then David Chappell gave a keynote about the Microsoft Windows Azure Platform. I had seen David present before (at the Australian launch of Azure) so was not surprised by how great a speaker he is.

David gave an overview of the Azure platform and touched on the types of scenarios where cloud computing was and was not relevant. He also did a comparison of competitor platforms showing their strengths and weaknesses and how their services relate to the Azure platform.

Lunch kicked in after that and while we were all gorging ourselves on the sumptuous local cuisine, the event workers sprung into action and transferred the main hall into 2 separate presentation rooms. I had the honour of kicking off one of the tracks with an introduction to Windows Azure for developers. Following me was a Sharepoint talk, and then I presented my second topic which was about building highly scalable applications with Windows Azure.

One of the things that surprised me about the Filipino developer community was how much they loved to take photos. Every presenter, every sign, was a photographic opportunity. I wanted to get into the spirit as well, so as I took the stage for my first talk, I turned the tables and took some photographs of the beautiful audience. They were too big to get into one shot, so I had to take two, left and right respectively:

Audience2 Audience1

I didn’t notice this until just now when I sat down to start writing this post: every single person is smiling! But from my short experience in the Philippines, this is what the people are like. Everyone smiles at you and says hello. Oh, and did I mention how good the food is?

All in all I had a great time and wish I could have spent more time to investigate the country and the city of Manila. It seems like there is a great developer community there and next time I return I’d love to get along to a user group or similar event. Oh, and to eat the food too.

Below are my slide decks and example solution from the event. Please let me know if you need any further assistance with Azure, I’d be more than happy to help.

Slide decks and Demo Code

Tags Tags: , , ,
Categories: Azure
Posted By: Steven Nagy
Last Edit: 26 Apr 2010 @ 09 18 PM

E-mailPermalinkComments (0)
 05 Apr 2010 @ 10:40 AM 

User environment virtualization is not a concept I had heard of before a week ago.

Desktop virtualization seems all the rage within organisations currently. As a consultant I float around between companies and although my focus is the development space, I often overhear other goings-on within the IT departments and this is certainly a big focus for a lot of medium-large businesses and government agencies. Desktop virtualization is about separating the desktop operating environment from the underlying hardware, keeping this ‘virtualized desktop’ on a central server. Some examples of desktop virtualization are Citrix XenDesktop and Sun Virtual Desktop Infrastructure.

Application virtualization is certainly nothing new either. This is about separating the application from the desktop environment, installing applications on demand or through streaming to the desktop environment as requested. App virtualization has been around for a long time in some form or another. Some current examples of app virtualization products include Citrix XenApp and Novell ZENworks Application Virtualization.

The advantages of both of these technologies is that you can move from workstation to workstation, taking your desktop or applications (or both) with you.

But there is something missing here, something I will try to illustrate with an example. In this scenario your organisation makes use of application virtualization. Your user ‘Michelle’ is a .Net developer and needs to move from one workstation to another. After she logs in to her new workstation, the apps for which she has licenses are delivered to her new desktop. Unfortunately she has to reconfigure her new desktop and customise the applications to her preferred settings. Michelle sets her web browser homepage and because her company doesn’t use roaming desktops, she needs to insert her browser favourites again. When she opens MS Word she needs to change her default template. Finally she opens Visual Studio and is facing all the vanilla defaults. She needs to install a special code colouring theme that helps her eyes adjust, and rearranges all the dockable windows into the spots she prefers. Of course, SQL Management Studio has no idea about her default connections – they were stored on the other machine, so she needs to add them again, except of course she can’t remember them all.

I think you get the idea. User specific environment settings are pretty important. Every single application we use has some sort of customisable settings, and most power users find it a hassle (and lose productivity) when they need to reconfigure those applications. As a software developers, I can (and have done) write settings providers and store those settings in a central repository. That’s great for our app, but it does little to help a user with their other apps, and more importantly, doesn’t help consolidating user settings. It makes sense to have a unifying solution that can abstract the settings from our applications. That’s where AppSense steps in.

Last week I had a chat with the VP of Strategy at AppSense, Martin Ingram. Martin led me through the product suite and we had a good chat about cloud computing in general before focusing on the product itself. AppSense is about environment virtualization, centralising settings for all your applications such that they are available wherever you login, regardless of your organisation’s Desktop and Application Virtualization strategies (or lack there of). Quoting the AppSense Environment Manager product page:

AppSense Environment Manager provides users with a ‘follow me’ personality – providing the same managed yet personal experience regardless of how the desktop is delivered. Combinations of virtual, local, published, streamed and provisioned desktop components are dynamically personalized as the employee uses them – enabling IT to use best of breed technologies without having to worry about consistency of user experience.

What I thought was really cool about AppSense is the operating system abstraction. Imagine if you moved over to a Mac and you still received the same application settings! Or perhaps you aren’t using any desktop or app virtualization at all, and want your standard installed application settings transferred to a new workstation if that app is installed. AppSense does all this and more.

Here’s how it works. An agent (on PC its a Windows Service) is installed that talks back to a centralised service. This agent has hooks in the operating system that let it intercept reads/writes to all the places where configuration can occur: registray, file system, and even database calls (with a little configuration). Those settings are then abstracted to a neutral XML format, and stored in a database (for versioning reasons). When the user logs in to another machine with a different OS, the agent on that machine knows how to convert the XML back into the appropriate settings for that OS type. To me, it appears to be a very pluggable model.

The great thing about the implementation is that it allows environment virtualization delivery from anywhere, making it a great fit for the cloud. The actual payload (XML) is quite small because the local agent does all the work. They are also considering/prototyping some more enterprise agnostic solutions to environment virtualization and delivery for the common user. I look forward to seeing where they can take the product. I’ve already told Martin that as a consultant I find myself on a different computer every week as I move between clients. Environment virtualization is ideal for me because I have so many apps that I need to configure that I tend to stick with vanilla defaults. Why should I have to make that compromise? I’m imagining an AppSense online profile where with a simple click I can have my local workstation configured exactly how I like it, no matter where I am.

AppSense currently has about 180 employees world wide and seems to be the leader in this field. Their Environment manager product is somewhat unique although there are similar offerings available. It is written in C# and C++, and the development team seems to have adopted some Agile principles. They use TFS for source control, reporting and item tracking, and have even extended it through its APIs to better support their process.

If you think your organisation needs user environment virutliazation, I suggest you go check out AppSense.

Tags Tags: ,
Categories: Cloud
Posted By: Steven Nagy
Last Edit: 05 Apr 2010 @ 10 40 AM

E-mailPermalinkComments (3)
\/ More Options ...
Change Theme...
  • Users » 76
  • Posts/Pages » 60
  • Comments » 96
Change Theme...
  • VoidVoid
  • LifeLife
  • EarthEarth
  • WindWind « Default
  • WaterWater
  • FireFire
  • LiteLight
  • No Child Pages.