Articles

Software engineering lessons from production, raw and honest from the heart — almost 20 years of them. Jump to a year in the sidebar, or browse categories and curated collections.

9 articles from August 2023 · show all

Why write

Regular writing is a secret superpower! Sharpens your thoughts, boosts your career, and helps you become an authority in your field. Don't pretend to be an expert, just share your experiences. Your insights are gold

Avoid spooky action at a distance

Shared state in programming isn't the enemy, it's unclear dependencies that tangle your code. Keep it clean with explicit state dependencies and strict access guidelines

More on how many years to senior

Lots of readers wrote in with questions and comments about How many years to senior engineer?. Here's some additional thoughts.

How many years to senior engineer?

Becoming a senior engineer isn't about clocking years, but about depth and breadth of experience. Work in diverse teams, stick with a codebase for 3+ years, and take on projects with real stakes.

Life is Poker

Certainty is an illusion, only probabilities are real

Finding modules in a Big Ball of Mud with ChatGPT

Detangling a Big Ball of Mud is hard. You have to find domain boundaries where none exist. Looks like AI can help 🤩

Followup answers to Forget complicated code, focus on the system

Why are utility files bad? How do you recognize architectural complexity? What the hell is a transitive dependency?

Forget complicated code, focus on the system

Clean code matters, but it's the architectural complexity that truly impacts your productivity and bug count. Focus on simplifying the system, not just the code.

Programming in Markdown

What if you could focus on the fun _engineering_ part of your job, not on coding? You can!