HNHacker News
TopNewBestAskShowJobs

jmmv

2,237 karma · joined December 31, 2013

https://jmmv.dev/ -- Contact me via julio@meroh.net or @jmmv.
submissionscomments
jmmv··on Rune is now open source
It is, but you can start with a COPR repo instead.
jmmv··on Don't let anyone take away your big box of cables
I think I've cleaned up my box of cables twice in the past and, inevitably, _the very next day_ I did so, I needed one of the cables I had gotten rid of. Never again.
jmmv··on Haiku R1/beta6 has been released
I tried Haiku recently on a not-super-old PC and was impressed by the speed and the reasonable availability of software. I then wished I could run this on my old Powerbook G4 because nothing else seems to run there anymore with ease, and this seems like the perfect desktop OS for such old machines. And it turns out there is now a fork for PPC: https://github.com/ActionRetro/Tabby-PPC !

(Why a fork? Because it's primarily vibecoded and Haiku won't take the patches upstream. But hey, I'm gonna give it a try anyway.)

jmmv··on What's new in Emacs 31.1
Start with Doom Emacs. I haven't felt the need to customize almost anything since I switched (from VSCode) 4 years ago.

TBH, I had used Emacs before VSCode and had accumulated a bunch of cruft in my .emacs configuration, and I never felt it was "mine" anyway...

jmmv··on Every Fucking Website
Somehow the clicking around reminded me of Windows RG. Go check this old relic if you have never seen it: https://www.jamesweb.co.uk/windowsrg . Turn the volume up!
jmmv··on CP/M-386 – CP/M for 386 protected mode, derived from CP/M‑68K
That's not surprising. The page says the kernel is multiboot compliant, which means it can be loaded by existing boot loaders. Whether the kernel later provides a floppy driver is a separate story.

This is also pretty common even if you don't use multiboot. The I/O services exposed by the BIOS or firmware during boot may not be usable once the kernel has started, and thus the kernel has to provide its own drivers.

jmmv··on Substack writers, you need a website
I've been blogging for 22 years now. At the beginning I could tell I had a relatively steady audience based on frequent comments (when comments on blogs were a thing). These died off over the years. Then, in 2020, I implemented my own unobtrusive subscription mechanism and email distribution to try to regain such an audience. And... it's pretty disappointing. I've gotten less than 200 subscribers that way; conversions just don't happy.

Then I "switched" to Substack 3 years ago and the audience growth is real. I'm approaching 2000 subscribers (some of which are paid, which always surprises me and I appreciate), and these keep growing organically although I'm sure a large portion of which are fake. It's hard to say it doesn't work or isn't worth it.

Now... spoiler: I never "switched" to Substack. I continue to write all of my content on my website _first_, with all of the features it had before, but now I copy/paste the content into Substack and distribute it that way. It's painful, but I have scars from when I moved off of Medium and want to ensure I "own" the originals.

If you are curious, I had written more about this 2 years ago in https://blogsystem5.substack.com/p/20-years-of-blogging

jmmv··on EndBASIC 0.14: Are we multimedia yet?
Yeah, structs (records) is something I've been wanting to add and that became reasonably easy with the full rewrite of the compiler I did in 0.13. Probably in the next update!
jmmv··on EndBASIC 0.14: Are we multimedia yet?
What do you mean? FUNCTIONs are supported, and their arguments and return values are strongly typed.
jmmv··on Microsoft Needs Windows Lite
Two years ago, I spent time studying the Windows NT kernel internals and ended up writing a comparison against Unix here: https://blogsystem5.substack.com/p/windows-nt-vs-unix-design . What I came out of that exercise with is that NT is actually well-made and was very ambitious and advanced at the time it was designed (although free systems have caught up by now).

But what I also came out thinking was: none of that shows. The kernel is great, sure, but all of the crap that has been built on top doesn't let it shine, and that's what people interact with. Take Windows 11 with is dog-slow file manager and the overall feeling that everything is bloated and designed to annoy you. I wish there was a simpler edition... but it ain't gonna happen.

jmmv··on Half-Life 2 in a Browser
> Only the very first few models of Intel Macs had strictly 32-bit processors (the 2006 iMac and Mac minis with Core Solo/Core Duo processors), and none of them were realistically capable of playing Half-Life 2.

What? First, those chips were plenty powerful to run HL2 (the game predates them). And second, all x86_64 chips can run older x86 32-bit code unmodified.

The reason macOS stopped supporting 32-bit code has nothing to do with the processors but more about them wanting to remove support for 32-bit binaries from the kernel and from all user-space libraries. To run a 32-bit binary, you need itself and all libraries it depends on to be 32-bit too, including the syscall boundary, which is "fine" (both Windows and Linux do this just fine, so it's really on Apple to have removed this). And I suppose Apple removed those because it was building towards a 64-bit-only world to simplify the Apple Silicon transition.

jmmv··on What was nice about the UI of Windows 2000
> It's a little bit sluggish, isn't it? And takes quite a bit of time to boot, right? It's certainly usable, though, not worse than your average website these days. I intend to use this setup for next Advent of Code. > > But here's the kicker: This is Windows 2000 SP4 running on a Pentium 133 with 64 MB of RAM and a spinning harddisk

Heh, gotta reference https://jmmv.dev/2023/06/fast-machines-slow-machines.html (https://news.ycombinator.com/item?id=43972004) from a few years ago. There is a video in there of Windows 2000 running on a K7-600 from 1999 and it indeed flies.

jmmv··on Emacs 31 is around the corner: The changes I'm daily driving
Sure, and I'm not arguing that the answers are uninteresting, but I found it odd that this is being double-quoted several times as if it was taken out of the article.
jmmv··on Emacs 31 is around the corner: The changes I'm daily driving
I'm curious... why are people (this thread, but there are several independent others) replying to "Is anyone still using emacs?" ? I don't see that sentence anywhere in the article!
jmmv··on Boot Naked Linux
Thanks. I haven't documented it (yet?) but I did give a talk last year on the process that got me there and the internals behind this system: https://www.youtube.com/watch?v=WZFYTInWAqc
jmmv··on Boot Naked Linux
I went through a similar "thought process" to build this: https://www.endbasic.dev/endbox.html last year. I originally wanted to "just" launch my binary right after the kernel started... but in the end settled for a full NetBSD base system to get things like network and WiFi configuration to work with ease. (That said, I still hook very early in the boot sequence to launch my own program and take over the console so that the rest of the system is invisible and initializes in the background.)
jmmv··on Boot Naked Linux
They probably meant 2010s.

I remember this was the time when Google started pushing the Chromebook idea and highlighting how it could boot in "just a few seconds". One of the earliest models I got as a dogfooding device probably needed 20 seconds to boot or so. Nice, compared to the awful boot times of machines with HDDs... but not stellar.

But then, in 2011, my wife bought a MacBook Air with an SSD and I was blown away. That thing booted to a full desktop (and not the joke that ChromeOS was) in... 5, 6 seconds? It was ridiculous.

And we have lost all of those gains. I find it painful to witness how a recent Mac chews through I/O during boot or doing any sort of software update (iStat Menus is great to watch this sort of thing), and how these feel slower to that early experience of 15 years ago :-/

jmmv··on Retro-Tech Parenting
> I’m starting to fall in love with CDs again.

I visited a long-time friend recently and was surprised that they were using modern LP player for music. But the surprise itself actually turned into curiosity. I got the urge to buy one too, if only to go back to the more-dedicated experience of choosing a disk from a catalog and playing it with explicit intention.

Maybe LPs are too much, but trying physical CDs again sounds like a cool idea. Especially because they can easily be rewritten and maybe I could get kids to create their own "mix tapes".

jmmv··on AI has a multiplying effect on existing technical skills
> More Inevitabilism posting with the “not happy with” but is-what-it-is washing of your hands

OK so, _realistically_, what can you do that will make any meaningful difference?

jmmv··on What if there was no BASIC in EndBASIC?
Huh, that's an angle I hadn't thought about. It'd be cool indeed!
jmmv··on 80386 Memory Pipeline
Shameless plug for my https://blogsystem5.substack.com/p/beyond-the-1-mb-barrier-i... article from a couple of years ago. You'll find a deep dive on unreal mode (I just learned it's also known as "vodoo mode") and some hands-on code to play with it ;-P
jmmv··on Fuzix OS
I'm sorry but the landing page at fuzix.org (the top page nonetheless) is terrible as it does not even try to explain what FUZIX even IS. I went to the GitHub project page, which contains some more details, but it still doesn't answer the question and only talks about how FUZIX differs from UZI.

To be honest, I still have no idea what I'm looking at.

jmmv··on I Quit. The Clankers Won
> the generated code just annoys me and the agents are too chatty

I’ve eyerolled way less with Codex CLI and the GPT models than with Claude.

jmmv··on I am definitely missing the pre-AI writing era
It sounds like you haven't tried.

LLMs definitely can do this. The output tends to be overly positive though, claiming that any sort of rough draft you give them is "great, almost ready for publishing!". But the feedback you can get on clarity, narrative flow, weak spots... _is_ usually pretty good.

Now, following that feedback to the letter is going to end up with a diluted message and boring voice, so it's up to you to do with the feedback whatever you think best.

jmmv··on Gzip decompression in 250 lines of Rust
I was reading this and couldn't stop thinking https://en.wikipedia.org/wiki/Literate_programming
jmmv··on OpenCode – Open source AI coding agent
No, I _never_ referred to the GUI versions.
jmmv··on Why I love NixOS
I started playing with NixOS recently in a VM and... while I don't have much experience with it yet, it feels _great_ for the many reasons described in the article. I really like configuring a file and knowing that the rest of the system aligns to whatever that file says: no more, no less.

The language is "interesting" and I haven't had to learn it in depth yet. Claude and Codex really make it easier to get started with Nix's weirdness -- but that's unfortunate because I feel I'm not going to learn the "real thing" otherwise. And this difficulty makes me curious about Guix though because, even though I'm not LISP expert either, at least I can read it.

Anyway. I'm just shy to "dig deeper" on NixOS because my servers are FreeBSD and I'm already feeling the temptation to swap them with NixOS, which would feel like a betrayal to these long-lived installations... ;-P

jmmv··on OpenCode – Open source AI coding agent
I’m not sure why any of this matters? I was looking at top, and the only two non-idle processes were claude and codex.
jmmv··on OpenCode – Open source AI coding agent
> and (partly as a result) it's fairly resource inefficient (often uses 1GB of RAM or more. For a TUI).

That's (one of the reasons) why I'm favoring Codex over Claude Code.

Claude Code is an... Electron app (for a TUI? WTH?) and Codex is Rust. The difference is tangible: the former feels sluggish and does some odd redrawing when the terminal size changes, while the latter definitely feels more snappy to me (leaving aside that GPT's responses also seem more concise). At some point, I had both chewing concurrently on the same machine and same project, and Claude Code was using multiple GBs of RAM and 100% CPU whereas Codex was happy with 80 MB and 6%.

Performance _is_ a feature and I'm afraid the amounts of code AI produces without supervision lead to an amount of bloat we haven't seen before...

jmmv··on Building a Shell
Somebody blamed this comment on LLMs, and maybe/probably it is, but I think the first sentence is spot-on so I thought it was worth replying to.

Dealing with the corner cases ends up teaching you a lot about a language and for an ancient language like the shell, dealing with the corner cases also takes you through the thinking process of the original authors and the constraints they were subject to. I found myself in this situation while writing EndBASIC and wrote an article with the surprises I encountered, because I found the journey fascinating: https://www.endbasic.dev/2023/01/endbasic-parsing-difficulti...

Page 1 of 13Next →