tags:

views:

100315

answers:

161

I was wondering when I read the famous "Programmer Habits" thread, I was wondering: Is there any way to tell if somebody is a programmer without actually asking them?


Clarification: I am asking for things that you can use to recognise a programmer from "afar" or without knowing them well. To identify habits, you need to be around a person for a certain amount of time.

+411  A: 

They number lists starting with 0.

Zifre
Contrary to popular belief, not all Dutch people are programmers.
TheMissingLINQ
@themissinglinq: what does this have to do with Dutch people? Am I missing something?
Zifre
Darn, I don't get a badge for this because Jon Skeet's April Fools Questions Question appears to have been deleted, meaning that I have one more badge than I should. What happened to that question? It was really funny!
Zifre
Oh I just heard Erik Meijer call counting from zero the "dutch way" recently.
TheMissingLINQ
@Zifre: It collected three delete votes from 10kers. I know; I was one of them. (Once you get to 10k, you can follow this link: http://stackoverflow.com/questions/698430/what-question-would-you-have-asked-as-an-april-fool-closed . That's assuming this question hasn't been deleted by then, which it probably will be.)
Michael Myers
Hahahaha good one ! ;)
Magnus Skog
@mmeyers: I know how the deletion process works, I was just curious as to why people wanted to delete that (especially since it was closed already quite a long time ago).
Zifre
Lol.. I have been guilty of that.
Jas Panesar
This kinda counting can really cause trouble at the airports, "Mister, you've got 3 suitcases". "Nope maam, I've got only two, 0, 1, 2, see ?" ...
ldigas
Heh, the April Fools question was undeleted 10 days after it was deleted... then it was re-deleted two days later. And now it has one undelete vote.
Michael Myers
Even VB programmers?
Jamie
@Jamie: most VB 6 "programmers" are really not programmers (not to say that there aren't any good VB programmers though).
Zifre
There are 1 kinds of people in the world. Those who start indexing at zero and those that are off by one.
John Fricker
Sorry, that's just programmers with C-based brain damage.
RBarryYoung
It's not a C thing, it's a compsci/math thing.
Lee B
C-based? Python, Ruby, and Common Lisp all start indexing at 0. The only language I personally know that starts at 1 is Lua.
Cristián Romo
In reply to comment #0: I have no idea what you are talking about.
Mike Miller
This has little to do with C, and more to do with how computers work. With `n` bits you can represent `2^n` values, from `0` to `2^n-1`. So of course you count from 0.
gnud
@John: As John Conway noticed ... there are 2 = {0, 1} kinds of people ...
Łukasz Lew
@Cristián: FORTRAN as well; Pascal is flexible, but often [1..length] is used.
Novox
@gnud: C starts indexing at 0 because x[i] is just syntactic sugar for *(x+i) (i is an offset to the base address).
Novox
@JohnFricker, that ("1 kinds of people") is funny, but conflates ordinal and cardinal numbers, so it's also, unfortunately, wrong.
Peter Hansen
@Cristián: Matlab.
Steve
Yes - I was recently checking my program's output to see if it counted the correct number of items on screen. I thought it was wrong, then realized that I had started counting with 0.
Nathan Long
Of course we number things starting with zero. Zero is the zeroeth natural number.
CaptainAwesomePants
In Amsterdam (Schiphol airport I believe) there is an elevator where the ground floor is marked as Floor 0. A coder definitely built that system.
Thomas
Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration." - Stan Kelly-Bootle
Jacques René Mesrine
@Thomas: I believe that is quite common. I see it a lot in malls and hospitals (I haven't been to an airport in a long time). Often, these buildings are so large that there is a fairly large difference in elevation from one side to the other. Usually, the entrance is on the higher floor, and that is floor 1. The lower one that is at ground level on the other side is 0.
Zifre
@Thomas,@Zifre: A lot of Europeans think of the first floor as being the "first floor above ground level". At ground level it is "Ground Floor" (or equivalent in the local language). This maps naturally to 0, especially as that lets the first basement level be -1.
Donal Fellows
@Zifre - Ground floor = 0 is definitely not used in the States. The ground floor will be marked as 1 and all levels below that will be increasing as L1,L2... and all levels above will be increasing as 2,3,4...
Thomas
@Donal Fellows - I guess that means there are more developers that are architects in Europe :D.
Thomas
@Thomas: Maybe, but not in my building at work. I'm on the First floor, but Ground is two floors below. The whole site is very flat. Somewhere, an architect is laughing in their padded cell.
Donal Fellows
@Thomas: I live in the US, and I have definitely seen buildings in which the ground floor is 0.
Zifre
@Zifre - Wild. I've lived in the US all my life and I was surprised when I saw a Floor 0 (and a Floor -1) in Europe. Been to many buildings in the US over my lifetime and I have never seen a Floor 0 or negative floor number. I suppose it shouldn't surprise me. If you see X somewhere in the world, you are bound to eventually see it somewhere in the States.
Thomas
@CaptainAwesomePants: actually zero is the *first* natural number... you too are confusing ordinal and cardinal numbers. (But the comment is funny nonetheless.)
Peter Hansen
@PeterHansen -- We are both right, I think. The term "natural number" can refer to counting and ordinal numbering as well as the set of non-negative integers, depending on how mathematical we're being about it.
CaptainAwesomePants
+73  A: 

If they laugh at the classic "there are 10 types of people who understand binary; those who do, and those who don't" shirt, they are... :-)

McWafflestix
I don't. I did the first couple hundred times, but not anymore. (I still laugh at the ternary version, though.)
Michael Myers
I only laugh at the Hex version
Mike Robinson
I laugh at the "All number systems are base 10" joke...
Erik Forbes
I laughed when a friend of mine started a "what's your favourite binary number?" thread on a gaming forum and then constantly told everyone that his favourite was "2". The thread went on for about a month. People went to pained lengths to explain why 2 is not a binary value. Again, and again. And again. It was awesome.
Mark Simpson
mmyers: You were supposed to say the first couple 100 times so we could ask "So like 8 or 12 times, right?"
jmucchiello
@Mark Simpson: And that's why people think we're autistic... we're not anti-social, we just assert the correct answer.
GalacticCowboy
There are 11 types of people, those who understand unary, and those who don't.
Wedge
I don't understand unary. (How do you get to 1, anyway?)
Michael Myers
If they laugh at it, they're certainly *not* programmers. Any programmer is sick and tired of this "joke".
jalf
agreed !
nickf
@jalf: you don't get invited to many parties, do you? :-)
McWafflestix
The non-geek version: There are three kinds of people. Those who know how to count, and those who don't.
David Thornley
There are two types of people: those who finish what they start, and so on...
GalacticCowboy
A better way to tell if they are a programmer is you say "There are 11 types of people. Those who understand binary, and those who don't."If they are a bad programmer, they will immediately try to vigorously explain how you are wrong.If they are a good programmer, they will laugh heartily. Now answer yourself: When you read this comment, which category did you fall into?
Jeremybub
In high school we used to joke that "5 out of 4 people don't understand fractions".
Oorang
+11  A: 

If you have to ask this question, then you are probably not a programmer... ;)

Dima
Yes but how do YOU tell?
BCS
Not definitive, but definitely reduces the candidates. This is nearly the same as "If you can't spot the weirdo on the bus...."
hometoast
+42  A: 
  • They expect everything in the world to be very specific.
  • They see things in real life, and determine a base class. e.g. class Dog extends Animal
alex
He assumes programmers are a he ;)
jskulski
I was just going to point that out. Not *all* programmers are men.
Zifre
Sorry about that (sorry ladies too!), have made it gender agnostic :)
alex
Bad programmer! Dog extends mammal!
Loren Pechtel
@Loren, what about Dog extends Canine ?
alex
I've never met a female coder in my life, I would like to have one those as a associated resource.
NixNinja
They do exist... in fact some have profiles here on Stack Overflow. Sarah Chipps, for one. Though in reality, I have never physically met one! (Maybe I'd like to :) )
alex
and not all programmers are java programmers :)
John T
*some* are though! I'm not either...
alex
dog extends npc, interface animal
Ape-inago
by changing 'he' to 'they' you made use of Generics
rizzle
There are at least three female programmers in my shop right now, and I've known several others.
RolandTumble
He is gender agnostic in the English language. If someone is of unknown gender he is the correct pronoun to use. By changing it to they you've made your sentence politically correct but linguistically its wrong. He was correct and not indicative of the unknown person referenced's gender.
faceless1_14
@faceless1_14 Feel free to roll back my changes! I hate the whole PC thing...
alex
Worse yet - He assumes programmers are Java programmers.
troelskn
Dog extends HindLeg. No, that's wrong.
Pete Kirkham
@faceless1_14: While true in the grammar books, this is not true in practice. Using "he" or "him" will strongly bias the listener to expect a male. Using "they" as third-person pronoun for a single person of unknown sex has long, if informal, linguistic roots. References available if you really want them, but I'd have to dig. (And, yes, I do refer to 1024 bytes as a kilobyte, written KB.)
David Thornley
@David Thornley: That's because you're used to it. I personally think kibibyte sounds funny, but I'd rather future generations not wonder why 1kilobyte/1byte != 1kilometer/1meter. Learning that kilogram was the standard SI unit (not gram) made me uncomfortable enough.
Jimmy
hahahaha I do that all the time, it's nuts!
Carlo
@Jimmy:So in SI the gram is defined as 1/1024 kilogram, not the other way around? Didn't know that. Thanks!
slacker
@David Thornley:I would argue that "they" would bias the listener to expect multiple people. Also, I believe that the word "programmer" itself carries enough male-expectation bias, so that "he" wouldn't make any difference.
slacker
@slacker: Once you've established a singular antecedent of unknown sex, using "they" should work pretty well. Since I don't want to establish programming as an exclusively male domain, and I've known good female programmers, I'd like to avoid confirming and extending the bias.
David Thornley
+11  A: 

They have Dilbert comics on their walls.

Joe White
Engineers and many other technical sorts who are still non-programmers are likely to empathize with dilbert.
TokenMacGuy
I've said it before and I'll say it again: Dilbert stopped being funny when it started being true. >.<
Ben Blank
I've seen a lot of Dilbert on non-programmer's walls.
Loren Pechtel
Dilbert always was true.
Brian Carlton
@Brian - I think he means when he entered the corporate world and saw that it was true.
kenj0418
Noooo! The wall in front of me contains 10 A4 pages with my best picks of Dilbert..
Axarydax
I have XKCDs on my whiteboard at work, does that count?
Bobby
Yeah, I think XKCD has taken over as the new programmer comic of choice.
palswim
+190  A: 

You ask them "do you want A or B" and they answer "yes".

Darron
That could also just mean that they're on the autistic spectrum.
Bayard Randel
... or a mathematician
Bojan Resnik
... or just a smartass
Lucas Jones
Not meaning you, @Bojan! :-)
Lucas Jones
Who says programmers *aren't* on the autistic spectrum?
Joe White
Everyone's *on* the spectrum... programmers simply populate one side with a higher density.
gnovice
I was at a kids' party and heard this about 400 times:Kid: "Is that rabbit a boy or a girl?"Clown: "Yes it is a boy or a girl."
David Plumpton
That's what you get for hanging out at kids' parties.
Frank Farmer
Python programmers would answer "yes" if they want A, but "B" if they want B.
Functions don't just return a boolean guys. They can also return another type of object.function whatDoYouWant(A, B){return B;}
Antony Carthy
Asking a two point question and getting a one point answer makes me sad: "are you hungry? where do you want to eat?" "Yes."
aggitan
That's the way they choose default answer.
mateusza
Programmers wonder why people say OR but actually mean XOR.
tom
@tom: When people say "Do you want A or B?", they don't mean "Do you want A xor B?". They mean "Please select an option. Which do you want? ·A ·B"
Daniel Daranas
That's an inefficient programmer if s/he turns what should be single question into three.
Jeremy Frey
That sounds like a lisp program :-)
Manjot
Guilty. Doing that a lot.
Andreas
Didn't get the joke ... anyone?
hab
@tom but how do I pronounce XOR in a way that will be understood?
Karl
As a programmer and a linguist I feel compelled to point out that this ambiguity is distinguished by intonation.
pat
@mnh you can answer "yes" to this question if it is true that you want either A or B.
Niels Bom
@pat:I always hated whitespace-sensitive languages.
slacker
+17  A: 

T-Shirt, Jeans, Sneakers.

Mike Robinson
Haha, I didn't think of that! Most comfortable clothes on earth...
Zifre
:( we have a dress code agains jeans. and t-shirts. oh, yeah, and sneakers too...
Peter Perháč
@MasterPeter: I would never be able to work there...
Zifre
Except for we Californian programmers. We get to wear denim shorts with sandals. (Which, yes, I'm wearing right now.)
Ben Blank
isn't that what everybody wears?
hasen j
I wish. Yes, I know lots of programmers get to wear whatever they want. Lots of others don't.
Beska
Shorts and a t-shirt here. No sandals at the moment because I can't find them. Life is good.
MattC
In my placement no dress code either.Cannot imagine how uncomfortably it is to sit in suit and develop.
Dmitris
T-shirt, jeans and flipflops, 5 days a week.
Arron
Throw in "hoodie" if it's under 65 degrees and that's me! (I live in Vermont)
micmoo
....Nike Snikers
panchicore
I actually hated wearing jeans in my school times, because they were so uncomfortable... I managed to get used to them later :).
slacker
+169  A: 
ldigas
+1 for kilometres! :)
alex
When they start answering questions in any power of two! "Give me a number?"- "2 to the 9!""What?"- "512, then."
Lucas Jones
that would be kibimeters http://en.wikipedia.org/wiki/Kibibyte
BCS
"kibi" is a recent concoction. I prefer the old one which is well known and requires a little thinking, instead of the new one which is mostly unknown and usually causes confusion.
ldigas
"kibi" is a sign you're an idiot who bought into the crap of the IEC. We didn't need another unit scale until the harddrive manufacturers perverted the one that was already in place.
Lasse V. Karlsen
+1 for the nice round nr, up until now I've never considered other ppl might feel otherwise about that nr.
Emile Vrijdags
I have once assumed there to be 2048 feet in a mile. On multiple occasions too! (This is mainly because nobody has a clue how big miles actually are.)
MiffTheFox
Last year I was thrilled when my age turned 0x20. Since then, sometimes I say my age in hexadecimal (and than have to explain what that means...)
djeidot
but 256 *is* a nice round number!
Martin
really nice try but unfortunately he forgot about the "\n"...
Chris
itś not the harddrive manufacturers that perverted the one that was already in place.hadrdrive manufacturers always said kilo = 1000itś the memory manufacturers, IBM and microsoft who were wrongalso@linux> man 8 units
alexanderpas
or he could use puts()
computergeek6
+1. KM made me LOL.
day_trader
-1 for the loop starting at 1
Trap
@ Lasse V. Karlsen : Kilo has always meant 1000. You can't just make SI units mean something else, not matter what field you are in. Blaming harddrive manufacturers is a cop-out. The blame should be placed on sloppy computer engineers.
Mads Elvheim
Oh, the same thing could be said regarding engineers and mathematicians who forget to specify which logarithm they use in their papers. Is "log" log2? log10? The natural logarithm? It's awfully annoying.
Mads Elvheim
@Mads Elvheim - In the defense of mathematicians, natural logarithm is usually written as "ln" and "log" is, and has always been base 10, if not specified something else. But the rest stands.
ldigas
@Trap: Don't complain; he got the terminating condition right.
Donal Fellows
+95  A: 
  • They write everything as lists.
