MGU Computer Science Series — Computer Science Foundations
Part I: What Computer Science Studies
Computation · Algorithms · Data · Systems · Responsibility
Chapter 1 of 28
1
MGU Computer Science Series  ·  Computer Science Foundations  ·  Library Textbook Edition

Chapter 1:
What Computer Science
Studies

A map of the field — computation, information, algorithms, hardware, software, networks, automation, and the human responsibility that runs through all of it

■ Part I of VII ■

■ 9 Sections  •  Chapter 1 of 28 ■

Gateway chapter — no prior programming, calculus, or technical background required

Chapter Introduction and Learning Objectives

When most people hear the words "computer science," they picture someone writing code on a screen. That picture is not wrong — programmers do write code. But it is far too small. Computer science is one of the broadest and most consequential fields of human knowledge. It shapes how doctors diagnose disease, how engineers design bridges, how musicians distribute albums, how governments manage elections, how banks protect savings, how satellites navigate spacecraft, and how you receive a text message in under a second from ten thousand kilometers away.

This chapter opens the door to that larger picture. Before you write a single line of code, before you learn what a variable is or how a network routes a packet, you need a map of the territory. You need to understand what computer science actually studies, where it came from, how it connects to the world you live in, and how to approach it as a serious student. That is exactly what this chapter provides.

Opening Question

A city wants to know the fastest route between any two intersections in its road network. A hospital needs to match organ donors with compatible patients across a region. A streaming service wants to recommend a film you will probably enjoy. A bank needs to detect a fraudulent transaction among millions of ordinary ones — in real time. What do these four problems have in common? Each one is solved by computation: a precise procedure that takes information as input, follows defined steps, and produces a useful result. By the end of this chapter, you will have the vocabulary and the mental map to understand what that means.

9Sections
12Objectives
17Key Terms
28Total Chapters

Learning Objectives

By the end of this chapter, you should be able to:

  1. 1Explain what computer science studies and why it is broader than programming alone.
  2. 2Define computation and explain why it is an abstract, logical process independent of any particular machine.
  3. 3Distinguish between computing, computers, and computation.
  4. 4Explain the difference between digital and analog information.
  5. 5Define algorithm and distinguish it from a program.
  6. 6Explain why the choice of algorithm matters, using a concrete example.
  7. 7Describe the three fundamental layers of a computing system: hardware, software, and networks.
  8. 8Define automation and explain its significance for information work.
  9. 9Name at least four areas of daily life where computing plays an important role.
  10. 10Describe at least two benefits and two risks of computing systems.
  11. 11Explain four kinds of responsibility that computer scientists bear: technical, ethical, social, and civic.
  12. 12Apply effective habits for studying computer science: active tracing, vocabulary building, and connecting theory to application.

Sections at a Glance

Sections 1.1 – 1.3
The Territory: What CS Studies, What Computers Are, What Information Is
Computation · Data · Digital Representation · Bits

What Computer Science Studies

The word "science" in "computer science" sometimes confuses students. Physics studies matter and energy. Biology studies living organisms. Chemistry studies substances and reactions. What does computer science study?

Computer science studies computation — the process of following instructions to transform information. When you add two numbers, you are computing. When a search engine finds the ten most relevant pages for your query, it is computing. When a hospital database matches a patient's symptoms against thousands of records, it is computing.

Computation is not just arithmetic. It is any systematic process that takes information as input, follows a defined procedure, and produces a result. Computer scientists want to understand what kinds of computations are possible, how to design them efficiently, how to express them clearly, how to build machines that perform them reliably, and how to use them responsibly. Here is a more complete picture of what computer science studies:

