views:

1483

answers:

52

One of the pitfalls I run into on a daily basis is customers saying one thing while meaning another. Usually, this is just due to a miscommunication somewhere, but occasionally they are, in fact, saying the same thing I am just using a different term.

For example, one of my customers the other day mentioned a feature he called, "find as you type." Being a little confused, I asked him what he meant, and he described the feature in Google where, once you start typing a search query, Google suggests other, popular queries that match the letters you have typed.

Click! He meant AutoComplete! He was not wrong, it is just that I had never heard that term before.

In the spirit of reducing confusion, what terms can you think of that are different but mean, essentially, the same thing?

Also, what terms do people think mean the same thing, but don't. Please differentiate between the two.

Please only one set of terms per answer, so we can vote on the best ones.

+3  A: 

hard disk drive = computer

Fredrik Mörk
I get that all the time. People call that black thing under their desk the "hard disk" instead of the computer.
Barry Brown
+14  A: 

"CPU" = tower

A favorite term I have heard customers use.

p.campbell
butbutbut that's the "hard drive"
Jeremy Smyth
That's the CPU?! That's gotta be one big motherboard!
CiscoIPPhone
Where I work, there is an employe that refer to the tower as the "hard disk". It confused me once or twice before I get it.
Mathieu Pagé
Although I understand the difference, I'm guilty of using this colloquialism :(
Dinah
+12  A: 

"Client" is the big, perennial classic term that means so many things, all within the context of almost every development project.

Jeremy Smyth
"Client" isn't being used as a synonym, though. It just has many different definitions.
Barry Brown
client gets even more fun when using X
cobbal
oh the amount of times I've gotten into the XClient debate :P
Jeremy Smyth
One thing is always for sure though.....clients are always getting S - E - R - V - E - D, OHHHHHH SNAPPPPP!!!!
Janie
+2  A: 

System == Library == Framework == Program == Application == Software

victor hugo
+2  A: 

computer == system == workstation == machine == box

Dan Tao
So this is a computer? http://www.geocities.com/pubot5/cardboardbox.jpg
Ólafur Waage
"...terms that mean the same thing *or don't*..."
Eli
@Ólafur: One of the guys I work with has asked me on more than one occasion, "What box are you using?" and every time it takes me a moment to overcome my initial confusion. Because the image you linked to is exactly what appears in my head.
Dan Tao
@Eli is your joke bone broken?
Ólafur Waage
@Eli: "Please differentiate between the two."
Wallacoloo
+36  A: 

parameter == argument

Parameter is the variable in the declaration of function or method.

Argument is the actual value of this variable that gets passed to function.

I like this one because it happens even to programmers

victor hugo
BTW, what is the difference?
Naveen
@Naveen: Will you accept Klingon jokes to answer that question?
Michael Myers
A parameter is a "hole" that the *developer* leaves in the function *definition*, an argument is what the *user* of that function plugs into that "hole", when *calling* the function.
Jörg W Mittag
@mmyers: I know Javascript as well as Klingon!
R. Bemrose
This should be an SO question itself.
Barry Brown
@Barry It is already http://stackoverflow.com/questions/156767/whats-the-difference-between-an-argument-and-a-parameter
victor hugo
These are also referred to, respectively as "formal parameter" and "actual parameter"; see also http://chortle.ccsu.edu/CS151/Notes/chap34/ch34_3.html and http://en.wikipedia.org/wiki/Parameter_(computer_science).
Steve Melnikoff
I was thinking to add another misconception: Klingon == cool? I don't think so, hehehe
victor hugo
@Jörg W Mittag : By which I assume you mean the developer forgets to protect his 'hole'/SQL code against apostrophes, and the user 'plugs' all sorts of ungrammatic it's/its/Sta'ck Overfollow nonsense into the 'hole'. Clearly the user is more wrong here.
Alistair Knock
+5  A: 

Drop down = Combo box

Tim S. Van Haren
Or Picklist in the MSCRM world.
Matt
so how its different? one is on the web and on on the desktop?
01
Drop down list = what you you get when you use the select tag in HTML. Combo box = a combination of a drop-down list or list box and a single-line textbox where the user can either type a value directly into the control or choose from the list of existing options (e.g. the font selector in the Formatting toolbar in Word or Excel.)
mikej
+1  A: 

Client == End User

They can be the same person, but more often then not the one writing the check to you is not the one that uses the thing you built.

Joseph
but but... isn't the client software and the end user a person?
fretje
+16  A: 

