Programming

Python Introduction

Ada Lovelace: world's first computer programmer

Often considered the first computer programmer, Lovelace was a mathematician who worked with Charles Babbage on his Analytical Engine. She recognized the machine's potential beyond mere calculation and wrote the first algorithm intended to be processed by a machine. Her notes on the Analytical Engine included concepts like loops and conditional branching, which are fundamental to programming.

Python Intermediate

Charles Babbage

Although he didn't fully build his theoretical computers (the Difference Engine and the Analytical Engine), Babbage conceived of many key principles of modern computers. The Analytical Engine, in particular, was designed with an arithmetic logic unit, memory, and input/output mechanisms, and it was intended to be programmable using punched cards.

Python Advanced

Alan Turing aged 16

Ever heard of the "Turing Test"? That's just one mind-blowing idea from Alan Turing, a true codebreaking superhero during World War II. His work at Bletchley Park was crucial in cracking Nazi Germany's Enigma code – talk about high stakes! But Turing's genius went way beyond wartime. He laid the theoretical groundwork for modern computers with his concept of the "Turing Machine," a simple yet powerful abstract model of computation. Think of him as one of the ultimate thinkers behind everything digital.

Human Computer Interaction

John von Neumann

This guy was a true intellectual powerhouse! John von Neumann, a brilliant mathematician and physicist, didn't just build computers; he fundamentally shaped how we think about them. He's credited with formalizing the "stored-program concept," the idea that instructions for the computer should be stored in the same memory as the data. This "von Neumann architecture" is the basis for most computers we use today. His insights were crucial in the development of early machines like ENIAC and EDVAC.

Robotics

John Backus

Imagine trying to tell a computer what to do using only numbers and cryptic commands. That was the reality before John Backus and his team at IBM developed FORTRAN. Released in the 1950s, FORTRAN (short for FORmula TRANslation) was the first widely adopted high-level programming language. It allowed scientists and engineers to write code using something closer to mathematical formulas, making their lives a whole lot easier. Backus also invented the Backus-Naur Form (BNF), a standard way to describe the grammar of programming languages – pretty fundamental stuff!

Computer Graphics

Guido van Rossum: the developer of Python

Fast forward a few decades, and we have Guido van Rossum, the creator of Python. You might have even heard of it – it's a super popular programming language known for its readability and versatility. Van Rossum started working on Python in the late 1980s as a "hobby project" during his Christmas break! His goal was to create a language that was both powerful and easy to learn and use. Python's clean syntax and extensive libraries have made it a go-to for everything from web development to data science.

JavaScript

Self portrait by Christopher Strachey

Instead of a traditional biography, consider this glimpse into the innovative spirit of Christopher Strachey, a significant yet sometimes overlooked British computer scientist. Beyond his theoretical work on programming languages, Strachey was also an early explorer of computer art. In the 1960s, while working at the University of Cambridge, he ingeniously programmed a computer to generate a "pencil sketch" of his own face. This wasn't interactive drawing as we know it; rather, his code instructed an early graphical output device, likely a plotter, to create lines and shading that mimicked the effect of a hand-drawn picture.

This seemingly simple image is a powerful testament to the nascent field of computer art, demonstrating a playful yet pioneering approach to these new machines. It highlights Strachey's vision beyond purely scientific applications, showcasing his understanding of the creative potential inherent in computation. The resulting stylized portrait, a product of the hardware and algorithms of its time, offers a unique and tangible connection to the early days of digital creativity, making Strachey a fascinating figure who bridged the gap between theoretical computer science and artistic expression.