Exchanging Problem Sets

Eoin McMillan
sourcetable
Published in
6 min readAug 26, 2020
Photo by Rémi Jacquaint on Unsplash

Problem sets are the sum of the challenges, opportunities, trade-offs and quirks that arise in a particular vocation, direction or circumstance. As constant as life is changing, so are our problem sets. Thus, we are constantly “exchanging problem sets”.

I have found this frame of reference to be particularly helpful when choosing between ideas, careers, or other important decisions, because it incorporates upsides, downsides and the unknown. Problem sets aren’t necessarily good or bad; just different. They provide a lens through which to see our movement through the world as an exchange, not just a progression.

In practical terms, when considering exchanging problem sets we can ask some fairly straightforward questions:

  • “What are the current problem sets?”
  • “Will this direction improve the set of problem sets?”
  • “Are these problems better or more interesting than the last set of problems?”
  • “Will solving these problems create a large amount of good or substantially more value than other available problem sets?”

Example problem sets

  • Start a marketplace: face chicken and egg problem, high initial costs, difficult to balance liquidity, high competition with winner-takes-all dynamics, venture capital requirements, aggregator economics, strong network effects once established.
  • Start a small farm: high life satisfaction, strong sense of community, long hours, delayed retirement, exposure to myriad natural forces, high labor costs, perishable goods.
  • Become a teacher: low pay, strong sense of community service, potential for early life-changing impact on others’ life direction, uncompensated overtime, long holidays.
  • Leave a stable boring job to join a startup: expose oneself to an uncertain but interesting future. Or put financially: trade predictable revenue for lower short term revenue and potential windfalls.
  • Get promoted into management: gain leverage (output), focus on strategic or human-centered problems, exchange vantage points, be responsible for hiring and firing decisions, cease working as an individual contributor (e.g. no more coding), maintain a manager’s schedule.
  • Leave the city to escape a pandemic; expose oneself to bushfires!

Other perspectives on problem sets include James Carse’s Finite and Infinite Games (are problems zero sum or positive sum?), Paul Graham’s essay on Fashionable Problems (unfashionable problems often have enormous surface area for value creation), Andrew Wilkinson’s set of Anti Goals (create structure to avoid the things you don’t want to do), and the more management-driven approach to Hogan testing (position yourself to never work on things you are bad at, and prioritize working on problem sets you are gifted at solving). Yet another framing is to look at problems in the context of our own mortality.

Startups

One of my favorite things about working at a startup is the learning curve. The speed required to pick up new skills, solve problems, and ship daily is of a completely different pace to life in the corporate world.

Whatever the job description, there are almost certainly some common constraints between startups: there are never enough resources, there is never complete certainty, and there is never enough time. One of the guaranteed problems people face at any fast-growing startup is that there is always a knowledge or skills gap between where they are and where they need to be.

The good news is that solving these problems requires rapid learning and constant personal growth. In other words, these are great problems to have!

Exponential problem sets

Unfortunately, no matter how much you learn and how fast you grow, there is an uncanny dissonance that can arise between solving problems (win!) and finding yourself with even more problems than when you started (wait, what?). In the best case scenario of a successful fast growing startup, success begets success, growth leads to more growth, and all of a sudden we can find ourselves with more problems than can ever be handled by an individual, or by a team, or even within a lifetime!

Even for the best at their craft, the “multiplying-problems problem” can create a nagging feeling that never goes away. Unsurprisingly, the more we care about our customers, the worse the feeling of guilt that can accompany rapid growth and the tradeoffs that come along with it.

This is a challenging problem set with no complete solutions. Welcome to managing entropy.

Truffle pigs

The Greek philosopher Heraclitus ruminated that “the only constant in life is change”. The same can be said for problem sets. The most we can hope for — indeed where we should aim — is good problem sets.

By way of example, programmers relish solving the hardest bugs. To an outsider, the perversity of slamming one’s head into a wall with no tangible reward for hours or days (or worse) while in the process of debugging a system can be inaccurately perceived as deeply dissatisfying labor. But to programmers — or certainly the good ones — really hard bugs represent the best class of problems! They are non-obvious, require creativity to solve, and the act of solving them develops mastery over a craft that is deeply satisfying.

Like truffle pigs seeking exquisite treasure amidst piles of excrement, the best programmers want to wallow in the hardest problems. They also know that undocumented spaghetti code (to use an exaggerated smell test) is unlikely to prove fertile ground for the kind of bugs they relish.

(Sidenote: fun bug stories! [1], [2])

Networked Information: a category full of great problems

One problem I repeatedly come back to is asking “how do we make it easy for people to connect with information, at scale?”. I like this problem for a multitude of reasons: It is complex enough to have depth and breadth, along with novelty and staying power. It is versatile enough to have many viable solutions across different industries (search, SaaS, marketplaces, etc.). And perhaps most importantly, it consistently sets up a scenario to create more value than you capture, which I believe is proximate to doing good. This makes for an endless source of intellectual and moral energy, and grittiness, whilst minimizing the spectre of opportunity cost.

Another reason why connecting people with information at scale seems to make for a good problem set is that it is a observably magnetic challenge: it tends attracts interesting people for large periods of time into working on it. Whenever talented groups of people — especially engineers — get together and form a cauldron of focus around the right category of problem, the conditions are ripe for magic to happen.

Good solutions to networked information problems have a tendency towards creating non-linear returns, which makes a great focal point for mission-driven teams. Foremost examples include the Internet and the Web, search engines, social networks, Wikipedia, Amazon, and a myriad of protocol technologies. By contrast, RSS is perhaps the most lamentable failure; it solved the networked information problem but failed to also solve the ease-of-use problem, thus never reaching the true scale for which it was destined.

An interesting newcomer on the scene is Roam — a networked documents platform with high potential: Roam is attacking the bidirectional hyperlinks problem, while creating utility for individuals (n=1) as well as groups (n = many). They have laid a strong foundation that maximizes their optionality into the future. All good things that have evolved from picking the right problem set to work on.

Speaking of spreadsheets…

Closer to home, I’ve been asked why I chose to start a spreadsheet company, of all things. The answer is straightforward: spreadsheets are one of the few applications used by over a billion people, yet for the most part they remain an unnetworked information system. Despite valiant efforts by our forebears, they have retained a pre-internet culture that is as stubborn as it is relatable: accessing data in a spreadsheet is still far too hard for most people. Until this experience problem is resolved, spreadsheets will never live up to their full potential as a dynamic information ecosystem and will continue to fall back to the lowest common denominator of static paradigms, CSVs and versioned Excel files.

Perhaps more interestingly, spreadsheets are hard to build, unappealing to most people, require a tedious amount of attention to detail, and fixing the data experience problem alone requires a degree of vertical integration that is, frankly, arduous. Better yet, to most people they look like a solved problem, so why even bother? In short, spreadsheets are a great problem to work on!

On a personal level, spreadsheet problems fit squarely in my founder/market crosshairs since they are a product and a platform full of networked information problems. It’s turtles all the way down, and an endless source of energy.

If you are an engineer who believes that the future of spreadsheets is spreadsheets, we’re hiring, and would love to talk with you.

In summary

We are constantly exchanging problem sets. Being cognizant of that fact can prove interesting and even helpful as a framework for decision making.

--

--