published: August 15, 2021 - last updated: August 28, 2021
In the digital age, almost all media have completely changed shape. Previously in order to share any kind of work with the world, it had to be permanently "published" in some physical form, from paper books to CDs to paint on a wall. This meant the creative process had to be relentlessly focused on that act of publishing; all creative endeavors had to come to some discrete stop in order to be shared.
The digital reimagining of media then introduced some improvements. The creative process isn't truly discrete, but ongoing and iterative. Being required to stop creating and freeze some precise artifact permanently into a physical medium was a painful constraint. No creative work is ever truly finished.
So in the digital world we have almost entirely moved towards streams of media rather than artifacts. Streams are implicitly infinite and unfinished, and so are a pretty good fit for iterative work. This isn't a hard and fast truth of course: individual items in a feed must be discretely published, but often even then they can be edited after the fact. But it's difficult to deny something hasn't fundamentally changed.
But I feel we still haven't found the right equilibrium. Discrete physical publishing is too constraining yes, but streams aren't constraining enough. Streams are a very uncomfortable place for the human psyche, and unlike the intimidatingly permanent process of physical publishing, they do nothing to encourage caution and rigor. It seems very likely the problems of modern digital anxiety and ever-worsening shallowness of online media are results of streams.
But we don't have to choose between never-ending iteration and careful rigorous curation, we can have both! We just have to reintroduce edges into our work, prioritize authoritative resources, and fully embrace version control systems.
Craig Mod (opens new window) is a very insightful designer and author, and I'm gratefully stealing the concept of media edges from him. Edges are nothing more than the intentionally designed points of completion in any piece of media, the points at which there's no more left and you have to intentionally switch to something else. In losing these edges we lost something very important. Craig says it better than me, so I'll simply quote from his 2012 article How magazines will be changed forever:
Forget everything we know and love about physical magazines. Forget their length. Forget their size. Forget their weekly or monthly publishing schedule. Forget all these qualities except for one: What it’s like to come to an end, and to take a deep breath.
Like Newsweek, almost all magazines will trend pure electric. This shouldn’t surprise anyone. Already, nearly 40% of tablet owners read digital newspapers or magazines, with nearly 10% doing so daily. Still, as I watch this shift, I can’t help but feel a twinge of nostalgia. Not for the paper, but for the boundaries.
I miss the edges – physical and psychological. I miss the start of reading a print magazine, but mostly, I miss the finish. I miss the satisfaction of putting the bundle down, knowing I have gotten through it all. Nothing left. On to the next thing.
- Craig Mod in How magazines will be changed forever (opens new window)
Edges are much more natural to the human mind than streams. They allow us to calmly focus our attention on what's in front of us, moving forward toward a well-defined goal. The goal itself might still be immense and demand a herculean effort, but by clearly seeing the edges we are reassured in pushing along. Edges don't just signal to someone they can finish something, they invite them to do so. We're much more likely to finish a book than watch every video on a youtube channel or read all of someone's tweets. A book author has edited their work for you rather than forcing you to edit by being selective, and they've therefore been much more considerate and helpful.
But there's a hidden irony in Mod's specific use of the magazine as an example of something with edges: magazines were still published in streams! Despite an individual issue having clear and permanent edges, the magazine is still a stream that eludes being comprehended in its entirety.
Streams have been with us for a long time in the schedules of magazines, television, radio, research journals, and many other formats. Despite being very convenient for producers, I assert they have never been the most ideal way to share information with the world. Streams lend themselves best to either simply facilitating an ongoing dialogue (which necessarily privileges those who are already all caught up), or to sharing things that don't really build on any existing knowledge (which necessarily means they can't dive deep enough to be useful).
An authoritative resource, in contrast, seeks to be the final word on a topic. A truly authoritative resource is the only one someone would need to completely understand a topic in exhaustive detail.
Of course creating such a resource is extremely difficult! In the pre-digital world is was almost impossible to really do, and projects like encyclopedias, dictionaries, and reference manuals were the only ones that even tried. Even thorough textbooks only bothered with the most settled and introductory path of a topic, and left the reader to plumb the scattered depths of the academic literature after they finished.
But in the digital world it is possible. If someone wants to learn the Rust programming language, they just have to read... The Rust Programming Language (opens new window), a digital book that seeks to cover every facet of the language, from installation to deep concepts to a few reference appendices. Such a book doesn't actually have to be truly exhaustive. Since it is digital it can be iteratively augmented and refined over time, and any newcomer gets the most up to date version without having to worry.
Digital media makes it tractable to create a final word on a topic, since "final" doesn't have to happen before a publishing deadline. A piece of digital media can instead converge toward exhaustiveness, and can do so with the help of possibly thousands of contributors thanks to the miracle of version control systems.
For those of you who don't already know what version control software is:
Version control is a system that records changes to a file or set of files over time so that you can recall specific versions later. For the examples in this book, you will use software source code as the files being version controlled, though in reality you can do this with nearly any type of file on a computer.
... It allows you to revert selected files back to a previous state, revert the entire project back to a previous state, compare changes over time, see who last modified something that might be causing a problem, who introduced an issue and when, and more. Using a VCS also generally means that if you screw things up or lose files, you can easily recover. In addition, you get all this for very little overhead.
- Getting Started - About Version Control (opens new window)
Version control software is amazing. It allows a potentially massive group of people to productively collaborate on a project, and to completely change every aspect of that project without losing any valuable information. Version control is a perfect fit for creating authoritative resources since it allows safe and productive evolution of a project over time.
Iterative media is my term for this way of working. If you seek to create an authoritative resource, with clear and obvious edges, productively and collaboratively built over time using version control systems, then you are creating iterative media.
I personally think embracing this model in more contexts could be transformative, and help us escape the modern hellscape of infinite feeds and low quality noise. I feel we long ago passed the point where more media, more content, was actually a good thing. The modern flow of new information seems more likely to be actively counterproductive. We don't need more information, we need less. More curation, more editing, more intention.
What is a blog for? Most loosely it simply provides a home for someone to publish things in a venue they completely control.
But really whenever we start a blog for anything, from ourselves to a company to a project, the blog is about helping people truly understand that thing. When we start a blog for ourselves we're hoping to share with the world what we care about, what we're working on, how we think. At its best, a blog is a "book of me", a resource you can hand someone to really understand who you are.
It's quite annoying to have old essays floating around on a blog that are completely out of date and don't represent you anymore. But at the same time it can be nervewracking to simply delete them, since in a real way they have some historical and personal importance. But if your blog is an iterative book you don't have to choose! You can either just delete the essay knowing it still exists in the version control history, or put it in a special section specifically for outdated essays.
The current status quo of academic research is to publish a stream of discrete papers as new advances are made. These papers are scattered across different journals and conferences, become obsolete or even incorrect as new research supersedes old, and rarely make any attempt to speak clearly to anyone but the existing expert class within that field.
I think this is a truly atrocious way to advance critical human knowledge. This workflow is the likely culprit that produces "Research Debt":
Programmers talk about technical debt: there are ways to write software that are faster in the short run but problematic in the long run. Managers talk about institutional debt: institutions can grow quickly at the cost of bad practices creeping in. Both are easy to accumulate but hard to get rid of.
Research can also have debt. It comes in several forms:
- Poor Exposition – Often, there is no good explanation of important ideas and one has to struggle to understand them. This problem is so pervasive that we take it for granted and don’t appreciate how much better things could be.
- Undigested Ideas – Most ideas start off rough and hard to understand. They become radically easier as we polish them, developing the right analogies, language, and ways of thinking.
- Bad abstractions and notation – Abstractions and notation are the user interface of research, shaping how we think and communicate. Unfortunately, we often get stuck with the first formalisms to develop even when they’re bad. ...
- Noise – Being a researcher is like standing in the middle of a construction site. Countless papers scream for your attention and there’s no easy way to filter or summarize them. We think noise is the main way experts experience research debt.
The insidious thing about research debt is that it’s normal. Everyone takes it for granted, and doesn’t realize that things could be different.
- Chris Olah and Shan Carter in Research Debt (opens new window)
As I mentioned earlier, streams tend to privilege those who are already caught up, and this is absolutely the case in almost all academic research fields. This slows down human progress immensely by wasting the time of students entering a field, and discouraging interdisciplinary work. Streams structurally ignore the valuable labor of distilling existing knowledge.
The goal of an Iterative Journal by contrast would be to give any newcomer an authoritative book with knowable edges to understand the field. An Iterative Journal would think about submissions not as discrete papers floating in a stream, but as pull requests (opens new window) which would:
We don't have to make people slog through a disconnected and outdated smattering of papers to understand a topic. Research journals can at least converge towards being authoritative and clear.
I'm a software engineer who does a lot of web development, so I'll eventually get around to creating some libraries/frameworks to make iterative books easy to create in the form of a website. Here are some technical thoughts for those interested:
nuxt/content(opens new window) focused on processing text documents are a perfect fit for this kind of site. Getting this idea working would be as simple as creating a template or plugin for such a framework.
myblog.me/1/posts/has different pages than
myblog.me/2/posts/), much like what is done in software documentation generators. A new version number would only make sense if you've broken old pages by removing or renaming them (this is the "major version" concept in semantic versioning), so we could avoid different version numbers for every tiny change. This would probably be fairly straightforward to do with nodegit (opens new window) to query old versions of the content tree and compare successive versions for compatibility.
Unfortunately for now I'm working on other things! I'd love to hear from you if decide to take a stab at this idea.
I hope this idea is as exciting to you as it is to me.
In parting, I invite you to read some of the essays that inspired this one: