An Idle Thought about Selecting a Development Platform

I’m working hard all weekend (minus my son’s very late birthday party and the Chiefs playoff game today) getting ready for my FubuMVC workshop at CodeMash.  A pretty important part of that workshop is to start by explaining / justifying why FubuMVC should even exist in the first place when there are so many other options.

When we started at Dovetail back in 2008 we immediately had to choose which platform and basic framework to start with.  We could have chosen Ruby on Rails or Merb (this was before the merger), but we chose to stay on .Net partially due to non-technical reasons (there were other internal factors at play that I can’t discuss here).

We were assuming (and still offer) an “on premises” deployment model.  Our management had plenty of market research and experience with customers that led them to believe that a .Net solution would be much better received by our potential customers than a non-mainstream platform like Ruby or Python (and I’d have simply quit if they’d said Java).  Fast forward to today and a hosted solution (SaaS or otherwise) is a much more popular option for customers.

If we were making the platform choice today based on the assumption of a hosted solution, our primary concern would be team productivity with whatever technology we chose and the cloud deployment options for that platform because potential customer’s IT preferences are no longer an issue.

I don’t think there’s enough justifiable reason or even advantage in us ditching FubuMVC and .Net for Ruby on Rails now, but if I was at the beginning of things instead of almost 3 years in, I’d probably opt for Ruby / Rails and foregone the time investment that I’ve personally put into FubuMVC development.

I’m not really into making industry prognostications like a Ted Neward, but if I were Microsoft, I’d be very, very concerned because the SaaS model and cloud computing will erode some of the “no one ever got fired for using Microsoft” advantage that they’ve previously enjoyed.  In a world with less pressure to use standard technology, the best technologies will have a much bigger advantage than they do today.

 

About Jeremy Miller

Jeremy is the Chief Software Architect at Dovetail Software, the coolest ISV in Austin. Jeremy began his IT career writing "Shadow IT" applications to automate his engineering documentation, then wandered into software development because it looked like more fun. Jeremy is the author of the open source StructureMap tool for Dependency Injection with .Net, StoryTeller for supercharged acceptance testing in .Net, and one of the principal developers behind FubuMVC. Jeremy's thoughts on all things software can be found at The Shade Tree Developer at http://codebetter.com/jeremymiller.
This entry was posted in Uncategorized. Bookmark the permalink. Follow any comments here with the RSS feed for this post.
  • Mary Dorreen

    This is a nice, interesting thought. Thanks for the idea!

  • cliffeh

    Interesting. I’ve thought about that question myself – if given a totally Green field, what framework to use? I think at this point I’d stick with the .NET stack, but I’m not sure. What makes you say you’d likely go with RoR? Testability? Productivity?

  • Anonymous

    I completely agree.

    It’s been said for a while, but the cloud has really democratized server-side application frameworks.