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

learn more… | top users | synonyms (1)

278
votes
6answers
13k 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?
115
votes
12answers
11k 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, ...
64
votes
14answers
4k views

Name for this antipattern? Fields as local variables

In some code I'm reviewing, I'm seeing stuff that's the moral equivalent of the following: public class Foo { private Bar bar; public MethodA() { bar = new Bar(); ...
62
votes
4answers
12k views

IPv4 to IPv6. where is IPv5?

As all of us know that after IPv4 it came IPv6. How this transition happened? I just want to know was there any IPv5 also? or there is any other logic in naming this version of IP as IPv6?
48
votes
17answers
3k views

What is a hack? [closed]

I often hear co-workers saying to each other, "That's a horrible, horrible hack." What I can take away from that is that it's not good. When I asked them if it works they say "yes, but it's not ...
48
votes
9answers
35k 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?
38
votes
9answers
3k views

Why is Today() an example of an impure function?

It seems like, when reading something like this Wikipedia article about "pure functions", they list Today() as an example of an impure function but it seems pretty pure to me. Is it because there is ...
38
votes
6answers
16k 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 ...
36
votes
8answers
2k views

What is the term for a really BIG source code commit?

Sometimes when we check the commit history of a software, we may see that there are a few commits that are really BIG - they may change 10 or 20 files with hundreds of changed source code lines ...
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 ...
34
votes
1answer
2k views

Where does the term “Red/Black Tree” come from?

A Red/Black Tree is one way to implement a balanced binary search tree. The principles behind how it works make sense to me, but the chosen colors don't. Why red and black, as opposed to any other ...
34
votes
7answers
2k views

What makes a piece of software an Engine? [closed]

The descriptor 'Engine' gets thrown around a lot: graphics engine, RegEx engine, AI engine, etc. but what actually makes a piece of software an Engine? Design, Input/Output, Purpose, Size?
33
votes
3answers
2k views

Why are actual parameters called “arguments”?

Where does the word "argument" (in the programming sense) come from? i.e. Why are actual parameters called "arguments"? The meanings don't seem related, and I haven't found any explanation of it ...
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, ...
32
votes
8answers
4k 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 ...
32
votes
11answers
3k views

What is the difference between “Syntax” and “Syntactic Sugar”

Background The Wikipedia page on Syntactic Sugar states: In computer science, syntactic sugar is syntax within a programming language that is designed to make things easier to read or to express. ...
31
votes
12answers
9k 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 ...
30
votes
6answers
5k views

What is the difference between development and R&D?

I was asked by a colleague to explain clearly the difference between ordinary development and research and development (R&D) and was unable to do it. After reading Wikipedia, I still don't have ...
30
votes
3answers
925 views

Origin of “Readme”

When did people start writing Readme files? It seems that pretty much all programs have this file, regardless of the format. Is there any documented first use of this document?
29
votes
8answers
15k 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
4answers
2k views

What is each time through a loop called? [closed]

