Starting Out With ASP.NET

Now that I have been working in the Developer and Platform Tools marketing group at Microsoft for close to a year, I have decided that it’s probably a good idea for me to be technically proficient in our own technologies.  I have spent the better part of the last decade outside of the Microsoft stack.  Most recently, I have been hacking away with Python and learned high level Ruby and Ruby on Rails, as part of the development process for IMSafer.

When you have been using dynamic typed languages, and MVC models for so long, the notion of jumping into ASP.net using C# is one that I looked on with trepidation.  Thus the birth of my N00b Notes.  Throughout this series of posts, I am going to start building apps using the Microsoft stack, and I am going to blog every step.  Quick note: it won’t be pretty.

Ultimately I want to be building apps on the Azure Services Platform.  Unfortunately, without adequate knowledge of how to build ASP.net apps, that’s a bit too much to take on at once.  So I will start with a basic app that I want to build, and try to build it in ASP.net.  For kicks, I may try to build the exact same apps on one or all of PHP, Rails and Django.

For the record, I don’t know how to deploy SQL.  I don’t know how to use CSS (I always had a buddy do the front end stuff for me).  Likewise, I don’t know JavaScript, and I don’t know PHP.  I know how to program, and I can pick up languages as needed.  Case in point, I taught myself how to use C# by building a basic app that polled FriendFeed using their API, and figuring out the frequency of post methods from their customers.  It turns out that at any given time during the day, 40% of their traffic is coming from Twitter, and 20% comes from blogs.  I was surprised that Delicious wasn’t more than about 6%.

What do I hope to accomplish?  I want to figure out how to get more of the breadth developers on the Microsoft platform.  I want to puzzle through how we can get more of the app builders creating applications on Azure.  It’s my contention that there is a core set of archetype applications that people are trying to build for the web on the consumer side, and those have a core set of things that you need to know how to do if you are going to build web apps.  I am going to start in the consumer app space, as that’s the spot where I have the most depth of experience.  Expanding that set of archetypes to include enterprise applications will prove to be a great learning experience in speaking with customers, ultimately understanding what it is they expect to get from the cloud and how they want to use it.

You can expect plenty of fumbling and bumbling on my part.  I will make many mistakes.  I will code things badly.  I will go about doing things the complete wrong way.  I know this in advance.  However, I feel pretty confident that I am not alone in my skill level, and hopefully this set of posts will be useful to others looking to use the Microsoft stack.