Thread 1
Computation and Algorithms
What problems can be solved by following precise steps? How do we design those steps? How do we know they are correct? How efficient can we make them?
Thread 2
Information and Representation
How do we encode numbers, text, images, sound, and video so a machine can store and process them? How much information can we represent with limited resources?
Thread 3
Programs and Languages
How do we express instructions clearly enough that a machine can follow them? What languages have people designed for this purpose? How do we write programs that are correct, efficient, and readable?
Thread 4
Hardware and Systems
What physical machines perform computation? How do processors, memory, storage, and input/output devices work together?
Thread 5
Networks and Communication
How do computers exchange information? How does the internet work? How do protocols ensure messages arrive correctly?
Thread 6
Data
How do we store large collections of information? How do we search, sort, filter, and analyze data? How do we build databases?
Thread 7
Security
How do we protect systems, data, and communications from unauthorized access, theft, and damage? How do we identify and respond to threats?
Thread 8
Artificial Intelligence
How do we build systems that recognize images, understand language, make recommendations, and detect patterns — tasks that normally require human judgment?
Thread 9
Human-Computer Interaction
How do people use computing systems? How do we design interfaces that are usable, accessible, and trustworthy?
Thread 10
Ethics and Society
How does computing affect individuals, communities, and institutions? What responsibilities come with building powerful systems?

All ten threads run through this textbook. You will study them in turn, and you will begin to see how they connect. A search engine, for example, depends on algorithms for ranking results, data structures for storing the web, networks for fetching pages, hardware for handling billions of queries, interfaces for displaying results, security for protecting user accounts, machine learning for understanding queries, and ethical choices about what to show and what to omit. Computer science is woven through all of it.

Study Note

Computer science is not simply "learning to code." Programming is one of the most important skills in the field — and this book teaches programming foundations — but the field is much larger. Programmers who understand the broader landscape make better decisions than those who know only syntax.

Computing, Computers, and Computation

These three words are related but distinct. Understanding them clearly is worth a moment of careful attention.

Computing is the activity — the process of following instructions to process information. A computer is a machine that performs computing. Computation is the more abstract concept — the transformation of information according to rules, independent of any particular machine or material.

A Key Insight from Alan Turing

In the 1930s, mathematician Alan Turing showed that a very simple abstract machine — now called a Turing machine — could, in principle, compute anything that any physical computer can compute. This insight means that computation is a logical process, not a physical one. What matters is the procedure, not the machine carrying it out. The same computation can be performed by a modern laptop, a calculator, or a person with pencil and paper — provided they follow the right steps and have enough time. This abstraction is foundational to everything in this book.

The word "computer" is younger than you might think. For most of history, a "computer" was a person — a human being who performed calculations by hand. During World War II, rooms full of human computers calculated artillery trajectories. By the late 1940s, electronic machines had taken over the name. Today, computers come in many forms:

Kind of ComputerDescriptionExamples
General-purpose machinesRun many different programs; managed by the userLaptops, desktops, tablets
SmartphonesPocket-sized computers with touchscreens, cameras, sensors, and constant network connectionsiPhone, Android phones
ServersPowerful machines in data centers that store websites, process requests, and run cloud servicesWeb servers, database servers
Embedded computersTiny processors built into appliances, vehicles, and industrial machineryCar engine controllers, thermostats, medical devices
SupercomputersEnormous machines for problems requiring extraordinary processing powerClimate models, particle physics simulations
WearablesComputers worn on the bodySmartwatches, fitness trackers, hearing aids
Network devicesComputers that manage the flow of data across networksRouters, switches, firewalls

Every one of these machines performs computation. Every one stores and processes information according to instructions. Every one is studied, at some level, by computer science.

Information, Data, and Digital Systems

Computer science is, at its heart, about information. Information is anything that reduces uncertainty. When you ask whether it will rain tomorrow and someone tells you "yes," that answer gives you information. Data is information that has been recorded in some form — a temperature reading, your name, the pixels in a photograph, the words in a document.

Digital data is information represented using discrete values — typically the digits 0 and 1. The word "digital" refers to counting with discrete units. In computing, it means that all information is encoded as patterns of binary digits, called bits.

