Computer Science Overview, CS 101 – Study Notes
offline

Course: CS 101 | Source: Estimator Skill Overview, Sintasis | Date: October 2026

Difficulty: Introductory

Prerequisites: None. This is a first-year survey of the discipline.

Tags: computer science, CS 101, introduction to computing, subfields of CS, history of computing, algorithms, data structures, AI, software engineering, Babbage, Leibniz, Turing Award

Big Picture

Computer science is the foundational discipline behind nearly every piece of technology you interact with, from your phone to search engines to medical imaging. This topic is the opening chapter of CS 101: a birds-eye tour of what the field covers (its major subfields) and how it got here (its history, from ancient counting tools to the first programmable machines). You do not need any prior computing knowledge. If you are behind in the course, start here, as everything that follows in CS 101 builds on this map of the territory.

TL;DR

Computer science is the study of computation, information, and automation. It spans theoretical work (algorithms, computability) and applied work (building hardware and software). The field's roots stretch back to ancient counting devices and mechanical calculators, with key milestones including Leibniz's binary number system, Babbage's Analytical Engine, and the Jacquard loom's punched-card system.

Key Terms

Computer science

The study of computation, information, and automation, bridging theoretical fields (algorithms, theory of computation, information theory) and applied fields (hardware and software design).

In simple terms, it is the discipline that asks: what problems can a machine solve, how efficiently, and how do we build the machines to do it?

Algorithm

A finite, step-by-step procedure for solving a problem or performing a computation. Algorithms existed long before electronic computers.

Think of it as a recipe: a precise set of instructions that, if followed exactly, produces a guaranteed result.

Data structure

A way of organising and storing data so that it can be accessed and modified efficiently.

In simple terms, if an algorithm is the recipe, the data structure is how you arrange your ingredients on the worktop so you can find them quickly.

Theory of computation (computability theory)

The branch of CS that uses abstract mathematical models to determine which problems are solvable by a computer and how efficiently.

Think of it as the branch that draws the boundary line between "a computer can do this" and "no computer ever will."

Cryptography

The study of techniques for secure communication in the presence of adversaries, including encryption, decryption, and preventing security vulnerabilities.

Artificial intelligence (AI)

The area of CS concerned with building systems that can perform tasks normally requiring human intelligence: problem-solving, decision-making, learning, perception.

Machine learning

A subfield of AI focused on systems that improve their performance on a task through experience (data) rather than being explicitly programmed for every case.

Computer architecture

The design and organisation of a computer's physical components (CPU, memory, I/O) and the way they work together.

Think of it as the blueprint of the machine itself, as distinct from the software that runs on it.

Turing Award

Widely recognised as the highest distinction in computer science, often called the "Nobel Prize of computing." Named after Alan Turing.

Core Content: What Computer Science Covers

Theoretical foundations

  • Algorithm design and data structures: the core toolkit. Every CS subfield depends on them.

  • Theory of computation: formal models of what machines can compute and the limits of computation.

  • Information theory: the mathematical study of quantifying, storing, and communicating information.

Security and communication

  • Cryptography: designing methods for secure communication (encryption, hashing, digital signatures).

  • Computer security: defending systems against attacks and preventing vulnerabilities.

Visual and geometric computing

  • Computer graphics: generating and manipulating visual content (images, animations, video games).

  • Computational geometry: algorithms for solving geometric problems (used in CAD, robotics, GIS).

Languages, data, and interfaces

  • Programming language theory: studying different ways to describe computational processes (paradigms, type systems, compilers).

  • Database theory: how to organise, store, query, and manage large collections of structured data.

  • Human-computer interaction (HCI): designing user interfaces that let people and machines work together effectively.

Building and engineering software

  • Software engineering: principles and practices for designing, building, testing, and maintaining large software systems.

  • Operating systems: the software layer that manages hardware resources and provides services to applications.

  • Networking: how computers communicate with one another (protocols, routing, the internet).

  • Embedded systems: computers built into other devices (cars, medical equipment, appliances).

Hardware

  • Computer architecture: the internal design of computer components and how they are organised.

Intelligence and perception

  • Artificial intelligence (AI): systems that replicate goal-directed human cognitive processes, including problem-solving, planning, and learning.

  • Machine learning: a subset of AI where systems learn from data rather than following hand-written rules.

  • Computer vision: enabling machines to interpret images and video.

  • Natural language processing (NLP): enabling machines to understand and generate human language (text and speech).

The fundamental question

The deep concern of computer science, as a discipline, is determining what can and what cannot be automated. This question runs beneath every subfield listed above.

Core Content: History of Computing

Ancient and early mechanical devices

  • The abacus has been used since antiquity for arithmetic (addition, multiplication, division). Computing did not begin with electricity.

  • Algorithms for performing calculations also predate electronic computers by centuries.

The mechanical calculator era

  • 1623 – Wilhelm Schickard built the first known working mechanical calculator.

  • 1673 – Gottfried Leibniz demonstrated the Stepped Reckoner, a digital mechanical calculator. Leibniz is sometimes considered the first computer scientist and information theorist, partly because he documented the binary number system (though Thomas Harriot had done so decades earlier).

  • 1820 – Thomas de Colmar invented the arithmometer, the first mass-produced mechanical calculator reliable enough for daily office use. This launched the calculator manufacturing industry.

