Lecture Notes
COS 101 – Introduction to Computing Sciences
Lecture 1: Brief history of computing
The history of computing spans centuries, evolving from simple mechanical devices to the sophisticated digital
systems we use today. Here's a concise overview:
Early Beginnings (Pre-20th Century)
- Abacus (c. 2400 BCE): One of the earliest known calculating tools, used for basic arithmetic.
- 17th-19th Century: Mechanical devices like the slide rule (1620s), Pascal’s calculator (1642), and Leibniz’s
stepped reckoner (1673) enabled basic computations. Charles Babbage’s Difference Engine (1820s) and
Analytical Engine (1830s), though never fully built, introduced concepts like programmability, with Ada
Lovelace writing the first algorithms.
Early 20th Century: Mechanical to Electronic
- 1930s-1940s: The shift to electromechanical and electronic computing began. Alan Turing formalized
computation with his theoretical Turing Machine (1936). The Zuse Z3 (1941) was the first programmable
digital computer, using binary and relays. The Colossus (1943) and ENIAC (1945) marked the era of electronic
computers, using vacuum tubes for faster processing, primarily for wartime calculations.
1950s-1960s: Mainframes and Transistors
- Transistors (1947) replaced bulky vacuum tubes, making computers smaller, faster, and more reliable.
Mainframes like the IBM 650 (1954) and UNIVAC I (1951) were used for business and scientific applications.
Programming languages like FORTRAN (1957) and COBOL (1959) emerged, enabling more accessible
software development.
1970s-1980s: Microprocessors and Personal Computers
- The invention of the microprocessor (Intel 4004, 1971) miniaturized computing power. The Altair 8800
(1975) sparked the personal computer revolution, followed by the Apple I (1976), Apple II (1977), and IBM
PC (1981). Operating systems like MS-DOS and early GUIs (Xerox PARC, Apple Macintosh 1984) made
computers user-friendly.
1990s-2000s: Internet and Mobile Computing
- The internet, rooted in ARPANET (1969), became mainstream with the World Wide Web (1991). PCs
became ubiquitous, powered by Intel and AMD processors. Laptops and mobile devices emerged, with
smartphones like the iPhone (2007) integrating computing, communication, and touch interfaces.
2010s-Present: Cloud, AI, and Quantum
- Cloud computing (e.g., AWS, 2006) enabled scalable, on-demand computing. AI and machine learning
surged with advancements in neural networks and GPUs. Quantum computing research gained traction, with
companies like IBM and Google achieving early milestones (e.g., Google’s quantum supremacy claim, 2019).
Today, computing is integral to daily life, from IoT devices to supercomputers.
This progression reflects a shift from mechanical aids to interconnected, intelligent systems, driven by
hardware innovations, software development, and theoretical breakthroughs. If you’d like details on a specific
era or technology, let me know!
Lecture 2: Description of basic components of computer or computing device
A computing device, at its core, consists of several fundamental components that work together to process,
store, and manage data. Below is a concise description of the basic components found in most computers or
computing devices:
1. Central Processing Unit (CPU)
- The "brain" of the computer, responsible for executing instructions from programs by performing the basic
operations of fetch, decode, and execute.
- Processes data using arithmetic and logic operations, managing tasks through registers and a control unit.
2. Memory (RAM)
- Temporary storage (Random Access Memory) that holds data and instructions the CPU needs during
processing.
- Volatile, meaning it loses data when the device powers off. Measured in gigabytes (GB) or terabytes (TB).
3. Storage
- Non-volatile memory for long-term data storage. Includes:
- Hard Disk Drives (HDDs): Use spinning disks for high-capacity, slower storage.
- Solid-State Drives (SSDs): Faster, using flash memory for data storage.
- Stores the operating system, applications, and user files.
4. Motherboard
- The main circuit board connecting all components, providing pathways for data transfer.
- Houses the CPU, RAM, and connectors for storage, input/output devices, and expansion cards.
5. Input Devices
- Hardware for entering data into the system, e.g., keyboards, mice, touchscreens, microphones, or cameras.
- Translates user actions into signals the computer can process.
6. Output Devices
- Hardware that presents processed data to the user, e.g., monitors (display visual output), speakers (audio
output), or printers (physical output).
- Converts digital signals into human-readable or usable formats.
7. Power Supply Unit (PSU)
- Converts external power (e.g., AC from a wall outlet) into usable DC power for the computer’s components.
- Ensures stable voltage and current for reliable operation.
8. Operating System (OS)
- Software that manages hardware and software resources, providing an interface between the user and the
device (e.g., Windows, macOS, Linux, Android).
- Coordinates tasks like memory management, process scheduling, and device communication.
9. Graphics Processing Unit (GPU) *(Optional but common)
- A specialized processor for rendering images, videos, and animations.
- Found in devices requiring high-quality visuals, like gaming PCs, smartphones, or workstations.
10. Cooling System
- Prevents overheating by dissipating heat generated by the CPU, GPU, and other components.
- Includes fans, heat sinks, or liquid cooling systems.
11. Connectivity Components *(In modern devices)*
- Network interfaces (e.g., Wi-Fi, Ethernet, Bluetooth) for connecting to the internet or other devices.
- Ports (e.g., USB, HDMI) for external peripherals.
These components interact to perform computations, store and retrieve data, and facilitate user interaction.
Their specific designs vary across devices like desktops, laptops, smartphones, or embedded systems, but the
core principles remain consistent. If you want a deeper dive into any component, let me know!
Lecture 3: Description of Input and output devices and peripherals
Below is a concise description of Input Devices, Output Devices, and Peripherals—key components that enable
interaction between users and a computing device. These allow data to enter (input) and exit (output) the
system, extending its functionality.
1. Input Devices
Hardware that sends data to the computer for processing. They convert physical actions (e.g., typing, pointing)
into digital signals.
Device Description Examples
Alphanumeric input via key presses for text,
Keyboard QWERTY, gaming, virtual touch.
commands.
Pointing device for cursor control, clicking, and
Mouse/Trackpad Optical mouse, touchpad (laptops).
navigation.
Smartphones, tablets, interactive
Touchscreen Direct touch input for gestures (tap, swipe, pinch).
kiosks.
Captures audio for voice commands, recording, or
Microphone Built-in, headset mics.
speech recognition.
Captures video/images for video calls, facial HD cameras, smartphone front
Webcam
recognition. cams.
Digitizes physical documents/images into digital
Scanner Flatbed, handheld scanners.
files.
Controls movement/direction for gaming or
Joystick/Gamepad Xbox controller, flight sticks.
simulations.
Accelerometers (phones),
Sensors Detects environmental data (e.g., motion, light).
fingerprint scanners.
2. Output Devices
Hardware that receives processed data from the computer and presents it to the user in human-readable form
(visual, audio, or physical).
Device Description Examples
Visual output of text, images, videos via pixels. LCD/LED screens, OLED
Monitor/Display
Measured in resolution (e.g., 4K). TVs.
Built-in laptop speakers,
Speakers/Headphones Audio output for sound, music, voice.
wireless earbuds.
Produces physical (hard copy) output from digital
Printer Inkjet, laser, 3D printers.
files.
Projects enlarged visuals onto surfaces for
Projector DLP, laser projectors.
presentations.
Physical sensations (vibration, force) for Game controllers, smartphone
Haptic Feedback
immersive output. vibration motors.
3. Peripherals
External or add-on devices that connect to the computer via ports (USB, Bluetooth, HDMI) to enhance
functionality. They can serve as input, output, or both (I/O).
Category Device Function Connection Examples
External Flash drives,
Storage Portable data storage/backup. USB
HDD/SSD/USB Drive portable SSDs.
Drawing/input with stylus +
Input/Output Graphics Tablet USB/Bluetooth Wacom tablets.
visual feedback.
External
Networking Internet connectivity. Ethernet/USB Wi-Fi dongles.
Modem/Router
Headset (Mic + Combined audio
Audio USB/3.5mm jack Gaming headsets.
Speakers) input/output.
Music input for digital audio
Specialized MIDI Keyboard USB Electronic pianos.
workstations.
Expands ports/power for USB-
Mobility Docking Station Laptop hubs.
laptops. C/Thunderbolt
Print/scan/copy (output +
Printing Multifunction Printer USB/Wi-Fi All-in-one inkjets.
input).
Key Notes
- Connectivity: Most modern peripherals use USB-C, Bluetooth, Wi-Fi, or wireless for easy plug-and-play.
- I/O Hybrids: Devices like touchscreens and headsets handle both input and output.
- Expansion: Peripherals allow customization—e.g., adding a GPU enclosure to a laptop for gaming.
- Evolution: From wired RS-232 ports (1970s) to wireless standards today, peripherals have become faster,
smaller, and more integrated (e.g., all-in-one smartphones).
These components make computing interactive and versatile. If you'd like details on a specific device, setup
guide, or comparisons (e.g., wired vs. wireless), let me know!
Lecture 4: Hardware, software and human-ware in computing
In computing, a complete system requires three interdependent pillars: Hardware (physical components),
Software (instructions/code), and Humanware (people/skills). Together, they form the "HSH Model"—no
system functions without all three. Below is a detailed explanation with comparisons, examples, and
interactions.
1. Overview & Comparison Table
Aspect Hardware Software Human-ware
Definition Physical/tangible Intangible programs & People, skills, &
components data processes.
Nature Mechanical/Electrical Digital Biological/Cognitive
code/algorithms
Examples CPU, Monitor, Windows, Apps, Users, Programmers,
Keyboard Algorithms IT Support
Durability 3-10 years (wear/tear) Infinite (copyable) Variable
(training/upskilling)
Cost Type Upfront (capital) Licensing/subscription Training/salary
(operational)
Dependency Needs software to Needs hardware to run Needs both to operate
function effectively
Evolution Moore's Law Agile updates Lifelong learning
(faster/smaller) (frequent)
Key Insight: Hardware = Body, Software = Brain/Mind, Humanware = Soul/User.
2. Detailed Explanation: Hardware
Physical components that perform computations, store data, and enable I/O. Without hardware, software has
nowhere to run.
Category Components Function Specs/Example
Executes instructions, temporary Intel i9 (5GHz), 32GB
Processing CPU, GPU, RAM
storage. DDR5.
Storage HDD, SSD, USB Drive Permanent data retention. 1TB NVMe SSD.
Keyboard, Mouse,
Input Data entry. Capacitive 10-point touch.
Touchscreen
Output Monitor, Speakers, Printer Data presentation. 4K OLED Display.
Connectivity Wi-Fi Card, Ethernet, USB Network/peripheral links. Wi-Fi 6E (6GHz).
Power PSU, Battery Energy supply. 80+ Gold 750W PSU.
Lifecycle: Design → Manufacture (e.g., TSMC fabs) → Assembly → Upgrade/Recycle. Trends:
Miniaturization (nanometers), Sustainability (e-waste reduction).
3. Detailed Explanation: Software
Instructions that tell hardware what to do. Divided into System (manages hardware) and Application (user
tasks).
Update
Type Description Examples Language
Frequency
Controls OS (Windows 11), Drivers,
System Software C/C++ Quarterly
hardware/resources. Firmware.
Application MS Word, Chrome,
Solves user problems. Python/Java Monthly
Software Photoshop.
Middleware Connects apps/hardware. Databases (SQL), APIs. Java As needed
Utility Maintenance tools. Antivirus, Disk Cleanup. C# Weekly
Software Stack (Layered):
text
[User Interface] ← Apps (e.g., Excel)
↓
[OS Layer] ← Windows/Linux
↓
[Drivers] ← Touchscreen Controller
↓
[Hardware] ← ITO Sensor
Development: Waterfall/Agile → Code (VS Code) → Compile → Test → Deploy (GitHub/App Store).
Trends: AI-Driven (Copilot), Cloud-Native (SaaS), Open Source (Linux).
4. Detailed Explanation: Humanware
People + Skills + Processes that design, operate, and innovate the system. Often overlooked but critical for
success (80% of failures are human-related).
Role Responsibilities Skills Required Tools Certifications
Daily Basic literacy, Apps,
End User None
operation/interaction. problem-solving. Tutorials.
Coding,
IDE (VS
Programmer/Developer Writes/maintains code. algorithms, AWS Certified
Code), Git.
debugging.
Networking, Command
Manages
System Admin (SysAdmin) security, Line, Active CompTIA A+
networks/servers.
troubleshooting. Directory.
Multimeter,
Hardware repairs, user Diagnostics,
IT Support Ticketing Microsoft MTA
help. customer service.
(Zendesk).
Creates intuitive Creativity, HCI Figma,
Designer/UX Google UX
interfaces. principles. Adobe XD.
Leadership, Jira, MS
Manager/Project Lead Oversees teams/budgets. PMP
Agile/Scrum. Project.
Human Factors:
• Ergonomics: Keyboard height prevents RSI.
• Training: Reduces errors (e.g., phishing awareness).
• Ethics: Bias in AI code → Fairness audits.
Trends: Remote Work (Zoom), Upskilling (Coursera), AI Augmentation (not replacement).
5. Interactions: How They Work Together
Flow of a Touchscreen Smartphone Task (e.g., "Swipe to Unlock"):
Step Hardware Software Humanware
ITO sensor detects capacitance
1. Touch Driver sends (X:200,Y:300). User swipes finger.
Δ.
OS (Android) interprets Developer coded gesture
2. Process CPU executes at 3GHz.
gesture. logic.
3. Display OLED lights pixels. App renders new screen. Designer created UI.
4. Support troubleshoots if
Haptic motor vibrates. Vibration API triggers.
Feedback fails.
Synergy Diagram:
text
Humanware → Inputs Intent
↓
Software → Translates to Code
↓
Hardware → Executes Physically
↑ (Feedback Loop)
Failure Examples:
Issue Root Cause Fix
Crashed App Software Bug Patch + Developer Review.
No Touch Response Hardware Fault Replace Sensor + IT Repair.
Can't Use App Poor UX Redesign + User Testing.
6. Real-World Case Study: iPhone Ecosystem
Component Hardware Software Humanware
A17 Pro Chip, 120Hz Jony Ive (Designer), Tim Cook
Design iOS 17, SwiftUI
Display (CEO)
Development LiDAR Scanner ARKit Framework 10,000+ Engineers
Machine Learning
Use Face ID Sensor 1B+ Users Worldwide
Models
Support Battery (20hrs) iCloud Backup Genius Bar Technicians
Value: $2T Market Cap = Perfect HSH Balance.
7. Challenges & Future Trends
Pillar Challenge Solution/Trend
Hardware E-Waste, Supply Shortages Modular Design, Quantum Chips
Software Security Vulnerabilities Zero-Trust, AI Code Review
Humanware Skills Gap, Burnout VR Training, 4-Day Workweek
2025 Vision: Edge AI (Hardware+Software on-device), Metaverse (Humanware in VR), Sustainable
Computing.
Summary: Hardware provides power, Software provides intelligence, Humanware provides purpose. A
balanced HSH system = Efficient, Secure, Innovative Computing. For specifics (e.g., building a PC, coding an
app, or IT career path), let me know!