Thursday, October 30, 2008

First PDC Sessions Online

Some of the PDC Sessions have started to come online, and I had a chance to watch a few of them.

The Future of C# - Anders Hejlsberg

Anders did a great job (as usual), explain the next phase of evolution of our favorite .NET language.  Many of the changes are being driven by a need to improve interoperability and usability when communicating outside of the strongly-typed, managed world of pure C#.  I especially loved his self-deprecation when he discussed adding optional parameters to C#.

ASP.NET 4.0 Roadmap - Scott Hunter

Scott did a good job, but this was the least interesting of the sessions I saw today.

Scott covered AJAX improvements, integration with jQuery, ASP.NET MVC, and the Dynamic Data Features.  I was disappointed that he zipped through the WinForms improvements.  It doesn't seem like much new is planned on that front despite Microsoft ensuring that they wish to continue to develop both WinForms and MVC.

A Lap around Azure - Manuvir Das

I've not heard of Manuvir before, but I thought his presentation was excellent, and covered everything that should have been part of the keynote on Day 1.  If you want a great Azure 101 introduction, including the why and how, this is a good place to start.

Developing and Deploying Your First Windows Azure Service - Steve Marx

Steve did a very hands-on introduction to what it is like to develop your first Azure service application.  He started with the same Hello, World application from his part in the keynote, but went a little deeper into the explanation.  The most important part of this part is that developing a service can be almost the same as developing an ASP.NET web application, so your existing developer skills transfer well.  This doesn't mean that only ASP.NET works, though.  There is already support for other managed applications and support for native applications, like PHP and C++ is planned before the commercial release.

Then, he showed how he used the ASP.NET MVC to create his own blog and host it on Azure.

Again, most of the focus was on standard ASP.NET MVC stuff, but with this example he was able to show how access to storage services need to change in order to scale appropriately on Azure.

A Lap around "Oslo" - Douglas Purdy

Since I've been very interested in Domain-Specific Languages (DSL's) and modeling, I've been keeping a close eye on this project.  I really wanted to watch Chris and Gio's session, too, but sadly it hasn't posted to the web yet.

Doug did a great job, though, explaining what "Oslo" is and then he dug into the tools and the code.  It was a very good introduction, which will probably help when they finally do post the "Oslo": Building Textual DSLs session tomorrow.

Wednesday, October 29, 2008

IASA New York - Azure Services Platform

Last night I attended the meeting of the International Association of Software Architects (IASA) of New York.

At last night's meeting, Bill Zack and Keith Pijanowski spoke about new cloud computing platform announced by Microsoft this week.

Keith started out with a great overview of the business case for cloud computing, using the digitalization of the music industry as a clear analogy to how Microsoft, Amazon, and Google are hoping to transform the software industry.  He did a great job of filling in a lot of the back story that was missed during the PDC Keynote on Day 1.

Bill then gave his rendition of "A Lap around Azure" for everyone in his own style, doing a great job giving an overview of the architecture and the building block services being launched this week.

There were a lot of great questions and discussion and it was great to be able to ask some of my own questions, too.

Bill & Keith, you did a great job!  Thanks again.

Tuesday, October 28, 2008

Getting Started with Azure Services Platform

The Azure Services Platform portal opened this afternoon and the downloads below became available.

UPDATE:  I've updated the links below to point to the new January 2009 release of the Azure SDK and Tools.   If you wish to learn more about what is new in this release, check out Jim Nakishima's post for more details.

One caveat with the new CTP:  it doesn't work with the Windows 7 beta.

One of the new features in the January CTP is Silverlight debugging support.  You can find a post on how to enable it here.

Download the code

Register for Services

After installing the tools, you will be able to work on a local instance of the cloud and begin writing code and debugging it locally.  However, in order to publish your code and test it, you need to first register for the services.

Log in with your Live ID and apply for access to the services CTP.

Microsoft is rightly giving first priority to those who paid for the conference registration, but I received my token in a few hours.

There will be two emails.  The first will contain the token and the subject will start with "!!Do Not Delete!!".   The second will contain a link where you can enter the token to gain access and provision your new CTP account.

You can still work locally while you wait for your token.

Dig in and learn

There are a lot of resources online to start.

Azure Services Platform Rude Q&A

When pitching Azure Services Platform to your manager or client for your next big project, or even sharing with your fellow technologists, how do you best prepare for their rough questions?

