Last year when ScottGu moved over to the Azure group and brought the ASP.NET and IIS teams with him, I'll be frank, I wasn't a fan. I didn't really appreciate Azure or its first iteration. The management portal was obtuse and confusing to use, the service was primarily a PAAS (Platform as a Service) offering and focused on (I thought) confusing terms like Cloud Services and slow deployments. The underlying infrastructure was strong but the developer experience didn't feel "right" to me. I really wasn't feeling it.

So I continued to work on ASP.NET and Visual Studio 2012 and the things that were interesting to me. Then, some months ago Scott and some folks showed us the concepts for the new experience and the new management stuff. It clicked. I saw that Scott and his team "gets" it. I started working with it, giving feedback and filing bugs. We had weekly full-day long team app-building sessions. One particular day I sent 52 different pieces of feedback to the Portal team.

I've talked before about how sometimes development on a platform can be "death by a thousand tiny cuts." It doesn't hurt in general but the little things poke at you. That's not the case with Windows Azure and this release. I'm not embarrassed to say I work for the Azure Team now, as it is pretty darned sweet.

Check out Scott's post but I'll mention a few things that are new just to make the point for you that Azure is something you'll want to check out now.

New Administration Portal and Tools

The management portal has been completely redone with a focus on usability and speed. It works on all browsers but the best part is that it's actually using a REST-based management API so anything you can do on the portal you can do from the API.

There are command line tools to talk to the REST API so you can automate anything you like from both PowerShell on Windows or Bash on Mac and Linux. If you go to the Downloads page on the Azure site you can get .NET, node.js, PHP, Java or Python tools for Windows, Mac and Linux.

Just to make the point, I'll use my Mac and download the Mac SDK on a fresh system. You can do anything from the command line be it in PowerShell or Bash. If I'm on Linux and I have npm, I can just

Now, my point isn't about node nor is it about Macs. It's about choice and it's about the ability to build what you want the way you want it with the tools that make you happy.

I'll make a Web Site...

Then I'll setup a git repository along with a name and password for deployment.

I'll make a folder, put an app.js in there, initialize the git repo, add "Azure" as a remote repo, and then push. The Azure management site actually notices the push and automatically refreshes without me having to do anything.

Boom, website in the cloud, easy as it should be.

Check out the YouTube video I did (embedded above also) on how to do the same thing with .NET and Visual Studio. You can use Web Deploy as I do in the video, Git, TFS or FTP. For example, I can use TFS and do Continuous Deployment if I like.

Virtual Machines

Azure has durable Virtual Machines (VMs) in the cloud now as well. You can make your own image and upload it or you can use a gallery of images that includes not only Windows but also Ubuntu, CentOS and SUSE images.

Web Sites

You can make a web site in Azure yourself in a minute. You can make up to 10 small websites for free to play and experiment and then later reserve instances and scale up.

NOTE:To start using Preview Features like Virtual Network and Web Sites, request access on the 'Preview Features' page under the 'account' tab, after you log into your Windows Azure account. Don't have an account? Sign-up for a free trial here.

Maybe go try one out and create a new Web Site from the Gallery:

Feel free to publish in a number of ways as I mentioned, using Web Deploy, TFS, Git or FTP. You can manage everything in the portal or you can automate stuff from the command line.

I like that I have real choice. Use whatever tools I like, whatever OS I like to publish whatever apps I like talking to the backend that I like. I'm personally really happy with the way things are going and I'm looking forward to building all sorts of things with all sorts of tools on Azure.

About Scott

Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.

I had the same feelings about Azure, lots of Marketing push but no real clients going for it, too cumbersome, too slow, yadayada. Also felt sad, yes really sad, that 'The Gu' left us and went onto the dark side of 'Azure'.

After watching your video, the Open Source Push, the new site and portal. I feel that 'The Gu' has won me back again. I have a rekindled interest in Azure.

For my own blog, it is still more expensive than my current host. Of course I do not get the traffic to warrant Azure.

But I can now see a lot more opportunities.

Thursday, 07 June 2012 20:29:55 UTC

Do the Mac/Linux installers also provide links to Mono, MonoDevelop and "XSP" development for cross-platform ASP.NET website development? If not, they probably should?

I've been trying out Azure on and off since it launched and like others I did not really like the experience. I thought it was a great platform, but not very friendly to small web developers or hobbyists. This latest version looks really great and I'll try it out again. Also like others I was bummed when Scott Guthrie went to Azure, but you guys turned something I felt was a weak offering and turned it into something I'm excited about. There seems to be so much flexibility and possibilities now, but with added user-friendliness and simplicity for developers.

I am wondering what is the most cost-effective way to get SQL Server or SQL Server Express databases if a person were to use the Azure website model?

Custom DNS is pretty much the same as with any host. Here's the older instructions from the earlier portal but it's the genreral idea: https://www.windowsazure.com/en-us/develop/net/common-tasks/custom-dns/

As a background, for a few years now, Azure was one of the 'jokes' I used to tell. I'd ask if a developer had heard of it, and they'd invariably say yes. I'd follow that question up with if they could 'explain' it, and the fumbling began. The just seemed so bad that it really resulted in no one caring.

And in 5 mins you guys (Gu+) changed that!

That's for great video on Azure. It's refreshing and it's exciting, and finally --- I give a d@mn! ;-)

I really enjoyed! I confess that I never had the courage to try to use the Azure, but now this very simple and very flexible, congratulations for the post helped a lot, especially one who is starting on Azure! Thank you!

