Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    J

    Julio Merino

    jmmv.dev · Personal blog · on HN since 2020

    Julio Merino writes about software performance, Unix systems, build tools, and Windows Subsystem for Linux.

    Visit blogRSSHN submissions
    Systems & PerformanceOpen Source & LinuxProgramming
    What HN says

    HN links his 'Fast machines, slow machines' post as evidence that older computers could feel faster than modern ones. Another commenter adds it to a blog recommendation list.

    Stats for nerds
    64HN people shared it
    95linked in comments
    2Kstory points
    Dec 2025last shared
    2020people per year2025

    Top posts on HN

    1. 1
      Always Be Quitting
      4 people · 703 points · first shared 2021 · 343 comments on HN
    2. 2
      Windows Subsystem for Linux: The lost potential
      3 people · 362 points · first shared 2020 · 241 comments on HN
    3. 3
      From Azure Functions to FreeBSD
      1 person · 133 points · first shared 2025 · 29 comments on HN
    4. 4
      Fast machines, slow machines (2023)
      10 people · 110 points · first shared 2023 · 69 comments on HN
    5. 5
      Ldd(1) and Untrusted Binaries (2023)
      7 people · 79 points · first shared 2023 · 36 comments on HN
    6. 6
      rc.d belongs in libexec, not etc
      3 people · 73 points · first shared 2020 · 66 comments on HN
    7. 7
      Down the memory lane with OS/2 (2020)
      1 person · 70 points · first shared 2022 · 43 comments on HN
    8. 8
      Show HN: I've built my own simple website analytics
      1 person · 63 points · first shared 2022 · 24 comments on HN
    9. 9
      Why am I wasting time on EndBASIC?
      2 people · 60 points · first shared 2021 · 45 comments on HN
    10. 10
      Rust is hard, yes, but does it matter?
      2 people · 53 points · first shared 2022 · 28 comments on HN

    What HN people wrote when they linked it

    • dflockApr 2022

      Aside from a centralized, trusted packge archives, with signed packages and vetting, and secure downloads and verification, one difference is that with individual install.exe's - that installer can do whatever it wants. Windows package managers are just a facade over this and just run the installer for you.

      An actual Package Manager _is_ the installer - they are part of the OS and know how to correctly install and fully uninstall things. Someone else in this thread wrote a nice summary of this aspect here: https://jmmv.dev/2022/03/a-year-on-windows-winget.html#uninstallation
      This part is mostly true with MSI's, they're just a package format like .deb or .rpm - they just don't have any of the other infrastructure around them.

      > It does in fact centralize the update flow, but that's only beneficial when you update everything at once, which I don't have any reason to be doing: either I want it on latest, with the only interruption being not quite yet, or I don't want it updating at all

      Having this all centralized is actually really nice, so I wouldn't discount that. If you want to pin a package at a particular version, you can and the package manager will leave it alone. If you don't want things updated yet, just don't run the update yet.

    • lmmNov 2023

      > Bash is "real language" if you treat it as such. Yes, there are plenty of spaghetti scripts out there, riddled with global variables and full of side-effects, but if you write shell in a principled manner, you can solve some pretty big problems with ease, and you can write maintainable code.

      Even carefully written bash code tends to be much less maintainable than code in better languages. It's just badly designed on multiple levels, like the famous post about PHP. Yes, if you're really careful you can write decent code in Malbolge - but why would you?

      > I wouldn't start new projects in shell, of course, but one area in which I think the shell shines is in writing integration tests for tools. More on this in a recent post I wrote: https://jmmv.dev/2023/10/unit-testing-with-shtk.html

      The fact that you've written something that compiles to shell scripts rather than writing shell scripts rather undermines your claim that shell is a decent language. Integration tests of tools are important, but I'd still find e.g. TCL a much better way to write them.

    • fmajidApr 2025

      No, but if you are doing something like rebuilding a distro's worth of packages from source from scratch, the configure step starts to dominate. I build around 550, and it takes around 6 hours on a single node.

      Most checks are common, so what can help is having a shared cache for all configure scripts so if you have 400 packages to rebuild, it doesn't check 400 times if you should use flock or fcntl. This approach is described here: https://jmmv.dev/2022/06/autoconf-caching.html

      It doesn't help that autoconf is basically abandonware, with one forlorn maintainer trying to resuscitate it, but creating major regressions with new releases: https://lwn.net/Articles/834682/

    • hayley-pattonMay 2023

      Right. I found <https://www.ise.io/wp-content/uploads/2017/07/apple-sandbox.pdf> which agrees with you (on page 9). Guess it's down to defining "at runtime" now; the TinyScheme code (and GC) and Scheme code for the sandbox definitions are shipped to a user of macOS, and the user can invoke sandbox-exec with new sandboxing definitions (e.g. <https://jmmv.dev/2019/11/macos-sandbox-exec.html>), running TinyScheme and Scheme code. So I'd think Scheme is part of the entire sandbox system, even if not in the kernel?

    • a1369209993Nov 2023

      > https://jmmv.dev/2021/08/useless-use-of-gnu.html

      Tangential, but your blog software seems to have mangled the headings; it's serving eg:

      make $(shell &amp;mldr;) expansion

      instead of

      make $(shell ...) expansion

      (note that (as is correctly written in the body) that's three pediods, not one elipsis, so mldr wouldn't be correct even on it's own, meaning there's two probably-unrelated bugs affecting it).

    • account42Nov 2023

      A lot of the GNUisms described in https://jmmv.dev/2021/08/useless-use-of-gnu.html are very useful in interactive use. Search the current directory without an explcit . - useful. Append an option to a command you just typed - heck yeah, always annoyed when commands don't support that.

      For scripts though, sticking to POSIX sh often makes sense, yeah. You should at least be aware if your use of Bash-isms.

    Related

    Box of Cablesboxofcables.dev15 people

    Microsoft is not rebasing Windows to Linux

    Box of Cables
    Personal · last shared 2026
    NetBSD Blogblog.netbsd.org66 people

    NetBSD fully reproducible builds

    NetBSD Blog
    Company · last shared 2026
    Steve Franciaspf13.com26 people

    I’m joining the Go team at Google

    Steve Francia
    Personal · last shared 2026
    Matthew Garrettmjg59.livejournal.com25 people

    5 ways to reboot a PC. None of them reliable.

    Matthew Garrett
    Personal · last shared 2026
    GNOME Blogsblogs.gnome.org490 people

    AirPods fast connect security vulnerability

    GNOME Blogs
    Company · last shared 2026
    Trollaxortrollaxor.com16 people

    Why I Left OpenBSD

    Trollaxor
    Personal · last shared 2025
    Gavin Howardgavinhoward.com43 people

    Is It Even Worth Working on FOSS Anymore?

    Gavin Howard
    Personal · last shared 2026
    Chris Siebenmannutcc.utoronto.ca/~cks388 people

    Go is Google's language, not ours

    Chris Siebenmann
    Personal · last shared 2026