For questions about the history of programming and computing.

learn more… | top users | synonyms

70
votes
9answers
28k views

Why did Alan Kay say, “The Internet was so well done, but the web was by amateurs”?

OK, so I paraphrased. The full quote: The Internet was done so well that most people think of it as a natural resource like the Pacific Ocean, rather than something that was man-made. When was the ...
-1
votes
0answers
50 views

When did Agile Development Life Cycle start taking off? [on hold]

When did the ADLC really start taking off and become "mainstream", ie: more than just a 'few' development teams were working within it?
2
votes
2answers
48 views

What is the origin of the tag property in UI toolkits?

I've seen the tag property in all UI frameworks I worked with: UIKit, Forms, OpenStep, even Delphi 6. Was it in the original Macintosh Toolbox or Xerox's framework? WhAt was the original idea behind ...
8
votes
2answers
476 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. ...
0
votes
2answers
112 views

Origin of naming generic types as T? [closed]

I've noticed that most people use the name T for generic types, instead of any other names. What's the origin of this convention? And.. why T (for type)? why not TYPE or Variable or any other name? ...
0
votes
1answer
96 views

What is the name/origin for this C code indentation style?

Look at the following code. Specifically, at the formatting of the variable declarations. I haven't encountered this indentation style in the past, but lately I stumbled upon two different code ...
34
votes
4answers
3k views

Why structs and classes are separate concepts in C#?

While programming in C#, I stumbled upon a strange language design decision that I just can't understand. So, C# (and the CLR) has two aggregate data types: struct (value-type, stored on the stack, ...
0
votes
1answer
128 views

Origin of the “array” term in computer science [closed]

Starting from this wikipedia page, and exploring the linked pages, I have tried to find the origins of the word "array" in the context of computer science. I have so far come nowhere, and am pursuing ...
11
votes
2answers
4k views

Why does C use the asterisk for pointers?

I'm just now learning about C. I find it odd that the creators chose the asterisk (*) as the symbol for pointers rather than a symbol that actually looks like a pointer (->). Considering how ...
1
vote
0answers
179 views

Why do all browser user agent strings begin with 'Mozilla/5.0'? [closed]

I recently had to investigate quite long list of user agent names from different devices, and what surprised me is that all those strings begin with 'Mozilla/5.0'. There had to be something special ...
4
votes
3answers
3k views

C Flexible Arrays: When did they become part of the standard?

I learned to program in C many years ago, and used C steadily for about 10 years. These days, I occasionally have to look at C code, because our Informix 4GL RDS customized runners also contain C ...
34
votes
6answers
14k 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, ...
41
votes
15answers
10k views

How have languages influenced CPU design? [closed]

We are often told that the hardware doesn't care what language a program is written in as it only sees the compiled binary code, however this is not the whole truth. For example, consider the humble ...
4
votes
2answers
291 views

How did people write end-user software in Smalltalk?

There is something I've never understood about Smalltalk, since reading about it in a book when I was a child, tho' I have never used it "in anger". I know that it is turtles-all-the-way-down, that ...
-3
votes
3answers
172 views

Are there any programming languages that don't descend from C? [closed]

I mean descend as in languages who's original compiler/interpreter was written in C or in a language that descends from C. If you don't count assembly, the only thing that comes to my mind is B. Are ...
17
votes
1answer
1k views

Books and stories on programming culture, specifically in the 80's / early 90's [closed]

I've enjoyed a number of (fiction/non-fiction books) about hacker culture and running a software business in the 80's, 90's. For some reason things seemed so much more exciting back then. Examples ...
3
votes
5answers
976 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 ...
-2
votes
1answer
160 views

Why are mostly 9999, 99999… are used for making comparisons [closed]

I (I am sure everyone else also) have always seen comparisons of some value to 999 or 9999 .... etc. for e.g.: in CSS z-index: 9999 or some times str.length < 99999 I wonder if there is some ...
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 ...
2
votes
5answers
567 views

Why lambda/closures expressions came so late to C++?

I was reading a really great Bjarne Stroustrup's article where he exposes some C++ myths. I look at code that focus my attention, because I wouldn't know that C++ supports this kind of expressions. ...
5
votes
2answers
268 views

Where did the three tenets of OOP originate

It is easy to find the origin of the term OOP coined by Alan Kay when he created Smalltalk, but I can't find if when creating the language he also created the 3 tenets of OOP (Encapsulation, ...
3
votes
3answers
150 views

Why is Win32 API's WM_MOVE being called while dragging the window?

I have two callbacks for WM_MOVE and WM_MOVING. Oddly enough, WM_MOVE is being called while dragging the window. I expected WM_MOVE to be called only when I'm done dragging the window. MSDN says that ...
300
votes
9answers
74k 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?
10
votes
4answers
832 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. ...
0
votes
1answer
46 views