This is great news Scott, but do they have any form of a quote tool so that developers/CTOs can make valid decisions and cost compare how they'd setup with Azure vs. their existing technology stack? It was something Tim Heuer pointed out not that long ago in a roundabout way when he flipped that he got socked by a serious bill for his use of Azure services.

Heh, when I told the MS Azure salesman 4 months ago that the only thing likely to tempt me back was to buy AppHarbor or at least borrow from their concepts heavily, but I didn't expect them to do it :)

What about us fresh college graduates who have new ideas for a cloud storage site but are intimidated by the potential cost of Azure? I've tried to picture my site growing with Azure but the costs worry me. What if the site does not bring enough income to cover the costs of Azure? I know this is a lil off topic, but I'm liking what I'm seeing with the changes!

Are there any current examples of using SQL Azure Reporting in an MVC app? I'm thinking I need to head down the SOAP endpoint road but would like to make sure I'm not missing a framework or package that would make my life easier.

I've been trying to deploy git repositories with more than one solution in them but Azure complains because it can't work out which one to use. Is there a way to specify? Appharbor's solution to this problem is really neat - allowing matching a website name to a solution name. Can azure implement something similar?

David Pendray

Sunday, 10 June 2012 03:14:28 UTC

@David Pendray: you just need to add a .deployment file at the root of your repo to tell the system which project to use. This way you don't need to rename your solution. See https://github.com/projectkudu/kudu/wiki/Customizing-deployments for details.

Please follow up on http://social.msdn.microsoft.com/Forums/en-US/azuregit/threads if you have more questions about Azure git deployment.

Greetings Scott, maybe I'm missing something, but am I missing something or do I have to make a reserved website in order to use a custom domain name?

I saw the page you indicated above about "custom-dns", but if I have 3 azure shared websites running (and I do see they all have the same IP), if I add a CNAME to my host, what will be the site that will handle the request?

Bottom line, how can I set the host header in a shared azure website? :)

The new Azure improvements for the developer experience are great. I wondered if anyone at MS was looking at integrating publishing static content (JS, Css, Images) to Azure Blob Storage as part of the publish operation? Maybe it is possible already and I have just missed it

Static files should ideally be served from blob storage to make scaling easier. Also easier to update them without changing the instance deploy. I guess it would have to integrate into Visual Studio so that the files were accessible at development time in their current location (or local azure storage) and then URLs created at runtime.

Hope this is possible it would make the experience a lot better for many of our projects.

I really like the free year, but it actually makes me not register for Azure. Why? Because as soon as I register, the time starts ticking, so the best strategy is to register as late as possible in the project development cycle. But developing without deployment seems dull, so I don't even start.

I need to know the cost of a website so that I can communicate that to customers. I don't care if I have to start paying now.

It looks like you aren't able to point a domain to a shared instance and need to update to a reserved instance?

So is this even usable for production?

Trevor Green

Thursday, 26 July 2012 02:43:29 UTC

Trevor - Upgrading to reserved is cheap, so you can do that immediately and pay immediately. I've got sites that have domains pointing to reserved sites now. Shared is free for 10 sites for now, for a year. That may change. I'd pay the few dollars for reserved (which also gives you more disk space) to use it in production. ASPConf used a reserved instance for their site recently, for example and it cost just a few dollars, then they may the instance smaller when they were done.

Scott Hanselman

Thursday, 26 July 2012 07:06:26 UTC

Few dollars? I must be missing something. I think I see where you can run multiple sites on a single instance. That might work, but the instances themselves don't appear cheap. Right now I use Rackspace cloud sites. And I can put as many as I want on there for $150 a month within the quota.

I haven't bothered to do a comparison regarding what i'm actually getting for that money verses Azure.

Azure just seems very obtuse about what the cost is. I'm used to the low end having discrete comparable pricing.

It be nice if there was some more wizards and estimates for common scenarios. WordPress under 10000 uniques a month average cost = x.

That may seem like a cop out but I can't tell you how much value a fixed cost is even if I'm paying for more than I need to get what I want. I'm willing to pay the extra to not have to think about the majority of my sites resulting in cost overruns and to not have to monitor their individual prices.

The free for year seems to pay lip service to this idea with a bait and switch at the end.

I'll have to just keep reading to figure out what is actually possible with Azure and how that lines up with actual usage numbers to create a final price. Pretty tedious at this point.

The guidance doesn't even have to be exact. Just ballpark numbers for configurations. Numbers I don't want to have to mine for myself to do the comparisons.

Trevor Green

Thursday, 06 September 2012 02:58:48 UTC

Does anyone know when the Web Sites preview will go-live, or if a go-live license is available now?

Azure is probably the best product I have ever seen, but that said, I won't use it because of the crazy pricing. I created a small web db and and a cloud server an started developing against it. Within a few weeks they said I had already reached by quota for the free setup.

If I met the quota that fast, imagine the cost of 200 users banging away at it from their iPhone apps.

I'm having an issue with Azure Websites in general. I have code that is running very light on my virtual machines hosted in GoGrid on Windows 2012 but when I post to Azure Websites and dial up the capacity, the uptime is very sketchy. I've found similar behavior when launching node.js in comparing Nodejitsu, Heroku and Azure Websites. Azure Websites is the one that seems to fall over very easily. I know its in preview but wondering if others have experienced the same. I'm a big fan of the idea of Azure Websites as the dial up and down of capacity is awesome. I'm just not experiencing the robust behavior I imagined would be there. I'm sure WebRole is a more robust approach but I really like the idea of not having to do extra things around Azure's paradigm.