Ask HN: Why am I a jerk about code?
Since high school, I've strived to not talk negatively about people behind their back, to not say things about people that I wouldn't want them to hear. And I'm pretty good at not doing that. I consider myself a nice guy.
But show me an app they built, with their jQuery soup and their thoughtless design, and suddenly I'm the playground know-it-all (or playground hipster?). I'm so damn full of opinions around code, and it seems impossible to apply the same open-mindedness I apply about other kinds of opinions in life (even political views) to code. It's like if you don't do it the same way as I do, you're wrong and it's ridiculous.
Anyone else experience this? What is it about code and the latest JavaScript libraries and tooling that makes it feel okay to be self-righteous and extremely opinionated, despite not being so rigid about anything else?
(I'd like to be the guy that sees the value and effort and potential in others' code or app ideas, and supports them.)
4 comments
[ 2.9 ms ] story [ 21.4 ms ] threadProgramming follows some of the bad stereotypes of nerd culture (https://www.youtube.com/watch?v=Qam4iiya1q0).
But no one really knows that much about all the technology world, and it is important to be humble about it. I used to be more arrogant when I've started programming, that was a self-defense mechanism against my insecurities, and by that I used to just reinforce the hype. A bunch of new hype technologies are not that interesting, they just repeat things that have been done before or they add layers that sometimes don't bring any benefit. So it is important to have a beginner's mind every time you read someone's else's project, because there's a thousand different ways of doing things.
Said that. It is fine to give constructive criticism, and to show other ways of doing things. One thing I believe is that all software is crap. And that we shouldn't treat code as if it was literature and an intrinsic part of our being. If you want to express your inner self, do art, not code. If you code for art, do the end project the art and not the lines of code that no one would understand anyway. It is important to detach the code from the person. And we need to assume that every line of code is a potential problem. We work to deliver features not code. Code is a necessary evil.
In summary: Think if you're not being aggressive due to your own insecurity. Of everything that there is to know in the code world, and how that can be scary. And try to give constructive criticism, give criticism to help people get better at their projects and deliver it, not to make them feel less valued.
The end result is that sometimes I realize that I don't care and other times I learn something and it turns out that situations where the other person did not have good reasons for doing something stupid are relatively rare.
Maybe I'm empathetic due to vast experience doing stupid things myself. Anyway, I find that empathy seems to lead to understanding.
Good luck.