CIS 105M · Fall 2026
Introduction to Computer Science
Computational Thinking with JavaScript
Learn how computer scientists represent information, design algorithms, evaluate solutions, and build reliable programs. JavaScript is our laboratory—not the limit of what we study.
What you will practice every week
- TThinkBreak a problem into precise, testable steps.
- BBuildUse JavaScript to turn an algorithm into a working program.
- EEvaluateTest the result and explain why the solution works.
- CConnectRelate code to data, systems, security, and society.
15-week course
The semester at a glance
The course moves from computational thinking into programming, algorithms, systems, data, networks, security, and the human impact of computing.
Week 1
Computer Science & Computational Thinking
Define computer science, decompose problems, design algorithms, and run a first JavaScript program.
Week 2
Digital Information & Data Representation
Explore bits, binary, text, images, data types, variables, and the limits of digital representation.
Week 3
Algorithms, Expressions & Program Design
Translate precise algorithms into expressions and executable JavaScript.
Week 4
Logic & Decision-Making
Use Boolean logic and conditional structures to create programs that choose among alternatives.
Week 5
Iteration & Repeated Processes
Recognize repetition patterns and implement reliable, terminating loops.
Week 6
Functions, Abstraction & Decomposition
Break large problems into testable functions with clear inputs and outputs.
Week 7
Collections & Fundamental Data Structures
Store, traverse, and transform collections while comparing common data-structure behaviors.
Week 8
Searching, Sorting & Efficiency
Implement search and sort algorithms and compare how their work grows with input size.
Week 9
Objects & Structured Data
Model real entities with objects, key-value structures, references, and JSON.
Week 10
Recursion & Advanced Decomposition
Trace recursive processes and compare recursive and iterative solutions.
Week 11
Computer Systems & Program Execution
Connect source code to processors, memory, storage, operating systems, and language runtimes.
Week 12
Software Development & Program Quality
Use requirements, tests, debugging, documentation, and version control to improve software quality.
Week 13
Data Management & Databases
Organize, query, validate, and protect structured data.
Week 14
Networks, Security & the Internet
Follow data across the internet and examine the security and privacy decisions behind connected systems.
Week 15
Computing, AI, Ethics & Final Project
Evaluate computing's impact and integrate the semester's concepts in a final computational project.