I <3 Steve McConnell*
Coding Horror
programming and human factors
by Jeff Atwood

June 12, 2008

ASCII Pronunciation Rules for Programmers

As programmers, we deal with a lot of unusual keyboard characters that typical users rarely need to type, much less think about:

$ # % {} * [] ~ & <>

Even the characters that are fairly regularly used in everyday writing -- such as the humble dash, parens, period, and question mark -- have radically different meaning in programming languages.

This is all well and good, but you'll eventually have to read code out loud to another developer for some reason. And then you're in an awkward position, indeed.

How do you pronounce these unusual ASCII characters?

We all do it, but we don't necessarily think much about the words we choose. I certainly hadn't thought much about this until yesterday, when I read the following comment left on Exploring Wide Finder:

A friend sent me a Java code fragment in which he looped through printing "Thank You!" a million times (it was a response to a professor who had extended the deadline on a paper). I responded with a single line of Ruby to do the same, and a single line of Lisp.

He wrote back: "Underscores, pipes, octothorpes, curly braces -- sheesh... I'll take a mild dose of verbosity if means I don't have to code something that looks like it's been zipped already!"

What the heck is an octothorpe? I know this as the pound key, but that turns out to be a US-centric word; most other cultures know it as the hash key.

I'm often surprised to hear what other programmers name their ASCII characters. Not that the words I personally use to identify my ASCII characters are any more correct, but there's far more variability than you'd expect considering the rigid, highly literal mindset of most programmers.

Perhaps that's why I was so excited to discover the ASCII entry in The New Hacker's Dictionary, which Phil Glockner turned me on to. It's a fairly exhaustive catalog of the common names, rare names, and occasionally downright weird names that programmers associate with the ASCII characters sprinkled throughout their code.

How many of these ASCII pronunciations do you recognize? Which ones are the "correct" ones in your shop?

  Common Names Rare Names
! exclamation mark
bang
pling
excl
not
shriek
factorial
exclam
smash
cuss
boing
yell
wow
hey
wham
eureka
spark-spot
soldier
control
" quotation marks
quote
double quote

literal mark
double-glitch
dieresis
dirk
rabbit-ears
double prime
#
hash
pound sign
number sign
pound
sharp
crunch
hex
mesh
grid
crosshatch
octothorpe
flash
square
pig-pen
tictactoe
scratchmark
thud
thump
splat
$ dollar sign
dollar
currency symbol
buck
cash
string
escape
ding
cache
big money
% percent sign
mod
grapes
double-oh-seven
& ampersand
amp
amper
and
and sign
address
reference
andpersand
bitand
background
pretzel
' apostrophe
single quote
quote
prime
glitch
tick
irk
pop
spark
closing single quotation mark
acute accent
( ) opening / closing parenthesis
left / right paren
left / right parenthesis
left / right
open / close
open / close paren
paren / thesis
so/already
lparen/rparen
opening/closing parenthesis
opening/closing round bracket
left/right round bracket
wax/wane
parenthisey/unparenthisey
left/right ear
[ ] opening / closing bracket
left / right bracket
left / right square bracket
bracket / unbracket
square / unsquare
u turn / u turn back
{ } opening / closing brace
open / close brace
left / right brace
left / right squiggly
left / right squiggly bracket/brace
left / right curly bracket/brace
brace / unbrace
curly / uncurly
leftit / rytit
left / right squirrelly
embrace / bracelet
< > less / greater than
bra / ket
left / right angle
left / right angle bracket
left / right broket
from / into (or towards)
read from / write to
suck / blow
comes-from / gozinta
in / out
crunch / zap
tic / tac
angle / right angle
* asterisk
star
splat
wildcard
gear
dingle
mult
spider
aster
times
twinkle
glob
Nathan Hale
+ plus
add
cross
intersection
, comma cedilla
tail
- dash
hyphen
minus
worm
option
dak
bithorpe
. period
dot
point
decimal point
radix point
full stop
spot
/ slash
stroke
slant
forward slash
diagonal
solidus
over
slak
virgule
slat
\
backslash
hack
whack
escape
reverse slash
slosh
backslant
backwhack
bash
reverse slant
reversed virgule
backslat
: colon dots
two-spot
; semicolon
semi
weenie
hybrid
pit-thwong
= equals
gets
takes
quadrathorpe
half-mesh
? question mark
query
ques
quiz
whatmark
what
wildchar
huh
hook
buttonhook
hunchback
@ at sign
at
strudel
each
vortex
whorl
whirlpool
cyclone
snail
ape
cat
rose
cabbage
commercial at
^ circumflex
caret
hat
control
uparrow
xor sign
chevron
shark (or shark-fin)
to the
fang
pointer
_ underline
underscore
underbar
under
score
backarrow
skid
flatworm
` grave accent
backquote
left quote
left single quote
open quote
grave
backprime
backspark
unapostrophe
birk
blugle
back tick
back glitch
push
opening single quote
quasiquote
| bar
or
or-bar
v-bar
pipe
vertical bar
vertical line
gozinta
thru
pipesinta
spike
~ tilde
squiggle
twiddle
not
approx
wiggle
swung dash
enyay
sqiggle (sic)

If you're curious about the derivation of some of the odder names here, there are an extensive set of footnotes (and even more possible pronunciations) at the ascii-table.com pronunciation guide.

So the next time a programmer walks up to you and says, "oh, it's easy! Just type wax bang at hash buck grapes circumflex and splat wane", you'll know what they mean.

Maybe.

Posted by Jeff Atwood    View blog reactions
« Markov and You
Don't Go Dark »
Comments

"andpersand"?
That guy's just making stuff up

Eam on June 12, 2008 5:21 AM

What about we all agreeing on a standard?
Standard for weird characters - SWC

Niyaz PK on June 12, 2008 5:23 AM

Or much better, we should select tje funniest names and start using them...
Or even better, use different varieties in the same context. Let us confuse 'em

Niyaz PK on June 12, 2008 5:25 AM

@ is spanish is arroba.

Fenris on June 12, 2008 5:26 AM

The symbol wich gives me mmore headaches is the ~ symbol, mostly because no one uses it ever, so no one knows how its called. The easiest way I found to explain it is by using the word "oflo", which a fellow programmer invented: basically, since no one knows what a oflo is, I don't have to come up with an esoteric (although correct) name - all i have to do is wait for the "what?" question, and draw the symbol in the air (sometimes I roll my eyes just to make the other guy feel bad for not knowing what a oflo is). It doesn't work very well on the phone, though.

Martin on June 12, 2008 5:30 AM

cool topic!

David on June 12, 2008 5:31 AM

Talking about pronunciation, today I was talking about some LINQ code and we both wondered, how do you guys read out loud lambda expressions such as "t => t.Name" ?

Rod on June 12, 2008 5:31 AM

So if # has 'pound' and 'pound sign' as common names, what are the common names for ?

PJH on June 12, 2008 5:32 AM

In Ruby, the names of methods that return true or false end with a question mark. I like to pronounce it as a Canadian "eh", so that "empty?" becomes "empty, eh?"

isani on June 12, 2008 5:35 AM

> The symbol wich gives me mmore headaches is the ~ symbol

I've always heard "tilde" or "squiggle" for this one.

> how do you guys read out loud lambda expressions such as "t => t.Name"

Oh man, I don't even want to go there -- there have to be completely different rules for multiple character ASCII sets.

> So if # has 'pound' and 'pound sign' as common names,

I've called it 'pound' for a long time, but I think I will switch to 'hash' from this point on. I guess for a .NET ecosystem developer, I could call it 'sharp', as in C# .. we may say "csharp" but certainly don't want to go around saying "coctothorpe" :)

Jeff Atwood on June 12, 2008 5:35 AM

Really you should consult a dictionary and find out which is the 'correct' answer for each symbol. This may not reflect common usage in the computing industry, but that's normal for all forms of language.

And saying c-octothorpe to annoy C# devs never loses its shine.

Did you know Microsoft is making a new language to replace C#? Its C$, pronounced "ca-ching" :)

AndyB on June 12, 2008 5:38 AM

That's one (of rather few) things I like about the VB or VB.NET language: You can read it more or less without having to pronounce too many ASCII characters.

Matthias on June 12, 2008 5:41 AM

What happened to 'ampersat' ('tis a common word, round my way).

Or even 'asperand'

Dan on June 12, 2008 5:43 AM

I'd avoid using 'quotation marks' to describe the " character as that is a very English-centric term as the table on this page shows:

http://en.wikipedia.org/wiki/Quotation_mark,_non-English_usage

I prefer to use 'double quote'.

Skizz

Skizz on June 12, 2008 5:43 AM

Presumably you've come across geek poetry?

http://www.cise.ufl.edu/~ddd/poem.htm

Mark on June 12, 2008 5:44 AM

# has always been "number sign" to me.

I think it would be neat to standardize on unambiguous, one-word, preferably one-syllable, names for each character. Bang, quote, hash, square, unsquare, grave, pipe, etc. You would probably want to do the same for certain multi-character ones like => (pointed out above), ==, ->, //, .., /*, etc. Unfortunately there's also context to deal with... '.' may be "period" inside a string but I only hear "dot" everywhere else....

Rhywun on June 12, 2008 5:46 AM

I started playing around with BASIC when I was around six years old on a Vic 20 - due to this early age I didn't have a clue what the proper names for most of the symbols were so I invented my own. The only one I can remember today was calling a semi-colon a jig.

Burns on June 12, 2008 5:47 AM

Why is

1000000.times { puts "Thank You!" }

difficult to spell?

derJan on June 12, 2008 5:49 AM

@AndyB: "saying c-octothorpe to annoy C# devs never loses its shine."

True, but it's not actually correct since the language is "C-Sharp" not "C-Hash".

The two are distinct symbols. Hash (aka Number Sign, aka Octothorpe) is Unicode U+0023, whereas Sharp is U+266F and typically has sloping horizontal bars on the glyph.

http://en.wikipedia.org/wiki/Number_sign
http://en.wikipedia.org/wiki/Sharp_(music)

Graham Stewart on June 12, 2008 5:51 AM

Burns: Same here, we used to call quotation marks for "birds".

Andreas on June 12, 2008 5:54 AM

i've always gotten by by drawing the characters into the air. I don't know what i'd do if i'd have to explain say ~ (tilde) to someone on the phone. Even more so if the person wasn't really computer savvy.

But now that i think about it i remember doing that on the phone more than once. It musn't have been all that traumatizing an experience after all, otherwise i would of remembered it.

Jazz on June 12, 2008 5:57 AM

Surely these things have different names based on the context.
! is 'bang' in #! /bin/perl and 'not' in if(!a) well in my house they are :-)
Also you missed ... is that an elipsys?

Gilbert G on June 12, 2008 6:00 AM

& = 'et', so et cetera (etc.) becomes &c.

JL on June 12, 2008 6:01 AM

Under normal circumstances, I call # the pound sign, but Perl standard calls it hash, and the UNIX tagging at the beginning of most perl programs (#! /usr/bin/perl ) is called the hash-bang.

Dave on June 12, 2008 6:04 AM

I find it strange that you put 'full stop' in the rare section. Periods are (almost) always called full stops in Enlgand, as a certain youtube video featuring Al Murray's standup will show: (couldn't find the video, so I'll try to remember what he said)

[speaking to an American audience member]

"...We're divided by a common language, see to you, 'period' probably means 'full stop' doesn't it? Which is essentially the same thing to an English man a certain time of the month..."

mike on June 12, 2008 6:05 AM

In greek some people call the @ sign "duckling" (the greek equivalent word)! Could never figure out why they do that.

Nikos Steiakakis on June 12, 2008 6:06 AM

When you said pound you meant not # (hash symbol in my books)

I guess that comes of being English though.

Andy on June 12, 2008 6:07 AM

In spanish we often call the # "ta-te-ti" which is spanish for Tic-tac-toe.

Petruza on June 12, 2008 6:08 AM

I agree with Gilbert. I use different words for ASCII chars depending on context, and the example of the bang/not/factorial is a good one especially since that switch in context can also be in the same code, i.e. Perl in this case. The converse is also true that a particular pronunciation can be a homophone for multiple ASCII chars. So, if I say to a colleague, "Type if x equals y," this implies a certain form based on context. In one language, the parens may be optional. In another, they may be required but the other party should know that and as such they don't require pronunciation.

Where this gets really screwed up is with slash v. backslash. Can't count the number of times I have had someone telling me how to do something at work and messed it up because they said backslash when they should have said slash.

Jamie Phelps on June 12, 2008 6:10 AM

My new word of the day is gozointa.

dnm on June 12, 2008 6:10 AM

Jamie Phelps: I'm sick and tired of the damn commercials that're run by multibillion dollar corporations on TV and radio that still get FORWARD SLASH (/) confused with BACK SLASH (\)

If they want, they can throw me a few thousand bucks and have me look over their radio/TV scripts.

dnm on June 12, 2008 6:11 AM

Caret, underscore, and pipe are far more commonly used here than the bolded words. Pipe especially - have you ever heard of "bar-delimited" text?

Coming from a Delphi background, I've also always known the @ character as address or address-of.

Aaron G on June 12, 2008 6:13 AM

Most of those rare names sound like some sort of exotic drug nicknames.
I usually just end up calling things 'squiggly line' and 'uppy squarey bracket thing' while waving my arms about and trying to form the shapes with my fingers. I'd take the time to learn the proper names but nobody would understand anyway.

Tom on June 12, 2008 6:14 AM

I understand the word parenthesis, but in the UK, () are nearly always just 'brackets' with the other two being square and curly brackets.

aka on June 12, 2008 6:16 AM

nicely done and much better laid out than the other site. because of that i'm linking to you rather than the source, cuz 'dang! who needs all the visual chaos?'

thanks for the heads-upBANG

BTW: love the show but let's see if you can work the word "imprecation" in during the next show...and no cheating; it has to be unobtrusive. ;o)

Keng on June 12, 2008 6:17 AM

@dnm I totally agree! Like they couldn't have some intern from IT clarify for them that the thing was wrong...

Jamie Phelps on June 12, 2008 6:17 AM

In order to avoid being too US or English-centric, let me tell you how I spell some of these characters in french (the other one are probably sharing some latin origin and sounds like their counterparts) :
" : guillemets
# : dise
& : esperluette
[] : crochets
{} : accolades
, : virgule
@ : arobase
_ : espace soulign

nojhan on June 12, 2008 6:18 AM

As our fellow Fenris said above, @ is spanish is 'arroba' which was a mass unit, like a barrel, equivalent to 11.502 kg.

^ is "techito" ( Rooftop )

I've also heard someone call the vertical bar | "hurn" Which means Ferret. ( the animal ) Wonder why...

Petruza on June 12, 2008 6:20 AM

nojhan: I live in Canada, where our French is horribly bastardised. Let me translate to french for you our interpretation of those symbols.

": le quote.
#: le hash (or le signe de numero)
&: l'ampersand.
[]; les brackets
{}: les braces
,: le comma
@: le at
_: l'underscore.

These are all things we use to send 'le email' sur "l'internet"

I'm le serious.

dnm on June 12, 2008 6:21 AM

Now you are making 'Le hash' of it all.

Chris Chubb on June 12, 2008 6:26 AM

It's funny how @ gets animal names in other languages.

igorsk on June 12, 2008 6:28 AM

I prefer the intercal pronunciations

hova on June 12, 2008 6:28 AM

Everyone knows the proper way to convey these symbols when talking out loud is to make some sort of inarticulate noise while tracing the symbol in midair with your fingertip.

AndyL on June 12, 2008 6:30 AM

In ISO 646-GB the character at position 35 (# in ISO 646) was replaced with a . C compilers on 7-bit machines used the underlying character codes, as you would expect, so you would have seen:

include "stdio.h"

etc. So I suppose you could call # the 'pound' character, but a Brit would never call it that!

The GB variant was pretty minor, I recall Stroustrup (either in the ARM or in Design and Evolution of C++) referring to coding in C in Denmark, where [\]{|} are replaced with , so the "Hello {name}" program becomes:

int main(int argc, char* argv)

if ( argc > 1 )

printf( "Hello, %sn", argv0 );
return 0;

Unsurprisingly programmers tended to use macros to replace these horrors with usable symbols. The names were eventually standardised in iso646.h, and two workarounds went into C and C++: trigraphs and digraphs. Trigraphs offer more coverage and work within strings; digraphs are only recognized as top-level tokens but are much easier to understand.

With trigraphs:

int main(int argc, char* argv)
??<
if ( argc > 1 )
??<
printf( "Hello, %s??/n", argv??(0??) );
return 0;
??>
??>

Digraphs (C++ and C99):

int main(int argc, char* argv)
<%
if ( argc > 1 )
<%
printf( "Hello, %sn", argv<:0:> );
return 0;
%>
%>

(note that there's no replacement for \ and it wouldn't work within a string even if there was)

Mike Dimmick on June 12, 2008 6:30 AM

Wow! Little did I know when I shot off a tweet that it would instigate the writing of a blog post!

The rest of the Jargon File is a fascinating read as well.. I used to recommend it in my "Introduction to UNIX" class, many years ago. In it contains a lot of the roots of what made the original UNIX developers who they were, and subsequently, how that affected UNIX. For example, did you know that, before writing the first UNIX kernels, most of the developers at MIT were part of a model train club? Not so unusual if you remember they grew up in the 40s and 50s. But a lot of the jargon is derived from railroad terms.

Also, check out the entry on WOM. Good stuff.

J. Phil on June 12, 2008 6:31 AM

I like the suck and blow symbols...

Imagine a program

if( you < me or you > them )
...
}

Does really someone use these pronunciation?

Sounds like a joke.

Luc M on June 12, 2008 6:31 AM

Well,

My program has been censured... lol

Luc M on June 12, 2008 6:33 AM

We (English people who program in ksh) at work call < and >, left chevron and right chevron respectively.

coldclimate on June 12, 2008 6:36 AM

My C++ and Java Teacher always called these: {} "Curly Braces"

He also called parenthesis "Man and Wife" because "they always go together"

Matt on June 12, 2008 6:38 AM

I like to call < and > "alligator lips" - I first heard the term to describe long crescendo and decrescendo marks in written music. (The things that tell you to play louder or softer.)

Likewise my background in music has always made me refer to "#" as "sharp", not "pound". I think it's more standard to call it "sharp" than people think, as I've always heard the first 2 characters of the first line of a *nix shell script (#!/usr/bin/bash or whatever) referred to as "sh'bang".

Josh Kodroff on June 12, 2008 6:41 AM

# isn't the pound sign. The symbols for pound are for currency and lbs. for weight. :D

Actually, on a British keyboard the is shift-3. I think thats where # is on US keyboards, right? So at least as far as keyboard designers are concerned there is some relationship between the two symbols.

I only see one other US-centric item on the list. Who outside of the US calls a '.' a period? Well, I've never in my life heard of anyone call _ underline, but I don't know if thats a US thing or what.

Mat Scales on June 12, 2008 6:42 AM

I sometimes refer to the Curly Braces {} as "Bob Hope"s.

Thom on June 12, 2008 6:44 AM

? is also called "quem".

Dave Aronson on June 12, 2008 6:44 AM

also
() small brackets
{} middle brackets
[] big brackets

awahid on June 12, 2008 6:50 AM

My usages are highly dependent on context.
. "period" at end of sentence.
. "dot" in url, appending method to an object
. "point" in numbers.

' apostrophe when used as such. (you're)
' single quote when used to enclose a char or string 'your a looser'


amongst knowledgeable users,
\ "windows slash"
/ "unix slash"
amongst dummies:
\ - backslash above the enter key
/ - slash on the same key as the question mark.

` - back tick (or more frequently: "back tick at the upper left corner of your keyboard. No, that's the escape key. Up there, beside the one. No, to the left of the one. That's a two. Under the tilde. The squiggly dash. Here, let me type.")

