2 ms·
20% content, 80% sneering and self-pleasuring about inferior other people. It's not that solid trustable systems don't exist, or are a bad idea, or chasing the
by jodrellblank 6y ago
20% content, 80% sneering and self-pleasuring about inferior other people. It's not that solid trustable systems don't exist, or are a bad idea, or chasing the new-shiny doesn't happen, but they're not really what the post is about.
> underpaid compensated in self esteem [..] manager saying “dude yer so fookin smart” [...] brainlet payment system. [..] benefit to boring languages is people concentrate on the problem not interesting complexities of tool
Missing the point raised earlier: "the problem" being solved is that work is boring; Woo isn't added "for its own sake", it's added because being an interchangable cog in a relentless productivity optimization machine isn't what humans exist for, no matter how much employers and the author would like that to be so.
> people who feel like every line of code has to be innovative
Employees don't get paid or promoted for saying "this is good enough, let's take 18 months off", but they do for adding a new widget or showing off to the boss. Broken incentives lead to people following them.
> like bike-shedding, but more perverse
It's pleasure! Spit! Disgusting, sinful and shameful, and the people who enjoy it are inferior. Get back to the grindstone!
> you are presumably solving real world problems which someone pays for
"Impress my manager", "buy some food", "survive this stupid doomed project nobody wants that doesn't have the political backing or funding to get to its impossible goals" are problems people solve for money. Jobs where people solve real world problems seem a small subset of jobs.
> about as necessary and in demand as riding to work in silver pants on a unicycle
The way someone commutes to work has so little to do with anything that it's a big reinforcement this is about image, not engineering.
> developers [..] are often child-like in their enthusiasm for new and shiny things
Everyone knows that companies are at their best when petrified, stagnant, resistant to change and unwilling to entertain new ideas, right?
> Engineers are different: they’re trying to solve a problem
No-true-Scotsman so that "Engineer" now means person who tries to solve a problem (only using existing tools and techniques), and people titled or qualified as "engineer" who aren't trying to solve problems, or anyone who is trying use a new approach to solve a problem or doesn't have the same constraints and goals are "not real engineers".
> Engineers understand it’s OK to solve the problem with ephemeral, trashy, but fast-to-market solutions
Nothing the world loves more than falling bridges, burning skyscrapers. A moment ago the important thing was to build stable, long-term, easily maintained systems with boring technologies (a classic description of "engineering"). Now Engineers are building ephemeral trashy minimal viable products? Is trashy and ephemeral "engineering" now? (No, the point is who to mock and shame, and who is superior).
> if the product manager is going to change it all next week
Could be related to why the idiot in the clown shoes is enjoying building it in Haskell, knowing that it won't need to be long-term maintainable because it doesn't matter anyway. No, it must be because they're inferior to the blog post author, who is all about solving real world problems like making sure software engineers know their status is beneath him.
> Engineers also plan for the future [..] critical infrastructure that lives [..] depend on
Engineers do the right thing in the right circumstances, and you can tell they are engineers post-hoc when it worked? Handwave away any critical infrastructure which failed as "not built by engineers", e.g. Boeing must have put no engineers on the Maxxx, you can tell because it killed people.
> Consider a previous era; motors for small fishing boats. [...] So the motors of the early days were extremely reliable.
Consider survivorship bias, the unknown number of fishing boats with more complex motors that worked just fine, the unknown number with simple engines that were unreliable and unfixable out on the water. Pointing out that some simple reliable engines exist does not show that "motors of the early days were reliable".
> Such engines are useful enough they remain in use to this day
Maybe simpler engines are simply cheaper and the lack of emissions regulations or any performance or luxury equivalent of a Ferrari commercial fishing boat hasn't caused much engine change over time? Complex systems can be useful enough that they remain in use to this day, too.
> this design still sold by the Sabb company in Norway [..] they’re definitely more reliable where it counts
More reliable than what, exactly? Are there competitors making complex and unreliable fishing boat motors that leave people stranded and dying, have been making them for 70 years and nobody notices and they still have customers? No, the alternative is a strawman sneer comparison, a solar powered Sterling engine. Point to a commercial fishing company run by a unicycling strawman using solar powered Sterling engines and then going bankrupt? Anyone?
> in the engine room, you are filled with confidence[..] If you find some jackass on a unicycle, maybe not so much.
And you should judge by how they appear, and not by their track record or by talking to them, since this whole blog post is entirely about who is high status and respectable and who is inferior by image and not really about whether you get home from your fishing trip.
[cont]
- jodrellblank 6y ago> long term software engineering looks [like] this. Stuff you can trust looks like a giant one-piston semidiesel Does it? Oracle's JVM - is it a giant simple on-piston semidiesel or untrustworthy? It seems complex and trusted to me. Linux kernel, so simple such that a fisherman can fix it in the dark and cold and wet by burning pile of logbooks? AMD64 instruction set, trivial or untrustworthy? Stuff you can trust doesn't /look/ like anything in particular, it behaves in a trustworthy way long enough to get a repuation. > Duct tape programmers don’t give a shit what you think about them It makes more sense to say unicycle riders don't give a shit what you think about them, since they're the ones actually demonstrating non-conformity through their actions despite social pressure to stop doing that. > the perverseness and destructiveness of people who try to get fancy for no reason, nor do I think JWZ was a “duct tape programmer” -he was an engineer. Gone from saying duct tape programming is good, to defending someone respectable as "not a duct tape programmer" as if it was bad, then applying the True Scotsgineer label retrospectively - it must have been true engineering(tm) because it didn't not-ship, QED. > OCaML, APL and Lisp [..] small teams can deliver Small teams have tried to deliver same in many languages and processes, we see the survivors and say "this tool must be why". That needs a large evolutionary body-count of attempts in other languages which failed, and many attempts in OCAML/APL/LISP which delivered nothing. If nobody had ever used O/A/L because they weirdo unicycling languages, there would be no knowledge of whether they could do this. Rust and Golang came out about a decade ago, author is clear that Go is for engineers and Rust for unicyclers, but both came out of respectable teams that built complex software maintained for years, with good reasons (memory safety, not "add Monads to C++"); at what point in the past ten years did it become clear to the author that Go is engineering and Rust is unicycling? Was it clear that O/A/L were going to shake out well in 60 years, after their first 10 years? > For mission critical [..] hit by a bus [..] deep sheeyit Like the boat engines, there are visible examples where "deep shit" happened - e.g. crippling ransomware attacks, systems being offline for days, huge data leaks - and a month later there are no visible consequences; PR puts out an apology statement, bonuses are unaffected, business as usual. If your startup run by a true engineer using Golang gets hit by a bus it could be the end of the company too. If IBM has a team using Haskell and one of them dies, the project is swallowed up and there isn't any deep sheeyit that anyone outside the immediate customer blast radius will notice. > Using the latest tool is even worse. 99 times out of 100, the latest woo in machine learning is not an actual improvement over existing techniques. 100% of the time it is touted as a great revolution because it beat some other technique … on a carefully curated data set. Such results are trumpeted by the researcher because …. WTF else do you expect them to do? They just spent a year or two developing a new technique; the professor is trying to get tenure or be a big kahuna, and the student is trying to get a job by being expert in the new technique. What are they going to tell you? That their new technique was kind of dumb and worthless? It's like you understand incentives, but pretend you don't when it gives you an opportunity to sneer at people you want us to think you're superior to. Why don't you see that the same incentives lead to people introducing NewLang because the upside is a potential huge status boost? > just quietly used by engineering types who find them helpful probably get used by engineering types who find them unhelpful and wish they could use something else, by unicycle riders who find them helpful, and by unicycle riders who find them unhelpful, too. > I’m imagining the archetypical unicycle-juggler buying a shop full of solid printers and weird CNC machines and forgetting to buy hacksaws I'm imagining how easily a CEO and customer would notice the absense of precision lathed widgets, and what kind of world and incentive changes it would take for a CEO and customer to notice that a pile of NewLang wasn't turning out a workable project and take steps to change that. But they're probably too busy making sure the employees are wearing the correct clothes on their commute to work, because that's not straight from American Psycho or anything.