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.
Rules are made to be broken, right? TDD is a strict set of rules
that define a process for building software. But experienced
practitioners have moved beyond the rules and work towards something
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.
In the morning we left for Rotterdam. We took the bus to the train
station in Schiedam and took the train to 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.
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.
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:
In the past, I have written about using Emacs as a C++
andsomeotherstuff. 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)
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.
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.
One of my favorite reads is Joel Spolsky's Things You Should Never
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
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?
Several years ago I made a first
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).