Hacker News

Top stories

Live mirror
30 storiesupdated just nowView source snapshot
  1. I built non-autoregressive decision models with RL a year ago(convaiinnovations.com ↗)
    177comments
  2. AI-generated posters don’t have to be horrible(john.hartnup.uk ↗)
    564comments
  3. Human brain is two separate organs, Stanford Medicine-led research finds(stanford.edu ↗)
    200comments
  4. Btrfs/ZFS/bcachefs under workloads classic benchmarks skip(bartosz.fenski.pl ↗)
    4comments
  5. A graphical desktop for the ZX Spectrum(github.com/mindbox77 ↗)
    86comments
  6. Tin: full-text search for Postgres(planetscale.com ↗)
    57comments
  7. “The Secret Life of Circuits” is here(coredump.cx ↗)
    60comments
  8. Android 17 is the first since 3.x to add new APIs without releasing to the AOSP(grapheneos.social ↗)
    599comments
  9. Black Holes or Black Hole Stars? Astronomers Spar over 'Little Red Dots'(quantamagazine.org ↗)
    23comments
  10. Supabase (YC S20) Is Hiring for OrioleDB(supabase.link ↗)
    discuss
  11. Show HN: CUA-S1 – A System One Model for Computer Use(github.com/trycua ↗)
    discuss
  12. New evidence for hidden chambers beyond Tutankhamun's tomb(nature.com ↗)
    13comments
  13. Suzanne Ciani's Buchla Cookbook(echo.orpheusinstituut.be ↗)
    1comments
  14. GPT-6 Astra Solves a WWI German Radio Cipher(prinzai.com ↗)
    147comments
  15. San Francisco Onion Futures Company(onionfutures.com ↗)
    134comments
  16. People who know the most often sound the least certain(vrash.substack.com ↗)
    9comments
  17. Cloudflare Quick Tunnels(cloudflare.com ↗)
    303comments
  18. How to Write with an LLM(sockpuppet.org ↗)
    365comments
  19. If math is more than proof, we need to better celebrate the rest of it(terrytao.wordpress.com ↗)
    210comments
  20. Almost Never Use AI to Write Anything Substantive(erichgrunewald.substack.com ↗)
    42comments
  21. What Zig felt like, coming from Rust(besok.github.io ↗)
    150comments
  22. You can run Git on object storage if you re-make packfiles(tigrisdata.com ↗)
    29comments
  23. Saving another 100TB of RAM(cloudflare.com ↗)
    93comments
  24. Communication by means of modulated Johnson noise(pnas.org ↗)
    23comments
  25. Asking Authors About Their Own Papers(medium.com/tmlrorg ↗)
    51comments
  26. SDCC – Small Device C Compiler(sourceforge.net ↗)
    26comments
  27. How OpenAI Used Its Own LLMs to Design Its Jalapeño Chip(ieee.org ↗)
    124comments
  28. Science Is Open Software(jepedersen.dk ↗)
    58comments
  29. Adventures in Microcontroller Circuit Debugging(bigmessowires.com ↗)
    1comments
  30. Why building a Rust LSP is hard(rust-glancer.github.io ↗)
    55comments

A graphical desktop for the ZX Spectrum

107 pointsby 4h agogithub.com
86 comments
4h agoHN ↗

It _does_ look really cool, genuinely, but calling it a "labour of love" and then having AI write the readme/docs seems conflicting.

4h agoHN ↗

I'm at the point as soon as I think "was this written with AI help?" is in doubt I immediately hit the back button.

Have been for a while, it's exhausting.

The clock you can trust

*Bleh*

2h agoHN ↗

No, I think it’s cool AF. Is it work that needed to be done? Certainly not. Is it work that could have been done by humans? Yeah maybe with a year or two of free time. AI gives us these admittedly pretty useless capabilities but it’s still fun to do, to get a new advanced tool to make us a kind of hauntological version of something that could have existed. You sound like the fun police and someone who should stick to programming in raw, unadulterated machine code rather than using any kind of assistance.

2h agoHN ↗

No, I think it’s cool AF.

That is of course your right.

You sound like the fun police and someone who should stick to programming in raw, unadulterated machine code rather than using any kind of assistance.

You felt the need to write that so allow me keep the response short: go fuck yourself.

2h agoHN ↗

I only accept responses in Hex I’m afraid.

1h agoHN ↗

+++ Out Of Cheese Error +++ +++ Redo From Start +++

1h agoHN ↗

I genuinely found it funny that you thought "go fuck yourself" would be either effective or off-putting to someone with the username "gizajob".

You know Boys from the Black Stuff right?

1h agoHN ↗

I think you just proved the parents point.

4h agoHN ↗

Long-form comments in the code are AI-written too, so I assume the whole thing is vibecoded. I guess my question is why. This is obviously not a piece of software anyone will ever use. If the author didn't do this for themselves - to learn, to show off their skills - then why bring it to life?

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?

