Questions about the objective meaning or common understanding of words and concepts that programmers encounter

learn more… | top users | synonyms (1)

119
votes
12answers
13k views

Why does it matter that HTML and CSS are not programming languages?

Example here: What languages should I know if I'm interested in building web applications ? Yes, I understand that HTML and CSS are not Turing-complete. Yes, I understand that they are declarative, ...
32
votes
8answers
18k views

Library vs. framework vs API? [closed]

What is the difference between a library, framework, and API? They all seem the same to me. I would like to hear peoples thought of this.
27
votes
25answers
9k views

What is abstraction? [closed]

Is there a generally agreed upon definition for what a programming abstraction is, as used by programmers? [Note, programming abstraction is not to be confused with dictionary definitions for the word ...
31
votes
12answers
12k views

What's the difference between a “developer” and a “programmer”? [duplicate]

Possible Duplicate: What are the key differences between software engineers and programmers? What is the difference between software engineer and software developer? What's the difference ...
18
votes
11answers
33k views

Difference between defect and bug in testing [closed]

What is the difference between defect, and bug?
8
votes
2answers
507 views

How do you call the process of taking a part of a function and making an individual function of it?

I know there was a technical term for this. I'm just can't remember what it was. If the title needs clarification, here is what I mean; If this is the old code: Result foobar(Param1,Param2,Param3) { ...
33
votes
8answers
5k views

What is enterprise software, exactly?

I don't understand the difference between "normal" software and enterprise software. Even after reading these... "Enterprise Software" on Wikipedia "Enterprise Software Is Sexy Again" on Techcrunch ...
21
votes
6answers
2k views

How can I say that programming language compiles to other languages?

How can I say in english, that programming language can be compiled to other programming languages? The example can be Haxe. On the website the language is decribed as "Multiplatform": ...
40
votes
6answers
20k views

Method vs Function vs Procedure

Simple question, but I often hear these three terms defined with such ferocity, but which have been known to me to mean different things over the years. What are the "correct" definitions of ...
21
votes
5answers
2k views

I've been told HTML is a markup language, C++ is a programming language, what could make that difference?

My programming friends are always telling me that HTML is a markup language and C++ is a programming language. When I ask them what's the difference, they never give me a reasonable answer. What ...
25
votes
5answers
867 views

Has the term “Service Oriented Architecture” become meaningless jargon? [closed]

I was asked today if I had experience with "Service Oriented Architecture" and although I think I do. The concept, to me, seems so muddled I don't know how you could honestly answer that question ...
13
votes
3answers
980 views

Pure virtual or abstract, what's in a name?

While discussing a question about virtual functions on Stack Overflow, I wondered whether there was any official naming for pure (abstract) and non-pure virtual functions. I always relied on ...
10
votes
3answers
2k views

Is the term 'Front-End' synonymous with 'Client-Side'? If so, is this always the case?

As a relatively new (self-taught) web developer, I've heard the terms front-end, client-side, back-end, and server-side quite often. To me, front-end and back-end were always synonymous with ...
9
votes
5answers
661 views

Contractor vs Consultant [closed]

For a programmer, two of the most common terms that seem to be overloaded are contractor and consultant? Is there a difference between the two?
8
votes
2answers
653 views

Deprecated vs. Denigrated in JavaDoc?

In the JavaDoc for X509Certificate getSubjectDN() it states: Denigrated, replaced by getSubjectX500Principal(). I am used to seeing Deprecated in the for methods that should not be used any ...
1
vote
4answers
14k views

What is the difference in meaning between “software”, “program”, “application”, and “gadget”? [closed]

It seems to be a naive question, but I was unable to find an explicit definition and difference in meaning of the words "software", "program", "application", and "gadget". What is the correct (at ...
9
votes
7answers
5k views

What is the difference between Static code analysis and code review?

I just wanted to know what the difference is between static code analysis and code review. How are each of these two done? More specifically, what are the tools available today for code review/static ...
5
votes
5answers
1k views

What is the difference between “recursion” and “self-reference”?

The wikipedia articles are too advanced for me to understand, could someone give me a simple explanation please?
5
votes
4answers
1k views

What is the precise definition of programming paradigm?

Wikipedia defines programming paradigm thus: a fundamental style of computer programming which is echoed in the descriptive text of the paradigms tag on this site. I find this a disappointing ...
3
votes
2answers
631 views

What are the different meanings of 'fixture'?

I have some difficulty understanding the concept of "fixture". I know what a test suite is, a test case, a test run, but what exactly is a "fixture"? A parameterized test case? It seems to me that ...
3
votes
2answers
740 views

What are frameworks, stacks, and middleware?

Hey I'm a student programmer currently working in Java. I often see several terms thrown around alot and it would be very helpful for someone to explain the differences. I was prompted by my research ...
286
votes
6answers
15k views

What is negative code?

I was reading the Wikipedia article on Douglas McIlroy and found a quote that mentions "The real hero of programming is the one who writes negative code." What does that mean?
75
votes
13answers
18k views

What's the difference between an API and an SDK?

I was looking through various APIs and SDKs, when I realized that I couldn't really tell the difference between something called an API and something called an SDK. Both of them are, conceptually, a ...
55
votes
7answers
45k views

What's the difference between simulation and emulation

I frequently see Simulation and Emulation in computer science. These two terms seem synonymous. Is there any difference between Simulation and Emulation?
23
votes
2answers
1k views

Is there an anti pattern for historically grown software? [closed]

Is there an anti pattern that describes a historically grown software system where multiple developers just added new features to the system but no one really kept an eye on the overall architecture ...
12
votes
11answers
8k views

What defines robust code?

My professor keeps referring to this Java example when he speaks of "robust" code: if (var == true) { ... } else if (var == false) { ... } else { ... } He claims that "robust code" ...
11
votes
12answers
24k views

What's the difference between computer science and programming?

I'm new at computer science and programming, and I was wondering, is there a difference between computer science and programming? and do you get to choose to study only one of them at the university, ...
35
votes
12answers
2k views

Why are errors named as “Exception” but not as “Error” in programming languages?

I've been thinking about that for quite a while actually. I am not a native english speaker myself but still I have years of programming experience and I always asked me this. Why is it named as ...
11
votes
2answers
1k views

When programmers talk about “data structures”, what are they referring to?

When programmers talk about "data structures", are they only talking about abstract data types like lists, trees, hashes, graphs, etc.? Or does that term include any structure that holds data, such ...
11
votes
6answers
794 views

What are the differences between a website and a web application?

How do you differentiate a web application from websites? It's language/platform agnostic.
27
votes
6answers
3k views

What is the difference between 'layer of abstraction' and 'level of indirection'?

I am not sure if both terms can be used interchangeably. Maybe there is some academic distinction in computer science which is not relevant for day-to-day programming? Or can I use both term ...
32
votes
4answers
2k views

What is the term for this type of refactoring

I am sure there is a term for the following bit of refactoring, but I can't remember it and my Google-fu is failing me! The refactor moves if statements to where they are going to have most impact, ...
7
votes
15answers
722 views

What is the common definition of a Hacker? [closed]

I'm wondering if the term Hacker means different things to different people. When most people hear the word hacker what are the first things that come to mind?
6
votes
5answers
6k views

Is there any difference between pointers and references? [duplicate]

References and pointers do the same thing as I know. Is there any difference between them? If there is no difference, why we call them reference not pointer?
3
votes
2answers
2k views

What does “proxy to” mean?

I keep coming across the word "proxy" used as a verb in tutorials, etc. Usually something will "proxy to" something else. What does this mean? Having spent some time googling for what it means in a ...
10
votes
4answers
2k views

What does the term day-one-bug mean?

I came across this term recently in a mail chain. Google tells me there is a term zero-day bug and that Microsoft and Adobe are the frontrunners :) Is there such a term as day one bug? What might ...
8
votes
8answers
1k views

Rigorous Definition of Syntactic Sugar?

It seems like in language holy wars, people constantly denigrate any feature they don't find particularly useful as being "just syntactic sugar". The line between "real features" and "syntactic ...
6
votes
4answers
2k views

Who was the first software engineer?

It's fairly well known who the first programmer was but who was or were the first software engineer(s)? By software engineer I mean someone who uses formalized specifications and methods to deliver ...
6
votes
2answers
239 views

In open source jargon, who is a “committer”?

In open source jargon, is a "committer" someone who creates a commit that gets accepted into a project, or is a "committer" a gatekeeper who decides what commits/patches are or aren't accepted into ...
4
votes
5answers
748 views

What is the name of this particular kind of over-engineering? [closed]

When faced with (even a small) project, I tend to fall into the following bad practice. I think about the structure of the problem. Then I create some base classes, derive from them and then derive ...
2
votes
2answers
11k views

What's the difference between fault, error and defect? [duplicate]

Possible Duplicate: Difference between defect and bug in testing In computer science technical writing, especially in software engineering, what's the difference between fault, error and ...
9
votes
1answer
2k views

AddIn, AddOn, And Plugin [closed]

Even though at first glance the words AddIn, AddOn, And Plugin give the same meaning, there are some differences between them. Could anyone explain to me the subtle differences between AddIn, AddOn, ...
8
votes
1answer
632 views

Is there an explicit word for non-abstract class?

I got mainly abstract classes in my project and there are a few other class which are using/inheriting them. When I'm writing the documentation I would like to specify that a part of it is just about ...
8
votes
5answers
5k views

What is the difference between a Program Manager and a Project Manager?

Is a Program Manager a person who manages mutiple projects (under a single program) which are in turn managed by Project Managers? Or is a Program Manager a person as defined by Joel Spolsky here. ...
7
votes
3answers
545 views

What is the difference between a stock-hardware and a micro-coded machine in “A Critique of Common Lisp”?

I was reading this article: A Critique of Common Lisp and finding it hard to make out the precise definition of "stock-hardware machine" and its difference with "micro-coded" machines. I tried to ...
7
votes
4answers
740 views

Is “Code Smell” still a useful metaphor, or has misuse of the term subverted its meaning? [closed]

I've come across some comments and answers on Programmers.SE that decry the use of the phrase "Code Smell" and I've been wondering what the reasoning is for those who dislike it. I first encountered ...
7
votes
1answer
202 views

Need help with naming (marshaling interface calls) [closed]

This question was reopened on "English Language & Usage": http://english.stackexchange.com/questions/53683/synonyms-for-multiplexing-and-demultiplexing/ This question is related to something ...
6
votes
2answers
504 views

Who decided on the terminology downcasting and upcasting?

As far as I know, the terminology comes from how the inheritance hierarchy is traditionally displayed, with the extending types at the bottom, and the parent types at the top. This is a bit ...
5
votes
3answers
522 views

Where does the term “Front End” come from?

Where does the term "front-end" come from? Is there a particular presentation/talk/job-posting which is regarded as the first use of the term? Is someone credited with coining the term? The ...
5
votes
2answers
238 views

What defines an encapsulation properly?

I find the encapsulation concept a bit confusing. So far I have read that the members of the class should be private and any access to private members must be through getter and setter methods, which ...