ajrouvoet
Joined 1 year ago
Joined 1 year ago
While it is in some sense harder, there are also opportunities, because the reach of a person is bigger and one can refactor more frequently to align with the theory being developed without the cost that used to be associated with this. AI is also effective for producing materials to teach the theory, increasing the chance that others can contribute coherently to a product.
It is tempting to extrapolate the fast progress and conclude that everything will be automated soon, but it still appears to me that LLMs have a “spikey profile”: while very good in some areas, they fail completely in many others, with no evidence that this is only a matter of time.
I’m working intensively with LLMs to find out what they can and cannot do and for all the capabilities in there they remain terrible at compressing functionality into few concepts and as a result they produce incoherent (read Fred Brooks on coherent design!), failure-prone products. In other words: I expect that there will be good demand for people who refuse to let code grow beyond something they can keep in their head, even though the means by which one accomplishes this might be different than what you do now.
Hope that there is some solace in this.
Excellent post!
The language exposes so much of its internals that even if the design were consistent, the ecosystem of (buggy) libs and tools makes it inconsistent.
We have observed that it is a loss for teamwork that the sparring with AI is entirely lost when only the technical conclusion is recorded. I write to recover that for my team and an AI can use it to its advantage as a side effect.
It would be cool to have good tool support for this process, but I’d bet on support, not delegation in that case.
I do R&D work in comp sci and usually write software and reports or papers in parallel. I have been using Opus in a controlled human-in-the-loop fashion to (significantly) speed up the work. While I’m at times surprised how high-level input steers output the right way, no high level ideas emerge from the AIs output. Many attempts to abstract from the concrete are wrong.
As a consequence, most writing is poor on content and form. It writes about the wrong things and crosses abstraction levels all the time. It cannot keep implementation details and conceptual leaps apart.
I don’t know what this means for the aim of this project to maintain important info for agents. Perhaps there are enough low-hanging fruits. That said, I’m skeptical that the resulting wiki is good documentation for human contributors.
It is nice that models remain stable, explains points of the architecture and an llm is good at following instructions that model changes needs a human in the loop. Languages with good static type systems cause friction in a transformation to show up in the types, which act as (weak) specifications.
It works to some extent