Nikita Prokopov Avatar

Nikita Prokopov

Hardware tonsky.me

Time to upgrade your monitor

According to my research among programmers, 43% are still using monitors with pixel per inch density less than 150…

Why is this a problem? Because the only way to get good letters is by spending more pixels per letter. That simple. In the past, the displays’ pixel count was small, so we learned to live with that and even invented some very clever tricks to make our lives better.

Nikita goes on to share more details of how text looks on a low-resolution display vs a retina display. I’d love to see a follow up poll of the 43% using 150 PPI or less monitors on “why” they haven’t made the move to retina yet.

Fonts github.com

Fira Code – a free monospaced font with programming ligatures

Nikita Prokopov is next up on our maintainer spotlight series, so I thought it’d be good to introduce you to his awesome programming font. Here’s the problem he’s trying to solve with Fira Code:

Programmers use a lot of symbols, often encoded with several characters. For the human brain, sequences like ->, <= or := are single logical tokens, even if they take two or three characters on the screen. Your eye spends a non-zero amount of energy to scan, parse and join multiple characters into a single logical one. Ideally, all programming languages should be designed with full-fledged Unicode symbols for operators, but that’s not the case yet.

Fira Code – a free monospaced font with programming ligatures

Culture tonsky.me

How not to hire a software engineer

Nikita Prokopov writes on his personal blog about eight (8) common sense practices to use when hiring software engineers.

I’m not an expert in hiring for big companies, but I have extensive experience for small ones and a bit of common sense.

If you are in a business of hiring software engineers, big companies’ practices are not your friends. Common sense, fairness, tolerance, real interest, and open-mindedness are.

GitHub tonsky.me

Redesigning GitHub's repository page

A thoughtful, step-by-step redesign of the repo page we all know so well. I didn’t realize how many problems the current design has! Perhaps I’ve been inoculated to them by sheer volume of use.

His redesign takes a few left turns on me (I’ve always loved how code-centric the design is, for example), but overall there are many good ideas inside. I hope GitHub’s design teams read this and “steal” a few of the goodies.

Redesigning GitHub's repository page

Culture tonsky.me

Software disenchantment (or, struggles with operating at 1% possible performance)

Nikita Prokopov has been programming for 15 years and has become quite frustrated with the industry’s lack of care for efficiency, simplicity, and excellence in software — to the point of depression.

Only in software, it’s fine if a program runs at 1% or even 0.01% of the possible performance. Everybody just seems to be ok with it.

Nikita cites some examples:

…our portable computers are thousands of times more powerful than the ones that brought man to the moon. Yet every other webpage(s) struggles to maintain a smooth 60fps scroll on the latest top-of-the-line MacBook Pro. I can comfortably play games and watch 4K videos but not scroll web pages? How is it ok?

Windows 10 takes 30 minutes to update. What could it possibly be doing for that long? That much time is enough to fully format my SSD drive, download a fresh build and install it like 5 times in a row.

We put virtual machines inside Linux, and then we put Docker inside virtual machines, simply because nobody was able to clean up the mess that most programs, languages, and their environment produce. We cover shit with blankets just not to deal with it. “Single binary” is still a HUGE selling point for Go, for example. No mess == success.

Do you share in Nikita’s position? Sure, be frustrated with performance (cause we all want, “go faster!”), but do you agree with his points beyond that? If so, read this and consider supporting him on Patreon.

Player art
  0:00 / 0:00