I have been working with web technology since the earliest days of the commercial web. I remember back about 15 years ago learning HTML and basically making a fool of myself with my personal home page and talking myself into a job at Fidelity Investments in 1994 saying I knew this thing called HTML. I remember about 13 years ago using raw ODBC via CGI scripts to make data from a database appear on a web page. Then came OLE ISAPI and life got a little easier-but you had to code the page yourself (like do all the response.* stuff that ASPx does automatically for you today).
What I remember for most of my time as a developer is how hard the web was to code for. Around 1995 I tried to tell customers (I was construing then) that the web was a passing fad to avoid building web apps. (they did not believe me.) The tools were immature (Visual Notepad 1.0) the IDEs just sucked (remember HotDog?) and all the APIs were out of process. Then along came a beta for IIS 1.0 sometime I think 12 years ago. I still remember where I was when I first saw it. I was in Chicago at a developer conference. Things started to get easier.
Back around 1996 programming for the web was better but still quite a challenge. At the same time, Java was threatening Microsoft. Netscape was the darling of Wall Street and the geeks. Microsoft's back was against the wall. There was an anti-trust lawsuit. People said that they were big and mean (and they were mean at times!) and could not adapt to the Internet. The Internet would make Microsoft unimportant.
Microsoft responded. Code named Denali, Active Server Pages and ActiveX Data Objects gave us an in-process way to code pages with a framework on top of ISAPI, gone were the days of having to write the pluming. Tools started to come along, Visual InterDev was a good first attempt and then the evolution of Visual Studio. The Java folkes were jealous of the MS IDEs. Coding for the web just got way easier.
This helped fuel the .COM boom. IIS was so innovative (the only web server at the time to be out of process), the IDEs were so much easier, and scaling to a web farm was so cost efficient, Microsoft set a new standard in web development. Microsoft technology lead the way during the boom, others were big players but by 2001 people were actually starting to play catch up to Microsoft when they put .NET to beta. How about that for not being unimportant?
Well fast forward 7 or 8 years. I was at the New York Windows Server 2008, Visual Studio 2008, and SQL Server 2008 launch today and headed to Mix 2008 tomorrow. I look at the way we code web pages today and it is 10 times easier than the .com era! Maybe more!
The likes of Google and open source-ers have claimed that Microsoft is again unimportant. Goolge is the darling of Wall Street and the geeks. Linux and open source have their religious zeal. Microsoft faces anti-trust in Europe. Sure Google owns the online ad space. Great, they can have it. Wall Street and the lay press have stated that Microsoft is behind Google because it is in third place for Ads on the Web. They say that Microsoft was asleep behind the wheel. I beg to differ. Let's take a look at some of the technology that the boys and girls from Redmond have produced in recent months:
- The .NET Framework and the 3.5 extensions (WF, WCF, ASP Ajax, and ASP.NET MVC Framework)
- Visual Studio 2008, the slickest IDE out there
Not to mention all of the back end stuff like Windows Server 2008 and SQL Server 2008 all with supporting technology like LINQ and XLINQ.
Holy cow is developing for the web easy! Not only easier, but developers have more unprecedented power. When you compare the Java and Open Source offerings of .NET, Visual Studio, SharePoint, Windows, SQL Server, and Silverlight, there is no stack that even comes close in power and productivity. Not bad for the "unimportant" Microsoft.
Case in point. I started a new business in December. Something very speculative and it needed a large data driven user interactive transactional web site. Back 10 years ago, I would have had to make up some PowerPoint slides and beg angel investors for a few hundred thousand dollars to build out a proof of concept. It would then take six months to get to an alpha since debugging would consist of CTRL+G and counting down to the response.write("strSQL"). The UI was painful for users and very static.
Now due to infrastructure reasons like cheap bandwidth, outsourcing, and tools like Skype and IM, you can do this much cheaper. But Microsoft has made the development light years ahead of the .com era.
Remember my new startup? We have an Ajax enabled Microsoft .NET 3.5 ASPx site up and in customer ready beta today, in only two months. One architect, one developer, and one tester. That is 200% faster than my last startup Corzen which was built on top of the .NET 1.0 stack 6 years ago and 500% faster than a comparable web site build in the .com era for Zagat on the last ASP stack. All that and no begging any Angel investors, it was so cheap we paid for it ourselves!
Google may own Sillicon Valley and Wall Street, but Microsoft owns the majority of developers hearts and minds. They own it because they make our life so damn easy. Microsoft has thrown the web wide open to everyone. If you can get a new business started in 2 months on the Microsoft stack, think about all the great things that people will do!
Looking forward to the next stack in a few years from Microsoft and looking back at this current stack as slow and out of date like I do the .NET 1.0 stack. Maybe it will only take me 1 month to start a new business. :)