^ - hat (from math x-hat, y-hat)

To users on the batphone
0 - Zero, not oh
o - oh not zero

mightybaldking on June 12, 2008 6:50 AM

cool.

I must say as a brit the name "pound sign" for the # has always irritated me. It seems to me that it requires some cultural ignorance to even consider the name a good one to begin with. After all there has been a pound sign in the english language far longer than there has even been an American nation...

It may sound petty, but consider if we called this the "dollar sign". I'm sure it would be just as irritating in reverse.

<3 america. :)

Jheriko on June 12, 2008 6:52 AM

In my experience (en_GB), the brackets have always been:

() = left/right bracket
[] = left/right square bracket
{} = left/right curly bracket ('bracket' can be omitted)
<> = left/right angle bracket ('bracket' can be omitted)

The last pair tend to change depending on context (e.g. less then/greater than in comparisons). And using bra/ket is just WRONG.

[The Wikipedia page for bracket (http://en.wikipedia.org/wiki/Bracket) suggests that the difference between the default bracket type is another English vs. American difference.]

Michael on June 12, 2008 6:53 AM

Martin said: "The symbol wich gives me mmore headaches is the ~ symbol, mostly because no one uses it ever..."

You must not be an embedded designer. We use it all the time to invert bits. Very useful for masking all but certain bits in a byte.
e.g.
#define ENABLE_BIT 0x02
x = register & ~ENABLE_BIT;

This will mask out all the bits except the Enable bit of "register".

Fred on June 12, 2008 6:54 AM

Some danish pronunciations:

" = gsejne = goose eyes

{} = tuborgklammer = tuborg braces (as it resembles the old logo of a danish beer brewery named Tuborg)

Chris. on June 12, 2008 6:54 AM

Hopefully this won't mess up the characters... The first two are the less than and greater than, sometimes referred to as "waka".

An ASCII poem:

<> !*''#
^"`$$-
!*=@$_
%*<> ~#4
&[]../
|{,,SYSTEM HALTED

The poem can only be appreciated by reading it aloud, to wit:

Waka waka bang splat tick tick hash,
Caret quote back-tick dollar dollar dash,
Bang splat equal at dollar under-score,
Percent splat waka waka tilde number four,
Ampersand bracket bracket dot dot slash,
Vertical-bar curly-bracket comma comma CRASH.

-matt

Matt Newby on June 12, 2008 6:55 AM

I personally pronounce the * as "pointer" when this is its intended meaning, e.g., "int *x" becomes "int-pointer x". x is, after all, a pointer to an int.

Thomas on June 12, 2008 6:56 AM

Awesome post. Really made me wonder what I say for each, and more often than not, it was the bold term.

Benjamin M. Strozykowski on June 12, 2008 6:59 AM

\/ are called Obliques too (well... according to a scottish collegue)

AlexK on June 12, 2008 7:01 AM

My C++ teacher invented the pronunciation of 'row for => which is also how I pronounce the php -> since they're basically the same, you just need to know what I'm talking about to know what I'm talking about....

also for php, the $ is silent in a variable name. Though in Perl you probably should pronounce it--or just never explain Perl to begin with.

Andy Fundinger on June 12, 2008 7:02 AM

To be fair, it's relatively rare that you have to read source code "letter by letter" to someone. As someone above mentioned, if you say "if a equals b" everyone you would possibly say it to would know that it's supposed to mean "if (a == b)".

In the few instances of having to dictate a shell script to your mom over the phone, I find it helpful to say "that key left of the 1 key" :)

J. Stoever on June 12, 2008 7:02 AM

quote:

> So the next time a programmer walks up to you and says, "oh, it's easy! Just type wax bang at hash buck grapes circumflex and splat wane", you'll know what they mean.

Sounds like a PERL program.

Leonel on June 12, 2008 7:02 AM

I think I'm the only one who actually decoded "wax bang at hash buck grapes circumflex and splat wane":

(!@$%^&*)

DallonF on June 12, 2008 7:05 AM

Again, it depends heavily on the context.

I've come around to "paren" and "brace" over "bracket" and "curly bracket" (though it's still "square bracket" for me) as they're easier to say, despite not being terribly British. I'm also slightly disheartened to discover we Britains aren't meant to say period either, aaah well.

I find I need to find ways of "reading code" perhaps a little more than most because I find I think best when walking, so I think a lot about code while not at a computer. It rarely comes down to naming symbols though, unless I'm thinking up a new syntax.

As for reading C# lambdas, for something of the form "x => somecode" I read as "given x, somecode" or if you want to be more expressive "given x execute/perform/become somecode". I've also heard "lambda of x is somecode" which makes it's role as a form of anonymous function explicit, though one could argue technically it's incorrect. I do remember people on the C# team mentioning how they read it somewhere, but I can't find it now. Most likely on Channel9.

[ICR] on June 12, 2008 7:05 AM

"Martin said: "The symbol wich gives me mmore headaches is the ~ symbol, mostly because no one uses it ever..."

You must not be an embedded designer."

Or a game player. Tilde is used to bring down the console in Quake based games and many others. It causes a lot of headaches when it's not internationalized properly and on my english keyboard I have to press Shift+# instead of `.

[ICR] on June 12, 2008 7:10 AM

Actually "cedilla" is only used in french and is much different than a comma. Cedilla is the little tail that is added to 'C' in this character : ''

In french, comma is 'virgule' and cedilla is 'cdille'.

OlivierP on June 12, 2008 7:10 AM

The funniest ones i heard recently was someone referred to a : (colon) as a "double dot" and an apostrophe (') as an "up comma" - you couldn't make it up! :-)

Phil on June 12, 2008 7:14 AM

Btw,
In Deutsch ist ein "-" bitte ein Bindestrich und kein Minus!

Julian on June 12, 2008 7:18 AM

@DallonF: No, I did it too. You were just the first to post a comment on it. ;)