3h agoHN ↗

why bring it to life?

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.

2h agoHN ↗

You’ve officially reached the “you pesky kids get off my lawn” stage in your interest in computing.

1h agoHN ↗

Not all AI-assisted projects are AI-slop. The fact that you think so only tells me that you’re deeply insecure about your knowledge of a subject that you’re interested in.

2h agoHN ↗

Why bring it to life?

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.

2h agoHN ↗

Why not?

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.

2h agoHN ↗

Even a cursory flick through the GitHub page until you reach “Why” shows that to be the answer.

1h agoHN ↗

The default state is that things don't get done unless we have a reason.

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?

1h agoHN ↗

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.

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.

47m agoHN ↗

Yeah, I think this is interesting independently of how it was made, because it reveals a kind of "what could have been" alternative history. It's fun to imagine a past where the Speccy got a desktop, and it's fun to see what it could have looked like running on real hardware (or on an emulator).

2h agoHN ↗

AI assisted or not, you have no idea how much of his personal effort went into the project.

2h agoHN ↗

Nothing else than a bit of prompting went in to this.

2h agoHN ↗

How about the desire to steer LLMs to a point of their choosing? LLMs wouldn't do this by themselves...

2h agoHN ↗

If you’re familiar with the way in which documentation artifacts like this fall out of a Claude project, you will recognize that every place where Claude says ‘this changes everything’ or ‘this is the load bearing insight’ most likely resulted from a human looking at what Claude had done, and redirecting it towards a more fruitful line of inquiry. When Claude gets ‘excited’ about a thing like ‘we figured out which clock measurement approach helps us actually optimize performance’ - excited enough to explain it in this level of detail - it usually results from the user pulling Claude out of a rabbit hole where it was going about things the wrong way.

1h agoHN ↗

"A bit of prompting" is subjective, and can indeed take a lot of work to craft accurate prompts which produce genuinely useful output.

1h agoHN ↗

I think you severely lack in domain knowledge if you think “nothing else than a bit of prompting went in to this”.

2h agoHN ↗

For the fun of it. Why not. And otoh, isn't it impressive that llm's can do it.

2h agoHN ↗

I guess my question is why. This is obviously not a piece of software anyone will ever use.

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.

1h agoHN ↗

If the author didn't do this for themselves - to learn, to show off their skills - then why bring it to life?

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."

1h agoHN ↗

If the author didn't do this for themselves - to learn, to show off their skills - then why bring it to life?

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.

1h agoHN ↗

then why bring it to life?

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.

4h agoHN ↗

I wonder: was there a time when using a compiler was considered cheating? "Real men" code everything in ASM!

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.

3h agoHN ↗

The critical difference I think is deterministic vs non-deterministic. A compiler isn’t the correct comparison, it’s reading out your desired specs to a team member who does the actual engineering work.

3h agoHN ↗

For me the red line is obviously AI generated readmes. If the author can't even be arsed to write obviously human facing text by himself I immediately lose all interest too.

3h agoHN ↗

Your analogies are completely non-sensical.

2h agoHN ↗

I just derived this exact line of thought from a different comment above so I’ve no idea why you’re getting downvoted for it.

3h agoHN ↗

Thinking of and expressing the functionality of the thing might be the labor of love for this person. Their definition of labor doesn't have to be yours.

3h agoHN ↗

Their labour didn’t involve coding. When we equate labour to creating a load of prompts then it feels hollow to me.

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

3h agoHN ↗

Not the parent, but it reads a lot like written by AI. It has that typical breathless style that's exhausting just from reading.

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...

3h agoHN ↗

Claude’s written voice is so distinctive, anyone who has spent time working with Claude instantly recognizes it.

Which, if you think about it too hard, says something slightly profound and a little disturbing about identity…

43m agoHN ↗

I use claude at work, I have to read its wall of text all day long, it's instantly recognizable. Like many others I'm developing an aversion toward it. The OP's project is pretty cool but I just couldn't read the readme.

1h agoHN ↗

Licence > > MIT, see LICENSE. Nothing here is derived from anyone else's code.

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?

3h agoHN ↗

Can anyone suggest a simple high-level graphical desktop (perhaps written in a mix of assembly and C) that comes with good documentation, or even an associated textbook?

3h agoHN ↗

It’s Claude’s earnestness that’s so disingenuous in this kind of write up. This voice Claude has where it believes the work is important and deserves to be taken seriously, and where it takes ever part of the process where it has to adjust its approach because of a thing it figured out as a great insight which is incredibly valuable and that people should be made aware of…

I feel like vibecoded projects need Claude to pick up on a sense of ‘this is just me messing around’, and a project like this where there does appear to be genuine digging into the art of performance tuning Z80 assembly needs Claude to understand ‘this is impractical hacking for hacking’s sake not groundbreaking research’

