• 0 Posts
  • 33 Comments
Joined 2 years ago
cake
Cake day: July 7th, 2023

help-circle

  • LLMs have made it really clear when previous concepts actually grouped things that were distinct. Not so long ago, Chess was thought to be uniquely human, until it wasn’t, and language was thought to imply intelligence behind it, until it wasn’t.

    So let’s separate out some concerns and ask what exactly we mean by engineering. To me, engineering means solving a problem. For someone, for myself, for theory, whatever. Why do we want to solve the problem, what we want to do to solve the problem, and how we do that often blurred together. Now, AI can supply the how in abundance. Too much abundance, even. So humans should move up the stack, focus on what problem to solve and why we want to solve it. Then, go into detail to describe what that solution looks like. So for example, making a UI in Figma or writing a few sentences on how a user would actually do the thing. Then, hand that off to the AI once you think it’s sufficiently defined.

    The author misses a step in the engineering loop that’s important though. Plans almost always involve hidden assumptions and undefined or underdefined behavior that implementation will uncover. Even more so with AI, you can’t just throw a plan and expect good results, the humans need to come back, figure out what was underdefined or not actually what they wanted, and update the plan. People can ‘imagine’ rotating an apple in their head, but most of them will fail utterly if asked to draw it; they’re holding the idea of rotating an apple, not actually rotating the apple, and application forces realization of the difference.


  • I’ve used it most extensively doing Ruby on Rails greenfield apps, and also some JS front ends, some Python mid sized apps, and some Rust and Nix utilities. You’re absolutely right about it struggling with code base scale, I had to rework the design process around this. Essentially, design documentation telling the story, workflow documentation describing in detail every possible functionality, and an iteration schedule. So the why, what, and how formalized and in detail, in that order. It can generate the bulk of those documents given high level explanations, but require humans to edit them before making them the ‘golden’ references. Test driven development is beyond critical, telling it everywhere to use it extensively with writing failing tests first seems to work best.

    So to actually have it do a thing I load those documents into context, give it a set unit of work from the iteration schedule, and work on something else.

    It does go down some seriously wrong paths sometimes, like writing hacky work arounds if it incorrectly diagnosing some obscure problem. I’ve had a few near misses where it tried to sneak in stuff that would bury future work in technical debt. Most problematic is it’s just subtle enough that a junior dev might miss it; they’d probably get sent down a rabbit hole with several layers of spaghetti obscuring the problem.


  • I’m a professional developer and have tested AI tools extensively over the last few years as they develop. The economic implications of the advancements made over the last few months are simply impossible to ignore. The tools aren’t perfect, and you certainly need to structure their use around their strengths and weaknesses, but assigned to the right tasks they can be 10% or less of the cost with better results. I’ve yet to have a project where I’ve used them and they didn’t need an experienced engineer to jump in and research an obscure or complex bug, have a dumb architectural choice rejected, or verify if stuff actually works (they like reporting success when they shouldn’t), but again the economics; the dev can be doing other stuff 90% of the time.

    Don’t get me wrong, on the current trajectory this tech would probably lead to deeply terrible socioeconomic outcomes, probably techno neofeudalism, but for an individual developer putting food on the table I don’t see it as much of a choice. It’s like the industrial revolution again, but for cognitive work.


  • Most if not all leading models use synthetic data extensively to do exactly this. However, the synthetic data needs to be well defined and essentially programmed by the data scientists. If you don’t define the data very carefully, ideally math or programs you can verify as correct automatically, it’s worse than useless. The scope is usually very narrow, no hitchhikers guide to the galaxy rewrite.

    But in any case he’s probably just parroting whatever his engineers pitched him to look smart and in charge.



  • Stories like this are sometimes more complicated than they appear. The infamous examples of $500 hammers, for example, were anti sparking hammers for working around flammables or munitions, hence requiring special materials, certification, and low production runs.

    For this case, we have liquid hand soap dispensed by a pump. Pumps require a sealed vessel. Unlike commercial planes, military planes are required to anticipate prolonged operation with an unpressurized cabin. At max altitude of a C17, atmospheric pressure is only 20% of sea level. Off the shelf dispensers are unlikely to be designed to withstand that pressure difference, let alone function normally. In a high demand environment like aerospace, even apparently minor failures like an exploding soap container needs to be taken seriously due to the possibility of unexpected cascading failures. Why not use bar soap, then? Unfortunately this too has complications, like not being able to be securely mounted, liquid soaps having superior hygiene and cross contamination characteristics, and necessity for military standardized soap, sometimes designed for heavy metal, eg lead, which is likely if the cargo were munitions.

    This unusual set of requirements unlikely to be seen outside the military context, so whether designed by Boeing or off the shelf the unit would likely have low quantity manufacturing runs, significantly increasing per unit costs. Combine that with the necessary certifications and the per unit costs balloon even further.

    While a soap dispenser having an 80x markup seems absurd, it might be more reasonable than it seems at first glance. To be clear, there absolutely is military contractor graft. I just don’t expect even a $10,000 soap dispenser would be a substantial proportion if it even within the C17.


  • I recently removed in editor AI cause I noticed I was acquiring muscle memory for my brain, not thinking through the rest past the start of a snippet that would get an LLM to auto complete. I’m still using LLMs, particularly for languages and libraries I’m not familiar with, but using the artifacts editors in ChatGPT and Claude.











  • CLAs can be abusive, but not necessarily. Apache Foundation contributors need to sign CLAs, which essentially codify in contract form the terms of the Apache 2.0 license. It’s a precaution, in case some jurisdiction doesn’t uphold the passive licensing scheme used otherwise. There’s also a relicensing clause, but that’s restricted to keeping in spirit, they can’t close the source.


  • After doing some Meta/Facebook VR development in my job the lack of popularity made increasingly more sense. In brief, they’re both incredibly incompetent and transparently greedy.

    I’m honestly baffled how they could spend so many tens of billions of dollars and have such bad software, it is completely bug ridden. You’ll hit a bug, research it, and find out it’s a major know bug for literal years they haven’t fixed. They care so little that they couldn’t bother to update the Oculus branding to Meta for over 3 years in various software tools and libraries.

    Their greed might be more salient aspect preventing adoption, though. They transparently wanted to be the gatekeepers to everything “metaverse” related, a business model that is now explicitly illegal in the EU after years of being merely very sketchy. They are straight up hostile to anyone else trying to implement enterprise or business features. Concrete example: fleet management software, aka MDM. There are third party tools that are cheaper and much more featured than Meta’s solution, but in the last year they’ve pushed hard to kick those third parties out of the ecosystem.

    I could go on, but in short nobody in their right mind would build a major business on their ecosystem. They’d rather let Meta burn billions in R&D and come back later. Besides, not even Meta is able to make money in the area now.