Strong opinions, loosely held
"...It means taking a stand based on your experience and expertise. It means justifying your point of view and any leadership direction you set with that same experience and expertise. However, if evidence comes back from the market that contradicts your experience and expertise, you’re willing to change course. You’re humble enough to recognize that you were wrong and to learn from the contradictory evidence to point the organization in a new, more promising direction. Strong opinions, loosely held." - Jeff Gothelf (blog post)
This style guide is a living and breathing document, ultimately of personal preferences (converted into rules/guidelines), based on what I currently believe to be "best practices" (from my current level of knowledge and understanding, current popular trends, conventions, etc.). It is also where I'm keeping track of my preferred tech stack(s), with some "preferred" tech occasionally being due to familiarity, rather than "best choice" or "best in class" (choosing MongoDB over SQL/PostgreSQL is the only instance of that that I can think of, currently).
Update (1/8/2024)
I've recently spent a lot of time learning TailwindCSS, shadcn, and NextJS v14+. While I don't have the experience and familiarity to do so yet, I will likely eventually be having NextJS as part of my preferred tech stack, also converting from CSS-in-JS UI libraries (e.g. MUI) to TailwindCSS (as they play better with the different rendering patterns that NextJS v13+ offers). My personal template "starter repo" for projects will eventually reflect those changes (this is just a personal note).
Update (1/4/2025)
Yep — TailwindCSS, shadcn, NextJS v15, React v19, etc. Just beginning to learn Turborepo, and hope to establish my own template monorepo setup this year (web, mobile w/ Expo, etc.).
Besides Preferred Tech Stack (Current), Basic Guidelines, Naming, and some of Our Systems pages, other portions of this style guide may be out of date.
Last updated