HN user

jmmv

2,229 karma

https://jmmv.dev/ -- Contact me via julio@meroh.net or @jmmv.

Posts81
Comments374
View on HN
www.endbasic.dev 18d ago

EndBASIC 0.14: Are we multimedia yet?

jmmv
49pts11
jmmv.dev 1mo ago

Is anyone still using Emacs?

jmmv
35pts5
jmmv.dev 2mo ago

Down the memory lane with OS/2 (2020)

jmmv
2pts0
jmmv.dev 4mo ago

Reflections on Vibecoding Ticket.el

jmmv
2pts0
blogsystem5.substack.com 7mo ago

BazelCon 2025 Recap

jmmv
3pts0
jmmv.dev 9mo ago

Trusting builds with Bazel remote execution

jmmv
10pts10
www.endbasic.dev 1y ago

Show HN: EndBOX DIY Kit – A Basic Microcomputer

jmmv
2pts0
blogsystem5.substack.com 1y ago

A CLI text editor? In my Windows? (2023)

jmmv
3pts0
www.endbasic.dev 1y ago

Unveiling the EndBOX – A microcomputer prototype for EndBASIC

jmmv
38pts25
www.endbasic.dev 1y ago

Show HN: EndBOX – A toy-like retro computer for EndBASIC

jmmv
7pts0
blogsystem5.substack.com 1y ago

Beginning 3D Printing

jmmv
1pts0
dylanbeattie.net 1y ago

The problem with "vibe coding"

jmmv
135pts150
blogsystem5.substack.com 1y ago

Hardware discovery: ACPI and Device tree

jmmv
3pts0
github.com 1y ago

Usable DOS-based live USB media, for distraction-free writing

jmmv
3pts0
blogsystem5.substack.com 1y ago

Revisiting the NetBSD Build System

jmmv
4pts0
blogsystem5.substack.com 1y ago

Synology DS923 vs. FreeBSD with ZFS

jmmv
18pts11
blogsystem5.substack.com 1y ago

Demystifying Secure NFS

jmmv
5pts4
laurent.le-brun.eu 1y ago

Evolving a Codebase at Google Scale

jmmv
2pts0
blogsystem5.substack.com 1y ago

Revisiting the DOS Memory Models

jmmv
1pts1
github.com 1y ago

2.11BSD_X44: A 2.11 BSD that's still receiving patches, including x86 support

jmmv
30pts14
release.gnome.org 1y ago

Gnome 47, "Denver"

jmmv
11pts0
www.abortretry.fail 2y ago

New Old Stock OS/2 Version

jmmv
5pts1
blogsystem5.substack.com 2y ago

Porting the EndBASIC Console to an LCD

jmmv
2pts0
jmmv.dev 2y ago

Constructors and evil initializers in C++ (2021)

jmmv
1pts0
posts.summerti.me 2y ago

Can you rewrite it to be Posix compliant?

jmmv
3pts0
blogsystem5.substack.com 2y ago

Porting the EndBASIC Console to an LCD

jmmv
1pts0
jmmv.dev 2y ago

Speeding up autoconf with caching (2022)

jmmv
26pts16
rumpkernel.github.io 2y ago

Rump kernels – a composition of componentized drivers

jmmv
3pts0
blogsystem5.substack.com 2y ago

Running GNU on DOS with Djgpp

jmmv
2pts0
jmmv.dev 2y ago

A persistent task queue in Rust

jmmv
2pts0

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!

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.

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.

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.

Boot Naked Linux 1 month ago

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

Boot Naked Linux 1 month ago

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 :-/

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

Fuzix OS 3 months ago

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.

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.

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.

Why I love NixOS 4 months ago

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

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

Building a Shell 4 months ago

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

Why I love FreeBSD 4 months ago

To be honest I've never tried boot environments. I know they are a thing, and I have my whole setup on ZFS, so maybe that's the perfect use case.

Why I love FreeBSD 4 months ago

I delayed upgrading to 15.0 after it was released, but last weekend I finally did it, and it left me wondering why I hadn't done it sooner, because it went quickly and smoothly.

I haven't done that yet because I think I'd want to switch to pkgbase but that makes me nervous. Did you go with that option or continued to use the sets?

Huh, in a point release?

But excited to try it out ASAP! I haven’t made the leap to 15 on my server yet (in part because I can’t decide whether to go with pkgbase or not…), but sharing data more easily with VMs will surely be nice.

What’s the performance like?

I don't disregard what you are saying and believe that being more productive with sufficient quality is _possible_.

But how do you measure it? All the metrics I see being chased (metrics that were never accepted as productivity measurements before) can be gamed with slop, and so slop is what we'll get.

If we have been complaining about bloat before, the amount of bloat we are going to witness in the future is unfathomable. How can anyone be proud of a claim like "It's 3M+ lines of code across thousands of files." _especially_ when a lot of this code is relying on external dependencies? Less code is almost always better, not more!

I'm also getting really tired of claims like "we are X% more productive with AI now!" (that I'm hearing day in and out at work and LinkedIn of course). Didn't we, as an industry, agree that we _didn't_ know how to measure productivity? Why is everyone believing all of these sudden metrics that try to claim otherwise?

Look, I'm not against AI. I'm finding it quite valuable for certain scenarios -- but in a constrained environment and with very clear guidance. Letting it loose with coding is not one of them, and the hype is dangerous by how much it's being believed.

Huge Binaries 7 months ago

This is something that always bothered me while I was working at Google too: we had an amazing compute and storage infrastructure that kept getting crazier and crazier over the years (in terms of performance, scalability and redundancy) but everything in operations felt slow because of the massive size of binaries. Running a command line binary? Slow. Building a binary for deployment? Slow. Deploying a binary? Slow.

The answer to an ever-increasing size of binaries was always "let's make the infrastructure scale up!" instead of "let's... not do this crazy thing maybe?". By the time I left, there were some new initiatives towards the latter and the feeling that "maybe we should have put limits much earlier" but retrofitting limits into the existing bloat was going to be exceedingly difficult.