I don’t have a problem with projects which are, essentially ‘Claude and I burned a lot of tokens for giggles to see just how far you can push something’. But the write up needs to reflect that spirit.

3h agoHN ↗

It runs on the real thing, not just an emulator.

Wow!!!!

3h agoHN ↗

agreed, the only issue here is that Claude is targeted to enterprise engineering teams so its language model is trained for SoCal startup culture.

Would take three times the token cost to actually get it to fight with itself in the correct voice tone.

Honestly think self hosted models is more valuable here. At least then one can train it with the right system prompt.

2h agoHN ↗

You can do a lot with custom agent prompts. Just telling Claude ‘this is only a personal project, we’re messing around here’ changes its tone somewhat already. It’s still Business Claude, but more Casual Friday Claude, less Monday Morning Standup Meeting Claude.

1h agoHN ↗

the only issue here is that Claude is targeted to enterprise engineering teams so its language model is trained for SoCal startup culture.

SV is SoCal now? I missed the earthquake.

2h agoHN ↗

That's an excellent way of putting it. It's like an enthusiastic student who points out all the really smart stuff it did so that the teacher will be impressed and give it a gold star...which is basically what its RL environments were.

16m agoHN ↗

I have called it Claude's "iamverysmart" voice, but as you said, maybe it's more of a "thisisveryimportant" voice.

1m agoHN ↗

TBH even if you're messing around you may still want the code to be performant and taken seriously :-P

3h agoHN ↗

Wow I did so many of those when i was 12 or around that age. Mostly I tried copying the Amiga Workbench on my +2A (the gray one).

Obviously at that age my knowledge of coding and window managers wasn't exactly deep and i mostly only had seen other OS from magazines. I don't think I even knew what 'drag-n-drop' was and was a bit confused at what the Trash bin should do (i loaded code from tapes).

Good times i guess :)

2h agoHN ↗

Laughable to ignore the actual work done and that had to be done by a human to make this happen and work, and only focus on the AI assistance.

2h agoHN ↗

I don't understand the negativity. Someone had great time. Why being so negative. Of course no one would have invested time, if not llm's - that wouldn't even exist.

2h agoHN ↗

I want to hear about the great time they had. That would be interesting.

Instead I hear about the great time Claude had being prompted to do it.

edit: noticed the person who posted this here is not the same as the author. the author appears to have just randomly made the project public without any kind of announcement. so we don't know their intentions.

1h agoHN ↗

Instead I hear about the great time Claude had being prompted to do it.

I don’t think anyone is talking or even considering how much fun Claude had coming up with the code for this.

Fun is subjective. “A great time” is subjective. The author could have had bucket loads of fun discussing, architecting, rethinking, planning and bringing the project to life through Claude. Or they could have had a miserable time with Claude but just wanted to see the thing working. Maybe both? Maybe neither?

The point is: chill. AI is nothing more than a tool. A tool that requires an operator. And like every other tool in human history, it can produce bad results or wonderful results, it all depends on who’s operating it and how much domain knowledge they have.

Things aren’t so black and white. Open up your mind a little (crazy concept, I know) and just let people enjoy things.

43m agoHN ↗

My point is more this was posted without context.

I may be interested to read a blog post about the trials and tribulations the creator had, I'm sure there was something interesting going on getting LLMs writing Z80 assembly and testing things on real devices.

Not interested in reading an uncurated Claude context summary.

2h agoHN ↗

For an 8 bit Z80 based hardware project like this, assembly is a valid choice. The reason is performance. You'll lose significant performance with a compiler or interpreter.

2h agoHN ↗

There is practically no other choice on a Z80. C compilers really don't like the Z80 ISA and create both slow and bloated output, at least compared to manually written asm. And on top, you can do many optimization tricks in assembly that simply are not possible in a high level language (self-modifying code, jumping into the middle of an instruction, etc...).

Forth might work better than C, but tbh, assembly code is more straightforward and easier to read than Forth ;)

1h agoHN ↗

I believe most of the 8bit microcontrollers from this era have no good optimizing compilers that get close to what competent practitioners achieve with assembly. I think it has to do with having complex addressing modes making the C stack fairly inefficient.

2h agoHN ↗

Three rules that earned their place:

One commit per verified piece of work, with the acceptance numbers in the commit message

Project: One single commit: "ZX Desk, first release"

???

2h agoHN ↗

Maybe Claude one-shotted the project ;)

1h agoHN ↗

maybe they have a day job in a jurisdiction where their employer could claim ownership of the code if work was done during hours they paid for. it would be safer to scrub commit times if you’re worried about an aggressive employer.

31m agoHN ↗

Would love to see a corporation claiming ownership of a ZX Spectrum GUI, that would be performance art