fbinder
They assume people know what they mean when they say they need to push that onto (or shift it off of) their to-do list.
Chris Lutz
Managers do that a lot too
zvolkov
Some people don't take kindly to being peeked and poked
Matthew Whited
LoL, thanks Jorge.
fbinder
Hell yes, I use lists in everything. I worked in some places and I'm the only guy who uses about one list per 5 messages. I just like to break complex thoughts and ideas that way.
mannicken
+1 for the fact that this answer is a one-item list.
kyoryu
it is language dependent, C++ guys use Vector, C guys use arrays, VB guys use 1 based arrays.
Behrooz
+52  A: 

If they answer every question with a link to xkcd.

...and to satisfy the newest version of the question...

  • They have pale, pasty skin and a look of apparent confusion on their face when they catch sight of that big orange ball in the sky.
  • You see them food shopping and running other daily errands at 2:00 in the morning.
  • You notice them looking at a piece of stationery with the same sort of wonderment as someone viewing a museum exhibit on ancient Egypt.
gnovice
Only when it's appropriate. (But it's always appropriate.)
Michael Myers
My friends alway laugh at me because I am somehow able to connect every real life event to an xkcd comic.
Zifre
Zifre: Link, please?
jmucchiello
I thought it was yellow..
ChristianLinnell
@ChristianLinnell: Not at sunset (i.e. when they're waking up).
gnovice
2:00 AM? Man I love 24 hour food stores. OTOH even an 12:30AM (the latest I remember going) the lines are never short enough.
BCS
I really want to write a Bot to comment on every question on SO with an XKCD link pulled from a Bayesian filter.
BCS
I find the lines at 2 AM are usually worse than daytime; the local 24 hour stores don't even bother putting someone at the register in the middle of the night until a few people start looking around for somewhere to check out.
Frank Farmer
I am personally tired of all the XKCD references.
Unknown
@Unknown and BCS: it's xkcd, not XKCD. Get it right!
Zifre
The real geek is the guy who doesn't even need to click the link to get xkcd references; "314? That was a good one, but I think 316 is funnier"
BCS
@BCS: That's so #6!
gnovice
Wow, I thought I was the only one who loves looking at stationery. This thread is making me happy :)
@Unknown: Blasphemy!
nilamo
But of course we shop at 2AM; preferrably on Wednesday or Sunday nights. There may be one cashier, but there are four customers in the whole Super Walmart.
tsilb
+45  A: 

They have horrible handwriting.

[edit] Based on the comments this should obviously be: they have strong opinions about the quality of their handwriting, which is either precise and beautiful or will make your eyes bleed.

A graphics or engineering biased programmer will likely be the former, where as we all know Perl programmers are probably the latter. :)

jess
That could just as well be a doctor.
Joe White
I disagree..my handwriting is oh so nice
TStamper
Uhm, not necessarily.
ldigas
It's a different kind of bad handwriting; subtle, but recognizable, I think...
jess
Definitely. Most people can understand about 1 word in 10 of my writing!
Lucas Jones
++ ;) Mine is realy horrible.
Martin K.
I think it should be the opposite, I least if he ever program anything near to Fonts. I would write thinking on glyphs and font metrics :S ( If I ever handwrite of course )
OscarRyz
I tend to see programmers with an engineering education have precision font handwriting.
Unknown
I strongly disagree
Rashmi Pandit
My hand writting is great... if I write backwards
Matthew Whited
I'm a Graphics Programmer and mine's a mess. Why handwrite it when you can print it? :P
Andrei Krotkov
@Unknown - my point exactly. Most engineers learn technical writing at some point or another (computer engineers usually don't have that in their courses)
ldigas
I have horrible handwriting too. Used a typewriter before computers else nobody was able to read anything I wrote ;-). The fun part is, I always make notes, but never ever read them back.
Gamecat
I'm both an engineer and a perl programmer, how does that work?
Ape-inago
Ah, bad handwriting. I'm the only person I know whose "g"s and "s"es are indistinguishable (as are my "a"s and "9"s).
Ben Blank
@Ape-inago - you have beautiful handwriting which still nobody can read. Nice handwriting and learning perl cancel each other out :-)
ldigas
I once _had_ bad handwriting (losing letters and even whole words because I wrote so fast)...since I'm writing everything in blockletters it's readable again. :D
Bobby
How can you possibly pick out a programmer by their handwriting if they never write anything?
Thomas
+661  A: 

They use nested parentheses in normal writing (at least I do (sometimes)).

FeatureCreep
Hell yeah (15 more characters (not any more))!
Skilldrick
I have to make a conscious effort not to do that (especially for college essays (though I may have forgotten a few times)) but I do it all the time in my personal notes.
jess
what's wrong with nested parentheses?
a_m0d
I'm with a_m0d. also did that waay before getting to know a computer.
Pasi Savolainen
And then you became a programmer ;)
FeatureCreep
I thought I was the only one who did that. Whew. Thanks.
johnny
So, you aren't supposed to do that?? I always though the rest of the people was wrong (I'm serious)...
Jorge Córdoba
Nested perenthesis (have (and always will be)) one of programmers' common habbits. :P
David Anderson
You mean non-programmers don't ?!
Liran Orevi
Ooh, that's eerily accurate, actually; I do just that ALL the time...
McWafflestix
Yes, I'm not alone!
Jason Down
+1 incredible. I was guessing I was the only one to do that. Until now, as I see so much people in the same situation :P
yves Baumes
They also properly nest their punctuation inside quotes. "Like this.".
Strilanc
I should start emailing in code... will be a fun way to get people to stop emailing me.
Matthew Whited
Actually, nested parenthesis isn't all that bad, but not using correct punctuation with nested parenthesis is a sure sign (like here.)
Lasse V. Karlsen
Nest parenthesis?? Nah! (Make it clearer: {use different [symbols]})!
Loren Pechtel
I was nesting parenthesis when I was 11 before I knew any programming. It ought to be accepted as a proper part of the English language, it just make so much sense.
Ankur
I am guilty of this... frequently actually. It makes sense to keep the logical thoughts and sub-thoughts together, yes?
bdwakefield
Guilty as charged.
John T
@Loren: I grew up learning {[()]} as the proper nesting order ( in arithmetic, not programming ) :<
Jimmy
smiley faces make everything even harder still: http://www.xkcd.com/541/
ChrisHDog
@ a_m0d: Noone implied that there's anything wrong with them. The poster just mentioned them as a way of telling if a person is a programmer.
Daniel Daranas
I guess I'm not a real programmer, as I try to refactor my writing to not use that many parentheses.
Ionuț G. Stan
Nested parentheses in English are not correct usage. It should be First phrase (but second phrase [yet a third phrase {fourth phrase means you should rewrite}]).
Robert S.
I think I already did that before I even started to program!
djeidot
Related: have you ever written a paper that had footnotes for the footnotes?
Barry Brown
@Barry Brown. Yes. The programming documentation (when written (which only sometimes gets written)).
Jeff Davis
@Barry Brown. No. But this comment section soon needs a comment section.
FeatureCreep
@Jimmy: i started nesting parenthesis the mathematical way as soon as i learned about it.
Botz3000
Just about any English style guide will tell you that anytime you feel the need to nest parenthesis, you should rewrite your sentence and/or paragraph to avoid them entirely. But it just seems natural and logical to programmers (and some mathematicians).
RBarryYoung
Upvote #256. :D There should be a badge for getting 256 votes. :P
jrista
I totally agree :)
FeatureCreep
This couldn't contain any more truth. Brilliant.
day_trader
True, but I wouldn't be so sure only programmers did it (though I don't have any proof about that).
Ree
You know, I never thought about this until now. I just looked at an email I sent out and I have several in there. Hmmm...
Ascalonian
I did this long before I started programming. Sometimes I was serious, and sometimes it was for humorous effect. Also, when I was in English class in high school and had to use a vocabulary word in a sentence, I would make the sentence as long as possible, with lots of irrelevant back story and asides. So I guess the moral is that dorks do this, and programmers are a subclass of dorks. :)
Nathan Long
I used to do that too, but I stopped doing so recently $ it was when I started learning haskell $ you should try it, it's fun!
RoaldFre
I'm fairly sure that for writing, if nested parentheses are necessary, you are supposed to alternate between parentheses and square brackets (just as for nested quotes, you are supposed to alternate between double and single quotes). For instance: *or so she said (and I don't doubt that she did [though I could be wrong (which I sometimes am)]).*
eyelidlessness
+160  A: 

If you put more thought (and money) into your choice of keyboard than say, shoes, car, etc...

jess
Why should I care about how my car looks? I can't see it while looking at my monitor?
BCS
Yep, can't see my shoes either. Maybe I'm not even wearing any.
Bratch
I certainly have this pattern. Shoes for me are usually $5 gimicky flip-flops. Keyboard is an IBM Model M, of course.
TokenMacGuy
My mouse is a cheap $15 mouse. I have a 15 year old IBM keyboard.
Unknown
^---- must be a unix guy :)
Matthew Whited
Eek, I don't fit the mold at all then. I spent more time researching my car and finding a pair of shoes I like than I did with any of my keyboards or mice which are usually 10 minute decisions based on how much I like them when I get to Staples.
BenAlabaster
@Bratch — Now that you mention it, I *don't* appear to be wearing any. I certainly hope I find them by quitting time. :-)
Ben Blank
@Ben - Thank god, I thought I was the only one to take his shoes off at work!
Andrei Krotkov
@Andrei - All my coworkers poke fun at me for taking my shoes off. I only put them on when I'm leaving my desk. It's very bad for your feet to have shoes on all day long...
BenAlabaster
shoes off at work + fire = bad ;D
Ape-inago
Being a programmer should not equal looking like a complete slob. Have a little style, you're a programmer, not an actuary!
temp2290
@BCS - that's what desktop wallpaper is for.
ScottSEA
I don't know about car, but definitely shoes. I've got my eye on that Kinesis ergonomic keyboard.
Michael Dickens
@Ape-inago Only if you work on a street littered with broken glass. The incidence of emergency egress from work * the chance of injury is not significant enough to warrant losing the comfort of freely wiggling toes.
Lance Kidwell
I guess I can understand how some programmers don't mind what "gets them from A to B", but I like to get there fast, in a precision engineered machine with some nice visceral feedback.You're allowed to like explosions and growling engine sounds too, you know.
Leon Breedt
I use my own personal Model M at work. I choose my shoes carefully for ankle support, fit, water resistance and longevity - which means I only need to do so once every 5 years (modulo occasional worn-out laces). I don't have a car - that's what the train station outside my front door is for!
Chromatix
@Matthew Whited: I know quiet some people who swear on old keyboards...I, for my part, like my keyboards silent and not sounding like a typewriter which was too long out in the rain.
Bobby
wow... shame you don't get points for up-votes on comments... 49 so far :o)
Matthew Whited
@Unknown I envy your keybooard
Midhat
@Ape-inago: nope, no backups + fire = bad.
Behrooz
+291  A: 

The last conference I went to in London I didn't know where I was going once I got over London Bridge, fortunately halfway across I spotted a guy with a laptop bag, unkempt hair but more importantly socks and sandals, he led me all the way to the conference.

Phil Carter
Long beard too? :-)
Lucas Jones
+1 for the socks and sandals!
a_m0d
@person-b: sadly no beard. the conference contained many, many great beards though
Phil Carter
Based on socks and sandals, he could be just a random german tourist. You were lucky with your heuristic :)
ypnos
Actually, the "socks and sandals" is a horrific fashion, nevertheless a trademark of a geek who respects himself/herself. :)
Kensai
socks and sandles 4 life
Petey B
@Kensai - that probably depends on the culture.
Thomas Geritzma
+1 actually answers the question that was asked.
ScottSEA
@ScottSEA - by that criteria, half the people you see in the summer in this part of Europe would be programmers. So, no, it doesn't really. It just glorifies the stereotype.
ldigas
Socks and Sandals is British by nature, esp. if there’s sun and it’s summer. But you need to check the type of sandals. FlipFlops+socks usually belong to French/German. =)
Martín Marconcini
Must have been one of the Debian guys. I used to follow them to the best pubs ;)
Andreas
Cargo kilts are also a sure sign.
pr1001
+63  A: 

When they end a random sentence with a semi-colon;

Nick
I've caught myself doing this one in emails;
Jason Down
This is really, really bad if I write something about programs, especially programs in a C-like-language, because then, ; means: End of smallest unit of thought. And usually, a sentence is such a small unit of thought. So, there has to be a ; at the end of it?
Tetha
I did that in every sentence for 2 pages on my semester report for history. I didn't even notice it was wrong until I had someone proofread the rough draft for me and they were like "wtf dude?"
faceless1_14
You must not be a Python programmer. ;)
musicfreak
+160  A: 

