Experiments >

Code editor with elastic typing

Experiment #257th March, 2021by Joshua Nussbaum

I added support for easing functions that are elastic. Elasticity is a challenge because the cursor can move backwards, which means issuing a backspace event.

It took a bit of work, and it hindsight, may not be that useful. But I still learned something important from it.

It was hard because of 2 reasons:

  1. My code was hard to debug. Once I added better support for debugging (outputing data), I solved the problems quickly. It’s a good reminder that when debugging gets tough, it’s a signal to stop debugging and change the code to make it easier to debug. Brute force debugging never works.
  2. This codebase has become a set of integrated experiments. But it’s important to experiment in isolation to limit the variables. Otherwise everything slows down.

Integration is a key part too, and could be thought of as it’s own experiment. Just need to be careful to keep intergration intentional.

I will try these methods going forward and see what happens.

Here’s the code:

joshnuss/svelte-codemirror-test@fa2ef57

Here’s what it looks like:

view all experiments

Stay tuned in

Learn how to add more experimentation to your workflow