Rn (newsreader)

Last updated

rn (short for Read News) is a news client (or 'newsreader') written by Larry Wall and originally released in 1984. It was one of the first newsreaders to take full advantage of character-addressable CRT terminals (vnews by Kenneth Almquist was first). Previous newsreaders, such as readnews, were mostly line-oriented and designed for use on the printing terminals which were common on the early Unix minicomputers where the Usenet software and network originated. Later variants of the original rn program included rrn, trn, and strn. [1]

Contents

Features

rn was also notable for three other features it introduced: KILL files, "do the right thing", and automatic configuration. The KILL file was a file (called, obviously enough, KILL) containing regular expressions matched against the subjects of news articles in each group; if an article matched, it would be marked as having already been read. This feature proved essential as the growth of the Usenet made it impossible to read every article in even a limited selection of newsgroups.

"Do the right thing" was a fundamental change in the user-interface model of previous news software; rather than requiring users to navigate menus or learn a distinct command vocabulary for every operating mode of the program, certain single-keystroke commands were repeated throughout the user interface, performing the most obviously appropriate function for the task at hand. The most important of these commands was the space character, which means "go on to the next thing", where the next thing could be the next page, the next article, or the next newsgroup, depending on where the user was in the process of reading news.

Finally, automatic configuration was a feature for system administrators, not visible to users. Most Unix programs, and in particular all of the Usenet software, were distributed in source code form. Because different vendors of Unix systems (and in many cases, different versions of the Unix software) implemented slightly different behavior and names for important functions, a system administrator was required to have sufficient programming expertise to edit the source code before building the program executables to account for these differences. A particularly considerate programmer might have centralized these in a single source code file, but it still required manual editing. rn changed that by including a script called Configure, which had enough intelligence on its own to examine the computer system it was running on and determine, of those functions and interfaces known to behave differently, which behavior the system implemented. Today, most open source software is distributed with a similar script, such as autoconf.

History

Like all of the original newsreaders and the Usenet software itself, rn was designed for the environment of a large time-shared minicomputer, which users connected to using terminals wired directly to the machine, and where the only networks available were accessed by slow and expensive dial-up modem connections. All of the articles in all of the newsgroups were stored in files on the local disk (known as the "news spool"), and rn could simply read those files directly when presenting them to the user. When local area networks became widespread, it was natural that administrators and users would desire remote access to the news spool, and NNTP, the Network News Transfer Protocol, was developed to serve that need. While working at Baylor College of Medicine, Stan O. Barber developed remote rn (rrn), a set of patches to rn which allowed it to communicate with an NNTP server over a local-area (or even wide-area) network. Barber later took over maintenance responsibility for rn itself from Larry Wall.

As news volumes continued to increase, it became apparent that even KILL files could not possibly keep up with the sheer number of users and articles. A new concept, the threaded newsreader, was needed as users gradually switched from a "read most, kill few" model to "ignore most, read few". By organizing the articles in a newsgroup according to threads of discussion, using headers that had long been present in Usenet articles but practically unused, a threaded newsreader would allow users to keep up with topics and discussions they were interested without having to explicitly deselect uninteresting threads. Kim F. Storm's nn newsreader was the first to implement this new model, and it looked for a while as if nn would do to rn what rn did to readnews. This fate was averted when Wayne Davison developed trn, a set of patches to rn which gave it both threading at the article level and a new user interface that would allow users to select only the threads they desired, while remaining true to the original rn interface philosophy of do the right thing.

An even more recent addition to the rn family has been the addition of scoring, which allows a more complex method of evaluating articles to determine whether the user wishes to read them; originally this was implemented in a code fork of trn called strn, but later this was integrated into the official trn distribution.

See also

Related Research Articles

A kill file is a file used by some Usenet reading programs to discard articles matching some unwanted patterns of subject, author, or other header lines. Adding a person or subject to one's kill file means that person or topic will be ignored by one's newsreader in the future. By extension, the term may be used for a decision to ignore the person or subject in other media.

A Usenet newsgroup is a repository usually within the Usenet system, for messages posted from users in different locations using the Internet. They are discussion groups and are not devoted to publishing news. Newsgroups are technically distinct from, but functionally similar to, discussion forums on the World Wide Web. Newsreader software is used to read the content of newsgroups.

<span class="mw-page-title-main">System call</span> Way for programs to access kernel services

In computing, a system call is the programmatic way in which a computer program requests a service from the operating system on which it is executed. This may include hardware-related services, creation and execution of new processes, and communication with integral kernel services such as process scheduling. System calls provide an essential interface between a process and the operating system.

<span class="mw-page-title-main">News server</span> Type of server software

A news server is a collection of software used to handle Usenet articles. It may also refer to a computer itself which is primarily or solely used for handling Usenet. Access to Usenet is only available through news server providers.

<span class="mw-page-title-main">InterNetNews</span>

InterNetNews (INN) is a Usenet news server package, originally released by Rich Salz in 1991, and presented at the Summer 1992 USENIX conference in San Antonio, Texas. It was the first news server with integrated NNTP functionality.