Usually when Microsoft launches a new technology, or even pitches it internally to executives, they typically assemble a Rude Q&A to summarize the expected rough questions and to be prepared with answers--think Hard Ball with Chris Matthews for technology instead of politics.

Tonight I did a quick Google search for a Rude Q&A for the Azure Services Platform, but I came up empty-handed.  I'm sure the Microsoft guys have one, but since I've not seen it I've decided to write my own.   For now, I'll start with my initial questions, and then I'll later update it with more and with appropriate answers.

PLEASE NOTE:  I'm obviously excited by this technology, so don't perceive this as an attack on the Azure Services Platform.  Rather, it's a way to ask the appropriate questions to ensure that answers exist and are easily communicated so that the platform can succeed.

To get a good start, I went to Slashdot, the epitome of Microsoft critics.  Please feel free to add your own questions in the comments and I'll add them to the post when I update it.   Microsoft employees, if you want to provide answers, I'll add them as well.

UPDATE: I've added my answers to the Rude Q&A.  These are my opinions only.  When I hear a more official answer from Microsoft, I'll add their feedback with mine.

Q:  Microsoft Windows has a perception of being an unstable and unreliable operating system.  Why can I trust Windows Azure to host my applications without an Azure Screen of Death?

Erik's Answer:  Windows' Blue Screen of Death is almost always a result of either failing hardware or a bad device driver.  This is part of the cost of having an operating system that is open to lots of different types of hardware.

Next week is WinHEC and Microsoft will be talking to hardware vendors about what is required to be certified for the new versions of Windows.  In order to be Certified for Windows Azure, the guidelines are going to be much stricter than for any previous version of Windows.   Because Windows Azure will only be running in Microsoft's Data Centers, you can be assured that Microsoft will ensure that all of the hardware is Certified for Windows Azure before it can be added to the data center.

In addition, you will have a Service Level Agreement with Microsoft for your application.  There will be financial consequences for Microsoft if they fail to meet the guidelines of the SLA.

Q:  By choosing to use the Azure Services Platform, am I required to host my applications on the Microsoft Data Center?  Or can I choose to host my application with third parties like Amazon and Google?

Erik's Answer: I spoke with one Microsoft employee who said that Microsoft will be working with 3rd party data centers, so there could be other authorized data centers that could host the Azure Services Platform. 

Whether or not Amazon or Google choose to host the Azure Services Platform is up to them, based upon customer feedback and their own business objectives.

Q:  Can I decide to change hosts later, if I feel that another host offers a better value proposition?

Erik's Answer: This question is clearly dependent upon the last one.  If there are 3rd party data center hosts, it should be possible to transition from one to another.  Like our cell phone carriers, though, there may be a service contract that stipulates when that can happen.

Q:  Microsoft is promising to build the Azure Services Platform on open standards, but as a company they have a mixed record on this.  How can we know that this is not just another opportunity for Microsoft to embrace, extend and extinguish their competition to hold onto their monopoly?

Erik's Answer:  Just as standards were required for the industrialization of gun factories, they will be required for the industrialization of the software industry.  Microsoft didn't always get this, but they seem to get it now.  Listen to them.  They've got religion about honoring standards.

Q:  Previous Microsoft PDC's have made big announcements where Microsoft was betting the company on a new technology, only to have the technology be shelved before release.   How do we know that Azure Services Platform isn't this PDC's Hailstorm or WinFS?

Erik's Answer:  Microsoft has invested billions of dollars to build the software and the data centers.  It would be very painful for them to fail.

Q: If my application is hosted on Microsoft Data Centers, how can I assure privacy for my code and data?  What are the penalties to Microsoft if there is a breach in privacy?

Erik's Answer:  Microsoft will have a privacy policy as part of the service contract.  In order to monitor the health of your application, Windows Azure will need to read the instrumentation data from your application, but this must be an automated process to scale.  If Microsoft does violate the privacy policy and you can prove it, you will  have a legal suit for breach of contract and the bad press would hurt their business.  In other words, it doesn't make good business sense for them to violate the privacy policy.

Q: By choosing Azure Services Platform, I'm giving over control to Microsoft.   How do I ensure that I have control over my application?

Erik's Answer:  You are giving up some level of control, but you can choose to start, pause or stop your service and switch to another platform anytime within the limits of your service contract.  In exchange for giving up some of the control, you gain greater scalability and availability than most small and medium companies can achieve on their own at a cheaper price.

