TermKit is a novel, interesting design for a terminal architecture, based on mime-typed data streams. The designer’s explanation of the system is clear, readable, and well thought out. The idea of a terminal-style computer interface which actually takes advantage of modern datatypes and graphics hardware looks really appealing through his point of view, and there are lots of screen shots.
In the meantime, we’ve gotten a lot better at displaying information. We’ve also learned a lot of lessons through the web about data interchange, network transparency, API design, and more. We know better how small tweaks in an implementation can make a world of difference in usability.
And yet the world of Unix is rife with jargon, invisible processes, traps and legacy bits. Every new adept has to pass a constant trial by fire, of not destroying their system at every opportunity it gives them.
So while I agree that having a flexible toolbox is great, in my opinion, those pieces could be built a lot better. I don’t want the computer equivalent of a screwdriver and a hammer, I want a tricorder and a laser saw. TermKit is my attempt at making these better tools and addresses a couple of major pain points.
In my ongoing imaginations about the operating system I would design if I were to build everything from scratch, I’ve toyed with the idea of some kind of hybrid command line / graphics interface, some kind of new terminal which is aware that it is operating on a bitmapped display… this TermKit project looks like someone had a similar idea and then actually did the work of figuring out how to make it practical. Now I want to play with it and see how it feels in practice.