If every question is answered very precisely. ex:

Spouse:      "Where are you?"
Programmer:  "In my car."

Spouse:      "When will you be home?"
Programmer:  "After work."

Spouse:      "Do you want to go mow the lawn?"
Programmer:  "No."

Friend:      "What's up?"
Programmer:  "A direction opposite of down."
John Kraft
Both my mother and husband HATE that.
jess
In short, they answered everything correctly, but the answer is of no use to anyone.
Hao Wooi Lim
wrt the last dialog. My usual answer is 'j', but I guess that might be more of a math answer. If the question were, as it on rare occasion is, 'what's going down?' the answer would similarly be '-j'
TokenMacGuy
That's not precise. That's terse and ambiguous. 1st answer: "In my car's driver seat". 2nd answer: "After work about 8:00 PM". 4th answer: (a more applicative and less theoretical answer unless you program in ML) The ceiling, or sky.
Unknown
@Unknown - my usual response to the last question is to look up and reply with whatever's above me: The light, ceiling, sky, clouds, whatever.
BenAlabaster
um, excuse me, is speaking like that wrong? how would you answer then? with a story about what your cat did yesterday?
hasen j
I have been guilty of responding to "What's the time?" with "A method of determining how much of the day has gone by" :P
Nathan Ridley
My English professor actually commented on this; he said if someone asked me what the sky is, I'd say, "It's blue," and leave it at that. That's why I'm not a better writer.
Cristián Romo
That's me except the last one. I use balabaster's answer for that one.
Slapout
You're out of votes for today - come back in 3 hours and vote!
TheSoftwareJedi
My friend sometimes asks me to "say something." I usually reply with "something."
Kyle Trauberman
The correct answer to "What's up" is "The direction away from the center of gravity of the nearest object with great mass"
Jeff Davis
My rehearsed (smart-assed) answer to "What's up?":"Outward or away from a given point of reference, usually the center of the earth."
ScottSEA
"Do you have the time?" "Yes, I do"
djeidot
Even before I became a programmer, it took me years to break my mother of the habit of asking "Do you want to <something she wanted me to do>?" by always answering "No... but I will."
RolandTumble
"What's up?" "It's a preposition."
khearn
The third one has gotten me in trouble more than once. Her:"Do you want to mow the lawn?" Me: "No." (sees angry look) "uhh, but of course, I Will"
kenj0418
I know a person that answers questions like this but isn't a programmer and also is horrible at even simplistic alegebra.. she'd probably make a good programmer if this is any sign though. I commonly must start with very general questions and go down to specific questions to even have a conversation with her. lol
Earlz
I think, some day, I might end up getting killed for being like this almost all the time... *g*
Robert Giesecke
How do you feel?With my hands.
jim
I call this "optimizing answers", not everyone likes it but it saves time.
Carlo
One of my friends has the extremely annoying habit of asking what time I'm going to arrive - and then not accepting the answer, "Depends which train I manage to catch."
Chromatix
@TokenMacGuy:But "j" is down! "k" is up! >:-(
slacker
@Slacker. I love vi.
Earlz
"do I *want to* or *will I* " ??
DaveDev
+70  A: 

If they answer every question/request with, "Why?"

John Kraft
Coincidentally, that's also a good way to tell if a person is a four-year-old.
Michael Myers
Maybe they are just fans of Mindy from Animaniacs and want to be like her.
JB King
Why?????????????????
Matthew Whited
@mmeyers — I've always found that programmers and four-year-olds have a *lot* in common.
Ben Blank
lol, mmyers comment has 5 times votes the answer got
hasen j
I ask, "Could you be more specific, i'm unsure what you mean by 'x' "...people are just very poorly written interpreters.
Ape-inago
Also, it currently has a number of upvotes equal to the most successful instruction set architecture in the history of computing. (This may vary in the future, of course.)
Daniel Daranas
Wow, more than 100 votes for a comment! There really should be a badge for that. =)
gnovice
@gnovice: I agree. (/me tries to look innocent)
Michael Myers
@mmyers just upvoted it to get it to 192 come on 200
PeteT
I want to upvote, but the answer is at 64 and the comment is at 256. Must... not... touch!
hobbs
@Daniel Daranas:The most successful ISA in the history is probably the ARM architecture. Sales of ARM processors are an order of magnitude larger than for x86. You probably own at least 10 ARM processors - one in your cell phone, one in your digital camera, at least one in your TV set, a few more in your car, etc...
slacker
@slacker: Thanks, that was instructive :)
Daniel Daranas
+23  A: 

The beard.

Frank Farmer
Once ( years ago now ) when the scripting languages were making his way through the mainstream in programming and C# was in the early stages, someone mentioned that programming language success could be "predicted"by the creator beard. So, C, C++ and Java had major success while Perl, Python, and Ruby would't. That day someone at the Ruby community pointed to this same link saying: "We are saved, Yukihiro do have a beard!!!"
OscarRyz
Hey, here's an update featuring Guido and Yukihiro beards!!! http://bit.ly/3NwOp
OscarRyz
Not true, some of the female programmers I know have no beard at all.
Gamecat
Wait, some? D-:
Novelocrat
+1  A: 

By showing them this question. If they laugh and really get it- they're a programmer

There are only 10 kinds of people in this world: those who know binary and those who don’t.

Eric
Heard it 10 times and it still makes me lough
Liran Orevi
Similarly, if only you and DEAD people know Hex, how many people know Hex?
Oorang
There are those that know Gray code too.
Christoffer
+230  A: 

Similar to FeatureCreep's answer...

If they go completely crazy whenever they see a sentence ending with punctuation in a parenthetical clause (like this one.)

Mike Daniels
Please fix it, it hurts my eyes!
Peter Perháč
I find it perversely pleasing, actually!
Neil Williams
@MasterPeter - that is the technically correct way to punctuate a sentence ending with a parenthetical. I hate it too, and I deliberately do it wrong because it makes more sense, but every time I do it I cringe a little as my brain resolves the conflict between technically correct and logically consistent.
Chris Lutz
I know it correct and it still bugs me so much I do it wrong anyway.
BCS
related: http://xkcd.com/541/
BCS
This is only correct IN ENGLISH. Most other western languages do not have this brain damage. Note also that this typographic convention is losing popularity, since it is now quite easy to move the period close enough to the close parenthesis to look good.
TokenMacGuy
"The Elements of Typographic Style" By Robert Bringhurst, is THE cannonical source of "correct" typographical rules. It says to put the punctuation on the (outside). There's a ton of rules like this that came about from the use of TYPEWRITERS, that are still hanging around, causing havoc. Such as two spaces after a period.
Breton
Two spaces after a period is the One True Sentence-Ending Style.
Kyralessa
Actually I think that is only correct in American English. I'm from America, but we even learn the British way in school.
Zifre
http://howmanyspacesafteraperiod.com/
Andreas Petersson
I seriously felt something was very wrong when I saw the end of that sentence, but it was more of an instinctive feeling of discomfort than any kind of lexical analysis.
Neil
I mean syntactical, not lexical.
Neil
I have never, ever, ever heard anyone say that it was proper to put the punctuation inside the parentheses. Ever.
Michael Myers
I'm afraid that the people who say this is the correct way are confusing the last rule in page 5 with the first in page 6 in http://www.newcastle.edu.au/unit/ctl/lsp/documents/punctuation_and_sentences.pdf . The relevant one (the latter) says: "Place end stop punctuation marks according to logic. If a parenthesis is part of the sentence, then the full stop comes outside the bracket. e.g. It was the quickest way out (and the most dangerous)."
Daniel Daranas
Actually, this sentence is grammatically incorrect. The only time the period goes within the parenthesis is if the entire sentence is within parenthesis.
Jeff Davis
My parser has just blown up!
ya23
I didn't even know that that is the correct way!
Ian
It's not the correct way, as Jeff Davis and numerous others pointed out. This would actually be more applicable for "quotations", since American convention says to put punctuation "inside the quotes." As a programmer, that just bugs the hell out of me. :)
htw
I. Hate. You. ()
Tordek
I go crazy over this, since I'm a typography geek, and typographically, it looks better to include a period or comma inside quote marks. But semantically, the period or comma often belongs outside of the quote marks, and in many cases when discussing technical matters, it is necessary to put it outside in order to avoid ambiguity. So I will frequently start writing with punctuation inside quotes, then realize it's not clear in one case, then go back and edit all of my quotations in the document to match that one case. Grr. Parenthesis, though, always follow the logical structure.
Brian Campbell
@MasterPeter: signed
Dave
Sometimes they make self-referencing sentences (like the one above).
Blanthor
Stupid Luddites. Creating nonsensical English grammar rules to torment the logical techno-minded.
Evan Plaice
:( the period feels out of scope
Meiscooldude
+196  A: 

They complain that Google doesn't have regular expressions support.

Joey Robert
Eh... So I need to search for something, which might be on the internet, Oh i know i'll use reGoogle. Now I need to search for two things.
TokenMacGuy
Amazingly, Google Code Search can use regex to look for code.
Manuel Ferreria
Thanks for the tip on Google Code Search! I do terminology research and I really wish Google would support regex instead of double or triple guessing what terms and spellings I need? (It's great when I am looking for data, but for terminology, Google's lexing is a pain)?
Sylverdrag
and Firefox for that matter
Al
Good to know I'm not alone in having thought about that.
anonymous coward
I find myself wanting to Control-F text on paper quite often.
Matchu
I remember a few years ago when Google didn't support searching for C#, becuase it stripped all puncuation marks, leading to C# == C++ == C.
MiffTheFox
@Matchu:What's the problem with scrolling the paper one page forward?^[6Bflipping
slacker
Think of the performance problems if _every_ search query was a regex. Caching would be hard too.
Callum Rogers
@Manuel Ferreria: I love that, Google Code Search is also my homepage, as it seems to be a pain to get a direct link to it ;p
leppie
+436  A: 

When you ask them a question there will usually be a discernible pause (long enough to notice by a mere mortal) for mental lexical analysis, pre-processing, linking, syntactic/semantic analysis and optimisation before they answer.

I also noticed that it takes a disproportionately long time to obtain an answer from them to a trivial question such as would you like a cup of tea?, which would leave them hang in an infinite loop until some specified time-out cuts their thinking thread short and they provide a random answer (whatever was previously written in their answer buffer).


A bit off-topic but fun: Walk up to a (busy) colleague (programmer) and just say Hello and behold:

Blank stare - you can almost see their minds unwind as they swap out their current short-term memory to persistent long-term storage - then a moment of REM - rapid eye movement - before they awake from their thoughts completely, and first then they are capable of processing input from you.

Peter Perháč
Uhhh, uhhh......... sure.. I'll have a cup of tea!
DeadHead
My interrupt implementation usually responds with a default answer to avoid task-switching. Basic requests such as "Hello" are resolved by the handler - output is usually "Hey" or just "Uh". Unfortunately, this still pollutes my L1 cache
Tom Leys
Hey, you need to understand us. The thoughts goes like "And then, I can remember the neutral elements in that field of the data-tea.... data-tea? tea? huh? Oh. Person in room. Wants to know something. What was it? Ah, Do I want tea? Do I want tea? Uhhh, tea, tea. What kind of tea? Are there bad kinds of tea? Hm... there are kinds of tea that are not awesome, but usually tea is nice. So lets agree somehow. "yes" might be appropiate. Is it? Who knows. Lets just say "yes""
Tetha
+1 the bit about tea made me chuckle.
TokenMacGuy
haha that's excellent!
Antony Carthy
I don't know if this is because I'm a programmer, but I definitely fit the bill.
harpo
Note that in the seconds when they awake from their REM cycle you could also count every second as 1 minute of lost productivity. I'm not entirely sure who the joke is on at that point to be honest.
Lasse V. Karlsen
It's quite possible to store simple routines in your answer buffer and have them called when a social interrupt occurs. My own is basically a "SYN/ACK"-type response which reflects salutations and valedictions (e.g. "Merry Christmas" with "Merry Christmas", "have a nice day" with "you, too"). Of course, the one bug I haven't been able to eliminate is "Happy Birthday". The response is emitted before I can catch the exception. :-)
Ben Blank
:D @Ben is that a scientific term - social interrupt? :D sounds really geeky.
Peter Perháč
Ben Blank: +1 for "social interrupt" ... cool :)
AndreasT
@Ben Blank. I use the same method. But some times get confused when they say two things at once. "Have a nice day. Enjoy your purchase.""You t..." Wait.. Um... [Walks away trying to unwind current thought process in order to figure out a way to respond to two simultaneous statements]
Jeff Davis
@Jeff: I HATE it when they do this.
Botz3000
I have my own method for this. I practiced automatically saying "Good Morning" (works in formal situations) whenever someone said "Hi" or "Hello" to me. I don't have to stop thinking about foobar, but the problem is when it's not morning.
waiwai933
This is a great answer and this happens to me daily. I have been in situations where I can't untangle my brain enough to remember the name of the person who I am talking to. I've stared blankly at faces, uttered uhh.huh.. at every question. You've described the mess perfectly.
Cyril Gupta
If you say hello to a programmer, you expect him to reply "world". It should be instinct.
Stefano Borini
Actually the tea question can be answered quickly and with certainty... Tea. Earl Grey. Hot.
jjclarkson
@Jeff: the default error handler for that should be "Thanks.".
Joachim Sauer
I think flash cards are good here just hold up a picture of a cup of tea with a tick by it - I can utilise a thread to do this but to respond by making eye contact engage social interaction program and converse now that is a synchronous task.
Andrew
A programmer would take "Hello" as "HELO" and reply back as "EHLO"..
this. __curious_geek
"Need anything else?" .... "Hello, Bishop. Do you need anything else?"
wds
Theta's answer makes you much more lol if you read it aloud!
Dave
+67  A: 
Characteristics include:
* Glasses
* Lack of tan
* Relaxed dress code
* Derision toward athletes
* Monospaced fonts
* Tendency to be very specific, precise, and accurate
* Tendency to correct or expound, esp. faced with people who are
  not sufficiently specific, precise, and accurate
  * Including seemingly-arbitrary syntax
    * Especially in monospaced fonts
