Thursday, December 16, 2010

Travels through Europe with Windows Azure

I've been traveling through Europe this week spreading the good word about Windows Azure and have had a great time (some photos below). Although I've been to Europe many times, it had been almost ten years since my last trip and I was going alone, so I planned it carefully.

My schedule is tight: immediately after delivering Azure training in Los Angeles I am off to the airport to catch a flight to Germany. The weather reports for Europe have not been encouraging: blizzard-level snow storms, roads and borders closed, hundreds of flights cancelled, thousands of passengers stranded, and (my favorite) a shortage of de-icing fluid for aircraft. Not sure what to expect on the other side, I boarded my Lufthansa flight.

Service on board the Airbus 340 was terrific, though flight attendants kept assuming I spoke German at first because I look German (however, my German is limited to the dining menu!). If there was bad weather the pilot handled it so well no one noticed. My business class airline seat was so full of features it would not have looked out of place in a science-fiction movie and came with a 10-page, full-color user guide. It had power, a table, sophisticated positioning controls, a reading lamp, an eyeglass holder, a shoe-holder, a fantastic video system, and converted into a full bed (perhaps the most important feature). My only disappointment was that the AC power was limited to 75 watts, not enough to power my laptop which is admittedly the largest laptop in the world. I'd hoped to work on my Azure book and was limited to just a few hours of battery life. Next time I'll bring a small Netbook with long battery life.

Looking down on the blanket of clouds from 39,000 feet reminded me of how global and all-encompassing cloud computing is. The plane had a monitor showing a visual display of our flight path, and in our approach to Europe I was delighted to see we flew directly over Dublin, Ireland and then Amsterdam, Netherlands—home of 2 Windows Azure data centers! I waved…

Arriving in Munich airport, I was wondering if my recently-acquired Windows Phone would work in Europe. Alas, my phone was unwilling to recognize a signal. My backup plan was to buy a local pre-paid phone for the week at the airport, but to my surprise this was not available. So I went through the week without phone service, relying on email when I was online in hotel rooms or on-site at training centers.

Munich is the third largest city in Germany and one of the most influential. It is also the capital of the area known as Bavaria. If you recall the 1968 film "Chitty Chitty Bang Bang", the castle in the movie is an actual castle in Bavaria. I have a personal connection to the area as my grandfather was from Bavaria.

I stayed at the Sheraton Arabellapark Hotel which I really enjoyed. Although I didn't have time to check it out, the hotel is well-known for having a pool and spa up on the 22nd floor. The 66 Grill Restaurant in the hotel was out of this world: I enjoyed every meal. If you're ever staying in the Arabellapark area of Bavaria this is a good place to stay, especially if you are a Foodie like me. The lavish breakfast buffet, included with your room, includes delicious breads, pastries, eggs, sausages, cheeses, fruits, and of course great coffee. I probably did in my diet with all the eating but everything was too good to pass up trying. Lunch and dinner were equally tasty. I particularly enjoyed trying cream of pumpkin soup with curry, local sausages and mustards, and various veal and beef dishes. If you haven't experienced them, it is difficult for me to convey to you how good basic things like bread and coffee are from this area as well as specialty dishes like goulash and spaetzle--don't miss trying them if you ever have the opportunity.

The trip to Germany would not have been complete without apple strudel, which I found at Paulaner's Wirsthaus and Biergarten. This is in the Westin Grand, a hotel across the street from the Sheraton that looks to be very high class.


Apple strudel to die for

The Windows Azure training class I taught had close to 20 people. In introducing myself I shared my personal connection to the area and apologized for the language barrier and "for being an ignorant foreigner" (this drew laughter).


Introducing myself as an ignorant foreigner

The attendees were very friendly and we enjoyed ourselves as you can see from this picture—see how happy Windows Azure makes you? Most of the attendees were new to Windows Azure but we had an expert in attendance, fellow Windows Azure MVP Christian Weyer, who was very helpful. This area of Germany is known for its hospitality and I certainly felt it!


Munich Azure training

This was an expensive trip: the dollar isn’t worth much right now when exchanging currency. My $600 became only 400 euro. I had to make sure I used credit cards for everything including taxis (no problem as long as you confirm this before starting your trip). Speaking of taxis, I had a fun experience on my first day trying to get to the Munich training center from my hotel. Getting into the cab, I showed my driver the address telling him "I think this is nearby". He looked at the address and told me to get out of the cab! --because the location was right around the corner. Ignorant foreigner, indeed!

