After hearing This American Life's Lists!!! this week, I felt inspired to make one of my own. I reflected on how I build software and wrote down ten rules that guide me. I hope some of these connect with you too.
Though Shalt Demand Clarity: Never accept vague answers or sloppy reasoning. If you can't state a problem, you can't find a solution. Chase clarity until it's nailed down.
Though Shalt Iterate Relentlessly: Draft, refine, debug, polish, repeat. Code, comedy, recipes, prose, nothing is finished until it's been sharpened through iteration.
Though Shalt Seek Simplicity: When things feel messy, zoom out. Draw diagrams, state problems clearly, break challenges into pieces. The best complex systems are built from simple parts.
Though Shalt Question Everything: Don't be afraid to ask questions. If you don't understand something, chances are others don't too.
Though Shalt Never Stop Learning: Wether it's game design, LLMs, web development, or functional programming, stay hungry. Sometimes the old ways must change. Be bold enough to start fresh. Every challenge is a chance to learn.
Though Shalt Build for Individuals: Create things that make individual lives better. When in doubt, start by building something for yourself. Chances are, if you need it someone else does too.
Though Shalt Balance Humor and Rigor: Absurd stories about skibidi toliets and savage roasts belong beside precise explanations of codebases. Life can be ridiculous and precise. Embrace both sides.
Though Shalt Embrace Constraints: Small teams, legacy codebases, and tight timelines are creative challenges. Let constraints sharpen innovation.
Though Shalt Say No: Time is precious. Prioritize what moves the needle. Say no when needed to cut distractions.
Though Shalt Collaborate Generously: Progress comes faster when shared. Teach, mentor, and empower others to build alongside you. Build ten things with others rather than leading one alone.