* Strong knowledge of keyboard shortcuts
Garrett
And a tendency to write everything in monospaced fonts?
Jeremy Frey
Definitely, monospaced fonts! I even use them in my MSN messenger :P
Dunya Degirmenci
I'll agree with all but the first. Nothing says a programmer can't have good vision. I didn't wear glasses until about 35.
Loren Pechtel
I'm 36 and I can still read a newspaper by moonlight. Didn't your mother warn you about that?
corlettk
Garrett
Dress code, which language is that?
Gamecat
I have to take exception with "Derision toward athletes" - I'm a programmer and an athlete. Granted, I was the only one in my class who could bench-press the mainframe...
AnonJr
@AnonJr: Aha! You admit you were unique among your peers in your bench press abilities. I rest my case. =)
Garrett
Bench-press? Was that the machine that punched holes in the cards?
Roger Pate
Why glasses? Looking at monitors doesn't cause bad eyesight and having bad eyesight doesn't lead to programming. How are they related?
Dinah
"Derision toward athletes" - I always disagreed with this stereotype. In general, my programming friends, my self and other IT people are far more athletic than the general population. I am constantly surprised how many high school cross country runners end up as programmers.
Brad
Theoretically, there are people who don't write fiction, poetry, and letters using vim.
David Thornley
+5  A: 

They're amused by things like the Evil Overlord List, the Eric Conspiracy, and How to Destroy the Earth.

Joe White
Those are great! I love the Eric Conspiracy...
Zifre
Please to be keeping your Gecidic tendencies under control. There are ladies present! Hey, I made ya' look.
corlettk
+12  A: 

Commoner: "Could you count to ten for me?"

Programmer: "0, 1, 2, 3, 4, 5, 6, 7, 8, 9"

Commoner: "That's only nine.."

Programmer: "I counted a total of ten digits..."

Commoner: "What?"

Programmer: "Nevermind;"

David Anderson
I am not sure if normal people should be referred to as "commoners." That is likely to be insulting.
Jeff Davis
How about muggles?
Rydell
+1 for "Nevermind;"
glasnt
+89  A: 

Back in the 1990s NASA and the Russian space agency got together to discuss sending an astronaut up to MIR. Nobody at NASA knew much about the Russians attending all the meetings; they didn't know if they were technical, management, KGB etc. So in one meeting they supplied big blank pads and marker pens at every setting. Then they got somebody to stand up and start talking about something technical with big diagrams etc. Everybody who reached for a pen to draw something was flagged as a technical guy.

David Plumpton
That's actually quite clever. It isn't 100% (I wouldn't have reached for a pen — I'm generally a failure as a note-taker), but I bet it's decently representative.
Ben Blank
Anyone who picks up a pen is probably technical but that doesn't mean the guy who doesn't isn't technical. Not all techs will pick up a pen unless there's something specific they need to write down.
Loren Pechtel
@Loren, @Ben, keep in mind this isn't a normal technical briefing meeting. This is a meeting learning about another country's space program. The likelihood that you'd take notes at such a thing, if you were an expert in your own country in the same field, is very much higher than other scenarios, even if you aren't normally a note taker.
Wedge
The guy who started fiddling with his jacket button was flagged as the KGB spy.
Sindri Traustason
I would've thought everyone who reached for a pen was actually a manager who would take it and start doodling on the page to try to look busy. This clearly worked as the speakers thought they were the techies.
Wayne Koorts
Any references for this anecdote? I'd like to read more.
outis
+8  A: 

They are here

BCS
+1  A: 

By their shirt, of course.

Steve Dignan
I've just ordered one. Ta.
corlettk
+339  A: 

If they follow conditional logic in the real life, too. For example, check out this "joke":

A woman asks her husband, a programmer, to go shopping:
- Dear, please, go to the nearby grocery store to buy some bread. Also, if they have eggs, buy 6.
- O.K., hun. Twenty minutes later the husband comes back bringing 6 loaves of bread. His wife is flabbergasted:
- Dear, why on earth did you buy 6 loaves of bread?
- They had eggs.

...

Hahahahaha :) ! <-- Exactly 15 letters. Yay !
Magnus Skog
That was new to me, but quite rich. xD
The Wicked Flea
This is his parsing error based on lack of context-sensitive prediction. If he was a smart programmer, he would have correctly assessed the probability that the second sentence was a separate statement. "they" should have been a variable referenced as "grocery store" while buy 6 should refer to eggs, not to bread (bread already has the clause "buy some" next to it).
Unknown
HA, (only 2 chars, but capitalized!), choked on my coffee!
Simon Wilson
(The sick part is how hard I have to force myself to not burst out in laughter at work)
Matthew Whited
Fantastic! I love it. Of course, in real life I'd have bought the eggs, but very amusing never-the-less.
BenAlabaster
She's lucky he didn't come back with six grocery stores.
Beska
I'd ask "6 what?"
sirlancelot
Shouldn't it be 7 loaves of bread?Buy(1); //Buy One Bread;If(StoreHasEggs()) { Buy(6); } //Buy Six More Bread
I love this thread!
day_trader
The wife's question is so redundant. Buy 6 eggs would be enough, as this would lead to the husband buying 6 eggs - if available. If there aren't any eggs, he can't buy them, so the "if they have" condition is redundant.
Dave
But if there weren't any eggs, he'd drop everything and run back to his wife and tell her "StockException: There weren't enough eggs."
Tordek
@devinb she didn't say six additional loaves of bread, she said 6
brian
@devinb: no, it's: buy = 1; if (storeHasEggs()) buy = 6;
Milan Babuškov
@Tordek:Since when does an `if` construct throw an exception before entering `else`?
slacker
The guy didn't have a grasp of grammar...
Beau Martínez
@slacker I take it you didn't read the comment immediately above mine.
Tordek
@Tordek:I did. I actually upvoted it. I didn't realize you were replying to it, though. No "@Dave:", or something. Still, I believe that in such conversations exceptions are implicitly masked out. You check the accumulated exception mask AFTER finishing the algorithm. Also, even if they weren't masked, HOW THE HELL do you imagine unwinding the bread purchase on exception? :)
slacker
+2  A: 

-What is you favorite color ?

-#0000FF

Nicolas Dorier
#00C0FF. Taken from an actual sunset, and smoothed into a nice round number.
tsilb
@tsib, thanks so much man, I don't remember how many time I wanted this color !!! :D
Nicolas Dorier
#33CCFF has always been my favourite.
Andreas Rejbrand
I like #452768. ;)
glasnt
#00F if they are an `efficient` programmer.
Talvi Watia
+5  A: 

They don't get why this would get you banned from a conference.

BCS
Screw that! (isn't it obvious ;-)
corlettk
No, I think that's an interesting question the man is asking. :D
BCS
I just add a few spaces (like this :) ) --note this prolly won't show up in SO
tsilb
Linux (or BSD :)>) ?
mlvljr
..mustache and beard that was..
mlvljr
I usually restructure my string to use commas | semicolons | dashes instead. ;)
Stein G. Strindhaug
that could lead to some -- odd :)-- emoticons.
BCS
+8  A: 

By the way they nibble and byte.

Jeff Leonard
And they don't use a spoon or fork. They use their "clause". -exit stage right :)
tom
My word! Programmers don't byte. They just nybble a bit.
jleedev
@tom:That depends. Unix programmers use `fork()` quite often. Not sure about `spoon()` though.
slacker
+5  A: 

They hate facebook out of sheer envy.

geometrikal
Or out of being anti-social.
The Wicked Flea
Or out of the fact that their API is junk and hated how they had to maintain something using it.
Calyth
Or simply out of respect for privacy...
slacker
A: 

They get the joke: There are 10 types of people in the world: Those who understand binary, and those who don't...

Meski
Already said, not funny anyways.
Zifre
^---- He just doesn't get it.
Matthew Whited
@Matthew Whited: I definitely "get" it, it's just way overused (it has already been mentioned several times in this question).
Zifre
Was funny once....
RolandTumble
It definitely was funny, the first 11 or 100 times I heard it.
David Thornley
+62  A: 

They don't know how to answer casual questions:

Normal person: What's up?

Programmer: Um....... what am I supposed to say?

The other common responses would be:

Programmer: The sky

and

Programmer: A direction opposite of down

Zifre
So true. To this day I hate the question "How are you?". I mean... How am I WHAT?
Oorang
Yea, I never know how to answer what's up. I learned to answer by saying "not much", but I don't know what other ways I could answer it.
hasen j
I have been guilty of responding to "What's up?" with "The Ceiling."
Nathan Ridley
> I learned to answer by saying "not much"That is exactly what you are meant to say.
Ankur
"Chicken's ass when it eats", "Pressure in my bladder", I have so many of these...
rein
I've received "The sky." from my father who is no programmer.
Joshua
I know several people who always say "The ceiling". Of course, I'm related to most of them, so it could be something else.
Michael Myers
"The ceiling, and beyond that, the sky, which happens to be interspersed with a few clouds."
nilamo
I always say, "a preposition."
rlbond
I always say not much to most dumb questions like that because I got tired of the awkward silence of trying to figure out what to actually say... "whatcha think?" is also another weird question because if I told them what I was thinking, it could end up in a stack overflow (infinite recursion)
Earlz
I was stopped on the street the other week by a group of 'youths' and asked to explain what hierarchy meant.
Pete Kirkham
I think you mistook the question for "How can I tell if a person is an asshole?"
brian
My friend in high school decided it'd be funny to say "me".
Roman Stolper
A person unable to learn half-dozen stock questions and answers for doing casual social interaction doesn't deserve to be a programmer - how would he learn to program in any language? The patterns are easily recognizable and highly repetitive, nothing hard in it.
StasM
+173  A: 

By their tan lines of course (from http://www.codinghorror.com/blog/archives/000970.html).

alt text

It used to be pocket protectors, but I think that's more for engineers.

Bratch
I can proudly say I have tan lines closer to the SCUBA diver, simply because I just finished planting a 750 square foot vegetable garden. Hurray farmers tan!
gnovice
Those tan lines look disgusting
Ankur
What's with programmers who sit naked in there apartments and let the sun in?
Ronny
Being able to program naked is one of the best reasons to work at home.
U62
I at least have some underwear on. Hack naked --> http://pauldotcom.com/store.html
Bratch
@hydroes: how the hack do yu let the sun in your basement in?
erenon
I'm more along the lines of the waterskiier. Gotta get my fix of wakeboarding while the gettin' is good.
Evan Plaice
+17  A: 

They tend to get angry when non-programmers use the word "list" in conversation (when clearly they should be using "set").

The Dissonant
Hah...almost woke the baby when I read that...and the 2nd time. Heh
Simon Wilson
+35  A: 

When they wield jokes like

Why can't you make jokes in octal? Because 7 10 11!

The Wicked Flea
rofl Hadn't heard that one yet:)
Oorang
That's great!!! .... damn I'm a geek :o)
Matthew Whited
+1 For "wielding" a joke.
Jeff Davis
I don't get it. Can anyone explain?
erikkallen
Erik, this joke involves numbers not in base-10. Octal is base-8, and therefore 10 is equivalent to 8 in base-10. So `7 10 11` becomes `7 8 9`, or when said... "Seven ate nine!"
The Wicked Flea
+2  A: 

Rock climbing gear is almost a dead giveaway for a programmer. At least in New England, I'd say 2/3 of people I've talked to are involved in either medical / bioscience or engineering / programming.

I'm a rock climber...

Also, dress clothing and boots. (I happen to be of the "in case a mountain springs up in the server room" variety.) Oh, and finally, disagreement with normal punctuation rules.

Autocracy
Weird, my father and I are both rock climbers and programmers. I was born in Massachusetts, though I now live in California, so that fits your New England bit.
Oz
I am in the midwest and also fit your description.
Mr Bell
+50  A: 
Oorang
BLASPHEMY!!!! GTFO!
Shadow
lol Maybe I should have added "and then they consider restructuring the flow of the whole email so they don't have to use "go to".In all seriousness though, you haven't noticed this? I have.
Oorang
I instinctively write "go to" as two words, so I won't be associated with the creeping evil that is GOTO.
Joe White
GOTO is fine. It just needs to be kept away from children. You where the children. Don't take it personally.
corlettk
Is goto used in real programs? I'd forgotten!
Jonathan Leffler
Yah, it's a rare day that you need it. But it's even in C#.
Oorang
You could probably argue that most programming constructs are terrible and dangerous, because there's a lot of people programming who have no idea what they are doing, and who will manage to screw it up, and make a complete mess of things. That doesn't mean we should do away with these features.
Kibbee
I was trying to remember who said it (maybe Knuth?) but it went something like "Goto is useful for when you need to get somewhere". Some languages like VB6 and friends don't have a way to get of of deeply nested loops you can only break out of the current loop, test for the exit condition in the next level, break out, test, repeat... Or you can just goto. That said, avoiding goto has often forced my to rethink what I am doing and thus saved me from writing some poorly structured code.
Oorang
I have actually added "goto" to my Firefox dictionary so that I no longer feel bad about using it
Earlz
+116  A: 

Ask them what languages they know. You can tell the programmer by the way he names numerous langauges but forgets to include 'English'.

too much php
I wonder if you can function as a programmer without fluency in any natural language.
BCS
Hey, Let's raise a boy called Rails and a girl named Ruby and utter nothing but curly-brace unto them, and unto them be taught nothing but base sixteen, and upon them run nothing but purest gold! Or is that just too freaky? ;-)
corlettk
True: I know C/C++ better than English.
Donotalo
@corlettk...um...the Ruby on Rails jokes would be pretty ugly for those two.
Beska
"Languages? Well, let's see...C#, JavaScript, Haskell...what? Oh! Spoken languages! Of course! I feel so silly! Hmm...okay...Klingon, Sindarian..."
Beska
I can swear *in* four different spoken languages *at* half a dozen different computer languages.
Chromatix
@corlettk:I assume the Rails is not a programmer, they have no girlfriends.
Behrooz
+284  A: 

They use slashed zero to distinguish the digit 0 from the letter O.

