메인 내용으로 이동

Boring Technologies

IDOL Stack

Programming is a Pop Culture – Baldur Bjarnason

  • The programming pop culture favors specific code aesthetics based on the trends of the day
  • The issue is that the programming pop culture demands that code exhibit the latest popular aesthetics of rigor, formality, and cleverness
  • It didn't matter if you were writing in Ruby, JavaScript, or Objective-C. Your code had to have a level of magic to it. Metaprogramming, syntax-hacking languages to create ad hoc Domain-Specific Languages, tricks with extreme late binding, and more were frequent topics on developer weblogs and forums
  • A part of this trend is the unpopularity of the approaches and languages seen as less rigorous. CSS is dropped in favor of statically typed CSS-in-JS methods. HTML is dropped in favor of a strict inline XML-like markup format called JSX

Your tech stack is not the product

  • At most software startups, customers typically don't care if your product runs on Heroku, Kubernetes, or a brittle singly-homed machine in Joe's closet
  • No purchasing decisions hinge on your commitment to write servers in Rust or use Nix for hermetic everything
  • Customers want software that delivers problem-solving impact
  • But there are many instances where an innocent, ill-considered early decision turned out much worse over the longer term. It becomes a time-sucking, success-hindering mess requiring costly correction later
  • Ship the product. Frequently and reliably.
  • support growth. Be able to bring in more people gradually that can do
  • No sacred bits: Launch, learn, iterate
  • Today's bets over tomorrow's theoretical
  • Favor boring technology and in-house expertise
  • Buy non-core competencies whenever prudent

Use a monorepo

  • I wrote last month about migrating Buttondown from several separate micro repositories to a single monorepo. I've since completed the migration, and the slight irritation I felt from having to unwind many technical choices with deployment + continuous integration has faded.
  • I am here to tell you: if you are running a software business and you aren't at, like, Google-tier scale, throw it all in a mono repo