After completing the event in Germany I flew mid-week to Amsterdam for a second training session in the Netherlands (also known as Holland). Whereas it had been snowy and cold in Munich, I was surprised to land in sunny, almost balmy conditions in the Netherlands. I was cheered to see many windmills (including some modern ones) on my taxi ride to the hotel. The nice weather didn't last long though: cold, rain, and snow were soon upon us. The snow was amazingly thick: it looked more like feathers than snowflakes.


Heavy snow beginning to fall in Nieugewein, Netherlands

The Netherlands Azure class also went very well, held in the city of Nieugewein, where we also had close to 20 in attendance. A number of the attendees had travelled from other countries including Belgium, Portugal, and Austria. You can see from these photos that this group was also friendly, fun-loving, and fond of Windows Azure. Among my new friends is ASP.NET MVP Kris van der Mast.




Netherlands Azure training

Since I live in California, I naturally host many of my Windows Azure demos in the San Antonio, Texas data center and I’d been a little worried about performance and reliability accessing them from Europe. I was pleased to see everything worked great and performed well. I also needed to take care of a production problem with one my Windows Azure applications while in Europe, and my being abroad presented no problems: when your applications are in the cloud, troubleshooting problems and updating deployments is equally easy no matter where you happen to be.

In Europe they have these really cool coffee machines everywhere that can give you just about kind of coffee drink you want and are fully automatic. Just punch in the drink you want--espresso? cappuccino? something else?--and additives such as cream or sugar, and it is instantly prepared for you. Many of these are vending-machine size and serve more than one person at the same time. If you're used to frequenting Starbucks like I am, these machines--often free to use if you're at a business location--are addictive. There was even one at the Munich airport that was free to passengers.



Just about everyone I met in Europe spoke English so I had no trouble getting around and communicating. I really enjoyed my visit and the opportunity to make new friends and get them started on cloud computing with Windows Azure. However, I’ll also be very glad to come home this weekend—the family and I have been missing each other and it’s almost Christmas!

Tuesday, November 30, 2010

New Windows Azure Features Webcasts

Last month at PDC2010 Microsoft announced the imminent availability of many exciting new features and services, some long awaited. These capabilities have just come online for use this week--some as released features and some as community previews you have to sign up for. This includes a completely new management portal and an updated SDK, so there's a lot to get used to.

I'll be covering (and demoing) the new features in a 3-part webcast series, the first of which is this Friday 12/3. Below are the dates, topics covered, and registration links.

What's New from PDC, Part 1 - Windows Azure
Friday 12/03/10
https://www.clicktoattend.com/invitation.aspx?code=152107

What's New from PDC, Part 2 - SQL Azure and Windows Azure VM Role
Wednesday 12/15/2010
https://www.clicktoattend.com/invitation.aspx?code=152108

What's New from PDC, Part 3 - AppFabric and Windows Azure Connect
Tuesday 01/11/2011
https://www.clicktoattend.com/invitation.aspx?code=152109

Hope you can join us!

Monday, November 15, 2010

AzureDesignPatterns.com Re-Launched

AzureDesignPatterns.com has been re-launched after a major overhaul. This site catalogues the design patterns of the Windows Azure Platform. These patterns will be covered in extended detail in my upcoming book, The Azure Handbook.



This site was originally created back in 2008 to catalog the design patterns for the just-announced Windows Azure platform. An overhaul has been long overdue: Azure has certainly come a long way since then and now contains many more features and services--and accordingly many more patterns. Originally there were about a dozen primitive patterns and now there over 70 catalogued. There are additional patterns to add but I believe this initial effort decently covers the platform including the new feature announcements based on what was shown at PDC 2010.

The first category of patterns is Compute Patterns. This includes the Windows Azure Compute Service (Web Role, Worker Role, etc.) and the new AppFabric Cache Service.



The second category of patterns is Storage Patterns. This includes the Windows Azure Storage Service (Blobs, Queues, Tables) and the Content Delivery Network.



The third category of patterns is Communication Patterns. This covers the Windows Azure AppFabric Service Bus.