Digital vs. Analog — Side by Side
Understanding the core distinction
  • AnalogA traditional thermometer shows temperature as a continuous column of mercury. The height can take any value — 22.3°, 22.31°, 22.311°... There is no smallest unit; the value is continuous.
  • DigitalA digital thermometer displays 22.3°. It has taken the continuous real-world signal, sampled it, and rounded to a fixed number of decimal places. Some information is lost in that rounding, but the result is something a computer can store and process exactly.
  • Why it mattersModern computers are digital machines. Almost all information we care about — music, photographs, video, text, measurements, maps, financial records — is stored in digital form, as patterns of 0s and 1s. Chapter 4 explains in detail how this encoding works.

Why Digital Representation Has Extraordinary Properties

PropertyWhat It MeansWhy It Matters
Perfect copiesA copied digital file is identical to the original, bit for bitA photocopy of a photo loses quality; a digital copy does not
Compact storageBillions of bits fit on a chip smaller than a thumbnailAn entire library can be carried in a pocket
Reliable transmissionError-checking allows data to travel across networks and be reconstructed correctlyMessages arrive intact even over imperfect connections
Fast processingModern processors perform billions of operations per secondTasks that would take years by hand run in milliseconds
EncryptionDigital information can be mathematically scrambled so only authorized parties can read itSecure banking, private communication, protected records

These properties explain why the world has converted almost all information storage and communication to digital form. Records, films, books, medical images, telephone calls, bank transactions — all of it lives in digital form, processed by computers.

Sections 1.4 – 1.6
The Tools: Algorithms, Systems, and Automation
Algorithms · Programs · Hardware · Software · Networks · Automation

Algorithms and Programs

Two concepts are central to everything in computer science: algorithms and programs. They are related, but they are not the same thing.

An algorithm is a precise, step-by-step procedure for solving a problem or performing a task. An algorithm has a beginning, a set of clearly defined steps, and an end. Given the same input, a correct algorithm always produces the same output.

You already know many algorithms, even if you have never used that word. A recipe is an algorithm. The long-division procedure you learned in school is an algorithm. The process of looking up a word in a printed dictionary — starting in the middle, deciding whether to go left or right, repeating — is an algorithm for searching.

A program is an algorithm expressed in a language that a computer can understand and execute. Programs translate the logical steps of an algorithm into instructions a machine can follow precisely.

The Key Distinction

An algorithm is the idea. A program is the implementation. The same algorithm for sorting a list alphabetically can be expressed in Python, Java, C, Rust, or any other language. The algorithm is language-independent; the program is not. Understanding this distinction will help you throughout this book: when you learn a new idea, ask yourself whether it is about the algorithm (the what and why) or the program (the how in a specific language).

Why Algorithm Choice Matters Enormously

One of the most important insights in computer science is that two correct programs solving the same problem can differ in performance by extraordinary amounts. Consider searching for a name in a list of a million names.

Example 1.4.1
Two algorithms for the same problem — a dramatic difference
  • ProblemFind a specific name in a list of one million names sorted alphabetically.
  • Algorithm A: Linear SearchCheck each name from the beginning, one at a time, until you find the right one. In the worst case, you check all one million names. Average: 500,000 checks.
  • Algorithm B: Binary SearchCheck the name in the middle of the list. Is your target earlier or later alphabetically? Discard the half where it cannot be. Repeat on the remaining half. Each step halves the problem. After just 20 steps, you have narrowed one million candidates down to one.
  • The differenceLinear search: up to 1,000,000 comparisons. Binary search: at most 20 comparisons. The same problem; a different algorithm; a difference of 50,000×. Multiply this across billions of searches per day, and it is the difference between a system that responds in milliseconds and one that would take minutes.
Looking Ahead

Algorithm design and analysis is a core area of computer science. Part III of this book (Chapters 11–14) introduces data structures, searching, sorting, and efficiency in depth. For now, the key idea is that the right algorithm is not just faster — it can make problems that would otherwise be impossible become tractable.

Hardware, Software, and Networks

