POSTS
A Free Software Thanksgiving
Celebrating some of the essential parts of my digital lifestyleLike many folks, I tend to lose sight of the tools I use most frequently and most tacitly. It’s a shame, though, because for the very same reason, these are the tools for which I’m the most grateful! I have plenty to be thankful for, but I figured some reflections on software could be helpful to the folks who might visit this website. So here you go!
It’s no coincidence that everything mentioned here is free and open source software; software freedom is essential to my personal computing philosophy. It also makes voluntary support critical. Whether you already use these tools or you discover something new, I hope you’ll join me in making a few contributions.
The applications
The web is the most important technology in my life. It’s where I go to learn, to be entertained, to earn a living, to connect with loved ones, and to express myself. Firefox is absolutely essential to my experience, so it’s top-of-mind. Although its maintainers have long been doing their darnedest to make it interoperable with other web browsers, Firefox is by no mean interchangeable with its contemporaries. Its governance is open and unburdened by perverse incentives like advertising or hardware sales. While its future feels tragically uncertain these days, I still believe society needs choice.
Support Firefox by contributing to its development.
Vim is a close runner-up for me in terms of daily use. From my journal, to my code, my writing, my to-do lists, my finances, and my calendar, Text Rules Everything Around Me. Vim is how I interface with it. The text editor earns its reputation as an almost physical implement, feeling downright worn by years of practice and customization.
Support Vim with a donation to Bram Moolenaar.
Git tracks the history of all those files. It’s
absolutely essential for software development, but its utility isn’t limited to
code. Git has a place even for files which I neither share nor revise. Its
staging environment makes text content durable, giving me confidence to
experiment with wacky editor macros and haphazard sed
one-liners. And the
change database allows me to recall the contents of my lists, finances, and
reminders at any moment in the past.
Support Git with a donation to the Software Freedom Conservancy.
LibreOffice is a solid office suite and a marvel of adversarial interoperability. I don’t typically traffic in rich-text documents or spreadsheets, but they’re an inescapable part of modern adult life. LibreOffice is always there when I need it.
Support LibreOffice with a donation to the Document Foundation.
Thunderbird downloads my e-mail and displays it to me. With a no-frills design and dependable implementation, it’s been my choice for over a decade. One day, some text-based tool will probably usurp it in my workflow, but for now, this shoddy shell script integrates things well enough for me. In any event, I’ll continue to recommend it to folks who prefer a traditional visual interface.
Support Thunderbird with a donation to MZLA Technologies Corporation.
VLC took the place of Media Player Classic in my setup in high school, and I believe it’s played every single media file I’ve thrown at it since. It’s also done some transcoding for me, and it even dons a little Santa hat around Christmastime each year. Folks with more advanced audio/video setups might need something more, but for the rest of us, VLC does one job very well.
Support VLC with a donation to VideoLAN.
My audio editing needs even more minimal, amounting to little more than hobbyist tasks. Whether I’m stitching together files, isolating podcast clips, or adding novelty filters for silly side-projects, Audacity has always done what I’ve asked of it.
Support Audacity by contributing to its development.
Likewise, GIMP offers far more image editing capabilities than I need, but its power isn’t a hindrance for simpler tasks. I gave up on Photoshop when I got a real job and couldn’t tolerate pirating software anymore. I used GIMP to create a couple icons for a website GUI. I was just beginning to recognize the importance of free software, and I remember feeling so empowered by the knowledge that I could do the same work without paying or stealing. I still think about that whenever I launch GIMP.
Support GIMP with a donation to the GNOME Foundation.
Out of all the tools mentioned here, though, I probably under-utilize KeePass the most. It generates my passwords, stores them, and my system clipboard clear. KeePass can get pretty fancy, especially when extended with plugins, but I just run the GUI in the background and copy-and-paste as needed. Some folks balk at the austere workflow, but I appreciate a little friction in the sign-in process. I’m happy to have unique passwords for every service, though frankly, the database is useful even as a record of all the accounts I’ve created over the years.
Support KeePass with a donation to Dominik Reichl.
Remind is a command-line tool for personal event tracking via text files. I kept a paper calendar for way farther into the 21st century than I care to admit. Worse: romantic that I am, I scanned the things as a keepsake for times gone by. Remind changed that. Its technical interface might limit its appeal, but if you’re comfortable working in text, then it’s hard to beat. The syntax supports anything I’ve needed to schedule, from “the second Tuesday of every month between 2020 and 2022” to “the final Sunday of each August”, so I haven’t forgotten an important date in years.
Support Remind with a donation to Dianne Skoll.
After years of earning a living wage without an intentional savings plan, I began to feel increasingly uncomfortable spending money on myself. I tried GNUCash, but it felt like there was just too much to learn (and most of it exceedingly boring). Ledger, on the other hand, was designed for “plain text accounting”, and it felt way more accessible to me. I’ve since come to appreciate how varied people’s needs can be when it comes to managing finances. Ledger lets users design their own workflow, as evidenced by all the “how I use Ledger” posts online. I’ll write my own some day, but the result is easy to summarize. I spend about an hour a week tracking my expenses, and in return, I’m confident in every dollar I spend, save, and give.
Support Ledger by contributing to its development.
Behind the scenes
It’s easy to celebrate user-facing applications, but I’d like to also make space for essential infrastructure projects:
- OpenSSL makes the Internet a viable platform, not just for commerce, but for free expression. Support OpenSSL with a donation to the OpenSSL Software Foundation.
- Certbot democratizes that solution. Support Certbot with a donation to the Electronic Frontier Foundation.
- Tor makes access possible in unsafe environments. Support Tor with a donation to the Tor Project.
- Debian, through the effort of thousands of developers and enormous repositories, makes real the promise of free software. Support Debian with a donation to Software in the Public Interest.
And what kind of web developer would I be if I didn’t also recognize the standards bodies? The W3C, WhatWG, and IETF all maintain the documents that give meaning to the term “interoperability,” promoting innovation and ultimately enabling choice on the use of technology.
That’s all I have to say today, but it’s certainly not all I have to be thankful for–neither in software nor in my anemic non-technological life. If there’s one lesson that we shouldn’t take from the holiday specials of our favorite 90’s sitcoms, it’s that mindfulness, gratitude, and charity are somehow once-a-year traditions. Here’s to recognizing more good fortune tomorrow.