Users often confuse "web browser" with "the Internet." I'll hear them say "I'm going to the Internet," which means "I'm launching a web browser."

Barry Brown
"my internet is broken"
Chris Simpson
@Chris Simpson love it!
Matthew Jones
http://www.youtube.com/watch?v=o4MwTvtyrUQ
Jim Puls
LOL 3.5 out of 50 got it right :D
MiseryIndex
That video goes to show me that users just want to get work done and don't care what the various components are called. It's pointless to try to distinguish between IE and Firefox, Google and Yahoo, and search engines and browsers; to them it's just "the Internet."
Barry Brown
@Barry Brown and that (at least for many people) combining separate things that users see as "related" is helpful. (Like having a search bar built into the browser.) I bet that's part of why Google Chrome has one box that's both a URL bar and a search bar.
MatrixFrog
Actually it is not specific to the Internet. You get that confusion every time you develop an app which is an interface to another system.
Nicolas Simonet
My mother often calls me and tells me she "deleted the Internet" and doesn't know what to do. I finally got her to save the Internet onto a floppy in case this happens again.
bta
+1  A: 

Hyperlink = Link = Anchor

I've run across people who use these terms interchangeably, and of course, they aren't the same thing.

Tim S. Van Haren
What's the catch?
User
But the 'link' tag in HTML is distinct from the 'a' tag. :-(
system PAUSE
You're right of course. I think when the question had originally been asked, it wasn't clear that these were meant to be terms that are synonymous, rather than terms that are commonly used as being synonymous, if that makes any sense. I'll edit my response. :)
Tim S. Van Haren
+1  A: 

Whenever dealing with Departments of Education you must learn that "system" means software and "technology" means hardware.

Dour High Arch
All I can say is ... WTF?
Brad Gilbert
It's a "system"! "A group of interacting, interrelated, or interdependent elements forming a complex whole."[1] that include both software *and* hardware in the case of a computer. 1:http://www.answers.com/topic/system
Wallacoloo
+2  A: 

Host == Server

.. Which is untrue :)

cwap
Why is this not true? If something is hosting something, it's 'serving' it, therefore it's a server.
Daniel S
Yeah, your logic makes sense, which is why so many people (including myself) have had it wrong for so long time. In network terminology, a host can be a client, a server, a bridge-adapter etc... A host is simply a node in the topology, while a server is the node that accepts incoming connections.
cwap
+7  A: 

"open source" == "free software"

If you watch Revolution OS, you'll hear Richard Stallman use the term "free software" and others like Linus Torvalds and Bruce Perens use "open source." After watching the film, I think they're talking about the same thing, but disagreeing (vehemently in some cases) on what to call it.

(I hope none of them are reading this.)

Barry Brown
The software itself is free, what is not is the documentation, support, manuals, etc, etc...
victor hugo
And neither term should be confused for "license-free".
jeffamaphone
They are talking about the same thing in the practical sense, but very different things in the philosophical sense. Free Software is a social movement. Open Source software is somewhere between a development technique and a way to talk about Free Software without sounding like Stallman, inclusive. The difference in the Free Software Foundation's definition of Free Software and the Open Source Initiative's definition of Open Source Software is almost trivial, though.
David Thornley
+2  A: 

There are 180 pages of preferred terms in the "Microsoft Manual of Style for Technical Publications," which is a great book for technical writers, but I think programmers should have it too.

Many of the entries mention unacceptable (or outdated) equivalents.

Example: "system tray Do not use. Use notification area instead."

Nosredna
Yeah, right. I know where and what my system tray is. Without reading that, I wouldn't have a clue where or what the notification area is.
David Thornley
Haha. That's what I thought, too. That's why that one jumped out at me. :-)
Nosredna
http://blogs.msdn.com/oldnewthing/archive/2003/09/10/54831.aspx
CesarB
Nosredna
I think I will end my life a happy man if I never catch a glimpse of that book.
Alistair Knock
+1  A: 

Value Object == Value Type

Value Objects are classes representing immutable attributes, as in Domain Driven Design.

Value Types are variables whose values are held on the stack (int, bool, struct, etc). These are spoken of in relation to Reference Types, which live on the heap and have memory pointers.

jlembke
+2  A: 

Also Architecture is a term that requires constant clarification. It means topology to some. To others it means class diagrams, the product of software engineering. To others it is just a catch all for the above and umpteen other concepts.

jlembke
+8  A: 

I once heard a junior dev use NULL and VOID interchangeably.

Scariest thing I'd ever heard.

