A Brief History of KOM Originally written in 1992--1994 as a prelude to my documentation on one of my own KOM clone implementation attempts. -- MC, mc at the domain hack.org. The KOM systems are a whole family of different conferencing systems with one thing in common; the user interface. They all derive from one program, called KOM, that was written in MACRO-10 by Torgny Tholerus for the PDP-10 way back in the 70s. The orginal idea of the KOM system came to Torgny as he was editing his paper zine "Anarkisten" (Swedish. English: "The Anarchist") which was an open bulletin style zine --- anyone could send in texts and everything was guaranteed to be published. Since Torgny was the sole editor, there was a lot of work and he could not keep up with the texts that kept coming in. When he eventually started working as a programmer at QZ, the Stockholm Computer Center, he wrote the original KOM system. The system allowed a user to subscribe to any number of conferences, which could hold a large number of text entries ordered in subject threads where single entries within a subject had reply-links to each other. The system kept track of the number of entries in these conferences the user had read and presented the entries to the user in threaded order instead of chronologically. The user was first presented to an original entry in a subject, the one starting the subject thread, then the first reply to this text and the reply to this reply. Then the system went back and checked if there are more replies to the original text and showed them in the same way. As you can see, it was some kind of recursive thread reading. This was all new back then, but can be found in a lot of news readers and BBS programs nowadays. However, the KOM user interface was also something new. Or rather, it was the user interface of the TOPS-20 operating system transfered into a conferencing system. In this interface the user could execute any command at all times; there were no different levels within the system and all commands were instantly available. There were completion on all commands and parameters, so a user just had to type as much characters necessary to make the command unique in the current context to have it executed. Instead of showing menus the KOM system suggested a command for the user. For instance, if the user just had read an entry with replies, the system would suggest that the user read the next reply, like this: (Read the) next reply - The '-' meaning that it expects you to either press return, to accept the suggested command, or to give another command, any command. The command executed if you do press return is called '{\tt next reply}', but the words within paranthesis are added for clarity in the suggestion. If you instead decide to give the command '{\tt skip}' at this moment, all the replies to the entry you just read will be marked as read and you will be presented with a new text and a new prompt. This is a small made-up session log describing how a typical KOM session might have looked like: What is your name? = mi c Mikael Cardell Lysator Password: You have 1 unread letter. You have 2 unread entries in forum. You have 6 marked entries. There are 22 other people present. Mikael Cardell Lysator - 1 unread. (Read the) next letter - Text 4711, 1993-01-17 23:41, from Helena Cardell Recipient: Mikael Cardell Lysator Subject: Babies You are now the father of a sweet little boy! (4711) (Go to the) next conference - Forum - 2 unread. (Read the) next entry - Text 114711, 1993-01-16 14:52, from Lars Aronsson A reply to text 17 by Lars Willfor Recipient: Forum Recipient: The nonsense conference Subject: Nothing in particular Just writing along... (114711) Reply by Lars Willfor in text 26262 (Read the) next reply - The original KOM was immensely popular among computer scientists and military researchers at the Stockholm University and the Swedish Military Research Agency (FOA). Later, when the system was opened to the public a lot of people from the early personal and home computer clubs learned to love KOM. The system was then released to the academic community free of charge and was spread to a number of large universities in Sweden. So, it came to be that a lot of people liked the original KOM and tried to ``port'' it to micro computers so they could start a KOM of their own. Of course, this were no real ports, but re-writes in a high level language. One of the first ``ports'' were, naturally, called MicroKOM and ran under CP/M. Later, KOM systems appeared for MS-DOS, and even later some appeared for Amigas. KOM systems are quite popular in the Swedish BBS community. In fact, a lot of BBS sysops thinks it is impossible to get some discussion going in a menu-based system. And it _is_ a lot harder to feel inclined to post something in a menu system where you have to wade through 17 menus before you can get to the message menu. When the last PDP-10s (DECSYSTEM 20s) in Swedish computer science departments was crapped during the late 1980s, early 1990s, the Swedish hacker community, desperately started looking for new KOM systems to use. Of course, the small one-user systems on personal computers simply would not do. At that moment some of the members of the academic computer club Lysator at Linköping University started hacking on a Unix based KOM system. The Lysator KOM system, LysKOM, was working in 1991 and it was based on a server/client based structure. The first working client was written in Emacs Lisp and has grown very big (and slow) over the years. There _are_ other clients available too; a TTY client written in C and another (nilkom) written in C++ and TCL, two different X Window clients, tkom (written in C++ and TCL/Tk) and LyXKOM. There is also a semi-working perl client. A commercial venture, KOMmunity Software, also started working on a Unix based KOM system, but the result was a) extremely expensive and b) done the Wrong Way --- it did not resemble the original KOM very much in spirit. However, both these systems had a major drawback --- they could not support ordinary Internet mail or USENET News. So, rather recently some hackers from Stockholm hacked together something they called SklaffKOM. It is a real hack, but it can be said to be a news reader and mail program with a KOM interface.