Why does Vim really use hjkl?

This is part of the talk “UNIX archeology” I gave at OpenFest 2023. If you, dear reader, are a vim user, you’ve probably seen this keyboard: It explains a lot about our beloved text-editor. CTRL is just where it has to be in the first place, the Esc is so near and the : symbol we use for commands is not hidden behind a modifier like nowadays. But why the arrows? ...

14 November 2023 · 474 words

Why do we have /usr?

This is part of the talk “UNIX archeology” I gave at OpenFest 2023. In modern contexts, /usr is essential for housing the majority of user utilities and applications. This includes system-wide software and files like standard programs, libraries, documentation, and much more. Unlike the root filesystem, which contains the minimum necessary for booting and repairing the system, /usr provides the bulk of the operating system’s functionality. However, have you ever thought why do we have seemingly duplicated with / directories in there? For instance, there is /bin and /usr/bin, /lib and /usr/lib, and lately we’ve started symlinking one to another. Surely, we could’ve just avoided the need to have them both in the first place. But why are they there? ...

12 November 2023 · 515 words

Why do we need hidden files?

This is part of the talk “UNIX archeology” I gave at OpenFest 2023. Hidden files are fairly popular these days, especially in our home folders. We store configuration, cache, logs and whatnot in there. Here’s what’s going on in the home folder on the machine I’m writting this right now: ❯ find ~ -name '.*' -type d | wc -l 5768 ❯ find ~ -name '.*' -type f | wc -l 30573 But why? ...

10 November 2023 · 566 words

79 characters

This is part of the talk “UNIX archeology” I gave at OpenFest 2023. Have you ever thought why the 79 characters limit per line is so popular in programming and pretty much nowhere else? Python with their notable PEP-0008, the Linux kernel, PostgreSQL and the GNU project, just to name a few. Sounds like an arbitrary one. But why? tty People tend to believe that this is because terminals were able to print up to 80 symbols per line and this just got carried over. The most popular one being VT100: ...

8 November 2023 · 580 words