while ( true ) { // what is each time through this loop called? }
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 ...
26
votes
26answers
7k 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 ...
25
votes
3answers
2k views

What is the term for a 'decoy' feature or intentional bug? [closed]

I have forgotten a slang programming term. This thing is an intentional bug or a decoy feature used as a distraction. An example usage, "Hey Bob, QA is doing a review today. Put a $THING into the ...
25
votes
4answers
3k views

What is the origin of the negative term “Legacy Code”

Everyone talks about legacy code in software development and I have heard the term over the last ten years used to paint any codebase as a POS. Where did this term, which has such powerful ...
25
votes
5answers
824 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 ...
24
votes
3answers
3k views

What is the origin and meaning of the phrase “Lambda the ultimate?”

I've been messing around with functional programming languages for a few years, and I keep encountering this phrase. For example, it is a chapter of "The Little Schemer, which certainly predates the ...
24
votes
2answers
2k views

What is “swarming”?

I've heard swarming mentioned in the context of Agile or Extreme Programming. It seems to be a complement to pairing. What exactly is it? When should it be applied? How do you do it well?
24
votes
1answer
4k views

Java: “Heap pollution”

A "Heap Pollution" as in Non-Reifiable Types (The Java™ Tutorials > Learning the Java Language > Generics (Updated)) Why is it called that way?
23
votes
8answers
1k views

What is the etymology of the phrase “Source Code”? [closed]

With the movie "Source Code" just coming out today, I have had to explain the meaning of the phrase to non-techies. Then I was asked why source code is called source code and couldn't really answer. ...
23
votes
1answer
3k views

What is an untriaged bug?

I am an undergrad studying Computer Science. When I tried reporting bugs to several projects, I came across the classification untriaged a lot. A web search didn't really explain what this means. ...
22
votes
4answers
2k views

Why is putting something on the stack called “push”?

According to http://dictionary.reference.com push verb (used with object) to press upon or against (a thing) with force in order to move it away. to move (something) in a specified ...
22
votes
13answers
7k views

What's the term for “while(true)” loop with “break” inside? [closed]

Suppose I have a loop in C++ or C# that goes like this: while( true ) { doSomething(); if( condition() ) { break; } doSomethingElse(); } This is commonly called "infinite ...
22
votes
4answers
1k views

is there a term for doing this: func1(func2(), func3());

I know that obj.func1().func2() is called method chaining, but what is the technical term for: func1(func2(), func3()); Where return of a function is used as an argument to another.
21
votes
11answers
1k views

How do you portray to non programmers what programming involves? [duplicate]

I get casually asked a lot to take a couple days to teach someone how to program. Most people really think they can learn what I know in a few days. When I tell them I have been doing this for many ...
21
votes
6answers
1k 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": ...
21
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 ...
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 ...
20
votes
19answers
2k views

Another term for common code smell [closed]

Is there a need to differentiate using smells to find underlying problems and a term for common code smells. It's more about prevention like returning the milk to the refrigerator because you have a ...
20
votes
3answers
22k views

Difference between Web API and Web Service?

I have heard about Web Services and Web API's a lot, is there any difference between them or are the same?
20
votes
2answers
1k views

When did the term “snake case” come into use?

Many people use the term Snake Case to describe variables or other symbols with_the_form_of_underscores. When did this term enter into use?
19
votes
5answers
2k views

What's the word for an operation that can be applied multiple times and never change state beyond the initial application?

I'm trying to remember a word, I think it's related to computational or database theory. The closest synonym is atomic but that's not exactly it. Basically it's a kind of computation that should ...
19
votes
5answers
1k views

Is Google Closure a true compiler?

This question is inspired by the debate in the comments on this Stack Overflow question. The Google Closure Compiler documentation states the following (emphasis added): The Closure Compiler is a ...
18
votes
15answers
1k views

Refactoring: Isn't it just a fancy word for clean up your code?

Before Martin Fowler's book "Refactoring: Improving the Design of Existing Code" came out, we used to call major changes to code "rearchitecture" and minor changes "cleanup". IMO, refactoring ...
17
votes
8answers
4k views

What is Pseudocode?

I've seen a lot of mentions of Pseudocode lately, on this site and others. But I don't get it: What is Pseudocode? For example, the Wikipedia article below says "It uses the structural conventions ...
17
votes
2answers
649 views

What is an Aguri tree?

Going through some old Hacker News items, I came across a post from a user that said Aguri trees, which marry a bounded-size radix trie (like you'd use in a software routing table) to an LRU list, ...
16
votes
3answers
2k views

What's the origin of foo and bar? [duplicate]

Possible Duplicate: Using “Foo” and “Bar” in examples I know AT&T labs used them in their Unix days, but do they have even deeper histories?
15
votes
8answers
2k views

What’s the opposite of abstraction? [closed]

As I understand it, abstraction is the term we use for when more meaning is created out of something simpler without altering it. It is derived from the latin verb abstrahere (to ‘draw away’). For ...
15
votes
5answers
600 views

Is cloud computing just a way of renting resources?

The company I work at recently hosted a web service in Windows Azure and announced that. Now trade online magazines say lots of meaningless stuff like "company X moves to the cloud", "company X drops ...
15
votes
6answers
1k views

What is the term for IntelliSense in a non-Microsoft world?

When talking about IDE software or about what a programming language allows you to do or not at the source level, I often use the word IntelliSense, which has a precise meaning in the Microsoft world, ...