Any computing system involves three fundamental layers that work together: hardware, software, and networks. Understanding these layers — and how they relate — is one of the most useful mental models in all of computer science.

Hardware

Hardware refers to the physical components of a computer — the parts you can touch. The processor (CPU, or central processing unit) carries out computations. Memory (RAM, or random access memory) holds data and instructions temporarily while the processor works. Storage (hard drives, solid-state drives, flash memory) holds data persistently — it remains when the power is off. Input devices bring information in: keyboard, mouse, microphone, camera, sensors. Output devices carry information out: screen, speakers, printer.

Hardware is extraordinarily fast, but it is also dumb. A processor does exactly what it is told — nothing more and nothing less. Its power comes entirely from the instructions it receives.

Software

Software refers to the programs and instructions that tell hardware what to do. Without software, hardware is an expensive collection of circuits. Software gives hardware purpose. Software exists at several levels:

LevelDescriptionExamples
Application softwarePrograms that users interact with directly to accomplish tasksWord processors, web browsers, games, email clients
Operating systemSystem software that manages hardware and provides services to applicationsWindows, macOS, Linux, Android, iOS
Libraries and frameworksReusable components that programmers build on top ofPython's standard library, React, TensorFlow
FirmwareSoftware permanently embedded in hardware devices, controlling their basic operationBIOS, router firmware, printer firmware

Networks

Networks connect computing systems so they can share information. A network is any collection of computing devices that can communicate with each other. Your home Wi-Fi network, a university campus network, and the global internet are all networks at different scales.

Networks transform isolated computers into connected systems. Without networks, your computer could only work with information already on its own storage. With networks, it can access information from anywhere on earth — or in space — in fractions of a second. This seemingly simple capability — connecting machines so they can share data — is the foundation of the modern digital economy, social media, remote work, streaming, e-commerce, and much more.

A Key Idea: Layers

The hardware/software/network model is an example of a larger principle that appears throughout computer science: layered design. Complex systems are built in layers, where each layer provides services to the layer above it and uses the services of the layer below. Each layer hides the details of how it works from the layers above. This idea — called abstraction — is one of the most powerful organizing principles in the field. You will encounter it in every part of this book.

Automation and Problem Solving

One of the most powerful things computers do is automate work — that is, perform tasks automatically, repeatedly, and consistently, without human intervention for each step. Automation is valuable because humans are slow, inconsistent, and tire easily. A human accountant can process perhaps a few hundred returns in a day; a well-designed automated system can process millions. A human quality inspector might miss a defect after hours of repetitive checking; a camera system running an image-recognition algorithm catches the same defect in milliseconds, every time.

Automation is not new. Windmills, waterwheels, and mechanical looms all automated physical labor. What computers automate is information work — reading, writing, sorting, searching, deciding, communicating, calculating, and analyzing. The scale of this automation is extraordinary and growing.

Understanding automation is important not only technically but socially. When computers automate information work, they change what jobs exist, what skills are valued, and how organizations function. Chapter 28 returns to automation, work, and social responsibility.

Problem Solving as a Discipline

Computer science is fundamentally a problem-solving discipline. Computer scientists spend their careers designing algorithms to solve problems, building programs to implement those algorithms, creating systems to run those programs reliably, connecting those systems so they can share information, securing those connections against attack, analyzing the data flowing through them, designing interfaces for humans to use them, and reasoning about the consequences.

Every step involves problem solving. And the habits of problem solving that computer science teaches — breaking a problem apart, making assumptions explicit, testing your reasoning, looking for efficiency, and anticipating failure — are valuable far beyond computing.

Sections 1.7 – 1.9
The Context: Daily Life, Responsibility, and How to Study
Computing in Society · Benefits and Risks · Studying Well

Computer Science in Daily Life

It is difficult to find any area of modern life that computing has not changed. This section gives a sense of the breadth — not to overwhelm, but to motivate. The systems you study in this book are not abstract exercises. They are the infrastructure of the world you live in.

