My experience with generative-AI has been that, at its very best, it is subtly wrong in ways that only an expert in the relevant subject would recognise.
-
My experience with generative-AI has been that, at its very best, it is subtly wrong in ways that only an expert in the relevant subject would recognise. So I don't worry about us creating super-intelligent AI, I worry about us allowing that expertise to atrophy through laziness and greed. I refuse to use LLMs not because I'm scared of how clever they are, but because I do not wish to become stupider.
@jonathanhogg Excellent thread.
-
I will say one thing for generative AI: since these tools function by remixing/translating existing information, that vibe programming is so popular demonstrates a colossal failure on the part of our industry in not making this stuff easier. If a giant ball of statistics can mostly knock up a working app in minutes, this shows not that gen-AI is insanely clever, but that most of the work in making an app has always been stupid. We have gatekeeped programming behind vast walls of nonsense.
@jonathanhogg apparently I vigorously agreed four days prior https://mastodon.social/@glyph/116072915065555041
-
You know what? HyperCard was a glorious moment in time that I dearly miss: an army of non-experts were bashing together and sharing weird and wonderful stacks that were part 'zine, part adventure game and part database. Instead of laughing at vibe-coders, maybe we should ask ourselves why the current state-of-the-art in beginner-friendly programming tools is a planet-boiling roulette wheel.
@jonathanhogg The reason we don't have HyperCard and the reason ppl think slop coding is productive are one in the same: bad language & framework design imposing ridiculous amounts of boilerplate code on everything. This both makes it hard for beginners to do anything and makes it so there's a lot of "work" (busy work) that a sloppy pattern copying machine can do decently well at.
-
@StaceyCornelius @jonathanhogg is a descendants/replacement extant now?
@Photo55 @StaceyCornelius @jonathanhogg Livecode is sort of descended from a Hypercard clone (https://livecode.com). And there are a number of runtime engines for old-school Hypercard decks (https://archive.org/details/hypercardstacks?&sort=-downloads). There’s also Decker, which is a spiritual inheritor (https://beyondloom.com/decker/).
Dang I miss Hypercard.
-
@jonathanhogg @michael @jarkman I once asked a very senior HPC developer at Red Hat what keeps him up at night and he said, paraphrasing and pulling from memory that's about 15 years old now, "we haven't created new computer science since the 1960s and I fear we'll exhaust what we know before we discover anything new," and I think about that a lot these days.
@thatsten
The 1960s were mostly math because most CS was done on blackboards (as one of my profs put it) because access to machines was very limited. Also, there was a "Cambrian explosion" of ideas in this new field - and after that, evolution slowed down. -
@michael @jarkman @jonathanhogg (IMO) we can't have more DSLs because everything useful is now plumbed together from a series of heterogenous parts and we've somehow decided they can only interoperate at the (barbaric) C ABI level, or the (absurdly inefficient) web level. So, we rely on general purpose languages using specialised libraries, instead of the other way around.
I think fixing this boundary/contract problem would fix a lot in s/w engineering.@tobyjaffey
gRPC is pretty efficient, although Erlang is a better abstraction. -
To me, all these people crowing about having written 10k lines of code in a day are idiots. If you need to write that much code in a day, you are manifestly working at the wrong level of abstraction to solve your problem.
Heap of 10K lines and they probably have NO idea what is even going on in there.
-
@jonathanhogg yep. And if they're working on an operating system (or any related system software, or anything that needs to stay up and running), they're committing malpractice that's going to get a lot of people killed:
https://mastodon.social/@JamesWidman/116133223470110717Skynet didn't destroy the world by getting too smart-- it actually just started glitching and chasing its own tail in gibbering circles and everything broke.
-
You know what? HyperCard was a glorious moment in time that I dearly miss: an army of non-experts were bashing together and sharing weird and wonderful stacks that were part 'zine, part adventure game and part database. Instead of laughing at vibe-coders, maybe we should ask ourselves why the current state-of-the-art in beginner-friendly programming tools is a planet-boiling roulette wheel.
Flash Studio was like that too, even though it was a trap. -
Skynet didn't destroy the world by getting too smart-- it actually just started glitching and chasing its own tail in gibbering circles and everything broke.
I mean, it invented time travel, so gibbering circles were pretty much inevitable. As I understood it, the question was not how to destroy the world or eliminate humanity, but how to do so in a way that fails due to time travel, but ends up with the next iteration of Skynet being just a little bit more effective. It was like... playing the villain to motivate the humans to improve it, as the only way to solve the problems it was presented with.
And I mean, if you destroy the world and kill (almost) all humans, then change history so it didn't happen, then it didn't happen! Right?
Like that one Wakfu villain, except it was actually working.
CC: @JamesWidman@mastodon.social @jonathanhogg@mastodon.social -
My experience with generative-AI has been that, at its very best, it is subtly wrong in ways that only an expert in the relevant subject would recognise. So I don't worry about us creating super-intelligent AI, I worry about us allowing that expertise to atrophy through laziness and greed. I refuse to use LLMs not because I'm scared of how clever they are, but because I do not wish to become stupider.
@jonathanhogg that’s exactly why it’s performing so well in the corporate world
-
My experience with generative-AI has been that, at its very best, it is subtly wrong in ways that only an expert in the relevant subject would recognise. So I don't worry about us creating super-intelligent AI, I worry about us allowing that expertise to atrophy through laziness and greed. I refuse to use LLMs not because I'm scared of how clever they are, but because I do not wish to become stupider.
@jonathanhogg I use LLM to verify they are still stupid as shit compared to me.
"Why don't you use chatgpt as everyone else"
"Because it generates 6 errors in 10 lines of code" -
@bit101 hold on, I've got another post incoming on exactly this…

@jonathanhogg @bit101 jaha. I asked an LLM to make me an URL shortener website.
I read through the code, and saw "interesting" ways of doing SQL.
Me: "is this code secure?"
ChatGPT: "of course it is not secure"No vibe coder ever asks that question to its bullshit generator.
-
To me, all these people crowing about having written 10k lines of code in a day are idiots. If you need to write that much code in a day, you are manifestly working at the wrong level of abstraction to solve your problem.
@jonathanhogg thank you for this thread!
In the last years while the AI hype unfolded, I was lucky to get a closer view of Scratch, Snap and MIT App Inventor.
The ease of use, the speed of development and the abstraction of complex concepts into easy to use building blocks of the latter three were amazing.
Ever since AI came up my brain couldn't stop thinking that if so much code gets generated then we've been working at the wrong abstraction level all the time.
-
To me, all these people crowing about having written 10k lines of code in a day are idiots. If you need to write that much code in a day, you are manifestly working at the wrong level of abstraction to solve your problem.
@jonathanhogg You have also condemned yourself to spending the next four weeks frustratedly fixing the 10k lines of code. Idiot.
-
@jonathanhogg I think the author would disagree that HyperTalk was the most interesting thing about HyperCard, especially since they put a lot of work into crafting a language they feel is comfortable for such a use. (At least they didn’t just use JS or Lua…)
@eschaton oh yeah, I’m sure they had their reasons. Interesting “to me” I suppose

-
To me, all these people crowing about having written 10k lines of code in a day are idiots. If you need to write that much code in a day, you are manifestly working at the wrong level of abstraction to solve your problem.
@jonathanhogg I write 10000000 lines a minute.
I run shell script commands.
It generates millions of lines of machinecode to execute my wishes.
Amazing! -
@jonathanhogg thank you for this thread!
In the last years while the AI hype unfolded, I was lucky to get a closer view of Scratch, Snap and MIT App Inventor.
The ease of use, the speed of development and the abstraction of complex concepts into easy to use building blocks of the latter three were amazing.
Ever since AI came up my brain couldn't stop thinking that if so much code gets generated then we've been working at the wrong abstraction level all the time.
@mainec I teach block-based languages to grownups all the time and I just wish they weren’t viewed as “toys”
-
We seem to have largely stopped innovating on trying to lower barriers to programming in favour of creating endless new frameworks and libraries for a vanishingly small number of near-identical languages. It is the mid-2020s and people are wringing their hands over Rust as if it was some inexplicable new thing rather than a C-derivative that incorporates decades old type theory. You know what I consider to be genuinely ground-breaking programming tools? VisiCalc, HyperCard and Scratch.
@jonathanhogg By design… why simplify when your ability to hire thousands of engineers means you’re safe from competition? Why simplify when your “specialist knowledge” (of overly-complex crap) fetches lucrative consulting fees. Capitalism incentivises mediocrity with high barriers of entry. The complexity is a feature, not a bug. That’s why most of the mainstream stack is useless to us for Small Tech/Small Web. And why it’s essential that we embrace simplicity in the alternatives we’re building.
-
@mainec I teach block-based languages to grownups all the time and I just wish they weren’t viewed as “toys”
@jonathanhogg though watching the team behind them tinker with these tools at FOSDEM sure made the the block based tools look like as much fun as toys. Essentially bringing the joy and ease back to technology.