Q: Microsoft has a great track record for availability of their web sites and services, but not perfect.   Even during the PDC, accessing has been slow and difficult to access due to the demand for information.   How can Microsoft assure high availability of my application, and what are the penalties to Microsoft when it isn't available and my business is interrupted?

Erik's Answer:  Microsoft's track record isn't perfect, but it is still better than most businesses.   Utility companies aren't perfect either; there are blackouts and brown outs locally and even occasionally regionally, but these are rare.

Your service will be guaranteed with a Service Level Agreement (SLA), just like it is with your other utilities.  There will be a financial consequence to Microsoft if they fail to meet the promised level.   Service contracts will probably be cheaper if you are willing to accept a looser SLA and more expensive if you want a stricter SLA.

Q: Microsoft has chosen to discontinue support for old technologies, like VB6 and FoxPro, forcing customers to upgrade or transition their applications to the new platform.  When this happens on my Data Center, I can choose to upgrade or not.  If I choose Azure and the Microsoft Data Center, is Microsoft going to force me to upgrade my applications when Azure 2.0 or 3.0 is available?

Erik's Answer:  Microsoft supported VB6 for a decade after it was replaced by VB7, so there will be plenty of time for you to transition your code.  If you're considering hosting your application in the Cloud, you're probably a pioneer of new technologies.  Do you really think that you'll want to stay behind on an obsolete technology like VB6? 

Monday, October 27, 2008

Visual Studio 2010 and .NET 4.0 CTP

The Visual Studio 2010 and .NET 4.0 CTP is now available for download as a Virtual PC image here.

The download is very large--11 parts of about 700 MB each, so make sure that you have lots of disk space available and expect this to take awhile.

I encourage you to install Free Download Manager first and use that to simplify the download process.

Get an early start with "Oslo"

The "Oslo" team has opened up their portal, so you can download the "Oslo" SDK and dig in and learn about how the "Oslo" tools work before Don Box's and Chris Anderson's keynote presentation tomorrow.

I just wish that they could have spoken today--it would have livened up a dull session.

p.s. It seems that Chris isn't hosted on Azure--the load is too heavy right now for me to access his blog.  Hopefully he'll move it soon.

NYC Learning Opportunities

There are several learning opportunities for .NET developers in the NYC region in the next few weeks.   Many, but not all of these will focus on Windows Azure and Silverlight.

TOMORROW, Tuesday, October 28 – Bill Zack will speak at Microsoft for the IASA NYC group on Windows Azure, Microsoft’s cloud computing platform. If you’re interested and want to attend, email NOW. Because of security requirements, they need to know before the end of the business day today if you want to come.

Saturday, November 8thFairfield / Westchester Code Camp all day at the Stamford Campus of the University of Connecticut School of Business.

Monday, November 10thALT.NET Meetup. Topic is still undecided, but you can vote for your choice.

Monday, November 10thMSDN Suburban Roadshow in Stamford, CT.

Thursday, November 13thMSDN Suburban Roadshow in Parsippany, NJ

Saturday, November 15th -  MobileNYC3, a local bar camp 

Tuesday, November 18th - New York .NET Meetup

Friday, December 5thMSDN Suburban Roadshow in NYC.

To find out more, keep an eye on Peter Laudati's blog.

Live Services Jumpstart 2009



For those interested in learning more about the Microsoft Live Services platform, Microsoft will be hosting a series of free, invitation-only two day conferences in several cities across the world.

If you're interested in finding out more and to register, go to

I will attending the San Francisco Jumpstart on December 4th and 5th.

PDC 2008 Keynote Resources

Here's some useful information, borrowed from the Windows Connected blog.

Keynote Streams

Keynote – Ray Ozzie, Amitabh Srivastava, Bob Muglia and David Thompson
Monday, October 27 11:30am-1:30pm Eastern Time

UPDATE:  The key note is available on-demand now using Windows Media Player via the links above or using Silverlight at the Microsoft PDC site.

Keynote - Ray Ozzie, Steven Sinofsky, Scott Guthrie and David Treadwell
Tuesday, October 28 11:30am-1:30pm Eastern Time

PDC 2008 Live Blog


UPDATE: Here's the transcript from the first keynote.


NotAtPDC-badge If you take a look at TweetScan this weekend, it's pretty clear that the hottest topic in the Twittersphere this week is the Microsoft PDC conference.

It looks like I'm not the only one bemoaning being unable to attend the Microsoft PDC this week.

