6 ms·
We don't use code to show how smart we are. We just assume that other developers are as smart as we are. >We don’t see people writing books in acronyms or omit
by Grue3 7y ago
We don't use code to show how smart we are. We just assume that other developers are as smart as we are.
>We don’t see people writing books in acronyms or omitting words.
Math books written for mathematicians do this all the time.
- rurp 7y agoI didn't take the comment to mean that other developers can't understand clever code, rather that writing overly clever code just isn't the best approach when a more plain solution will do. Writing code that takes another developer an hour to read through and understand wastes a lot of time compared to code that can be read and understood at a glance.
- hinkley 7y agoThis is most important when scanning code. When I’m trying to add functionality of fix a bug, I’m going to read dozens and dozens of functions to winnow down to a handful of candidates. Simple code can be filtered quickly and cheaply. Clever code requires contemplation. Which clears working memory. Yes, I can understand your code. But I shouldn’t have to work for it.
- Rychard 7y ago> We don't use code to show how smart we are. We just assume that other developers are as smart as we are. I think it would be more accurate to say that we assume that other developers have the same amount of context about the problem as we do. Going back and reading my own code from even a few months ago makes this very evident, as I frequently realize that I'd made various assumptions that required a much deeper level of understanding than I anticipated. The difficulty in providing a sufficient amount of context is readily apparent to me as I go back and fill in the gaps I unknowingly left.
- mathgladiator 7y agoThe key difference being operational ownership and business continuity. If all mathematicians (and I say this as a mathematician and math lover) just up and had a heart attack, then the world would probably not notice (as a whole). If a critical service is experiencing growth and built on cryptic stuff, then the world may notice if no one can maintain it and it falls over.
- hinkley 7y agoOh, I’ve definitely worked with people who really enjoy being clever. And telling them their cleverness is hurting other people can be traumatic, for one or both parties. I like being clever too. I’ve just sublimated that into more beneficial things like human factors.
- robocat 7y ago> We just assume that other developers are as smart as we are. I think that excuse falls over when you look at some old code you yourself wrote, and you find that you can't understand it. That's presuming your smartness doesn't change much over time.