Early Programming: Crash Course Computer Science #10

Early Programming: Crash Course Computer Science #10

New Section

In this section, Carrie Anne introduces the topic of how programs get into a computer and discusses the historical development of programming.

The Need for Programming Machines

  • Textile manufacturing required periodic reconfiguration of looms to create patterned fabrics.
  • Joseph Marie Jacquard developed a programmable textile loom using punched cards to define patterns.
  • Punched cards became an early form of programming and a cheap way to store data.

Punch Cards in Census Tabulation

  • Punch cards were used in the 1890 census to store individual person's data.
  • Each card held information like race, marital status, number of children, etc.
  • Tabulating machines processed the punch cards and provided running totals for each question.

Plug Boards and Swappable Programming

  • Early business machines used plug boards for programming.
  • Programmer accessed a control panel with sockets to pass values and signals between machine parts.
  • Plug boards were made swappable in the 1920s, allowing different programs to be plugged into a machine.

Challenges of Plug Board Programming

  • Wiring up plug boards was time-consuming and complicated.
  • Eniac, the first general-purpose electronic computer, also used plug boards extensively.
  • Physically wiring up Eniac could take weeks even after figuring out the program on paper.

Stored-program Computers

  • Electronic memory became feasible by the late 1940s and 1950s.
  • Programs could be stored entirely in a computer's memory instead of physical plug boards.
  • Stored-program computers allowed for easy changes by programmers and quick access by CPUs.

This summary provides an overview of the transcript content related to how programs get into a computer.

New Section

This section discusses the hallmarks of a von Neumann computer and the use of punch cards for programming and data storage.

Von Neumann Computer Architecture

  • A von Neumann computer consists of a processing unit with an arithmetic logic unit, data registers, an instruction register, and an instruction address register.
  • It also includes a memory to store both data and instructions.
  • The first von Neumann architecture stored program computer was constructed in 1948 by the University of Manchester, known as "Baby".
  • This architecture is still used in modern computers today.

Punch Cards for Programming

  • Punch cards were commonly used until the 1980s to load programming data into computers.
  • A punch card reader would write the contents of each card into the computer's memory sequentially.
  • Programs were stored as stacks of punch cards, which could be time-consuming to reorder if they were accidentally dropped.
  • The US Air Force's sage air defense system had the largest program ever punched into punch cards, consisting of 62,500 cards.

New Section

This section explores how punch cards were used for programming and data storage.

Programming Data in Memory

  • Once programming data was loaded into memory, the computer could be instructed to execute it.
  • Programs were stored as stacks of punch cards containing hundreds of instructions.
  • To avoid confusion when reordering dropped programs, programmers often drew diagonal lines on the side of the card stack called striping.

Punch Cards for Data Storage

  • Punch cards were not only used for inputting programs but also for outputting results from computer memory onto new punch cards.
  • Punched paper tape was another form of continuous punched media similar to punch cards.

New Section

This section discusses panel programming and the early home computers that used switches for programming.

Panel Programming

  • Panel programming involved using large panels filled with switches and buttons to program and control computers.
  • Indicator lights displayed the status of various functions and values in memory.
  • While it was rare to input a whole program using just switches, early home computers made for hobbyists extensively used switches due to the cost of peripherals like punch card readers.

Altair 8800 Home Computer

  • The Altair 8800 was the first commercially successful home computer, available preassembled or as a kit.
  • The kit version, popular among computing enthusiasts, sold for $400 in 1975.
  • To program the Altair 8800, users would toggle switches on the front panel to enter binary Op codes for instructions and deposit them into memory.

New Section

This section highlights the challenges of early computer programming and introduces the need for simpler ways to write programs.

Programming Challenges

  • Early computer programming required intimate knowledge of hardware details such as processor Op codes and register widths.
  • It was considered hard and tedious even for professional engineers and scientists.

Simplifying Programming

  • There was a need for a simpler way to write programs that didn't require deep knowledge of hardware details.
  • This led to the development of programming languages, which will be discussed in the next episode.

Coma Niddy and PBS Infinite Series

This episode was filmed at the Chad and Stacey Emigholz studio in Indianapolis, Indiana. It was made with the help of all these nice people and our wonderful graphics team is Thought Cafe.

Introduction

  • Coma Niddy and PBS Infinite Series collaborate on this episode.
  • Filmed at the Chad and Stacey Emigholz studio in Indianapolis, Indiana.
  • Made with the assistance of various individuals.
  • Graphics team: Thought Cafe.

No specific timestamps are provided for this section.

Playlists: Computer Science
Video description

Since Joseph Marie Jacquard’s textile loom in 1801, there has been a demonstrated need to give our machines instructions. In the last few episodes, our instructions were already in our computer’s memory, but we need to talk about how they got there - this is the heart of programming. Today, we’re going to look at the history of programming and the innovations that brought us from punch cards and punch paper tape to plugboards and consoles of switches. These technologies will bring us to the mid 1970s and the start of home computing, but they had limitations, and what was really needed was an easier and more accessible way to write programs - programming languages. Which we’ll get to next week. Produced in collaboration with PBS Digital Studios: http://youtube.com/pbsdigitalstudios Want to know more about Carrie Anne? https://about.me/carrieannephilbin Want more Crash Course in person? We'll be at NerdCon: Nerdfighteria in Boston on February 25th and 26th! For more information, go to http://www.nerdconnerdfighteria.com/ The Latest from PBS Digital Studios: https://www.youtube.com/playlist?list=PL1mtdjDVOoOqJzeaJAV15Tq0tZ1vKj7ZV Want to find Crash Course elsewhere on the internet? Facebook - https://www.facebook.com/YouTubeCrashCourse/ Twitter - http://www.twitter.com/TheCrashCourse Tumblr - http://thecrashcourse.tumblr.com Support Crash Course on Patreon: http://patreon.com/crashcourse CC Kids: http://www.youtube.com/crashcoursekids