3 ms·
Be careful not to confuse solemn and serious. If the Apollo engineers could have fun shooting a tin can at the moon and the Manhattan Project engineers could ha
by sgentle 8y ago
Be careful not to confuse solemn and serious. If the Apollo engineers could have fun shooting a tin can at the moon and the Manhattan Project engineers could have fun creating humanity's most terrible weapon, you can have fun making a VC-backed webapp or back-office database.
Don't let anyone convince you engineers having fun is the reason for all the garbage software. That's pure stockholm syndrome. The reason for garbage software is that developers aren't treated like real engineers, and don't act like real engineers. They're children in a room full of adults making Important Business Decisions That They Just Need To Accept. So what if those decisions are bad engineering? You're not a real engineer anyway so listen to the grownups.
The worst part is they do it to themselves. In the biggest sellers market in history, developers don't put their feet down about bad decisions because b-b-but I might get fired! They passively watch, nod sagely when it all goes to shit and say "mmm, I knew that was going to happen" like ignoring the responsibility that comes with professional training is something to be proud of.
You think sales people make more money because they studied harder? It's because they know their value. You think lawyers get taken more seriously because they dress better? It's because they are personally and professionally liable for everything they say - or don't say - to a client. You think doctors have more autonomy because they never have any fun? It's because every doctor knows that no extenuating circumstances, no "but management said", no piece of paper can ever clean the blood from their hands.
Believing that the problem is easter eggs is buying into the same mindset that brought us here in the first place. Those naughty developers again! Gosh, when will they start wearing ties to work, sit patiently in meetings while we talk at them, and then sign off on half-finished garbage code? Don't they know we have a business to run!
But the Challenger didn't explode because of Silly Shirt Friday. It exploded because management didn't respect their engineers. When the first fatal microservice is written, it won't be because developers had fun. It'll be because they don't respect themselves.
- quanticle 8y ago>But the Challenger didn't explode because of Silly Shirt Friday. It exploded because management didn't respect their engineers. That's a myth. I encourage you to read Challenger Launch Decision, by Diane Vaughan. Challenger didn't explode because management disrespected their engineers. Challenger exploded because the engineers themselves normalized deviance. They would launch, observe anomalous results, note that the system hadn't failed, and then expand the envelope of normality to include the anomalous results. At no point did the team working on the SRBs say, "No, we should stop the Shuttle program and redesign the booster," not even to other engineers. Repeatedly, in interviews, engineers expressed surprise and shock at the failure, because they thought that the problem of O-ring blow-by was a minor problem that could be fixed with tweaks. Indeed, on many an occasion, they thought that they had fixed it, only for the issue to recur in the future. It's easy and comforting for us engineers to think that Challenger was due to myopia on the behalf of NASA management. But it's wrong. Challenger was the result of cascade failure of rationality all throughout the NASA organization, and the engineers are as culpable as the managers.