Microsoft vs. Google

This post was written by dpx on September 16, 2008
Posted Under: .NET, Politics, Programming

TechRepublic’s Sanity check blog recently posted an article titled “Is Microsoft for grown-ups and Google for kids?” I posted a reply this entry because I think there is value in both. Go read the original and then read my reply reposted below:

I would choose to work at either given the chance. I think they are both great companies and they both still have a good chance at innovation in their arenas of choice. If antitrust weren’t such a big issue I would like to see some collaboration from the two groups – developer “swapping” is a good way to do that under the covers, whether the two giants know it or not.

As for the perpetual beta, I’d like to think that is a design choice. When a product goes from alpha to beta, the developer is left in a state of mind where “this is okay and it’s going to work, but my work isn’t done. There’s more to be had here.” When a product ships into “release” mode, it’s all about bug fixes and QA and the developer gets into the mindset of “oh this is a major product I have to fix bugs now – push that innovation to the shelf.”

When was the last time you saw Microsoft push out an awesome feature into a shipped Office product? Or even a major web based product such as Hotmail? Google lets their developers continue to innovate without the pressure of “shipped” software. If you choose to trust their developers to fix their software and add innovative features, then Google is the ship for you. If you’d rather wait around for Patch Tuesday for 2 years and then get a “new” release of a product – that you pay for again – which is really just 2 years of patches and a face lift, Microsoft is a better bet.

I enjoy Microsoft’s development platform a little more. The .NET framework is awesome, and the development tools are top notch. Google is pushing their ideas and advancements, but they are using other people’s languages to do so (Python, perl, JavaScript, etc). I like to take advantage of both and use Google’s APIs in .NET projects. I get enterprise level language and IDE tools, and web enabled data APIs and services.

For example, I’m working on a map project right now for the college for which I work. The project code itself is written in .NET, makes called to Microsoft SQL Server and PostGRES (with PostGIS) databases, and uses WCF to offer all of the API calls in SOAP services so others can build on our work. However, I’m using Google’s Maps APIs because they are innovative and recognized. We can push out a single service layer API that we use in Google Maps, Google Earth, and Flash for Maps APIs.

In this manner, I get enterprise tested code such as the Enterprise Library on the backend, and cutting edge front-end code from Google. It really is an awesome combination, and I hope to blog more about the project as it progresses.

Another thing to note about the project is that I’m using a lot of open source utilities in the GIS technology sector. Again, taking the best of all possible solutions instead of a vendor specific solution seems to work best for me. I could have gone with .NET, Microsoft Live, and ASP.NET AJAX, but I don’t htink that’s the best thing to do. Microsoft backend code, Google’s web APIs, and OGC’s GIS standards are what works for me.

Add a Comment

You must be logged in to post a comment.