DomainHow Computing Is Used
Medicine and health Electronic health records, diagnostic imaging (X-ray, MRI, CT), genomics research, drug discovery via molecular simulation, remote patient monitoring, AI-assisted diagnosis
Transportation GPS navigation, air traffic control, route optimization for delivery, self-driving vehicle research (computer vision, sensor fusion, real-time control)
Finance Processing millions of transactions per day, algorithmic trading, real-time fraud detection, credit scoring, cryptocurrency verification
Education Learning management systems, adaptive learning platforms, digital libraries, simulation tools, language-learning apps with spaced repetition
Entertainment and media Streaming recommendation algorithms, real-time 3D game rendering, digital animation, music production, social media content curation
Science and research Climate models, particle physics simulations, genome sequence alignment, astronomical image processing, materials science modeling
Government and public services Tax and benefits management, census analysis, emergency dispatch routing, weather forecasting, election administration systems
Communication Email, messaging, video calls, language translation, search engines, voice assistants, accessibility tools (screen readers, captions, voice control)

This list barely scratches the surface. Computing is embedded in the infrastructure of modern civilization. Understanding it is not optional for anyone who wants to participate intelligently in contemporary life — whether as a technologist, a citizen, a professional, or a thoughtful person navigating a world shaped by algorithms and data.

Benefits, Risks, and Responsibilities

Computing is powerful. Power creates opportunity, and it creates risk. Both deserve serious attention.

Benefits

The benefits of computing are real and vast. Medical computing saves lives. Navigation computing prevents accidents and reduces fuel waste. Agricultural computing helps farmers use water and fertilizer more precisely. Climate modeling helps scientists understand environmental change. Communication computing helps people maintain relationships across distance. Educational computing helps people learn who would otherwise lack access to teachers or libraries. Computing has also created remarkable economic opportunity and enabled collaborative creation at a scale impossible with physical goods.

Risks

RiskDescription
Privacy Computing systems collect vast personal data — location, browsing history, purchases, health metrics. This data can be used to help people, or it can be sold, stolen, misused, or weaponized.
Security Malware can steal data, disable services, or hold systems hostage. Phishing attacks trick people into revealing passwords. Failures can harm millions at once.
Bias and fairness Algorithms trained on biased data produce biased results. Facial recognition has shown lower accuracy on darker-skinned faces. Hiring and loan algorithms have perpetuated historical inequities.
Concentration of power A small number of companies control large portions of global digital infrastructure — search, social media, cloud computing, online commerce — raising questions about accountability and governance.
Misinformation Algorithmic amplification can spread false information faster than corrections. Generative AI can produce convincing fake text, images, and video at scale.
Environmental impact Data centers consume enormous quantities of electricity. Devices use rare materials and are often difficult to repair or recycle.
Automation and work As computers automate more tasks, the economic value of some kinds of human labor changes. Workers whose skills are automatable face displacement.

Four Kinds of Responsibility

Computer scientists — and anyone who builds, deploys, or uses computing systems — bear responsibilities. These responsibilities fall into four categories:

Responsibility 1
Technical
Build systems that are correct, secure, reliable, and efficient. Test carefully. Anticipate failure. Know what your system does and does not do.
Responsibility 2
Ethical
Consider who is affected by the systems you build. Think about fairness, privacy, access, and safety before problems arise, not after.
Responsibility 3
Social
Understand that computing systems operate in social contexts. A decision that looks purely technical — what data to collect, how to rank results — is also a social decision with real consequences for real people.
Responsibility 4
Civic
Participate in public conversations about how computing should be governed, regulated, and directed. Technical expertise is genuinely valuable in those conversations.

This textbook returns to ethics and responsibility throughout. Ethical reasoning is not a separate topic to be studied once and set aside — it is a strand running through everything computer scientists do. Chapter 28 addresses these questions directly; every chapter before it touches them in context.

How to Study Computer Science Successfully

Computer science is both a theoretical and a practical discipline. Studying it well requires habits suited to both. The following habits are not specific to this book — they are the habits of effective computer scientists at every level.

