The Four Hour Sprint

If you want to talk about themes that have dominated the last year of my life, “agile” has got to be one of the most popular. It seems that everyone wants to be agile, and there’s a lot of debate about what that means, if anything. Agile software development is a group of software development methodologies that are based on iterative and incremental development. It comes in a variety of flavors, the most popular being Scrum.

If you’re familiar with Scrum you know the common traits:

  • Release often: Success if based on shipping working product.
  • Don’t release crap: Trim back the features and release something that works well, both for you and your customer.
  • Iterate: This week you’ll do X, next week you’ll do Y, even if that means undoing X.

The mechanics of a successful agile team vary, commonly differentiated by the length of a sprint or iteration. After much tweaking I’ve found that the shorter the sprint the better. I’m currently working in four-hour sprints and here’s why you should too.

Incedental Reasons

  • Four hours is about the amount of time you can spend in Starbucks without your ass going numb.
  • Four hours is about the amount of time you can actually focus. Hunger is usually my biggest distraction.
  • Four hours is about the amount of time your laptop battery will last without re-charging.

For Realzy Reasons

4 Hour Timer

  • You have to manage scope: When you measure your sprints in hours - not days - you have no choice but to seriously question the scope of what you’re doing. You have to ship something! So, get your shit together.
  • You can’t write garbage code: Let’s face it, how much damage can you do to a codebase in four hours? If tests have to pass and a deployment has to happen you just don’t have time to fuck around.
  • You’ll get realistic: Constraints breed creativity. You’ll come up with incredible solutions to deliver on your deadline.

I know, this won’t work for everyone. I’ve worked on projects where simply deploying was a four hour task in and of itself! That’s garbage. If this is you, put “make deployments easy” at the top of your to-do list. Maybe your part of a bigger team, where coordinating deployments can get tricky. Work towards building a team of branching ninjas that can compartmentalize features and releases.

We’re very simple creatures. Most projects, probably the one you’re working on right now, go over budget and over time. That’s because, as humans, we grossly overestimate what we’re capable of actually accomplishing. Don’t fight it! Break things down into chunks you can actually handle.

Thanks for reading! I'm Avand.

I’ve been working on the web for over a decade and am passionate about building great products.

My last job was with Airbnb, where I focused on internal products that helped teams measure the quality of the software they were building. I also built internal tools for employees to stay more connected, especially after the COVID-19 pandemic. Before that, I was lead engineer at Mystery Science, the #1 way in which science is taught in U.S. elementary school classroms. For a while, I also taught with General Assembly, teaching aspiring developers the basics of front-end web development.

I was born in Boston, grew up in Salt Lake City, and spent many years living in Chicago. Now, I call San Francisco my home and Mariposa my home away from home.

I enjoy the great outdoors and absolutely love music and dance. Cars have been an lifelong obsession of mine, especially vintage BMWs and Volkswagens. I’m the proud owner of a 2002 E-250 Sportsmobile van, and he and I have enjoyed many trips to beautiful and remote parts of the West Coast to create good vibes.

What can I do for you?

Read my other posts or get in touch: