Guidelines for building
A snapshot of my current approach and some sense of priority for the process of building things (like products, websites, apps, code, hardware, understanding/knowledge, etc)
People first
Prioritize the experience of both the people using it and building it with you.
Simplify
Make it easy to use and understand.
Prioritize UX, create good summaries & abstractions, write less code
Organize
Make it easy to explore and understand.
Good structure, group logic & functionality together, follow common patterns, etc
Add value
It should make life better (big or small) for someone and allow them to:
Do what they’re best at, be creative, get things done, learn something new, play, explore, make a decision, develop connections, find a flow state, help others, use their intuition, build more things, etc
Automate (the boring stuff)
Reduce complexity and leave room for the fun stuff.
Tooling, formatting, spell checking, automation, templates, etc
Compound
Create things that can be built on, and contribute back to things that you use to build.
Longevity
Choose technologies or platforms that will likely last as long as possible and are less dependant on single points of failure (like a closed platform)
Safety
Safe to: use, update, change, release, forget about
Pick a foundation
Choosing a standard (that’s been around for awhile and not shrinking) means more builders, community, common knowledge and some peace of mind about the future.
Code language, file format, communication standards
Place Bets
New tech and ways of working can bring a lot of productivity, joy and energy to the process. But try to balance bringing these in with the chance they’re just a temporary trend, or just mask other necessary work.