Our estimating software has its roots in an Excel spreadsheet started in Winter ’86. It was just a list of construction items and prices, with formulas to do math on them. The first unit costs were the “rules of thumb” that we already used for our construction estimates.
The spreadsheet improved gradually, as we duplicated it for each new job. Its first big test was a $100K remodeling project in a log house that summer (about $250K today). There were many complications, so the estimate ran to 200+ line items. The work was so unusual that nobody else bid on it. Our price was significantly over their planning budget, but we got it anyhow.
It was the biggest project ever, for Turtle Creek Carpentry. We were nervous about the size, so we built another new spreadsheet to track expenses. It later grew into our current accounting software.
Real-time job costing was a roller-coaster. For the new log garage, the estimate had a *12/5 formula to convert square feet of wall to lineal feet of log. Unfortunately, it was zapped by a later copy/paste, so expenses were suddenly $4,000 higher than expected. Then, oops, interior paneling was listed twice. That put it back close to estimate. Other errors turned up, but in the end, final costs matched the estimate within 2%.
The lessons learned from that job still apply to our current construction estimating software.
1). it’s possible to get surprisingly good accuracy, even when the data is imperfect. The trick is to split the project into small pieces, and calculate each separately. The small errors will nearly always cancel out. It’s important to avoid systematic errors (everything wrong in the same direction). However, that is much easier than getting everything perfect.
2). Having a detailed breakdown of every item is impressive. Later on, we won bids even as high bidder, just because the list was so complete. Detailed printouts are an excellent marketing tool. In those days, it wasn’t hard to look better than everyone else. Now, it’s almost a requirement.
3). Matching actual expenses to the estimate really helps improve accuracy. The better you track job costs, the more accurate your estimates become.
4). It’s important to group things. That first big estimate had a huge list of items with no subdivisions. It was overwhelming, and hard to see errors. We overlooked the doubly-listed paneling. So did the architect, and the client. Seeing subtotals for different categories is a good ‘sanity check’ that we added to later estimates. As a bonus, it’s much easier to track job costing by category, rather than by item. Then you don’t need to ask where every 2×4 went.
5). Don’t rely on hidden math. As the spreadsheets and software evolved, we gradually found ways to make the cost calculations more visible and obvious. It’s an ongoing process that we still are improving.
We seem to be thinking more about estimating basics lately, as work progresses on Goldenseal Pro. Some of that is because the rewrite stirs up ideas for how to improve the software. Some is because we still aren’t very good at estimating the time it takes for our programming work. Ideally, it would sure be nice to calculate in advance, exactly how long each new product or upgrade will take.
Anyhow, 4 of the 6 basic modes in Goldenseal Pro are now functioning moderately well, and the 5th is getting there. Still many small details to finish, but it’s progressing at a steady pace.