Matthew Jones
void? Whazzat?
Beska
wow i've actually never heard someone confuse the 2
Allen
Void is the absence of a variable, Null is a variable with undefined/zero value.
Brad Gilbert
Danger, Brad Gilbert! [re: zero]
Alistair Knock
+1  A: 

Operating System == Kernel who manages hardware and gives a very basic API vs. the whole software distribution

Adrian Panasiuk
+11  A: 

Hard drive space != RAM

barfoon
I agree; the trouble is, the distinction is never worth making because the user who is mentioning either thing is actually talking about something entirely unrelated anyway, oftentimes the orientation of the USB connector.
Alistair Knock
Blame this on whoever decided to call them both memory! This rears its ugly head even more when people talk about their digital camera (or whatever) having x amount of memory. The term memory is or course accurate but people think that the word "memory" only refers to one thing. This short term vs long term stuff is understandably confusing to layfolk.
Dinah
A: 

History and Travellog (as applied to webbrowsers).

  • History is the list of all websites you have visted ever (or for the last N days).
  • Travellog is the list of sites in your current session that are accessible via Back and Forward. And yes, I realize the JavaScript object for this is called history.
jeffamaphone
I guess Javascript uses history because travellog term is so unknown and it may refer to 'current session history' which is the same
victor hugo
WPF calls the latter thing a "journal".
Roger Lipscombe
+13  A: 

AJAX and Javascript.
A lot of times I hear semi-technical people interchanging the two terms. Like: "Can't you animate that image using AJAX". Which is of course just plain javascript.

Pim Jager
♫ Use AJAX... the foaming cleanser! ♪
Michael Myers
I was once told by a Sr Software Engineer that she was using ajax to sort a table. Before you think she was right, she was only using JS lol. This is the same one that asked me what a .sql file was and how to open it.
Allen
JavaScript is just AJAX, without the AX.
Brad Gilbert
Definitely +1 for the quavers.
Alistair Knock
+1  A: 

Programmer == Developer == Software engineer

You need developers, not programmers by Eric Sink

victor hugo
== software engineer. I've never actually paid much attention to my title, but I've had a fairly large number of jobs doing essentially the same thing, and the titles have varied widely.
David Thornley
I'd disagree and say programmer does not necessarily == developer. At least in the context of web development.
Cuga
@Cuga yes that's precisely my post's reason ;)
victor hugo
+8  A: 

Verification == Validation

From wikipedia:

It is sometimes said that validation can be expressed by the query "Are you building the right thing?" and verification by "Are you building the thing right?". "Building the right thing" refers back to the user's needs, while "building it right" checks that the specifications be correctly implemented by the system. In some contexts, it is required to have written requirements for both as well as formal procedures or protocols for determining compliance.

skaffman
@skaffman good one! Hear this all the time. +1.
Matthew Jones
+2  A: 

PowerPoint != the projector

It really bothers me when people say "I'll just put it up on the PowerPoint" and then they go to Microsoft Word or something instead.

yjerem
+4  A: 
User
Winchester refers to the first hard drive with a sealed head/disk assembly released by IBM in 1973. It was named after the Winchester 30-30 rifle due to its original capacity of two 30MB platters. All modern disk drives use this technology or a derivative of it. That's why some people refer to them as 'Winchesters'.
Phaedrus
The only times I hear people call them winchesters is as a joke. I do it myself when I encounter a particularly pedantic individual, just to wind them up. I also call them "spindles", which works even better.
skaffman
Winchester is the most common way to refer to a hard drive in Russian. Also called Vint (a screw/bolt, but also a short version of Vinchester, a Russian pronunciation of Winchester).
gooli
+30  A: 

I've seen this a few times on this site:

Authentication != Authorization

Authentication: Your identity
Authorization: Your privileges

Eric
Very good!.......
User
+1 for another common misconception.
Matthew Jones
Authentication is "are you who you say you are?". Authorization is "given who you are, what are you allowed to do?".
Adam Rosenfield
This is seriously a misconception to some people?
Janie
@Janie: if it weren't, then people would have an easy time understanding OpenID. I've stopped using OpenID because no one except programmers seems to get it (and many programmers don't even seem to get it).
Dinah
+1 good to see it pointed out, (again!)
Mitch Wheat
+1  A: 

I've had this one come up when trying to explain Cocoa development

Apple != Mac != Mac OS

Apple is a company

Mac is a brand

Mac OS is an operating system

The same is often true for

Microsoft != Windows

Paulo
And MAC means Media Access Control.
Dour High Arch
My wife has MAC make up :)
victor hugo
...And mac addreess is not 1 Infinite Loop Cupertino, CA 95014
OscarRyz
+4  A: 