And my wife STILL does not get it, it's like a paranoia, I try to leave my cheques but end up going back and slashing the zeros...you never know the OCR software at the bank might throw thinking they are "O"'s
Simon Wilson
Banks use OCR for checks? I've always had to enter the values manually when filling out a deposit slip.
Andrei Krotkov
Heh, my dad used to do this... he also used a crossed 'b' when he had to spell a blank space
Mauricio Scheffer
who writes with a pen?
Antony Carthy
I still do this.
Neil
I also hyphen my 7. A hyphen right through the middle, to differentiate from a 1. But I think that just shows I took bookkeeping/accounting before computers were common.
Brent Baisley
I hyphen my Z, and sometimes the G.
erenon
I slash my zeroes, hyphenate my sevens and use a symbol that looks like a small bucket (or a 'u' with square edges and short stems) for spaces. One developer in my past said he knew I was new to programming because I used that symbol and NOT the 'b' with the slash through it.
David
Who still writes cheques?
James Schek
i _always_ slash my 0's and hyphen my 7's and Z(ed)'s
Petey B
When I was in university and doing a lot more writing, and a lot more math, I always crossed my z's and used cursive x's, even when printing. Also, props to Petey B for pointing out that it's pronounced zed.
Kibbee
I slash my O's, but not for zeroes, for Ø. The norwegian letter meaning 'oe'. It will seriously mess up my head to see a letter where there's supposed to be a number...stop it. all of you!
peirix
You only need to slash your zeros if they might be confused with the letter o in that context. You never need to slash the zed if you write it carefully because it never looks like a two if you write it carefully. And slashing a seven is a European thing since the European one (and often a four) looks like a seven to an English person.
Adrian Pronk
Mathematicians do that too.
KovBal
I'm guilty of this.
JimNeath
I'd say that most of the above only goes for people with bad handwriting. People who learned how to write nice, never have these problems (some were trained, some have it in them).
ldigas
I used a slashed zero in high school on a math test once but my answer was marked wrong because the teacher thought I meant "null set"... even though the test had nothing to do with sets.
John Rasch
The empty set is clearly not the same as a zero.
Eric
One of our key punches has a b[BS]/ taped on its space bar.
Don
I put a dot in the middle of my zeros. If I put a slash it becomes the empty set. (∅)
MiffTheFox
A slashed zero will look a a greek `theta` letter.
jpartogi
I slash my zeros--but I'm an Engineer...sometimes I get them confused with theta!
Kevin Brown
I dislike the slashed 0 because it reminds me of old BASICs... and not in the good way either
Earlz
Its always kinda weird when colleagues or my girlfriend ask me about those slashed hyphens on my weight sheet... o_O
Robert Giesecke
Accountants do this one a bunch too.
Billy ONeal
Oh, I do that ALWAYS.
Fabzter
@Antony CarthyMathematicians write with pens. I switched from pencil to pen at some point in graduate school, it was later pointed out to me that mathematics students write with pencils and working mathematicians use pens. Curiously, this is nearly universal, yet I have no good explanation for it.
Jed
hahahaa I do that too! I thought I was the only crazy one!
Carlo
@Eric -- He meant slashed top-left to bottom right, cropping the parts of the line that were outside the area defined by the perimeter of the O and including the center.
CaptainAwesomePants
I *double* hyphen my 7s.
Chromatix
A: 

The smell!

Evansbee
Harsh, I don't know any programmers with bad personal hygeine...
BenAlabaster
@balabaster: You don't know many programmers then.
corlettk
+12  A: 

They live in their parent's house.

drikoda
And have no girlfriend.
rlb.usa
Alright, that's enough! I'm throwing my computer through the window :(
Julien Poulin
You can't really say that, I mean, have a look at the ultimate Geek, Linus Torvalds. ;D
Bobby
Hey, I have my own home, and a girlfriend :)
crosenblum
@Julien Poulin I bet you don't :)
corymathews
@Bobby His wife can kick your ass! :-)
stesch
@crosenblum: I don't think my wife would like me to have a girlfriend.
David Thornley
@David Thornley, which one?
crosenblum
+9  A: 

WritesTheirSentencesWithNoSpacesAndCamelCased.

David Basarab
I like underscores myself, but you're right, programmers tend to do this
guns
When typing an email the other day I caught myself using ";" instead of "."
Matthew Whited
Pascal case for me
Lucas Jones
And compress them by removing all vowels?
Unknown
poor java programmer .. he needs to be enlightened.
hasen j
thatsNotCamelCaseItsPascalCase Putz!
corlettk
And never use spaces in file names?
rlb.usa
Only idio... er, "civilians", put spaces in file names. Worse, they also put space in Access table names. Grrrr....
RolandTumble
camelCaseStartsWithTheFirstLower. YouAreThinkingOfPascalCase.
Robert P
DontForgetParenthesisOrASemicolon(); unless you're in python of course
Crippledsmurf
+25  A: 

You can tell by the keyboard impressions on their face, after they wake up.

Mark Ransom
+70  A: 

When they introduce their son as JSON and their daughter as Ruby.

You can tell that the person is a bad programmer if the names are x and Form1.

Aaron Daniels
Haha... That's funny...
Zifre
Ruby sounds like a hooker's name. I'd name her Python. JK
Unknown
This is the only comment that made me laugh.
Antony Carthy
What's wrong with Ada, Miranda and Lisa?
Gamecat
I bet your son would rather be named Python.
Iuvat
I'd never name my son/daughter after some programming language, but Haskell would be a nice name for a horse.
Roman Plášil
+1 for x and Form1.
tsilb
Lol'd at 5:30 am in a train for "You can tell that the person is a bad programmer if the names are x and Form1."
kosoant
I'd say temp would be a good name, or not ? :)
Christian Vik
No -- temp would be the name of a Star Trek red shirt character.
Kevin Panko
I called my kids Ruby and Dylan. Coincidence?
Daren Thomas
Had funny conversations talking with a technical mate in front of non technical Jason :)
alex
+26  A: 

They complain that books don't have a built-in grep function.

not-too-smatr
I actually catch myself trying to invoke the search function while reading a book from time to time:)
mlvljr
I've been trying to decompile Shakespeare for two centuries. Be buggered if I get it!
corlettk
Or wanting to undo something you have just written or drawn.
Ankur
I complain regularly about this one! :P
yves Baumes
I try to click blue underlined text, then get annoyed because I don't find my mouse.
Jurily
I've used google books for exactly that purpose - find the page number online then open the real book.
Pete Kirkham
My e-book reader does this! (Unfortunately, the rest of my books do not.)
Tom Morris
+90  A: 

Easy question. They aren't. I'd guess this method is 99% accurate, given a random sample of people.

KeyserSoze
Good point. Although I am not sure if the percentage of people on earth who are programmers is 1% - that's about 60 million progammers
Ankur
Especially if subject in question is female. XD
rlb.usa
I walk around Redmond a lot, I think I have a 99% chance of a person *being* a programmer.
GMan
The quality of this algorithm depends a lot on how much you weight false positives and false negatives.
Joachim Sauer
I believe that's called the r-zero classifier, and it works pretty well in data mining cases.
Karl
Only a programmer would give that answer, or engage in debate about its accuracy.
stack
+2  A: 

When told (at a railway station for example) to go via the gate, say, № 2, they start counting the gates from zero! (did it myself a few times)

mlvljr
Programmers would find themselves nicely at home in France, where the floors are numbered starting with the floor above the one at street level. :-)
RobH
That would solve itself if you realized that "№ 2" is a label (i.e. a lookup key) and not an index.
Joachim Sauer
@Joachim Sauer And to make things even less messy they shoiud mix the gates in an obviously unsystematic order! :)
mlvljr
RobH: that is a Europe-wide thing. A lot of lifts in the UK seem to have replaced the traditional 'G' (Ground) label with '0'.
Tom Morris
+16  A: 

You could use the old one-question programmer test: Did you see that VW beetle with the "FEATURE" license plate?

outis
Yes. BTW "FEATUR" is still available (though not cheap) in Qld, Oz. Unfortunately, I only own a WRX and a Merc, upon which the Joke would be mue.
corlettk
A: 

They identify the difference between 0,{},None,'None',False,'false,nil,null and 42 more Excel options, program Excel and optionally quote "00100110011100111000011 or 01001100110011010001," understand any information, change any password, force any cipher, decode and encode any telephone and pay-per-view and very popular on television

GrogException: You've got an unbalanced single quote on 'false. I think I might be a programmer. Yourself?
corlettk
If I were defining the validation rule for quotes, yes.
The error in your list made it impossible to parse, so I had to skip it.
Jeff Davis
Wimps. 'false is just the same as (quote false). Don't you know your Lisp?
David Thornley
+30  A: 

Typically, if a quotation ends a sentence, you should put the period within the quotation marks: "blah."

I've noticed that programmers (myself included) tend to put it outside the quotes: "blah".

I do this because I see the period as not part of the "string", thus it belongs outside the quotes.

Interestingly enough, the rules are a bit more complicated.

Jason Baker
I never follow this rule. It doesn't make sense. It bothers me greatly. I will always place the period outside of the quotation mark.
adolfojp
Yes. If enough people do it, then the standard will have to change. FREEDOM!
Ankur
Ankur, that isn't freedom, it's anarchy and/or mob rule. :-P
The Wicked Flea
The English language is governed by mobs. Get enough people to do it your way and it will become accepted; get enough intellectuals to do it your way and it will become proper.
Michael Myers
Punctuation inside. Both an English and a code Nazi be.
Nosredna
Funny, I was taught that if it depends on context.egMy girlfriend and I had "the Talk"."Hello, my name is Inigo Montoya. You Killed my father. Prepare to die."
Pulsehead
You know what they say The Wicked Flea: "When you listen to fools, the mob rules".
micmoo
Exactly Pulsehead - If the quote is a sentence I put the puctuation inside. If it isn't then I don't. And this *IS* the correct usage, regardless of how many liberal arts majors you get to tell me otherwise. :-)
kenj0418
"[...] other punctuation, such as full stops, falls outside the quotation marks, unless the punctuation is part of the quoted material or the material is itself a complete sentence." http://www.le.ac.uk/bl/gat/writing/basics.html#quote ( apparently the 'mob' in question are those uncouth Americans across the pond )
Pete Kirkham
@Pete Kirkham: Outside-the-quotes punctuation is much more common in Britain than the US. US style guides almost always say to put it inside, no matter what.
David Thornley
I actually sometimes write the period *both* within and outside the quotation marks, if it makes logical sense. Also, using the word "string" to refer to English phrases is a sure-fire sign of a programmer :).
slacker
Yup. Yet another way in which en-GB > en-US. The standard en-US way means you cannot properly describe the length of a string (or, as the New Hackers Dictionary points out, quote a Vim command like "dd" at the end of a sentence) in written language. See Pullum - http://ling.ed.ac.uk/~gpullum/punctfree.pdf (PDF)
Tom Morris
+1  A: 

They wince at the mention of recursion.

Jeremy
Or inversely cackle with glee. The non-programmers mostly react with glazed eyes.
TokenMacGuy
I have to agree with the cackle with glee part.
Jeff Davis
I'm with TokenMacGuy. Recursion is fun.
Stu Thompson
Guys, somebody here doesn't like recursion! Get your pitchforks!
Iceman
Yeah dude, recursion is a beautiful thing
Mr Bell
A: 

Check whether he is on Linkedin :)

Chathuranga Chandrasekara
+18  A: 

Male programmers: Confronted with an extremely hot chick and an oddly blinking device at the same time, their attention immediately focuses on the blinking device. That is, unless the girl wears a geeky T-shirt.

ammoQ
Exactly why girls need to wear more blinking devices.
Nosredna
Eyelids?........
Wayne Koorts
I knew a girl that once wore a shirt that said "Talk nerdy to me". Of course I made one comment about it to a friend and he ratted me out. I added +1 to my creepiness factor that day.
MattC
+138  A: 

They attempt to unwind the call stack in a conversation.

Edit:

The responses where people are indicating that this frustrates/horrifies non-programmers are pretty interesting to me. It seems like having to have a mental model of the call stack and execution state of each stack frame helps in being able to juggle multiple discourse-threads in the same conversation.

Paul Morie
I've managed this with some degree of success.
Cristián Romo
I once popped the conversational stack 3 times, greatly to the amusement and horror of my conversational partner. This cannot be a good sign. :-)
emk
I've spent quite a few evenings with other programmer/engineer friends exploring conversation-forks and repeatedly unwinding the stack, until all the non-techy people gave up and left the room :-)
scraimer
Ive been doing this all along and never realized it until I read this
Nick
I do this with all my friends, especially online - often we'll have two concurrent conversation forks so I can be talking conversation 1 while they're writing a reply to conversation 2, then we swap ;)
Martin
What, doesn't everyone do this?
Barry Brown
I do this to my wife all the time. She finds it horribly entertaining. It's one way I know she is a good catch.
Jeff Davis
@Jeff Davis lucky you. My sigfig gets pissed off when I do that, usually when we're arguing.
Calyth
I actually treat conversations as XML. I just walk back up the tree and hit the next node after the parent.
tsilb
I do this quite often. Sometimes its harder to do when its more than 3 levels deep.. I usually do this when the person talking to me is boring though.
Earlz
@Nick: Signed ...
Dave
Some people are really good at pushing new items onto the stack though...MeetingEffectivity--
Leon Breedt
I have had conversations that resemble co-routines. At least 2 threads of conversation, passing concepts and bits of information back and forth, merging, then branching again.
Matthew Scouten
Alternatively: you can tell a programmer if they get really agitated when they are *not* given the chance to complete calls that are on the stack. I have a colleague who asks me for help on a programming issue; starts describing what's going on; interrupts himself to start a new sentence, leaving me hanging; does this 3 or so levels deep; and never goes back to finish previous sentences. Drives me bonkers.
LarsH
+88  A: 
hasen j
I'd vote -1 for not reading the question completely and +1 for the comic, so the votes would cancel each other out. Since I'd lose a couple of rep points for doing the downvote, I'm not doing either. (Why lose rep for what amounts to nothing?) :-)
RobH
@RobH — Wait… is it really possible to upvote and downvote the same answer‽
Ben Blank
@RobH do it anyway ... what good are rep points in the real world
ecounysis
I've actually had to SSH into a machine to tell someone something via `say`, forgot how to set the volume and had to go to the osascript documentation...
micmoo
@micmoo: first it's xkcd, now it's you, and neither one posting an answer to the implied question! This is stackoverflow, for crying out loud... where's your answer? ;-)
Peter Hansen
spending more than 1 second to figure out how to set volume via command line is weak
Xster
I've done what is depicted in the comic. Why? Because where I live there is no mobile phone service and a lot of times people don't put the landline phone back on the base properly. When I need to call home, I often resort to SSHing in to the Mac to do just that.
Tom Morris
+4  A: 