"!@#$%^&*? That's amazing! I use the same combination on my luggage!"

mbhunter on June 12, 2008 7:22 AM

The => is really difficult - just yesterday I tried to tell a colleague some C++ stuff and didn't know how to call this. Explaining it with "derefencing" seems to be the least bad way...

Btw. for single chars there's the "ascii" command line tool (http://www.catb.org/~esr/ascii/). And I now noticed that it will even give correct albeit verbose results if you run "
ascii wax bang at hash buck grapes circumflex and splat wane" on command line :-D

oliver on June 12, 2008 7:24 AM

What, no "wave" for tilde? I must be extra-rare...

sapphirecat on June 12, 2008 7:24 AM

When I was in first year I had a C++ professor who had a background in typography. And one day he just went off on a tangent and said "Oh, by the way, you'll never be able to guess what '#' is actually called." Ever since then, I've been using the word "octothorpe" to irritate my friends.

Skrud on June 12, 2008 7:25 AM

>>"I think it's more standard to call it "sharp" than people think, as I've always heard the first 2 characters of the first line of a *nix shell script (#!/usr/bin/bash or whatever) referred to as "sh'bang".<<

That's funny, I never thought of that in terms of the word sharp. The first perl book I ever read called it a hash-bang, and said that it could be shortened to sh'bang -- the sh deriving from the end of 'hash.'

I guess it works for either.

Neil on June 12, 2008 7:28 AM

Here in Brazil we pronounce "#" as "lasagna".

Tiago S. on June 12, 2008 7:29 AM

Thanks!

One of the most useful blog posts I have seen in awhile. The most often misused/misunderstood here at my work: slash/backslash and brackets & braces.

~Lee

Lee Brandt on June 12, 2008 7:33 AM

Julian: Bindestrich is way too long; Minus is much more efficient to say. And the computer doesn't distinguish that anyway (it's always ASCII 0x2d).

[ICR]: Tilde is also bad on certain german keyboard layouts, where you have to press AltGr+~ and then Space. Really annoying for a "quick" /donate 100 on the console...

oliver on June 12, 2008 7:33 AM

For me:
'<>' are "of"
'std::vector<int>' is pronounced "stid vector of int"
'[]' are "sub"
'array[i]' is pronounced "array sub i"
'@' is pronounced "AT" with more emphasis than if you has just written 'at'
'#!/bin/bash' is "hash bang bin bash" also called "drum-set falling down stairs"

DysgraphicProgrammer on June 12, 2008 7:42 AM

- somehow became tack when I first encountered it (vice dak I suppose).


You know: net use wack wack server wack share tack 1 space slash user colon company dot com wack steve

I also learned #! as sh'bang.

SteveJ on June 12, 2008 7:42 AM

" - inverted commas
< - left quack
> - right quack
<> - quack quack!

Paul Roberts on June 12, 2008 7:44 AM

I'm surprised to see "strudel" on the list for @. I've only heard it in Hebrew. Are the names listed in any particular order? I wonder how much an effect Hebrew speakers have on programming. For example, the name for "::" in one dialect of PHP: Paamayim Nekudotayim (http://en.wikipedia.org/wiki/Paamayim_Nekudotayim)

Nathan Fellman on June 12, 2008 7:47 AM

I've been calling <%= this thing %> a "butterfly tag" (squint at the percent sign), but I really only do it to annoy my co-workers at this point.

Matt on June 12, 2008 7:47 AM

In Malaysia, @ is also "read" as "alias".. I still don't know why..

How do you folks read this btw: <=>

astigmatik on June 12, 2008 7:49 AM

argh.. that should have been <=>

astigmatik on June 12, 2008 7:49 AM

@ sign has some really funny names around the world. For example in Poland we call it a monkey (ma&#322;pa).
http://www.experiencefestival.com/a/At_sign/id/304590

toonczyk on June 12, 2008 7:53 AM

Calling '#' for hash may be confusing if you're also dealing with hash maps or hashing algorithms... ;) (In Norway we just call it 'square'.)

'&' is also called 'et' (from Latin/French).

Regarding 'qoutation marks', that also quickly gets wrong in Norwegian, since we often use << and >> (they don't have ASCII chars) to quite stuff. Usually we just say single and double quotes for ' and ", but a lot of people confuse ' and `, which can be dangerous if you're ever doing anything in a *nix shell.

BTW: Trying to pronounce obscure variable and function names can also be quite entertaining.

Anders Sandvig on June 12, 2008 7:54 AM

Sign Swedish (direct english translation if available)
' fnutt
" dubbelfnutt (double fnutt)
{ } vnster/hger msvinge (left/right seagull)
# brdgrd (lumber yard)

C-J on June 12, 2008 7:57 AM

Great topic!

Ruby's comparator method <=> is sometimes called the spaceship because it looks like a UFO! Also, I've heard the => operator called the hash rocket because it's used to assign values to hash keys and looks like a rocket. I can't understand why most of you folks don't seem to like Ruby...

John Topley on June 12, 2008 7:58 AM

> So the next time a programmer walks up to you and says, "oh, it's easy! Just type wax bang at hash buck grapes circumflex and splat wane", you'll know what they mean.

Yes. They mean "I'm a poser who thinks using obsolescent vocab words from the Jargon File makes me leet."

(*Reading* the jargon file is fascinating and educational. *Emulating* it, not so much.)

Dan on June 12, 2008 7:58 AM

When I worked for a software company that had telco customers, ! was bang, * was splat, and # was either pound or octothorpe. I still like hearing bang for !, but I never got used to splat for *.

Jim on June 12, 2008 8:01 AM

# python -c "print 'Thankyou' * int(1e6)"

Funny stuff in Spanish.

@ is "arroba" which is equivalent to 25 pounds (12.5kg)

$ is "pesos" because I'm in Colombia we have here the COP (Colombian Peso)

[] is "corchetes" from the french "crochet" which is some kind of hook.

{} is "llaves" which literally means keys.

^ I call this "sombrerito" which means little hat.

_ is "barra al piso" this sounds kinda funny.

~ I call this "virgulilla" some people call this "gusanito" which means little worm.

AndresVia on June 12, 2008 8:02 AM

> How do you guys read out loud lambda expressions such as "t => t.Name"

Using the phrase "goes to", as in "t goes to t.Name".

jalbert on June 12, 2008 8:03 AM

I have heard, and I do call, the * a kleene star...

stetic on June 12, 2008 8:04 AM

You left out the all-important "broken-bar" on UK keyboards, a real tragedy of a character for US developers, especially when it is used as a string delimiter:

http://en.wikipedia.org/wiki/Vertical_bar

Jonathan on June 12, 2008 8:06 AM

/ uphill \ downhill

Name on June 12, 2008 8:07 AM

/ divide(d( by))

Name on June 12, 2008 8:09 AM

Conflating hyphens and dashes really bothers me. There are very few true dashes in programming contexts. They're mostly hyphens and subtraction operators.

But I'm a writer in addition to a programmer, so I need to keep these concepts distinct.

I've recently been trying to figure out which ASCII symbol is most overloaded. It's either ' or -.

Adrian on June 12, 2008 8:09 AM

I remember "@" being called pig-tail early in my experience as a touch-typist.

I also know of "" being pronounced "lambda" because it was the available printer character for that (leading to the name Pound-Sterling-calculus).

The same functional programming Brits also enjoyed referring to bras and kets. That is, "(" is a bra, ")" is its ket. Don't recall how (, [, and [ were differentiated.

orcmid on June 12, 2008 8:11 AM

\ downright
\ upleft
/ downleft
/ upright

Name on June 12, 2008 8:11 AM

I once had an IT instructor from the South who read "*" as "spuh-LAY-it".

Chris on June 12, 2008 8:11 AM

Reminds me of the Victor Borge 'Phonetic punctuation' sketch, in which he reads a story with all the commas, fullstops, dashes, etc pronounced...
Anyone else here old enough to remember that?

I work for a multinational company, so I believe it's important to use terms understood by everyone, and also not to refer to keyboard positions.

As a multilingual programmer, I also prefer the language-neutral terms rather than 'pointer', 'not', etc.

DavidR on June 12, 2008 8:17 AM

I find it interesting that there are so many different names for the same symbols. I'll definitely be paying closer attention to which terms the people around me are using. =]

Ari Patrick on June 12, 2008 8:25 AM

Hello!

Why isn't it possible anymore to enter characters
by pressing "Alt GR" and the numeric ASCII code into
the numpad?
Was that a feature of good old MS-DOS or of old keyboards?

So instead of saying "backslash" you say "Alt-GR 134" (octal)
or "Alt-Gr 92" (decimal).

(Can anyone remember if this system was decimal
or octal based?).

Erik

Erik on June 12, 2008 8:26 AM

WOW! The splat ("*")...

I was sure close.
When I cut my eye-teeth on a teletype terminal, I called it SPLOT.
...that's what it sounded like to me :-)

Larry Yates on June 12, 2008 8:30 AM

I just use the ASCII values instead of names. Saves time and reduces ambiguity. Doesn't everybody do that? :p

Derek on June 12, 2008 8:34 AM

Inspiring. I will now only refer to quotes as "dirks". :) (Two spot - wane)

Mark on June 12, 2008 8:35 AM

My colleagues use "drop" for \ and /. I soooo hate that :)

Erik: it still works, with both Alt keys (well, not in some keyboard layouts). And it's decimal.

Rytis on June 12, 2008 8:37 AM

Good topic. And fundamental to communicating programming syntax.

In conversations, we were always mixing up - [] {}. We came to this resolution: brackets have hard corners [], thus the hard "k" sound. Braces have round corners {}, thus the soft sound.

Although, that doesn't seem to be the end of it:
http://en.wikipedia.org/wiki/Bracket

I thought the math/engineering discipline would help, but at www.wolfram.com (makers of Mathematica):

"The rules for using brackets are just as simple. Arguments to Mathematica functions are always enclosed in square brackets [ ]. Lists, matrices, and arrays are always enclosed in curly brackets { }. Matrices and arrays are implemented simply as lists of lists."

Although the Open Standards Group glossary at
http://www.opengroup.org/onlinepubs/7990989775/xbd/glossary.html:

braces::
The characters "{" (left brace) and "}" (right brace), also known as curly braces. When used in the phrase "enclosed in (curly) braces" the symbol "{" immediately precedes the object to be enclosed, and "}" immediately follows it. When describing these characters in the portable character set, the names <left-brace> and <right-brace> are used.

brackets::
The characters "[" (left-bracket) and "]" (right-bracket), also known as square brackets. When used in the phrase "enclosed in (square) brackets" the symbol "[" immediately precedes the object to be enclosed, and "]" immediately follows it. When describing these characters in the portable character set, the names <left-square-bracket> and <right-square-bracket> are used.

dj on June 12, 2008 8:38 AM

I've usually heard the accent grave ` mark pronounced "thorn".

MattS on June 12, 2008 8:40 AM

"Pound Bang User Bin Bash."

"Whack Whack Host Whack Share Whack Folder Whack Program Dot Bat."

In the office, I sometimes get strange looks from passers by when talking with my fellows.

Tom Wozniak on June 12, 2008 8:42 AM


~ is clearly a cornflake, that's what I always call it!

John Birks on June 12, 2008 8:55 AM

The "@" sign is sometimes called "monkey tail" ("coada de maimuta") in Romanian.

Cristian on June 12, 2008 8:55 AM

Although I would never say it aloud, I still think of < and > as alligator symbols, because that's the way they were taught to me in grade school. As in, the alligator always wants to eat what's larger.

Burton on June 12, 2008 8:57 AM

in mexico we call
# = "gato" like cat its the same as tic-tac-toe,
@ = arroba
* = asterisco
$ = pesos
M$ = u know
| = pipe
~ = tilde
Tis one i dont know ^, i call it the "techo" (cieling) like in a house

Ricardo on June 12, 2008 8:57 AM

above post referring to > and <;, they got stripped out!

Burton on June 12, 2008 8:58 AM

At work we use Ruby, and we have weekly code reviews. Usually, the line of code is spoken, for example:

if foo.exists?

instead of saying "if foo dot exists question mark" we read it like you would read a sentence, raising the tone at the end of "exists" -- like asking a questsion.

Of course, we need to drag out exists to exiiiiiists and shift the tone up an octave or two ;)

Tom on June 12, 2008 9:00 AM

@Jeff:
"Oh man, I don't even want to go there -- there have to be completely different rules for multiple character ASCII sets."

