Work in progress: 181,232 of 181,233 sites checked so far, more every week · updated 2 Nov 2026Missing a blog? Tell us

Top all-time · #5571

K

KeyJ's Blog

Personal blog · keyj.emphy.deprogrammingsystems

KeyJ's Blog is a personal blog at keyj.emphy.de about programming and systems. Since 2013, 14 different Hacker News readers have linked it 19 times, most often “The art of shuffling music (2007)”. It is still writing: the last post was on 2025-02-10, and you can follow it by feed.

Visit the blog
19mentions?
14HN people?
2013–2025first – last linked?
Links on Hacker News per year · peak 3 in 2018

Too few sampled comments (6) to say how often HN recommends it.?

Why HN links it

HN readers link Martin Fiedler's blog for its shuffling algorithm post (the balanced shuffle), a TrueCrypt steganography post, and a minimal MP3 decoder project.

Summarised by Claude from a sample of 6 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.

Most-linked posts?

  1. The art of shuffling music (2007)
    4 people · 4 mentions · first linked 2019-07-03
  2. Honey, I shrunk the MP3 decoder (2007)
    2 people · 2 mentions · first linked 2018-03-11
  3. The art of shuffling music
    2 people · 2 mentions · first linked 2015-04-17

What Hacker News says?

  1. Spotify had a blogpost about it back in the day[1]. It was based on prior work that's a bit more general[2]. The basic idea was that you don't really want to randomize, you want to distribute. [1]: https://engineering.atspotify.com/2014/02/how-to-shuffle-son... [2]: http://keyj.emphy.de/balanced-shuffle/

    Comment linking /balanced-shuffle/

    on “We think this cool study we found is flawed. Help us reproduce it”
  2. Submitted MP3 for Image Compression (2006) as a story · 344 points

    HN discussion
  3. Worth mentioning that truecrypt volumes can be hidden inside playable video files. Yes, it's security through obscurity, but hey, it makes me feel a little safer. http://keyj.emphy.de/real-steganography-with-truecrypt/

    Comment linking /real-steganography-with-truecrypt/

    on “"Forensics for Prosecutors" mentions backdoor in TrueCrypt (page 15) [pdf]”
  4. Submitted Linux Graphics Demystified (2014) [pdf] as a story · 224 points

    HN discussion
  5. luminati · 2019-07-03Recommends
    Here is a nice post about this problem: https://keyj.emphy.de/balanced-shuffle/

    Comment linking /balanced-shuffle/

    on “Ask HN: Why are modern music players so bad at playing music in random order?”
  6. Submitted The art of shuffling music as a story · 39 points

    HN discussion
  7. >By the way, the player stub adds about 200 to 250kB to the MP3 file size. Yikes! There's plenty of room for improvement then. An MP3 decoder fits into 15kbyte: https://keyj.emphy.de/minimp3/

    Comment linking /minimp3/

    on “MP3 to EXE (1999)”
  8. Submitted Honey, I shrunk the MP3 decoder (2007) as a story · 19 points

    HN discussion
  9. Looks like it was inspired by http://keyj.emphy.de/minimp3/ and https://keyj.emphy.de/kjmp2/ , always good to see more people trying to implement multimedia codecs. The theory behind it all is not easy to understand, but in practice it turns into a bunch of arithmetic and table lookups. That said, this one being floating-point and requiring intrinsics makes it less portable.

    Comment linking /kjmp2/

    on “Minimp3 – Minimalistic, single-header library for decoding MP3”
  10. Submitted The art of shuffling music (2007) as a story · 4 points

    HN discussion
  11. For comparison, he has also written an MP2 decoder, which is almost an order of magnitude smaller: https://keyj.emphy.de/kjmp2/ Note that MP3 patents expired not long ago, so the format is now "free": https://news.ycombinator.com/item?id=14240645

    Comment linking /kjmp2/

    on “Honey, I shrunk the MP3 decoder (2007)”
  12. Submitted The Art of Shuffling Music as a story · 2 points

    HN discussion
  13. Hi, author here! Interesting question! Martin Fiedler briefly addresses this topic in a comment on his blog post about shuffling algorithms ( https://keyj.emphy.de/balanced-shuffle/ ) > Apple has a so-called “smart shuffle” algorithm, but this merely puts higher-rated tracks in front of lower-rated ones. So basically, it’s just random shuffle, followed by a sort-by-rating operation. I don’t know of any product (soft…

    Comment linking /balanced-shuffle/

    on “Scrambling Eggs for Spotify with Knuth's Fibonacci Hashing”
  14. Submitted Writing ultra-small Windows executables as a story · 2 points

    HN discussion
  15. Entirely tangential, but I recently participated in a CTF that included a steganography challenge with a True/VeraCrypt volume embedded inside a MP4 file. The MP4 file could be mounted just as a normal VeraCrypt volume could be. https://keyj.emphy.de/real-steganography-with-truecrypt/

    Comment linking /real-steganography-with-truecrypt/

    on “VeraCrypt: Free, open source, disk encryption for Windows, Mac OS X, Linux”
  16. Submitted Color Generation in IBM CGA, EGA and VGA (2018) as a story · 1 points

    HN discussion
  17. Here's some examples where ICC comes out ahead, often far ahead: https://keyj.emphy.de/compiler-benchmark/ https://iitd-plos.github.io/col729/labs/lab0/lab0_submission... As for MSVC, my experience has been that it often generates smaller and slightly faster code than the others (except for ICC), but there's definitely some styles of code which it won't want to optimise.

    Comment linking /compiler-benchmark/

    on “Using Uninitialized Memory for Fun and Profit (2008)”
  18. Submitted Honey, I shrunk the MP3 decoder (2007) as a story · 1 points

    HN discussion

Search all of HN for keyj.emphy.de

Linked by the same people?