Chunky bacon

Since I blog a mixture of health and programmnig, my old tagline May all your work reduce to O(1) just didn’t cut it any more. Fortunately I have a found a perfect replacement:

Chunky bacon!!

This is the perfect combination of both worlds. Unfortunately, only few readers will get that chunky bacon is actually good for your health. Even fewer readers will get that this is actually a famous programming reference. Even fewer readers will get that it is actually both…

Quickly Solving the “Instagram Engineering Challenge: The Unshredder”

Today I have read about the Instagram Engineering Challenge: The Unshredder, and decided to give it a try. The task is simple to explain: Create a program that can unshred this image (do not try the challenge on this image, try the original PNG source instead!):

I have postet here that I think I can solve it in 2 hours, and got some downvotes for that; so I have decided to really give it a try. Long story short, it took me about 2 hours and 35 minutes.

Before I started developing, I made some quick assumptions to simplify things:

  • I want to code it in Ruby, this is the language where I am most productive.
  • I can assume the size of the stripes is well known, and I have hardcoded this size.
  • The image can be converted to RAW with an external tool, and written into RAW.
While coding I timed myself, and created a little timeline of my trials and errors. Since I wanted to finish as quickly as possible, the code is very ugly: no tests, some hardcoded constants, etc.

Continue reading “Quickly Solving the “Instagram Engineering Challenge: The Unshredder””

Download Bitcoin Logos

I have recently joined the bitcoin network, and generated PNG images from these excellent bitcoin vector graphics. I have extracted all relevant images, and converted each one into a PNG with transparancy, and in 60, 90, 300, and 600 DPI. All PNGs are recompressed with optipng -o9 to be as small as possible.


The zip file contains these images in 60, 90, 300, and 600 DPI:
Continue reading “Download Bitcoin Logos”

Smallest working QR Code

I’ve been playing a bit with QR code generators, and tried to generated a very small one for this homepage. This is the result:

The file is 21×21 pixels, and has just 178 165 bytes. It works with my cellphone from a distance of about 7cm, and gets you to

How did I create it?

  • Create very short URL to the link you want to create the QR code for. I’ve used with the customize link feature, and played a bit with special characters like _ until I got a working link.
  • Create a QR code for this link, with low error code correction. This generator has this option.
  • Open the file with your favourite image editor, cut off the border, resize it by factor 1/4 with resample to get a QR code where each black dot is one pixel wide.
  • Save as .png, without any additional information.
  • use IrfanView’s PNGOUT, and afterwards optipng -o9 to recompress the picture.

Can you make a smaller QR code with working weblink?

Have fun!