[–] 21 points 20 hours ago (3 children)

There has always been a lot of contention between developers and management, they seem to fight with each other for position and leverage like a wrestling match.

Its usually IT / Dev management and business management, and the devs get a lot of collateral damage.

But AI has introduced something new to this struggle, its removed the fun of coding and the accomplishment of craft. Now both sides feels like they can use AI to replace the other, where managers are taking up coding and coders are becoming their own companies. And while that adds more grist for the mill, the customers are thinking they'll replace both and just code and manage their own applications.

That is a lot of uncertainty, and the promise of being able to make a killer app is democratized but that means the ability to make lots of money at it is much more improbable.

Uncertainty and how the game has changed from sporting contest to win or lose high stakes, just makes this not fun anymore.

  • source
  • [–] 4 points 2 weeks ago (1 child)

    I've been thinking of all the places computers have democratized industries. Music is produced by someone on a laptop now more than a collective group of practicing and talented performers. 3d printing produces objects of great sophistication without really any craft skills at all. Chess is a bigger industry now than it was, and no one can beat a computer.

    But even then, sports have been something that anyone can participate in to various degrees, yet we still admire people who reach the pinnacle of performance.

    Before starting my own aquarium, a wise person said "Aquariums aren't about keeping fish, they are a hobby for people who like to keep water, and the fish are just enjoying that". Every craft, every sport, every performance has practice and maintenance that itself has to bring the enjoyment, the puzzle, and the promise.

    I see that for programming. It will be for someone who desires the craft of computing more than the outcome of the application, and they will achieve things that are simply beautiful. Because they love the craft.

  • source
  • [–] 1 point 3 weeks ago

    Interesting. So this looks like a prediction model, sort of a chatGPT for spreadsheets. Its "[p]retrained exclusively on synthetic data generated from structural causal models (SCMs)". More or less a clever way of finding the right curve (causal model) to interpolate and extrapolate data in one pass based on artificially clean examples. Only since it is inferred, you will never really know what it used.

  • source
  • [–] 2 points 3 weeks ago

    Nice article, thanks. I like how the writer came up with an economic metric for understanding code review in terms of dollars in proportion to the volume of code.

    That is the right way to discuss this with upper management.

    The other barrier is the illusion of objectivity. In the other comments, and in many programmers experience with AI, there are code short cuts and issues that are objective in that no one would disagree with their value and importance, but they are subjective in that they cannot be described so cleanly that an LLM or human can't misunderstand them. That it can be described so perfectly as to be findable 100% with no false positives or missed positives.

    And then on top of that are the purely subjective goals like 'simplicity'. Give programmers the goal of simplicity and they wind up simply pushing the complexity onto someone else's desk. LLMs (subagents, etc...) are even worse at that.

    And it goes all the way up and down, the more you elevate or granulate to architectural decisions or algorithmic decisions, different illusions appear.

    Code Review has never really been 100% successful, nor has Quality Control/assurance, Testing, or any other measure. At best it just forces people to look at code with another perspective to hopefully distill myth from reality. And that is itself valuable, if not for being able to show due diligence and effort.

    Which brings us back to the article's equation of value. Given production, liability, are calculated in business terms from the real dollars spent or projected to be spent holds up, its a good start, no?

  • source
  •  

    One simple rule: the LLM plays chess with its own reasoning. No scores, no centipawn values, no engine evaluation or calculation. Just cold raw facts from the board.

    I've found that the moment you give an LLM an engine to evaluate with, it abandons its own reasoning and just tries to game the numbers blindly. Any "centipawn" values for exchanges or positions and it completely forgets how to reason at all.

    This is my attempt: github.com/mfnbc/chessdb.nu

    Current state:

    Lasts 20–30 moves against Fruit (a weak chess engine). Probably playing around 800 ELO. Plays very defensively, trying not to blunder. Early on it complained about what it couldn't see. Now when it does blunder, it goes back and checks and sees the problem was reported. Architecture (very simple):

    Exposes Rust's Shakmaty for board facts. No scores, no evaluations (Shakmaty's scores are only hand-tuned and not battle-tested anyway). Information is structured Nuon (like JSON). Focus happens through Nushell's excellent structured language functions. The rest are skills and tools the LLM developed on its own for visualization. I coach it in between games and let it alter the skills and tools as it sees fit. That might sound lazy, but it's after many months of trying to impose my own opinion, which turned out to be the limiting factor. With my hand-written skills it only got to 10–20 moves (~400ELO; with its own skills it's doing noticeably better.

    Open to:

    Games by correspondence, Lichess, or ICC to test what works and what doesn't. Forking — the architecture has some cruft from earlier work, so it might be easier to start fresh. If you know of anyone else trying with similar constraints (raw facts, no eval), let's pit them against each other.

    Feel free to read the Findings.md to see the journey.

    One odd postscript, discussing chess with the computer has raised my ELO and consistency...

    [–] 2 points 1 month ago (1 child)

    If your spec is really what your computer is, you should be able to run the models you need to.

    Just slow down, have patience, and be opinionated on what you want it to look like, from code to architecture to user experience.

    I hit more failure modes than when I use Claude, but there are always failure modes, and the answer is always slowing down, learning what it's doing, and having an opinion.

    I will use, sometimes, free web search tools to architect, plan, and generally get ideas. Their ability to search the web directly helps. And to code, I sometimes build a cheap RAG with the language documentation (nushell needs help most of the time) and that helps.

    Again, in general, just slow down and take your time. Like a jr dev, just cut it into bite-sized pieces with clear goals, all of which a more capable model can help with.

    GLM worked well and did some impressive one-shots. Gemma can be more sophisticated in what it writes, but Qwen is less acrobatic and stable. Ornith looks interesting but I was never able to run it.

  • source
  • [–] 2 points 1 month ago

    As it happens I'm working on a chessdb.nu, which is supposed to be a set of tools and skills for llms to annotate, even Socratically coach chess positions and games.

    Two observations, 1) I think the post is really just trying to explain that the LLM is not limited to the next token in its planning. It can have an idea of where it is going all the way to the last period and token prediction is just the step by step to get there. Even more interesting is that the LLM can change plans midstream (cf: seahorse emoji). And 2) without going so far as saying it is existentially making choices, it is showing complex reasoning and planning which is a few steps above a Markov Chain.

    As for myself, I like the analogy of french curves and splines being fixed and added to with the LLMs internal reasoning and then walked token by token. But LLM's don't actually have to be that continuous and smooth, although in fairness when it isn't, it's usually a failure mode.

  • source