I read a very interesting article today by Aaron about why he thinks Microsoft .Net Lags Among-Start-ups. There were a lot of interesting comments on the blog which I wanted to reply to so I start writing a comment as well but it just got too long! Aaron’s main theme was that .Net is used in big enterprises and the developers do not think and engage in a way that start-ups do / need to do to be successful.
I think I would have to generally agree with the view that a large number of .Net developers are so ingrained into enterprise solutions and climbing the corporate ladder working for 'The Man' that they do not look outside to see what is new and cool in the start-up scene.
There are 3 points I would like to make:
Enterprise software have big budgets and teams to deliver projects. It is hard to change that thought process
Here is my anecdote. I am your typical corporate dev who has worked up the ladder and got the the position of developer team lead in delivering £1m+ projects. A couple of years ago circumstances came together creating an opportunity to do something I had always wanted to do, create my own start-up and build a couple of websites on the .Net stack. My original idea didn’t work out but the two spin off websites from that idea http://www.skillbook.co.uk and http://www.tcbooker.com are starting to look good (lots more work required though!). I ran out of money at the end of last year to work on them full time and am currently back working for 'The Man'.
Why did I run out of money? I was used to the enterprise and having a large budget to spend on resources. So I carried that mentality over and hired a team of people to deliver the project. Looking back I could have done it a lot cheaper. I think this would be a problem for lots of enterprise devs – looking at a problem and making it harder than it has to be, over engineering the solution and probably giving up before they got started or not giving up and having a very high burn rate.
It is just not on .Net developers radars
I’ve been a software developer my whole adult life, I got my MCP back in 1999 and I only attended my first Hacking event a year ago. This was PayPal’s Charity hack. There were about 100 developers attending and guess what, there were only 2 .Net developers there. Myself and Lee Mallon.
The event was for the dev’s there to create an app in 24hours that could make money for charity. I teamed up with Lee and took my idea of allowing people who volunteer for charities to publish their expenses which can then be paid for by the public (we had to try and incorporate PayPal’s new API’s in the app btw) on the charities behalf. You know what we actually had a fully functional working prototype after 24hours. I’ve done a bit more work on it since but it is not quiet live yet: http://test.localvolunteers.org.uk/ I might finish it off at this years charity hack.
Why were there only 2 .Net devs there? This really highlights the lack of momentum there is in the .Net community around these sort of events. If you want to make a career out of .Net programming the safe option is to know about WCF and middleware development, not how to make social media work for you. Going to hacking events and learning what is on the bleeding edge just isn’t going to be useful in their work as big companies like to play it safe. Where else is there to go and earn a living as a .Net developer?
What will change things
Successful .Net start-ups will breed more successful .Net start-ups and Microsoft need to build a critical mass and I think Bizspark is getting there. The barriers to entry for .Net technologies are also getting lower.
If I was to look at working for a relatively new Internet companies which uses .Net technology I would be looking at companies like www.huddle.net, www.kashflow.co.uk, www.justgiving.com, www.unusualhotelsoftheworld.com.
The cost of running .Net apps is going to be more. However with the advent of cloud computing and Microsoft’s Azure platform application developers can now pay for what they use rather than trying to guess what they will use and I believe the pricing is pretty reasonable. (I actually use AWS for my websites as Azure wasn’t released when I went live). So I don’t think the price issue holds water any more, especially as Bizspark gives you free hosting for 3 years.
The barriers of entry are getting lower and competition is good and keeps Microsoft honest. Yes they do tend to copy ideas but I still think the tooling they provide for software development is excellent. There were comments that it was a steep learning curve for hobbyists, which I can sort of understand, but there are also learning curves for whatever tools get chosen.
It takes a long time to change peoples behaviours and until there is some proven success stories of people using .Net to build start-ups on then it will be seen by most .Net developers as a risky career option compared with that corporate ladder and working for ‘The Man’. I hope that there will be a growing .Net success stories (including mine) over the next couple of years and make it easier for the all those .Net devs working for The Man to think that it is possible to give it a go.