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.
-
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.
@warmsignull [thread]
-
@dasgrueneblatt I think you have misunderstood me: I think vibe coding is a horrendous problem, but it is a symptom of an industry failing. That people are trying to steer a tank with a speak'n'spell is because we have not made decent bikes.
" That people are trying to steer a tank with a speak'n'spell is because we have not made decent bikes." -- if we look at the real-world situation of your metaphor, we see that when "decent bikes" ARE finally here, the establishment begins to gatekeep and legislate against them /because/ they are too effective, at overturning the status quo - ostensibly on the grounds that they are "dangerous" when in the wrong hands.
Wondering if the analogy feeds back in the other direction too.
-
@jonathanhogg that's an interesting take. wouldn't that mean the same applies to art then?
Software development is in my opinion a creative task, and "AI" has shown that people will take shortcuts to get "results" faster just to get the recognition. I think the problem might be more in impatience and how our society doesn't allow things to take time.
@codingcatgirl Thanks for this! As someone who has also called themself an artist for over a decade, I have a lot of thoughts on this too, but perhaps I need to mull for a bit and then start a new thread. I’ll drop you a link when I start posting
-
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 Scratch is excellent. My kid's been using it. I used hypercard at his age and it was a lot fun.
Had it not been because our teacher had acquired two macs into the class, and we could spend time before and after school, I don't think it would have been as fun. It's not just the tools, but also the environment and culture.
-
@jarkman @jonathanhogg Several years ago, I played around with using Haskell as a substrate for a DSL. Used a combinator parser (Parsec) to spit out a directly executable “compiled” function. I’ve occasionally thought it would be fun to do something similar for CSG.
-
@jarkman @jonathanhogg Several years ago, I played around with using Haskell as a substrate for a DSL. Used a combinator parser (Parsec) to spit out a directly executable “compiled” function. I’ve occasionally thought it would be fun to do something similar for CSG.
-
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 At worst, it's screamingly wrong in a way that only someone knowledgeable will recognize. Thus chatbots become a source of disinformation.
-
@raganwald @jonathanhogg Well... The only reason I would care - or rather how I empirically learned to associate - wether the editor is written in Java vs Electron vs C++ is that I would notice how the memory got hogged, or the UI would think for minutes, or - rarely - it would be almost immediate (albeit missing half of the features and sometimes crashing completely).
-
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 AI once in a great while to speed thing up.
I tend to learn things from it as well. Log locations. Quick error retrieval.
Error diagnosis. I know how to do this anyway and knowing the nomenclature and pointing AI in the correct direction is quite useful.I do not use it to WORK FOR ME. I use it in collaboration. It will break sh!t on its own. Either way its coming like it or not.
Moderation is key. Many things can make you stupid.
Gen AI is quite far away.
-
On the gripping hand, if you're a trained programmer using vibe-coding because of a perceived increase in your productivity, or pressure from management to increase your productivity, I would refer you to my first post in this thread…
I've seen lots of posts in the last couple of days about how quickly one can write lots of code with AI. I feel perplexed by this as I hate large programs. The largest thing I have written in the last decade is Flitter. It's only 30k lines and I believe very strongly that it is. Still. Too. Big. Even there, I wrote it purposely to allow the stuff I write *in* it to be very smol: mostly no more than 100 lines. That is the maximum I want to write in a day.
-
I've seen lots of posts in the last couple of days about how quickly one can write lots of code with AI. I feel perplexed by this as I hate large programs. The largest thing I have written in the last decade is Flitter. It's only 30k lines and I believe very strongly that it is. Still. Too. Big. Even there, I wrote it purposely to allow the stuff I write *in* it to be very smol: mostly no more than 100 lines. That is the maximum I want to write in a day.
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.
-
I've seen lots of posts in the last couple of days about how quickly one can write lots of code with AI. I feel perplexed by this as I hate large programs. The largest thing I have written in the last decade is Flitter. It's only 30k lines and I believe very strongly that it is. Still. Too. Big. Even there, I wrote it purposely to allow the stuff I write *in* it to be very smol: mostly no more than 100 lines. That is the maximum I want to write in a day.
@jonathanhogg I feel like this misses the point. The point is to not have to spend your life writing 100 lines in a day, when the end goal can be achieved faster and still be as good if not better than hand-made. I am not saying there are no issues and that there is no slop. I am saying it requires mind shift and learning in order for it to not produce slop. Otherwise it will produce results like in your first reply. If coding is just a hobby for you, then none of this matters anyways.
-
I've seen lots of posts in the last couple of days about how quickly one can write lots of code with AI. I feel perplexed by this as I hate large programs. The largest thing I have written in the last decade is Flitter. It's only 30k lines and I believe very strongly that it is. Still. Too. Big. Even there, I wrote it purposely to allow the stuff I write *in* it to be very smol: mostly no more than 100 lines. That is the maximum I want to write in a day.
@jonathanhogg Consider this scenario: spend a very long time planning and designing, and then have a very fast code output, then fix any issues.
Also what about projects which can't be made in 30k lines? Doesn't automatically mean that the project is wrong just because it is big.
-
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
We need more done in actually high level languages. -
@jonathanhogg
We need more done in actually high level languages.@kirtai@tech.lgbt @jonathanhogg@mastodon.social A large number of those lines of code are probably boilerplate indicative of abysmal library quality.
If a language's entire ecosystem is built on boilerplate and it's seen as normal, that is not okay.
-
@jonathanhogg this is my central response to the "AI makes software development accessible" argument.
Once upon a time anyone could program their personal computer using a book that came with it. We taught it to all the kids in my tiny town's elementary school. My shopkeep neighbor and our local mechanic wrote their own custom software with no CS background.
BASIC, Hypercard, personal computers, printed manuals > LLM's.
@requiem @jonathanhogg We still have all that, but it’s 10 different web sites you have to pay a monthly subscription fee to. Every small business that is just one person gets stuck in that web.
-
@jonathanhogg There's also the duplicated effort problem. Pick any large company...McDonald's for example. I'm sure they've got a bunch of coders building their app and their website and controlling the POS or whatever other gadgets in the stores. And Burger King probably has a very similar team writing very similar code. And Wendy's, and Jack in the Box, and on and on and on.
If you've got two competing factories that each produce a hundred cars a day, at the end of the day you have two hundred cars. But when you've got two teams writing the same software? You could just copy and paste. Half those people are entirely unnecessary, just wasting their time and wasting their labor because grown-ass adults can't figure out how to share.
So now we build these "AI" tools that gobble up everyone's code and spit it back out again just to launder the IP infringement and call that progress!
The "efficiency gains" of LLMs are just a matter of disguising collective action as rugged individualism.
-
@jonathanhogg Thanks! I'll absorb that and then I can ask you better questions at EMF.
@jonathanhogg .. great talk!
-
@jonathanhogg .. great talk!
@jarkman thank you!