I wonder why programming culture is (on average) so enamoured with smartness over reasonableness.

It's particularly striking if you hang out with people who have the opposite values (e.g., trades, which, on average, strongly value reasonableness over smartness). By contrast, programming culture seems quite ridiculous?

For example, valuing "very smart" complex stuff that add little value (often negative value) over simple solutions that add a lot of value, e.g., twitter.com/danluu/status/1129.

The kind of reasoning used above would get you laughed out of the room in the trades but, in software, it's quite common to have some notion of complexity explicitly encoded in promo criteria.

And, unofficially, people are often impressed when someone builds some super complex thing you'd have to be very smart to pull off, even if that thing is worthless or negative value where, as in the trades, if you do that once or twice, you'll get a bad reputation that will follow you around for life.

@danluu Oh yes, scoring the tetris game by the number of blocks you have on the playing field is very common in tech.

Follow

@makdaam @danluu @danluu

I think the problem around "that could've been done by a SWE-2" has to do with the relative difficulty of telling how good someone is in software engineering vs. other fields.

For SWEs, it's easy (relatively) to recognize a complex system. It's quite a bit harder to recognize that a simple solution was simple because of the brilliance of the designer, and not because it's a simple problem. (That's my assertion here, anyway!)

It's kind of reminiscent of the "streetlight effect": we look at the easy thing to look at because we're better at looking at it.

It's critically important to combat this when designing an evaluation process for SWEs. If you're a SWE evaluating other SWEs, you need to be self-aware around this. If you are a SWE at a firm, leave if they get this wrong.

I think this is the right way to look at it: You want to promote people who (1) work on hard problems and (2) do the work well. (There's also leadership and various other factors, but let's just consider 1 and 2 here.)

(1) is important – another way to put this is that if SWE-2s can do all your problems, then you can just hire SWE-2s. (And they should be wary of working at your firm for long – there's little growth potential; they aren't going to learn much.)

(2) can be accomplished by finding a really simple solution that nobody else could think of. e.g. sr. folks built something really complex to do the job because they thought it was necessary, or "everyone" thought we needed a complex system, and then this candidate redid the system in a really simple way that worked at least as well. You have to go out of your way to be open to recognizing this.

Worth noting: "that could've been done by a SWE-2" might be legitimate! Maybe it just wasn't a hard problem. IOW: would a SWE-2 have recognized it as something they could do? If so, no promo.

Sign in to participate in the conversation
CleverLibre Social

CleverLibre Social is an inclusive social instance for open discussion, learning, and community.
All cultures welcome.
Hate speech and harassment strictly forbidden.