Where the text faces devs use came from
The shrug, the table flip, Lenny, the look of disapproval. You use them all the time. Almost none of them were designed, and most took a strange road out of Japan to reach your keyboard. A short, honest history. ( ͡° ͜ʖ ͡°)
You already use these. The shrug ¯\_(ツ)_/¯ in a commit message. The table flip (╯°□°)╯︵ ┻━┻ when CI goes red again. Maybe Lenny ( ͡° ͜ʖ ͡°) in a Slack thread you regret. They feel native to programmer culture, like they were always there.
Almost none of them were. Most of these faces came out of Japan, some of them decades ago, and took a genuinely strange road to reach your keyboard. I run a little site for copying them, so I went looking for where a few actually come from. One warning before we start: meme origins are murky and full of confident misattribution, so where the trail goes cold, I'll say so rather than make something up.
First, why they look "upright"
There are two family trees here, and they started four years apart.
The Western emoticon is the one you tilt your head for. Scott Fahlman proposed :-) on a Carnegie Mellon bulletin board in September 1982, to mark jokes. It reads sideways, and it's all about the mouth.
The Japanese branch went the other way. The commonly cited birthday is June 1986, when a user on the ASCII-NET service posted (^_^), read straight on, no head-tilt required. These are kaomoji, from 顔 (kao, "face") and 文字 (moji, "character"), and they emphasize the eyes, not the mouth. Through the 1990s they exploded on 2channel, Japan's giant textboard, where people stitched characters into faces, animals, and whole scenes.
That eye-first, upright style is the family almost every face below belongs to. It is also why they feel more expressive than a sideways :-).
¯\_(ツ)_/¯ the shrug
Look closely at the face in the middle. That is ツ, the Japanese katakana character "tsu," drafted in purely because it looks like a little smile. The arms and the ¯ shoulders are just typography around it.
The shrug is old in kaomoji terms, but its jump into Western everyday use is usually credited to a literary agent named Caroline Eisenmann around 2010, who used it on an OkCupid profile before it spread on Twitter. I would treat the exact "who was first" as fuzzy. What is not fuzzy is why it stuck with developers: it says "I don't know," "not my problem," and "it is what it is" in one gesture, and it is pure text, so it survives a commit message and a terminal without turning into a tofu box.
(╯°□°)╯︵ ┻━┻ the table flip
This one is a little drawing. (╯°□°)╯ is a person with their arms thrown up, and ┻━┻ is the underside of an overturned table.
It comes from a real Japanese comedy and rage trope called chabudai-gaeshi (ちゃぶ台返し), literally flipping the low dining table, the kind of dramatic blow-up you would see from a furious father in old manga and anime. The exact first text version is lost, but it grew out of the same 2channel emoticon tradition and later crossed to the West through online games and forums. My favorite part is the sequel someone inevitably posts underneath: ┬─┬ ノ( ゜-゜ノ), calmly putting the table back.
( ͡° ͜ʖ ͡°) Lenny
After all that murk, here is one with an almost exact birth certificate. Lenny was posted to the Finnish imageboard Ylilauta on November 18, 2012, in a thread about spam settings. Within days it had derailed the thread, jumped to 4chan, and landed on Reddit, where people got temp-banned for spamming it. Where the name "Lenny" came from, nobody really knows.
One thing worth knowing as a developer: Lenny is built from Unicode combining characters, the marks that sit on top of the others. That is why he occasionally smears across a line or breaks in an input that does not handle combining marks well. The shrug never does that, because it is all simple characters.
ಠ_ಠ the look of disapproval
This is my favorite piece of trivia in the whole set. Those flat, judging eyes are the character ಠ, which is a real letter, ṭha, from Kannada, one of the major languages of southern India. It carries actual meaning to millions of people. The internet borrowed it for one reason only: it looks exactly like a glaring eye with a heavy brow. The face is traced back to 2channel, then spread through 4chan around 2007 and Reddit in the early 2010s.
A Japanese smile, an Indian consonant, some ASCII furniture. None of it designed for this.
The thread tying them together
Here is what I find genuinely nice about all this. Almost none of these were made. They are found objects. A katakana tsu that happened to smile, a Kannada letter that happened to glare, a drawing of a flipped table. People picked up whatever characters were lying around and made faces out of them.
And because they are only characters, they go everywhere characters go. A terminal, a git log, a monospace diff, a commit message, a chat box. That is the quiet reason the shrug outlived fancier emoji in places like that: there is nothing to render, so nothing breaks.
If you want to fall down this rabbit hole, I keep a whole catalogue of them sorted by mood over at Kaomojikan, and the data (readings, tags, categories) is open under MIT if you are building something. Go flip a table (╯°□°)╯︵ ┻━┻
More from the blog: A mascot that follows your cursor.