A big moment for me in my programming journey was learning that "rules" I came across were not actually rules at all, but rather strategies that had solved someone's specific problem at some point in the past.
I remember it being difficult to know the difference when I was first learning. I'd come across something like how to define a private method (an actual rule) alongside separation of concerns (a "rule") at the same time. And because I didn't know any better, I took both the rules and the "rules" as gospel.
I specifically remember asking my brother about Object-Oriented Design. I thought it existed in the same space as learning about variables, functions, and classes. But he helped me understand that it was different. That it was actually one approach – of many – that people used to organize their code for the sake of making it easier for others to understand and change in the future.
Once I had a category in my mind for "rules" – strategies that solved a specific problem someone had encountered in the past – it became much easier to accelerate my learning. Because now when I encountered one, I didn't feel pressured to use it. I could simply take note of it, along with the problem that led to it in the first place, and tuck it away for later in case I ever had that problem myself.
The reason I'm writing this is because "rules" are often dressed up in flashy language like Design Patterns or packaged up into right-vs-wrong proclamations on Twitter, and in these formats, the message can get lost. The nugget of insight that these "rules" can provide should you find yourself struggling with the same problem that led to their creation is replaced with binary thinking. And while syntax is certainly either right or wrong, the "rules" of programming only involve tradeoffs.
So the next time you come across a trending Tweet containing a "rule" showing you the Right way to do something, make sure you understand the problems that the Wrong way caused in the first place, whether those problems are relevant to you, and exactly what you're being forced to give up, before running headlong into careless obedience.
@ridewithdance I successfully subscribed (and paid) for a yearly membership but entered the wrong phone number. My bike is available but no way to log into the dance app. Trying to contact support but I am not getting any answers. Can you help?
Still not over the #tRPC hype. Rebuilt the entire Round API using it.
If you are building a dynamic app with Next.js, you should probably be using https://t.co/rvOMgdxyrq. It feels like @prisma for your APIs.
🧵Thread
Dividing frontend from backend is an antipattern. Developer teams built around a product, instead of a piece of technology, perform better. #JS ubiquity helps. Stay open-minded! #Agile#OldieButGoodie https://t.co/7Klym9NkdR
A fascinating story on how small design changes rewrote the rules of messaging and how we feel about one another.
The Loss of Micro-Privacy, by @azumbrunnen_
https://t.co/MLkZf8pOPJ
JavaScript thought leaders: do this thing, this is the way this thing should be done.
Same thought leaders 8 months later: HAHA remember those idiots that did that thing I said to do, or are still doing that thing? Fuckin newbs.
My talk from @ReactiveConf, “Rethinking Design Practices”, is now up on YouTube, featuring a whirlwind tour of my thoughts on design systems, making our abstractions match the way designers think, and the promise of designing in code. https://t.co/jZejLpSh8I
If you like saying yes, get better at saying no. No gives you more opportunities to say yes to the things you really want to do/make/try/explore/discover.
🎶🎵
How many main blue buttons on a page
A lost user must browse ?
How many tooltips a product must show
To onboard me like crazy ?
The answer, my friend, is blowin' in the wind
The answer is blowin' in the wind
🎶🎵
@Dropbox
Pas d'équipe sans valeurs, pas de valeurs sans principes, pas de principes sans preuves ! The new tech principles for https://t.co/ULMYhKSYvV - FT Product & Technology - Medium https://t.co/NHi9ZI5BFq
🎬 What is Serverless? Part 1: Introduction 🎙
From the Prismic studio - @rauchg explains why Serverless not only helps to cut cost but also allows you to focus entirely on what your users are requesting.
https://t.co/qz1DcbZqi0