If they greet you with "Hello, World" then you're onto a winner!

Jamie Rumbelow
+18  A: 

They like to answer using algorithmic terms.

Once one of my programmer friend was looking for his exam paper from a stack of around 120 papers. He was checking every paper if his roll number was written on it. When he was in the middle of the stack, he was tired and told me, "See the problem with linear search?"

Donotalo
indeed. he should have indexed the exam papers beforehand and then located his using a binary-tree algorithm.
Charlie Somerville
@Charlie Somerville: Don't you mean 'binary-search' instead of 'binary-tree'?
MAK
For a single search, the optimal solution would have been to split the stack in two and have you each do a linear search. Parallelization ftw. Now if you were doing multiple searches...
kenj0418
I've done that before. I did a merge sort on a huge stack of papers at a job I once had.
SapphireSun
wow! you have great patience, like computers. ;) @ SapphireSun
Donotalo
+12  A: 

Sometimes, reading a newspaper article, for instance (remembering one):

"... and now a $1 question: ..."

I read $1 as "dollar one" instead of "one dollar" ... as if it was a shell function parameter ... pffff.

yves Baumes
$1 is a perl special variable returned from the first regex match.
Paul Nathan
+10  A: 

This is one way of recognising programmers that I read somewhere:

They're the people starved to death in the shower. Still clutching the shampoo bottle which says, "Lather, rinse, repeat".

otherchirps
Recursion at it's finest.
tom
I don't think this is recursion so much as an infinite loop.
GMan
while(true) { lather(); rinse(); }
Charlie Somerville
I guess it's a good thing I'm bald :p
Johan Buret
Every recursion has an iterative version I believe.
SapphireSun
I think this matters whether we view the repeat statement as being inside the process or a result of a loop's test. In this case, due to the structuring, I would say this is most definitely recursion, as it is simply calling itself with a repeat statement.
David Antaramian
It's an infinite loop. But it's pretty much guaranteed to terminate with a BottleEmpty exception eventually.
Chromatix
Iteration and tail recursion are equivalent. So in this case, it is only a matter of perspective.
slacker
That's so not true! I ran out of shampoo in less than a day.
Oorang
+7  A: 

They know more about what's inside their laptop than what's under the bonnet (hood) of their car.

Dave Webb
Guilty as charged.
tom
"I'm pretty sure this is part of the engine... oh, wait, that *IS* the engine? Sweet, I got that one right..."
tsilb
+30  A: 

You're a programmer if a coworker says something about "market segmentation" and you immediately start thinking of a way to make a joke involving a "market segmentation fault".

Jason Baker
I'd say that's happened over the past decade or so.
tsilb
When somebody mentions "market segmentation" my eyes usually glaze over and I start to think about *important* stuff. Like whether I should restructure that one loop I was working on this morn-- Sorry, what was that?
deceze
+3  A: 

They use pascal notation for any compound word.

Hey Timmy, it's BedTime.

Christopher
+49  A: 

The answer to "what kind of computer do you use?" isn't a one word response.

sal
Q: Mac, Windows, or Linux? A: Yes.
tom
That's wrong, I can reply with the word 'several'.
LiraNuna
Easy. 'All of them.'
Charlie Salts
Most importantly, the answer is not "Microsoft Word".
Joachim Sauer
@Joachim: Reminds me of my tech support days. People would claim to have Windows 97.
tsilb
I use a PC. -- Oh so have you played that one windows game!? -- No, I use a PC not Windows. .... Yes, thats correct PC is not the same thing as Windows no matter how many ads you've seen.
Earlz
I once tried to inventory the computers I use (after someone asked me what kind of computers I use). A couple hours later, I got to the thermostat and figured that was thorough enough.
Lance Kidwell
Q: Do you use Mac or Windows at home? A: Usually not.
David Thornley
Answer: "A white one."
vobject
@Earlz, it also annoys me that Macs are now no-longer classified as Personal Computers. Oh well. "IBM Compatible" was a wordy description I'm glad I don't have to use anymore.
Jacob
+1  A: 

If they dream code.

Joshua Louden
How would you be able to detect this?
TokenMacGuy
hmmm... good point.
Joshua Louden
Mumbling 1s and 0s while asleep at their desks, brainstorming.
tom
Ugh, I've had dreams where I spend several hours writing and debugging code for my current project at work, only to wake up and discover I have to write it all over again! On the other hand, I've already done much of the debugging, so it's not so bad :-)
scraimer
I dream of objects some times. They are these big tangible things that don't do what I want them to do. Happens if I am stressed with some code.
Stu Thompson
A: 

They drive a red Mitsubishi Lancer

Elijah Glover
+5  A: 

When programmer goes to bed, he takes two glasses: first with water in case became thirsty and empty second in case is not.

A third glass can be used for FileNotFound.
tom
Or four. One must always have backups.
tsilb
I bring a plastic bottle (with screw-on-cap*; or whatever it's called in English (it's not my first language)), cause I would just spill water on my cellphone with a glass of water...
Stein G. Strindhaug
+28  A: 

if you ask them how to solve a problem, they will tell you many different ways to solve it.

pang
I can think multiple ways to word that.
tom
Or they solve it about 5% of the way and say "There, I've reduced it to a known, solvable problem." And stop.
kenj0418
A: 

If we can need a program that do our job in our place we build it :)

Yassir
+28  A: 

They use "foo", "bar", or "baz" in everyday speech (especially when referring to hypothetical situations).

htw
+1 I have been know to do that...
Zifre
alphabet spewing is a sure sign - fizz buzz mvc html ajax php bsod ram gigs megs etc.
tom
+6  A: 

They use words like implements, class, override, while, and continue a lot more than non-programmers would. If they're a functional language programmer they'll probably say let a lot.

Zifre
I do that...i was pretty sure implement was a word in french too (it's not though...)
LB
I found myself lately using the words 'stack' and 'queue' much more often...and English is not my mother tongue.
Bobby
A: 

laptop bags and glasses :D

or just visit stackoverflow.com

knittl
+20  A: 

They set up character and paragraph styles in Word before starting to type.

Barry Brown
It makes large Word documents go faster
A. Scagnelli
I also hot-key all the styles I create (especially since we have to write our programming documentation in word grrrr) so that way I can set all my styles without leaving the keyboard (seriously who designed the interface to switch styles in Word, its terrible).
tj111
Word? What is this "Word"? I am going to invent a word processor called String.
Wayne Koorts
Haha! Got me! Man, I need a semantic word processor...
flq
don't they all do it?
Amarghosh
I also try to use CTRL-SPACE (Code completion in my IDE) in emails and documents.
kenj0418
Uh, no. LaTeX .
Tordek
Actually, they may make sure the right stuff is loaded into vim or emacs, and might set up their styles in LaTeX first, but real programmers don't use Word.
David Thornley
+5  A: 

From their posture, impaired by years of sitting at the computer.

Roman Plášil
Taking that troop of USB thumb drives out of your back pocket should clear up those back problems. ;)
tom
+4  A: 

The programmer, when forced to put pencil to paper, will put a slash through their zeros and underscore their ones. Other digits really don't matter. ;)

tom
Actually I think it's the opposite. Most programmers I know write 1 like l (a vertical line), and 0 like O (just a circle). Non-programmers are much more likely to write it "the formal way".
Zifre
I write my 0's elliptical and my O's wide and circular, I allso write 1 with a top serif and 7 with a hyphen, and top and bottom serifs to uppercase "I" to not confuse it with 1... but it doesn't work; i cannot read my own handwriting anyway... ;)
Stein G. Strindhaug
+5  A: 
musicfreak
+22  A: 

They are constantly trying to debug the world.

runaros
I've given up on that one and started to file upstream bug reports instead.
Bobby
A: 

They think that use of spaces between words is a waste. Like TheyThinkUseOfSpacesBetweenWordsIsAWaste.

Varun Mahajan
not really, They_Think_You_Failed .
Kemo
+32  A: 

They have memorised the powers of 2 up to at least 2^13 (8192), and can freak people out by reciting them.

Lucas Jones
i suppose any mathematician could do the same.
SilentGhost
+1. 2^x is my party trick :)
Charlie Somerville
Part of my courtship of my now-girlfriend consisted of me reciting powers of 2 up to 131072...
Zarkonnen
@Zarkonnen: if that worked, she's sure to be a keeper.
Joachim Sauer
I did that today in my Prob'n'Stat class... my fellow 11th graders just looked at me blankly... then I died a little inside.
micmoo
16384 32768 65536...
asveikau
@Zarkonnen - Now if you can do it up to 2^131072, then we'd be *REALLY* impressed.
kenj0418
@Zarkonnen thats about where I have to start actually calculating them not just picking them out my head
PeteT
I originally told my now ex that I like her in binary
Crippledsmurf
I remember reciting powers of two in the infants school playground to a 'dinner lady', though not how far I got.
Pete Kirkham
I have them memorized up to 65536
Viktor Sehr
They made the powers of two very difficult to remember. They do this annoying exponential growth thing...
Lucas Jones
They're much easier to remember in hex.
slacker
I'm only good up to 2^11... :(
luiscubal
1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768, 65536, 131072, 262144, 524288, 1048576, 2097152, 4194304, 8388608, 16777216 and 4294967296 == horrible.
Behrooz
+35  A: 

A programmer considers an XKCD image as a legitimate answer for a question.

Yuval A
A: 

You can't.

abmv
+11  A: 

If they ask other programmers how to identify a programmer , and do so in StackOverflow.com .

Eytan Levit
How recursive! ;-)
Ron Klein
laughing out loud.
crosenblum
+15  A: 
  • They doodle in ASCII art.

  • Their house is decorated in web-safe colors.

  • They try to put hyperlinks in their speech.

  • They've ever tried to program with a paper and pen.

  • Anyone they see with a Mac will either be praised for their good choice in computers, or yelled at until they switch to (Windows (XP|7)|.+nix|.*BSD).

  • They'll also badger owners of computers running Vista, but never end up complementing them.

  • Instead of writing a shopping list, they write a shopping regex.

  • Their family always thinks they can fix any small appliance.

MiffTheFox
+1 for fixing any small appliance. Specifically electronics. Older family members often remark "What the hell good is your degree?" if I can't fix their DVD/VCR/iPod that they FUBAR'ed.
Kyle Walsh
+1 for the fixing... so true!
scraimer
If anything goes wrong with the machine at our house it's my fault. Mum's out of range of router? My fault. Sister has forgotten her password? My fault. Windows BSOD-ing every time my sister logs in? OK, that was my fault ;)
Lucas Jones
Including regex syntax in casual conversation "(Windows (XP|7)..." is probably a giveaway...
James Socol
Your regex does not match "Linux" ;-)
Joachim Sauer
The thing is I usually can fix the appliances. That's not to do with being a programmer I just have a brain.
PeteT
+6  A: 

Coming into work later than everyone.

In some cases, mapping their current sleep schedule to whatever time zone they would be getting to work at 9am in.

Kyle Walsh
nah, I come to work at 6:00 am when possible
Axarydax
+6  A: 

Not just a beard -

A neckbeard.

Stuart Branham
+2  A: 

In my town, if you see some bleary-eyed coffee-holding individual heading office-wards around noon, they're probably a programmer.

... or maybe that's just me.

L33tminion
+17  A: 

Developers celebrate Halloween and Christmas together because Oct(31) == Dec(25).

Olav
I love that one.
Jeff Davis
+14  A: 

Instructions to other people are expressed as algorithms, sprinkled with if/then/else conditions and loops.

We'll be meeting tomorrow in the parking lot at my work. If you don't see me right away, then I'm probably in my office and you should wait in the lobby. We'll be eating lunch along the way. Water will be provided. If you want your own drink, then bring money for the vending machines. For each person in the group, the entry fee is $2 if you are a student, $5 otherwise. While we are on the tour, keep chatter to a minimum, but if you have a question please don't hesitate to ask the guide.

Barry Brown
Both syntactically accurate and parseable by real people.
tsilb
@tsilib:You don't know how brain-damaged can real people's parsers be...
slacker
@slacker: You mean they were written by Microsoft?
Bobby
+4  A: 

You hear them verbally using very specific programming symbols in conversation. For example, have you ever heard someone say "octothorpe" out loud? (or casually mention "bang" or "hash" or "tilde" etc)

They also cringe when symbols are misused by non-programmers. For example if someone is dictating and they say "star" but mean to say asterisk, or confusing the difference between a bracket, brace and parenthesis.

wweicker
This is accurate.
Jeff Davis
Wait, what's wrong with saying "star" instead of "asterisk"? What do you think the word asterisk means?
Iceman
OK, I admit there is less confusion with star/asterisk than bracket/brace/parenthesis. :)That said, if someone was dictating to me "type open bracket, star, close bracket" I might type "[star]" not realizing they meant to say "type open parenthesis, asterisk, close parenthesis" in which case I would type "(*)"
wweicker
I've lost count of how many advertisements I've heard entreating me to go to "company dot com backslash something". The backslash is wrong. I've heard this from some surprisingly large companies.
recursive
A: 

Programs that they write for themselves contain no input validation.

AdamDecaf
As opposed to non-programmers, who validate input properly in their programs?
Roberto Bonvallet
+1  A: 

Unusual snacking habits.

http://www.youtube.com/watch?v=I25UeVXrEHQ#t=1m46s

alkaloid
+50  A: 

Person considers 256 to be a nice, round number.

