Ascetic Computing
Draft! |
This page is a draft and may be incomplete, incorrect, or just a
stub or outline. I've decided to allow myself to put draft pages on
my website as an experiment. I'm hoping they will:
|
I recently came across a comment I’d written in a configuration file. It was above some commented-out lines. It said:
# I opted to do without this for ascetic reasons.
I often put a fair amount of effort into perfecting and cleaning up program source and software configuration for aesthetic reasons, so this comment briefly threw me for a loop. Then I chuckled. How droll.
The more I thought about it, thought, I had to conclude that I’ve been doing a lot of things lately for "ascetic reasons".
As the asceticism article (wikipedia.org) begins:
"Asceticism is a lifestyle characterized by abstinence from worldly pleasures through self-discipline, self-imposed poverty, and simple living…"
I acknowledge that we moderns often give asceticism a religious and spiritual flavor, but the concept goes back to the dawn of humanity and the term originates with regular old down-to-earth self improvement. (More on that in the section Keeping Sharp below.)
Futher, the brand of asceticism I’m thinking of is a "natural asceticism" which results from a pursuit of simplicity and focus, not suffering or denial for its own sake! I’m not picturing a starving monk in a hairshirt, but something more like Henry David Thoreau in Walden: "I went to the woods because I wished to live deliberately," and live a life that is not, "frittered away by detail."
(Hey, look at me, I’m like a Thoreau of computing! And the comparison is pretty good because, like Thoreau, I haven’t strayed very far from civilization and still make regular use of it. For what it’s worth, I do laundry.)
What it means to me
I’ve come up with a list of principles that are the basis for my ascetic computing.
Before I give you the list, understand that I mostly live by these principles, but not always. Just search for "Faust" and "Faustian" on this page.
Here’s what "ascetic computing" means to me:
-
Doing without things that compromise my personal standards or morals.
-
Learning to live Fearlessly in the face of Missing Out.
-
Resisting the Endless Pursuit of Shiny Things.
What’s interesting is that the word computer does not appear even once. Someone 200 years ago probably would have understood my list, and could comprehend, after a moment of pause, the modern idioms "Fear of Missing Out" and "Shiny Things".
All three of these principles are challenging, but I think the Shiny Things are my final boss. I’m one of those people who follows the links on Wikipedia and finds themselves with 30 tabs open an hour later. Or who buys supplies for hobbies with the full intention of doing that hobby for the rest of my life. And then…doesn’t.
(Yes, I used to learn a lot of subjects, but the problem with Shiny Things is that when I was always chasing the new fashions in computing, I never gave myself a chance to dive deeply into the things I really cared about. Of course, you first have to figure out what you really care about, so I think you probably should look at the Shiny Things when you’re starting out. What is shiny now may become a well-worn old favorite a decade from now.)
Anyway, I’d like to point out that deprivation is not on the list. A certain amount of deprivation may occur as a result of following the three principles, but it’s not the goal.
The goal is to live a (computing) life of principle, purpose, and focus.
I’m not kidding, I really do enjoy computing like this
I have no desire to wander into the desert with a laptop computer and some solar panels and starve myself until I go on a vision quest (though I do seek the sort of simplicity that would entail).
It’s not that I’m not interested in new things, it’s just that I want to concentrate on the things that are important to me with as few distractions as possible. I wish for my natural state to be either resting or learning, creating things, and writing.
Another way to look at it: Rather than deprivation, I see this as enjoying what I have, which is a lot. See also In Favor of Enjoying Things on Purpose (raptitude.com) by David Cain.
Finally, to be explicitly clear before we go any further, because some people will insist on misreading this article: Nothing I do on computers is masochistic self-denial or performative mortification to impress anyone. Quite the opposite! I find my habits pleasurable and satisfying.
Nor has this been a sudden proclamation I just made one day. It’s simply a natural mode into which I’ve settled at this stage of my life. I wouldn’t do it if I didn’t like it.
Simplicity and things that just work
(Sketchbook drawing by the author with black and gray liner pens.)
I have adored the following Flaubert quote ever since I was introduced to it by Austin Kleon (austinkleon.com) in the chapter titled "Be Boring" from his book Steal Like an Artist:
"Be regular and orderly in your life, so that you may be violent and original in your work."
I’m at the point in my life where I’d rather spend my creative energy on a project of my own creation than fighting my operating system and tools.
I’d rather do without a few conveniences if it means less complications and breakages and distractions.
For me, this means removing operating systems and software built with a belief that I do not own my computer, but they do. My time and attention is extremely precious to me and anyone who tries to steal it is performing a great crime.
This may shock you, but I prefer operating systems and software that do not automatically update themselves, even for security reasons. I update my operating system and software when I am ready. Call me a computer security heretic if you like and I will laugh and respond like the sicko I am, "Ha ha, yes!"
Current favorites for programming and writing:
-
OpenBSD for the OS because it is cohesive and Just Works.
-
Vim for the text editor (lots of good choices in the editor category).
-
LibreWolf for browsing the web.
-
Dillo for browsing the web for a specific piece of information and then get the heck off and go back to whatever I was working on.
-
Ruby for scripting handy personal utilities.
(I’m pretty new to daily-driving Dillo as my main browser on one of my computers, and I’ll probably have more to say about it in the near future.)
OpenBSD’s 6 month release schedule is perfect for me.
(By contrast, Slackware Linux’s 5 year release "schedule" is
the primary reason I’m slowly and sadly migrating away from it. And yes, I’m
very aware that people run -current as a "rolling release" and screw that,
thanks!)
You likely disagree with some of those choices. Great! This list should be individualized and opinionated!
Less fragile
Another way to look at my choices for a "simple" setup is that I’ve largely arrived at them by actively avoiding fragility. This has been a natural process over a long period of time.
The idiom to "use a tool/language in anger" means to "use it for real" as opposed to just playing around. But the phrase is so colorful and I love it because it makes me picture someone in a cold sweat furiously typing on a computer while people crowd around them with fingers crossed. Something important hangs in the balance.
When the "rubber hits the road", to use another idiom, you suddenly stop caring what things look like and how fashionable they are. You just care if they work. In times like that, you remember which tools let you down and which ones don’t!
Things that last
I love learning new things. But at some point, it began to dawn on me that my learning often went into one of two categories:
-
Knowledge that was transient, sometimes even single-use.
-
Knowledge that lasted and would transfer.
Learning proprietary software has tended to go into the first category.
Learning BIOS/UEFI settings and hardware minutia has largely gone into the first category (at great cost to my mind!)
Learning the fundamentals of programming goes in the second category.
Learning Unix fundamentals and programs that have been around since the 1970s goes in the second category. (Trust me, I find it just as perverse as you do that I’m still using techniques and tools that were first created for teletype terminals that printed output on actual rolls of paper. But it is what it is. Text interfaces have a ridiculously low-barrier for creating, modifying, and combining programs. As devices have changed, the text stuff just keeps working.)
Note my use of the word "fundamentals" in those last two items.
In the arts, I find this very similar to learning the fundamentals of drawing or writing. Practice these things and they’ll pay off forever.
I’ll invoke the Lindy effect (wikipedia.org) which seems, in my experience, to hold true:
"Longevity implies a resistance to change, obsolescence, or competition, and greater odds of continued existence into the future."
The vi editor was released in 1976. 50 years ago! People still use it every single day. It well may go on for another 50.
By picking subjects and tools that have lasted the test of time, you’re more likely to invest your personal energy in something that will pay off for a longer period of time.
I initially cast my net widely and found out what I liked. When I was ready to concentrate on my own work, I tried to stick with my choices. I try not to be drawn off the path forward by either Fear on one side or Shininess on the other.
I’ve chosen to be boring in some of my choices so that I can be exciting in others!
Creative limitations and picking something and sticking with it
Another quote from the Wikipedia article on asceticism:
"Ascetics maintain that self-imposed constraints bring them greater freedom in various areas of their lives, such as increased clarity of thought and the ability to resist potentially destructive temptations."
The good stuff is in that apparent paradox: constraints = freedom.
It is a well-known phenomena in the art world that limitations can be our greatest creative allies. Forcing yourself to use one brush or only materials you can find around the house can be a fantastic way to break through a creative rut.
It’s the same thing in computing. The first chapter of the book Programming Pearls by Jon Bentley describes a sorting problem with a hardware constraint of limited memory. Had the memory not been constrained, the obvious answer would have been to use a regular library sort routine. But the constraint forced a creative solution that fit the problem’s exactly requirements - populating a large bit field, which was not memory efficient, but had the pleasant side effect of also being an order of magnitude faster than an ordinary sort. We’ll revisit programming in a moment.
When you everything is available to you and there are no limits, it can be terrible for your creative thinking.
Have you ever spent more time scrolling through the enormous number of options on a movie streaming service than actually watching a movie? I never had that problem when I was a teenager with a dozen well-worn VHS tapes of my favorite movies. I just picked one and watched it.
I’ve driven myself to distraction chasing the right text editor, command shell, Linux distro, window manager, and… color scheme, for goodness’s sake! Thankfully, something eventually got me to Stick With It and learn how to accomplish what I wanted with the "limitations" of my chosen tools rather than give in to the temptation to go back to searching for The One True Tool.
(That "Stick With It" link is a new card, by the way. I swear to you I tried to keep this page as short as I could.)
Doing without: so bitter, so sweet!
The other day, someone said to me, "Have you been seeing the advertisements for [whatever it was]?"
And I realized that not only had I not seen those advertisements, I haven’t seen virtually any advertisements in recent memory. Of course, some sneak through in magazines and billboards and that sort of thing. (I mean, you’d have to live in the woods to avoid them entirely. But I trust you understand what I mean.)
The longer I go without sitting through advertisements, the more resistant to them I become. At this point, I basically refuse to watch anything or listen to anything that makes me sit through ads. Not even podcasts I otherwise enjoy. I just can’t do it anymore. Ads in printed material are pretty easy to ignore and I run the LibreWolf browser (as mentioned above) and see very little advertising on the Web.
Does this sound like a brag?
I absolutely miss out on stuff because of this stance.
Sometimes I wish I wasn’t missing out on those things.
But I find it gets easier to make that sort of choice as I get older.
Not to get too philosophical, but being able to do without things is
another way of saying "be content with what you have," which is a
/.well-known/ path to True Happiness.
Obligatory Oscar Wilde quote:
"True contentment is not having everything, but in being satisfied with everything you have."
And, look, I think that’s right. But it’s like Morpheus said about the Matrix, "Unfortunately, no one can be told what [being happy with what you have] is. You have to [experience] it for yourself."
This isn’t just about consuming media, either. This applies to doing without software and operating systems and websites that violate your personal principals. If you forgo them, you will absolutely miss out on some things.
But you can pick and choose your compromises. I’ve made my Faustian bargains in computing just like everyone else (Valve’s Steam isn’t libre, and stock Android is something I begrudgingly live with on my phone). That’s where having separate computers is great! More on that in the final section.
Keeping sharp
Quoting Wikipedia once again:
The adjective "ascetic" derives from the ancient Greek term áskēsis, which means "training" or "exercise".
Writing and programming are both exercises that help my brain organize itself. Using minimal tools and using them frequently is a way to keep my brain sharp. The more I practice, the better I get at it and so the more I want to practice. Do you see the harmony?
There’s a back-and-forth between thought and action for which there is no shortcut. We develop our ability to have deep thought by the practice of thinking.
As Tugba writes in think until you can think no more (tugbakibar.pro):
"i write down every thought, every emotion, every what, why, which, and how. you could call it a form of creativity as well, because you keep digging until you finally pull the hidden thought to the surface, and then come up with a creative way of dealing with it."
I believe that simple and minimal tools give no illusion of productivity. You provide the motive, the effort, and the outcome is your own. You get what you put in. It is a simple and ancient arrangement.
Ascetic programming
I mentioned a programming briefly above in the context of limitations.
While writing this page, I discovered a book titled The Ascetic Programmer: How asceticism benefits programming, science, and the arts by Antonio Piccolboni.
I read it and enjoyed it. My review (and links to the book) here:
I’ll repeat one of my favorite quotes here:
"May this book inspire you to adopt unnecessary restrictions in your endeavors."
Piccolboni didn’t need to convince me of anything. It was already my belief that shorter programs are (all other things being equal) much better.
I started programming computers near the end of the 3.5" floppy era and call me old-fashioned, but I’ve never forgotten how much amazing stuff you can fit within that 1.44 Mb limit.
Some other things I’ve previously written in this vein:
-
Small Programs and Languages (explicitly about brevity)
-
Do it the dumb way first (do the simple thing first)
-
Build It Twice (against accreted accidental complexity)
In the age of the pocket supercomputer, I still program as if every Kb matters because, actually, it does, darnit! See my 'Why?' section here, for example.
Maximalism
I would like to convince you that this asceticism I’m describing is neither a synonym for minimalism, nor is it the absence of fun or joy!
I’ve used words like "minimal" to describe my computing habits and there’s a lot of truth in that. I like using a small set of tools and stick with the defaults settings as much as possible to keep myself unencumbered by heavy setup. I can be productive on a new Unix-like system pretty much right away.
But I wouldn’t describe my computing situation as minimalist per se. Not exactly.
Also, I fear that readers are still, despite my objections, picturing a joyless existence of deprivation. Here is my last attempt to change your mental picture by briefly describing my home computer maximalism.
As I wrote four years ago in the card Computers as Workspaces, I really enjoy having a bunch of separate computers around for different tasks.
More cheap little computers have come into this house since I wrote that card and none have left.
The thing that binds nearly all of them is that they were pre-owned, inexpensive, have no ongoing costs to own while they’re powered down, and have no licensing fees, subscriptions, or external dependencies.
In other words, I’ve:
-
found something I like and
-
accrued more of it over time and
-
now I have a lot of it.
It’s much like maximalism in the original design sense of the term. The same is true with my books (to a greater degree) or my movie and music collections (to a lesser degree).
Yet I still consider this to be an ascetic collection because almost everything in it follows my principles!
(I keep saying "nearly" and "almost". Another advantage to multiple computers is that you can temporarily "sacrifice" some of them to unprincipled computing in exchange for convenience. The Faust of legend traded worldly pleasure and knowledge for his entire soul. A single computer or cell phone running an unprincipled operating system is not nearly so dire a covenant.)
Think of it this way: my computers are like a little electronic garden where most of the plants are dormant most of the time. I am my house’s happy little garden hermit (wikipedia.org). I tend to my beloved garden as fancy takes me.
Joy and Fun, I tell you!
And speaking of my happy little garden of used computers, that brings me to the final point:
Saving money, reducing impact, and again, enjoying what we have!
I think we are very fortunate that Moore’s Law gave up the ghost after we achieved a level of cheap and reliable computation that, in my humble (but firm) opinion, satisfies everything a home computer user might reasonably want to do.
I realize saying something like that is just begging for people to come at me with the legend, possibly fiction, (computerworld.com) of Bill Gates saying, "640K ought to be enough for anybody."
But while no one could deny that computers were extremely limited in the everyday tasks they could do in 1981 (in part because of the small amount of main memory), I am not convinced we’re similarly constrained now.
One of my daily drivers is a 8 year old Lenovo 11E ("Education Series") with a Celeron N3450 CPU and 8Gb RAM, which was "underpowered" when it was brand new, "more underpowered" when I bought it used 4 years ago, and "woefully underpowered" now. I pay more to take the family for a modest meal at a restaurant than I paid for this computer. And yet, it’s perfectly capable of any normal home computing tasks you might wish to perform.
Are there things I can’t do on this computer? Absolutely. It’s not great for: 3D rendering, contemporary scientific simulations (e.g. weather, nuclear), or playing triple-A first person shooter games made in the last decade. Sometimes you actually need more power. Of course, I get it!
But what I can do on this old thing is edit documents of arbitrary size in real time, develop software, perform enormous mathematical calculations, process billions of records, and generally perform any action you’d expect to be able to do on a room-filling nation-scale supercomputer laboratory 30 years ago. Again, I posit this is enough for most home computing needs!
In a loose way:
Cray then == Celeron now
We live in an era of unbelievable computing opulence. Running "old" computers keeps them out of the landfill and entirely side-steps the artificial need to purchase frequent replacements.
Running older computer hardware can make it harder to do things that are distracting (games and YouTube) while being more than capable of doing things that are productive and fulfilling (writing, art, building projects).
I feel like there’s something profound about that last part, but I’ll let you come to your own conclusions.
About the drawings and such
In this cursed year 2026, I’m adding more drawings to my posts. And below every single one, I’m writing a little bit about the drawing so that you know I drew it myself.
Short of taking pictures of my unreadable hand-written notes from my notebooks, I want you to know I WROTE THIS. I DREW THIS. These are actual thoughts from a person.
Sometimes I can dash something off same-day, but often I’m drafting, thinking, and incubating for a while. I think of things when I’m away from the computer (often at very inconvenient times) and I write them in my pocket notebook. I doodle. The doodles were always just for me but I recently realized that people might enjoy seeing them. So that’s where the drawings are coming from.