• 0 posts
  • 37 comments
Joined 1 year ago
Cake day: June 4th, 2025
  • The way I view it is that fraud is a crime, but we also have an ethical obligation not to let ourselves be marks. Same goes for lots of other crimes. Legal penalties are one deterrent. Raising the barrier to entry for a criminal activity by being a hard target is another. Both are good. But there will always be gullible, vulnerable people, and saying that they’re fair game is much too close to eugenics. Healthy societies protect the vulnerable, but also train people to be less vulnerable when that’s possible.

  • Especially if you define “advanced” as “highly complex.” The ICE is that. I’ve seen old textile mills: they’re also madly complex feats of engineering that required great ingenuity to build and operate. The same could be said for Gutenberg-style printing presses. Likewise those room-sized computers with logic built from relays or vacuum tubes. All are now museum pieces.

    What’s even more advanced is an elegant, more minimal solution. It’s difference between the old model of epicycles and celestial spheres versus the Copernican system.

    ICE still outperforms EVs where physics matters most

    ICE engines have been under continuing development for almost a century and a half. EVs had a brief period of adoption early in the automotive age, but then were abandoned for most of that period, only to be revived lately as new technologies have emerged.

    When you take a systems view, it’s necessary to look at the whole end-to-end system, not one isolated component. You also need to look at all the externalities, particularly (in the case of the ICE) the downstream effect of very efficiently burning all that fossil fuel whose waste products end up in our atmosphere. Otherwise you’ve been fooled into believing that a local optimimization is the best global solution.

  • Eventually we adapt to either the new tools or to the new dangers

    Another option is to stop using new tools and frameworks that don’t benefit us. Adoption should be based on a good cost/benefit ratio, not treated as an inevitability.

    It’s also good to re-examine old choices and shitcan them when they’re no longer earning their keep. We were using NiFi for something non-core that we do, and replacing it with a simple hand-coded solution gave us a massive performance bump that’s more maintainable as well. Our use case was well outside NiFi’s sweet spot, so we shouldn’t have used it in the first place. But the person who made that decision is long gone, and it’s always someone else who ends up having to clean up those messes. Here’s hoping that someday I find that guy in a dark alley with no camera coverage.

  • When 60-80% or so of your PR can be refactored away then it’s a crap PR and honestly never should have been one.

    So their time savings in getting AI help to write their code means that you spend more of your presumably more expensive time doing reviews and educating them about slop removal instead of some higher-value activity. Sounds like you’re veering into negative ROI for the AI use if that’s true.

    Luckily, I don’t review PRs very often, I have people to do that. But the general principle is that the content of a PR is the responsibility of the submitter, regardless of its source. Wrong algorithm? Their fault. No-good UTs? Their fault. Inappropriate or unsafe dependencies? Their fault. Slop? Their fault.

    Luckily, with the work we do, there’s often nothing someone could train an LLM on, so we don’t see all that many PRs with AI-generated content, unless we’re using some well-known commodity library or framework in a common way. And that was always the easy stuff anyway.

  • Any shaved ape can code. One thing that distinguishes worthwhile coding from crap is adherence to engineering principles. Nitpicking about the semantics of the word “engineer” avoids the incontrovertible fact that empirically derived principles and best practices exist and that software engineering is a thing.

    Coincidentally, my MSc is in mathematics and statistics, after a dual BSc in math and physics, so we’re from similar starting points. My education as a software engineer and later as a systems architect only came once I began coding. There’s a considerable body of empirical knowledge in the literature (along with too much irreproducible fluffy bullshit), but in my experience, the general awareness of that knowledge is worse among the newer generation of coders than older ones. I suspect that’s because they generally assume that the toolchain and processes do it for them.

    The widespread adoption of Scrum has been another source of knowledge loss: it’s used in a number of situations where it does more harm than good, and even where it could succeed, it’s often misapplied (partially because some agile principles are impossible to implement in most real-life organizations, so misapplication is the only posssible kind of application). There are times when architecture and design matter greatly, and some agile practicioners seem to actually believe that they can be done on the fly or major shortcuts can be taken. “We’re not doing waterfall!” You know what? I’ve been in the business since before some of those fools were born, and I’ve never done a waterfall project. It was already an anti-pattern in Fred Brooks’s 1970 magnum opus. Agile vs waterfall was always a false dichotomy. It’s just that some of the OG agile people were too ignorant to know that, or too self-interested to admit it.

  • So the thesis of this piece is the government picking winners and losers in the auto industry through opaque mechanisms should terrify you because you should believe in total free market capitalism.

    Those are not the only choices. For example, a rules-based and facts-based system of regulation is another possibility. But the current system’s rule appears to be that the spoils go to whoever got a slice of Trump’s goldfish-like attention, or wrote him a fat enough check.

    And you might well get the vapors the next time one of the US automakers receives a massive government bailout because their having been protected from competition left them unable to compete in the global market, or possibly even in the time before that when US consumers are being forced to buy sub-mediocre products in order to fatten the bonuses of non-performing parasitic executives.

    And it’s good to remember that free markets are a myth, and that real capitalists love anything that shelters them from having to compete, even if it’s protectionism.