The fourth category of patterns is Security Patterns. This covers the Windows Azure AppFabric Access Control Service. More patterns certainly need to be added in this area and will be over time.



The fifth category of patterns is Relational Data Patterns. This covers the SQL Azure Database Service, the new SQL Azure Reporting Service, and the DataMarket Service (formerly called Project Dallas).



The sixth category of patterns is Network Patterns. This covers the new Windows Azure Connect virtual networking feature (formerly called Project Sydney).



The original site also contained an Application Patterns section which described composite patterns created out of the primitive patterns. These are coming in the next installment.

I’d very much like to hear feedback on the pattern catalog. Are key patterns missing? Are the pattern names and descriptions and icons clear? Is the organization easy to navigate? Let me know your thoughts.

Webcast: Microsoft Cloud Computing Assessments: Determining TCO and ROI

On Tuesday 11/16/10 my Neudesic colleague Rinat Shagisultanov will deliver Part 2 in our webcast series on cloud computing assessments, this time dealing with how to make the business case by computing TCO and ROI.

Assessments: Determining TCO and ROI

Event Type: Webcast - Pacific Time
Event Start Date: 11/16/2010 10:00 AM
Event End Date: 11/16/2010 11:00 AM
Presenter: Rinat Shagisultanov, Principal Consultant II, Neudesic
Registration: https://www.clicktoattend.com/invitation.aspx?code=151052

Cloud computing can benefit the bottom line of nearly any company, but how do you determine the specific ROI for your applications? In this webcast you'll see how to compute the Total Cost of Ownership (TCO) for your on-premise applications and estimate what the TCO in the cloud will be to gauge your savings. You'll see how your Return on Investment (ROI) can be calculated by considering TCO, migration costs, and application lifetime. Knowing the ROI helps you make informed decisions about risk vs. reward and which opportunities will bring you the greatest value.

Sunday, October 31, 2010

First Impressions Moving from an iPhone to Windows Phone 7

Along with the other attendees of Microsoft’s Professional Developer Conference last week I received a Windows Phone, an LG E900 to be precise. It’s now been several days since I switched over from the iPhone I’d been using for the last couple of years to a Windows Phone and I thought I would share my first impressions. I’ll tell you up-front, I really like it.



iPhone Experience

First off, why was I on an iPhone to begin with? When I was ready for a new phone a few of years back there really wasn’t anything else in the iPhone’s class of user experience and innovation so it was a simple decision. Moreover, coverage where I live is poor for many of the main carriers but AT&T comes in strong which was another point in the iPhone’s favor.

I’ve enjoyed using my iPhone, but I kind of got disenchanted with Apple earlier this year when their version 4 Phone OS came out. The iTunes sync tool offered to upgrade my iPhone 3 to the version 4 OS so I accepted—and boy was I sorry! The phone became a near-useless piece of junk, with sporadic fits of slowness or outright unresponsiveness. It took a lot of research to find the right painstaking process to get back to the original OS. Apple was no help whatsoever, all but denying there was a problem. They also made some less than encouraging admissions, such as this one confessing the algorithm for showing how many bars of signal strength has been misleading. Moreover, owners of the iPhone 4 seemed to be having a lot of pain. I wasn’t sure I wanted to stay with Apple, which put me in the mood for looking around at other options. I knew Windows Phone was coming, and of course Android has been making quite a splash. I was waiting for something to push me in a particular direction.

The LG E900

That push came at PDC when attendees were given Windows Phones. The evening after receiving it I unwrapped the phone from its packaging box with anticipation—noting with some surprise the packaging claim that this phone was intended for use in Europe. I presume that’s just an artifact of this being a give-away. The “European” claim was reinforced by a Frankenstein’s monster of an adaptor, and that I wasn’t able to find an online user guide except on LG’s UK site. Things I can overlook in a free phone.



I immediately noticed the form factor difference—the LG E900 is longer and thinner than an iPhone and also noticeably heavier which gave me some concern at first; however I’ve since found the weight doesn’t bother me. I have to say, there wasn’t much in the way of instructions. The online user manual was of some help, once I tracked it down, but apparently you’re supposed to just figure out most things by exploring. For the most part this worked but it was a little frustrating not knowing how to do some basic things at first.

