The story of “someone’s typing…”

The story of “someone’s typing…”

Whether it’s a series of blinking ellipsis or an explicit notification that “someone’s typing,” the messaging feature known as a typing indicator is both a useful tool and a source of anxiety for many people, so says Rhett Jones in a recent article on Gizmodo. 

Like it or not, it does represent one of the most recognized inventions of the “now generation”.  A generation of (typically) young people described as “wanting everything to be given to them as quickly as possible in return for as little effort as possible”. As one of the co-inventors of “someone’s typing” almost 20 years ago, I can tell you that this story was born out of the pre-smartphone era, where teams communicated by actually talking (well in this story’s case, shouting).  At the time we did not realize we were the “expecting parents” of the now generation and our invention would seed a subtle, but recognizable part of all that is now.   

It was 20 years ago, on November 23rd 1999, that US Patent Number 5,990,887 was recorded. The title of the invention is Method and system for efficient network-desirable chat feedback over a communication network. Richard Redpath and I were the co-inventors of this feedback technique and from all I can tell is one of the earliest records of a typing indicator for Internet-based collaboration. It all started in 1997, at IBM in Research Triangle Park, North Carolina, while working on an early version a Tom Clancy game (that’s right, game, not book) and later Lotus Sametime.  This is the story.

 I was the team leader of the Advanced Internet Software development squad at IBM, including Richard Redpath, Sandeep Singhal, Binh Nguyen, Karen Klutz and Carmine Greco.  I had recently moved to North Carolina from New York to be part of a team exploring applications of Java technology, which was just publicly release in 1996.  Many of us at IBM thought Java went with the Internet, like peanut butter goes with chocolate. My squad was challenged to find “server side” applications of Java, which was predominately used as an in-browser animation technology.  The first application we picked was a very cool multi-player game server.  What else would pioneers of the now generation pick!   We actually wound up selling this technology to Tom Clancy and his Red Storm Entertainment game company. Our Java game server was used by two of Red Storm’s earliest games; Politika and Ruthless.com. Sandeep had just received his PhD from Stanford, on a topic related to military gaming, which was our inspiration for working on a game server.  The server supported a waiting room feature, that sported a graphical version of Internet Relay Chat (IRC), and let players kibitz and plot strategy before and during a game.  

After delivering these games, our management challenged us to relate our technology to something closer to home.  In other words, stop playing games.  IBM had recently acquired Lotus Software. Lotus was rapidly expanding beyond Lotus 1-2-3. Their new thing was collaborative software including the infamous Lotus Notes (which we all still use today). We tried pitching our game server idea to Lotus, stating that multi-player games were a hip and happening form of collaborative software. But the Lotus leadership had their eye on instant messaging instead (yawn!).  They were drawn to one part of our game server; our graphical chat feature. Within a few weeks, we found ourselves on loan to Lotus, working on what was to become an early version of Lotus Sametime. We transformed the best parts of our game server to one, killer, chat server.

Richard and I were transplants from IBM T.J. Watson Research Center in Yorktown Heights N.Y., both with a computer science backgrounds. Binh was a Smalltalk language expert, rapidly becoming a Java language expert. Karen was our user experience designer; Carmine was a new hire from Duke University. Together with Sandeep, we got things done and had a very good time doing it.  

 This was a time that we all sported large luggable laptops, and no cell phones.  It was the advent of the Internet era and we all got bitten by the bug and were driven by the fever.   We would often go home to eat dinner with our families then head back to the office to code and debug.  I would never architect code. I had a coding style of starting with a blank text editor, writing my first line, then debugging it into a running program.  A real hacker. Richard was a software perfectionist and had the best eye for what made for a good invention.  He was also quite the comedian, as was as quick with a joke as a recursive decent sort (As you can see, I was not the comedian).   

One night, the gang was sprinting towards a development milestone.  It was getting late, and Richard and I were debugging the chat server.  Co-creating software in 1997 could be a real pain. No GitHub, Slack or Stack Overflow.  No cell phones, tablets or iPods. Offices in IBM RTP had doors, no cubes or agile spaces. We were too lazy to walk back and forth to each other’s offices, so our team perfected a collaboration style that included shouting to each other from our offices. If necessity (and laziness) breeds invention, this is where “someone’s typing” was invented.