Person becomes annoyed when 10K means 10,000.

Person starts counting from 0 and ends up with one less than everyone else.

Person ends their sentences with a semi-colon.

Person write “equals” as == and “not equals” as !=.

Person know where to find the {braces} keys without looking.

Person call text phrases “strings.”

Person frequently use words like iteration, contiguous, trivial, version, array, polymorphic, parse and WTF in casual conversations.

When someone asks what languages Person speaks, Person replies: “C#, Java, PHP and Python.”

Person hears the word "Scuzzy" and does not think it is a bad thing.

Person's favorite f-word is fdisk.

Person includes XML in regular correspondence.

Person uses camelCase for names.

Person takes things too literally. For example, my wife gets upset when she asks “Do you want to take out the garbage?” (no) instead of “Will you take out the garbage?” (yes).

Person responds to questions too logically. For example, when a waitress asks me, “Would you like coffee or tea?” Person responds, “Yes.”

Person answers negative questions in the technically-correct but awkward way. When my mom asks me, “Wouldn’t you like a glass of milk?” I respond, “Yes, I wouldn’t like a glass of milk.”

When Person makes a mistake or says something Person shouldn’t have, Person wishes Person could press Ctrl+Z.

When searching a paper book, Person gets frustrated that Person cannot simply press Ctrl+F to find the text Person’m looking for.

When a store cashier asks Person for their zip code, Person demands to see the store’s privacy policy.

Person gets sudden attacks of bittersweet nostalgia when thinking about their long-lost Commodore 64, Sinclair ZX-81, TRS-80, or Amiga 1000.

It’s hard for Person to make an absolute statement because Person always considers that there may be an edge case.

Person unit-tests his wife, expecting deterministic, solid outputs for a certain input with boundary conditions.

Person tells his wife to “stop throwing exceptions that Person is not willing to catch.”

Person holds a mouse more than his wife’s hand.

Person assumes that most people love their jobs like Person does.

Person would rather text the guy in the next cubicle than talk to him.

Nighttime and sleep are no longer irrevocably linked.

Person understands (0×2b||!0×2b) and finds it funny.

Person thinks these programming jokes are hilarious.

Person thinks xkcd is the funniest webcomic ever.

Person believes these laws to be self-evident and true.

Person thinks that the three primary colors are red, green and blue.

Person has more than one monitor.

Person has more email addresses than pairs of shoes.

The number of computers in Person's house exceeds the number of romantic relationships Person had in their lifetime.

Person runs a Web server at home.

Instead of playing games on their Xbox, Person installs Linux and uses it as a server.

Person carries a USB flash drive in their pocket wherever Person goes.

Person knows what a router is, and Person knows what a bit is, but Person does not know what is a router bit.

Person helped their grandma create her own blog.

Whenever Person uses another person’s computer, Person complains that they are not using Firefox and attempt to switch them.

Person email themselves to remind them to do something.

Person rigs up elaborate mechanisms to perform basic tasks.

Person has written a useless program “just for the fun of it.”

joe
I'm definitely guilty of the "hard to make absolute statement".
RolandTumble
the lack of s at the end of verbs hurts me
Roman Plášil
Unit testing with the ladies cracks me up. Hehe.. 'unit.'
Charlie Salts
+1 for switching to firefox
Amarghosh
A USB flash drive is no longer restricted to programmers. They are required for 4th grade in local schools.
Brian Carlton
I find it odd, but I do at times do weird unit tests on things in real life just to make sure nothing has changed that I am unaware of. Also, Whenever you use the phrase "by a level of indirection" to state that you heard the story from a friend who heard it by their friend.
Earlz
I don't understand 0×2b||!0×2b, explain please!
Carlo
@Carlo: it says "To be, or not to be," like the Shakespeare quote. Also I can't believe how many of these are true for me -- minus the wife stuff (not married).
Carson Myers
@Carson Myers: I know! A lot of these apply to me too! Thanks for explaining!
Carlo
Person hasn't the time to post separate answers separately? (Actually in this particular case I'm willing to overlook that due to volume, but I couldn't resist commenting.)
Lord Torgamus
What the hell is a "router bit"!?
slacker
I searched the Wikipedia. RGB aren't actually primary. Duh. You learn something new every day...
slacker
I'm not sure if I should be proud or frightened that so many of these apply to me.
APShredder
+1  A: 

They think (and say) the letters 'a' to 'f' are digits.

jeje
What, do you think I had three extra fingers surgically added to each hand for no good reason?
kenj0418
+4  A: 

They like Monty Python :-)

Paolo Moretti
And Python too.
Liran Orevi
@Liran Or no one can figure out why they dislike a particular genus of snakes so much.
sli
+4  A: 

I saw this question and couldn't resist to answer. I'm probably a little late with the answer but I will submit it anyway.

I think this is a really good question, if not "serious" and "useful" then "humoristic" and "resourceful". I have always wanted to know whether a person fits the "programmer profile" before starting a project with them. Sometimes a person can "pass as a programmer" amongst people that dont know much about computers and technology in general. This person is mainly known as a "poser" or "want to be programmer". Every programmer can identify this person, mock him or accept him.

I always look for a certain pattern in people before I can communicate with them openly. I think that most geeks do, as I cannot share my opinion and intrests if the person doesn't have the same or close to same patterns as me. Maybe I sound selfish, maybe arrogant, but that's the only way I can stay interested in people and have "normal" day to day conversations.

How can you really recognise a programmer from afar? If you focus and look closely, programmers are not hard to spot. They dress casual, plain but comfortable. Programmers come in all "shapes" and "forms", some wear glasses some dont, some are really tall, some are really fat, etc. They dont care about their look (they only care about the code), unless they are going to a programmers convention. Other people describe them as loners and distant.

Programmers identify programmers from afar. It's a given, natural thing that all programmers possess. It's "embedded" into us.

Secko
Perhaps this ability should be known as "geekdar"?
Mark Bannister
+5  A: 

This is something I've done before: when counting out change to try and give exact change to a teller or when helping someone at a cash register to give them cash back, you run out of one coin type, and in order to make up for it start looking for negative coins to arrive at the same total. AKA the negative one coin to speed up the process of counting out 99 cents.

I said this aloud, and my wife said "people would just throw away the negative coins."

To which I replied "But then they'd have to wait for change more often!"

NateDSaint
The cashiers get confused enough when I give them $1.07 for my $0.82 item. I think their head would exploded if I started handing over anti-pennies. (Not to mention what would happen if the anti-penny came into contact with a regular penny)
kenj0418
@kenj0418 Well I don't have access to a particle accelerator so it'd just be a penny with a minus on it. I keep trying to hand ones that have a minus scratched on with a screwdriver to the cashier, but they stare at me. Sometimes they call the cops. But that's half the fun.
NateDSaint
+1 for anti-pennies. But if you put one in the same pocket as a penny, they destroy each other and release a small amount of energy. Your change jar would explode, then suck its debris back into the center black hole, and when you got home it would just be missing. "Where did my change jar go?", you would ask, unaware of the cataclysmic events you've unleashed into the spacetime continuum. Come to think of it, this comment would make an awesome blog post. Too bad SO comments don't support paragraphization.
tsilb
@tsilb: A small amount of energy, for very very large values of "small". Nuclear bombs convert matter into energy in quantities easily expressible in grams.
David Thornley
+18  A: 

I was playing cards with some friends and when we finished, i noticed my friend was sorting the deck with mergesort.

Now, you can tell if a person is a programmer if the person sorts a deck of cards with mergesort... or if a person notices that someone else is sorting a deck with mergesort...

rprandi
One word: Wow. ...
Lucas Jones
Kind of like a ST:TNG episode where Data determined someone was an android because he detected the mathematical pattern to their blinking.
kenj0418
@kenj0418 And people remembering that. :-)
stesch
My intuition was that your friend may be a *bad* programmer, so I just tried this. It took me over half an hour to mergesort a 54-card deck with 2-way merges, because it required 6 full passes through the deck. (I accidentally cleared my stopwatch at the end, so I don't know the exact time.) A two-pass 8-way mergesort (repeatedly dealing out 8 cards face up, then picking them up in order, to get 7 sorted subdecks; then placing these 7 sorted subdecks face up and picking up the cards from them in order to form the sorted deck) took 4m22s. My traditional approach took 3m01s.
Kragen Javier Sitaker
The traditional approach that was ten times as fast as a binary mergesort and 1½ times as fast as an 8-way two-pass mergesort consists of a 9-way radix-partitioning pass — partitioning the cards into jokers, face hearts, number hearts, face diamonds, number diamonds, etc. — followed by insertion-sorting each partition and concatenating them. I haven't tried quicksort or heapsort yet, but my intuition is that they'll be slower.
Kragen Javier Sitaker
Quicksort took 10m51s. The traditional approach of dealing out the 54 cards onto a surface where I could see them all, and then picking them up in order, was 2m42s. Perhaps the closest software analogue is the linear-time algorithm of sorting a number of small integers by setting the appropriate bits in an in-memory bitvector, then reading through the bitvector in order.
Kragen Javier Sitaker
@Kragen:WOW. Now THAT'S geekiness. Though you have to consider the thinking overhead on each algorithm, and how it would go down to zero once you got used to doing it.
slacker
Also, notice that neural networks work by pattern matching, so the "traditional approach" enjoys significant hardware acceleration.
slacker
You're wrong about the software analog to the "traditional approach". It is O(n^2) selection sort. Though as I said earlier, the semi-linear eyeball-scan step is hardware-accelerated.
slacker
@slacker: thanks! Re: selection sort: Well, that's why I was saying, "perhaps the closest software analogue". After a little while, after all, you start to remember where the other cards are.
Kragen Javier Sitaker
+6  A: 

It is easier to ssh into the other computer on the desk to turn down the volume than actually reach 50cm and push the button on the other keyboard.

Paxinum
+2  A: 

It depends <insert awkward pause>.

Jeff O
A: 

I usually say that if a person is good at catching a ball and cares about their clothing, I would doubt their ability to program. So I suppose this could be signs

khebbie
What's the relation between those things?
Moayad Mardini
Don't know about clothing, but I have the best hands of anyone I know. No brag, jes' fact. (Also I can do obscure 1960's TV references.)
Michael Myers
A: 

They have their significant other's name tattooed on their arm...in binary. (Yes, that example is from real life).

Brian
Does this mean Angelina Jolie is programmer?
Oorang
A: 

They look at your shoes when they speak to you

Charles Bretana
+1  A: 

When asked to tell a programming joke, the first one they say is "There are 10 types of people in the world: those who understand binary, and those who don't."

Barry Brown
There are 10 kinds of people in the world.Those who understand trinary,Those who don't, andThose who think it's Binary
Sukasa
Or: When asked to tell a programming joke, they don't stare at you as if you've lost your mind.
Michael Myers
+1  A: 

you can't! All of the methods thus far that truly mark a programmer have relied upon active observation vs. passive observation(the type of observation the question was referring to). Do you really think that you can pick a programmer out of a crowd of people based upon appearance,clothing, and affectations? Considering all of the physical characteristics, general habits, and sleep cycles whats the difference between a college student and a computer programmer (I'm not saying that these two are mutually exclusive I'm merely stating that the similar qualities are striking)? Honestly I don't see much.That holds true anyways until the programmer opens their mouth...

lazyIrishman
+1  A: 

They choose the names "Alice" and "Bob" when talking about hypothetical persons (to a non-programmer)

woop
Don't forget about that nasty Trudy!
mbehan
I'm confronted too often with Mallory...
slacker
+1  A: 

"Do you have the time?"

"Yes" || "Of course I have the time, I'm wearing a watch".

tsilb
+2  A: 

To find whether a person i a computer programer.I have one idea.This might not be always correct.

Check the bottom of the wrist ,It should be rough and hard since he is always using the mouse and his wrist(postion where the wrist come in contact with the desk) will become hard.So u can shake your hands to someone to find whether he is using computer always.

This will not work out for one who doesent use mouse. The might be wrong in case when we find persons who always plays computer games with mouse. :)

Please forgive me if i am wrong.

Jebli
This will also give false positives with all kinds of secretaries and other non-programming people who work with computers for a living.
SF.
If your wrist is coming into contact with your desk when using your mouse, either get a lower desk or a higher chair. This is a surefire way to get carpal tunnel.
wds
Alternately, your suspect is an old Unix hand who rarely uses the mouse.
David Thornley
+2  A: 

Here's a great example from my real-life life.

Software development has taught me to find problems and bad design, proactively. Further, it has taught me to try to fix them, and occasionally report them at a status meeting or into some bug database, etc.

As a result, any time my daily workflow is interrupted (Specifically driving, grocery runs, etc), I immediately locate the "cause" or the person at "fault". I'll blame the thing or person directly (as a fix), or utter a snide comment (as a status update / TODO), and go on with my day as if nothing happened.

People think I'm just complaining, but I'm really trying to improve the world in my own little way.

tsilb
Real-life life :)
Lucas Jones
you are really trying to improve the world, But you are habituated.
Sunny
+1  A: 

They know there are only 6 colors in the rainbow! Red, orange, yellow, green, blue, purple.

And anyone who thinks there are 7 colors obviously is too stupid to understand RGB ;)

boytheo
+1  A: 

When asked: Do you wan't Coffee or tea the programmer replies true (or yes).

Jimmy Engtröm
A: 

If "Yes" and "No" are the only thing they answer to a specific question.

This is not always tolerated by the people around them ;-)

maxedmelon
+12  A: 

In my college days, In maths answer paper I used to write,

 10 = 2 * 5 

while others write

 10 = 2 × 5 
Sunny
Yes that is right^^
daemonfire300
I still do that :)
Lucas Jones
I think this is extremely common among programmers, I've actually identified one other programmer through this before. I wonder how many people have accidentally used != and == in math class. I know I've done so atleast twice.
Wallacoloo
And you can spot the mathematicians when they substitute parentheses instead: 10 = 2(5)
Iceman
I was always taught to use a dot ('.') for multiplication. Easier to write.
wds
@wds: That creates some ambiguity with integer literals.
recursive
I do that too much as well, it's cleaner to use * over X because X can be confused for a variable.
JonnyLitt
@recursive: The dot for decimal point is usually at a different level than the dot for multiplication: one low and one mid-height. Which is which varies with culture.
David Thornley
Learn thy Unicode: × ≠ x.
Tom Morris
@recursive I think you mean decimals. Around here we use comma's for that (i.e. 3,9 instead of 3.9). But as David said you can also put them at different heights.
wds
+2  A: 

