Writing My E-Mails Like Code

Writing My E-Mails Like Code
Photo by Solen Feyissa / Unsplash

The improvements I experienced after rethinking the way I compose my e-mails.

I was annoyed with my inefficient e-mail conversations at work and wanted to change something. While not being a programmer, I like the logic of coding, which uses multiple conditions an algorithm to get tasks done with a minimum of necessary input, and I tried to achieve the same in my e-mails.

“The average interaction worker spends an estimated 28 percent of the workweek managing e-mail …” (Source), and I am no exception. I check my private e-mails after waking up, my work e-mails as soon as I arrive at my desk, and have outlook opened in the background, constantly replying to e-mails the entire day.

Reducing my e-mail time would significantly boost my productivity by allowing me to focus on “real“ work. I was motivated to optimise my relationship with this technology, and I found some great articles with tips on how to do so. They mainly focus on reducing the number of times I check my inbox, keeping an empty inbox, creating e-mail free zones, or batching the interaction with mails. (Article)(Article)

Implementing this advice already helped me, and I felt like I was getting more productive and relaxed at work. Multiple studies looked into the positive effects of reducing your e-mail time.

During one week, 124 adults were randomly assigned to limit checking their email to three times a day; during the other week, participants could check their email an unlimited number of times per day. We found that during the limited email use week, participants experienced significantly lower daily stress than during the unlimited email use week.


Then, a few weeks later, after I already forgot about most of my positive new e-mail habits, I started to learn to code. While going through the basics of a computer program, I was fascinated by the logical way code is structured; how, in the beginning, I had to think about every possible scenario that influences the progress. I have to consider possible paths, the parameters available and then find the shortest way to my desired outcome that doesn’t require any additional input along the way.

Isn‘t that what I do while writing e-mails?

The Problem With E-Mails

E-Mails are a prime example of my problem with the digital world. It is a tool that should make me more productive - but it doesn’t, and I feel like I’d be more productive without it.

As Cal Newport put it: “Email, as a technology, is not intrinsically bad. But the unstructured workflow it engenders is disastrous. We need to fix it (...)“ (Source).

“Accompanying the rise of this technology was a new, unstructured workflow in which all tasks — be it a small request from HR or collaboration on a key strategy — are now handled in the same manner: you dive in and start sending quick messages which arrive in a single undifferentiated inbox at their recipients. These tasks unfold in an ad hoc manner with informal messages sent back and forth on demand as needed to push things forward“


Without any thought given to their impacts, e-mails were just thrown into the mix of existing tools. I didn’t think about a strategy for using this tool before making it a part of my daily workflow. Overflowing, unorganised inboxes that demand my constant attention are just the symptoms (which can be treated by the tips I discovered), but they are not the cause.

In another article for the New Yorker Cal Newport says “we’ve accidentally deployed an inhumane way to collaborate.” (Source) He goes as far as suggesting the elimination of personal e-mail accounts at the workplace.

But, not everything is bad, and e-mails bring many advantages that, in my opinion, outweigh their shortcomings. Sharing tasks and information with multiple persons across different companies and referring to them later is just one point I don’t want to miss. I often hear that inefficient workflows can be fixed by using a phone instead, but if I’d only rely on phone calls, I could never go back to a mail to double-check the task I am supposed to do. I am not trying to remove e-mails from my workflow, but I want to implement them in a way that utilises their advantages.

How Coding Can Help

Photo by Christopher Gower on Unsplash

When writing code, I have to consider all available information, required inputs, tasks and sub-tasks that have to be done, and every possible way things could go. I have to define a goal in advance and write an algorithm that takes care of every possible way to get there before the program starts.

And this is precisely how I want my e-mails to be.

When composing my first e-mail, I know my desired outcome, yet I have to write additional mails at every step along the way. Couldn’t I apply the logic of coding to eliminate these inefficient conversations?

The Necessary Basics

Don’t worry; you don’t have to write code - nobody would understand your mails anyways. I only want you to understand the logic on how code is structured. Computer-code uses commands to tell the computer how to behave, and today I will tell you about the most basic (and surprisingly easy) ones: if, else, and while.

if & else

The if-operator simply states that an action has to be carried out if a condition is true:

if (condition) {
  //  do this if the condition is true

When the condition is not true, the else-operator can be used to tell the computer what to do instead:

if (condition) {
  //  do this if the condition is true
} else { 
  //  do this if the condition is false

It is even possible to work with multiple conditions:

if (condition1) {
  //  do this if condition1 is true
} else if (condition2) {
  //  do this if the condition1 is false and condition2 is true
} else {
  //  do this if the condition1 is false and condition2 is false


The while operator allows an action to be repeated as long as a certain condition is true:

while (condition) {
  // do this

All Together Now

The while operator allows an action to repeat as long as a specific condition is true:

while (condition1) {
	if (condition2) {
  	//  do this if the condition is true
	} else { 
  	//  do this if the condition is false
// do this after the while-loop is completed

One thing that surprised me when I started coding is that the language used inside the code is very similar to the way we speak. If, else, and while work the same way inside a code as they do in e-mails, which means that I can use the same logic I use while coding to optimise my mails.

Applying This Logic to E-Mails

Using the logic I learned from coding in my e-mails means I have to think about my desired outcome and possible obstacles along the way before hitting send - that’s all. If I do this and compose my e-mail in a way that takes care of every possible question, I eliminate the need for additional conversations.

In general, each process follows the branches of a decision tree. When not giving enough input, the people have to ask for additional information whenever the path splits. But if I send instructions on how to act at these points (like I learned from coding), I eliminate these additional e-mails.


Scenario: A company is waiting for a delivery of goods.

while (goods are not here yet) {
	call supplier every 2 days

	if (delivery is delayed by 2 month) {
		cancel order and order at second supplier

if (quality is ok) {
	stock the goods

else {
	send back

Now, I only have to put this code in full sentences, and I am good to go.


I have used this technique for a few weeks now, and the results are pretty good. The number of useless conversations went down, but I still kept the advantages of e-mails. Sadly, my coworkers are no computers. They won’t print out my mail and follow it step by step but will come back at me with questions and suggestions, which is good because they have something valuable to say every now and then - and I don’t want to miss these conversations.

Applying coding logic is not about eliminating all conversation - it is about constant improvement.

My new e-mail technique is one step towards a more efficient relationship with technology, and that is what the Digital Oase is all about: using the good parts while avoiding the bad ones. Applying the logic of coding made me think about the way I implement technology in my life. I am more mindful of the impact of e-mails on my productivity and can improve it with just a few changes. In the end, it is not about writing code but about stopping for a second and think about the most efficient implementation of e-mails in my day. This way, e-mails work for me and make me more productive.