Study Habit Guide
Nine habits for effective computer science study
  • Read carefullyMany CS concepts are precise and dense. A single paragraph can contain several important ideas. Read slowly. Stop when something is unclear and identify exactly what is confusing before moving on.
  • Trace examplesWhen you encounter an algorithm, trace it by hand on a small example. When you see code, predict what it will print before checking. Active engagement with examples is the fastest path to genuine understanding.
  • Embrace mistakesThe ability to find, diagnose, and fix errors is one of the most important skills in CS. When something goes wrong, treat it as information. Ask: what assumption was incorrect? How can I test whether my fix is right?
  • Connect to applicationsEvery abstract concept has concrete applications. As you learn about algorithms, notice them in the apps you use. As you learn about networks, observe when your phone switches from Wi-Fi to cellular. Connecting theory to reality makes concepts stick.
  • Practice regularlyReading about algorithms is not the same as designing one. Reading about code is not the same as tracing it. Each chapter includes practice activities — take them seriously.
  • Build vocabularyCS has a precise technical vocabulary. Words like "algorithm," "bit," "protocol," and "latency" have specific meanings. When you encounter a new term, make sure you can define it, use it in a sentence, and recognize it in context.
  • Ask why, not just howThe most important question is often not "how does this work?" but "why was it designed this way?" When you learn binary representation, ask why computers use binary instead of decimal. Asking why leads to deeper understanding.
  • Work with peersCS is a collaborative field. Discussing problems with others, explaining concepts to peers, and arguing about design decisions all deepen understanding.
  • Keep the big picturePeriodically step back and ask: how does what I am learning now connect to what I learned earlier? How does it fit into the overall map of CS? What will I need to know later that depends on this?

Chapter Summary

Key Terms

algorithm
A precise, step-by-step procedure for solving a problem or performing a task. Given the same input, a correct algorithm always produces the same output.
analog information
Information that varies continuously, taking infinitely many values between any two points — like a traditional thermometer or a vinyl record groove.
automation
The process of having machines perform tasks automatically, repeatedly, and consistently, without human intervention at each step.
bit
The smallest unit of digital information, representing either 0 or 1. Short for "binary digit."
computation
The process of following precise instructions to transform information. The central subject of computer science. Abstract and logical — independent of any particular machine.
computer
A machine that performs computation by processing information according to instructions.
computer science
The study of computation, encompassing algorithms, information, programming, hardware, operating systems, networks, data, security, AI, human-computer interaction, and ethics.
CPU
Central processing unit — the main processor in a computer that executes computations.
data
Information that has been recorded in some form — a temperature reading, a name, pixels in a photo, words in a document.
digital information
Information represented using discrete values — typically the binary digits 0 and 1.
hardware
The physical components of a computing system: processor, memory, storage, and input/output devices.
information
Anything that reduces uncertainty. When you receive an answer to a question, the answer is information.
network
A collection of computing devices connected so they can communicate and share information.
operating system
System software that manages hardware resources and provides services to application programs. Examples: Windows, macOS, Linux, Android, iOS.
program
An algorithm expressed in a language that a computer can understand and execute. The implementation of an algorithmic idea.
software
Programs and instructions that tell hardware what to do, at levels from application software down to firmware.
Turing machine
An abstract model of computation, invented by Alan Turing in the 1930s, demonstrating that computation is a logical process independent of any physical implementation.

Concept Check

Answer these questions before beginning the full review questions. They check basic understanding, not deep analysis.

  1. In your own words, what is computation?
  2. What is the difference between an algorithm and a program?
  3. What is the difference between hardware and software? Give two examples of each.
  4. What does it mean for information to be digital? What does it mean for it to be analog? Give one example of each.
  5. What does it mean to automate a task? Give one real-world example of automation that does not involve computers.
  6. Name three areas of daily life where computing plays an important role.
  7. Name two benefits of computing and two risks.

Common Misconceptions

