Happy New Year!
In June of 2021, I stepped away from full-time employment to focus on research. Over the last six months, I've been scouting the territory, trying to understand what "doing research" means, searching for valuable problems/questions, and getting to know the other folks who are on this journey. While I haven't narrowed down to a single research problem I want to invest the next several years into, I have learned some valuable things that I look forward to pursuing in 2022.
I wanted to share some of my learnings in case they might be helpful to others who want to chart a similar path through this unmarked territory.
First off, a reminder of the focus of my research:
I believe the computer is a medium for thinking. My goal is to make the computer a more expressive medium so that humans and computers can think better, together.
(image and concept credit Kanjun Qui from her post Research as Understanding)
I began the journey with what felt like a daunting definition of research: "asking good questions and formulating precise experiments to answer those questions." But how does one ask a good question? What makes a good question? What kinds of experiments might be appropriate for answering a question?
This framing put me in a bit of a tailspin, to be honest.
Reframing research as merely learning new things that no one else understands yet was tremendously helpful for me! It's one continuous process! You're not "learning" one moment and then you change processes in order to "research" something. It's just the same thing. The resources you have available to learn from change when you've moved beyond the current boundary of human knowledge, but the impetus is the same: seeking to understand something.
Framing research as learning helped focus my questions: What do I believe should exist in the world? Is there a technical reason it doesn't exist yet? What is that reason? What are the limits of the technology? What remains to be invented? I could merely follow my passion for what should be and seek to instantiate it.
How to spend my time and attention also became obvious. The last few years I've been studying how learning works, and I've gotten to use those tools to pursue deeper understanding. My time is spent reading broadly and deeply about the topic, talk to other experts, synthesize my understanding through writing, and building prototypes to test my theories.
I wrote a bit about this concept, and I have found it to be foundational for my understanding of the computer as a medium for thinking. In order for my research goals to be realized, I need to at least define my terms!
A medium is simply a way of representing thought. Ted Nelson's definition has become my go-to:
"A medium is a set of presentation elements, and relations among them, that may be used by a person to create an object, environment or experience for someone else."
The term "tools for thought" gained a lot of attention in 2021. But what are tools exactly, and how do they differ from mediums? Tools employ one or more mediums to help someone get stuff done. Tools abound, but the invention of new mediums are exceptionally rare. Andy M and Michael N explore the reasons for this in How can we develop transformative tools for thought?.
Is a computer a medium or a tool or both? My current hypothesis is that the computer itself is not a distinct medium, but rather an environment with the capability to represent a wide variety of mediums, which are embodied through tools.
Except, what is programming? Are computer programs a distinct medium?
Clearly I have more thinking to do on this subject!
I believe that one of the ways computers can be improved to help people think better is by improving the collaboration experience.
To explore that thesis, I spent a few months working with the Croquet team, learning and building applications with their framework. Croquet makes it delightfully simple to build applications with multiple real-time collaborators. You know what turns out to be surprisingly hard? Nailing the UX of those applications. We have decades of user experience paradigms in our software that assume a single user is using the application. Think about it: the single-user desktop application user interface is fifty years old!
When you have multiple users interacting with an application simultaneously, many of the assumptions of a single-user interface no longer make sense. Simple things we take for granted like undo, moving items around, deleting items, all take on a new level of interface complexity when collaborating in real-time.
Figma, Google Docs, and other tools are beginning to explore collaborative interfaces, but it all feels very early. The fact that it works at all is incredibly powerful! You can see the magnetism that these types of applications have for people. In the future, I believe people will begin to expect and demand that nearly all software is real-time collaborative.
Today, the richest collaborative environments are physical spaces, such as in front of a whiteboard. We have a long way to go before real-time collaboration in software approaches the collaboration possible in a physical space. I believe it has the possibility of surpassing what is possible in a physical space.
I wrote a draft called "Collaborating with the Invisible" where I explored the problem via analogy and began laying out possible approaches to explore. This seems like an important problem and I intend to continue pursuing this in 2022.
So there you have it! Three lessons from six months of independent research. In 2022, I plan to continue with independent research into extending the capabilities of the computing medium.
It's been almost two months since my last update. My wife and I were welcoming this beautiful girl into our family and spending the holiday season adjusting to life with a family of six.