Scope != Lifetime

Scope :: is the collection of statements where a variable can be referenced. Those statements are called the referencing environment of that variable.

Lifetime :: is the association between a variable(the name) and its place of storage in memory(address).

AraK
+6  A: 

Wiki != Wikipedia. (As in, "Well I looked it up on Wiki, and it says...")

This one is not really programming related, but it could cause a problem for someone working at a company that had their own internal wiki.

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

Wikipedia: http://en.wikipedia.org/wiki/Wikipedia:About

Some wikis that are not Wikipedia: http://en.wikipedia.org/wiki/List_of_wikis

MatrixFrog
Yes, I hear that one all the time and it bugs me.
David Johnstone
I find it hilarious that your list of wikis that aren't Wikipedia is a Wikipedia page. =)
chazomaticus
I understand the difference but I admit that I'm guilty of this one as well. My spouse and I often say we'll "look it up in Wiki."
Dinah
@chazomaticus, I hope that didn't confuse people. It's just that if I need a list of something, I usually go to Wikipedia to find it. =)
MatrixFrog
+9  A: 

"Inconceivable"

I do not think it means what you think it means.

Apocalisp
I think it means what I think it does.
User
My name is Diego Montoya, you killed my Father - prepare to die!
belugabob
@belugabob: it's "Inigo Montoya" (see http://www.imdb.com/character/ch0003786/) - awesome quote though.
system PAUSE
I knew it was wrong, as I was typing it, but went with the flow of the moment. :-)
belugabob
Inconceivable \In'con*ceiv"a*ble\, adjective [Pref. in- not + conceivable: cf. F. inconcevable.] Not conceivable; incapable of being conceived by the mind; not explicable by the human intellect, or by any known principles or agencies; incomprehensible; as, it is inconceivable to us how the will acts in producing muscular motion.
Tester101
A: 

From non-embedded software engineers:

  • RAM == program memory == data memory

For typical lower-end embedded processors (e.g. PIC, STM32, etc), code and constant data are stored in, and normally accessed from, flash; non-constant data is stored in RAM.

  • 1 Mb == small

For these kinds of processors, 1 Mb of flash is a lot (though not as much as it used to be). For example, the STM32 that I'm using currently using has 128 Kb of flash, and 8 Kb of RAM.

At the other end of the spectrum, the smallest PIC10F has 384 bytes of flash, and 16 bytes of RAM.

Steve Melnikoff
+1  A: 

Bug - Incident - Failure - Error - Defect - Problem - Issue

Ced
which all = by design
Robert Fraser
+1  A: 

Compiler == Programming Language == IDE

Dario
A: 

process = procedure = plans

Matthew Jones
+1  A: 

Memory == Hard Drive as in "My PC has 30GB of memory!"

Kelly French
Well, "My PC has (roughly) 30GB of memory" is no longer unrealistic on x64...
Marc Gravell
A: 

Google == Internet

also

Google == Search

Talked to many people that think Google IS the internet. If Google shutdown, that would be the end of being 'online'.

Where did you find xyz? Oh, on Google. Where is xyz stored? In Google.

Note: This also says a lot for Google's ability to sell their brand. When your company's name is well known as a verb 'to Google' you know you are successful.

Kelsey
Actually, theoretically if the "Google" (as in all search engines) were to shutdown temporarily, you could argue that it would become the end of being online. All you would know was what was in your bookmarks/delicious etc. and the URLs you knew by memory (SO, xkcd, umm...). So although the word Google is now generic, the concept of search - or as I'm told it is in 2009, discoverability - is more akin to what the 'internet' is about to most people, than the content and the concept of hyperlinking. The bad old days of site1-site2-site3 link following rarely exist now, due to search.
Alistair Knock
I disagree Alistair. There is a whole lot more to the internet than Browsing and searching. Look at all the mobile apps, B2B commerce Online Storage, email etc. Search engines just facilitate browsing web sites.
Atømix
+2  A: 

Some users will use the term "downloading" to generally mean "transferring" instead of distinguishing between "downloading" and "uploading." So, if they say "The error happened right after I downloaded the data," it might refer to another part of the process than what a tech person would take it to mean.

Anon
+1  A: 

Java == Javascript

peSHIr
A: 

