If there is one thing that can always spark off a heated, over the top debate it is a blog post saying “X technology is rubbish” or “Y technology is literally the replacement of sliced bread”. It seems we had a nice addition to this debate following this post from the CEO of the Expensify (if you have some spare time sit back and read the comments to gauge the heat of the debate).
Now my background is generally in .Net and I also previously worked for the MSFT machine so I have a lot of good (and I might add a small but equally relevant number of bad) things to say about the .Net stack. However I do take issue with the point in the post that .Net developers cannot build startups and as a result Expensify would not hire them. At sharpcloud we’ve built our product on top of .Net in the form of Silverlight and Azure as we believe in the productivity it delivers us to get to market and I am proud to say I have a great team of .Net developers delivering great code everyday.
Wouldn’t trust them as far as I could throw them.
However if you ignore the flame bait title of “Why we don’t hire .NET programmers” and cut through the Microsoft bitterness David does make an interesting point I’ve seen first hand in the startup world, which is there is a generally an emotional and somewhat irrational dislike, dare I say hatred towards Microsoft and it’s tools. We’ve spoken to VC’s, angels and other startups and they’ve been positively negative when discovering the technology stack we use, despite the fact that with a small team we have a production quality SaaS offering with ACTUAL paying customers. Now the interesting thing about this is when you actually quiz them about their negative attitude towards Microsoft, generally they struggle to come up with real concrete reasons (IMHO) and use the typical it’s expensive, or it’s not open or I can’t trust a company like Microsoft. In response to these if you look at programs like Bizspark realistically the cost argument is null and void (and if you’re lucky to start making revenue software costs are the only a small part of your cost base anyway), there are some really good OSS solutions in the .Net space and the trust issue IMHO is somewhat an irrational hangover from the 90’s.
Use what works
Now I’m not saying that .Net or Microsoft is the solution to all the problems in the world, but what I’ll never understand is this mindset of completely ruling out a tool (or developers who have experience in that stack) that could be the best way to solve your problem purely because it’s built by X company.
The best programmers I know have one real strategy - use the best tool for the job and for me that is what I look for in every developer I hire. Whether it be .Net, RoR, Node.js or any other framework/language the only really sensible approach is to use the tool that can solve your problem, and leave the religious wars to people who clearly have more spare time on their hands.