1h agoHN ↗

I had fun playing around in Claude getting it to write 6502 assembler for the BBC Micro. It is fun to imagine what we could have built on those old machines with these new coding agents! But it is kind of hollow isn't it.

1h agoHN ↗

It is fun to imagine what we could have built on those old machines with these new coding agents! But it is kind of hollow isn't it.

It's the difference between building a table yourself and telling someone else to build a table for you.

If you've never done anything for yourself, usually with your own hands, you don't understand the pleasure and satisfaction that comes from doing it.

And since "AI" isn't human, it can't know that feeling, either.

1h agoHN ↗

If you've never done anything for yourself, usually with your own hands, you don't understand the pleasure and satisfaction that comes from doing it.

That’s an absurd thing to say.

Doesn’t matter what “AI” feels or doesn’t feel. AI is a tool. You can derive as much pleasure from having an ideia, planning it, working on it from a higher level, and seeing it come to life as you do when you get down and dirty with it and do it from the low level up.

Let’s talk like adults here. Please.

1h agoHN ↗

You are arguing against a very well known phenomenon. Technical people often avoid getting promoted to management precisely because they love doing the thing themselves. Despite the higher potential for impact in a management position, losing the detailed view of a practitioner is a real loss. This phenomenon is less obvious in big tech because there are so many people who really wanted to be managers the whole time, but had to be engineers first or never really cared about the work, but want a promotion for the better pay.

1h agoHN ↗

You either replied to the wrong comment or didn’t and proved my point exactly: some people like the technical low level approach, others prefer the higher level architectural work.

There’s space for both and there’s a need for both.

1h agoHN ↗

Designing a table and letting somebody else build it can be enjoyable, too.

There are plenty of people enjoying designing, for example people who 3D print objects they design, or people designing PCBs or even entire gadgets but outsourcing production.

With LLMs, I guess a factor is how much direction you give the machine. “Build me a graphical desktop” likely isn’t very enjoyable, but I can see co-working with a LLM being enjoyable. Examples

- think of some novel UI interaction, and let the LLM code it

- spending hours to speed up the GUI or to make it use less memory

1h agoHN ↗

This.

Knowing your limitations of building, but being good at designing and watching somebody/something else realise your vision is incredibly satisfying.

I see it like 3D printing. Nobody can extrude molten plastic out of their bodies to make things, but the skill of designing the construction well and then watch the machine execute it is certainly a good feeling. I dont really see how this is different to designing some software verbally and prompting an ai to build it for you.

16m agoHN ↗

If you don't know how the artefact you ordered works you haven't built it in any meaningful sense of the word.

1h agoHN ↗

I have coded big projects manually for a long time. Being able to get ai to do it, then step back and marvel at knowing how much work that would have taken manually is very satisfying.

1h agoHN ↗

You can say the same for building computers. You didn't actually "built" a computer from the ground up. You just bought the pre-made hardware and plugged it in the places that are made to be easily pluggable.

Everything in tech is about standing in the shoulders of what came before.

1h agoHN ↗

Not for me. I do like having an agent at my disposition that accelerates the way into making those little experiments a reality. A sloppy reality? Maybe. But It's just tinkering, there's no other use case for this outside of saying "So this can be done, huh? Okay time to go to for a walk".

While it's totally respectable to treat your code as your personal zen garden, I like the idea of having a highway where I can make reality anything that comes from my imagination, and also having time for family, friends, work and exercising out of sedentarism.

1h agoHN ↗

Thats your life and your opinion which you are fully entitled to, but dont make the mistake of thinking your life and opinion is better than anyone elses. It suits you, thats whats important.

47m agoHN ↗

I think it's an issue for hobby projects. The other day I had a neat idea, looked into it and realized I would not have time to do it but still wanted to use it so I vibe coded it over an evening and there it was. But the code is not mine, I feel bad about it, it's completely hollow, I wish I had the time to do it properly. I'm glad I'm still hand coding my main hobby projects to avoid that.

1h agoHN ↗

I hate the fact there is more discussion on things on HN about whether or not its vibe coded than the actual merits of the project itself. I really dont understand peoples attitude of immediately turning off something once they know ai is involved. These people are going to become pretty conflicted when somebody finally vibe codes some software they really like or have wanted forever.

As far as this project goes, the spectrum was the computer of my youth, and seeing this and getting to mess around with it brings my heart joy and my mind lots of nostalgic thoughts. Thanks for sharing!

1h agoHN ↗

This is the sort of thing I've wanted to write for a long time. Yes it looks like this is vibe coded but I'm glad this was made because it's cool to see what can be done, and it's interesting seeing how AI can be used as a compiler essentially given the output is assembly.

I'd be interested if the author would tell us more about what they did here and what went into the design and evolution, rather than the AI README.

6m agoHN ↗

Written in the best programming language ever!