week 04, 2020

Why I went back working on 24-inch screen from a 32-inch screen

This is a guide that I wish I have had when I was buying a 4k 32-inch screen “to be more productive”. If you are using macOS and think about buying a 4k monitor for office or programming work, this article might be useful to you.

For me, it turned out that the new, expensive monitor made me less productive even after a month of using it.

Source: Why I went back working on 24-inch 1080p screen from a 32-inch 4k screen, an article by Iwan.

Correct sRGB Dithering

This is a brain-dump inspired by a thread on twitter about correct™ dither in sRGB, meaning, to choose the dither pattern in such a way as to preserve the physical brightness of the original pixels. This is in principle a solved problem, but the devil is in the details that are easily overlooked, especially when dithering to only a few quantization levels.

Source: Correct sRGB Dithering, an article by Christian Schüler.

A visit to Rotterdam

In the morning we left for Rotterdam. We took the bus to the train station in Schiedam and took the train to Rotterdam Blaak.

Cube houses, Rotterdam Blaak
Cube houses, Rotterdam Blaak.

We took several photos of the well-known buildings near the station, which looks like a wilted sunflower. After a visit to the market and the Markthal; a covered market, we paid a visit to the second book store "De Slegte", from which I took the photo below.

An overview of Rotterdam Blaak
An overview of Rotterdam Blaak.

In the above photo you can see from left to right: the library, the Blaak tower ("the pencil"), the cube houses, the train station ("the sunflower"), and Markthal. In front of those you can see the market.

Haskell Problems For a New Decade

At the turn of the century, the mathematician David Hilbert laid out 23 problems for mathematicians to solve in the 19th century. These were the Big Hairy Audacious Goals (BHAG) for the program of mathematics at the time, problems that drove forward progress and were exciting, adventurous areas to work in. Haskell has always been at the frontier of what is possible in computer science, and it also sustains a devoted community that regularly drags the future into the present. This can’t be done without the people who dare to dream big and build toward ambitious projects.

Here I am proposing a set of ambitious problems for the next decade:

Read the list of problems in Stephen Diehl's article Haskell Problems For a New Decade.

Emacs - Productivity Tricks/Hacks

In the past, I have written about using Emacs as a C++ IDE, and some other stuff. However, I did not realize that I have been using Emacs for many other things. To be brutally honest, I would not have enjoyed using Emacs anywhere nearly as much if it wasn’t for the features listed here. So, I decided to cover some of them. I will provide the configs that I have used to get them to work out of the box on my setup (as in, by literally copying from .emacs)

Source: Emacs - Productivity Tricks/Hacks, an article by Manoj Rao.

Why Learn AWK?

Because of the arcane syntax? Because other languages can’t do the job?


I resisted AWK for a long time. Couldn’t I already do everything I needed with sed and grep? I felt that anything more complex should be done with a “real” language. AWK seemed like yet-another-thing to learn, with marginal benefits.

Read on in Jonathan Palardy's Why Learn AWK?.

The CSS Cascade

The CSS Cascade is one of the most powerful parts of CSS. But it can also be very frustrating, if not well understood. Anyone who’s worked on a large enough website has complained "Why won’t this CSS property work?!" And we’ve all been tempted to throw an !important to strong-arm things into place.

To save ourselves from future angst, let’s take a step back and learn this thing for real.

Source: The CSS Cascade, an article by Amelia Wattenberger.

Why do we fall into the rewrite trap?

One of my favorite reads is Joel Spolsky's Things You Should Never Do. He wrote this post almost twenty years ago, outlining the downfall of Netscape and others because they spent years rewriting working code. His solution is, unsurprisingly, to refactor. About a year before Joel wrote Things You Should Never Do, Martin Fowler published his popular book, Refactoring: Improving the Design of Existing Code.

So, my question is, if we as a community figured out — twenty years ago — that we should stop rewriting programs, why is it still commonly done today?

Source: Why do we fall into the rewrite trap?, an article by Justin Fuller.

curl cheat sheet refresh

Several years ago I made a first version of a “curl HTTP cheat sheet” to facilitate the most common curl command line options when working with HTTP.

This has now been refreshed after I took lots of feedback from friends on twitter, and then worked on rearranging the lines and columns so that it got as compact as possible without sacrificing readability (too much).

See curl cheat sheet refresh for Daniel Stenberg's cheat sheet.