Everything2
Near Matches
Ignore Exact
Full Text
Everything2

I wish I could speak in code

created by Lao-Tzu

(idea) by Lao-Tzu (4.1 y) (print)   ?   I like it! Wed Nov 28 2001 at 21:47:00

I am the only computer programmer who finds that spoken language is terribly inefficient, ambiguous, and just annoying?

I was having a conversation with my boss a week ago, and I had a lot of trouble expressing myself. I think the reason I can't communicate is because I spend 14 hours a day programming. When it comes to code, I'm multilingual. But for speech, I'm absolutely useless. "Here, this.. thingy.. goes.. here.. into.. this.". A co-worker came into my office an hour ago, and asked me 'Should I be.. doing.. this.. thing?' and then wrote some code on the whiteboard. My response was 'No no, you should use the run-time class macro.'. The 'run-time class' macro? That's how it came out in speech, but what I said was 'RUNTIME_CLASS macro'.

Yesterday I was debugging some software with another programmer. Even using the proper terminology for math, and programming, still it doesn't come out right. "Does that expression call the equals operator before or after the copy constructor for the right-hand side?". It sounded like a clear question to me. "What expression?" he asks. Uh, did I miss a vital part of the sentence? Oops. "That one under that one with the multiplication.", I respond. "What?"

During that same debugging session, my co-worker asks "Is this the way matrix multiplication is supposed to work?", and goes on to write down what he thinks is right. I point at the code, and say, "That's how I think it's supposed to work.". Well, duh, because otherwise I wouldn't have coded it that way, right? Ah ha! I found a way to communicate effectively! My co-worker examines the code, and says that it looks right. No stupid english language in the way of that communication! It was effective, communicative, and 100% unambiguous.

Good code, even uncommented good code, is much clearer than spoken language. "CMatrix Gauss(*this); CMatrix identity(Gauss.m_nWidth, Gauss.m_nHeight); identity.LoadItentity(); Gauss.Augment(identity, Right); Gauss.GaussJordan(); Gauss.Transpose(); ...". Isn't that much clearer than "Create a copy of this matrix, and then create an identity matrix that is of the same width and height, and then augment it on the right side of the copy, and then do a guass jordan elimination on it, and transpose the result."? And even if you think the english is clearer, remember I had a lot of time to write it down.. normally I speak just a bit too fast for my head to think of english responses.. but code flows faster than fingers out of my brain.


printable version
chaos

Have you stopped beating your wife? How to speak about women and be politically incorrect Society for the Eradication of l33t Speak Millennium Map of the Universe
Adven Turing multilingual Missing You INTERCAL
Marco Polo Speaker for the Dead matrix multiplication November 26, 2006
Pig Latin pipe link Oenone Sertoli cells
Befunge A classic Zen tale
Y'know, if you log in, you can write something here, or contact authors directly on the site. Create a New User if you don't already have an account.
  Epicenter
Login
Password

password reminder
register

Everything2 Help

Cool Staff Picks
Drink up!
Happy Pizza
tachyon
Zora Neale Hurston
I wrote you a letter on the bus back from the city, but that's a different kind of weary
Spirited Away
How to improve your chances of having sex
You are not special. You will die here, too.
Naked at 30 below, and loving it
I DON'T quit
The Great Prajna Paramita Heart Sutra
Night of the Long Knives
Milgram Experiment
banana trick
New Writeups
shaogo
Robert Mondavi(person)
Ouzo
Goodwill Hunting, Thrift Store(ies)(log)
Pandeism Fish
How conatus compels divine ketosis through a radical kenosis(essay)
cryforhelp
Major dictionaries of the world(review)
Glowing Fish
The Uncanny X-Men and the New Teen Titans(thing)
WolfKeeper
Launch loop(idea)
TendoKing
Katana(person)
Wuukiee
Highly ornamental cultivars of brambles still have as many thorns as their wild counterparts(idea)
TheDeadGuy
Editor Log: May 2008(log)
everyday j.Lo
pray do not molest them(thing)
ammie
Bands Who Take Their Names from Eighteenth-century English Poetry and Prose(idea)
shaogo
Under My Thumb(review)
ammie
Rock On(person)
The Custodian
The Dresden Files(thing)
Ouzo
PETA becomes you, a proposed future(fiction)
This affordable entertainment brought to you by The Everything Development Company