We’re finally moving offices, tomorrow. When you bid out a construction job, there’s always one guy who comes in with a bid that’s way less than the other guys. It’s almost always a bad idea to accept this bid. Anyone whose bid is that far off either doesn’t know what he’s doing, or is cutting corners in some scary way, or will go bankrupt in the middle of the job. Or they’re lowballing to get the work, and they plan to make up the profit by overcharging you for the inevitable changes. But it can be incredibly tempting. “You can buy an awful lot of aspirin for $35,000,” you tell yourself. As a client, the best way to use a lowball bid is to get the contractor you really want to lower their bid.

In the software industry we’re always saying things like, “scheduling software is inherently difficult because it has never been written before, so it’s science. It’s not like the building industry, where everyone involved has done the same thing 100 times before and it’s possible to make good reliable schedules. The software industry needs to become more like the mature trades with predictable schedules and budgets.”

Well, what I’ve learned from my first large construction project is that this is hogwash. The building industry doesn’t know how to do anything on schedule or on budget, either.

The Good News

The good news is that our architect has done an incredible job designing what I consider to be the ultimate programmer’s workspace. I’ll write up a full report after we move in.

About the author.

In 2000 I co-founded Fog Creek Software, where we created lots of cool things like the FogBugz bug tracker, Trello, and Glitch. I also worked with Jeff Atwood to create Stack Overflow and served as CEO of Stack Overflow from 2010-2019. Today I serve as the chairman of the board for Stack Overflow, Glitch, and HASH.