The post glosses over some aspects of the implementation, for example to fit some executables into an image you can optionally compress the data with gzip and encode that instead
It also supports encoding at two-bit and four-bit levels but obviously the grain starts becoming apparent in the output images
Also it puts a 40 byte or so "header" in the encoded output so the decoder can see how many bytes to read up to, validate a hash and check a magic. It's a bit basic but it's enough to get it to work.
Anyway this was fun, thanks for reading!