For questions about the history of programming and computing.

learn more… | top users | synonyms

3
votes
5answers
1k views

First dedicated IDE?

What was the first program that was created as a dedicated IDE? That is, purpose built for coding, rather than simply allowing integration as part of its expansion options. This is opposed to a text ...
4
votes
2answers
1k views

Why was ASCII needed?

With an encoding such as EBCDIC being in existence already (and being 8 bit to boot), what was the need to invent yet another encoding and a 7 bit one at that? Why was ASCII invented and what ...
8
votes
3answers
2k views

What was the historical impact of Ariane 5's Flight 501?

The disintegration of the Ariane 5 rocket 37 seconds after launch on her maiden voyage (Flight 501) is commonly referred to as one of the most expensive software bugs in history1: It took the ...
6
votes
4answers
3k 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 ...
15
votes
2answers
4k views

Who was the first programmer?

Is there some consensus among historians on who was the first programmer ever? If so, who was it and what were they programming on? I find it more interesting to know more about the pioneers of ...
8
votes
2answers
327 views

How were Fortran's original control structures insufficient?

In my Programming Language Concepts class it was mentioned in passing that Fortran's original control structures were insufficient. It was alluded that they were too similar to machine instructions ...
50
votes
6answers
10k views

Who created the idea(s) of the first loop constructs?

while (1) { if (1+1==2) { print "Yes, you paid attention in Preschool!"; } else { print "Wait... I thought 1+1=2"; } } As a developer, we all have to use ...
43
votes
22answers
8k views

Was classical BASIC ever used for commercial software development, and if so, how were limitations overcome?

Many of us, including me, started their programming life with programs written on home computers, something like 10 PRINT "ENTER RADIUS" 20 INPUT R 30 PRINT "CIRCUMFERENCE="; 2 * R * PI 40 PRINT ...
31
votes
2answers
2k views

Why did the Haskell committee choose monads to represent I/O?

The Clean language uses uniqueness types to handle I/O in a purely functional setting. Why did the Haskell committee go with monads instead? Were there other proposals for handling state that the ...
8
votes
4answers
343 views

Origin of structures and classes

What design and implementation issues did programmers have to solve when they decided first to use structures and classes? When did this happened and who were the pioneers behind these ideas? Note, ...
12
votes
2answers
3k views

Is the 14th line of The Zen of Python a reference to Dijkstra?

Python's Zen states on line 14 that: Although that way may not be obvious at first unless you're Dutch. Is this a reference to the famous Dutch computer scientist Edsger W. Dijkstra?
2
votes
2answers
2k views

Why is 24 lines a common default terminal height?

80x24 characters seems to be a very common default for terminal windows. This answer provides a very good historical reason as to why the width is 80 characters. But why is the height commonly 24 ...
329
votes
9answers
87k views

Why is 80 characters the 'standard' limit for code width?

Why is 80 characters the "standard" limit for code width? Why 80 and not 79, 81 or 100? What is the origin of this particular value?
38
votes
4answers
10k views

What were the “core” API packages of Java 1.0?

Reading about the Google v Oracle case, I came across these questions (apparently from the presiding Judge) ... Is it agreed that the following is true, at least as of 1996? The following ...
267
votes
4answers
99k views

What software programming languages were used by the Soviet Union's space program?

I got interested in the Soviet space program and was interested to discover that the software on the Buran spacecraft circa 1988 was written in Prolog. Does anyone know what languages might have ...
2
votes
4answers
1k views

Why is a database represented as a cylinder in architecture drawings? [closed]

I'm a young upstart programmer and I've never actually seen a database. But computers in large part come in boxes, not in cylinders so I was wondering why they are always represented as a cylinder ...
4
votes
3answers
3k views

What was the most used programming language before C was created? [closed]

C is a language written between '69 and '73 according to WIkipedia. I imagine it made programming a whole lot easier and opened the gate for other programming languages. My question, however, is what ...
18
votes
1answer
4k views

What did they call Object-Oriented Programming before Alan Kay invented the term?

Alan Kay claims that "I made up the term "object-oriented", and I can tell you I did not have C++ in mind." What he had in mind, of course, was Smalltalk. But he did not make up object-oriented ...
8
votes
5answers
3k views

False friends? Keyword “static” in C compared to C++, C# and Java

To me, the use of the keyword static in C and languages like C# and Java are "false friends" like "to become" in English and "bekommen" in German (= "to get" in English), because they mean different ...
7
votes
1answer
206 views

Strategy for restoring state via URL in web apps

This is a question about modern web apps, where a single page is loaded, and all subsequent navigation is done by XHR calls and modifying the DOM. We can use libraries that manipulate the hash ...
7
votes
7answers
12k views

What was the first programming language written for computers? [closed]

Looking at so many programming languages we have today, each one being unique in it's own way, I've tried to figure out what the first programming language written for computers is. Looking at the ...
2
votes
4answers
783 views

Which applications have driven the mass spread of floating point units? [closed]

Floating point units are standard on CPUs today, and even desktops might use them today (3D effects). However, I wonder which applications have initially driven the development and mass adoption of ...
19
votes
5answers
3k views

Why are several popular programming languages influenced by C? [closed]

The Top 10 programming languages, according to the TIOBE index seem to be heavily influenced by C: 1. Java The language derives much of its syntax from C and C++ but has a simpler object model ...
3
votes
2answers
351 views

What is the origin of sessions, by whom and when were they created?

I know sessions are in PHP, ASP, ASP.NET and probably in many other languages. In most cases session solve a problem which the language itself fails to solve. I am wondering Who created sessions and ...
3
votes
1answer
381 views

