Tools I Use
— modified
Here is a list of some of the tools I use day-to-day.
Software
-
Gentoo Linux — One of the most solid barebones Linux distros I know of. I use it on my desktop and laptop computers.
-
OpenBSD — Secure server operating system. I use it to serve this website.
Unlike a GNU/Linux distro, OpenBSD is a single homogeneous system. Everything makes sense and the documentation is really good. Reminds me of Plan 9 in that respect.
-
Acme — Originally developed for Plan 9, Acme is Rob Pike’s user interface for programmers. It’s what we now call an IDE. I’m writing this article in Acme right now.
Every piece of text in Acme can be a executed or piped into/out-of a script. Very powerful.
-
Dwm — Nice tiling window manager for X11. Goes well with other Suckless accoutrements.
-
Syncthing — Syncthing is a sort of distributed filesystem. I use it to synchronize files between my laptop, desktop, and phone.
Hardware
-
Thinkpad T420s — I’ve had this laptop for a few years now; no complaints.
I replaced the hard drive with an SSD and threw some extra DDR3 in there. The 10+ year old 4-thread Sandy Bridge i5 is actually fine. I’m waiting for someone to make a serious multithreaded RISC-V CPU, but unfortunately everyone seems to be obsessed with high clock speeds and out-of-order-execution chips that use as much die space and power as possible. That Esperanto ET-SoC-1 looked promising, but apparently they went out of business or something?
Anyway, the T420s has a sturdy magnesium frame, a good keyboard, and a three-button touchpad which is essential for Acme and CAD programs—I don’t know how people live without one.
-
USBtin — Simple USB-to-CAN interface by Thomas Fischl. Works with SocketCAN. Used to test and debug systems that incorporate a CAN bus, like this.
-
Espotek Labrador — Combined oscilloscope, signal generator, power supply, logic analyzer, and multimeter. Obviously a tiny $30 board is not as good as real lab equipment, but it’s small and cheap and good enough for now.