Development Platform Choice… Avoiding a Wild Milieu

19 October 2007

I have long since stopped keeping up with the “right” development platform for new applications, choosing to trust my development staff to make these critical decisions.  Maybe it’s my old age (43, if you’re asking).  Maybe it’s my focus on the business and strategy decisions.  Maybe it’s the fact that I’d rather spend time with my family than learn the newest development tools and tricks.  No matter, though.  As I said, I leave the big decision about a development platform to the development team.

In Boulder’s Startup Weekend, witness what happened:

By Sunday morning, when still nobody had seen any sort of working [JAVA-based] prototype this mutiny hit full steam. A small mutiny was underway. By around 11am on Sunday, it was in full force and it was announced that a Rails team would set off in competition to pass the Java team. In the end, Andrew tactfully saved this by a) admitting his mistake, and b) getting the Rails team to work in concert with the Java team. – from Brutal Honesty: A failure, and a success

What struck me most about the Boulder experience is that this is not how business works.  It would be suicidal for a company to hire a dozen or two JAVA developers and an equal number of Rails folks.  Witness, further, one invididual participant’s observation of the process in Boulder… read it here.

Andrew Hyde made the following valid points about the most recent StartupWeekend near Purdue University:

The ‘what programming language’ discussion is always weird to me, and still is problematic every weekend. The group chose .NET and then changed to PHP after a rogue coder decided he could build it faster (and said, hey, guys, um.. I just kinda built it, want to see?). What can we do to solve this in future weekends? I don’t know. “What language would you like to code in?” is really not the question that needs to be asked, instead, “What language are you a rock star in and can create a prototype in a weekend?” might just be better. – from Review of Startup Weekend West Lafayette

When faced with the decision on how to address this for the Birmingham effort, we turned to other members of the organizing team.  It was clear from the Boulder experience that it would be helpful to address the issue in advance.  So, because of the larger supply of .NET developers in the region we made what some may see as an arbitrary decision to align the platform with the resources available.  In fact, our local .NET user group is larger and more organized than our local Ruby group.

One argument against using .NET was procuring enough “legal” licenses to build the product.  No problem… everyone can work with a free, 90-day trial of Visual Studio.  The resulting company will be responsible for securing any required licenses.

One last thing… if an idea-submitter is truly unhappy with this decision, then they are still FULLY ENCOURAGED to participate in the “Business Development” weekend.  There is plenty of benefit to putting your idea through the paces… just indicate to the organizers that you wish to withdraw from the selection evening on the first Sunday.  It’s that simple.  Of course, there is a better than good chance that we’ll swing the pendulum back to open source for our second Birmingham Startup effort (in 2008, anyone?) and your idea will be better prepared to compete for the Implementation Weekend under those conditions.


3 Responses to “Development Platform Choice… Avoiding a Wild Milieu”

  1. If anything I learned two valuable things about the language you choose for something like the weekend.

    Don’t choose a language that requires a lot of proprietary support or expensive licensed software to run.
    Your stuck with it. Make sure there are a large base of available people that can carry on when you need them.

    Specifically I recommend you do not use Ruby on Rails or .NET platforms.

    The .NET platform has the obvious disadvantage that its being proprietary and requires the immediate expense of server and developer resources that you don’t really want to have to deal with when you haven’t generated any revenue at all.

    Ruby on Rails has a vocal following and many people swear by it, however it is also not being used much yet in real applications and it may be very difficult to find people who know the language with sufficient experience to carry on.

    I have ended up as the General Manager of the product developed during the Toronto Weekend. The developers there chose Ruby on Rails as the platform to build upon.

    I can tell you now – a month later – that I regret that choice immensely because of the very difficulties I mentioned above.

    I think when choosing your own language, you have to assume that people will be too busy to contribute much at a critical time right after the weekend. Everyone has the best intentions but the reality is that it take a lot of work (your working two jobs) and the few people tasked to carry on the work are going to be hard pressed.

    Do yourself a favour and choose a language that will make things easy for you after the weekend.

    I’m a java developer by trade, about 15 years worth now… however I don’t recommend Java as the language of choice for a weekend run because it take a very experienced and agile developer to make it work. Java developers IMO often over engineer which will make getting it done in a weekend difficult. That’s not to say that it’s not possible, but you’d need a very good manager to keep it all on track.

    So, I’ve talked a lot about what not to use. I think if I were to do this again I’d use PHP. It’s simple enough that just about any experienced developer can pick it up quickly and the chances are good that most of them have already used it. It has good documentation and a large community. It also has a track record of performing supported by servsers like Apache.

    … and my favorite reason… you can likely find the people you need when everyone else gets too busy to contribute in a timely way.

  2. Ben said

    I disagree with the .NET choice b/c you completely eliminate people who develop on a mac platform (myself and three friends who were going to come). I agree with Bill though that .NET and java are not suitable for getting it done in a weekend. You should have left it open to the teams working on the projects or at least to the person in charge of the idea to decide the technology.

  3. […] thought so last time too and planned in advance for it. But, our opinion was that this backfired. Any predetermined decision avoids battles, but also […]

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: