Platonic Programs

One of the important types of open source that doesn't get talked about
is what I call Platonic Programs, which are small programs that exhibit the
base level of functionality for some domain, but no more, and have small,
clear, and consise code. These projects have outsized impacts on the
ecosystem and yet aren't talked about that much.

For example, look at MicroEmacs, which not only has a string of
variants that are all named a variation of "MicroEmacs", but also EmACT,
Jasspa emacs, NanoEmacs, mg, and vile. My contention is that there's a
pletora of child projects of MicroEmacs not only because it was eventually
open source, but because the source code was simple and clean enough, and
the base set of functionality small enough that many people would look at
the code and think, "that would be my perfect editor if only they added X, Y
and Z, and the code is simple enough that I can see exactly how to add all
those features."

I ran into the idea of Platonic Program shortly after I wrote Robaccia,
which was an example of the rudiments of a Python web framework. I was
shocked by the uptake, including ports to Groovy, and inclusion in
academic class coursework. I'm not saying Robaccia is a quintessential
example of the Platonic Program, but after the experience I had with
Robaccia, I started to see similar patterns in other projects.

As for the future, I think Fogleman Minecraft has
a lot of potential, it takes a wildly popular paradigm and boils it down
to less than 1,000 lines of Python. I just scroll through the code and
think to myself, I could add X, Y and Z, and it would be so easy...