Procrastination Reveals Conflict
#18, February 9, 2025
I’m re-reading Neil A. Fiore’s The Now Habit to once again tackle my issue
with procrastination, which is still my biggest struggle concerning my
professional life. While few would describe me as a chronic procrastinator—I
handed in my Bachelor’s thesis one week early, and I even file my taxes on
time—there are some important things I do procrastinate. My internal process is
usually messier than the output I produce, and only I know the struggle
involved for achieving the usual good results.
Having read The Now Habit before, I struggled to implement the protocols
described therein. I had a hunch that one major issue, which probably not
applies to most readers, isn’t discussed in the book: unresolved or even
undetected conflict.
What I like about the book is that it avoids Freudian psychoanalysis; i.e.
questions like “What is wrong with me?” that only lead to more rumination
instead of productive action. However, one needs to detect possible underlying
causes to find proper countermeasures. In my case, the underlying issue is
conflict avoidance.
I won’t analyze the origins of this issue here, but I suspect that introverts
tend to be more conflict avoidant than extroverts, because arguing things out
with other people drains the introvert’s social battery, while just analyzing
the conflict doesn’t. (However, the avoidant behaviour of analyzing instead of
arguing provides the introvert with good arguments for dealing with the
conflict later. This could become useful, but only if the conflict is
revisited.)
One strong indicator for my hunch is that I hardly procrastinate in some areas
of my life, while I procrastinate a lot in others. Writing papers or finishing
school projects was never an issue, and neither is working on my personal
projects. Programming within an organisation, however, is sometimes a huge
issue. And as I reflect on the last 20 years, of which I spent most of the time
as a software developer in different companies, I can clearly see the
correlation between unresolved conflicts at the workplace and procrastination.
I love to program, but oftentimes I cannot get started. Once I think about a
task, all possible kinds of issues and eventualities start to unfold. This is
not bad per se, because my mind jumps on analyzing the task on autopilot, which
does neither require discipline nor willpower. Even avoiding the task for some
time can be productive, for my subconscious keeps dealing with it once I
internalized the problem to be solved. However, with all those stumbling blocks
I’m becoming aware of, I can’t start writing code in a carefree manner. I’m too
worried about all kinds of possible issues.
One issue I frequently have is not of a technical but of a social nature: Even
though I have a solution in my mind that makes sense to me, I already
anticipate the reaction of the other programmers working on the same code base.
I had a lot of annoying discussions following the pattern “Why did you do X
and not Y?”. Those discussions sometimes revolve around technical issues, but
usually just around personal preferences. While the former discussions are
productive and facilitate learning, the latter ones are just annoying.
Those kinds of discussions are rarely conducted using reasonable arguments and
counterarguments. Instead, appeal to—absent and anonymous—authority is used, as
well as vague statements along the lines of “nobody is doing it this way
nowadays” or, even worse, by yelling “Clean Code!”.
(Aside: The term Clean Code ist just as manipulative as Agile Software
Development. Just look for synonyms and antonyms for the adjectives “clean”
and “agile”. You cannot argue against “clean” and “agile”. Nobody wants “dirty”
code or “sluggish” software development.)
Let me illustrate the issue with an example.
Enterprisey Startup Prototype
I recently got in touch with a former co-worker, who founded a company together
with some of his current co-workers. My business partner and I agreed to help
them working on a platform they’re building. The goal is to figure out whether
or not we’d like to work together in the future. We invest little time, but if
both the collaboration and the platform look promising, we might get serious
about our collaboration. Until then, we’ll only invest a couple of hours per
week, which aren’t compensated financially.
In the first quarter of this year, the plan is to collaborate on a mobile
application, which is required to seriously tackle the market. I agreed to work
on the backend. The app is supposed to be a rough but working prototype. Since
time to market is crucial, the app is only a prototype, and the collaboration
doesn’t come with any obligations, the usual reasons for
procrastinations—perfectionism, fear of failure or success—do not apply.
However, after the first hacking session, I found myself procrastinating on the
project for multiple weeks. I first thought that I was still too busy for most
of January. I finally found an hour to work on the project yesterday. I
accomplished very little—and procrastinated my efforts once more. But I also
started thinking about the development process so far.
During the first hacking session, I wrote very rough backend code for a REST
API: basic CRUD operations against a NoSQL database. Since I was writing a
prototype, I wrote the most straightforward code I could; everything in the
controller function, that is. However, my former co-worker insisted on
separating the service code from the controller code. Being one step away from
the clichéd three layer architecture, we refactored the code, which is now full
of single-line functions that just hand their parameters over to the next lower
layer: filling in forms instead of solving problems, as if we were writing Java
code.
We didn’t argue that day, as we just wanted to go ahead and implement the CRUD
operations for the most crucial entities. And nobody had strong opinions
against splitting controller from service code, because we all did that before,
and it certainly isn’t wrong. However, it was rather pointless, and there was
no good reason for the additional indirection at that stage of a prototype.
The next week, my former co-worker announced some changes to the prototype. He
“challenged the code using ChatGPT”, as he said, and applied the suggested
changes to the code base. I shrugged it off, because I just wanted to figure
out what my next tasks were supposed to be, and I’m mostly indifferent about
architecture discussions during the prototyping phase: it’s all temporary
anyway, and it can always be changed. (However, I have a bias for the simplest
possible code structure when prototyping.)
So we put a list of tasks together, but I didn’t work on any of those until
yesterday. And I didn’t finish a single task, even though I had an empty
schedule yesterday in the afternoon. My motivation was completely gone. It felt
like a job now, just that I wasn’t going to be paid for it. So why bother? I
played the drums and listened to a podcast instead.
It was only this morning that I realized what was going on: My former co-worker
argued using appeals to an anonymous and absent authority. Of course one
has to separate the controller code from the service code, that’s how it is
done. Everybody does it like that. And there’s no arguing against ChatGPT—the
Single Source of Unquestionable Truth. However, it would be interesting to know
whether or not the word “prototype” was part of the prompt that was supposed to
“challenge the code”.
Not only was the code dragged towards an enterprisey direction, one tiny
refactoring at a time, but also did the technical decisions reflect the power
structures of the organisation rather than the synthesis of a discussion among
peers. Also, time wasn’t spent on finishing the prototype, but rather on
refactoring it while exercising power over the other developers.
My pragmatic decision of not pushing back (or rather: indecision) seemed
reasonable at the time. The goal was to finish a prototype quickly, i.e.
without wasting time on supposedly silly arguments. However, when I look at the
bigger context—figuring out if this collaboration is fruitful for both
parties—we’d better argued it out. Quitting my job to work for myself comes
with financial downsides. So at least I want to have the upside of working on
my own terms, or at least on terms that are acceptable for me. Working on
enterprisey code within an according power structure I can as well do somewhere
else, but with decent financial compensation.
Therefore, I should absolutely argue such issues out in the future. Such
conflicts are unavoidable, and can even be productive! The question is, how
those conflicts are carried out. Are we arguing as peers and are we capable of
compromising in a way that works for both sides, or is one party required to
concede all the time because the other party exercises power using appeals to
anonymous and absent authority or based on “owning” the project?
Will carrying out this conflict have an effect on my procrastination within
said project? If so, the resolution of this yet unresolved but no longer
undetected conflict will show.
Charlatans and Megatrends
#17, February 3, 2025
When you improve something, you start with a problem and think about various
solution approaches. Every solution approach requires actions, which, in turn,
require tools in the broadest sense. The tools are only a means to an end:
first comes the problem, then the solution approaches (plural)—and only then
you start thinking about which tools are the proper ones needed to implement
the most promising approach.
But I frequently observe quite the opposite: One starts with a tool, which
shall be used to resolve a problem. How the solution approach actually looks
like is neglected. The cart is put before the horse. But is taking the cart
even the best solution? Or is walking or just staying home maybe a more
reasonable approach?
So-called megatrends are often nothing more than a disguise for a bias to use
certain kinds of tools. Take Digitalization as an example, which is nothing
more than a bias to use computers over other tools to solve all possible kinds
of issues. If it’s digital, it must be good; using computers is good. The
actual problems to be solved are hardly analyzed. Solution approaches not
involving the respective tool aren’t even considered. The solution space is
heavily restricted right at the beginning by the tool that shall be used.
A charlatan first has to convince his customers that they have a problem, for
which he has the proper solution—or the proper tool supporting that solution.
Again, first comes the tool bringing forth a solution approach, which then only
needs to be argued into the gap between the supposed problem and a desired
solution.
Since the argument starts with the tool, the charlatan’s offer has to support
the solutions to a vast set of problems. As snake oil in the Wild West
supposedly cured gullible customers from all sorts of ailments, megatrends as
Digitalization, Artificial Intelligence, and the Blockchain (at least
until five minutes ago) bring forth the tools supporting the only possible
solutions to all our educational, economical, ecological, and societal
problems.
Charlatans do not care about solving problems, they just want to sell a
product. If those products contribute to a solution in any capacity, or if
their use is even harmful (notwithstanding the opportunity costs of trying
them) is nothing a charlatan looses sleep over. Just sell the solution, and let
the customer deal with the problem: this is how to make a lot of many fast.
Be wary, if…
- somebody wants to sell you a tool,
- this tool supposedly solves all kinds of different or even unrelated
problems, and
- you first need to be convinced that you actually have a problem.
You might be dealing with a charlatan—or a megatrend.
More Thoughts on Minimalism
#16, January 29, 2025
I wrote about why minimalism works and new year’s resolutions don’t the other
day. Since then, I was thinking more about the underlying reasons. There
are different aspects that contribute to the effects observed: The process,
the insight, and the result.
The Process
Last Saturday, I was getting rid of cardboard, paper, and some electronic
equipment I could neither use nor sell. I usually rent a car roughly once every
three months, pick up all the things I’d like to get rid of at home, and drive
to the waste disposal facility, where I can dump everything for free.
Driving there with a full car and returning an empty car is quite a relief. But
why wait three months until renting a car for that drive becomes reasonable? If
I only wait for three weeks instead of three months, I’d have much less to
dispose of, and could actually walk there.
And so I did last Saturday. I had two bags of roughly 2-4 kg of cardboard each,
which isn’t heavy, but becomes tiresome to carry nonetheless if you walk nonstop
for twenty minutes. I also had a pile of paper, five old plates, and some
electronic equipment in my backpack to get rid of, so I carried quite some load.
Having thrown everything into their proper containers, I walked out of the
facility with two free hands and a backpack only containing the two folded bags
I carried the cardboard in. I could literally feel being relieved from a burden.
Walking back felt great, and I even discovered a small hiking trail leading from
the industrial area to the mall. (I of course never noticed that trail when
driving by with the car for the last two years.)
I only knew it the other way around: Going to the store with empty bags and
returning with a load of heavy groceries, but looking forward to the meals I’m
going to prepare. Walking to some place to empty my bags not only didn’t cost me
anything, but it also felt better than returning with filled shopping bags.
Going out with full bags and returning with empty ones physically felt better
than the other way around; disposing felt better than shopping. Maybe I should
give impulse discarding a chance over impulse shopping, just for the
dopamine hit.
The Insight
I’m selling and discarding a lot of books now, mostly technical books. I usually
buy a print/ebook bundle, and often so with an additional discount code. So I
usually pay roughly $40 for such a bundle, with some additional shipping fees
that are reasonable when you buy multiple books at once. Here’s where it becomes
unreasonable: you add more books to your cart just to make the shipping fee look
reasonable, buying books you don’t actually need.
Due to this pattern, I accumulated quite a collection of print books on
programming and other IT subjects. Besides my Kindle, which is now almost 10
years old, but still does its job, I own a PocketBook InkPad with a large
display that allows me to read programming books quite comfortably. I just
discovered that I can upload my own fonts, and with a combination of the font
Bitter (which I also use on this page), Lato, and Fantasque Sans Mono, reading
technical books on that device finally became pleasure.
It’s pleasurable enough that I decided to get rid of most of my technical books
that I bought in a print/ebook bundle, only retaining the ebooks I can download
from the publisher’s website at a whim. I’m selling the respective print
counterparts on Ricardo, which is a Swiss platform similar to eBay. I offer
those books in auctions starting at the lowest possible price of CHF 1.- to make
sure I’ll get rid of them. If nobody wants to buy them, I’ll gift them to
friends and students—or I’ll just throw them away, for their market value is
empirically zero.
Doing so, my technical book collection is about to shrink to a reasonable size.
But what’s more interesting: I don’t feel the urge to buy any more technical
books! Those purchases no longer appeal to me, because I noticed how tedious it
is to deal with books afterwards: You either make proper use of them by
reading them carefully, nay, by working through them, which you can do at a
rate of roughly one book per month or less. Or you sell them, which takes more
effort then buying them in the first place—not accounting for the money to be
earned to pay for them in the first place. You can also just throw them away,
which is rather painful, especially if the books are any good. (Giving them away
as gifts doesn’t feel as good as many people describe it, probably because I’m
already used to giving books away, albeit ones that I actually read and won’t
re-read.)
It’s one thing to understand that you don’t need to buy any more stuff, but
it’s way more compelling to actually feel the pain of discarding things you
spent good money on. But where there is pain, there is also healing and relief.
I’m cured of buying books I don’t absolutely want to read. And while discarding
books, I also decided to retain some very good ones, which reveals my real
subjects of interest.
The Result
The result of decluttering is the most obvious and compelling reason for
minimalism: You end up with only the things you actually like. I no longer have
to think about which shirt I put on in the morning, I just take the topmost off
of my stack in the dresser.
The bookshelf is finally big enough to allow for random access to every book:
I no longer have to put aside a pile of books from the first row in order to
access the books in the second row; I can just pick a book single-handedly. And
I’m also aware of what books, clothes, etc. I own , so that I can make
productive use of everything I have.
However, those results are only temporary. Going through a round of discarding
books or clothes leaves me with the impression that I can’t possibly get rid of
any more things. A week or so later, I not only forgot about what I’ve thrown
out already, but I find new things I actually don’t want to keep.
Once you stepped over your initial loss aversion, you feel less and less remorse
when getting rid of things on which you lost quite some money, be it by selling
them for pennies on the dollar, or by simply throwing them away.
I always believed that minimalism works and improves your life. However, in
order to pull through, I need to understand the why of minimalism. I’ll
further think about the reasons behind its effectiveness, preferably while
carrying bags of discardable items to the dump—or rather while walking away
from there relieved of my burden.
Why Minimalism Works
#15, January 11, 2025
Minimalism is about getting rid of unnecessary items, so that you only have to
deal with the things that are really important to you. Discarding items is a
question of what to remove and what to retain.
New year’s resolutions usually focus on the what: exercising more, getting
enough sleep, finally learning how to play the guitar, etc. Sometimes, they are
also about the what not: stop smoking, less shopping, no more binge-watching,
etc.
The whats are often picked without knowing where the time and energy for
those activities is supposed to come from. And the what nots don’t answer the
question what to do instead, thereby leaving a void. And neither whats nor
what nots say where you’ll be getting the necessary willpower from.
With minimalism, you go through your posessions and ask yourself: am I really
going to use this any time soon? If so, you retain the item, and become aware
of the thing you’d like to do in the near future. If you discard the item, you
not only have less clutter around, you also deprived yourself of an option,
which you no longer have to consider, thereby saving willpower by avoiding
decision fatigue.
When planning activities for a certain period, be it a day or a year, you not
only have to ask yourself what you are going to do, but also what you are not
going to do. I planned to revisit the programming language Clojure once again
in the first quarter of 2025. This also means that I’m not going to invest
any time into learning Rust, Haskell, or any other programming language during
that period. Every decision comes with its opportunity costs.
So don’t just decide on particular positive or negative resolutions, but always
also decide on its counterpart: When you decide to do something, also decide
what other things you won’t be doing. And when you decide to abstain from
certain behaviour, also define a proper alternative to fill the void.
This is not just some kind of neurotic game to fill in all the gaps of a
two-column table, but it actually clarifies the costs of things: Activities
require time and energy, so you’d better figure out what you’re willing to
sacrifice for it. Weaning yourself off of some bad habits requires a lot of
willpower, so you’d better make sure you have an enjoyable but less harmful
replacement activity prepared. It only works if you’re taking the time to
balance the equations before you try to get started with improvements.
Minimalism is very explicit about opportunity costs, for you probably can
estimate the value of any item rather quickly, and after discarding it, you’ll
also notice the value of the space that has been freed up. And unlike
addictions, you rarely ever think about going back by re-purchasing things you
just discarded. It’s rather like exercising: it feels a bit painful at first,
but after a short time, you’d like to repeat the experience by discarding more
useless stuff. You’ll also hardly remember what you’ve thrown out a couple of
days ago, so that any guilt of discarding supposedly “good” items vanished
quickly. And trust me: your ego is big enough so that you’ll not repurchase
items you just discarded, which would be an admission of your poor judgement.
As the Streaks Ended
#14, December 26, 2024
Today, two streaks are ending. First, I ended my Daily Frontend
Grind yesterday
by throwing out the mediocre book Essential TypeScript 5. The book doesn’t
give me anything the official documentation already does. So I stopped working
on frontend technologies after a consistent effort that started at the end of
September. Maybe I’d like to implement something useful now, so that the streak
can go on, albeit in a different direction.
Second, I suffered a lumbago while rowing today. I first wanted to pull through,
but I gave up after a bit more than 30 minutes and 7 kilometers into my daily
exercise. I probably won’t be able to row for two or three more days. A cold
back in September made me miss out a couple of days already. But since then, I
was consistent in my efforts, and even got up earlier since. (I used to get up
at 5:00 o’clock to row for 10 kilometers, now I get up at 4:30 to row for an
entire hour, which is roughly 13-14 kilometers, depending on my daily shape.)
Ending a streak always comes with some relief. The pressure is gone, and one can
start from scratch in a different way. There’s also a phase of relaxation that
helps to build up new excitement. Having worked through a mediocre TypeScript
book annoyed me beyond the field of web development; I actually no longer
enjoyed programming. With some distance, the motivation usually comes back after
a couple of days.
Two Days Later
Today, I already was able to get up at 4:30 again. I rowed for an hour and
managed to do 13.1 kilometers, which is not bad. I intentionally went slowly,
which still was painful enough due to the low temperature in my unheated
exercising room.
I’ll also continue in my programming efforts today, continuing the Emacs
tutorial and finally starting with Clojure again. So this short break really
helped a lot. Maybe I’ll even have something half-way intelligent to tell about
my efforts in the near future.
The False Things-Memories Dichotomy
#13, December 25, 2024
People are often using the Memories Instead of Things dichotomy, especially
around Christmas. While it’s true that hardly anybody around these parts needs
more stuff (they’d just buy it, if they’d need it), adding some extraordinary
memories doesn’t make for a good life either.
Tastes differ, and while some people (especially Baby Boomers, I guess) find it
enjoyable to spend time in Las Vegas or on a cruise ship, those pastimes are the
closest you can get to Hell on Earth in my view.
But it’s not about the choice of particular activities (or rather passivities,
for that matter): the highs you get from any particular activity just don’t
matter that much when you consider your life as a whole.
How do the memories of an exciting holiday make up for the misery of everyday
life in any way? Having just returned from a trip (and dealt with the laundry),
that next Zoom meeting full of midwits is still going to be soul crushing. But
at least it pays the bills, right? Especially those for your next trip to some
dream destination, for which you spend considerable time being trapped in an
airplane with annoying people you’d never ever let into your home.
The only thing that matters is your moment to moment experience of everyday
life. Many of those moments are going to suck, so you make them better suck in
ways of your own choosing. I rather get up at 4:30 every morning to spend an
hour on my rowing ergometer than to get up at 6:30 every morning to spend an
hour in a traffic jam. The former kind of suck at least makes me stronger and
more endurable, while the latter kind of suck just sucks.
Do heart attacks become more enjoyable with the memories of the last trip to the
Maledives still present? If the clichee is true that during a near-death
experience you see your entire life unfolding in front of you as a movie, that
video clip better be exciting! However, I don’t think this small retrospective
becomes much better by just trying to stuff in extraordinary events into your
life; not in a way that it’s actually worth it, at least.
So I’d rather have a life that sucks in the right way for me and avoid the highs
other people get from a few exciting weeks per year while hating their everyday
life, from which they absolutely have to flee time and again in order to sustain
it.
Digital Minimalism Challenges
#12, December 11, 2024
I comitted myself to an information diet during the month of December. I
was doing very good for the first week, and sticking to my plan felt easy,
almost too easy. However, I got sidetracked during the weekend.
First, I heard about a major upheaval in Syria through the Slack channel of a
company I’m working for. Even though this channel is supposed to be used for
work-related discussions, some major news will make it through it, which is
understandable.
I couldn’t resist the urge to check what was happening. I wasn’t spending any
time reading about the back story, because that usually makes little sense until
the fog of war is clearing. There will be more substantial information to be
read in a couple of weeks, so let’s read about that in January… or maybe not.
Second, I was a huge fan of Iron Maiden for now more than 20 years. Their
drummer, Nicko McBrain, decided to step back from touring with the band as of
last Saturday. I played the drums when I was young and picked it up again a year
ago, and Nicko McBrain really was and still is my drum hero for all those years.
I read the announcement on the official website of the band, which I visit once
in a while. However, I couldn’t resist the urge to check out a fan forum. I
spent only a couple of minutes there, because I didn’t care too much about
the speculations who’s going to replace Nicko, even though I already bought
tickets for the next concert in July. But since the announcement came out
before the last concert, I really hoped for a good final show, which I wanted
to check the next day.
The verdicts of the fans were unanimous: Nicko and the entire band finished the
tour with an absolute outstanding performance. I watched a couple of videos that
showed some impressions of that last show and Nicko leaving the stage for good.
I hope for a live album or some high-quality bootleg of that last show, so I
resisted to watch any further footage. I’m very happy that Nicko could step back
in dignity.
Fortunately, the new drummer was already announced a day later on the official
website, ending all the pointless speculations in the forums. I checked the
forum again, and the discussions were just the usual complaints. A couple of
forum members pointed out that Nicko’s replacement, Simon Dawson, was probably
already prepared to step in during the last tour. This was the reason why his
band (British Lion) was touring together with Iron Maiden. (Iron Maiden founder
Steve Harris is also the man behind British Lion and probably prepared Dawson
for his new duties for a long time.) Besides that useful insight, there wasn’t
anything informative to be found, and I didn’t waste any more time on that forum.
Third, I also checked out some news on Alpine Skiing. The last weekend must have
been great for the Swiss athletes, especially for the men’s team, which won all
three races in Beaver Creek. I watched a few videos about the races, but soon
noticed that I didn’t care too much anymore.
So that weekend was quite a setback for my digital minimalism goals. However, I
learned a couple of things:
- There’s absolutely no need to check breaking news for current events, no
matter how important they seem to be on a global scale. There is very little
reliable information, which is just repeated by every major and minor news
outlet. Wait until better minds have processed the information and did their
research, then catch up on what has happened, if you’re still interested in
it—which you probably won’t be.
- You don’t miss anything important if you stick to the official sources of the
things you really care about. In my case, this was a band’s official website.
If they have something important to announce, you’ll find it there. The
community’s speculations usually turn out to be totally wrong and worthless.
Wait for official information.
- With abstinence, harmful habits loose their appeal. Unfortunately, this isn’t
that easy for substance addictions like alcohol and heroin. But for mild
behavioral addictions, such as visiting a particular set of websites multiple
times a day, a couple of days of restraint can already work wonders.
With those lessons learned, I’m aware that I failed to abstain from the digital
distractions I set out to eliminate from my life. It’s also true that I broke my
protocols for no good reason. However, I also learned that my protocols (e.g.
sticking to official websites for information) are all fine, so my trust in
those protocols increased. This should motivate me to try harder for the last
two thirds of December.
Criticizable Thoughts
#11, December 2, 2024
A thought only becomes criticizable for others when it is written down. Having
an idea is cheap, writing it down less so: Deniability—“I was just thinking
aloud!"—is gone, and a thought can be scrutinized.
Once you’ve written something down and handed it over to others, you are
somewhat invested in it. Admitting that the idea was stupid comes at a cost.
One has to give the idea up and admit failure. This is nothing bad per se, but
not everybody is used to admitting failure. If you don’t like to admit that an
idea of yours was half-baked or outright bad, better don’t pass it to others in
written form.
The more you are invested in an idea, the harder it is to admit that it was a
bad one. People who just talk about an idea, but never put it down in writing,
don’t have to admit that it was bad, but rather can always claim that it was
just misunderstood. As long as the idea is only uttered verbally, one can say
that it wasn’t stated in full, and some crucial bits of it have been withheld.
Once written down, a certain completeness of an idea is expected. There are no
longer excuses that something wasn’t put down completely, for there are higher
expectations on the written word than on a casual conversation. One is expected
to go over what he has written down before giving it to others, thereby noticing
gaps to be filled in. A conversation can always remain incomplete, and it is
totally acceptable to continue talking about an idea later on. Contrary to this,
sending out a sloppy draft to others for serious consideration is rather rude.
Ideas can be discussed and further refined in brain-storming sessions and the
like. However, as soon as further action has to be taken to follow up on an
idea, it first needs to be written down to establish a common ground. This is
especially important if other people than the originator of an idea have to
act on it. Otherwise, those people can be blamed unjustly for “not getting the
idea” once failure becomes obvious.
Somebody who’s not willing to carefully write an idea down doesn’t want to be
criticized or held accountable for it. He probably is not convinced of his own
idea. An idea should not be taken seriously as long as its originator refuses
to write it down. The originator should also not be taken too seriously in that
respect, for he prefers fantasizing to thinking, and rather remains dwelling in
his cloud-castle than confronting criticism of the unwashed on the market-place
of ideas. Lofty ideas and cloud-castles are both made out of thin air after all;
neither of them can be grasped.
Digital Minimalism
#10, December 1, 2024
December is a good occasion for an information diet. Unlike with a new year
resolution for digital minimalism in January, I’d like to start the new year
cleansed from mental clutter. So I started my month of digital minimalism today.
I’m following the plan layed out in Cal Newport’s book Digital Minimalism;
more precisely in the third chapter called The Digital Declutter. No matter if
you call it an Information Diet, a Dopamine Detox, or a Digital Declutter,
the idea is to wean yourself off of optional online activities for a thirty day
period, after which you deliberately reconsider taking up some of those
activities—or to stay abstinent from them for good.
The key to the process is that on the one hand you only have to restrict
yourself for a very limited period of time, which makes it a lot easier. “I
will be allowed to binge-watch Netflix again after that thirty day period, just
not now.” sounds a lot more feasible than “I will never be allowed to
binge-watch Netflix for the rest of my life.”
On the other hand, chances are that you no longer feel the urge to binge-watch
Netflix after that thirty day period, because you got rid of that particular
addiction. Yes: those products have been carefully engineered by multi-billion
dollar companies so that you spend as much time on them as possible, which is
the subject of the first chapter of Digital Minimalism called A Lopsided Arms
Race.
Cal Newport emphasizes that you absolutely need to fill the void created by
abstaining from optional online activities, which use up a lot of our leisure
time. You need to pick up activities such as woodworking, exercising—and also
something you can do without special equipment or a lot of preparation. In my
case, it’s reading and writing to my daily dump. In December, I have a lot
do do already, so I won’t be bored anyway. I just need to fill those idle
minutes in between activities.
So what am I putting on hold for the rest of the year?
- Videos: I already kicked the YouTube watching habit earlier this year. Now
I’d like to be more consequent. I deliberately deactivated my YouTube
history, so that no recommendations are being shown when I land on the
website. I’ll continue to record videos for the classes I’m teaching, which I
review offline, but without a history, I won’t be pulled back into watching
random videos. One exception is watching movies in a social setting. Showing
video examples in classes is also OK, but I won’t research new examples for
the time being. (Most students’ attention span is below twenty seconds anyway,
so videos are not helpful to grab their attention any longer.)
- Social Media: I temporarely deactivated my LinkedIn account earlier this
year, and I don’t feel the urge to reactivate it. I’ll spend some time on the
German Debian Forum, for which I’ll write a couple of articles in December.
I’ll also participate in the discussions surrounding my articles, which is
kind of a duty for me as their author. But I won’t join any (political)
discussions in the Smalltalk forum. Technical forums and StackOverflow are
OK, as long as they support my professional goals.
- News: I kicked the news checking loop habit almost two years ago. However,
I still follow some blogs, which often link to news stories. I refrain from
clicking on those original sources, except if longer essays from non-news
publications are linked to. However, I used to check those blogs multiple
times a day. Checking those blogs only once a day didn’t work, so let’s go
further down to zero checks per day, at least until the end of 2024.
- Books: I won’t buy any books this month, but rather read those I already
have, which are a lot. My worst addiction is buying books. Putting them on a
whish list, which I re-consider after a couple of weeks, saves a lot of money
and shelf space, because most books don’t appeal to me a couple of weeks
later. And I rather have those books on a whish list than on my bookshelf—and
the money rather in my bank account than in Amazon’s. I also must not check
the websites of technical book publishers, which I do a lot, even though they
just publish a new book once or twice a week.
- Games: I stopped playing video games earlier this year, but I just make it
explicit that I won’t take up that nasty habit again. Gaming makes it harder
to focus afterwards, makes me fidgety, and leads to poor sleep. And I
absolutely need some good sleep every night.
- Sports: No Formula 1 races, no Ski Alpine races—except in a social setting.
I wanted to wean myself off of Formula 1 for ages, which just wastes my
Sunday afternoons. The season will be over soon anyway, but I must not check
any news about the sport in the meantime. For Ski Alpine races, I actually
consider to gather some friends in my office space to have a good time
together with a couple of beers. It’s a lot more enjoyable to watch races
together, anyway.
I also set some rules for listening to music (not while working) and for online
shopping, but those aren’t the biggest problems.
I’ll be reading and writing a lot more during that time. And hopefully, I’ll be
more efficient and effective when doing my work, of which I have quite a lot to
do in December.
Rowing for 10 kilometers every morning at five o’clock is a very beneficial
habit. Since September 9th, I didn’t miss a single day. If I stay healthy, I’d
like to stick to it through the entire winter, except when spending the night
somehwere else, which is quite possible on Christmas.
I’ll also continue my Daily Frontend
Grind, which is
the activity following the rowing session (and the shower right afterwards).
Learning TypeScript isn’t the most intellectually stimulating activity, but I
just want to have that language available in my toolbox for the future.
I’m looking forward to start my new year with a refreshed and uncluttered mind,
which I’ll plan to fill with mathmematics and maybe the Elixir/Phoenix
tech stack—and with a lot of good literature.
Four Quadrants of Activities
#9, November 24, 2024
Our activities can be classified into four quadrants. The x-axis shows how we’re
feeling during an activity, and the y-axis shows how we’re feeling after the
activity. Both axes range from feeling bad—left/bottom—to feeling
good—right/top. A z-axis showing how we feel before the activity is not
considered for the sake of simplicity.
The four quadrants are enumerated from top-right counter-clockwise, which gives
us the following categories:
- Quadrant I: Activities we enjoy doing and make us feel good afterwards.
- Quadrant II: Activities we don’t enjoy doing, but make us feel better
afterwards.
- Quadrant III: Activities we neither enjoy doing nor make us feel good
afterwards.
- Quadrant IV: Activities we enjoy doing, but make us feel bad afterwards.
Activities of quadrant I are pure pleasure. Those are playful activities we
voluntarely do, like actual playing or having sex. However, the joy produced by
those activities decrease quickly (under the law of diminishing returns), and we
need to find other activities to do. It’s almost impossible to fill one’s day
only with purely enjoyable activities, which explains why idle billionairs are
so miserable.
Quadrant II encompasses effortful but rewarding activities. Exercising on a
level that yields health benefits is not enjoyable, but makes us feel better
afterwards. We need to put up with a certain amount of pain in order to reap the
benefits of such activities. Focused learning or productive work belong to this
quadrant, too. Ideally, we enter the state of flow, turning work into play
(quadrant I). But the state of flow can only be entered after some initial
strain and therefore is rather to be seen as the reward for a phase of hard
work.
Nobody likes to do the activities of quadrant III. Unfortunately, a big part of
our education and working life takes place in this quadrant. No matter how well
we organize our lives, we have to spend some time doing activities of this kind.
However, if we can reap some reward from the most tedious work, a quadrant III
activity can be turned into a quadrant II activity.
First Insight: If we start with an activity that feels awkward, we still might
turn it around to become a rewarding endeavor. If we’re happy with the result,
we also judge the strenous process in a more positive light. Mindset and
organisation are to a large extent techniques to turn quadrant III into quadrant
II activities.
Quadrant IV contains activities that feel good while doing them, but make us
feel bad afterwards. Drugs are the most obvious example. Spending time on social
media, which arguably is a drug, feels the same. However, it’s the dose makes
the poison: A dinner party with friends benefits from a couple of drinks, but
once you surpass a certain threshold (let’s say: more than five to seven
drinks), the evening might become a bit more enjoyable, but the next day less
so. Quadrant IV activities always come with remorse.
For a lot of people, watching TV is a quadrant IV activity. After a long time of
abstinence (now 17 years in my case), the activity itself doesn’t feel good
anymore, but rather nauseating. The same is true for social media or following
the news, after one has stopped using them for a couple of years. Video games
probably were the worst offenders in my youth. They completely overexcite us,
which not only makes it impossible to do any meaningful things for the rest of
the day, but also cause bad sleep, ruining the next day.
Second Insight: Weaning yourself off of quadrant IV activities reduces their
appeal.
Conclusion: Quadrant I activities are enjoyable, but not sufficient for a good
life, which requires mostly quadrant II activities. With the right mindset,
quadrant III activities can be turned into quadrant II activities. Quadrant IV
activities are harmful, but loose their appeal when abstaining from them.
Mathematics, Language, and Programming
#8, November 21, 2024
I haven’t been writing a lot recently, but I read a couple of
EWDs out of frustration. I’m seriously
thinking about reading either A Discipline of Programming by Dijkstra himself,
or The Science of Programming by David Gries, which is accompanied by a
foreword written by Dijkstra. When I read something written by Dijkstra, I
always agree with him—as far as I understand the subject he’s writing about.
One quote from EWD
498 always
comes to my mind when programmers complain about the relative importance of
languages in the school curriculum… and about math, of course:
Besides a mathematical inclination, an exceptionally good mastery of one’s
native tongue is the most vital asset of a competent programmer.
I am a very poor mathematician, but unlike many other programmers, I am not
proud of it. I have a mathematical inclination, but a very limited knowledge.
However, I understand that mathematics can help us tremendously in software
development, even if it’s just the simplest math. A couple of examples:
- I cringed when Kent Beck wrote about “All of the tricky code for rounding to
three decimal digits […]” in the introduction to Test Driven Development:
By Example. The code is not tricky, it just requires simple arithmetic. If
you’d like to round a money amount
x
to, say, a granularity of 0.05, just
multiply it by 1/0.05 (i.e. scaling it up), round it, and divide it by 1/0.05
(i.e. scaling it down): round(x*(1.0/0.05))/(1.0/0.05)
. It’s a literal
one-liner. What bothers me is not the word tricky, because this one-liner
can be considered an arithmetic trick, but the word “all”, which certainly
is indicative of a significant amount of code having been written to solve
this petty issue. - I worked for a company that presents summarized textual content interspersed
with quotes from the original text. Layouts used to be done manually, with
quotes in the margins. For the web version, especially for the mobile
application, the quotes had to be displayed in between paragraphs. The
simplest solution was to just tuck them in between the topmost paragraphs,
until there were no quotes left, leaving the gaps between paragraphs empty
further down below. I figured out an easy solution by calculating the
paragraph-quotes ratio (one quote after every
n
paragraphs), and then
counting up a floating point variable while displaying the paragraphs, adding
that ratio to the counting variable after each gap. Whenever the variable
surpassed another whole number, a quote was due for display. Again: only
addition, division, and rounding was required. - For a time-tracking software, I had to figure out how to perform a proper
holiday computation, which is a bit tricky when the workload of an employee
changes during the year, especially when holidays were already taken in that
year. I walked away from the computer, used a combination of the whiteboard
and pen and paper to figure out a formula to compute the amount of holidays
left. Thereby I realized that the formula could be simplified, eliminating a
couple of parameters such a function would require, reducing the amount of
data that needs to be loaded from the database, and thereby improving
performance before writing a single line of code. Once more: addition,
subtraction, multiplication, division, and a few simplifications on
high-school math level solved the problem.
What’s most remarkable about these mathematical solutions is not that they are
complicated in any way, but that nobody working on that codebase came up with
them, even though the underlying issues caused significant pain and weren’t
resolved for quite some time.
So having a mathematical inclination can be a far cry from being mathematically
proficient. Somebody who is mathematically inclined just considers a
mathematical solution to a programming problem a possibility that has to be
investigated before resorting to trial-error programming done so often. In that
sense, I am rather mathematically inclined.
English is not my native tongue, and I’m well aware of my limitations. This text
probably contains a couple of mistakes, both gramatically and orthographically,
and its style certainly could be improved by any high-school English teacher.
German is my native tongue, but even there a good high-school German teacher
would be able to point out mistakes in my writing. However, I am probably more
proficient in writing German than 95% or even 99% of the general population,
because I read at least a dozen books written in German per year, and I also
write almost every day. Therefore, I also tick the second of Dijkstra’s boxes:
an exceptionally good mastery of one’s native tongue. Maybe I’m just the
one-eyed man in the country of the blind, but one is compared to his peers,
after all.
So I have the most vital assets of a competent programmer, now I just have to
become that kind of programmer Dijkstra would consider competent. The question
is: how to become that competent programmer I’d like to be?
Tackling The Science of Programming right away probably is a bad idea, because
it introduces both new mathematical techniques and its application to
programming problems. I’d rather learn about mathematical techniques before, and
just then tackle their applications to programming.
Concrete Mathematics by Knuth et al. is certainly a good introduction for the
kind of mathematics needed in computer science. With its roughly 450 pages, it’s
considerably longer than The Science of Programming. It featuers exercises on
six difficulty levels, of which I only consider doing the ones of the lower two
or three levels: I’d like to become a mathematically inclined, competent
programmer, not a mathematician, after all.
I always saw mathematics as an exercise in purification of the mind. It also
purifies solutions for everyday programming problems, which then require far
less testing than solutions built-up using the programming by trial and error
paradigm that is so prevalent nowadays.
I must not forget to read good texts in my native tongue alongside. However,
English is programming’s native tongue, so reading good English texts certainly
is helpful, too. Morris Kline’s Mathematics in Western Culture, which is also
recommended by Dijkstra in multiple EWDs, would certainly make for a good
accompanying read.
Paul Graham on Intelligence and New Ideas
#7, November 16, 2024
In his essay Beyond Smart, Paul Graham
argues that intelligence is a precondition but not sufficient for having new
ideas. Summarized:
Einstein wasn’t just smart, but had important new ideas. Intelligence isn’t
enough for high achievements. Discovering new ideas is more desirable than
being smart. The idea that intelligence is the most important quality is an
illusion fed to us since childhood. Having new ideas was historically less
important than winning in conversation thanks to superior intelligence. What
additional qualities are required for having new ideas? Unlike intelligence,
many of those qualities can be cultivated. Once you accept that intelligence
isn’t the most important quality, new possibilities arise. There’s no
consensus about what matters if it’s not just intelligence. An obsessive
interest in a topic is an important quality. Being independent-minded, which
is related to intelligence, is another one. Working on your own projects and
overcoming obstacles is a good technique. Other qualities are most prevalent
in youth: enough sleep, good health, a lot of free time, little stress and few
responsibilities. Writing ability allows you to discover new ideas by writing
about them. The gap between intelligence and having new ideas is not a
wasteland of unrealized potential, but a resource for new discoveries.
Again, the ability to write stands out as one of the qualities than can be
cultivated. The other ingredients—health, sleep, the lack of responsibilities
and stress—are life-style choices that require prioritizing. (Earning less to
have more time is a hard tradeoff to make.)
The essay is the perfect text form to discover new ideas. I don’t know if the
word has a latin origin—and since this is an essay, I don’t bother looking it
up. But essayer is a French verb that means “trying (out)”, so an essay is a
text in which the author tries out new ideas as he writes. Paul Graham again:
[Y]ou don’t think of the ideas first, and then merely write them down. There
is a kind of thinking that one does by writing[.]
While summarizing the essay, particularly the paragraph about having an
obsessive interest in a particular topic, I had a realization that is linked to
the optimistic tone of the essay: What if I could turn my most important
annoyances into a career? I’m clearly annoyed by the way so-called “knowledge
workers” approach their work on a daily basis. This bothers me, because I’m
constantly pulled into their ways of doing things, which prevents me from
cultivating habits for undistracted, deep work that I value so much.
I suffer from this through my entire working life of more than 20 years. Why
wasn’t I able to turn this annoyance into something meaningful? Changing the
behaviour of other people is next to impossible, and working alone or only
together with a few select like-minded people… well, I actually didn’t try that
out yet. I actually had to stop in the middle of the sentence here to reconsider
the issue.
If I would like to have good ideas once in a while, maybe I just should keep
clear of people that don’t share my views on how to organize one’s work. Other
annoyances to be avoided are business people that incessantly follow each trend
of the year, e.g. adding AI to every product (and conversation) in 2024, or
using a blockchain for anything in 2021. They might be good customers to a snake
oil salesman, which is not the career path I’ve chosen.
I founded my own company so that I could be in control of my time and pick the
people with whom I work together. The mode of working could become a
selling-point: I’m not jumping on the AI bandwagon, nor will I spend my days in
video conferences that achieve nothing; but I’m offering focused deep work hours
for actual problem solving.
The way I worked on this essay looks antiquated: I copy the original essay in a
text file, add some YAML-header for the meta data, then I convert the text using
Pandoc (using the troff filter) to a nice but simple PDF, which I print out. I
read the essay once and highlight the most important passages. On the second
reading, I summarize each paragraph with a single sentence. When I’m done, I
start a new essay by first summarizing the text I’ve just read.
This might not be the most efficient way to summarize the text, but it’s
certainly the most effective way, because it lets me get into writing mode
afterwards, while my mind is already charged with new ideas that already have
been processed three times in different ways—reading, summarizing paragraphs by
hand, summarizing the entire text at the keyboard. Most other people would
rather summarize the text using some AI tool and then stare at the screen with
no idea what to write about it. Very efficient, but totally ineffective.
This might be another quality for discovering new ideas: Replacing efficiency by
effectiveness. Rather go deep the hard way than stay shallow the easy way. Real
knowledge work requires depth, and depth requires effectiveness instead of
efficiency.
Edsger W. Dijkstra: A Counterpoint
#6, November 15, 2024
In the short documentary Discipline in
Thought, Edsger W. Dijkstra
compares two different composition styles:
There are very different programming styles. I tend to see them as Mozart
versus Beethoven. When Mozart started to write, the composition was finished.
He wrote the manuscript in one go. In beautiful handwriting, too. Beethoven
was a doubter and a struggler, who started writing before he finished the
composition and then glued corrections onto the page. In one place he did this
nine times. When they peeled them, the last version proved identical to the
first one. That iterative method of programming is somehow a very Anglo-Saxon
custom. British education is pervaded by it. People learn, when they write,
not to try to get it right the first time. Just write what’s on your mind and
then rewrite repeatedly to get the product you want. That’s partly why word
processors are marketed so aggressively and partly why they have been so
successful there. While it is one of the advantages of working with pen and
paper that when you start a sentence, you should have it ready.
Dijkstra sees the need to have the sentence ready as an advantage. The late
Dijkstra wrote his texts using pen and paper. A quick glance into the EWD
Archive suggests that Dijkstra
switched from a typewriter to his fountain pen (the Montblanc Meisterstück) as
his main writing device in the early 1980s.
For Dijkstra, the process of writing is about bringing a finished thought to the
page. He clearly is on the side of Mozart in this respect. Paul Graham seems to
be on the Beethoven side, as he suggests in Putting Ideas into
Words:
I’ll often spend 2 weeks on an essay and reread drafts 50 times.
Or in How to Write Usefully:
I’ve never tried to count how many times I proofread essays, but I’m sure
there are sentences I’ve read 100 times before publishing them.
Paul Graham is an advocate for LISP and bottom-up
programming.
How do you divide a program? The traditional approach is called top-down
design: you say “the purpose of the program is to do these seven things, so I
divide it into seven major subroutines.” […] Experienced Lisp programmers
divide up their programs differently. As well as top-down design, they follow
a principle which could be called bottom-up design—changing the language to
suit the problem.
Dijkstra, on the other hand, developed an operating system for a computer that
wasn’t even built yet. He had to get it right without receiving any feedback
derived from running a program on actual hardware. LISP programmers, in
contrast, use a REPL (read-evaluate-print loop) to get immediate feedback all
the time.
Having been born in 1930, Dijkstra received most of his education during and
after World War II. Back in those days, paper probably was rare and expensive.
So you had to use it wisely. Even though paper became cheap later on, Dijkstra’s
writing and thinking style was shaped under the idea that you should get it
right once you put in on paper.
He supposedly designed his algorithm for finding the shortest path between
nodes in a weighted graph (named after him as Dijkstra’s
algorithm) during a
coffee break:
One morning I was shopping in Amsterdam with my young fiancée, and tired, we
sat down on the café terrace to drink a cup of coffee and I was just thinking
about whether I could do this, and I then designed the algorithm for the
shortest path. As I said, it was a twenty-minute invention.
Not having pencil and paper available was not an issue to him, quite to the
contrary:
One of the reasons that it is so nice was that I designed it without pencil
and paper. I learned later that one of the advantages of designing without
pencil and paper is that you are almost forced to avoid all avoidable
complexities.
Again, Dijkstra sees a constraint as something positive. He wrote and published
the paper three years later. He also thought about the shortest path problem a
long time before, but he didn’t bother writing about it until he solved the
problem.
This stands in contrast to Paul Graham’s publication style (again from
How to Write Usefully):
When I proofread an essay, there are usually passages that stick out in an
annoying way, sometimes because they’re clumsily written, and sometimes
because I’m not sure they’re true. The annoyance starts out unconscious, but
after the tenth reading or so I’m saying “Ugh, that part” each time I hit it.
They become like briars that catch your sleeve as you walk past. Usually I
won’t publish an essay till they’re all gone—till I can read through the
whole thing without the feeling of anything catching.
This approach can be described as debugging into correctness, whereas Dijkstra
proofed correctness prior to writing and programming.
Having grown up with cheap paper and computers, my habits are more on Graham’s
(or Beethoven’s) than on Dijkstra’s (or Mozart’s) side. It would be interesting
to figure out if the two composers approached writing music differently: Did
Beethoven work bottom-up by starting with a couple of nice tunes that he put
together to great symphonies? And did Mozart start with a grand idea from which
he worked down to the melodies? And most interestingly: How did Johann Sebastian
Bach, whom I consider the most important composer of all time, approach his
compositions?
Arguably, both Beethoven and Mozart—and both Graham and Dijkstra—created great
works and influenced their fields of expertise. So there’s no “right” or “wrong”
approach, at least not judging by the outcome. I like to listen to Mozart’s and
to Beethoven’s music. And both Graham and Dijkstra wrote essays that I learned a
lot from.
Mozart is considered a genius, a Wunderkind. In the field of computer science,
Dijkstra is considered a genius, too. When one thinks of a genius, people like
Einstein or Mozart come to mind immediately; Beethoven less so, even though many
consider him a genius. And while Paul Graham’s work is highly influential, it is
only so in the rather narrow field of IT startups and LISP programming.
Mozart did work hard on his compositions, and so did Dijkstra on his algorithms.
But most of their work supposedly took place in their minds before they put it
onto the paper. Maybe the genius just has a bigger working memory. The need to
switch to paper comes up much later in the process. A genius knows how to
organize his thoughts better without laying them out physically before them.
And he’s obviously not afraid to loose them.
Not being a genius, I feel quite comfortable developing my thinking while
writing. Thinking about a problem for a long time just creates loops in my mind
rather than insights. Even though I bought a Montblanc Meisterstück a couple
of years ago, I’ll never become a Dijkstra. However, writing with that pen lets
me be especially careful. It’s a good contrast to my usual jotting down my
thoughts. And the result looks rather nice, even with my awful handwriting.
So I won’t try to adopt Dijkstra’s or Mozart’s style; this simply won’t work out
for me due to my rather limited mental capacity compared to those geniuses, and
I simply was brought up with the iterative method due to the availability of
cheap paper and computers early in my life. Even back in school, we wrote all
essays twice: One draft and one clean copy, of which the latter was handed in.
So I’m feeling quite comfortable editing my texts multiple times before I submit
them to my website. And I’m fully aware that probably nobody is going to read
them. I write for myself, but I don’t like to read my name next to typos,
grammatical mistakes, and poor reasoning. And I won’t be ashamed for publishing
corrections, which I’ll make obvious.
For me, writing—and thinking—is more about the process, and less about the result.
Separating the Thought from the Mind
#5, November 13, 2024
Holding a thought in your mind and inspecting it at the same time is hard. Just
thinking the thought already requires working memory. Thinking critically
about it at the same time is probably too much mental strain for a non-trivial
thought. The obvious solution is to write the thought down.
Writing not only frees up working memory, it also creates a distance between the
thought and yourself. A thought held in your mind is still a part of yourself. A
thought written down as a proper sentence is a separate object. It could have
been written by you, or by any other person. (Re-reading one’s old texts often
feels strange, because there was—hopefully—a further development of one’s
thoughts in the meantime.)
As mentioned in the post about Putting Ideas into Words, improving a text
requires reading it with the eyes of a pretended stranger. This is easier with
written words than with thoughts held in your mind for the reasons stated above.
Improving a text improves the phrased out thoughts. So it is more effective to
write a rough thought down and further develop it as a series of written words
than to improve a thought directly in the mind.
Thinking while walking is a habit held in high esteem by many thinkers. Taking a
walk to think about an issue is also something I like to do. But I notice that I
often tend to get stuck in a loop of thoughts rather than further developing it
as I walk. Walking is beneficial in many ways, and I wouldn’t want to miss out
on it. But to get more out of a walk than the exposure to fresh air and sun
rays, I need to think more effectively while walking.
However, I don’t want to carry a notebook with me while walking. A better
approach would be to write down my thoughts before the walk, quickly review
what I’ve written before I leave the house, and then think intensely about what
I’ve written during the walk. As I return home, I shall immediately write down
my thoughts and insights gained from the walk, thereby further developing them.
Paul Graham: Putting Ideas into Words
#4, November 12, 2024
I wanted to follow up on yesterday’s idea that proper thinking requires writing
down one’s thoughts. I found an essay written by Paul Graham called Putting
Ideas into Words, which is exactly about
this issue.
Quickly summarized: Writing about something reveals your incomplete
understanding of it. It changes your ideas and uncovers misconceptions. The
ultimate test is reading what you’ve just written with the eyes of a stranger.
Hardly anybody thinks perfect thoughts that can be put into writing unchanged,
at least not about non-trivial subjects. However, some ideas, especially within
precisely defined domains, can be formed completely in one’s head; but usually
those are rather paragraphs than entire texts. The need to explain an idea in
writing puts unconcious knowledge to conscience. Writing might not be the best
way to improve one’s understanding of every subject, but it always helps.
Writing is the steeper hill than talking, because it lacks tone and voice, but
allows for and requires more iterations. Thoughts that aren’t put under the test
of writing are incomplete. Writing is not a guarantee for right thoughts, but a
precondition.
In my first post, I mentioned that Socrates was known for not thinking
very highly of writing. This conflict is now resolved: one could also improve
one’s understanding of an idea by talking about it, but:
Less can go unsaid when you don’t have tone of voice to carry meaning. And you
can focus in a way that would seem excessive in conversation. I’ll often spend
2 weeks on an essay and reread drafts 50 times. If you did that in
conversation it would seem evidence of some kind of mental disorder.
We simply no longer argue on the city’s marketplace but rather on the Internet,
which is often called a marketplace of ideas. One could argue that tone and
voice could be conveyed in some limited ways through the written word, even
without emojis. But the main point is that phrasing gives our thoughts a shape
that allows them to be put to the test. Listening to an audio book or to a
podcast might be more convenient, but re-reading the same passage over and over
is certainly more convenient than re-playing it multiple times. The difference
is not so much about the written versus the spoken word, but between a raw
thought and a carefully crafted sentence.
As usual, Paul Graham hardly comes up with hard evidence in his essays. He
rather appeals to the reader’s own experience and to common sense. This puts the
burden of proof on the readers, who then have to watch out for evidence in their
everyday experience. I certainly plan to do so in the future. Case in point: I
didn’t know what to write about Graham’s essay before I summarized it, even
though I read it multiple times prior to that. The thoughts only came to my
mind when I reviewed my own writing on the page. One could argue that my
thoughts are still incomplete, but now I can see evidence for the claims:
writing about the essay shaped my understanding of it.
Less Input, Better Digestion
#3, November 11, 2024
In modern times, the ratio of received input to produced output has shifted in
the direction of more input. Probably output increased also, but not in the same
magnitude as input.
It began with the printing press. Soon, there was more material printed every
day than could be read in a lifetime. Newspapers, radio, television, and the
Internet overwhelmed us with input, so that nowadays there’s more information
produced in every second that could be processed in a lifetime.
We have a similar issue with food, at least in the first world: There’s way more
available than we could or should consume. There are more people dying from the
diseases caused by excessive eating than due to malnutrition or starvation, at
least in the first world.
So we decided to restrict our food intake both in quality and quantity. And it
becomes increasingly clear that we also should restrict our intake of
information. Quitting or at least restricting social media usage is one option.
Not following the news is another strategy. And so is leaving away all kinds of
digital entertainment from video platforms to gaming. I ditched the news for
good almost three years ago, am no longer to be found on any social media site,
didn’t play any games for half a year now, and very rarely watch videos. So far,
this has at least been a time saver. Unfortunately, my ability to focus hasn’t
increased considerably, at least not yet.
Most people have a tendency to fill every idle minute with digital input, and so
do I. This is a bad habit, because there’s nothing useful to be gained from such
short bursts of the usual low-quality, easy-to-digest content. It also has the
tendency to turn idle minutes into wasted hours or evenings.
I often have this issue when teaching classes. Sometimes, there is just nothing
to do for me, because all the students are working, and the instructions are
clear enough for the students to cope without my help. So how can I fill this
downtime? I could just stand or walk around and wait until there’s something to
do for me. This is a good strategy during most classes, where issues usually
pop up within minutes. But for some classes, especially during exams, there are
long stretches with nothing to do, rarely interrupted by a single question.
So instead of reading email, checking something on the web, or starting
something to work that I won’t bring far anyway, I tried to do just nothing. And
doing nothing is hard in an otherwise busy environment on an otherwise busy day.
Usually, thoughts pop up: I need to buy groceries after class; there’s a book
I’d like to check out; there’s a blog post I started reading in the morning but
couldn’t finish reading; etc.
So I wondered: Why don’t I just write all those thoughts down? And so I did. I
created a private Git repository called “dump”, for which I create a single text
file for every day, e.g. named “2024-11-11.txt” for today. And in the text file
I write everything down that comes to my mind. I no longer use idle minutes to
check something out, I use this downtime to write something down.
The best strategy to let go of a thought is to write it down somewhere.
Everybody who writes grocery lists knows this: Once you wrote that bottle of
milk down on your list, you no longer have to think about it—and you no longer
will! This constant writing dump is a very good device to let go of thoughts.
And if there’s an original thought once in a while, I could look it up in no
time using a full-text search.
The idea is not to create sketches for essays, but just to fill the idle minutes
with writing instead of reading: less input, more processing: better
digesting. And writing is an activity to process one’s thoughts. Thoughts are
unstructured fragments made up of words, but they are not proper sentences. Once
you write them down, you have to really think through them. Writing adds more
nuance. When you think “students don’t read properly nowadays”, then it’s just a
random thought. Once you start writing it down, you wonder: “only these
students here, or students in general?” and: “just nowadays, or how was it
during my time as a students?”.
A written word has more weight than one solely existing in your mind. It
reflects back from the page or screen and makes you think. Writing down a
thought is a way to actually finish the thought. Thoughts come in fragments,
writing comes in sentences.
This leads me to an interesting hypothesis:
Proper thinking requires writing down one’s thoughts.
One could argue that “writing” could be replaced by “speaking” in the hypothesis
above, for it also requires phrasing: making sentences out of connected words.
But the subject of this blog is writing, so I’ll stick to that hypothesis.
I already noticed how writing down my random thoughts—instead of filling idle
minutes with more input—calms me down. There’s less noise in my mind, and more
room for focus. Furthermore, writing 1000 words a day, which is my average so
far, is a good exercise. (I write my daily dumps in German, but this blog in
English; polyglotism is supposed to be a good strategy to postpone dementia.
Which reminds me to pick up French and Russian again…)
Now I wonder if this frequent writing will improve the quality of my thinking.
If not, it will at least improve my ability to write reasonably well.
The Experiment
#2, November 10, 2024
This blog is supposed to be an experiment. I’d like to practice three skills:
reading, thinking, and writing. First, I must read some material worth thinking
about. Then I must think about what I just read. And then I must write down my
thoughts. I’d like to do this every day, even though it’s the busiest time of
the year.
Building up my concentration is a project I can no longer postpone. I was able
to build up some considerable discipline in many areas of my life, e.g.
programming Rust every single day for more than half a year without missing one
day, or getting up at 5 o’clock a.m. consistently and row for ten kilometers on
my Concept2 ergometer.
However, when it comes to work, my discipline and concentration all of a sudden
vanish. Maybe it’s the environment, maybe it’s the cognitive dissonance I feel
when doing work for other people, or maybe it’s a lack of stamina when it comes
to unpleasant things to do. (Rowing at 5 o’clock in the morning with a hangover
after three hours of sleep is unpleasant, but in a different way.)
This blog is supposed to be a documentation about my efforts. I don’t know what
I’ll write—and read, and think, for that matter—about, but most important is the
consistent daily effort.
I just finished reading Cal Newport’s Deep Work, probably for the third time
in the last couple of years. However, this time I marked a lot of passages. I
did so because I’d like to summarize this book. But this time I’m not trying to
write the usual neurotically comprehensive book summary about it. Instead, I’ll
read a part of a chapter, think about it, and then combine the author’s message
with my own thoughts about it. I’d like to write short essays.
This blog was created using Hugo. I first wanted to pick a minimalistic blog
theme, but even the simplest ones seemed too bloated for my efforts. So I wrote
my own minimalistic template, which doesn’t even support taxonomies. The only
navigation feature is the anchor for each post next to its publication date,
e.g. #2 referring to this post’s title.
If the page will get too long after 20 posts or so, I’d like to include
pagination. But there will always be full blog posts displayed; no separate
article pages being teased on a landing page. Pure simplicity. The only luxury
is the font being used: TeX Gyre Schola, which weights ~200kb. It’s not the
perfect font, but it has everything I want: serifs rendered nicely on a display,
a nice italic style that can be combined with bold, and it looks rather bookish
and conservative.
The Idea
#1, November 10, 2024
Paul Graham’s short and sober essay Writes and
Write-Nots strongly resonated with me:
Maybe writing is the next big thing, not despite the fact that it can easily
be replicated using AI tools nowadays, but because of it: When everybody is
delegating writing to AI tools, nobody will be capable of doing it on its own in
the foreseeable future. And because clear thinking requires clear writing, as
Paul Graham claims, only those who can write will be able to think in the
future.
[W]riting is thinking. In fact there’s a kind of thinking that can only be
done by writing.
This claim seems shaky, especially when one considers Socrates, who didn’t hold
writing in high esteem. Paul Graham usually does not elaborate on his premises
in his rather short essays. But let’s accept this premise for the moment.
If writing and thinking will become rare skills, those who are able to write and
think will have huge benefits in the future. Those benefits will become clear
within a generation, say, in 15-25 years, when those using AI tools for every
task will establish themselves in the workforce.
So the next big thing isn’t AI (or Blockchain, or Big Data, or DevOps, or Cloud
Computing), it’s thinking. Investing time in reading (to get new material for
thinking), thinking, and writing is the ultimate long-term bet.