You _have_ to go there, if you're talking about reading code aloud.

In a C++ context, I've heard "link" for ->, and "sub" for ::.

"Gozinta" for the pipe character is a new one to me. A former colleague who cut his teeth on Delphi, though, said that when reading assignment expressions aloud---backwards:

a = a + b;

became "a plus b gozinta a" (but, confusingly,

a += b;

became "a plus equals b").

Are you going to tackle the correct pronunciation of "char" next?

Alex Chamberlain on June 12, 2008 9:00 AM

In Spain # is frequently called 'almohadilla' which could be translated as pad, cushion or small pillow.

Venkman on June 12, 2008 9:06 AM

In Argentina we share most of the pronounciations as written by the Colombian guy, except:

_ : guin bajo, or simply "underscore"
~ : tilde or "uflo", also "viborita" (little snake)

Others:

# : Numeral
% : Porciento / porcentaje
* : asterisco
+ : (signo) ms
- : (signo) menos / guin
| : barra vertical, or "pipe"
" : comillas / comilla doble
' : apstrofe / comilla simple
/ : barra
\ : contrabarra
<> : menor, mayor

German on June 12, 2008 9:06 AM

My personal favorite for @ is 'amphora', pinned to a 16th century Italian merchant (if I'm remembering the possibly-apocryphal story right) who used the symbol as a short hand for ledgering up goods by unit volume -- which seems to line up nicely with the Spanish "arroba" folks have mentioned already.

Josh Millard on June 12, 2008 9:08 AM

I wonder where you get all these blog topic ideas from :)

sdon on June 12, 2008 9:15 AM

In Turkish:

$ dolar (dollar)
# sharp, numara (number), kare (square)
% yzde (percent)
() parantez (paranthesis)
{} k&#305;v&#305;rc&#305;k parantez (curly paranthesis)
* y&#305;ld&#305;z (star), arp&#305; (multiply)
[] k&#351;eli parantez (paranthesis with corners)
~ tilda, tilde
& ve (and)
<> kk/byk (small/big), kktr/byktr(is smaller/is bigger)
=> ise (if. Word order in Turkish is not like 'if a, b' but 'a if b' so it fits perfectly)
' tek t&#305;rnak (single quote)
" ift t&#305;rnak (double quote)
/ bl (is divided by)
\ ters bl (reverse is divided by)

serhat on June 12, 2008 9:17 AM

1000000.times {puts "thank you!"}
(dotimes (i 1000000) (write-line "thank you!"))

Why are you using "underscores, pipes, octothorpes, curly braces" for such a simple task? Your friend is right to question you! :-)

tc on June 12, 2008 9:29 AM

<i>The symbol wich gives me mmore headaches is the ~ symbol, mostly because no one uses it ever ... The easiest way I found to explain it is by using the word "oflo", which a fellow programmer invented:</i>

You don't have to invent a name for it '~' has a name - tilde.

http://en.wikipedia.org/wiki/Tilde

Must not spend a lot of time in shell ...

Brian on June 12, 2008 9:30 AM

Luc M

- I like the suck and blow symbols...
- Does really someone use these pronunciation?

Yes, for harmonica notation (you get different notes from the same hole depending which you do)

Also, there must be a right single quote if there's a left one, surely?

Jim Cooper on June 12, 2008 9:32 AM

In America there is no "common name" for the . We simply never have to describe that symbol. Occasionally it may be useful to express a price in British pounds, but you don't need to name the symbol for that, you just refer to the money in a normal casual way. ("Amazon dot co dot yoo-kay has that for fifty pounds. That works out to approximately a million dollars.")
On the very rare occasions when I do need to describe that symbol, there's no need for a short, quick way to say it, so I just describe it fully : "The symbol for the British Pound"