Babbage and the leap to programmability

  • 1822 – Charles Babbage began designing the Difference Engine, a mechanical calculator for polynomial functions.

  • 1834 – Babbage began work on the Analytical Engine, a far more ambitious machine. Within two years he had sketched out many features of the modern computer.

  • A critical innovation was the adoption of a punched-card input system derived from the Jacquard loom, which made the machine programmable in a general sense rather than fixed to one type of calculation.

Real-World Applications

Every subfield maps to something tangible. Cryptography underpins online banking and secure messaging. Computer vision powers facial recognition and medical imaging. NLP is behind every voice assistant and translation app. Database theory is why you can search a library catalogue or an online shop in milliseconds. Understanding these connections is part of what CS 101 is building towards: not just knowing the categories, but seeing where they show up in the world.

Common Misconceptions

  • Students often think computer science is the same as programming. It is not. Programming is one tool within CS, the way a telescope is one tool within astronomy. CS is the broader study of computation itself.

  • Students often think AI is a single technology. It is a family of subfields (machine learning, computer vision, NLP, robotics), each with its own methods and limitations.

  • Students often credit Leibniz as the inventor of the binary number system. He documented it formally, but Thomas Harriot had already done so decades earlier. Exam questions may test this distinction.

  • Students sometimes assume the history of computing begins with electronics. Mechanical calculators and algorithms predate electricity by centuries.

Why It Matters / Exam Flags

⚠️ Be able to name and briefly describe each major subfield of CS (algorithms, data structures, cryptography, AI, machine learning, computer vision, NLP, HCI, software engineering, databases, OS, networking, embedded systems, computer architecture, computational geometry, computer graphics, programming language theory, theory of computation).

⚠️ Know the key historical milestones and their dates: Schickard (1623), Leibniz and the Stepped Reckoner (1673), de Colmar and the arithmometer (1820), Babbage's Difference Engine (1822) and Analytical Engine (1834).

⚠️ Understand why the Jacquard loom's punched-card system was significant: it introduced general-purpose programmability to Babbage's design.

⚠️ The fundamental concern of the discipline: determining what can and cannot be automated.

⚠️ The Turing Award is the highest honour in computer science.

Quick Self-Test

  1. True or false: Computer science began with the invention of electronic computers.
    False. Algorithms and mechanical calculators predate electronics by centuries.

  1. Fill in the blank: The ______ Award is the highest distinction in computer science.
    Turing.

  1. True or false: Machine learning is a subfield of artificial intelligence.
    True.

  1. Fill in the blank: Babbage's Analytical Engine used a ______ system borrowed from the Jacquard loom.
    Punched card.

  1. True or false: Leibniz was the first person to document the binary number system.
    False. Thomas Harriot documented it decades earlier.

Practice Q&A

Q: Define computer science in one sentence.

A: Computer science is the study of computation, information, and automation, spanning both theoretical foundations and applied engineering.

Q: Name three theoretical subfields of computer science.

A: Algorithm design, theory of computation, and information theory.

Q: What was the significance of the Jacquard loom to the history of computing?

A: Its punched-card system was adopted by Babbage for the Analytical Engine, making the machine general-purpose and programmable rather than fixed to one type of calculation.

Q: Who built the first known working mechanical calculator, and in what year?

A: Wilhelm Schickard, in 1623.

Q: What is the fundamental question at the heart of computer science as a discipline?

A: Determining what can and what cannot be automated.

Q: Distinguish between AI and machine learning.

A: AI is the broad area concerned with building systems that perform tasks requiring human-like intelligence. Machine learning is a subfield of AI in which systems learn from data rather than being explicitly programmed.

Q: Why is Leibniz considered a pioneer in computer science? What caveat applies?

A: Leibniz demonstrated the Stepped Reckoner (1673) and formally documented the binary number system. The caveat is that Thomas Harriot had already documented binary decades earlier.

Connections to Other Topics

This overview maps directly to nearly every later topic in CS 101. When you study data structures, you are drilling into one branch of the "theoretical foundations" category here. When you encounter operating systems or networking, you are working within the "building and engineering software" cluster. The history section connects forward to any unit on the Von Neumann architecture or the development of programming languages, both of which build on Babbage's idea of a stored, programmable instruction set.

Related Terms / Search Tags

computer science, CS 101, intro to CS, introduction to computing, what is computer science, subfields of computer science, CS overview, history of computing, history of computers, mechanical calculator, abacus, algorithm, data structure, theory of computation, computability, information theory, cryptography, computer security, cybersecurity, computer graphics, computational geometry, programming language theory, database theory, HCI, human-computer interaction, software engineering, operating systems, networking, embedded systems, computer architecture, artificial intelligence, AI, machine learning, ML, computer vision, natural language processing, NLP, speech processing, Turing Award, Alan Turing, Wilhelm Schickard, Gottfried Leibniz, Stepped Reckoner, binary number system, Thomas de Colmar, arithmometer, Charles Babbage, Difference Engine, Analytical Engine, Jacquard loom, punched cards, programmable computer, automation, computation