Programmers, let's study the sources of classic programs

Modern programmers are lucky: we live in a world in which historical and significant programs have open source code that is available for study. However, many programmers are just learning, and study those programs that they work on themselves. We rarely have time to study historical works, and programming courses rarely spend time on such things.

We believe that developers should study the source code of programs that have had a big impact, just as architects study buildings that have influenced architecture (and criticize them). Rather than repeating the same mistakes over and over, we must study the great work done before us and learn from it.

Ideally, we should study the source codes of great programs with comments and criticism, which gives us information about the context of the project, its strengths and weaknesses. Such comments are rare, but here are a few starting points:

  • Doom 3, a game often praised for its exceptional code design


Doom 3 Source - An Overview of the Source
Exceptional Beauty of Doom 3 Source Code

  • Apollo 11 Guidance Computer

Source
The Virtual AGC Project - sources of various Apollo missions, documentation and simulators.
Virtual AGC - sources
The Apollo Guidance Computer: a kind and soft introduction
AGC - document library
Apollo Guidance Computer: architecture and principle of operation
Your smart toaster is not worthy to hold a candle on the Apollo computer

  • " " , .


  • DOOM ()


: DOOM
DOOM’

  • Wolfenstein 3D

Source
Black book of the game engine: Wolfenstein 3D

You can also find the source code of the programs that you used in the past. It is important to start with programs that you are familiar with, and you can link their functions to the source code. Here are the resources you can use to find and explore the historical sources:

The Historical Source Organization : The GitHub repository currently contains an archive of 143 programs. Many of these are once popular games that you may have played.

The site "The black book of the game engine " contains a detailed analysis of the Doom and Wolfenstein 3D engines, with source codes.

The NASA software catalog contains over 1000 software projects available to the public.

The Museum of Computer History collection contains sources of historical programs. Here is a selection from their collection of historical source codes:
Adobe Photoshop
Microsoft Word for Windows version 1.1a
Xerox Alto OS and related utilities
Early version of Digital Research CP / M OS
Source code for an earlier version of Microsoft MS-DOS
Apple II DOS
Many people played with the Furby toy source codes are available:
PDF
Furby
sources The source codes of the original SimCity (also known as Micropolis) are available for download
(approx. pere: the link in the original is no longer available, here is the link to the github: https://github.com/SimHacker/micropolis )

All Articles