It seems that several others have started a NotAtPDC group for the rest of us.

They have their own site, their own Facebook page, and their own Twitter identity.

I'm not sure what they actually have to offer this week, but it's definitely amusing.

UPDATE:  Several interesting virtual sessions have been posted on the NotAtPDC portal. The first sessions start later today if you're interested.

Technorati Tags: ,

Learn about Cloud Services in New York

Bill Zack is the Microsoft Architect Evangelist for the New York region, and is also one of the moderators of the local New York .NET Developers User Group.

Tomorrow night Bill is going to be doing a presentation at the New York IASA meeting.  If you are interested in attending, please email him before the close of business TODAY at

Bill is also dying to spill the beans on his blog, but is waiting very impatiently for the PDC announcement and is ready to burst with excitement.  I expect that he will be sharing a lot of new stuff there in the following weeks.

Peter Laudati is a Developer Evangelist for New York & New Jersey area.

Later this fall Bill and Peter will be doing an MSDN Suburban Roadshow in three cities in the area.  Bill will be covering developing Services in the Cloud, while Peter will be covering how to use Silverlight as the presentation interface to the Cloud.

If you're interested, register using the links below:

REGISTER STAMORD, CT 11/10/2008, 12pm-4pm, Connecticut Information Technology Institute University of Connecticut
School of Business 1 University Place Stamford Connecticut 06901

REGISTER PARSIPPANY, NJ 11/13/2008, 1pm-5pm, SetFocus Headquarters, 4 Century Drive Parsippany New Jersey 07054

REGISTER NEW YORK, NY 12/5/2008, 1pm-5pm, Microsoft Offices, 1290 Avenue of the Americas - 6th floor
New York New York 10104

Sunday, October 26, 2008

New Name

I've renamed my blog today to "Head in the Cloud, Feet on the Ground".

First, I have a confession.  I stole the title.  It was originally an article in Architect Journal, then a blog post by Gianpaolo Carraro, one of the authors, and later this week it will the the title of a Cloud Services Symposium at the Microsoft PDC on Thursday.

So, I'm not being very original, but I think it is apt.

I am very excited by the Microsoft Cloud Services platform being announced this week, so I will probably be focusing many of my posts on several aspects of the different layers of the platform, from Live Mesh and "Dublin" on the backend, to Silverlight and ASP.NET 4.0 for the user experience.

However, I think that the title also really captures well my philosophy of software development.  It's important to keep your "head in the clouds" and learn about what is new and exciting in the industry, and to dream of what might be, but it is also important to keep your "feet firmly planted on the ground", and focus on pragmatic solutions that can be delivered when needed.

Saturday, October 25, 2008

MSDN Developer Conference

Are you excited about all the content coming out of the Microsoft PDC, but don't have the cash in this recession to shell out $2400 and fly out to Los Angeles for the whole week? 

Yeah, me, too.

Fortunately, Microsoft understands and they really want to get you up to speed on their new Cloud Computing platform; after all, it's in their own best interest to bring developers onboard in order to make the platform succeed.

They are planning to bring a taste of the PDC to several major U.S. cities and will be hosting a one-day MSDN Developer Conference in for a mere $99

They mention "cool giveaways", too, which is probably marketing-speak for all the bits that you'll need to experiment and play with the technologies on your own after the conference, but I make no promises as to what will be included.

If you're interested, I suggest registering right away because space is probably going to be limited and I would expect these to fill up fast.

I'm already registered for the New York session, so I'll see you there.

12/9/08 Houston, TX
12/11/08 Orlando, FL
12/16/08 Atlanta, GA
1/13/09 Chicago, IL
1/13/09 Minneapolis, MN
1/16/09 Washington, DC
1/20/09 New York, NY
1/22/09 Boston, MA
1/22/09 Detroit, MI
1/26/09 Dallas, TX

San Francisco, CA


Microsoft PDC

I'm pretty excited about this next week.   Even though I will be in New York, I will be at the Microsoft PDC in Los Angeles in spirit.


Microsoft will be streaming the key note sessions live at

If you're like me and busy at these times, the sessions will be available on-demand later in the day.

Cloud Computing Takes Center Stage
Ray Ozzie, Amitabh Srivastava, Bob Muglia and David Thompson
Monday, October 27th, 11:30-1:30 pm Eastern

Building the Next Generation User Experiences
Ray Ozzie, Steven Sinofsky, Scott Guthrie and David Treadwell
Tuesday, October 28th, 11:30-1:30 pm Eastern