Making the Switch

I’m not a phone expert, and wondered to myself what I would have to do to get service on the phone. Then it dawned on me that perhaps I could just move the SIM card from my iPhone over to the Windows Phone. Would that work? I decided to find out.

An hour later, I still hadn’t gotten the SIM card out of my iPhone. That’s because it sits behind a door that isn’t easy to open unless you have a special tool or a paper clip. While this sounds simple, good luck doing it if you don’t have a paper clip handy: I tried a ballpoint pen, a plastic toothpick, a twist tie I scraped the insulation off of, and anything else I could find in my hotel room. After many tries but no success, I did what I should have done originally and went down to the hotel front desk and asked for a paper clip. 5 minutes later I had my SIM card out. It wasn’t obvious to me which way this oriented in the LG phone but I eventually figured it out through trial and error. A phone call and a text to my wife confirmed my phone service was working.

As I started to play with the phone I realized that my voice and text service was functional but not my data service. I could not browse the web or get email working. Fortunately I stumbled on this post which explains the set up steps to get your data working if you move from an iPhone to an LG E900 Windows Phone. After I’d followed these instructions to define an “APN”, data worked like a charm.

The User Interface

I hadn’t expected to like the UI of the Windows Phone all that much, for several reasons. First, it’s hard not to admire the iPhone’s user interface—the layout, size, and appearance of application icons as well as the design of many of the screens just feels right. Secondly, I’d seen the Windows Phone UI in conferences, online videos and television ads. I knew Microsoft had to strike out in a unique direction but it didn’t look all that appealing to me.

However, actually using one is a different story. The interface really works well. Three buttons on the bottom of the phone left you navigate back, go to the Start page, or search contextually within whatever app you’re in. There’s a cool feeling you get sliding and flipping around that you can’t appreciate when watching someone else do it. Those television ads that say we need “a phone to save us from our phones” are right on the money: you can get in and do your work really quickly on a Windows Phone. I like it.



I will say I wasn’t thrilled with the default red theme on my Start screen which I promptly changed to an appealing blue. Also, whatever theme color you do choose (there are ten to choose from, shown below), that color does dominate the user interface. Most of your Start screen tiles will be that color. The UI could benefit from a 2-color theme over a single color theme in my opinion. Speaking of the Start screen, those tiles are “live tiles” that contain data and some of them animate. This allows you at a glance to know if you have voice mail, text message, email, new apps in the marketplace, and so on.

Email

Setting up Outlook for my corporate mail could not have gone easier. Hotmail, on the other hand, was a different story. It wouldn’t sync, giving a mysterious error code and message that it was having trouble connecting to the Hotmail service after a few seconds. The fix turned out to be changing the mail account definition’s sync time from All Messages to Last 3 Days. This was discovered after a lot of trial and error: the error message certainly didn’t give a hint about that, nor is it clear to this day why All Messages doesn’t work (for me, anyway).

A few things took me some time to figure out. I couldn’t find a battery indicator at first; this turns out to be on the cover screen that you normally slide away right off the bat when you go to use the phone. Vibrate/ring also eluded me until I realized hitting the volume controls pops up an area for setting that.

Video and Audio

The video and audio quality are quite good. Streaming a movie from Netflix was excellent over a wifi connection—but rather blocky and dissatisfying without wifi. I watched Iron Man over the phone via Netflix and the picture was truly outstanding.

There's a 5 megapixel camera on the LG E900. It's terrific: it takes amazingly good photos and video.

Office

You get Office on the Windows Phone which is pretty cool. On my flight from Seattle back to Southern California I used Word on the phone to write a document and it was usable. It’s a little slow for me because I’m still getting used to this phone’s keyboard but that’s temporary.

App Store and Zune

The App Store experience is good and similar to the iPhone’s App Store. The number one phone app I use is email and that’s already there. Other apps I use that are already available for Windows Phone include NetFlix and Twitter. Another app I like to use on the iPhone is Kindle: fortunately at PDC it was announced Kindle is coming soon for Windows Phone and it was demonstrated in the keynote talk. Another favorite iPhone app of mine is Scrabble; we’ll have to see if that becomes available on Windows Phone. The app store experience is good but of course there aren’t as many apps yet for Windows Phone as for longer-established phones. We developers need to get busy creating great Windows Phone apps.

