Discussion about this post

User's avatar
Hasen Judi's avatar

The first type is very common.

They are the reason everything is complex and fragile.

"Easy, let the use edit this config file"

"Just create a docker-compose file with this content"

"Just put the package directory here and the templates directory there"

Death by a thousand cuts. Every cut is just a tiny "just do that" kinda statement.

The result is that to get anything working you have to remember a 100 tiny annoying details with no feedback mechanism to tell you whether you got everything right or forgot something critical.

This is why most programming jobs suck the soul right out of you.

Expand full comment
Rich Sparks's avatar

I like the quote, “If you want someone to do something, make it easy for them to do it.”

That seems obvious, but it could press the first type of engineer to think about “them”. That is, who is going to do the thing, and what do they know? Maybe they’re not a programmer who understands the internal model of the system. Maybe they’re someone in a hurry, who is actually trying to do some other job, but needs to use the system to do one part of the job.

Everybody should assume their customer isn’t going to read the manual. All the customers are used to the magic of google where you type something in and get a whole bunch of help in the blink of an eye.

Expand full comment
13 more comments...

No posts