I am attempting to write a software renderer in WebAssembly because, for some reason, I feel the need to go against the direction this vibe coded world is going, and I want to feel challenged again. I don't know if I will ever finish it, it is crazy, and by no means useful. But gosh it feels so good.
I did exactly the same and it was so much fun. It wasn't about bringing anything novel to the table, it was just a fun challenge for myself. I finished and now I'm writing a game using it, although now the challenge has gone I am not making much progress on that. But never mind, I had fun! I wouldn't have had that fun or satisfaction if I had vibe coded it instead.
As in 3D software renderer? I cut my teeth on those throughout my teens and the start of my professional career, in x86 and C.
I wanted to see how an LLM would do writing one in pure 8088 assembler for CGA and it one-shot a nice demo (I fed it the vectors for the Elite ship in the prompt):
Yes, exactly, a 3D software renderer. But the goal is to do (almost) everything from scratch and by hand. No LLMs, no std library, no compilers. Just a few imported math functions (such as sin and cos). Not the same as bare metal programming but close
Awesome, do it! I love this kind of thing and do it regularly, mostly as part of the demoscene. I've written a bunch of demos for MS-DOS/VGA/Pentium 100 era hardware. All my own tools, almost all my own code (just using some standard library functions and someone else's mod player although that's on my list of things to write myself). All in mostly C with smatterings of assembly for speed (triangle rasteriser inner loops etc).
I also wrote a demo for 386/CGA hardware last year and I plan on porting that one to an 8086 as I think it is simple enough that it should be able to run on one. I've done a demo for the Sega Master System and I'm about to start a project for the Game Gear.
I also made a bare metal demo for the Leapster Explorer (an ARM-based kids toy).
I don't use AI for any of this because for me the interesting part is the journey as well as the final result. I want to learn how things work, and I enjoy writing the code.
Have you noticed that comments like "this post seems written with AI" are now appearing on all posts, even those written without AI?
We're starting to become wary due to the abuse of AI and proliferation of sloppy content, but also because we often have trouble distinguishing authentic from sloppy content.
Agreed. Its so tedious that the top comment section on every HN post the last six months is "this seems be written by LLM" with a bunch of back and forth on whether it is or not.
As a daily user of HN, this is not true. Maybe you are clicking on different headlines, but the ones I am clicking on dont have that as top comment all that often. They do not even have it as a comment somewhere all that often.
I mean, a lot of it is. Green user, signed up 49mins ago, 5 comments, which erodes trust in real people as well. I’ve noticed I’ve just felt less engaged and more anxious about all kinds of online content. While most platforms were previously botted, had adverts, etc… You could always find niche corners where there were only people talking about things they genuinely cared about. Now you can fill out even those spaces automatically.
Probably because most HN posts in the last six months have been written by LLMs. Not all, but that doesn't matter, the trust has been eroded to the point that clicking on an article on the front page of HN and not being immediately met with the sloppiest slop imaginable is now a standout event in my mind.
I’ve been accused of being AI. My first impression when it happened was that because I often deal in information that people don’t like hearing, because it challenges their frame of mind, i.e., what they were trained on, “this is AI” is just another convenient tool to either dismiss uncomfortable challenge, i.e., cognitive dissonance, and/or another means to keep the mental herd they are part of or control in line with dogma.
“This is AI” seems to just be an evolution of other thought terminating cliches where the negative conditioning associated with something is used in an abusive and manipulative way to evade challenge or the truth itself. It is a common tactic of abusive people, the “beyond the pale” moralizing.
Yeah, whenever I see "It's not... it's...", I catch myself instinctively dismissing the content as AI slop, but upon reflection I'm not so sure, it used to be a normal phrase.
But I do take extra care to avoid LLM-speak as much as I can.
This is really interesting, although I still can't get my head around the fact that core.async.flow topologies are immutable. I feel like most problems can't be solved with fixed topologies.
I guess one could in theory swap flows the same way values are swapped, but I wonder if this is the way this library is supposed to be used. I also wonder what happens to non-empty channel buffers in this case.
Flow is intended for processes with long-running stable topologies. Rich has been thinking about options to "patch" the running topology but it is quite tricky due to the concurrency issues and I'm not sure that will ever be added.
Even though the flow topology is fixed, it's perfectly acceptable for a flow component to use other variable resources and act merely as a coordinator. So you could for example have a process that send data out to an external dynamic thread pool and gets callbacks via a channel.
Congratulations to the OP for the accomplishment.
reply