Just as iTunes is both the music/video store and sync tool for iPhone, Zune servers that purpose for Windows Phone. Once I installed Zune on my PC and connected the phone to it, I was able to download music (on a 14-day trial) and move music and pictures over to the phone.

Development

Another reason to get excited about Windows Phone is that you can program for it in Silverlight, which is a technology I use quite often. Moreover, Windows Phone and Windows Azure cloud computing go very well together. At PDC, Steve Marx gave a really great session on joint phone-and-cloud development which I highly recommend. There’s definitely some phone+cloud development in my future.

Conclusions

It’s not fair to compare a phone you’ve been using for a couple of days against one you’ve been using for a couple of years, but these are my first impressions. So far, I haven’t looked back!

Wednesday, October 27, 2010

Azure Storage Explorer 4 Beta Refresh

Last week we released Azure Storage Explorer 4. We have released several refreshes since then, in order to respond to feedback from the first several hundred downloaders. Some of these refreshes are important because they fix a bug or add a valuable feature. If you get the latest refresh (Beta 1 Refresh 4 or later), Azure Storage Explorer 4 will now notify you when there is a new version so you won't have to remember to check back on the CodePlex site for updates. If you're on Azure Storage Explorer 4, please update to the refresh so that you'll have the best experience.

Here are some of the features added in the refreshes:

• Blob uploads now automatically set ContentType based on file type
• CSV download/upload now preserves column types
• New download/upload formats supported: Plain XMl and AtomPub XML
• UI improvements
• Private/public folder icons indicate whether blob containers are public or not
• Automatically checks for a new software version
• Checks for and corrects blob containers with old (outdated) permissions attributes and updates to current Azure standard
• Preserves window position and size between sessions
• Allows culture to be set

Friday, October 22, 2010

Azure Storage Explorer 4 Beta Now Available

I'm pleased to announce the public beta of Azure Storage Explorer version 4 is now available. Beta 1 can be downloaded from CodePlex.

Azure Storage Explorer allows you to view and edit all 3 types of cloud storage: blobs, queues, and tables. If you're not already familiar with it, Azure Storage Explorer was one of the first (if not the first) GUI tools for viewing and working with Windows Azure storage. This utility was written in the very early days of Windows Azure, and even after 3 major versions all of that pre-dated the commercial release of Windows Azure in early 2010. Altogether there have been over 13,000 downloads.

It's been a year since version 3 was published, and in that time the Windows Azure platform has moved forward at a rapid pace. Many users have been hungry for an update that supports newer features such as blob root containers and better handles nuances such as blob prefix paths and property editing.

Highlights of version 4

Better Code. Versions 1-3 of Azure Storage Explorer didn't have the .NET Storage Client library to use and were based on an SDK sample that had a voluminous number of classes, leading to code that was vast and complex. In version 4 we are using the .NET StorageClient library and the code is compact and well-organized. The source code is open and is part of the CodePlex project.
Newer storage feature support. Support has been added for newer features such as blob root containers, blob path prefixes, and page blobs.
Copy and rename containers, queues, and tables.
Direct data entry and editing of blobs, messages, and entities.
Improved UI. The new WPF-based UI is cleaner, and supports opening multiple storage acounts at the same in tab views. The Mode-View-ViewModel pattern is used.

Containers & Blobs

• Create, View, Copy, Rename, Delete Containers
• Create, View, Copy, Rename, Delete, Upload, Download Blobs



Blobs can be viewed as images, video, or text. Blob properties can be viewed/editied.



Queues & Messages

• Create, View, Copy, Rename, Delete Queues
• Create, View, Pop, Clear, Upload, Download Messages



Message content and properties can be viewed.



Tables & Entities

• Create, View, Copy, Rename, Delete Tables
• Create, Edit, Copy, Rename, Delete, Upload, Download Entities



Entities can be viewed and edited.



Remember, it's a beta

With any beta software, you should exercise caution. Keep in mind that both people and programs can make mistakes, and it's always a good idea to keep safe backups of your data.

Azure Storage Explorer is a community donation of Neudesic. As with previous versions, Azure Storage Explorer remains free. Full source code is on CodePlex and we invite the community to help us keep it up to date and make improvements.