How we did it

6 July 2010
by sam

At Pigment we don’t believe in working ourselves in to the ground. We want to keep our team sharp and creative, so we keep to a laid back working practice. We work sensible hours, have good breaks and fun in the office.  We wanted to apply these values to our own project too, no matter how exciting it is working on something new (we could easily have worked late in to the night, fuelled on adrenaline and pizza, but we decided not to).

  • We worked (very) reasonable hours.  Most of us arrived in the office at around 10AM and left for home at around 5:30
  • We went out for lunch every day
  • We took time out to do something different every now and then (for example, to do some juggling, watch a youtube clip, trying to get our hands on the new iPhone 4)
  • Every feature had to have good integration test (cucumber) coverage

So how did we get so much done?

  • We eliminated as many distractions as we could.  Flipping to another job to fix a problem impacts your flow significantly.  For example, answering a 5 minute question about another project could cost ten times that because of interrupted flow. Programming and design requires focus and that isn’t possible when you’re flipping from task to task.
  • We had only one short standup ball passing meeting in the morning (you are permitted to talk only if you have the ball)
  • We concentrated on only what we needed to do to tick a box.  For example, a task might be “a user should be able to send an email”.  If we can answer “Yes” to that question, the job is done and we move on to the next one.  Does it have a really nice form? No. Does it have formatting? No.  Does it have an address book? No.  These are all separate features that we’ll get to – but in the meantime we have a working product sooner.
  • We wrote quick acceptance tests (cucumber scenarios) before starting any code for each feature

On the technical side, we used pivotal tracker to manage jobs, github to share our code, heroku for deployment and  sendgrid for email processing.

Leave a Comment