The .NET eco-system is a great place to begin your personal ventures: Part 1 — Web frameworks and hosting

I recently started to build an application that I have wanted for a long time (www.mylifelessons.net). It is built and hosted using facilities provided by the .NET eco-system, which I have found to be brilliant for rapid development — with almost no initial cost

My application might not be used by anyone other than myself, but my experience shows that all you need is effort and motivation to get your ideas up and running so you can gauge user feedback. The .NET eco-system has the rest well taken care of.

This series of posts will contain:

Part 1 — Web frameworks and hosting — FubuMVC and Windows Azure

Part 2 — Fast and free persistence with RavenDb/RavenHQ

Part 3 — Easy styling with Twitter Bootstrap

Part 4 — Background jobs with Azure worker rolesWeb frameworks and Hosting

To create an online application you need at least two components — the tools to build it, and then somewhere to host it. In this post I’ll show you how I did this for www.mylifelessons.net using FubuMVC and Windows Azure all the way to a live environment with no costs involved.

Once you’ve read this, go and do it yourself — create a .NET application, and get it up and running on the net for free. There’s a “recipe” at the bottom.Choose your framework

There are a fair few web frameworks in the .NET eco-system - from Microsoft’s offerings to OSS alternatives like Service Stack and Open Rasta. All of these frameworks have their fan boys, which is a good thing — it shows people really like them.

I’ll Take Fubu

I personally love FubuMVC  and chose to use it for www.mylifelessons.net. I’ve used FubuMVC before, but I made the decision based on the following:

·  Conventions – I can set up my application exactly how I want it

·  **Modularity **– I can inject or replace tiny parts of the framework — not entire object graphs

·  **Clean code **— Whenever I need to step into the framework it’s a learning experience to work with the code

You might have a difference preference to me, and that’s great. It proves that .NET is a great place for your “startup”.Hosting with Windows Azure

I signed up with Windows Azure and got 10 free websites which was brilliant. But even better is that I can publish with git. My deployment process is thus: “git push azure”. Unbelievably brilliant and 0 cost (to start with).

When configuring, deploying or interacting with your hosting environment in any way, Windows Azure is really easy to use. On top of that, the styling is pleasant and a pleasure to work with.

You also get some stats for free with Azure, a history of deployments, and an interface that makes scaling out trivial. All this out of the box.

So far I am 10/10 impressed with Windows Azure. I’m mindful of long-term costs, but that’s not a concern yet.Recipe

  1. Choose a web framework — your favourite, or try something new (give fubu a shot)
  2. Create a simple application with it — just a walking skeleton for now
  3. Create a local git repository for your app
  4. Sign up to windows azure and create a **free **website
  5. Set up git publishing and make a note of the repository URL
  6. Push your application to the git url