The Network News Transfer Protocol (NNTP) is an application protocol used for transporting Usenet news articles (netnews) between news servers, and for reading/posting articles by the end user client applications. Brian Kantor of the University of California, San Diego, and Phil Lapsley of the University of California, Berkeley, wrote RFC 977, the specification for the Network News Transfer Protocol, in March 1986. Other contributors included Stan O. Barber from the Baylor College of Medicine and Erik Fair of Apple Computer.

<span class="mw-page-title-main">B News</span> Usenet news server

B News was a Usenet news server developed at the University of California, Berkeley by Matt Glickman and Mary Ann Horton as a replacement for A News. It was used on Unix systems from 1981 into the 1990s and is the reference implementation for the de facto Usenet standard described in RFC 850 and RFC 1036. Releases from 2.10.2 were maintained by UUNET founder Rick Adams.

<span class="mw-page-title-main">A News</span>

A News, or Netnews Version A, originally known simply as news, was the first widely distributed program for serving and reading Usenet newsgroups. The program, written at Duke University by Steve Daniel and Tom Truscott, was released on a tape given out at the June 1980 USENIX conference held at the University of Delaware. Steve Daniel from Duke offered a presentation on the then-new Usenet network and invited attendees to join.

Gmane is an e-mail to news gateway. It allows users to access electronic mailing lists as if they were Usenet newsgroups, and also through a variety of web interfaces. Since Gmane is a bidirectional gateway, it can also be used to post on the mailing lists. Gmane is an archive; it never expires messages. Gmane also supports importing list postings made prior to a list's inclusion on the service.

<span class="mw-page-title-main">Google Groups</span> Service from Google that provides discussion groups

Google Groups is a service from Google that provides discussion groups for people sharing common interests. Until February 2024, the Groups service also provided a gateway to Usenet newsgroups, both reading and posting to them, via a shared user interface. In addition to accessing Google groups, registered users can also set up mailing list archives for e-mail lists that are hosted elsewhere.

Forté Agent was an email and Usenet news client used on the Windows operating system. Agent was conceived, designed and developed by Mark Sidell and the team at Forté Internet Software in 1994 to address the need for an online/offline newsreader which capitalized on the emerging Windows GUI framework. By 1995, Agent had expanded to become a full-featured email client and remains a widely used application for integrating news and email communication on Windows. Agent supports POP email but not IMAP.

tin (newsreader)

tin is an open-source, text-based, threaded newsreader, used to read and post messages on Usenet, the worldwide distributed discussion system.

<span class="mw-page-title-main">Newsreader (Usenet)</span> Application program

A newsreader is an application program that reads articles on Usenet distributed throughout newsgroups. Newsreaders act as clients which connect to a news server, via the Network News Transfer Protocol (NNTP), to download articles and post new articles. In addition to text-based articles, Usenet is also used to distribute binary files, generally in dedicated "binaries" newsgroups.

NOV, or News Overview, is a widely deployed indexing method for Usenet articles, also found in some Internet email implementations. Written in 1992 by Geoff Collyer, NOV replaced a variety of incompatible indexing schemes used in different client programs, each typically requiring custom modifications to each news server before they could be used. In modern NNTP implementations, NOV is exposed as the XOVER and related commands.

Newsbin Pro is a shareware Usenet newsreader client for Microsoft Windows. It is developed by DJI Interprises

<span class="mw-page-title-main">Virtuoso Universal Server</span> Computer software

Virtuoso Universal Server is a middleware and database engine hybrid that combines the functionality of a traditional relational database management system (RDBMS), object–relational database (ORDBMS), virtual database, RDF, XML, free-text, web application server and file server functionality in a single system. Rather than have dedicated servers for each of the aforementioned functionality realms, Virtuoso is a "universal server"; it enables a single multithreaded server process that implements multiple protocols. The free and open source edition of Virtuoso Universal Server is also known as OpenLink Virtuoso. The software has been developed by OpenLink Software with Kingsley Uyi Idehen and Orri Erling as the chief software architects.

yProxy is a Network News Transfer Protocol (NNTP) proxy server for the Windows operating system. yProxy's main function is to convert yEnc-encoded attachments to UUE-encoded attachments on the fly. The main purpose of this is to add functionality to NNTP newsreaders that do not have native support for yEnc. The inventor of yEnc recommends yProxy for use by Windows users whose newsreaders do not support yEnc decoding.

<span class="mw-page-title-main">Usenet</span> Worldwide computer-based distributed discussion system

Usenet, USENET, or, "in full", User's Network, is a worldwide distributed discussion system available on computers. It was developed from the general-purpose Unix-to-Unix Copy (UUCP) dial-up network architecture. Tom Truscott and Jim Ellis conceived the idea in 1979, and it was established in 1980. Users read and post messages to one or more topic categories, known as newsgroups. Usenet resembles a bulletin board system (BBS) in many respects and is the precursor to the Internet forums that have become widely used. Discussions are threaded, as with web forums and BBSes, though posts are stored on the server sequentially.

Easynews, Inc is a HW Media Usenet/newsgroup reseller. Founded in 1994, Easynews service is available to individual users through a subscription model and as an outsourced service to internet service providers. Easynews offers Usenet access both through traditional Network News Transfer Protocol (NNTP) servers as well as a web interface using a standard web browser.

References

  1. Mark Moraes (December 28, 1999). "Usenet Software: History and Sources".