Searching Community Memory Posts in 1987

Community Memory was a digital bulletin board “for the unmediated sharing of information for use by the general public” (Farrington 1987) deployed in three generations around Berkeley, California from 1974 to 1991. With terminals placed in public places, members of the public could read and write messages to each other, entertain themselves, find information, and conduct business. In 1987, a staff member at the Community Memory Project created a report on users' search patterns, which survived to be archived at the Computer History Museum. This dataset is a rare glimpse into how a non-computer enthusiast, pre-Internet general population used a proto-social network. By analyzing the dataset using NLP techniques, we find the top three search clusters, each about a fifth of the total, are 1) buying and selling products (“for sale”), 2) debate and general discussion, and 3) searching for posts by prominent personalities. Unexpectedly, erotic-related queries are the fourth most popular with 9% of the total.

Background

The Community Memory Project aimed to provide a digital, two-way public bulletin board system where users would post messages and reply to each other, without a censor. Although the Project seeded the system with some initial messages to help users understand it, what users wrote and how users organized and consumed messages, was left open. The Project did not want to limit access to members of the public who owned a computer, nor advantage members who did, so access to the system was only via terminals placed in public locations such as grocery stores, community centers, and libraries. Users did not need accounts and could post anonymously. Although the Project considered some approaches for monetization, none were ever implemented, so access was free.

