I first learned how to program in 1984 at 14. The tech press said I'd be obsolete by 25, due to age.

About 1990 tech press said the Japanese were building fifth generation computers to make me obsolete.

In 2000, the dot com bubble bursting was said to make me obsolete.

There's been neural networks, no-code, and more, since then, to make me obsolete.

Now it's LLMs.

Excuse me while I sit here and don't panic.

#rant

EDIT: This blew up. Muting the thread for some peace and quiet.

@liw There were things that pulled stuff away from programmers though. Much of it at the time was hidden by the growth in demand.
Excel, BASIC, some expert systems, Hypercard, DBase and friends all enabled an army of not-really-programmer people to get real work done without having to become programming experts of any kind.

None of them hallucinated or ate entire data centres for lunch. Their output was predictable if slow and they kept working over upgrades in general.

@liw The real sad thing is the tools that were heading towards making some programming obsolete or at least much easier - stuff that worked off formal proofs and graph theory all got thrown under the bus when shiny "AI" stuff came along.

@etchedpixels @liw Formal proofs? You mean, something that requires writing a clear, well specified definition of what you want a system to do?

An LLM (the equivalent of a pub conversation on requirements) is always going to be more attractive to most.

@mbpaz @liw Most of your proofs are implied before the project - like not scribbling on things. For a lot of other stuff you then have a standard interface definition so that guides most of the rest of it.

Imagine a Linux driver of a given class. If there's a formal description of that interface then a formal methods based tool can verify you meet the formal methods, you meet the general rules for the kernel and you meet the language don't scribble rules.

and it's way cheaper than debugging!

@etchedpixels @liw
I spent a healthy time in a university dept surrounded by maths types whose version of "vi vs emacs" was "Coq vs Quickcheck" (aka theorem proving vs model checking) - but both meant, you know, studying things and writing arcane spells. Effort, time. The unthinkable.