A programer often tends to have a talk about software/hardware. While talking he does not realizes his audienced getting more bored and bored, because he is so intrigued by his topic.

A programers desk is orderd by a Gauß-Curve: Around his keyboard and monitor you only can find a "mouse", "cup of coffee", "a piece of paper", "a pencil". Outside this area you find a mess.

daemonfire300
A: 

Ask him/her: What's your there favorite website?

if answer = stackoverflow.com then he is a programmer else he is not

jerjer
Don't you mean if answer == stackoverflow.com? :P
Jimmie Lin
No, that's no mistake - if SO isn't your favorite site, it should be :P
Sukasa
+1  A: 

Ask them which web browser they use. If they respond with the name of an actual browser (as opposed to "Google", "the Internet" or "What's that?"), they're in IT.

YouTube: What's a browser?

Tobias Cohen
Or at least some kind of engineering. But I also know at least one med student who switched to Firefox.
Michael Myers
Even better...if they respond with the name of an actual browser, and then proceed to explain why they use that particular browser instead of Internet Explorer, and their explanation ends with the word "sucks", they are a programmer.
Neil T.
+3  A: 

When nesting quotes, they simply escape the inner quotation marks:
    " This is a \"quote\" "  instead of
    " this is a 'quote' "

  • They:
    • Use
    • Lists
    • within
    • lists

And of course, they put the commas on the outside of a quote:
    "hello", he said.   Instead of
    "hello," he said.

They use the word else rather than otherwise.

I don't do the escaping quote one, I just bend my quotation marks like parenthesis to make them nestable. But I do the others :D

EDIT: How could I forget, programmers tend to be very good at math.

Wallacoloo
The comma-outside-the-quote thing really trips me up when writing formally. Gah.
Lucas Jones
"\"hello\", he said", OMG, i always do that.
Behrooz
+20  A: 

you find random occurrences of :wq in their normal word documents.

I do that all the time... why doesn't everything work like Vi[m]?
Lucas Jones
because then not enough things would work like emacs. Duh!
Carson Myers
There are already *too many* things working like Emacs. Including Emacs. :P ;)
slacker
Random occurrences or pseudo-random occurrences?
AndrewJacksonZA
+5  A: 

They sneer at people who do not now the difference between slash and backslash.

Igor Zevaka
...and wince at people who confuse now with know
SF.
Oh god. "My MySpace is www dot myspace dot com backslash..." → rage.
Tom Morris
There was a lady in our support who would refer to backslash as "wrong slash". (She was supporting a web facing product.)
Oorang
A: 

Who wears suit only when he goes for interview.

fastcodejava
Do they? I don't remember wearing suits to any of my recent interviews. Smart, yes. Suit, no.
Skizz
A: 

When they read the phrase "OMG it's Huge!!!", they think of the UML spec.

Pete Kirkham
+4  A: 

When asked, "Jon?" a programmer answers "Skeet!"

Skizz
Scott - Tiger ?
Random
+3  A: 
  • When you catch them, or admitting to, emailing this page to their Formal Specifications lecturer;
  • They use != (or equivalent) instead of "is not" in normal writing/typing.
  • They solve a very simple, and completely stupid, bug with a bit of psudocode or z-notation (or both at the same time) rather than an English explanation.

btw, I'm emailing this to my FS lecturer.

ziFicS
+1  A: 

They use mind-maps and tell everyone how cool that is.

naivists
Hell no. Plenty of people seem to serialize thoughts into mind-maps when simple lists would do. If you are using a computer, an outline (or, even simpler, indented text files using an outline mode in Vim/Emacs). Mind map software is uniformly horrible (and often require heavy mousing) in a way text editors and outlines aren't.
Tom Morris
A: 
  • They are wearing a tie with running shoes
  • Show them anything technical and ask if they could design it better
  • Ask them for any price and they'll tell you 50% of the real answer
  • They call end-users "stupid"
  • They refuse any attempt to meet with "suits from sales"
  • They can't work without the latest hardware
  • They use the words boring and documentation interchangeably
  • They only work when no one is watching
  • They know the script to Bladerunner by heart ... When asked to make a list of ten items, they only complete nine, but somehow contradict themselves in the process. ;>
Ken Nickerson
when I see someone in a tie and running shoes, I assume they are in a punk rock band or something (especially if they have messy hair and jeans)
Carson Myers
A: 

They are alone and have no friends

joe
ouch. I have plenty of friends and a girlfriend of 2 years.
Carson Myers
@Carson Myers:good for you.
Behrooz
+3  A: 

They write // and /* */ on paper !

B2n
`<!-- # % {- (* Not all programmers use C-derived languages. *) -} -->`
KennyTM
@KennyTM you forgot --
MJB
@MJB: `' C co ;; -- /+ right. +/`
KennyTM
;;;; Some people use Lisp, and # some use Perl or bash.
David Thornley
`## True, though I switch around on paper`
David Antaramian
I was in a logic class a while back and actually sat down and wrote out a bunch of Ruby code in my notebook. Now I know the syntax and semantics of formal logic, I find many programming languages needlessly verbose. ;)
Tom Morris
Gotta say that I am happy no one listed ' (single quote) as something programmers use for comments. That made my day (not really; just seemed like an appropriate thing to say).
MJB
+1  A: 

If they throw away a keyboard because the "backslash vertical-bar" key stopped working.

Tom Something
its called a pipe :)
Woot4Moo
A: 

Deep thinking would be a way to tell if someone is a programmer. The best way though to know is if the talk about computers all the time.

jason
A: 

If you want to know a programmer without seeing one or knowing one really well - put a question into a blog that asks - how do you identify a programmer from afar. You will then be able to identify programmers simply by listing those who answered. You guys made this problem way too hard!

Joan
+2  A: 

I've caught myself sticking my tongue out while talking, wherever the :P smiley would go, I caught that habit from one seasoned hacker too.

verbing the nouns, nounization of verbs, sometimes giving them pronounly features.

They prefer to spend a hour writing a 15-line program than perform the task by themselves in 15 minutes.

They immediately spot recursion and find it humorous too.

They care whether the embedded device they get is user-programmable.

They may spend half a hour making a simple shopping decision by comparing various features of competing products and devising a complex quality metrics function. Should I pick an apple juice or grape juice? grape gives me heartburn, apple is 3% more expensive, grape has 60% natural juice concentrate while apple has 65%, apple is slightly more tasty, but grape seems to have more vitamins...

They are often McGyverishly prepared for various extremes. "Why, yes, I have a torx screwdriver with me, I always do. No, I don't smoke but you never know when you might need fire..."

They are extremely frustrated when people refuse to behave logically. A person who rages, panics or cries instead on working on a constructive solution to a problem is a part of the problem to be removed.

SF.
A: 

They is fine. English has lacked a neuter 3ps personal pronoun, now it doesn't. Language change: Yes We Can!

chip
A: 

Not such a funny one, but the non-programmers at work have remarked to me that we seem to have very elegant hands, with long and nimble looking fingers. This of course would apply to many people that do a lot of touch typing, but it does seem to be a common feature of programmers.

wds
A: 

Start asking them about a computer problem. If their initial response involves: plugging in the computer, turning the PC on, rebooting the computer, or restarting the program. Then they are a program.

nightwalker450
Yes, but the question was "How can you tell if a person is a programmer?", not a "program." I imagine there are easier ways to find out if a person is a program.
MJB
+2  A: 

They say stuff like this(The engineer, in this case):

A priest, a doctor, and an engineer were waiting one morning at the third tee (par 3, 185 yards, slight dog leg to left, water hazard on the right) while a particularly slow group of golfers were flailing away ahead of them.

Engineer: What's with these guys? We've been waiting for 15 minutes!

Doctor: I don't know but I've never seen such ineptitude!

Priest: Hey, here comes the green keeper. Let's have a word with him. Hi George. Say George, what's with that group ahead of us? They're rather slow, aren't they?

George: Oh yes. That's a group of blind fire fighters. They lost their sight while saving our club house last year. So we let them play here anytime free of charge!

Doctor: Wow! Thanks for the scoop George.

Priest: That's so sad. I think I will say a special prayer for them tonight.

Doctor: Good idea. And I'm going to contact my ophthalmologist buddy and see if there's anything he can do for them.

After a short pause ...

Engineer: Why can't these guys play at night?

+8  A: 

Programmer: "Can I have combo number 3?"

Fast food employee: "Sure, what would you like to drink?"

Programmer: "Coke."

...

Fast food employee: "What would you like on your burger?"

Programmer: "What ever is default is fine."


Yes, I did this... I found it strange that she did not understand me.

Arriu
I'll probably try this at local Carl's Junior soon (though possibly not in English:))
mlvljr
Then, what should i say instead of "default" as I'm not a native English speaker?
Behrooz
+9  A: 

They get an unnatural twitch in their eye whenever someone uses IE.

Amen to that one.
JonnyLitt
Or when it's the only browser available on a computer they have to fix (and they didn't bring their USB key with them)
David Antaramian
IE is that thing you use to download Firefox, as I recall?
slacker
Dear God will that unholy abomination never die?
Mr Bell
@slacker:nope.I download it with code(i have really done this once).
Behrooz
+1  A: 

If they post threads from Stackoverflow to their Facebook

Zachary
I've done that on Twitter ;_;
glasnt
+2  A: 

They use camelCase and Random Capitalization

Rod Hanks
A: 

When someone says "I hear you use VIM; can you help me learn how to use it?" and you explain code folding, omni-completion, syntax highlighting support, show them a number of command-mode key sequences and send them links to the User manual, the VIM cookbook, the Vim Tips Wiki, and 'Vim: Seven habits of effective text editing' by Bram Moolenaar.

And they ask if they can edit really large files and you answer, "Yes, but I usually just search with grep or edit in place with sed or awk".

Yeah, I'm the VIM geek at work, and it's a Windows shop ;>

Ron Ruble
A: 

They queue their responses to a conversation asynchronously. While someone's talking to them, they buffer that input in, process it, then spit out their response catching the other guy completely off guard as they're now on a completely different topic.

Abdullah Jibaly
+3  A: 

They accidentally type "exit" in IM chat sessions

Michael
hah! I've done this so many times it isn't funny...
Justin Rudd
...and then creates a script to make it work.
Oorang
A: 

If they end an e-mail or other document with ":wq"

Graphics Noob
A: 

When walking, they walk the shortest path from point A to B.

onyx
A: 

The website looks like it is from 1990! Sorry just keepin' it real :-)

Jodi
+1  A: 

They get really really annoyed if they notice a parenthesis missmatch somewhere.. (my maths proffs tend to lose some and I get wildly annoyed about it!)

They "algorithmize" complicated tasks in order to grasp them.

Kalle Herler
A: 

When he answers a yes/no question with true/false.

Or, when he is an Open Source programmer, he never (dis)agrees, but answers with +1 or -1.

Jan-Kees van Andel
A: 

So, ladies, you are in the a bathroom of a restaurant washing your hands, when you see a male walk into the restroom, turn the corner, stop, pause, and say....

"Assert FAILED in line 'walk up to urinal'"

And then turn around and walk out again...

Not embarrassed, just matter of factly...

That's a programmer....

DDanster
+3  A: 

They can count to 10 faster than anyone.

MPelletier
not always...0123456789ABCDEF...10
SF.
@SF Boooo!!... +1 :)
Oorang
+1  A: 

If his wife is pregnant and you ask him "Is your baby boy or girl?", he will answer "True".

Prodis
A: 

Person uses "their" and "his" to describe programmers, never "hers".

Greg Wilson
+1  A: 

Putting sentence ending periods outside the "quotation marks".

+1  A: 

If they use "by default", "hard coded", "run-time" , "just in time", " very frequently in their spoken english. And perhaps more important: when they try to inter-prolate every problem algorithmically.

Taranfx
Yeah, same goes for the words implemented, extends, fragmented, encapsulate, buffer, parameters...
billynomates
Oh and "cache"!
billynomates
A: 

I add semi colons on my sentences all the time;

Glycerine
A: 

They argue with non-programmers about if 'go to' is 1 word or 2.

... I've done it ... and apparently it's 2. :-(

John MacIntyre
A: 

They use '&' rather than 'and' when writing

Simonw
A: 

The following sentence is abnormal for a programmer:

"Either death or you I'll find immediately." ( http://shakespeare.mit.edu/midsummer/full.html#2.2.156 ),

because the programmer's meaning of "or" is different than common sense "or", therefore, the statement above means:

I will try to die, if I failed to die, I will find [you].

They add brackets (or quotes or formatting) to reduce ambiguity in English language.

  • (British Colombia)-ians are also Canadians.
  • The (n + 1)th number.
  • Two times (three plus two).
  • Eat (rice, fish and vegetables) and watch TV.

They may treat English "and" like "cons" in Lisp:

Logical quotes is a must:

  • He said, "I was on the phone.".

The following sentences are invalid for a programmer (debatable):

  • He said, "I heard someone said on the phone: 'He is in Bob's house.'.".
  • (a smiley inside the parentheses :))

They think an ideal human language uses programming operators.

  • yesterday { I->eat({$x : @red, @length(0.12), @fish}); } -- the default length unit is meter

Prolog style:

  • today(X), yesterday(X, Yesterday), do(Yesterday, i, eat, [Fish]), red(Fish), length(Fish, 0.12)

see also: http://catb.org/jargon/html/writing-style.html

SHiNKiROU
A: 

They've read through the majority of these answers thinking "what's so significant of that?".

ste
A: 

Pressing Ctrl + S after taking notes in a piece of paper!

Jazz
+7  A: 

It depends. For VB programmers they like to eat spaghetti.

Doug
That's so ridiculous it's hilarious! :) (I don't know many VB programmers, though - maybe they do eat spaghetti more often.)
Lucas Jones