Misconception 1
"Computer science is the same as learning to program."
Programming is one of the most important skills in CS, and this book teaches programming foundations. But the field also includes the theoretical study of what can be computed, the design and analysis of algorithms, hardware architecture, network engineering, the mathematics of security, data science, AI, and ethics. Programmers who understand the broader field make better decisions than those who know only how to write code.
Misconception 2
"You need to be a math genius to study computer science."
Advanced mathematics — calculus, linear algebra, discrete mathematics — is useful for certain specialized areas. But many foundational CS concepts require only arithmetic, basic algebra, and logical reasoning. This book assumes you can follow step-by-step procedures, work with tables and graphs, think carefully about true and false, and solve problems systematically. That is enough to start.
Misconception 3
"Computers are intelligent — they understand what they are doing."
Modern computers, including those running sophisticated AI programs, do not have minds, intentions, understanding, or feelings. They follow instructions. Very fast, very precise, very reliable instructions — but instructions nonetheless. When a program produces a surprising result, it is because the algorithm and the data it was trained on produced that result, not because the computer understood or intended anything. This distinction is essential for reasoning clearly about what AI can and cannot do.
Misconception 4
"The internet and the web are the same thing."
The internet is the global network of interconnected computers. The web (World Wide Web) is one particular service that runs on the internet — a system of documents and applications accessed through browsers using a specific set of protocols. Email, video calls, online games, file transfer, and streaming audio are all internet services that are not the web. Chapter 19 covers the internet; Chapter 20 covers the web.
Misconception 5
"Once you learn one programming language, you know them all."
Different programming languages have different syntax, conventions, strengths, and areas of use. However, the underlying concepts — algorithms, data structures, control flow, functions, types — do transfer across languages. Learning one language well makes the next significantly easier. This book focuses on Python-style examples while emphasizing that the ideas apply broadly.
ActivitiesComputing in Everyday Life

These activities connect chapter concepts to the systems you encounter daily. No programming or technical tools required — only careful observation and reasoning.

  1. Computing Systems Around You. Spend fifteen minutes listing every computing system you encounter in a typical day. Include obvious ones (phone, laptop) and less obvious ones (traffic lights, elevator controller, car odometer, grocery checkout, ATM). For each one, write a one-sentence description of what computation it performs.
  2. Analog to Digital. Think of three things that used to be stored or transmitted in analog form and are now digital. For each one, identify one benefit and one potential drawback of the shift. Examples to get started: vinyl records → digital music files; printed photographs → digital photos; paper maps → GPS navigation.
  3. An Algorithm You Already Know. Write out a precise, numbered algorithm for a simple everyday task — making tea, finding a book in a library, or locking and leaving a building. After writing it, check your algorithm: Is every step clear? Could someone follow it without asking you any questions? Are there steps you assumed but did not write down?
  4. Benefits and Risks. Choose one of the following computing applications. Write a short paragraph describing its benefits and a second paragraph describing its risks: (a) social media recommendation algorithms, (b) electronic health records, (c) facial recognition in public spaces, (d) algorithmic hiring tools, (e) self-driving vehicles.
ReviewReview Questions

Recall and Vocabulary

  1. Define computation in your own words.
  2. What is an algorithm? How does it differ from a program?
  3. What is the difference between digital and analog information? Why do computers use digital representation?
  4. What does CPU stand for? What does a CPU do?
  5. What is the difference between hardware and software?
  6. What is a network? Give two examples of networks at different scales.
  7. What is automation? Give one example of computational automation from the chapter.
  8. Who was Alan Turing, and why is his work important to computer science?

