---

title: "The infinite coast of problem solving"
author: "Thomas Wilson"
date: 2021-06-13T19:48:00
slug: "2021-06-13-infinite-coast-of-problem-solving"
draft: false
tags:
  - lexicon
  - design
  - product
---

I’m currently designing and building the lexicon, ambitiously explained as “the most useful language learning resources in the world”.

The problem is that there’s a lot involved in that, you know? There’s theoretical questions like “what does most useful mean?” and “how do humans learn languages”?

Then there’s small problems like “what is the shape of the JSON I send to the client?” and “how do I generate prompts & questions for language learning?”.

I’ve been thinking about these problems, in some capacity, for legitimately years. So it’s no wonder that I come to them with so much gusto.

A lot of the questions are nebulous. “Best” is subjective, and learning is a spectrum. Proposing theories and ideas is okay, but making something and finding out is even better.

The questions are big, and important to me, and so I don’t want an imperfect solution. The tech has to scale, the processes have to be automated, everything has to be _just so_. I’m building tools for problems I haven’t encountered but know I will encounter. Or would encounter, if I just got on with the work.

Problem solving is fractal. Every step you propose to get from A to B has a whole subset of steps if you look at it closely. If you’re not careful it goes from A -> B, to A1 -> A2, to A1.i -> A1.ii.

It’s like how [the coastline has theoretically infinite length].

What I’m saying is that this week I challenged myself: no code, just design. Just product problems and questions. No infinite coastlines, no cartography.

So I made some designs. They’re down below. This is what happens when I ask the question “what could the future of language education _actually_ look like” and then demand a concrete answer from myself.

![the lexicon dashboard](/assets/blog-images/2021-06-13/dashboard.png)

![guessing a word](/assets/blog-images/2021-06-13/guess-empty.png)

![guessing a word with answers](/assets/blog-images/2021-06-13/guess-answers.png)
