On this page
Before late 1971, computer messages were strictly local digital memos. Users sharing the same central mainframe could leave notes for one another by appending text to a file in a shared directory, but no message could jump across telephone lines to a machine in another room, let alone another city.
That limitation changed at Bolt, Beranek and Newman (BBN) in Cambridge, Massachusetts, where electrical engineer Ray Tomlinson decided to link two independent programs. In doing so, he sent the first network email in history and selected the `@` symbol to direct it—a punctuation choice that became one of the most recognised symbols on Earth.
Who was Ray Tomlinson and what did he invent?
Raymond Tomlinson was a computer engineer who earned his electrical engineering degrees at Rensselaer Polytechnic Institute in 1963 and the Massachusetts Institute of Technology in 1965. While working at BBN, an engineering firm hired to construct the Interface Message Processors for the fledgling ARPANET, he maintained the TENEX operating system on Digital Equipment Corporation PDP-10 computers.
As recorded in his Internet Hall of Fame induction profile, Tomlinson developed the first network electronic mail application in late 1971. Computer systems of the era already featured primitive local messaging software. Tomlinson had worked on an early program called SNDMSG, which allowed colleagues on the same time-sharing computer to append text to a recipient's mailbox file.
Tomlinson realised that local messages solved only half the problem. ARPANET was expanding rapidly, connecting universities and research laboratories across the United States. Just as Douglas Engelbart and the computer mouse transformed how humans interacted with displays at the Stanford Research Institute, Tomlinson saw an opportunity to transform how researchers conversed across distances.
Why did Ray Tomlinson choose the @ symbol for email?
To make network mail function, Tomlinson needed a clean syntax. On a single PDP-10, typing `SNDMSG` followed by a person's username was unambiguous because all accounts existed in the same directory. But once messages could travel across ARPANET, the computer needed two distinct pieces of information: who should receive the note, and which machine hosted their mailbox.
Tomlinson needed a separator character between the username and the destination computer. He faced four strict engineering constraints:
The character could not already appear in any person's name or TENEX username.
It could not collide with operating system command syntax or file directory paths, ruling out slashes, periods, spaces, colons, and commas.
It had to exist on the terminal keyboard right in front of him: the Teletype Model 33.
It had to make immediate linguistic sense.
Tomlinson looked down at his Model 33 Teletype keyboard. On that terminal, typing `@` required pressing Shift and P simultaneously. Because the Model 33 used a bit-paired layout where Shift inverted a single bit in the 7-bit ASCII representation, pressing Shift with P (binary `0101 0000`, hex `0x50`) produced `@` (binary `0100 0000`, hex `0x40`).
The `@` symbol was an obscure commercial bookkeeping mark historically meaning "at the rate of" (for instance, 10 pounds of grain @ 5 pence). Yet in English, it was a preposition of place. Writing `user@host` instantly communicated that the user resided "at" a specific host computer.
In 2010, the Museum of Modern Art in New York acquired the `@` sign (object 151.2010) for its Architecture and Design collection, honouring Tomlinson's choice as a masterstroke of design economy.
How did the first network email actually work in 1971?
Tomlinson created network mail by merging SNDMSG with CPYNET, an experimental file transfer program he had written for TENEX to move files across ARPANET connections. By redirecting SNDMSG to send text across CPYNET routines, the program could open a connection to a remote PDP-10, locate the recipient's mailbox file, and append the incoming text directly to the end of the file.
To test the system in late 1971, Tomlinson sat between two PDP-10 computers named BBNA and BBNB located side-by-side in the BBN machine room. The two computers had no direct data cables connecting them except through the ARPANET interface. Tomlinson typed a test message on one terminal, wheeled his chair across the floor to the other terminal, and watched the characters print out successfully.
When asked in later interviews what that historic first transmission contained, Tomlinson explained that it was entirely forgettable—most likely a random keystroke test like `QWERTYUIOP`.
Formal standardization followed soon after. On September 5, 1973, Tomlinson co-authored RFC 561, titled Standardizing Network Mail Headers, alongside Abhay Bhushan (an early IIT Kanpur graduate who also authored the original File Transfer Protocol), Ken Pogran, and Jim White. That document formally established the standard email header structure (From, Date, and Subject) that remains in use across the global internet today. As digital communications grew, network architects later developed protocols like the Diffie-Hellman key exchange to secure these transmissions.
What can students learn from Tomlinson's constraint-based thinking?
Great engineering rarely starts with unlimited resources. Tomlinson did not design a new computer terminal, request a new keyboard standard, or petition for complex network protocols. Instead, he solved a global communication puzzle by working rigorously within existing constraints.
Whether you are writing a Python script, designing an engineering project like Ajay Bhatt and the design of the Universal Serial Bus, or structuring variables in a physics derivation, you can apply Tomlinson's constraint checklist:
Check reserved namespaces: ensure your identifier does not conflict with operating system keywords or programming language primitives.
Prevent parsing ambiguity: select separators that cannot appear within the data values themselves.
Match semantic intuition: pick symbols whose natural meaning mirrors their computational function, reducing cognitive load for anyone reading your work.
Minimise mechanical friction: build solutions that fit existing physical equipment and user habits rather than demanding an overhaul of the entire environment.
When learning computer science, physics, or mathematics, students often struggle to connect theoretical rules with practical system architectures. The Fermi Concept Library covers concepts across mathematics and computing to help learners build fundamental intuition before tackling advanced code. When diagnosing where a problem-solving strategy breaks down, Fermi's AI tutor notices where a student is stuck and decides whether to explain, ask or show, helping you master structured reasoning from first principles.



