Working to constraints

January 22 2010

I’ve been reading the 37signals SVN blog for a while now, but a recent talk by DHH really got me thinking. In it he speaks to a group of Stanford students and explains why they need to Unlearn their MBA. In this post I take some of the topics that he discusses and throw in my own opinion.

As a side note: It’s interesting to consider how many people’s professional lives have been shaped by the software framework that DHH released to the world. While many argue that 37signals needs to be more open about their business figures and research methods, it’s impossible to negate how they’ve created jobs (growing the industry?) without ever dilluting their revenue.

I recently graduated (June 2009) from University and luckily it hasn’t been very difficult to find work – either full-time or freelance. The tech industry seems to be one of the few that saw a boost during the recession. Whilst many were being laid off from work, those same companies sought expertise in building systems to automate and streamline as many tasks as possible. As a result, there are much more tech jobs than a few years ago and many of my friends who work in recruitment can attest to this. Gone (hopefully) are the days where candidates have to outright lie on their job applications and instead are chosen on their ability to create. Whether it be open-source projects, personal websites or even public repositories, there are a number of ways that a new computer science graduate can show their worth.

DHH takes this one step further and claims that it’s an opportune time for any new start-up (business) to gain traction. The reason given is that when the economy is steady, consumers are more likely to go with the tried and tested (read: expensive) option, but when they’re in a recession there’s a greater chance of trying out new products and services. With this in mind, should any graduate have difficulty finding a job, perhaps it’s time to start on that business idea they’ve had for some time? Rather than plan out how they’re going to run this new business, they should just do it.

Planning out the next five years of a small business is clearly just harmful guessing. A significant change will happen when the business starts to get things done, not by planning for them. Spending time procrastinating and pretending to work is never going to help anyone and is going to be especially detrimental to any employees of the small business. Small business owners need to stop relying on fancy projections to save them from their bank managers. Instead an emphasis on completing tasks and helping employees needs to be made.

It’s very rare that a company is an overnight success and in a few cases, the business may have just been working it’s way up to release for some time. However, unlimited time and money never lead to great products. By limiting the amount of time you have to go live, it’s likely that you can strip out any extra noise from the product/service and produce early iterations that will be indicative to it’s core features and/or functionality. In short: great, simple products!

Personally, I’ve found limiting the amount of time I spend learning new languages has forced me to concentrate more in that short period of time and has accelerated my learning to no end. In addition to this, I recommend anyone learning a new programming language to combine their progress with the problems at Project Euler. I’ve found it interesting learning how different languages treat the same set of problems and am indebted to that community for their comprehensive break-downs of elegant solutions.