How to explain the history of programming to non-programmers? [closed]

Sorry if this question is not appropriate for this stack exchange site, I've never used this one before. I am doing my senior project on computer programming. I'm going to be presenting the project ...
11
votes
3answers
1k views

Why didn't the C++ Standard adopt expression templates?

It's my understanding that expression templates as a technique were discovered significantly prior to the original C++ Standard in 1998. Why weren't they used to improve the performance of several ...
3
votes
2answers
499 views

Google Closure Compiler - what does the name mean?

I am curious about the Google Closure Compiler. Why did they name it that? Does it have anything to do with lexical closures? EDIT: I tried researching it in the FAQ and documentation, as well as ...
56
votes
6answers
3k views

Why the Select is before the From in a SQL Query? [closed]

This is something that bothered me a lot at school. 5 years ago, when I learned SQL, I always wondered why we specify first the fields we want and then where we want them from. According to my idea, ...
7
votes
2answers
584 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 ...
6
votes
2answers
1k views

In C++, were SFINAE and metaprogramming intentional or just a byproduct of templates?

SFINAE and template metaprogramming can do wonderful things and many libraries also use them considerably. Historically both of these "magic concepts" were intentionally introduced/supported in C++ ? ...
14
votes
6answers
6k views

Why pointer symbol and multiplication sign are same in C/C++? [duplicate]

I am writing a limited C/C++ code parser. Now, multiplication and pointer signs give me really a tough time, as both are same. For example, int main () { int foo(X * p); // forward declaration ...
9
votes
1answer
1k views

Who first created or popularized the original XMLHTTPRequest / MSXML?

I'm trying to understand the origins of AJAX, and think MSXML and XMLHTTPRequest were the objects that started it all. Which came first, and/or became the defacto way to create dynamic pages?
28
votes
14answers
4k views

Why isn't rich code formatting more common?

I was reading Code Complete and in the chapter on layout and style, he was predicting that code editors would use some sort of rich text formatting. That means, instead of code looking like this ...
38
votes
6answers
18k views

What is the history of why bytes are eight bits?

What where the historical forces at work, the tradeoffs to make, in deciding to use groups of eight bits as the fundamental unit ? There were machines, once upon a time, using other word sizes, ...
3
votes
3answers
586 views

strcpy memcpy reason for parameter order

Answering a question about order of parameters it struck me that strcpy (and family) are the wrong way round. Copy should be src -> destination. Is there a historical or architectural reason for the ...
5
votes
2answers
3k views

Do any languages use =/= for the inequality operator?

Wikipedia says: Not equal The symbol used to denote inequation — when items are not equal — is a slashed equals sign "≠" (Unicode 2260). Most programming languages, limiting themselves ...
15
votes
5answers
809 views

Why is $ in identifier names for so many languages?

A lot of scripting languages like Perl, Awk, Bash, PHP, etc. use a $ sign before identifier names. I've tried to look up why but never had a satisfactory answer.
36
votes
2answers
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 ...
2
votes
2answers
244 views

Reasons for the build-technological fork between Java and UNIX/C/Fortran

When Java was developed, it's designers chose to discard an unusual amount of the conventional wisdom established in the UNIX and C oriented toolchains. For one (and in my view) the most major ...
56
votes
10answers
23k views

Why has C prevailed over Pascal? [closed]

My understanding is that in the 1980s, and perhaps in the 1990s too, Pascal and C were pretty much head-to-head as production languages. Is the ultimate demise of Pascal only due to Borland's neglect ...
16
votes
9answers
2k views

What were the reasons why Windows never had a decent shell? [closed]

I was reading a topic on SO: Why are scripting languages (e.g. ...) not suitable as shell languages?. Especially I liked the answer by Jörg W Mittag, from which I learned interesting things about ...
7
votes
3answers
755 views

Did concept of ViewModel exist before MVVM?

Today I was having a discussion with a colleague that ViewModel is a general concept and existed before MVVM pattern. I believe ViewModel term is used anytime you create a class with Model like ...
11
votes
5answers
1k views

Who invented pointers?

Pretty simple question, but something I haven't been able to find out. Who was the first person to describe the idea of a pointer? The abstract concept itself?
62
votes
1answer
3k views

What task did Dijkstra give volunteers, which was mentioned in his paper “The Humble Programmer”?

In Dijkstra's paper "Humble Programmer", he mentions that he gave some volunteers a problem to solve: “I have run a little programming experiment with really experienced volunteers, but something ...
2
votes
3answers
9k views

Sequel vs S-Q-L [duplicate]

Possible Duplicate: What's the history of the non-official pronunciation of SQL? I hear it every so often, "In sequel server...", and for some reason I cringe every time. Maybe it's ...
5
votes
1answer
443 views

Why is the dollar sign used to abbreviate the description of a cache? [closed]

What's the historical significance of abbreviating say, an L1 cache as L1$?
29
votes
3answers
4k 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 ...
20
votes
11answers
1k views

Is there a reason for initial overconfidence of scientists and engineers working on artificial intelligence in the 1960s?

I just started an AI & Data Mining class, and the book. AI Application Programming, starts off with an overview of the history of AI. The first chapter deals with the history of AI from the 1940s ...
34
votes
3answers
13k views

How could the first C++ compiler be written in C++?

Stroustrup claims that Cfront, the first C++ compiler, was written in C++ (Stroustrup FAQ). However, how is it even possible that the first C++ compiler be written in C++? The code that makes up the ...
17
votes
4answers
2k views

What was the first hierarchical file system?

"Directories containing directories and files" seems to have been around forever, but there must have been a first.