As we were bringing the initial chat server to life, we encountered the usual bugs.  Debugging a chat server can be tedious.  In our first debug sessions, someone would run the server, a few of us would run the graphical client. We would type and make sure the message was received in full by the recipient.  Pretty boring.  Sometimes we would just sit there and wonder. Is Richard typing or is did he go get a snack at the machines?   If you walked the hallways, it would not be uncommon to hear us asking the same question over and over again. “Are you typing or did the server crash?” “Hey are you there”? “Are you typing”? “Hey!”  

After the first day, I decided to clear up the uncertainty by adding a debug message at the bottom of the chat window that simply echoed what the person was typing.  While this gave instant feedback and reduced the “Are you typing” question, it also unintendedly introduced the first hint of social anxiety.  You see, some of us were not the best spellers.  So, after a few embarrassing “there” versus “their”, I changed the debug message to simply echo an “x” after every character typed.  This had another interesting side effect. We would sometimes notice, as someone typed a long sequence of “x’s”, that before they pressed enter to send the message, the long sequence would start to shorten, only to result in a “Yes”, or “No” answer. We would quickly shout to the person. “Hey, you were going to say more, what were you going to say?”  It was at this moment that I changed the debug message to simply say; “Richard is typing…”.  And that was that.

The next day, Richard came to me and suggested that we patent the idea. I said, “what idea?“ “Patent the debug message?” I simply came up with the idea because I was tired of hearing people yelling between their offices. Richard really saw the value behind the algorithm of echoing characters over the Internet as someone typed. Richard also did some nice work to optimize the networking algorithms.  A good portion of the Patent is a method of how to disseminate the message to one or more chat clients.  Richard, with Bruce Clay our IP attorney wrote up the majority of the Patent disclosure and on October 30, 1997 the application was filed.  Here is the Abstract from the Patent:

 In an Internet chat environment, chat feedback indicators show receiver users of a chat application that at least one sender is in the process of preparing a message for viewing by chat environment participants. As a sender types text, a length of the text is sent to the receivers via unreliable data packets. Thus, the receivers are shown mask characters that correspond to the number of textual entries made by the sender. The sender is, therefore, provided with some sense of security in that the typed text will not be displayed to the receivers until complete. In addition, the receivers are provided with an indication that something is being prepared for display to them.

Over the years, I never thought much about it. Even as texting became a part of everyday life, I knew IBM had the “someone is typing” Patent tucked away in our large portfolio. But in 2011 when Apple iMessage came out, “someone is typing” was introduced to a broader audience.  Today, 5 billion people have smartphones around the world.  A few years ago, two of these users (my son and daughter) were blown away when I showed them my patent portfolio.  Their reaction has gotten me to talk about Patent 5,990,887 a bit more, even adding a mention to the Patent on my LinkedIn Profile. The other day, I noticed that the Patent will turn 20 at the end of this month (Nov 2019).  So, I thought I’d capture my recollection of the story, time and people involved.  In 1997 we were “expecting parents” as the Internet was about to boom. The now generation was about to be born. From that point on, a child would only know a world where instant information was at their fingertips; From Find My Friend to Find My Phone; Live traffic updates on Google Maps and Alexa answering questions about who is at my front door. Who would have thought that what started as a debug message, designed to reduce shouting from office to office or the need to actually get up and walk next door, would become one of the most basic features of the now generation?  Some like it, some don’t. But for me, it’s a story that reminds me of the great days of my early career at IBM.

Ilustration by Clay Braxton

Image by Clay Braxton

Are you sure you didn't also co-author this book? Tom Clancy loved to give his 10 minute speech about the grand history of human story telling throughout the ages, and his humbleness carrying on the long tradition. I know, because I was there too, and a lot of stories were told to a lot of people at many levels... ... ... ... ... ... ... ... 🤥

  • No alternative text description for this image
Like
Reply

This is a dellusional story Jerry? I am the first name on the patent as per requirement of the USPTO for the inventor and co-inventors listed after. Its not in alphabetical order on purpose by the USPTO. I wrote the chat prototype and put dot dot in for when someone is typing and also stated we use UDP packets to be light and not impact the communication. Your contribution was the claim we need multiple lines for multiple chats. So I have no idea why you keep hashing this out as if you created the idea? And hello to Doug Cox who can vouch for my honesty. Geez keep it real. I am sure Bin can chime in too. The back story is confused.

now it’s a boy band song too... https://youtu.be/6sS8MmkqDes #3Dots congrats again Jerry!

Like
Reply

I love this story, thanks for sharing!

Wow ! Super interesting story !

To view or add a comment, sign in

Others also viewed

Explore content categories