For questions about the history of programming and computing.

learn more… | top users | synonyms

12
votes
2answers
1k views

Which programming language first introduced 'Hello World'

Which programming language first introduced 'Hello World' as a first program to code for beginners?
12
votes
2answers
798 views

Where does the the term “feature creep” come from?

There is a decent Wikipedia article on the "Feature Creep", but it doesn't state an origin. A Google search only leads to some vague article claiming "Earl Rich" coined the term, but there isn't much ...
12
votes
3answers
1k views

Historical origins of Scala implicits

Scala has been called complex with its rich feature set by many of my colleagues and some even blamed all those new features of it. While most programmers are aware of the OO-features, and at least ...
12
votes
2answers
1k views

When was source control invented?

I'm aware of many version control systems: CVS, SVN, TFS etc... I've googled for the very first "revision control/version control system" and seen various conflicting answers. When was source ...
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?
11
votes
2answers
10k views

Why is C so high in TIOBE index of popularity, while C++ is just under here too, but not as popular? [closed]

I can't get my head around this. If C is so much used, but C is not C++, can someone explain to me the most important reasons that makes C more used than C++ ? Where is all this C code written for ? ...
11
votes
1answer
1k views

Why did object-oriented paradigms take so long to go mainstream?

I read this question and it got me thinking about another fairly recent thing. Object oriented languages. I'm not sure when the first one was created, but why did it take so long before they became ...
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 ...
11
votes
3answers
1k views

How did the idea of Exception-handling emerge into programming languages? [duplicate]

Possible Duplicate: Who designed exceptions? Today if we look at any language, exception handling is almost a compulsory feature. The languages that didn't have it earlier are implementing ...
10
votes
7answers
2k views

Why did the creators of the Internet Protocol decide to use IP addresses to identify a particular computer? [closed]

Why did the creators of the Internet Protocol decide to use IP addresses to identify a particular computer? Why not just have a unique ID assigned to each computer upon manufacture, then use that ID ...
10
votes
4answers
970 views

Historical precedent for why Prolog is less popular than SQL in Imperative Programming? [closed]

It seems that writing Declarative SQL is very popular in Imperative Programming. However, it also seems that writing Declarative Prolog could save a lot of complexity but this is not very common. ...
10
votes
3answers
409 views

What is the first published reference to test-first programming?

I am rereading Refactoring by Martin Fowler. In Chapter 4, Building Tests, I came across the following passage. In fact, one of the most usefull times to write tests is before you start programming. ...
9
votes
2answers
1k views

Why can't arrays be passed as function arguments in C?

Following this comment, I've tried to google why, but my google-fu failed. Comment from link: [...] But the important thing is that arrays and pointers are different things in C. Assuming ...
9
votes
3answers
400 views

Where can I read the original C# introduction paper by Microsoft? [closed]

When Microsoft presented .NET Framework and C# language in 2002, what was the first article to introduce C#? I'm looking for some paper published on MSDN or Microsoft website that would explain the ...
9
votes
3answers
669 views

First languages with generic programming support

Which was the first language with generic programming support, and what was the first major staticly typed language (widely used) with generics support. Generics implement the concept of ...
9
votes
2answers
353 views

Why has the accessor methods from the JavaBean specification become the standard for Java development?

The JavaBeans Specification describes a JavaBean as A Java Bean is a reusable software component that can be manipulated visually in a builder tool Since the majority of the lines of code ...
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?
8
votes
5answers
728 views

What is the historical basis of using Javascript in web programming?

I come from a scientific biology background where we also use Python a lot. Now that I've begun to start with Web development, I've consistently found myself wondering just why it is that JavaScript ...
8
votes
3answers
681 views

Have there been disputes when software identifies genders with a boolean? [closed]

I remember that in our first programming class with Java, while explaining data types, the following occurred (kinda): Professor: So, what data type would you choose if your program needs to ...
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, ...
8
votes
2answers
559 views

Why did programming languages start using = for assignment?

In most early algorithms books, <- referred to assignment and = referred to comparison. But nowadays the only languages that don't use = for assignment are Pascal (:=) and toy languages like COOL. ...
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 ...
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 ...
8
votes
1answer
135 views

Why does Apache have two separate tools for build and dependency management?

Apache has two separate tools: Apache Maven Apache Ant + Apache Ivy They seem to both fill the same niche. I have two questions: What are the highlights of the main differences between the two ...
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 ...
7
votes
8answers
941 views

When did developers start making normalized relational databases?

I work on a pretty old application which was converted from DOS and flat files for storing information to Paradox tables using the BDE then to MySQL relational database. The older devs say that the ...
7
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
2answers
305 views