Community Memory terminal being used (Source: Community Memory News No. 2, c.1984/1985, photo by Karen Paulsell, CHM

When a user posted a message, they could add index terms, effectively labels, to the message to help others find it. The list of index terms was open, although the system had some recommendations. The Project’s engineering team iterated through a number of designs, attempting to find the right trade-off between power and ease-of-use. Searching for messages involved either picking index terms from lists or typing them in directly.

Since the system was so flexible, it was challenging to understand how the community was using it and how that should shape the future development of the system. In 1987, the Project created a report of the frequency of index terms used in searches. Interpreting the data is difficult, from reasons including natural ambiguity of terms and the fact that the list contains many typos, singular and plural forms, and much noise. In this article, we use some modern natural language processing techniques to gain insight into what community members were searching for.

Methodology and Data Quality

The Computer History Museum’s scan of the report is held under 102734454-05-0001-acc. We used Google’s Gemini 3.7 Flash (see appendix for the prompt) to convert the PDF into a text document (OCR output). We chose Gemini 3.7 because it had the best OCR performance in our tests. Since each row in the table contains sets of columns that sum to the total (picked and typed, and the four sites), we were able to verify the imputed dataset was consistent under these rules. We also visually checked the first hundred entries (of 1,266) and, in the case of some ambiguous text entries, compared them to the second copy of the report in the artifact.

The report includes this explanatory preface:

The attached table lists the index words used in searches, in order of frequency (and in alphabetic order within a frequency). The last four of the seven columns are the 4 terminal sites. The first column is the total for all 4 sites. The column headed “Pick” indicates how many times those words were picked from an index list; the column headed “Type” shows how many times the words were typed. Note that words may be picked from a list of related index words rather than the main index word menu; no attempt was made to determine this.

Typed phrases and gibberish are truncated at 38 characters

The time period represented is September 18 - December 10, 1987.

The original report includes a table summarizing counts by columns. If we compare these numbers to the ones in our output, we discover an under count discrepancy of five (5). This represents less than 0.1% of the total number of searches, and since individual rows were consistent, we believe this transcription is of high quality.

Searches OCR Sum
All sites 5780 5775
Picked 2826 2822
Typed 2954 2953
Pena 1182 1179
Coop 1364 1362
WEA 966 966
Shattuck 2268 2268

What did community members search for?

The top 75 raw search terms, with their frequency, how often they were picked from a software provided list versus typed directly by the user, and how often they were searched by one of the four terminal sites, are displayed in the table below.

Table: Search Words or Terms by Frequency, Creation Method, and Location

Word(s) Tot Pick Type pena coop wea shat
adam 379 303 76 98 119 60 102
sex 316 233 83 63 79 56 118
love 205 131 74 55 27 38 85
jokes 147 88 59 39 38 35 35
housing 138 86 52 20 17 6 95
car 134 92 42 16 26 33 59
eku 133 65 68 5 23 3 102
art 117 67 50 30 30 29 28
computer 114 86 28 13 36 33 32
gay 96 50 46 17 20 20 39
fantasy 90 55 35 28 14 17 31
joke 88 55 33 21 21 29 17
apartment 83 52 31 26 21 5 31
dead 83 60 23 12 29 22 20
berkeley 81 57 24 14 17 23 27
music 78 38 40 24 13 13 28
drugs 77 45 32 25 14 15 23
auto 76 49 27 10 14 21 31
jobs 64 35 29 11 16 15 22
drummer 61 48 13 10 8 6 37
house 59 42 17 10 10 3 36
work 55 47 8 13 9 7 26
women 53 39 14 8 18 9 18
dance 51 30 21 14 13 13 11
cars 46 31 15 7 6 12 21
computers 45 30 15 5 9 19 12
death 45 26 19 17 6 9 13
gnauvel 44 0 44 13 4 0 27
free 42 23 19 4 7 12 19
fun 41 19 22 10 7 13 11
pan 39 0 39 3 6 0 30
karen 37 18 19 7 8 13 9
america 36 20 16 15 4 9 8
share 36 29 7 5 5 0 26
witch 36 26 10 10 8 4 14
kaos 31 19 12 9 6 7 9
rent 30 23 7 3 6 2 19
iran 29 17 12 10 2 9 8
sale 28 23 5 2 5 6 15
wanted 28 22 6 7 9 3 9
g 27 21 6 9 3 6 9
rental 27 22 5 3 9 0 15
room 26 23 3 1 6 1 18
ansku 24 21 3 4 4 3 13
food 24 11 13 8 2 9 5
people 24 15 9 12 4 3 5
help 22 17 5 8 4 0 10
message 22 21 1 7 5 3 7
farming 21 9 12 2 6 4 9
information 21 17 4 5 3 5 8
cm 20 13 7 5 6 4 5
doctor 20 10 10 5 7 3 5
reagan 20 16 4 8 6 4 2
call 19 17 2 2 3 5 9
community 19 10 9 6 6 3 4
politics 19 12 7 6 5 4 4
stern 18 12 6 4 9 3 2
fuck 17 13 4 5 3 1 8
lee 17 7 10 2 5 4 6
life 15 8 7 4 4 4 3
pagan 15 12 3 2 6 2 5
political 15 10 5 6 1 4 4
california 14 10 4 3 2 2 7
index 14 7 7 2 7 1 4
lesbian 14 3 11 3 3 1 7
rodney 13 1 12 1 1 0 11
adam stern people 12 0 12 0 12 0 0
leader 12 2 10 0 10 0 2
yes 12 0 12 2 6 2 2
apple 11 7 4 0 4 3 4
carl 11 0 11 4 1 0 6
radio 11 8 3 2 4 2 3
want 11 9 2 4 0 3 4
jazz 10 5 5 2 2 0 6
need 10 9 1 4 1 2 3

The list has a long-tail. There are 62 terms searched three times, 131 terms searched twice, and 925 terms searched once.

The dataset does not include data about sessions or users. Thus, a weakness of our analysis is we cannot tell if a search query comes from many users or one. A single user could create a prominent search term in the list by merely searching for it once per week.

Who were Adam, EKU, Gnauvel, and Pan? Carl and Karen?

These unusual search terms were prolific users. Adam and EKU appear to have engaged in a long running feud and other users, or maybe sock puppets, commented on their posts. Similarly, Gnauvel and Pan traded barbs. Carl and Karen were members of the Community Memory staff and provided community updates.

All messages in CM were public. Messages were, by default, anonymous, but could be signed.

Were some searches particular to a site?

At the time of the report, CM had terminals at four locations. (One could also access CM at their headquarters, but those searches were not included.) Each site provided about six square feet for the terminal, as well as an electrical and telephone link. Of the four locations, two were stores operated by the Consumers' Cooperative of Berkeley. WEA was a Whole Earth Access store (financially unrelated to Whole Earth Catalog) and Pena refers to the La Peña Cultural Center. In contrast to the first generation of Community Memory, none of the sites were student-dominated. (In the map below, the tan rectangular area to the west of Panoramic Hill is UC Berkeley.)

Co-Op Store used as a Terminal Location (Source: CHM)
Locations of the CM terminals around Berkeley, CA

If we filter to the first fifty items in rank, or searches with n>20 count, individual sites correlate (Pearson) highly with the total search count (table below). The Coop site, which was also the longest-running location, has a 0.95 score. Pena is similar with a 0.92. WEA and Shattuck have the lowest correlation to the total at 0.87.

Table: Correlation of the Top-50 Search Term Frequencies with Combined Total

Location Correlation with Tot
Pena 0.92
Coop 0.95
WEA 0.87
Shattuck 0.87

Predictably, sex was universally popular as a search term across all locations. adam was also popular across all four sites, although Shattuck showed an unusually high prominence for eku. The Shattuck location may have been the “home” for EKU and the author was searching for mentions of their name. The prominence of housing for Shattuck may be due to the proximity of off-campus cooperative student housing. However, broadly, the sites are indistinct.

Table: Top Ranked Search Terms by Site

Overall Pena Coop WEA Shattuck
adam adam adam adam sex
sex sex sex sex eku
love love jokes love adam
jokes jokes computer jokes housing
housing art art car love
car fantasy dead computer car
eku apartment love art gay
art drugs car joke drummer
computer music eku berkeley house
gay joke apartment dead jokes
fantasy housing joke auto computer
joke gay gay gay fantasy
apartment death women computers apartment
dead car housing fantasy auto
berkeley america berkeley drugs pan
music dance jobs jobs art
drugs berkeley fantasy music music
auto computer drugs dance berkeley
jobs gnauvel auto fun gnauvel
drummer work music karen share
house dead dance cars work
work people adam stern people free drugs
women jobs house women jobs
dance drummer leader death cars
cars house work america dead

Cluster and Classification

We used the Gemma model (specifically, embeddinggemma-300m) to obtain a 768-dimensional embedding for each search term. Then, we iteratively built clusters around each search term using cosine similarity. After review of various thresholds, we found that the 70% threshold seemed to provide excellent recall, including many typos, plurals, and similar concepts, while maintaining satisfactory precision. Below are examples for housing and computer.

Table: Similar Terms to housing

Cosine Similarity Term List
>65 a, aaa, apart, apartment, apartments, apartmeny, appartment, ar, as, auto, autos, b, berkeley, bicycle, books, boston, british, buyers, childcare, dick, drugsi, eadd, employment, emt, ex, f, fantasy, farming, fishing, flat, for sale, freedom, g, garening, gay, gay housing, hare, help, help wanted, hhoussiin, hire, ho, home, honeymooners, hoousing, hop, hous, house, house huous, houseate, housemate, houses, housewware, housin, housin g, housing, housing si, housing wanted, housing yesjho, housingd, housingg, housingshare women, indian, jfk student-to-be needs housing, jjobs, job, jobs, jy, k, kitchen, ky, l, law, life, mac, marriage, moving, nah, office, oo, p, painting, pet, pets, political, question, rent, rental, rental wanted, rentals, room, roomates wanted, rover, school, share rentals, shelter, space, sublet, tree, u, union, v fgr ov apartment, vw, warehouse, wealth, women housing, work, zen
>70 apart, apartment, apartments, appartment, gay housing, home, hoousing, hous, house, house huous, houseate, housemate, houses, housewware, housin, housin g, housing, housing si, housing wanted, housing yesjho, housingd, housingg, moving, rent, rental wanted, rentals, room, roomates wanted, shelter, sublet, women housing
>75 apartment, apartments, gay housing, home, hoousing, hous, house, house huous, houses, housewware, housing, housing si, housing wanted, housing yesjho, housingd, housingg, rent, women housing
>80 gay housing, house, houses, housing, housing si, housing wanted, housing yesjho, housingd, housingg, women housing
>85 housing, housing si, housing wanted, housingd, housingg

Table: Similar Terms to computer

Cosine Similarity Term List
>65 bicycle, cmusers, commodore, compputers, computer, computer, informatin, computers, computers., computr, cybher, dictatorship, computer, disk, guitar, hacker, help, ibm, kalu, keyboard, love.computer., mac, macintosh, memory, modem, office, omputer, printer, software, synth, typewriter, work
>70 computer, computer, informatin, computers, computers., computr, dictatorship, computer, keyboard, love.computer., mac, macintosh, omputer, typewriter
>75 computer, computer, informatin, computers, computers., computr, omputer
>80 computer, computer, informatin, computers, computers., computr, omputer
>85 computer, computers, computers., omputer

We compare the ordering of terms in the original listing with clusters at various thresholds in the table below. In the 70% case, the adam cluster includes eku, which is appropriate given their running feud, although unexpected from a language perspective. The clustering process raises the prominence of housing and car, while lowering love and jokes, suggesting more commercial applications for Community Memory than just entertainment.

Original Rank Order Cosine > 70% Cosine > 75% Cosine > 80%
adam adam adam adam
sex sex sex sex
love housing housing car
jokes car car jokes
housing jokes jokes love
car love love housing
eku computer eku computer
art art computer eku
computer fantasy jobs dead
gay dead dead gay
fantasy jobs art art
joke berkeley gay fantasy
apartment music fantasy apartment
dead drugs music music
berkeley drummer berkeley berkeley
music women drugs drugs
drugs kaos witch jobs
auto dance drummer rent
jobs gnauvel women drummer
drummer fun dance work
house pan gnauvel women
work karen free dance
women d fun gnauvel
dance free pan free
cars politics share fun
computers share fuck pan
death wanted karen karen
gnauvel america america share
free people politics witch
fun fuck rental fuck
pan sale sale america
karen cm motorcycle politics
america iran cm kaos
share food kaos iran
witch doctor iran sale
kaos pagan food wanted
rent rental wanted room
iran help ansku food
sale reagan room people
wanted message message message
g motorcycle people ansku
rental information help help
room farming information motorcycle
ansku community d information
food life farming cm
people call doctor farming
help stern reagan pagan
message lee community doctor
farming carl call reagan
information goob stern community
cm rodney lee call
doctor peace carl stern
reagan god dog lee
call index index lesbian
community apple lesbian life
politics jazz life california
stern yes california rodney
fuck martial art rodney d
lee space apple index
life horsemen yes yes
pagan leader god horsemen
political omega horsemen s&m
california radio s&m adam stern people
index paraffinagin adam stern people leader
lesbian software leader apple
rodney midi radio carl
adam stern people s&m want omega
leader spike omega radio
yes camera paraffinagin want
apple tm software paraffinagin
carl need jazz software
radio money need jazz
want tv health need
jazz memory peace health
need judy goob r.l.

Using the 70% threshold cluster grouping, fifty percent of searches fall into these eleven (11) clusters:

Cluster Total (Original) Total (Combined) Percentage
adam 379 570 9.87%
sex 316 483 8.36%
housing 138 367 6.35%
car 134 308 5.33%
jokes 147 250 4.33%
love 205 218 3.77%
computer 114 173 3.00%
art 117 137 2.37%
fantasy 90 137 2.37%
dead 83 136 2.35%
jobs 64 131 2.27%

The top 75 clusters comprise about 83% of all searches (figure below, log scale):

Top 75 Clusters (>70% Similarity) by Percentage of Searches

These clusters suggest that users were primarily drawn to and used Community Memory for entertainment, eroticism, commercial needs (places to live, commute, jobs and trade), and finally information, debate, and social connection. However, this ranking is based on the top ranked clusters and ignores contributions from the long tail.

Classifying Clusters into Classified Item Categories

Focusing on the prevalence of individual search queries can be deceitful as the long tail may contain many items that are common in intent or category. To further understand how the clusters relate to user intent, we classified each cluster, based on the collective terms gathered under the 70% threshold, into a set of categories. The categories are based on the top-level Craigslist list of types, which themselves were inspired by newspaper classifieds. We include “personals” and “erotic” (no longer included in Craigslist) because of their prominence in the index term list, as well as “forum” for the general debate items. Finally, we add “individuals” to capture queries for a specific user’s posts. This list and the criteria we used is displayed below.

Table: Classified Item Categories and their Criteria

Classified Category Criteria
community activities, events, local news and politics, volunteer opportunities
erotic sex, nudity, and other erotic content
for sale antiques, appliances, computers, garage sales, furniture, tools, and other things for sale
forum discussions about topics including philosophy, jokes, politics, and sports
gigs jobs and employment opportunities that are short term
housing apartments, rooms for rent, housing rentals, real estate sales
individuals posts about specific people or usernames
jobs jobs and employment opportunities that are medium to long term
personals dating, meetups, and personal connections
services computer, creative, financial, household, legal, and similar services

Using the commercial model Jev (version 1.13.0), we classified each cluster using the criteria above as a first draft (see appendix). We then manually corrected the model’s output; “community” and “forum” saw the highest number of corrections. We note that these are the author’s best guess of the community member’s intent, based on our contextual knowledge of the area and reading many posts. However, there are examples like “french” (n=1): was the community member looking for someone named French, were they looking to obtain French language lessons, looking for local French expat groups, or looking for a discussion about France? We classified the query as “community,” but we do not have a true “ground truth” for any of the data.

Table: Percentage of Queries by Classified Category / Predicted Intent

Classified Category Prediction Percentage
for sale 21%
forum 19%
individuals 18%
erotic 9%
housing 8%
community 7%
personals 7%
services 5%
jobs 3%
gigs 2%

The resulting group has trade in products (“for sale”) rising to the top with a fifth of all queries, followed by another fifth for “forum” or general debate. Searches for specific individuals, perhaps driven by entertainment from their posts, is a close third with 18% of the total. Unexpectedly, the erotic category is fourth with 9% of the total.

If cars were its own category, rather than part of the for sale category, for sale would drop to third place with 16% and cars and services would compete around 5%.

Contrast: Internet Search Engines

We can also compare CM’s search queries to later data from internet search engines. Searching the web, particularly in the 1990s, lacks the focus on local resources that a bulletin board would provide, so these are only loosely comparable. (Jansen 1998) is an early study of Excite.com user queries (n=51,473) made around March 9, 1997. This represents a snapshot roughly ten years after the CM report. The focus of this study is more on how users are formulating their queries than what they are searching about, but Table 8 within the article breaks down individual term frequency within search queries. This list includes many stop words and breaks apart words that together might better imply intent (e.g. “college”, “new”, “university”), but the list shows interest in erotic topics, music, software, sports, finding jobs, and a long list of entertainment or commercial interests.

(Silverstein 1999) is a close-in-time but much larger study was made using AltaVista records. This study covered approximately 843 million non-empty queries made over 43 days between August 2, 1998 and September 13, 1998. AltaVista users used shorter queries than the Excite user base and Table 4 in the article sums frequency by the entire search query, rather than by individual terms. The list (below) is dominated by erotic and entertainment related queries and lacks employment, housing, or commercial topics (beyond digital items). In addition, the list includes navigational queries (absent from the Excite list) or queries to find specific websites by their domain name or brand name. Navigational queries would later dominate search queries (e.g. Google Trends rankings for 2007).

Top 25 queries from Altavista (Aug 1998); Table 4 from (Silverstein 1999)

Both of these studies are focused on the top queries by rank and thus ignore the contribution of the long tail.

Conclusion

By 1987, the second generation of Community Memory had been used by some locations for three years. Posts reveal that the user community had developed a culture, with long-running debates and prominent personalities. User search patterns indicate that Community Memory was being used as a cross between a digital classified section and as a public forum. Similar to later social networking platforms, it was both a source of entertainment for readers, an outlet for writers, and a means of conducting commerce.

Appendix: OCR Prompt

We used this prompt with Google’s Gemini 3.7 LLM to perform the transcription:

Transcribe this document exactly as written.
Preserve the reading order, headings, paragraphs, tables, and line breaks as much
as practical. Do not summarize, translate, or add commentary. For tables, use
Markdown table syntax. Mark text that is genuinely illegible as [ILLEGIBLE].
Return only the transcription.

Appendix: Decision Model Call

We used this call to invoke Jev to perform the first draft classification of clusters into categories:

response = client.system_one(
    state={"document": " | ".join(all_terms)},
    questions={
        "craigslist": Choice(
            instructions="From this list of terms, what craigslist category is the best fit?",
            criteria={
                "community": "activities, events, local news and politics, volunteer opportunities",
                "services": "computer, creative, financial, household, legal, and similar services",
                "housing": "apartments, rooms for rent, housing rentals, real estate sales",
                "for sale": "antiques, appliances, computers, garage sales, furniture, tools, and other things for sale",
                "jobs": "jobs and employment opportunities that are medium to long term",
                "gigs": "jobs and employment opportunities that are short term",
                "individuals": "posts about specific people or usernames",
                "forum": "discussions about topics including philosophy, jokes, politics, and sports",
                "personals": "dating, meetups, and personal connections",
                "erotic": "sex, nudity, and other erotic content"
            }
        )
    }
)

References

(Farrington 1987) Farrington, Carl. 1987. Community Memory User Manual. The Community Memory Project. https://www.computerhistory.org/collections/catalog/102734471/.

(Jansen 1998) Jansen, Bernard J., Amanda Spink, Judy Bateman, and Tefko Saracevic. 1998. “Real Life Information Retrieval: A Study of User Queries on the Web.” ACM SIGIR Forum 32 (1): 5–17. https://doi.org/10.1145/281250.281253.

(Silverstein 1999) Silverstein, Craig, Hannes Marais, Monika Henzinger, and Michael Moricz. 1999. “Analysis of a Very Large Web Search Engine Query Log.” ACM SIGIR Forum 33 (1): 6–12. https://doi.org/10.1145/331403.331405.