I agree with how effortless a quick text exchange can be, and in combination with sufficient advances in NLP, I think it will be a terrific new medium through which we all communicate with apps. But this market won’t wait for perfect NLP to emerge. And while CS PhDs keep eking out a couple basis points of improvement in NLP accuracy each year, important apps are going to get built using texting. But, there’s one user interface restraint I want to focus on that I feel holds back most texting applications. My point requires a brief history lesson.
In the beginning was the command line. The interface design was a little blinking cursor after a “>” or a “$” depending on your OS flavor of choice. It was infinitely extendable, flexible, and lightning fast in the hands of a power user. But most people are not power users, and for everyone else, the primary problem of the command line was the lack of affordances. Specifically, the ability to do anything at all with the system requires prior knowledge of keyword commands that trigger apps, and none of these options are visually represented on the screen for the user. If you want to see the contents of your current directory, you needed to know to type “dir” or “ls” (flavor dependent, again). For me personally, the worse was “rm”… I would always type “delete” or “erase” instead; I had some mental block that always made me forget the keyword “rm”.
By contrast years later, the GUI was invented (thanks Xerox PARC), and brought many affordances with it via the skeuomorphic desktop metaphor. Files are laid out visually in front of the user, and there are clear affordances for the most popular actions, which requires far less prior knowledge and memorization in order to use the system. If you want to delete a file, you don’t need to remember “rm”, instead you just drag a file icon into a trash can, which is a wonderful metaphor because a trash can affords throwing away unwanted stuff.
Most texting apps I have used fall into the trap of the command line; a blinking cursor and hidden keywords lack affordances. Jonathan touches on this issue briefly in his post when he refers to the advantages that Apple’s QuickType interface offers in response to text-based prompts. However, that really only works for a level of engagement with an app that as complicated as a Choose Your Own Adventure book’s interface . For apps that want to offer the user deeper layers of engagement, the lack of affordances in texting quickly emerges as a hurdle to be overcome.
For that reason I found the most promising section of Jonathan’s post to be the discussion of GUI-aided texting. In that hybrid (like a hybrid between the Desktop GUI and the command line) there could be an app design metaphor that could have all the advantages of texting, while still offering the user affordances for all the key functionality of the app. But I characterize GUI-aided texting as “promising” because most of the GUI-aided example apps use the GUI compotent for output visualization (charts and pictures could be responses, instead of just text). Instead, I’m excited by the idea of GUI-aids that will make all the functionality of the app more intuitive via affordances.
I’m looking forward to seeing this texting-driven form of human computer interaction evolve over the coming years as more entrepreneurs recognize the power of texting as a primary interface with an app. I have a front row seat in this race as an investor in Kik, which has an interesting point-of-view on what the hybrid between apps and texting looks like (paraphrased concisely, texting is the distribution glue through which apps are shared and discovered). I’m confident this is going to be an interesting category and we’ll see some very important companies built here.