There was a distinct moment when I realized that I had completely borked the accounting system for my photo mapping startup. It was February of 2004 and I was living and working out of a tiny apartment in Berkeley and had spent two days tracking down a ten cent discrepancy between a customer's fees and their charges. I was knee deep in the debugger, stepping through the home spun transaction persistence code which competed with the map renderer in both size and complexity.
In the moment when I saw that the bug occurred when a boolean statement unexpectedly short-circuited, I had the realization that I knew how to fix the bug but I would be a fool to do so. I had a good solution to the wrong problem.
Writing accounting software was not my business. Selling photo mapping software was my business. Looking through the code repository, I saw that I had written all manner of things which were not photo mapping software: a custom logging system, a process monitor, an FAQ and customer support app, and of course an accounting package. In other words, I was spending most of my time on parts of the business which were not special sauce.
It's really quite tempting to write your own accounting software. None of the existing third party services are terrific and they don't quite fit the business models I design and it's quite easy to argue that tracking money is special sauce. In "How Will You Measure Your Life" by Clayton M. Christensen et al, they tell the cautionary tale of Dell, who over the course of years outsourced each and every part of their PC business to Asus who then turned around and became their competitor, leaving Dell without the skills or manufacturing capability to make their core product.
Here's how you know: If you don't include it in your elevator pitch then it's not special sauce.
Nobody says "My company makes photo mapping software which turns your vacation photos into gorgeous web maps and we have sweet accounting software."
Years later, I wrote up rules for "my next damn startup" and this is number one:
Don't build a damn thing except secret sauce. Whenever I think, "I'll just whip up X so that I don't have to pay X.com a monthly fee" a specially trained bear will spring out from behind a desk and eat my face.
It's a hard learned lesson and I'd like to build a time machine to travel back to 2004 and tell the younger me to avoid The Bear (and to take care of my lower back). Now that would be special sauce.
Using Three.js to build a reusable border geometry for spatial UIs!
🌸 Updated potassium style system (KSS), now with margins!
🌸 The path to the vNext
🌸 A couple of new spatial controls
🌸 A brief intro to the existing samples
🌸 Building UI components that work in flat, portal, and immersive display modes