EmacsConf2021: Emacs as design pattern learning
I will be giving a talk at this year’s EmacsConf2021 that was an indirect exercise in considering the new wave of programming that is upon us.
We know that in AI, state-of-the-art R&D is trained on different language sets – like human language – and then tested to see whether these models can translate to different models. E.g. c.f. Azeem Azheer’s very comprehensible exploration of how language models can be extended to biology. Azeem also has a book out.
As a philologist, I am particularly interested at the idea of there being a baseline similarity between human language and biology.
It is precisely such findings that confirm to me that I need to establish an explicit systems-/design-theory approach in the advanced undergraduate course I teach. For ethical reasons, the design pattern approach must be made explicit.
I try to make the importance of a design pattern learning approach clear in my talk. But I also try to reach out to my colleagues to show how Emacs is the most sustainable software for teaching.
My talk emphasizes the importance of Emacs’ free core. While I first thought this was of rudimentary (obvious) significance, it turns out that it needs to be stated explicitly in more advanced contexts, which I am not competent to do except philosophically. For example, where the extensibility of text editors has been rediscovered as a boon, Vi is being extended in VSCode. But VSCode is not free software. This means that extensibility will always be limited.
Disclaimer: the critique here is not on Vi or VSCode users but on anyone who is concerned about Gell-Mann Amnesia plus Stiegler’s warning that that we don’t make it our job to produce digital therapy through non-toxic social and artificial tools and organization. I also keep wondering whether and how we can bring into being better ideas. At the moment, we have a choice – we can cultivate general computing, for example. But we may look back on this age one day and be shocked by how much freedom we had – and went on to squander.
Emacs at once teaches us design pattern learning and models it, and stands as a tool for further free design pattern learning extensibility. Please note that this point is not new. For example, it was covered again this week in irreal’s post on Why Emacs.Also, my conference video was created through hacking through what turned out to be bug #1231 in Kdenlive, and I am only a consciously incompetent programmer. The experience only confirmed the view of my talk:
- A design pattern learning approach only further cultivates learning, even where it encounters obstacles;
- The inevitable challenges are priceless experiences in life learning …
- … These experiences are extensible beyond Emacs.