Who first coined the term Higher Order Function and/or First Class Citizen?

I've come to understand that long before Haskell, O'Caml or LISP, higher order functions were an academic research subject and in mathematics, Schönfinkel (in 1967) and Haskell Curry (in 1968) already ...
7
votes
5answers
571 views

Java without implementation inheritance

In a recent video on Java, Joshua Bloch states at 4 minutes 20 seconds into the video: And then there's inheritance, and that was a marketing necessity. You know, we can argue whether you really ...
7
votes
3answers
363 views

Preserving version control commit history vs Refactoring and Documentation

It costs almost nothing to use the commit history maintained by the version control system. However, during a major project refactoring (or reorganization / cleanup) effort, functions and classes and ...
7
votes
2answers
184 views

What are the origins of the Public/Private function declarations?

The Question What are the origins of the Public/Private function paradigm? Background A question came up in chat about Header files in C, and their usage being mainly to help the compiler, not the ...
7
votes
3answers
738 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 ...
7
votes
3answers
300 views

Origin of “a method should return a value or have side-effects, but not both”

I read once that a method should either have a return value (and be referentially transparent), or have side-effect(s), but not both. I cannot find any references to this rule, but want to learn more ...
7
votes
3answers
473 views

Is there a web-specific reason for the design choices behind the JavaScript language?

With the advent of "the web is the platform", JavaScript is fast becoming the most widely used programming language in the world. However, many tasks that are easy to accomplish in other modern ...
7
votes
1answer
420 views

Original source of `(seed * 9301 + 49297) % 233280` random algorithm?

If you search for examples of creating a seeded (pseudo)Random number generator, you will run into stuff like this (specific example http://indiegamr.com/generate-repeatable-random-numbers-in-js/): ...
7
votes
2answers
575 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 ...
7
votes
1answer
2k views

Why is the code section called a text section?

The section of an executable that contains code is sometimes called the .text section. In segmented memory architectures, a segment mapped as code is sometimes called a text segment. The unix error ...
7
votes
1answer
203 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
1answer
466 views

Origin of common list-processing function names

Some higher-order functions for operating on lists or arrays have been repeatedly adopted or reinvented. The functions map, fold[l|r], and filter are found together in several programming ...
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
4answers
4k views

How did programming work when programmers used punchcards?

I saw this: Learning to program on punchcards and I've seen this: http://en.wikipedia.org/wiki/Computer_programming_in_the_punched_card_era but they leave much to be desired. Can anyone explain to ...
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++ ? ...
6
votes
7answers
393 views

Are languages just syntax or do they include the framework too? [closed]

In building a language history for Pascal I noticed that at some point languages changed from a strong line between the language and its common libraries to more of a blurry one. In the first few ...
6
votes
3answers
456 views

What's the first language that had the 'Unless' conditional/loop built into itself?

What's the first (oldest) language that had the 'Unless' conditional/loop built into itself? Where an example could be unless (myVar) == if (!myVar) until (myVar) == while (!myVar)
6
votes
3answers
2k views

Why is Quicksort called “Quicksort”?

The point of this question is not to debate the merits of this over any other sorting algorithm - certainly there are many other questions that do this. This question is about the name. Why is ...
6
votes
4answers
346 views

Why does “charset” really mean “encoding” in common usage?

Something that has long confused me is that so much software uses the terms "charset" and "encoding" as synonyms. When people refer to a unicode "encoding", they always mean a ruleset for ...
6
votes
4answers
434 views

When did the first “REST”-model and friendly URL web technology come to be?

Everyone knows that the "current" way to do things is to have user-readable URLs. Like: http://example.com/blog/edit/1234 Rather than: http://example.com/blog.php?action=edit&id=1234 When ...
6
votes
1answer
226 views

Why was the grave but not the acute accent included in ASCII?

While looking at the Unicode properties (code point, script, block, UTF-8 and UTF-16 encoding, etc.) of some characters, I stumbled upon major differences between ` ("GRAVE ACCENT") and ´ ("ACUTE ...
6
votes
1answer
343 views

The Lisp in Gnu

Since the GNU project is celebrating its anniversary, and the initial announcement for GNU is linked to (http://www.gnu.org/gnu/initial-announcement.en.html) all over the place, I reread it and I ...
6
votes
2answers
443 views

In what specific ways did Delphi influence the C# language

I am specifically looking for language influences (as opposed to framework). At first glance C# seems to be an evolution of C/C++ or Java. But we know C# has the same designer as Delphi, and he even ...