Understanding and Explanation

  1. Why is it useful to think of computation as a logical process independent of any particular machine?
  2. The chapter describes five properties of digital information: perfect copies, compact storage, reliable transmission, fast processing, and the ability to encrypt. Explain in your own words why each of these properties is valuable.
  3. The chapter says "an algorithm is the idea, and a program is the implementation." Explain this in your own words using an example that does not appear in the chapter.
  4. Why does the choice of algorithm matter? Use the binary search example from Section 1.4 to explain your answer.
  5. Choose two risks of computing from Section 1.8. For each one, explain in one paragraph why it is a risk and what kinds of choices could reduce it.
  6. In your own words, explain the difference between technical responsibility and ethical responsibility for a computer scientist. Give one example of each.

Application and Analysis

  1. A hospital uses a computer system to match organ donors with patients who need transplants. The system considers blood type, tissue compatibility, geographic distance, waiting time, and urgency. Identify: (a) the information inputs, (b) the computation being performed, (c) the output, (d) at least one potential benefit, and (e) at least one potential risk.
  2. Compare these two instructions for making a sandwich. Instruction A: "Make a nice sandwich." Instruction B: "Take two slices of bread from the bag. Place them on a flat surface. Open the jar of peanut butter. Using a knife, spread approximately two tablespoons of peanut butter on one face of one slice of bread. Place the second slice on top, unspread faces facing outward." Which is more like a computer program? Explain why computers require that level of precision.
  3. A classmate argues: "Computer science is just engineering — building things that work. Ethics is a separate subject that doesn't belong in a CS course." Write a response to this argument. Use at least one specific example from Section 1.8 to support your position.
  4. Look at the table in Section 1.7. Choose one area not discussed in detail in the chapter. Describe how computing is used in that area, what benefits it provides, and what risks it creates.

Design and Synthesis

  1. Design a simple algorithm — using numbered steps — for one of the following tasks: (a) deciding whether a number is even or odd, (b) finding the largest number in a list of five numbers, (c) alphabetizing three names. After writing your algorithm, identify at least one way it could fail or produce a wrong answer if the input is unusual or unexpected.
  2. Write the first paragraph of a newspaper article explaining what computer science is to a general audience — people who use smartphones and search engines but have never studied programming. Your paragraph should be accurate, engaging, and free of unexplained jargon.
Chapter 1 Checklist
Use this to confirm your understanding before moving to Chapter 2
Concepts
  • I can explain what computer science studies and why it is broader than programming.
  • I can define computation and explain why it is abstract and logical.
  • I can distinguish between computing, computers, and computation.
  • I can explain the difference between digital and analog information.
  • I can define a bit and explain its role in digital representation.
  • I can define algorithm and program and explain how they differ.
  • I can explain why the choice of algorithm matters using the binary search example.
  • I can describe the three fundamental layers of a computing system.
  • I can define automation and explain its significance for information work.
Applications
  • I can name at least four areas of daily life where computing plays an important role.
  • I can describe at least two benefits and two risks of computing systems.
  • I can explain four kinds of responsibility that computer scientists bear.
  • I can write a simple step-by-step algorithm for an everyday task.
Study Habits
  • I understand the importance of tracing examples by hand rather than just reading them.
  • I have a strategy for building technical vocabulary deliberately.
  • I know the difference between asking how something works and asking why it was designed that way.
Preview — Chapter 2
Computers, Information, and Computation

Chapter 1 gave you a map of the field. Chapter 2 begins to explore the territory. You will take a closer look at what a computer actually is and how it works at a fundamental level — the input-process-output model of computation shared by every computing device from a pocket calculator to a supercomputer. You will learn how computers store and process information, how software and hardware work together, and how the devices you encounter daily — laptops, smartphones, smart speakers, game consoles, and embedded systems — are all variations on the same underlying architecture. The ideas introduced abstractly in Chapter 1 will start to become concrete.

MGU Library Connection
  • Computer Science Foundations — Appendix M: Full Glossary of CS Terms
  • Computer Science Foundations — Appendix A: Mathematics and Logic for Computer Science
  • Companion resource: Computer Science Vocabulary Guide
  • Companion resource: Input-Process-Output Diagram
  • Next course: Python Programming Foundations (requires this chapter as prerequisite context)
  • MGU Digital Literacy — background reading on computing in society