Home

How Community Memory Came to Be, Part 2


Lee Felsenstein, as told to Bernard Aboba

The second generation

By the end of 1974 we had gotten permission to put terminals in the Berkeley stores of Coop Markets, and later we got permission to put them in all the other stores. However, we didn't do it; we decided that the hardware was sufficiently unreliable that we couldn't trust it to handle that kind of load. So we shut the system down in January 1975 and resolved to leave Resource 1 and form a group which would not be saddled by this very obscure computer. We would take one of the newly available minicomputers like the PDP-11, and rewrite the software. ROGERS was written in a language called QSPL which existed nowhere else, and so we wanted to rewrite the system in something more portable.

That was the beginning of the Community Memory Project, although we didn't incorporate until 1977. The three founders were myself, Efram Lipkin, and Ken Colstad. I funded part of the effort from royalties from personal computer designs.

Early on we made some interesting and important decisions. One was that we decided not to have public dialin lines. We did this intentionally, since people who would have used these lines would have been computer familiar. We had been on EIES, Murray Turrop's system at the New Jersey Institute of Technology; the kinds of people who used this system were academics and technical people. We very specifically didn't want to open up a system that would be dominated by those sorts of people, because it would drive others away. So we did not design the dialup system, and sure enough we got a lot of complaints from computer and modem users about not accomodating htem. The purpose wasn't to accomodate them; it was to accomodate everyone else.

Another choice was to avoid the perils of centralization by means of communication. If we had maintained the original structure with one computer for a large geographic area, we understood that you would come under attack from the political structure who would want to control it. We didn't want to repeat what had happened in Los Angeles. This lead to our reconceptualizing the system as a communicating network of much smaller computers, intercommunicating through packet networks. The decision was made to use minicomputers running UNIX, the C language, and X.25 communications protocols. We then went about building tools to do this.

I set up an LSI-11 computer to use for development. We called it called Zippy, after Zippy the Pinhead. We wrote an X.25 package, and a relational datbase management system, and also tried some microcomputer objected-oriented programming, which never went anywhere. Our plan was to create products, license them, and use the royalties as our source of ongoing income. It didn't quite go as planned, although the X.25 product is out there functioning, and returning some royalties, through Orion, which was bought by Apple.

The relational database system was demonstrated at the 1982 Comdex, and some of its features turned up in Superbase in the next year. However the company we created, Pacific Software Manufacturing, ran out of money when Osborne Computer Company went bankrupt in 1983. I was a founder of Osborne, and got 24% of the company, and had been able to sell stock to raise money. After Osborne went under, Pacific Software no longer had the money to get the product to market, and the database software was sold.

This precipitated a crisis for Community Memory in 1983. Fortunately there was a meeting in Washington sponsored by the Public Interest Computer Association, the first conference on community computer systems. We were surprised to discover that everyone had heard of Community Memory and was supportive of it. So we decided on a crash project to get Community Memory functioning. We did, and in the spring of 1984 we opened up four terminals in Berkeley, running on a Plexus P-40, a super-micro computer, which was a UNIX timesharing system. The terminals were unintelligent, and were placed in two Coop Markets, the Whole Earth Access stores, (which had gone through a change of ownership) and a cafe in LaPena Cultural Center.

We made some changes in the system with the second version of the software; for example,on login it would present you with the first lines of new messages. This ran until 1989 when Berkeley Coop went bankrupt. With those terminals out of operation, the people who had the other terminals began to get complaints that there was nothing on, so they asked us to take them out.

The third generation

Sometime before this, Karl Farington, who had been present at Community Memory since 1982, and was our Chief Technical Officer, had started a project to write a third version. This would run on UNIX System V, and would use a distributed architecture. The front end would run on IBM PCs, and communicate with the backend which would run under UNIX and be a database server. The communication would use packetized error checking, so it could run over 2400 baud lines and still be responsive. Karl had previously written a windowing system for the IBM PC, and with that experience, he wrote a windowing system for this purpose.

Karl did this quietly in the background while everyone was getting hysterical about how many days we had before we would die. Only a few months after we had to remove the previous system, we were able to field a 10 terminal system, financed by a grant from the Telecommunications Education Trust. The Educational Trust had been set up as a result of a consent decree signed by Pacific Bell, which paid several million dollars to the Public Utilities Commission (PUC). With the money, the PUC set up the Telecommunications Education Trust for educational telecommunications customers as well as public service use of telecommunications. Later on the grant was extended for half the amount.

We had the system running in 1989, and optimized it and had an opening party in 1990 at the flagship location, which was a laundromat. We had a cabinet maker make birch kiosks for the terminals, which were operated by coin boxes, and I wrote a circuit that would run the coinbox and restart the computer if it crashed. We used mostly dedicated lines, and gradually shifted over to dialup lines. The other terminals were in the public libraries.

We continued to optimize the software, particularly the front end which interacted with the user. At this point we also did a limited project of dial-in operation. We put out front-end disks, and the front-end would dialin and talk to the back end. This client/server architecture reduces the load on the host computer and improves the performance on the client end.

A client/server architecture is important, because most BBSes are still stuck in a scrolling and a message-based paradym. In this paradyme, which I also call the meeting paradyme, you go around the table, and say what you want to say, and if you drift off topic, you're doing the wrong thing. Our was much more like a public wall where people could write what they wanted. Whereas a meeting is a one dimensional structure (the dimension being time), a wall is a multi-dimensional structure. It's not a physical wall, so it's not just two-dimensions. Ours was a database system, constructed as a database, and not intending to overlay the function of a database on a message-based system.

One thing we did that was a mistake was to continue to prime the system with items entered by the office too long, when we should have been going out to find groups of people with a use, and encourage them to use the system for their information exchange needs. We tried this briefly for a youth project funded by the city, creating a young people's yellow pages, and within the confines of that project, it was quite successful. I think we should have done a lot more of that.

As it was, when the money ran out we had to close our office, a storefront on San Pablo Avenue, and we had to stop entering items that we got in the mail from area sources. Without this, the useage of the system declined, and the laundromats put the terminals away since the system was dead, and we had stopped maintaining them.

We have recently implemented electronic mail on the system, through a contract with the City of Berkeley, which has installed a LAN in City Hall. Our computer is in City Hall, and routine maintenance is provided by the city. We have just completed a bridge to the City's Word Perfect Office network, and we can address mail not only to that network, but also via UUCP out to the Internet. So now in addition to being a system of publication, there is also a private information component. We will be announcing this in the near future.

It is also now time to begin dialin usage, and we also have to do a Macintosh front end. I have put up a community memory system on the Internet, accessible via telnet path.net, login: interloper, password: inter*loper, for those interested in trying it out. You have to have VT-100 emulation, and you have to make the F1, F2, and F3 keys functional. Once you do that, you should be able to learn to use the system from the tutorial presented. All you have to know is that F3 is for help, options, F1, and to go back, which is F2. There is a library science class at the University of California that is using the system to store common notes and discussions. We have also tried to use it in the Science Fiction community through Worldcon, and I had it open during the Telluride Idea Festival. People are invited to use the system and create uses for it. I can be reached on email as lee@interval.com , for those that have questions about it. The software is available through license. It's not complete, but it's an excellent toolbox.


Lee Felsenstein, lee@interval.com, last modified: 1/18/94
Home About Internaut Internaut Issue #1 Internaut Index The Online User's Encyclopedia Forthcoming Titles Product Showcase Ordering