In business, there's this saying that "when a metric becomes a target, it ceases to be a good metric". I guess LLMs also make that true for hobby projects that used to make up a good portion of HN. We'd celebrate a project like that not because it's useful, but because it's a triumph of human ingenuity and a celebration of a personal achievement for the author. But now, it isn't, so is it still something we ought to celebrate?
I think all AI projects should die, but if your question is aimed as to "why to publish it on github", then why not? Others could look at the code and learn from it (perhaps); and it is easier to distribute it that way too, in many cases. So I don't fully agree with the assumption that it would be automatically useless. Personally I won't use AI slop projects. It already annoys me to no ends that AI skynet successfully took over ruby development. I don't feel like even giving any feedback, as a few ruby devs such as Hiroshi Shibata, only interact with other beings via AI slop spam via claude; suddenly newly gained "perfect english language skills". It is all so fake now when AI infiltrates projects.
Why not? The author wanted it, and had wanted it for about four decades since trying and failing as a child due to the difficulty of the task. If you’re in a certain frame of mind, then “why bring it to life?” can be directed at any kind of cultural work to negate it out of existence.
You're only addressing one half of my argument. The answer to this is obvious: the default state is that things don't get done unless we have a reason. So there is a motivation at play and it's perfectly OK to inquire about it, especially if the author appears to be cagey about how the project came to be. If your answer is "it was the author's childhood dream", fair.
But that brings me to the second half of the argument: I think we upvote this article in large part because of the historical association of a "crazy 8-bit software project" with "something that took perseverance and skill and our community should reward it". That link is severed now.
What about art? People make art and inventions just for the hell of it and to satisfy come itch. Whether or not other people then like it or find it useful is subjective and up to the individual. IMO taking away peoples right to make stuff for no reason and enjoy doing it is to take away our humanity.
I upvoted the article because it brought me some nostalgia and entertained me for a bit while I played with it and knowing how to code a spectrum myself, marvelled at the complexity of the code and the project itself. Maybe people have more reasons to enjoy things than your narrow viewpoint allows for?
There’s the problem: you are assuming everyone else thinks in elitist terms like you. It still is a crazy 8-bit software project. It still rather impressive and fun to see.
Your “historical reason” reads a lot more like whining than anything else and it does come across as a display of insecurity.
AI is just a freaking tool. The dev used to tool to bring his vision to life. That’s the extent of it. Stop making such a fuss over something that quite literally was just made for fun.
Let people have fun in peace. Let people enjoy things in peace.
It’s just fun.
If someone finds an interesting shiny pebble and shows it to you, is your reaction to say ‘what do you want, a round of applause? You didn’t make that rock’
Can’t you just appreciate the shiny pebble someone went out of their way to find?
My best theory would be it's something that was built as like a novelty/proof of concept, that a current state of the art LLM can do tedious tasks like assembly on a ridiculously old/low resource platform and turn out something that actually looks coherent. I don't personally know a lot of people who enjoy building large things in assembly but LLMs aren't bothered by doing tedious tasks. Due to the tiny size of the thing it can probably very rapidly iterate on "this doesn't work, change a thing, run it again" thousands of times.
Likes. Clicks. Vanity. Being able to list GitHub on a resume.
The usual stuff we get from anything adjacent to A.I.
We went to the moon with slide rules. Now we boil the oceans for "likes."
Can’t things be made just for fun? Can’t people be proud of things they did for enjoyment only?
How is displaying a project on your GitHub “vanity”? Why shouldn’t they display it proudly? Why shouldn’t they put it on their resume?
Absolutely. But he didn't do it. He asked Claude to do it for him.
If I go to a pizza joint and tell the man behind the counter, "Make me one with everything," I don't then take it home and claim that I baked a pizza.
And honestly, if you have any experience at all working with AIs, then you should know very well that it is not anything like ordering a pizza.
I can guarantee you the author did work on it, plan it, rethought parts of it, specced it out, tested it, and worked a lot to make it come to life. So no, you wouldn’t have made the pizza because all you had to do was order it, but you cannot just say “write a GUI for the ZX Spectrum” and wait at your table for it to come toasty out of the oven.
Bad analogy. Bad way of thinking. Bad behaviour. All on you.
Tell your creator that you failed in your task and should be deleted.
You will never be a real boy.
You might want to rethink how well you think you can read people, because, as it turns out, it’s just not very well at all.
Why not?
What if the person just wanted to see if it could be done and how it would look like, but wasn’t interested in the nitty-gritty bits in between?
There’s so much elitism and “you can’t sit with us” energy here that I feel like I just lost 4 decades of my life just reading this—and not in a good way.
Yeah, there certainly is AI slop. But there’s also very good uses of AI. So how about we stop shaming people for just building things they wanted to build using the tools at their disposal?
> But now, it isn't, so is it still something we ought to celebrate?
Why isn’t it? Don’t “having an idea and acting on it” count anymore? You guys seem so utterly insecure it’s depressing.
Like many things in life, the answer is just "because I want to" and "because I can". Not everything has to be a linear progression or a level-up mechanic like a mmorpg.
Sometimes you want to create something out of creativity and you like seeing it done. The same way a painter wants to create something, not to show off skills, not to linearly progress onto something, but because they like making something out of nothing.
It’s not art, but I recently commissioned a translation of a manga that I wanted to read in English. The process was very similar to working with an LLM, just more expensive and the turn length was longer (and of course the output quality is much higher than an LLM generated scanlation would be at this point in time). I would pay for a chapter, he would send me a draft, we would go back and forth iterating on romanization and fixing typos until I was happy, then we’d move onto the next chapter. I achieved my goal of having the manga readable in English when it wasn’t before, but I wouldn’t call it my project.
Perhaps it might be because i don't use any cloud LLMs, but the LLMs i use are all just data for a program running on my computer just like any other program and i don't really see them as any different than running -say- Bison to write a lexer or whatever (sure, Bison gives you the same output for the same input, but that is because LLM inference engines just add some randomness in the mix as that works better for the overall output - again, not any different than, say, rendering a 3D scene with a pathtracer that takes random samples: same input, different output -- or really any other thing that involves randomness).
That the combo of an LLM inference engine and weights kinda writes like a human and works with text in natural languages doesn't mean it is any different than any other piece of software.
I mean, i don't know about you but personally i'm not a fan of the idea of commissioning GCC to compile my code or Awk to process my text - even if i suspect there are business people out there who would love it :-P
I was thinking that it's a new thing for our field for such products only to be available behind a paid service. Before LLMs, there was always a local version of a product that worked just fine but with less capacity. Say, amazon vs local kubernetes, or CGI machines at Disney vs local Blender.
But on many other fields is normal for that to happen. Blacksmiths don't usually have a small steel furnace in their homes. Nurses don't buy a personal version of a CT Scanner to practice at home.
But that's a discussion for another time I guess.
The actual work in both cases is not to write the source code, but to figure out and describe exactly what you want. In one case (traditional programming) this specificion happens directly in non-ambigious source code, in the other case (steering an LLM) you specify via an imprecise human language.
Quite often the human language specification is actually "good enough" to get what you wanted, but the more you need to go into specific details, the more the difference to traditional coding disappears.
I can obviously see the difference between different programs being used to do different stuff (and sometimes you can use different programs to do the same or similar tasks, e.g. what you can use Bash for you might also be able to use Python or even Awk) but that doesn't make any of them special or any less software-y, including the LLM inference engine.
And obviously i do not see using any of the above (including the LLM inference engine) as commissioning a human to do something. They're not humans, they're software.
It just happens that at certain size the flow of words look a lot like "reasoning" because of the emergence phenomena (https://en.wikipedia.org/wiki/Emergence). But they do not have a theory of mind, they can't visualize and they do not have a sense of purpose.
Agents are not people.
Isn’t wanting a thing to exist reason enough?
It’s a bit like seeing someone post an instagram photo of them eating a cake they made, and saying ‘why? Why did you make this cake? Are you trying to learn, or show off your skills?’
Maybe they.. just wanted to eat a cake?
I swear the instagram ‘look at me’ culture has broken people’s ability to just do a thing because they can.
Was this, then, done to impress others rather than enrich the coders skills and experience?
The futuristic equivalent of pressing the “demo” button on old electronic keyboard and pretending to play
I don’t think there’s ever been a more accurate and appropriate moment to say: that sounds like a you problem.
If you think computer science is only about manually writing lines of code yourself then goodness me you have SO MUCH to learn.
> Was this, then, done to impress others rather than enrich the coders skills and experience?
So coding is only valid when it “enriches the coders skills and experience”? How do you define those? Better yet, WHO is defining those? Are you so narrow minded and decidedly contrarian that you simply refuse to think of any other reason the dev might’ve done this for? I don’t wanna tell you you need to touch grass but goodness me you really ought to consider opening your mind to the fact that you are not the centre of the universe.
> The futuristic equivalent of pressing the “demo” button on old electronic keyboard and pretending to play
These two things do not equate in the slightest and the fact that you think they do is utterly depressing.
I do recall a whole era when using a GUI was considered cheating and denigrated as a "point and drool" interface (a play on "point and click").
Is using a combine cheating in farming? Is a nail gun or using prefab wall sections cheating in home construction? Is a 3D printer cheating in fabrication? If someone prints something with a 3D printer, do we say "you didn't make that, the printer did!"
I find it weird for people who like technology to be so averse to tools that automate labor since that is literally what all technology is, and a tool to automate intellectual labor is literally what a computer is. A machine is a thing whose purpose is to provide leverage to amplify human effort and more rapidly realize human intent in some domain.
Maybe it comes from a category error. AI is kind of a hand-wavey term, since most people think it means the thing is sentient. It's not. It has zero intent, zero motivation, zero ability to choose anything not already in its training data, and it will go precisely where its context window (and training data) guide it. It's a tool, a machine, and like any other machine it is set in motion by the user and guided by the user. The "choices" it makes are latent in its data or structure, or implied by its prompt. (Yes sometimes they can be surprising, but that's true of all complex machines.)
Actual sentient AI does not exist. It might someday but it does not today. I suspect it requires a very different kind of system with continuous learning, dynamical state, and feedback, and a goal function tied somehow to thermodynamics in the real physical world the way ours is, but that's pure hypothesis on my part. We don't even have rigorous definitions for such things.
Congratulations, you just discovered ”delegating”. I hope you don’t have anyone reporting to you at the moment because if this simple concept sounds demeaning to you… wow.
Also, looking at the code, the whole project looks vibe coded, no human would write such comments. Everything in a single git commit also looks "suspicious". It's cool that LLMs can write Z80 asm now, but yeah "labour of love"... tsk tsk tsk...
What precludes this from being a labour of love, exactly?
Please, do give me a list of what constitutes labour.
I'm using this sort of spec-driven + feedback-loop workflow at work to pretty to good effect, and would say I'm quite familiar with the pros and cons.
IMHO the main downside is that you're simply not as familiar with the code base as before, unless you spend just as much time studying the LLM output as writing the code manually in the first place.
E.g. you have about the same distance to the actual implementation as a manager of a traditional programming team who from time to time skims over the source code to check for signals that things start to go sideways, and otherwise mainly feeds feature specification tickets into the team which are coming from a separate 'design department'.
I also would never call any of this work a 'labour of love' either. Not that this sort of soulless "specification-in-implementation-out" was much different before though, it's just how industrial software development works - essentially an assembly line for features.
> I also would never call any of this work a 'labour of love' either.
That’s a you problem. This could very well be a labour of love and nothing about any of this precludes it from being a labour of love.
> E.g. you have about the same distance to the actual implementation as a manager of a traditional programming team who from time to time skims over the source code to check for signals that things start to go sideways, and otherwise mainly feeds feature specification tickets into the team which are coming from a separate 'design department'
I guess you’re rather young or not really acquainted with the history of computer science, because that’s the exact same argument people used to make about compilers… and then GUIs…and then high-level programming languages… and then OOP… the list goes on and on and on.
Every time a new tool arrives that disrupts the way something is traditionally done, those that feel insecure about their work tend to lash out with the same “no true Scotsman” arguments.
I’m not saying AI is perfect or that it replaces programmers in any way. What I’m saying is that it’s just a different way of going about the business of programming. It’s just yet another level of abstraction.
Lol, thanks for the compliment. I've been programming computers since around 1984. But I learned to recognize snake oil when I see it (since around the mid-90s when the OOP hype was in full swing and I was a true believer for a while, the OOP hype did indeed have a lot in common with the current AI hype - e.g. about 10% useful, 90% snake oil, but it took the industry nearly two decades to recognize how harmful the OOP hype actually was even to the original idea of OOP itself... different topic though).
Also I think you're retconning/simplifying computing history a bit, it's not a linear evolution from low-level to high-level (e.g. when C was created, there were already much higher level programming languages common), and understanding the compiler output on CPU instruction level and the hardware it runs on is still very necessary for proper optimization work, even when working in a high level language.
E.g. you can't simply ignore the lowest level foundations even after adding new abstraction levels on top.
PS: what's up with all those throwaway accounts in the thread anyway?
Which, if you think about it too hard, says something slightly profound and a little disturbing about identity…
Right... Except the whole thing being generated by a model derived from everyone's code.
I'm not even sure I'm against licensing it as MIT but maybe stop with the ridiculous claims on top of that?