"Find as you type" == "incremental search": The feature in Firefox and some other programs where, as you are entering your search term in a Find dialog/field, the document jumps to the position of the position of the next search result based on what you have entered so far (without you actually having to click a "Search" button to initiate the search action).

This is primarily handy to avoid typing (for example) "incremental search[enter]" when typing "incr" is probably good enough to find what you're looking for!

This came to mind as a meaning of "find as you type" different than the example given in the original question!

Jon Schneider
A: 

C# .Net (Ahhhhh!)

peSHIr
A: 

Pass values by reference != pass references by value.

Pass values by reference in C++:

struct Bar
{
   int X;
   Bar(int x) : X(x) {}
   Bar &operator=(const Bar &rhs) { X = rhs.X; }
};

void foo(Bar &b, Bar &b2)
{
    b = Bar(1);
    b2.X = 1;
}

int main()
{
    Bar b(0);
    Bar b2(0);
    foo(b, b2);
    cout << b.X << ", " << b2.X; // prints 1, 1
}

Pass references by value (C# / Java)

class Bar
{
   public int X;
   public Bar(int x) { X = x; }
}

void foo(Bar b, Bar b2)
{
    b = new Bar(1);
    b2.X = 1;
}

int main()
{
    Bar b = new Bar(0);
    Bar b2 = new Bar(0);
    foo(b, b2);
    Console.Write("{0}, {1}", b.X. b2.X); // prints 0, 1
}
Eclipse
+1  A: 

Closure == lambda. In reality, they are distinct things: lambda is any anonymous function, and may or may not close over some variables; closure is any function that closes over some variables, and may or may not be anonymous. For example, the original Pascal had no lambdas, but it had closures (in form of nested functions).

Pavel Minaev
A: 

Q: "Where did you get this file?"
A: "I got it offline."

Tester101
+1  A: 

Declaration != Definition

I heard so many times people confusing the two that now I confuse them myself.

Stefano Borini
+1  A: 

Hang == crash == some error message the user didn't even read.

erikkallen
+1  A: 

IDE != framework

Q: "What frameworks do you consider yourself to be proficient in?"

A: "Visual Studio"

Not mine, but a friend told me this yesterday. About died, both from laughing too hard and crying over the sad state of humanity.

Matthew Jones
+2  A: 

One that really turned my head around was someone in my QA department referring to a null value and a blank value as being one and the same. I smiled and asked if they were serious and they said, "of course they're the same." I tried to explain as simply as I could that they were not the same and it just didn't register with them.

/matt

Matt Dewey
I recommend this question. Perhaps a simple way to explain it: http://stackoverflow.com/questions/2694204/explaining-null-and-empty-to-your-6-year-old
Atømix
A: 

Search box != Address Bar

Time after time, people type a Url in the search box ( be it Google, Yahoo, Bing, Teoma )

Atømix
In Google's Chrome browser (and others, most likely), these are indeed one and the same.
bta
Hmmm... you mean `Google's` browser has only a search box? Remember, there is also a search box on the Google.com page. People type URLs in that search box as well.
Atømix
A: 

PowerPoint Presentation == Any Computerbased Presentation (not necessary made with PowerPoint)

Always when I hear People talking about a presentation made and presented with computer and projector, they say "PowerPoint presentation" because they haven't got any term which is more general. Most of them use OpenOffice, in fact.

+3  A: 

PC != Windows

PC means personal computer. Apple invented the PC. But, now it's taken a life of its own as anything that has Windows on it.

In this same vein, people tend to compare "Mac" or "PC" when it should be "OS X" or "Windows"... or "Mac vs. ThinkPad/Satellite"

Of course, that would be more difficult to put into an ad.

Atømix
While there have been many "Personal Computers" over the years, IBM started the term with their "PC" models, that ran Microsoft DOS. Many other companies made "PC-Compatible" machines, and eventually the term became the generic for an MS-DOS box. While Windows has replaced DOS in the same space, the term carried over. "Wintel" is perhaps a more descriptive term for the platform, but this is a case where the common usage rather than accuracy makes the definition.
mbmcavoy
True, but it's really only got steam as "anything that's not a Mac" in recent years, in part due to the Apple ads. I always remembered them being called: "IBM compatible" not "PC Compatible". Compaq was the first one to create a clone.
Atømix
+1  A: 

In many video-games, I see computer controlled players labeled "CPU".

CPU != Bot

Wallacoloo
A: 

I get this one way too often:

"Specification" == "Suggestion"

When you're on a hardware team and you have software teams treating your hardware specs as "optional guidelines", it makes you want to slap somebody.

bta