How can I determine which version of Python introduced a particular module to the std lib? [closed]

Is there a single timeline-style resource available showing the history of the modules available in different versions of Python? I'd like to, for instance, easily determine which version of Python ...
5
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 ...
6
votes
1answer
317 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 ...
0
votes
1answer
199 views

Why does GCC use AT&T syntax by default?

I think title says it all :) Is there any particular practical reason (I guess it's mostly historic, but I'm unable to find it on my own) why GCC uses AT&T/GAS syntax? Note: I know this is just ...
7
votes
1answer
320 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/): ...
1
vote
1answer
110 views

Why are Apache 2.0 works excluded from OpenBSD?

From http://www.openbsd.org/policy.html The original Apache license was similar to the Berkeley license, but source code published under version 2 of the Apache license is subject to additional ...
20
votes
2answers
2k views

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

Many people use the term Snake Case to describe variables or other symbols with_the_form_of_underscores. In the past week, I've launched several broad searches. I can't find anything about the origin ...
38
votes
9answers
7k views

What did people do before templates in C++? [duplicate]

I am not new to programming, but I am one that started a few years ago, and I do love templates. But in the before times, how did people deal with situations where they needed compile-time code ...
3
votes
9answers
433 views

Why were punch cards used for programming

I am doing a research essay on the history of programming languages, and I was wondering, why did programmers ever write their programs on punch cards? Didn't computer screens and keyboards already ...
14
votes
2answers
1k views

Why is the Unix linker called “ld”

Tried to search the web and couldn't find an answer. It might have something to do with "load", but that doesn't make much sense to me. Obviously, "ln" was already taken, but where does that "d" come ...
65
votes
10answers
10k views

Why was the first compiler written before the first interpreter?

The first compiler was written by Grace Hopper in 1952 while the Lisp interpreter was written in 1958 by John McCarthy's student Steve Russell. Writing a compiler seems like a much harder problem than ...
2
votes
3answers
179 views

How was the system clock first used in early computers?

This question is about the clock that keeps current time, not about the signal that sequences the circuitry (the wall clock, not the metronome). First computers were pure calculators, just very ...
-2
votes
1answer
188 views

Who first used the phrase “Those who only live by the GUI, will die by the GUI” [closed]

I have heard a similar quote several times, as either "Live by the GUI, die by the GUI" or "Those who only live by the GUI, will die by the GUI". The first time I heard this was in an ...
0
votes
4answers
906 views

Why was Fortran never used to develop an Operating System?

I'm not a Fortran developer myself, but I'm about to use it a little and found myself wondering why, if it is much older than C but equally as performant as C, was it never used to develop any ...
1
vote
1answer
276 views

Which programming language first came up with the finally block?

Which programming language first came up with the finally block? I ask purely out of curiosity. It is a very useful piece of syntactic sugar, and whoever first created it surely has a very ...
55
votes
10answers
19k 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 ...
3
votes
1answer
384 views

Why did Shannon's outguessing machine beat Hagelbarger's?

I'm reading "Rock Breaks Scissors", which describes two "outguessing machines" built at Bell Labs that try to exploit human non-randomness in the game of matching pennies. There was an outguessing ...
5
votes
4answers
318 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 ...
9
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 ...
21
votes
3answers
2k views

“Ever change the value of 4?” - how did this come into Hayes-Thomas quiz?

In 1989 Felix Lee, John Hayes and Angela Thomas wrote a Hacker's test taking the form of a quiz with many insider jokes, as “Do you eat slime-molds?” I am considering the following series: 0015 Ever ...
3
votes
0answers
400 views

Why does the .NET framework have no concept of classes as first-class types?

It's well known to those familiar with the history that C# and the .NET framework started out as essentially "Delphi rewritten to feel like Java," architected by the chief developer behind Delphi, ...
17
votes
1answer
715 views

Where did the notion of 'calling' a function come from?

I've always wondered why one calls a function as opposed to, for example, executing it. A Google search for function call etymology and similar terms turns up nothing useful, Wikipedia doesn't ...
27
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 being bad. Where did this term, which has such powerful ...
14
votes
5answers
3k views

In what programming language did “let” first appear?

I was wondering about the origins of the "let" used in Lisp, Clojure, and Haskell. Does anyone know which language it appeared in first?
2
votes
1answer
244 views

Origin of letter “X” for close icon

Who exactly presented the idea that letter "X" should be used for closing/exiting a window or an application? According to Medium.com, The first appearance of [x] in GUI design was likely the ...
0
votes
2answers
115 views

Should you avoid adding unecessary stack frames?

I have been working with laravel (PHP) recently, and there is an option when using their fluent ORM to define where clauses using closures. This gives us two, functionally equivalent, ways to specify ...