(By the way, I'm not defending our crazy habit of calling "#" "pound". I'm just answering PJH's question. )

AndyL on June 12, 2008 9:33 AM

M'colleague Maf decided that [0]-> (used to double-dereference inline in C on the Mac, when we had Handles) was pronounced 'sprong' - an excellent idea.
A Handle is a pointer to a pointer, used so that memory could be reallocated before we had MMU's - if you have nested data structures in Handles, sprong is much clearer than the alternatives GetMainDevice()[0]-> gdPMap[0]-> pixelSize instead of (** (** GetMainDevice() ).gdPMap ).pixelSize

Kevin Marks on June 12, 2008 9:34 AM

The subject of pronouncing => in lambda expressions came up on Eric Lippert's blog a little while ago:

http://blogs.msdn.com/ericlippert/archive/2008/05/16/reading-code-over-the-telephone.aspx

He suggests "goes to" and mentions "becomes" or "such that" as alternatives. Personally, I use "goes to", but there are some other interesting possibilities in the comments there.

Interesting topic. Pronunciation is one of those invisible things, you don't really notice the way you pronounce something until someone you're talking to doesn't know what you're talking about.

sandstone on June 12, 2008 9:35 AM

re: Jheriko

Silly Brit. A pound is a unit of measurement, while a pound sterling is a unit of currency (although the two are closely related). The number sign was formerly used for indicating weight, e.g. 5# = 5 pounds. Hence, we call it the pound sign. I like how in choosing between harboring mild anti-American sentiments or, say, doing a Google search, you chose the former. :)

.b

Bart on June 12, 2008 9:43 AM

Heh, in portuguese we call @ "arroba" which is a weight measure used for livestock.

http://en.wikipedia.org/wiki/Arroba

Hoffmann on June 12, 2008 9:52 AM

The | character has a special name for its use in logic, the "Sheffer stroke" ( http://en.wikipedia.org/wiki/Sheffer_stroke ), where it represents what would normally be called NAND (confusingly, in C-family languages, | tends to mean OR).

Matthew L. on June 12, 2008 9:56 AM

Some other language (Haskell) specific pronunciations would be :: read as "has type" and -> read as "to" ..

map :: (a -> b) -> [a] -> [b]

This is usually pronounced "map has type, function from a to b, to list of a to list of b".

Of course, I wonder why nobody has suggested the language-agnostic "[right] arrow", "[right] double-arrow", "left arrow", "left double-arrow" for ->, =>, <-, <= respectively.

Kyle S on June 12, 2008 9:57 AM

I started a Google Document for the localization of these pronounciation rules, and added the Dutch language:
http://spreadsheets.google.com/ccc?key=pRrnmp1WXt-faAxKFXex9FQ&hl=en

Georg M. on June 12, 2008 10:01 AM

I was aghast at the lack of "store" for "!". But on the extended version in the link it is present.

Daniel on June 12, 2008 10:11 AM

In the Netherlands @ used to be 'apenstaartje' which i guess in English would be monkeytale. But since email has become common, more and more people use the English 'at'.

^ is a 'dakje', a roof.

Oh yeah, and # is a 'hekje' here, a fence. You know, b'cos it really looks like the fence of your front garden...

The '-je' at the end of each word means that the thing you describe is small. So actually it's small monkeytale, small roof and small fence.

alwinuz on June 12, 2008 10:19 AM

Great post Jeff - really.

This should almost be mandatory reading for development teams.

James Skemp on June 12, 2008 10:19 AM

This can't be a serious post. It can't be...

Codewiz51 on June 12, 2008 10:24 AM

Ryan North (http://qwantz.com/archive/001239.html) says $ sounds like the sound dogs make when they're just about to throw up.

$$$$$

Jacob on June 12, 2008 10:27 AM

Let me put a more complete spanish translation, we also have this problem between spanish developers.

! Signo de Admiracion
" Comillas
# (every body call it "Signo de gato" or "cat sign")
$ Signo de Peso
% Porcentaje
& Et ("a lot of person thinks it's Amperson")
' Apostrofe
() Parentesis
[] Corchetes
{} Llaves
<> Manor que, Mayor que (Not so sure)
* Asterisco
+ Signo de ms (not so sure)
, Coma
- Guion
. Punto
/ Diagonal
\ Contra Diagonal
: Dos Puntos
; Punto y coma
= Signo de igual
? Signo de Interrogacin
@ Arroba
^ Acento circunflejo
_ Guion Bajo
` (I didn't find this but for sure starts with "Acento" someting)
| Barra
~ Tilde

I hope this is userful to somebody

Proteo5 on June 12, 2008 10:28 AM

I always refer to the ampersand as the cheerio sign, seriously
upper left corner of pic
http://www.lotn.org/~calkinsc/coins/cheerios_front_150.jpg

james on June 12, 2008 10:30 AM

circumflex....?

Vinny on June 12, 2008 10:36 AM

Tiago S.:
>Here in Brazil we pronounce "#" as "lasagna".

Sorry, but where in Brazil do people pronounce it like that? I've always seen "cerquilha" (little fence?) or "sustenido" (sharp) or "jogo da velha" (tic-tac-toe).

Wilerson on June 12, 2008 10:37 AM

Hurrah for Strudel! There's a whole wikipaedia article about it:
http://en.wikipedia.org/wiki/At_sign

Yossi on June 12, 2008 10:37 AM

When I see a $ in code I refer to it as String. In BASIC, Text$ was a string variable. So over time I started calling it the "string" character. I still get a lot of weird looks because of that. I generally catch myself right after I've said it though.

Doug on June 12, 2008 10:42 AM

# A corridor, or iron bars, or a tree, or possibly a kitchen
sink (if your dungeon has sinks), or a drawbridge.
> Stairs down: a way to the next level.
< Stairs up: a way to the previous level.
@ You (usually), or another human.
) A weapon of some sort.
[ A suit or piece of armor.
% Something edible (not necessarily healthy).
! A potion.
( Some other useful object (pick-axe, key, lamp...)
$ A pile of gold.
* A gem or rock (possibly valuable, possibly worthless).
^ A trap (once you detect it).
" An amulet, or a spider web.
_ An altar, or an iron chain.
{ A fountain.
} A pool of water or moat or a pool of lava.

Tourist on June 12, 2008 10:49 AM

The nice thing about using the terms "hash" and "bang" is that they are composable into "'shebang", as in the common

#!/usr/bin/ruby

idiom.

Frank on June 12, 2008 10:50 AM

One thing I noticed when I started exploring the Unix/Open Source world as a young programmer was that they had WAY better names for these characters (and by better, I mean easier to say; but also usually more fun to say) than I had ever been introduced to at my defense contractor job. It's so much easier to say "bang" than "exclamation point".

Some of the names for operators are fun too:

<=> (order comparison): "Spaceship"
=> (in Ruby): "Hashrocket"

Avdi on June 12, 2008 10:59 AM

Whoops, the filter ate my spaceship operator. I don't know how to escape it in this comment box :-/

Avdi on June 12, 2008 11:01 AM

I've heard some Latinos says "Sey-sostenido" for "C-sharp" where "sostenido" is the # used in the musical scale.

Scott Hanselman on June 12, 2008 11:02 AM

I've always pronounced ASCII 'a-sic' but that can't be right it's more like 'as-key'?

Will on June 12, 2008 11:08 AM

In Russia "@" called the "doggy" (like a small dog) sometimes. I have no idea why. But other then that other ASCII symbols names are similar to most commonly used once, mentioned here already.

Maggus on June 12, 2008 11:08 AM

I call the $ symbol the "ching". I was speaking to a colleague about $$ and said "doesn't the ching ching get the process id in perl?"

moneybags_banks on June 12, 2008 11:11 AM

In the UK:-

() - brackets
[] - square brackets
{} - curly brackets

Andrew on June 12, 2008 11:17 AM

I would like to bring this into the limelight that some people use start/stop parenthesis, bracket and braces for (), [] and {} respectively. Using this convention allows listener to clearly visualize what speaker is trying to convey.

Mohit Soni on June 12, 2008 11:25 AM

every technical speaker should read this.

Caleb Cushing on June 12, 2008 11:29 AM

In Python they use a lot of double underscores. I've heard of a movement to call that character combo a "dunder" as in __mifflin

Nik Molnar on June 12, 2008 11:33 AM

I don't know how this originated, but growing up (in Florida) my programmer friends and I called '{' & '}' "french brackets/braces". I've never found anyone else who used those terms, and I don't know where they originated.

Paul on June 12, 2008 11:36 AM

Um, a cedille has nothing to do with a comma.

Andrew on June 12, 2008 11:56 AM

An old teacher of mine consistently called [ and ] "sub" and "bus", respectively. It has a nice symmetry to it, don't you think?

Peter on June 12, 2008 11:56 AM

A professor at my university taught me and everyone else on the course to say 'fnut' for ' and 'double-fnut' for ". It is now the standard term for those characters among the students.

I'm not sure about the American Qwerty keyboard, but at least on the Norwegian it is very difficult to reach those characters. The tilde for example, will only appear if you enter some other letter after it. To get only a single tilde you are forced to enter it twice and then delete the second one.

Someone should design a keyboard for programmers where all the special keys are easy to reach and can be entered with a single keystroke.

Marius Gundersen on June 12, 2008 12:02 PM

For some unknown reason my RSS reader has some difficulties reading this post and listing it. I am using "iGoogle" RSS gadget with the last three entries listed. And this lastest one just doesn't appear. It was even weirder earlier today because then the list was just toootally corrupted.

I guess iGoogle RSS gadget doesn't like all those strange characters. Maybe one of those is improperly escaped by the gadget.

Philibert on June 12, 2008 12:03 PM

Paul, I'm sure I've heard "french" brackets/braces for {} on occasion. I can't say where or when, but it's familiar.

Googling for either of

- "french braces" programming

or

- "french brackets" programming

turns up a scattering of hits, so at least we're not nuts.

Josh Millard on June 12, 2008 12:07 PM

><)(*&!

Bruce Lewin on June 12, 2008 12:12 PM

back tick for ` is heavily used here.

tic-tac-to for # has been used as well.

both cases by the non-programmers

eric on June 12, 2008 12:17 PM

I really appreciate the inclusion of the INTERCAL pronunciations.

Mike Daniels on June 12, 2008 1:19 PM

I've always referred to the one labeled Bar as a Hard Return. Not sure why but I think it made sense to me at one point in time.

blaineT on June 12, 2008 1:20 PM

> "andpersand"?
> That guy's just making stuff up

The word ampersand is derived from the phrase "and per se and", (i.e., and in and of itself). So it's a reasonable way to spell it, really.

Evan on June 12, 2008 1:27 PM

I'm surrounded by people who call this character "whack": /

Would that make this one backwhack? \

Joe Ludwig on June 12, 2008 1:33 PM

It's probably useful to note that much of the usage of these characters and the terms for them came about (a) in the U.S., and (b) in the Unix culture (which includes shell and C and Perl programming cultures, predating the rise of Python and Ruby and C#).

This is why the solution to Marius Gundersen's problem is to get an American keyboard for programming. It's also why there's so much apparent ignorance of non-U.S. usage of these terms or characters in the list.

And I'm amused at all the references to Ruby terminology that actually originated in Perl, such as the "spaceship" operator.

rfunk on June 12, 2008 1:34 PM

It should probably be noted that all of these symbols have typographical names that are standardized. It's true that an "exclamation point" can be used in some languages as the logical "not" operand, for example... but that doesn't change the name of the symbol itself.

One need only refer to a typographic specification / font specification to learn the names of those symbols. (BTW, some of the names given above refer to a different symbol tha the one pictured -- a cedilla, for example, is nothing like a comma).

Also, there's a difference between a hyphen, a dash, and a minus sign -- functionally and typographically. On a keyboard, they may be one and the same, but software that deals with typography will differentiate (in fact, there are different "dashes" of different sizes intended for different purposes; look up "emdash").

Bill Pullman on June 12, 2008 1:36 PM

No one else calls "," the "sequential separation operator"?

Craig Ludington on June 12, 2008 1:41 PM

Common perl pronunciations:

-> # arrow
=> # fat arrow
<=> # spaceship operator
~ # tilde
# # hash
! # not , bang
@ # at, ampersand
$ # dollar
[] # square brackets
() # brackets
{} # curlies, curly brackets
` # back tick
"" # double quote
' # single quote
| # pipe
* # asterix, star
<> # left angle bracket, right angle bracket

In perl there are operators that have identical pronunciation, eg "==" and "eq" which differ by the context they give to. Both pronounced equals.

I rarely pronounce symbols them the same unless I'm actually dictating. Usually, when paring or discussing code, it's just a matter of describing the intent or effect.

rj on June 12, 2008 1:44 PM

ah, "no HTML" includes the spaceship operator - though it got mentioned above for ruby.
left angle bracket, equals, right angle bracket # spaceship

rj on June 12, 2008 1:47 PM

re: pound # from wikipedia:

In some regions of the United States and Canada, the symbol is traditionally called the pound sign, but in others, the number sign. This derives from a series of abbreviations for pound, which is a unit of weight. At first "lb." was used; however, printers later designed a font containing a special symbol of an "lb" with a line through the ascenders so that the lowercase letter "l" would not be mistaken for the number "1". Unicode character U+2114 (&#8468;) is called the "LB Bar Symbol", and it is a cursive development of this symbol. Ultimately, there was the reduction to a combination of two horizontal strokes (cf. skewed "=") and two forward-slash-like strokes (cf. "//").

Kearns on June 12, 2008 1:53 PM

~ is used a lot if you're using *nix. Shortcut for the current user's home directory.

zack on June 12, 2008 1:53 PM

If the $ is called "string" shouldn't you list the ? as "print"?

Kearns on June 12, 2008 1:54 PM

So what is an octothorpe then?

Jon on June 12, 2008 1:56 PM

@Rod: As for how to pronounce the 'lambda' symbol => in C# 3.0, MSDN says it's pronounced as "goes to", which I never really grokked. Anyone care to explain?

--snip--
x => x * x;
The lambda expression x => x * x is read "x goes to x times x."
--snip--

Source: http://msdn.microsoft.com/en-us/library/bb397687.aspx

Jesse on June 12, 2008 1:57 PM

Regarding < and >

I've always called these "inequalities" when pressed beyond "less than" or "greater than"

Since, you know... it IS an inequality.

liveinvt on June 12, 2008 1:58 PM

I'm surprised ` = back tick is listed as rare. That's the only way I hear it in computing circles (linguistic circles is obviously a different story).

Michael Greene on June 12, 2008 2:04 PM

My everyday use:

bang, quote, octothorpe, dollar, percent, ampersand, tick, open paren/close paren, open square/close square, open curly/close curly, left angle/right angle, splat, plus, comma, dash, dot, wack, backwack, colon, semicolon, equal, question mark, at, caret, underline, backtick, bar, tilde

I will say full-stop when dictating sentances, and sharp when talking about C#/F#,etc#.

My favorite spoken punctuation was a Chinese doctor who called the colon a (read REALLY fast with weak T pronunciation) "dot over dot".

Marc Brooks on June 12, 2008 2:05 PM

I installed a british voice on my Tom Tom and it refers to the "dash" as a "minus" as in: "Take exit 48A minus 48B in 300 yards"...

Kearns on June 12, 2008 2:07 PM

@ is an 'atmark'.

Michael on June 12, 2008 2:10 PM

Why is about 1% of my keyboard (and in a prime location) given to and , what the hell are those symbols, and who uses them?

"plus or minus" might be useful when comparing variables, ut I don't know of a language which implements such a function, let alone uses that symbol.

It's just that I hit them a lot accidentally...

Sacha on June 12, 2008 2:22 PM

Just coincidence that Americans call # the pound sign when the UK pound sign is on the same key in UK keyboard layouts?

Simon on June 12, 2008 2:23 PM

LOL, the good ole ampersand. LOL

JT
http://www.ULtimate-Anonymity.com

John Thomas on June 12, 2008 2:40 PM

in Germany, I heard for the @-sign Klammeraffe (clinging monkey) and for # Zaun (fence) - although from someone not familiar with PCs and/or programming

starly on June 12, 2008 3:18 PM

I pronounce Ln (the natural log), 'lawn' usually, a high school calc teacher did it and it stuck

nickL on June 12, 2008 3:22 PM

In French you call @: arobase...

Toh on June 12, 2008 3:36 PM

As another poster already pointed out, I have always referred to ~ as "home" .. since usually that's the context that it comes up in.

As an interesting tidbit, my Russian friends call @ a "doggie" (loose translation).

@Sacha: What kind of keyboard do you have? Typical EN-US 101-key layouts do not have either of those keys.

kRYPT on June 12, 2008 3:38 PM

Funny no one has mentioned ==
Oddly enough everybody I know simply says this as 'Equals' though I suppose I'm the odd ball since when reading this aloud I say, "equates to".

Brian on June 12, 2008 3:44 PM

wow, i guess my quick read though the comments missed a few who did mention ==

Brian on June 12, 2008 3:45 PM

I used to work with someone who referred to left and right angle brackets as "wicka" / "wacka".

Michal Migurski on June 12, 2008 4:07 PM

Fascinating post. Made me have a "meta-language" momement.

ee on June 12, 2008 4:11 PM

@AndyB:

"Really you should consult a dictionary and find out which is the 'correct' answer for each symbol. This may not reflect common usage in the computing industry, but that's normal for all forms of language."

Ah, the rancid smell of naive linguistic prescriptivism - one of the hallmarks of the true unreconstructed geek. And where on the autism spectrum are _you_, little boy?

Alex Chamberlain on June 12, 2008 4:26 PM

coding horror just jumped the ^

p3p on June 12, 2008 4:34 PM

In the Gries and Schneider book, "A Logical Approach to Discrete Math", There is a lengthy footnote where one of the authors relates a funny story about how he was giving a lecture, and pronouncing both the assignment operator and the boolean equivalence operator as "equals", when a voice piped up from the back saying "becomes!". The entertaining story has caused me to pronounce them distinctly ever since.

To avoid the ambiguities of "equals", I pronounce these two as:
= "becomes"
== "equivales"

When there is a misunderstanding, I often have to switch back to the lenghty C++ operator names:

=> "member access operator" (informally "arrow")
<< "insertion operator" (binary left shift)
>> "extraction operator" (binary right shift)

Which I must admit is a mouthful. Somehow it stuck.


Bill on June 12, 2008 4:43 PM

Wow, my last post had it's double angle brackets swallowed. too bad.

Bill on June 12, 2008 4:45 PM

What no mention of my favourite. the Interrobang. !? (U+203D)

http://en.wikipedia.org/wiki/Interrobang

davey on June 12, 2008 4:55 PM

Whatever happened to my favorite?

* = squishy bug

Jakemon on June 12, 2008 5:05 PM

I found the story for you. Unfortunately I cant copy paste if for you thanks to Google books DRM crap. Footnote 5 at the bottom.

<a href="http://books.google.com/books?id=ZWTDQ6H6gsUC&pg=PP1&dq=gries+and+schneider&sig=AW8id9uGQv12GBDojuiSiKkzYWk#PPA17,M1">http://books.google.com/books?id=ZWTDQ6H6gsUC&pg=PP1&dq=gries+and+schneider&sig=AW8id9uGQv12GBDojuiSiKkzYWk#PPA17,M1</a>

Apparently it was Edsgar Dykstra who corrected him!

Bill on June 12, 2008 5:08 PM

Excellent post! Although all the common names look familiar to me, I must admit that I have only seen 10% of the rare names before. Nice collection.

kukuciao on June 12, 2008 5:11 PM

You've got '\' listed both as whack and backwhack. IMO '\' == whack and '/' == backwhack.

JosephCooney on June 12, 2008 5:25 PM

My comp sci teacher in high school called { } "scrollies."

Andy on June 12, 2008 5:27 PM

I reckon back tick is common, not rare, certainly in the UNIX/Linux community.

I've also heard # referred to as "sh", in the context #! = "sh-bang", but now maybe I'll call it flash bang! :-)

Officially, the - sign on the keyboard is a hyphen/minus. A dash is longer.

Mikel on June 12, 2008 5:50 PM

Paul and Josh,

I've never heard { and } referred to as french quotes, but it's certainly possible. Some Perl documentation calls and French quotes, but of course they're not ASCII. ;-)

Mikel on June 12, 2008 5:53 PM

I refer to ^ as simply "shift 6" when telling someone what to type. It seems to cause less trouble than actually naming it.

Nathan on June 12, 2008 5:53 PM

@Jesse: Pascal's variable assignment := is called "gets". "a := a + 1" or "a gets a plus one". Seems similar to that. Comes from those mathematicians (as they also seem to like to write programs) who seem to always ensist that "a = a + 1" makes no sense from a mathemetical point of view.

Carleton on June 12, 2008 5:58 PM

Any old IBMers out there? When I was there for a brief stint a long while back, I noticed that they seem to use their own names for things (e.g. Monitor = CRT, Hard Disk = DASD, etc.). Anyone know "traditional" IBM speak for these characters?

Carleton on June 12, 2008 6:03 PM

You mean nobody calls a * a dereference?

Chris on June 12, 2008 6:05 PM

Technically, a sharp sign has two strictly vertical lines and two crossing horizontal lines that rise slightly from left to right. It predates the typewriter symbols by a few centuries.

In casual conversation, the symbol on the keyboard is pretty close, but you wouldn't want to do something like ... mistake the hash for the sharp symbol when naming your programming language.

&#9839; <> #

Will on June 12, 2008 7:17 PM

yeh i go with back tick for `
and whack for /

and when thinking in XML, for "<", ">" and "/" I use "blond", "brunette", "redhead".

Aren't "french quotes" those little chevron like characters correctly called Guillemets (or sometimes 'duck feet').

They're used in ML and F# for quoting code.

secretGeek on June 12, 2008 8:18 PM

"circumflex"?

Though I haven't been a native French speaker for 30 years, I would swear we called that (essential) part of French writing the "circonflex".

Perhaps someone is confusing it with circumcision.

Yves on June 12, 2008 9:03 PM

In Swedish @ is called snabel-a, i.e. an a with the trunk of an elephant.

风幽暗 on June 12, 2008 9:11 PM

I say "paren-paren" for ()

Brian on June 12, 2008 9:48 PM

(!@$%^&*)
Nope, still seems like gibberish to me.

David on June 12, 2008 10:25 PM

Some contributions from Sweden (poorly translated)

@ = Elephant trunk A
@ = Cinnamon bun

{} = Sea gul wings

# = Lumber yard
# = Pile of sticks
# = Fence

Sven Svensson on June 12, 2008 10:36 PM

I've used "Whack" to specify the "\" key to fellow geeks, all I get is blank stares back, I'm assuming it's an age thing also since I'm senior to them (8 years) which is like grandpa to grandson in computer years right?

Scott on June 12, 2008 10:45 PM

In German @ is "Affenschwanz" or monkeytail.

Twist on June 12, 2008 10:49 PM

I would like to take this opportunity to take the bold, prescriptive stance that

THERE IS NO SUCH THING AS A FORWARD SLASH, AND NO SUCH THING AS A BACKWARD SLASH.

There is a slash. There is a backslash. That is all.

Atario on June 12, 2008 11:41 PM

HI,
Really a nice topic to talk on, It would be fun if we all try this thing among ourselves and check what we all pronounce..This is certainly going to b a fun Session for me on next weekend...Thanks for a nice list and a excellent idea...

And i was amased to c the "@" is called APE, ROSE, CAT and CABBAGE????
How this name came upon?????

Ruvi on June 12, 2008 11:56 PM

We generally use the word 'sub' for the underscore in code reviews. Its faster as one syllable.

Corporate Drone on June 12, 2008 11:57 PM

All you have to do is visit the Unicode Consortium web page
to find a formal definition that is Universally applicable (that means outside the states as well as inside).

Your pound key would confuse with Ux20A4 Lira sign and UxA3, pound sign

Dave P on June 13, 2008 12:10 AM

Some Danish translations

# garden gate (havelge)
" goose eyes (gsejne)
@ elephant trunk A (snabel-a)

Jesper on June 13, 2008 12:11 AM

In norwegian, we often refer to the dot "." and "->" in the context of class/object members as 'sin' wich is the 'his genetive' ( http://en.wikipedia.org/wiki/His_genitive ).

"window.document.height()" becomes "window sin document sin height()"
wich rougly translates to
"the window's document's height"
It sounds slightly awkward since we're mixing english and norwegian, but it quite accurately describes the intention indepent of actual syntax.

Qvasi on June 13, 2008 12:20 AM

Jeff: "...most other cultures know it as the hash key."

You mean, most English cultures. We ofcourse have our own words for all these characters in our own languages. Some examples of how I call these characters in Dutch:

# - hekje (little fence)
{ } - accolade openen / accolade sluiten (opening accolade / closing accolade); I guess that's a French word
: - dubbele punt (double point)
; - puntkomma (point comma)
@ - apenstaartje (monkey's tail)
^ - dakje (little roof)

Jesper on June 13, 2008 12:41 AM

@Nathan: Great example of what I suggest should be avoided: shift+6 on a US keyboard might give a ^ (carat, up-arrow), but on mine (Swedish) you'd get a &.

@Yves: 'Circumflex' is indeed English for the French 'circonflex'.

And there are plenty of examples above of how confusing it can be to describe a character by its function in a specific language, unless you're absolutely certain that the listener understands that particular context.

By the way, no one has mentioned the (shift+4 on a Swedish keyboard), which I have heard described as a general currency symbol, but no brief or amusing name yet...

DavidR on June 13, 2008 2:10 AM

New Zealand newsreaders used to have an annoying habit of calling double quotation marks "inverted commas".

Not sure if they still do it, since I refuse to watch the news here anymore.

Sean on June 13, 2008 2:25 AM

I don't know where the idea that ` being called a backtick is "rare" came from. The entire perl community calls that a backtick, as does the official documentation. I would say that's one of the most common names, since I've never heard it called anything else.

> "circumflex"?
> Though I haven't been a native French speaker for 30 years, I would swear we called that (essential) part of French writing the "circonflex".

Nnn... nope, linguistically that's the correct name for it. Welcome to unfortunate language drift ;)

Also:

= 'equals'
== 'is'
!= 'is not' or 'not equals'
=> 'fat comma' (in perl, this is interchangeable with the simple comma, except that it has higher precedence)

> In the UK:-
>
> () - brackets
> [] - square brackets
> {} - curly brackets

Wrong, wrong, a thousand times wrong. These terminologies only stem from the systematic extraction of knowledge from the populace by government education schemes. These () have always been parentheses (from Greek parens, around, thesis, idea); these [] have always been brackets; these {} have always been braces (although the brace has seen a much bigger rise in usage since the computer, as they were originally mainly used on paper to group several lines, and as such were rarely seen as a single character on a single line).

In fact, calling a comma a cedilla is also wrong. What's going on there? The two look completely different. And while I'm ranting, why isn't "question" listed for "question mark" if "at" is listed for "at sign"? And I've heard these <> called chevrons before...

Al on June 13, 2008 3:12 AM

I agree with your list on most of the characters. However, I come from the Netherlands, and almost any (programmer) I know calls the $ a "string", not a dollar sign.

Other characters in Dutch:
^ Dakje (roof)
# Hekje (fence)
@ Apenstaartje (monkey tail - though almost any programmer will say "at")
_ Liggend streepje (lying bar)
/ and \: schuine streep (slanted line) - however my typing teacher called it a "schrap" which means as much as "delete" (Scrhap and left schrap)

By the way, you must be very food-centered with your Crunch (#), Pretzel (&), grapes (%) and the strudel (@).

Also, I agree that most people don't know the correct name for the tilde (~)

Tijmen / IIVQ on June 13, 2008 3:22 AM

You left out "reverse solidus" for the "backslash", the Unicode nomenclature for the character.

ReallyEvilCanine on June 13, 2008 3:40 AM

"Jesper: You mean, most English cultures. We ofcourse have our own words for all these characters in our own languages."

Ofcourse that was more about the pronunciation rules we have learnt for them while learning english. And I think that "international" use is a better measure to learn common pronunciation for these words, rather than letting the brits and the americans argue about it. :)

So here's a list as I have learnt these from browsing through the great internet:
~ : Tilde
@ : At-sign
. : Dot or period. Never heard of "full stop" before.
! : Exclamation mark. Again, never heard of "bang".
# : Not sure, probably hash. Definitely not pound.
(): Parantheses
[]: Square brackets
{}: Curly braces/brackets
' : Single quote
" : Quotation marks
_ : Underline

Jarno on June 13, 2008 4:00 AM

In the telecoms world, # is sometimes referred to as "gate"

Bob Moore on June 13, 2008 4:00 AM

Sorry, there's proper ways in English to say something, and then there's the brain damaged way.

() is parenthesis
[] is bracket
{} is curly brace
^ is caret

Follow these rules or I'll recommend to the boss not to hire immigrants.

... on June 13, 2008 4:01 AM

I've heard '~' pronounced as squidge, especially in relation to peoples home directories, or websites.

Peter Russell on June 13, 2008 4:20 AM

Just as point of reference there are other currencies than the $ like in the UK we have the (pound) this is shown above the number 3. So using "pound key" for the # key seems like a jolly smashing idea chappy.

Prince of Wales on June 13, 2008 5:40 AM

For the person who asked about which keyboard featured the mysterious and symbols –they seem to be standard issue on English language Mac keyboards. But I still have no idea what they are used for. I guess they would make a good delimiter, as they don't seem to crop up much in normal usage.

As an aside, French Mac keyboards seem to have been designed with the assumption that nobody will ever try to use them to do any coding. The various flavours of brackets are tucked away in bizarre places and the pipe character seems to only be accessible via 3-key combinations that I have to look up on Google! I think I did find the backtick the other day, but I was hunting for something else at the time.

Matthew on June 13, 2008 5:46 AM

"Periods are (almost) always called full stops in Enlgand" - mike

I think it's crazy that Wikipedia doesn't even call it "period"! Check this out:

http://en.wikipedia.org/wiki/Period

Wikipedia calls it "full stop"!

Josh on June 13, 2008 5:55 AM

=> can't be "arrow", because -> is "arrow"

Billkamm on June 13, 2008 6:15 AM

The "@" is also known as the asperand.

viberunner on June 13, 2008 6:17 AM

#| - hash pipe
=> (a la lambda) - 'goesta'

josh on June 13, 2008 6:18 AM

To a typographer, the typewriter quotation mark " is a dumb quote. The currency symbol is called a louse or sputnik, but it's only a working placeholder when setting type in a font which lacks whatever local currency symbol.

Many Canadians are somewhat conscious of the French language, so a comma would never be mistakenly called a cedilla. Unicode actually has a stand-alone cedilla () but I suppose I just used it for the first time ever in this comment.

Canadians use (round) brackets and square brackets, like Brits do, although “parentheses” is seen more thanks to North American office culture. Likewise, many telephone voicemail systems now ask us to press the “pound sign,” even though my old mechanical typewriter had both # and .

The octothorp # is "eight fields" around the common pasture, and represents a village in cartography. The "quadrathorp(e)" = actually has three fields, so I'm guessing that it and "bithorp(e)" - must be back-formations from the mistaken assumption that a thorp is the terminal end of a stroke.

@Sacha, (“plus or minus”) is used to indicate a range, as in “60 10,” meaning 50 to 70. is the section sign, which goes with the pilcrow , or paragraph sign. It is used as a divider, and both are also sometimes used to mark footnotes, instead of raised numbers, along with the symbols * † ‡ &#8214; .

Most of this predates computers, and isn't used in a context where only ASCII has traditionally been available.

Michael Zed on June 13, 2008 6:24 AM

For those who wonder about the usage of '' and '':
http://en.wikipedia.org/wiki/Section_sign
http://en.wikipedia.org/wiki/Plus-minus_sign

Qvasi on June 13, 2008 6:28 AM

Why is "back tick" in the rare column?

It's probably the most commonly used word for this thing: `

Bob on June 13, 2008 7:19 AM

@ = at the rate of

A on June 13, 2008 7:51 AM


{ Bob Hope Left (aka. Mr Bob Hope's profile looking left)

} Bob Hope Right (aka. Mr Bob Hope's profile looking right)


For those youngster, here's Bob: http://en.wikipedia.org/wiki/Bob_Hope

Dom on June 13, 2008 8:12 AM

Just remember that DWORD rhymes with SWORD, and you'll be okay...

JFred on June 13, 2008 8:39 AM

"
You must not be an embedded designer. We use it all the time to invert bits. Very useful for masking all but certain bits in a byte.
e.g.
#define ENABLE_BIT 0x02
x = register & ~ENABLE_BIT;

This will mask out all the bits except the Enable bit of "register".
"

We usually write that as


ENABLE_BIT : constant Integer = 2#0000_0010#;

x := Register and not ENABLE_BIT;


or even easier (given a corresponding type declaration):


x := not Register.Enable_Bit;


Not much use for eccentric characters there, although I just showed one of the very few, so actually I don't give a sh** what you call those. :P

When I have to read out C-like-source loudely, this more sounds like this: "blabla this damn special char - you know which - bla bla - another special char - ..." if the code makes a bit of sense, there's even less ambiguity than one might think. ;)

Vinzent Hoefler on June 13, 2008 8:48 AM

^<@<.@*
}"_# |
-@$&/_%
!( @|=>
;`+$?^?
,#"~|)^G

hat less at less point at star
backbrace double base pound space bar
dash at cash and slash base rate
wow open tab at bar is great
semi backquote plus cash huh DEL
comma pound double tilde bar close BEL

Adam on June 13, 2008 8:55 AM

In brazilian portuguese:

! exclamao (ponto de exclamao)
" aspas
# sustenido, jogo-da-velha (tic-tac-toe), grade (grid)
$ cifro, dlar
% por cento, percentual
& "e" comercial
' apstrofo, aspas simples
() parnteses
[] colchetes
{} chaves
<> menor, maior
* asterisco
+ mais
, vrgula
- menos, hfen
. ponto
/ barra
\ contra barra
: dois pontos (two dots :S)
; ponto-e-vrgula
= igual
? interrogao (ponto de interrogao)
@ arroba
^ acento circunflexo
_ I actually call it "underline" or "underscore"...
` crase
| barra vertical, "pipe"
~ til

Ricardo N. on June 13, 2008 8:56 AM

@JFred:

"Just remember that DWORD rhymes with SWORD, and you'll be okay..."

Amen, brother! And "char" is homophonic with what you do to steaks if you leave them too long on the grill.


@Vinzent Hoefler:

"ENABLE_BIT : constant Integer = 2#0000_0010#;
x := Register and not ENABLE_BIT;"

Just because you're writing embedded code doesn't mean you have to introduce portability concerns unnecessarily. What happens when you want to use the same code with a CPU that's differently endian?

Alex Chamberlain on June 13, 2008 9:08 AM

# = http://en.wikipedia.org/wiki/Roundpole_fence

Norwegian: Skigard

:)

tan on June 13, 2008 9:23 AM

Sometimes pronunciations are context specific:
e.g.
"x < y" would be "x is less than y"
where
"<some sort of markup/>" would be "left angle bracket, some sort of markup, forward slash, right angle bracket"

George J on June 13, 2008 9:28 AM

"@Vinzent Hoefler:

"ENABLE_BIT : constant Integer = 2#0000_0010#;
x := Register and not ENABLE_BIT;"

Just because you're writing embedded code doesn't mean you have to introduce portability concerns unnecessarily. What happens when you want to use the same code with a CPU that's differently endian?
Alex Chamberlain on June 13, 2008 09:08 AM
"

There is no portability issue. I'd get the same compile error, no matter of the compiler's target. ;)

Vinzent Hoefler on June 13, 2008 9:36 AM

In swedish # can be "lumber yard" (brdgrd) or "woodpile" (vedstapel).

Gustav on June 13, 2008 10:07 AM

It's been a long time since I had to type anything in French, but don't most French layouts use the same key for comma and cedilla? Press it once and then c, and you get ; press it twice, you get a regular comma. That would explain why they're given the same name, even though they have completely different meanings.

Could be wrong though... or maybe it's just English keyboards using French layouts (common in Canada!)

Aaron G on June 13, 2008 10:26 AM

wax/wane
iirc, wax means "to get more", while wane is "to get less".
the phase of the moon is usually referred to by these words.
the problem is that in the northern hemisphere (where most humans live, sorry you three :P ) when the moon is waxing (new) it looks like this )
its easy to remember, when it's born it looks like the bottom part of a 'b', and when it's dieing it looks like the bottom part of a 'd'.

i suggest muddying the water further and defining ( = wane, ) = wax

so that "wax bang at hash buck grapes circumflex and splat wane" is )!@$%^&*(

o_O

yossi on June 13, 2008 10:45 AM

& can also be pronounced as "boy fishing" (since that's what it looks like).

John-Paul Gignac on June 13, 2008 11:21 AM

I always liked the name a coworker gave the ! key. He called it "damn it", but usually in context to vi as in q! (quit damn it).

Sean on June 13, 2008 11:27 AM

i gotta tell you whoever calls the double quotes 'dieresis' is out of his mind, and probably haven't exposed to spanish or german.

draco on June 13, 2008 11:29 AM

I saw $ called "bling" somewhere. I was like, man, that's tight.

Patrick McElhaney on June 13, 2008 11:33 AM

I work at a PHP shop where there are lots of $ floating around:

$ - Bling

Gosherm on June 13, 2008 11:49 AM

I'd like to nominate the following for standardization:
! bang
" rabbit ears
? hunchback
% grapes
& pretzel
@ vortex
* splat

and new additions
~ worm
_ dead worm
$ bling
| calista flockhart
/ leaning tower of pisa
\ rigor mortis

bellend on June 13, 2008 12:02 PM

For "t => t.Name", I would say "tee implies tee dot name"

Les Baker on June 13, 2008 12:09 PM

Has anyone else ever heard { or } called a "Hitchcock"? I have heard that a few times.

Tom on June 13, 2008 1:24 PM

@Michael Zed

Agree, the octothorpe's origins are cartographic.

Jon on June 13, 2008 1:24 PM

wow, what a worthless post.

Jim Ryan on June 13, 2008 2:06 PM

@Jim -- yeah, well, octothorpe you, man!

Jeff Atwood on June 13, 2008 2:38 PM

I call '<<' or '>>' as 'waka waka.' i think i first saw that on hak.5

Mark on June 13, 2008 2:52 PM

On a Univac 1108 mainframe circa 1972, the two character key combination $! typed at the operator's console caused an instant halt of the entire system. This was referred to as a "dollar-bang" and could be used as a noun or a verb. Also, some Univac system analysts at the time often spoke of * as "dead fly".

dg on June 13, 2008 3:00 PM

In Romanian language the @ sign is often called "a-rond" or monkeytail.

Also I was much amused to hear the # sign being called "the prison sign" :))

Andrei Rinea on June 13, 2008 3:41 PM

being from Argentina, I can tell you how we call those symbols in spanish:
! = "admiracin"
" = "comillas"
# = "numeral"
$ = "pesos"
% = "por ciento"
& = "and, or ampersand" ( this one seems not to have a spanish translation )
' = "apstrofe"
() = "parntesis"
[] = "corchetes"
{} = "llaves"
< > = "menor, mayor"
* = "asterisco"
- = "guin, or menos"
_ = "guin bajo"
/ = "barra"
\ = "barra invertida, or contrabarra"
: = "dos puntos"
; = "punto y coma"
? = "pregunta"
@ = "arroba"
| = "pipe" ( correctly pronounced in english)
` = "comillas" (which causes confusion with the other "comillas")
~ = "uflo"

Just thougth it was funny to share.

Some of the house-translations we make here are pretty weird, also. For example, as Linux users, me and my colleages call the ` as "comillas de ejecucin" (execution quote).

TaTooKa on June 13, 2008 3:45 PM

Hash (#) is also commonly known as Gate.... well at least by the guys I know that work in Telecommunications.

BD on June 13, 2008 3:49 PM

In a similar vein, I knew a Mac programmer (female) who called the Command key on the Mac a "puppy paw". I tried not to snicker when she said it out loud...

Dave Rodenbaugh on June 13, 2008 3:51 PM

Biggest source of confusion that I see is that when I say "braces", people don't realize I mean { }. I think they seem to want to hear "curly bracket" or "curly braces"

Also, I tend to refer to an asterisk * as a "Kleene". But I do all say star or asterisk commonly.

TM on June 13, 2008 4:14 PM

A lot of these aren't really alternative names, just the name of the operation which the symbol means in a particular context. For example a '%' is a percentage sign or whatever slang term you want. When used in this context :

int x = a % b;

it's called 'modulus' or 'mod'. If someones uses the sentence 'Int X equals a percentage sign b' to describe this line of code doesn't know what they are talking about.

Brendan Donegan on June 13, 2008 4:49 PM

Has this post been stroke full stopped yet?

Patrick McElhaney on June 13, 2008 4:49 PM

http://de.wikipedia.org/wiki/Rautenzeichen
this page is about the '#' sign - and it links
to the following page by Axel Beckert who at
his time as a student had been collecting
words for symbols:
http://fsinfo.cs.uni-sb.de/~abe/Bloedsinn/Teppich.html
enjoy! :)

--Sven

Sven Guckes on June 13, 2008 6:35 PM

It's interesting doing programming in australia. Im currently doing a programming course at univesity and the Lecturer uses the correct Australian names, but us students us an all manner of different and wide ranging names. It can get quite confusing. I usually just call things "That squiggly thing there" or something similar.

Reece on June 13, 2008 7:25 PM

You can't forget ....

{} -> Chicken Lips

davide on June 13, 2008 8:01 PM

I'm from a C+ background, not perl, and I call -> arrow. I think I came up with that on my own, perhaps I picked it up from someone who had programmed in perl.
i have never heard ` called grave but that will be my new term for the backquote. Backquote is just too darn much of a mouthfull.
My favorite for "" is floppy bunny ears, which one of my non-programming friends came up with. It always makes me laugh when I hear that one.

mark on June 13, 2008 10:03 PM

I've had this conversation before. The carat is not the same thing as the circumflex.

Here's a carat:^
Here's a circumflex: ˆ

still can't see the difference? Here's a few side by side: ^ˆ^ˆ^ˆ^ˆ^ˆ^ˆ^ˆ^ˆ

Skunkwaffle on June 13, 2008 11:42 PM

What on earth makes you think that writing a blog full time qualifies you to write about programming? Guess what: IT DOESN'T. I know three people who are more qualified to write about programming simply because THEY STILL DO IT FOR A LIVING.

David on June 14, 2008 1:10 AM

Ahh, the age-old # = pound, number, hash, octothorpe, sharp, etc debate.

I believe the definitive answer is "anything *but* pound". You Americans only call it pound because it's in the same place as the *actual* pound () key on the GB keyboard layout :)

Mark on June 14, 2008 4:05 AM

Shame on my UK MacBook keyboard that the # is not shown on the 3/ keycap whereas there's a € on the the 2/@ keycap. On other UK keyboards I like the fact that # gets its own key and one doesn't have to use a modifier key.

John Ferguson on June 14, 2008 5:48 AM

@ in russian is "sobaka" (&#1089;&#1086;&#1073;&#1072;&#1082;&#1072;), which means... a dog

ValkaTR on June 14, 2008 5:59 AM

hell, I can't comment here :(

Omar Abid on June 14, 2008 7:09 AM

I don't want to get circumflexed! That's a caret...fo sho fo sho

gotta love assKey!

Joe Beam on June 14, 2008 7:46 AM

sheez I can't say a-s-s-key???

Joe Beam on June 14, 2008 7:46 AM

You forgot the best one for '\' (backslash)... "OJ Simpson".

-mdb

MDB on June 14, 2008 10:49 AM

For a reference, I live in Japan and people pronounce these signs as follows (only from my observations):

!: bikkuri mark
": nijyu in-yohu
#: sharp
$: dol mark
%: percent
&: and
': apostrophe, in-yohu
( ): kakko / kakko-tojiru
[ ]: chu-kakko / chu-kakko-tojiru
{ }: dai-kakko / dai-kakko-tojiru
< >: syo-nari / dai-nari
*: asterisk
+: plus, tasu
,: comma
-: dash, boh, hyphen, mainasu
.: period, ten, dot
/: slash
\: backslash, gyaku-slash
:: colon
;: semicolon
=: tohgoh, equal (not "equals")
?: question mark, hatena, gimon-hu
@: at
^: caret, yamagata-kigoh, hat
_: underline, underscore, kasen
`: grave, backquote
|: bar, boh, pipe
~: tilde, nyoro

philsci on June 14, 2008 12:12 PM

() cowboys

David on June 14, 2008 12:44 PM

A friend of mine from South Africa calls ':' "double dot" and ';' "comma dot"; it was pretty funny the first time he said "you forget the comma dot at the end of your line there."

Dennis on June 14, 2008 4:36 PM

In the Navy, we always called the dash - a "tac"

Compartments (rooms) on a ship are labelled like: 6-150-3-E

It's pronounced 'six tac one-fifty tac three tac E' and it means that the compartment is 5 decks below the main deck, starts at the 150th frame aft of the bow, is the second space out from the centerline on the starboard side, and is an engineering space.

Jarin Udom on June 14, 2008 6:38 PM

Don't forget "backticks", Jeff :)

Greg Magarshak on June 14, 2008 6:40 PM

"Why isn't it possible anymore to enter characters
by pressing "Alt GR" and the numeric ASCII code into
the numpad?"

Isn't it Alt not Alt GR?

[ICR] on June 15, 2008 3:23 AM

Comma ',' isn't cedilla, which symbol is different.
cedilla = ''- 'c'

Catalan on June 15, 2008 12:58 PM

$ is normally pronounced "euro". As distinct from €, pronounced Euro.

moz on June 15, 2008 7:29 PM

You left out:

@ monkey

nccwarp9 on June 16, 2008 12:17 AM

if # is most commonly called hash, then why is c# not called cee-hash...microsoft thats bloody why.

I still call it c-hash, who's with me?

bob on June 16, 2008 1:27 AM

I want to know which madman thought C# was a good name for a language?

I know lets pick a character that everyone mistakes for another &#9839;- #
that everyone in the world calls a different name, and no-one can agree on a name for, and there has been a long running debate about what it is called, oh and make sure you can't search for it in any search engine!


Jaster on June 16, 2008 1:40 AM

Some of those are mathamatical functions, not names for the symbol.
Factorial is denoted as !, but that doesnt mean the ! symbol is called factorial
For those not mathematically minded, a factorial is a multiple of all preceding integers including the input value (ie !3 = 3x2x1 = 6, !4 = 4x3x2x1 = 24)

stEvil on June 16, 2008 2:17 AM

To the guy who wonders about ~ (the tilde) and who thinks it is rarely used.

In most Unix shells this character gets expanded to the value of the environment variable $HOME which contains the path to the current users home directory.
Thus ~/somefile is shorthand for /home/currentuser/somefile

It is also the default escape character in the secure shell ssh - pressing it terminates the connection.

In Perl it is part of the "contains" operator as in

$var = untrusted_user_input;
if($var =~ regex;){
sanitize input ...;
}

and there it is used extensively. I would wager that you find it in nearly 90% of all Perl-based CGI scripts that handle input from forms.

To the chap who enquired as to . In German legalese this is shorthand for "paragraph" = section of law.

As to its presence on the Mac keyboard. Toggle "show invisibles" in AppleWorks and you will see that the app uses it internally as a section delimiter eq to LaTex \section{} directive.

About C#: One would assume that the monicker was borrowed from musicspeak, where you would pronounce it "C-sharp" as in "pitch up by half-tone".

Bernhard on June 16, 2008 3:11 AM

@bart: "I like how in choosing between harboring mild anti-American sentiments or, say, doing a Google search, you chose the former. :)"

Oh well, we'll just have to fall back on aluminum, check, diaper, fanny-pack(!), garbage, replacing large numbers of 's's with 'z's etc.

The explanation of '#' as pound sign you give, also merely shifts the idiosyncrasy from the choice of the term, to the adoption of an archaic italian printers symbol (which is then generally not used by Americans anyway).

Si on June 16, 2008 3:40 AM

After reading up a bit on typography (http://www.creativepro.com/article/typographic-tips-apostrophes-quotation-marks is an excellent article) you can see that neither ", ' nor ` are actual quote characters.

Victor Engmark on June 16, 2008 5:19 AM

"A friend of mine from South Africa calls ':' "double dot" and ';' "comma dot""

In french ":" is "two-dots" and ";" is "dot-comma".
Literally, official names.

Musaran on June 16, 2008 5:57 AM

on my french canadian keyboard the "cdille()" has a specific key and the "virgule(comma)" has another specific key. I don't know about the french one because I've never seen an azerty keyboard. There are a lot of differances on how to say those characters here

in Qubec French

! point d'exclamation
" Double guillemets (although is called guillemets too)
# dise
$ signe de dollar
% pourcent
& "e" comercial (read as et)
' apostrophe
() parantheses
[] crochets
{}
<> plus petit, plus grand (literally lower, greater)
* asterisque
+ plus
, virgule
- tiret
. point
/ barre oblique
\ barre oblique inverse
: deux points
; point virgule
= gal
? point d'interogation
@ arrobas (also a comercial)
^ accent circonflex
_ underscore (never heard anything else in french)
` accent aigu
| barre
~ tilde

GuiguiBob on June 16, 2008 8:13 AM

I think some people who know that backslashes are somehow related to computers so they figure the double slash in a URL (which is they ever get closest they get to computer code) must be a backslash. When, of course it's a "forward" slash--thus the confusion.

What purpose does the backslash purpose serve, anyway? It's the path separator in Windows, of course, but you can't use a regular slash in file names, and lots of Windows programs will take either as the separator. Most of the above have origins in pre-digital typesetting, but I can't think of a non-computer use for a backslash.

Marc on June 16, 2008 8:39 AM

Paul -

I am from Ontario, Canada. I have heard french brackets on many occasions. In addition, fancy or curly brackets has been used as well.

drukus on June 16, 2008 8:53 AM

Heh. Reminds me of the interviewee that kept talking about his experience in "See-pound". He didn't get the job.

daniel on June 16, 2008 9:28 AM

Mark on June 14, 2008 04:05 AM:
Ahh, the age-old # = pound, number, hash, octothorpe, sharp, etc debate.

I believe the definitive answer is "anything *but* pound". You Americans only call it pound because it's in the same place as the *actual* pound () key on the GB keyboard layout :)
=======================

Actually, the '#' symbol has appeared on our telephones long before computers became commonplace. In this context, it's always been called "pound".

Note, I still call it "pound" when referring to the button on a telephone, but I call the character itself a "hash symbol".

KG on June 16, 2008 9:43 AM

parenthesis are "bananas" - left banana, right banana. Think about it.

Steve R on June 16, 2008 12:23 PM

I've always used/said => as 'therefore'

Doofus on June 16, 2008 1:27 PM

Isn't "/" a _whack_ (over the head) and "\" a _kick_ (in the shins)?

Quarterback16 on June 16, 2008 7:42 PM

"What purpose does the backslash purpose serve, anyway? It's the path separator in Windows, of course, but you can't use a regular slash in file names, and lots of Windows programs will take either as the separator. Most of the above have origins in pre-digital typesetting, but I can't think of a non-computer use for a backslash."

Actually, internally Windows treats '/' the same as '\' in paths. This is the case since DOS2.0 (and that was the first version of DOS knowing about paths at all, before that there only where drive letters and files). Only the user interface like cmd.exe or explorer.exe insist of using backslashes. So I never understood the fuzz about "porting" file names to convert backslashes to slashes and vice versa. Using slashes only would have been just fine, especially because in many languages you have to type two backslashes to get a single one. And that is, just because some moron at Microsoft decided to use a well-established escape character for path delimiting. "We are different from Unix, eh?"

Vinzent Hoefler on June 17, 2008 1:13 AM

Does no one else refer to a Single quote as a 'Squote'?

Brad on June 17, 2008 6:21 AM

I just invented new terms for \ /

How about left-right slash or left-right bar because of the way they lean?

Jimmy on June 17, 2008 6:51 AM

http://limerickdb.com/?418
I think there only one way to pronounce these so that it fits the schema

Stephen Haddad on June 17, 2008 7:35 AM

Isn't the @ called an ampersat ? the same way the & is an ampersand.

MinnoW on June 17, 2008 12:56 PM

My maths professor told me that his name for a brace {} is a tit-bracket.

Keith Macdonald on June 18, 2008 5:00 AM

i think what we need to do folks is follow the original names set forth in the ITU document. here it is.

http://www.itu.int/rec/T-REC-T.50-199209-I/en

pages 7-9 have tables with the names associated. i've actually printed them out and can't wait to confuse the hell out of my teammates!

HTTP colon solidus solidus

Aaron on June 18, 2008 12:10 PM

C octothorpe..... it's the latest version in .NET 4.0

T on June 19, 2008 5:53 AM

Complete Dutch pronunciation (and translation to english)

! uitroepteken (exclamation mark)
" dubbele aanhalingstekens (double quotation marks)
# hekje (fence)
$ dollarteken (dollar mark)
% procent (percent)
& en , ampersand (ampersand)
' aanhalingsteken (quotation mark)
() haakjes (hooks)
[] vierkante haakjes, blok haken (square hooks)
{} accolades (from the french for curly brackets)
<> kleiner dan teken, groter dan teken (smaller than mark, greater than mark)
* sterretje (star)
+ plus (plus)
, komma (comma)
- streepje (line)
. punt (period)
/ schuine streep (diagonal line)
\ schuine streep, backslash (diagonal line, backslash from english as clarification )
: dubbele punt (double point)
; punt-komma (point comma)
= is (is)
? vraagteken (question mark)
@ apenstaartje, AT (monkey tail, 'at' with emphasis)
^ dakje (roof)
_ onderstreep (underline)
| stok (stick)
~ tilde (tilde)

:D

Maurice on June 19, 2008 9:20 AM

@ is also known in English as the "commercial a" or "commercial at". "Asperand" seems to be a recent invention that has not yet been formalized by inclusion in any major dictionary.

It's always fascinated me that such a ubiquitous character does not have an "official", single-word name in English.

Kevin on June 19, 2008 9:54 AM

Hi Jeff.

Great post (and blog) - very well researched!

So - every key/symbol on a regular keyboard is pretty much used (scarily) whilst coding... How's about the symbol??? I've never used it - it doesn't do anything. What's it's name? What does it do?

Mike

Mike McClelland on June 19, 2008 11:45 AM

< - left Pac Man
> - right Pac Man

Jimbo Jones on June 19, 2008 1:18 PM

< is left pac man
> is right pac man

Jimbo Jones on June 19, 2008 1:18 PM

sorry for triplicate post but what I was trying to say was that I sometimes when I can't think of the words call the left angle bracket left pac man and the right angle bracket right pac man :)

Jimbo Jones on June 19, 2008 1:19 PM

Having gone to a heavily Unix-oriented college, we CompSci majors quickly learned to refer to ! as "dammit" or suffer the rantings of one grey-bearded, all-powerful, Berkeley-educated professor. It came from vi, as in :w! "write, dammit" or :q! "quit, dammit."

Now I'm working in a Microsoft shop where they can't even say 'SQL' correctly. It's making me beard turn grey...

nate on June 19, 2008 1:49 PM

@Mike McClellan: It's called the teary-eye. Look: _

P. S.: Jeff, please implement a threaded view for comments so that discussions can be held more easily within the comments.

Pikadude No. 1 on June 19, 2008 7:16 PM

The "*" character is called an "asterix" by many South Africans. Not that they think it resembles a small Gaulish warrior though, they just seem unable to pronounce it ending with -isk rather than -ix.

Steve Crane on June 20, 2008 12:23 AM

I think the American pronunciations for these symbols should take precedence. We are talking about the American Standard Code for Information Interchange anyway...

Evan on June 21, 2008 10:57 AM

OMG. I get here late and no one mention the lack of inch mark (") and foot mark ('). I use those terms to differentiate from the slanted and/or curved quote, double quote, and apostrophe not represented on a US keyboard. Yes, I love my imperial units.

@rj: Who the * thinks @ is called "ampersand"?

@Mike McClelland: often called "not", being the symbol of logical negation. The use of tilde for negation in programming is a limitation of the keyboard.

Anm on June 22, 2008 8:32 AM

no "she bang" ? :)

jminkler on June 23, 2008 9:25 AM

Some more German:

[] - "eckige Klammern" (squared brackets/parenthesis)
{} - "geschweifte Klammern" (curly brackets/parenthesis)
() - "runde Klammern" (round brackets/parenthesis)
Round ones sometimes are just called "Klammern", as these are the normal ones you'd expect in text.

Usually you say whether you open or close them:

"eckige Klammer auf/zu" (square bracket open/close)

And despite what some people claimed here, it might be that some Germans call # "Lattenzaun" (actually translates to picket fence I'd say), but this is not the correct German name. The correct German name is also not "Doppelkreuz" (double cross). The correct German name is "Raute" (and that is in fact "lozenge", as the inner part is a rhomboid where all four sides are equal in length and this is named a lozenge - http://tinyurl.com/4zkse8)

BTW, I know some people who call <> spiked brackets (German "spitze Klammern")

Regarding @: It used to have funny names in the past, but fortunately more and more people start simply calling it the at-sign :)

Mecki on June 24, 2008 5:06 AM

Sorry, the link is broken. Correct link is here:
http://tinyurl.com/44aa9n

Mecki on June 24, 2008 5:07 AM

Good one!! :-) Thanks for the article.. I dint know that '#' was called a pound!

Shoban

shoban on June 25, 2008 9:45 PM

<>!*''#
^@`$$-
!*'$_
%*<>#4
&)../
|{~~SYSTEM HALTED

Transliterated:
Waka waka bang splat tick tick hash,
Caret at back-tick dollar dollar dash,
Bang splat tick dollar under-score,
Percent splat waka waka number four,
Ampersand right-paren dot dot slash,
Vertical-bar curly-bracket tilde tilde CRASH.

Anon on June 27, 2008 7:11 AM

Coming from a scientific background, I usually call ^ 'power', as in 1.2*10^5: 'one point two times ten to the power five'

Florent on October 15, 2008 9:05 AM

I hate to be the one to kill some of the fun, but dieresis is (like to little dots) in Spanish it is used above de vowels in some words, like Pingino ... But.. that sign doesn't have anything to do with "

Anyway.. I would have to control myself to not use the "Wow" name for !

Fernand Mora on October 15, 2008 4:46 PM

Regarding the tilde (~), I first encountered it whilst at school, where it was used by an application on the RM Nimbus (if you remember that!), as a prefix in file names, along with the reverse apostrophe (`), neither of which were available on the standard keyboard.

As a result, the class geeks simply learned the ASCII numbers for those characters, so we could enter ALT-126 or ALT-96 as required.

This has also come up recently in my job, when I sometimes have to work on various different keyboard layouts (UK, Japanese, French, Swedish, German, Spanish and Italian), and when I need a backslash, it's easier to type ALT-92 than go hunting for which key it's on this week.

Diptera on November 19, 2008 8:46 AM
Content (c) 2009 Jeff Atwood. Logo image used with permission of the author. (c) 1993 Steven C. McConnell. All Rights Reserved.