HNHacker News
TopNewBestAskShowJobs

jmtd

84 karma · joined July 13, 2012

https://jmtd.net
submissionscomments
jmtd··on LaTeX Makes Me Angry
No, I didn’t change the title. Blame the submitter :)
jmtd··on LaTeX Makes Me Angry
Latex is a tool.
jmtd··on Git Worktrees
description of git worktrees, in particular their usefulness for the workflow around openjdk backports
jmtd··on Ask HN: What is your blog and why should I read it?
https://jmtd.net/

I've been blogging for about 20 years. Exactly what I write about has changed over that time (of course), but in recent times I've been writing about my PhD (applying purely-functional programming to distributed stream processing); cultural stuff I like, books, music, in particular Nintendo Switch games recently; free software stuff, particularly around Linux and Debian (I'm a Debian developer); note-taking and personal productivity; reading and archiving old media (minidiscs, ZIP drives, stacks of DVD-Rs, floppy disks); my fledgling adventures in 3D printing; retrocomputing and restoring my old Commodore Amiga; various classic Doom hacking projects I've worked on; running and maintaining a DIY free software NAS; computing history and preservation…

I wouldn't normally post in a thread like this but a friend put me up to it. Any feedback appreciated.

jmtd··on Java 14 Feature Spotlight: Records
> but the fact that a two records can't share field names

That is awkward sometimes yes. Record fields are functions, and you can't have two functions with the same name in the same namespace.

You can, however, use namespaces to import two separate modules with conflicting names. It does mean you have to define the two different records in two different modules.

If, you want different records to have common fields because they are conceptually related, you probably want to use type classes.

jmtd··on Red Hat Universal Base Image
openjdk 11 rhel8 image for openshift shipped yesterday
jmtd··on Have a personal web site
> I started running a vanity domain name around 2000, for email and Web, and have a few thoughts based on that... > > Hosting chronology something like: home Linux box on ADSL, 2 different shared hosters, 1U in a colo facility, back to earlier shared hoster.

Much the same sort-of chronology and hosting story for me…

> For my real-name vanity domain, I went with a `.org`, since I didn't want to be a `.com` in personal life, though today I'd prefer `.net`.

I'm curious to pick your brains on that. I've gone the other way: I ended up standardising on a .net but I kinda wish I had the .org instead, my rationale is, .org is a closer match to what my site is: if I squint I can consider it to be an "organisation" of one, but I can't convince myself that it or I'm a network. I originally picked the .net because I thought it scanned better with my choice of domain.

jmtd··on Have a personal web site
Me too. I have a simple static site/blog with mostly textual content going back to around 1999 and I'm lucky to have a reasonably unique firstname/lastname combo (ish); my blog currently is top on Google and Bing.
jmtd··on Have a personal web site
> Try googling for John Carmack,

And what should the top match for John Carmack be, in your opinion? Where is his homepage?

FWIW on Bing I got his Wikipedia article first and his twitter accoount second, which seems like sensible results in his case.

jmtd··on Android permissions and hypocrisy
Thanks. I didn't know that, but I don't install FB because of some other stuff I heard they did (like monitor the mic). Likewise messenger. I do access FB, but only from within Firefox, which I use soley for that purpose.
jmtd··on Android permissions and hypocrisy
I'm trying to determine whether iOS apps could sniff my clipboard, and i haven't proven that they can't; it doesn't seem to be a specific permission that needs to be assigned or can be denied. And thus using 1Password on my iPhone to copy and paste passwords seems to have a bit of a risk to it.
jmtd··on The Doom Movement Bible
For ultra purity, there's basically only Chocolate Doom (or DOSbox and the original game). For modern features (but losing the Doom "feel"), (G)Zdoom or Doomsday; for stuff in the middle, Doomretro, Crispy Doom, Prboom+, Eternity.

I'd say Crispy Doom (or Doomretro on Windows) are good balances.

jmtd··on The Doom Movement Bible
Doomretro is lovely, but if you really want a close-to-pure-as-possible experience, look at the (parent) project Chocolate Doom.
jmtd··on NPM and Left-Pad: Have We Forgotten How to Program?
The OP's example ( is-positive-integer) has tests, and is only three lines long, and is on major release version 3.X, because despite all that, it had serious problems in versions 1 and 2.
jmtd··on Duplicacy: cross-platform cloud backup tool based on lock-free deduplication
Obligatory obnam plug: http://obnam.org
jmtd··on Linux Mint downloads (briefly) compromised
The user interface/experience of PGP/GPG is not great, and that could do with fixing. However if you already understood how to use PGP (and granted that's unlikely for the users Mint targets), then you would not have been caught out by this.
jmtd··on The NICAM Codec replacement project
They almost certainly are not moving ATA commands over those ribbons, so SATA wouldn't be much use.
jmtd··on The NICAM Codec replacement project
Perhaps the title-writer has been infected by the BBC news editorial policy. They seem to be turning clickbait titles into a fine art, combined with renaming articles so you think it's a new piece on the same story, but turns out you've already read it. (If you read BBC News at all that is: my wife still does, I gave it up years ago and haven't looked back.)

I love many aspects of the BBC but sadly not their news output anymore.

(Sorry I realise this has very little to do with the R&D article.)

jmtd··on Booting Linux in One Second [pdf]
If you need 8G of resident memory to have the apps you want running then you need 8G... no shortcuts. That is a pretty high figure, though. Afaik things like disk caches aren't restored during a suspend/resume.
jmtd··on The Machine Stops by E.M. Forster (1909)
This was one of a series of stories re-published by Penguin for their 80th anniversary, as part of a series of shorts priced at 80p each. The Forster book had two stories (can't recall what the second one was, I've only read "the machine stops" so far).

http://www.littleblackclassics.com

jmtd··on Debops (2014)
I think this is a big problem in the Java world, possibly more so than many other languages/communities.
jmtd··on What happens if you remove randomness from Doom?
Took me a few days, but here's a video https://www.youtube.com/watch?v=SvfJoy1rjmo
jmtd··on What happens if you remove randomness from Doom?
Took me a while but here you go https://www.youtube.com/watch?v=SvfJoy1rjmo
jmtd··on What happens if you remove randomness from Doom?
The three zombie death sounds are on this page http://www.wolfensteingoodies.com/archives/olddoom/music.htm
jmtd··on What happens if you remove randomness from Doom?
Yeah a video would be a good way to demonstrate this but it would take a lot of editing to do properly and I ran out of time last night and really wanted to get this out. I might post a follow up video later.
jmtd··on What happens if you remove randomness from Doom?
Hi, article author here: it was the pitch shifting behaviour in particular that I wanted to explore when I modified the random table. Early versions of doom (<1.4) did it, but they accidentally removed that feature with a rework of sound code in 1.4 and onwards (including all versions of doom 2). It was originally applied to all but two sound effects, with special casing for chainsaw sounds (less variance afaik).

There were, however, three distinct zombie death noises, independent of pitch shifting.

jmtd··on Introducing GNU Guix
I suspect the fact there's GNU Guile, an entirely in-house Scheme ecosystem, has a lot to do with it. Use Python and be beholden to the Python community (outsiders!) Use JSON (as someone else suggested) and be beholden to the Javascript/JSON community (outsiders! oh and that awful JSON license!) etc.
jmtd··on Introducing GNU Guix
I'm not sure it's even a fork. It appears to plug a different backend/frontend into the nix structure, so it appears to be a "patch", for want of a better word. (at least that's what I gleaned from http://www.fdn.fr/~lcourtes/software/guile/guix-ghm-2012.201...)