"Oslo" Modeling Tools
Chris Anderson and Don Box
Tuesday, October 28th, 2:00-3:30 pm Eastern

From the Lab
Rick Rashid
Wednesday, October 29th, 11:30-1:30 pm Eastern

The breakout sessions will also be available on-demand later this week.  Microsoft expects to post each session within 24 hours, but for the MIX conference, it took a little longer.

Here's a special shout out for my friend Gio's session, which according to Don Box should be one of the most popular this week.

I hope to be blogging a lot on the new platform after the details are revealed.

Wednesday, October 22, 2008

Universal Design Pattern?

Steve Yegge has a very interesting (and very long) post on Properties as the Universal Design Pattern.

I won't say any more--Steve says plenty.  Check it out.

Saturday, October 18, 2008

Fuerza Bruta - Boys Night

Last night I had a free ticket to see Fuerza Bruta (Español for "Brute Force"), from the creators of De Le Guarda.

I'd seen De Le Guarda, so I had an idea of what to expect.  Unlike most Broadway shows, you don't sit through the show.  You stand and move throughout the show and the show happens around you.

Much like Cirque du Soleil, the show is more visceral, with an obvious theme, but a vague story.  It touches your emotions deep below the surface.

It is difficult to describe the show except as living, embodied concepts:  frantic energy, chaos, crowded, intensity, beauty, sexy, calm, wet.

There were lots of images related to the corporate world which would be very familiar to anyone working in Manhattan, and the themes captured the chaos that is even more apparent in the current economic crisis.

It was an incredible show that is impossible to capture in words.  Maybe this video will give you a taste, but if you're in New York, go see it.  It's great.

Wednesday, October 15, 2008

Tough Economy, Tough Decisions

In my last post I mentioned that I chose to remain behind the firewall curtain and only post internally because my employer was a little uncomfortable with us posting publicly.

With that, you might think that perhaps I'm tempting fate by choosing to start a public blog.  After all, people have been fired for blogging about their jobs, right?

In this case, though, I need not worry.  My employer is not going to fire me for blogging.

The tough week on Wall Street last week has led our new CEO to go forward with a reduction in force and has closed the entire New York office, including me and nearly my entire team (I had one developer in Chicago who is still employed.)

I'd planned to start my public blog because I was interested in sharing my excitement about the Microsoft Cloud services anyhow, but now for the first few weeks at least, I'm going to be using my blog to share resources with my team.

Regarding the reduction in force, I am naturally sad and disappointed that it had to happen, but I understand it is purely a business decision.  It is not a reflection on the quality of the team of developers who I have worked with for the last five years, but rather on the cost of doing business in Manhattan during a deep economic downturn.

If you are reading this and have open positions in the New York City area, drop me a line and I would be glad to help you connect with some very talented and qualified ASP.NET developers.

Coming Out Day

I have been blogging for awhile now, but until today it was behind the corporate firewall.

I worked for a company that was uncomfortable with its employees blogging about their work. Our CTO had a blog, but he was asked by others to not blog anymore, so I decided that it was better to keep my blog internal and focus my blog to topics that were directly relevant to my colleagues.

Last Saturday was National Coming Out Day, so I decided that would be a great day to "come out" from behind the corporate firewall and start to share my ideas and thoughts more broadly.

I'll share more later this week, but for now I'd like to just like to introduce myself.

I am a software developer who has been programming professionally for 17 years.

I've spent the last five years building a web framework on top of ASP.NET to enable our company's product teams to build out extensible web applications for the insurance industry. You might think of our application as being to risk management what is to customer relationship management.

For the last four years I've shared the role of leading the team responsible for the application framework and shared components.
I've never found the insurance industry part all that interesting, but building a web application framework that supports custom plug-ins has presented some interesting challenges. Our team has been using ALT.NET ideas since the beginning of our project in 2003, such as a home grown ASP.NET MVC framework built on top of ASP.NET 1.x, and using Inversion of Control patterns to discover services that could be easily decorated and extended by our custom solutions.

This experience of building a shared framework for a hosted web application has been exciting, but it also makes me very excited about what Microsoft is posed to present at the PDC in Los Angeles.

For what it's worth, I'm also gay.  I've been out at work for my entire career, but I don't find it a very interesting or relevant fact in the workplace so I don't really make a big deal about it.  Since this post is about "coming out", though, I figured it might be appropriate to mention it.