
Principles for crafting software
Ever since I started designing, I wanted to take my concepts all the way to production. I taught myself to code (pre-AI), but there weren't enough hours in the day to be both a great designer and builder. This is no longer the case. Now, a single person can go from idea to production to real users in days
That shift cuts both ways. Companies are shedding thousands of roles as they figure out what AI-aided productivity actually looks like. Job descriptions are being rewritten in real time. There are a million new tools to try and skills to learn.
When everything is moving this fast, it helps to know what you believe in. Principles give you a filter for where to focus your energy, what to say no to, and what kind of work is worth doing.
Here are mine:
1. No problem is too small to solve if you care about it.
Some of my favorite products exist because someone decided a specific, overlooked problem was worth their full attention. I'd rather build around a small problem I care about than a big market opportunity I don't.
2. Existing doesn't mean good enough.
Most software settles into adequacy and stays there. Just because something exists doesn't mean it's been done well. Most successful products weren't the first to solve their problem. They were the first to solve it with taste.
3. Design is how it feels, not how it looks.
A set of polished static screens is not design. Design is how the product feels when someone is using it to solve their problem. I want to spend most of my time building and refining the real thing, not a representation of it.
4. Exceptional craft is rare, and that makes it a differentiator.
Most people stop refining long before they reach something exceptional. AI makes this worse: it raises the floor by making it trivial to produce something passable, but it lowers the ceiling by encouraging people to stop there. In a world flooded with "good enough," the willingness to push past it is more valuable than ever.
5. One person is often the ideal team size.
When you add people, you add process and reduce decisiveness. When one person has a clear vision and the right tools, they can move an idea from concept to reality at higher speed and quality than a large team, with nothing lost in translation. This isn't the only way to work, but it's the way I enjoy most.
Applying these principles
When I decide what to work on, I hold it up against these principles. If something fits most of them, I know I'll enjoy the work and it'll be more likely to succeed. This is why I launched Scratch and it's the lens I apply to our work at Versive.
AI is making building cheap, so there will be no shortage of solutions to any given problem. What will remain rare is the thoughtfulness to solve them well. These principles are how I stay oriented toward that – I'd encourage you to find your own.