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.

  1. Week 1

    Computer Science & Computational Thinking

    Define computer science, decompose problems, design algorithms, and run a first JavaScript program.

  2. Week 2

    Digital Information & Data Representation

    Explore bits, binary, text, images, data types, variables, and the limits of digital representation.

  3. Week 3

    Algorithms, Expressions & Program Design

    Translate precise algorithms into expressions and executable JavaScript.

  4. Week 4

    Logic & Decision-Making

    Use Boolean logic and conditional structures to create programs that choose among alternatives.

  5. Week 5

    Iteration & Repeated Processes

    Recognize repetition patterns and implement reliable, terminating loops.

  6. Week 6

    Functions, Abstraction & Decomposition

    Break large problems into testable functions with clear inputs and outputs.

  7. Week 7

    Collections & Fundamental Data Structures

    Store, traverse, and transform collections while comparing common data-structure behaviors.

  8. Week 8

    Searching, Sorting & Efficiency

    Implement search and sort algorithms and compare how their work grows with input size.

  9. Week 9

    Objects & Structured Data

    Model real entities with objects, key-value structures, references, and JSON.

  10. Week 10

    Recursion & Advanced Decomposition

    Trace recursive processes and compare recursive and iterative solutions.

  11. Week 11

    Computer Systems & Program Execution

    Connect source code to processors, memory, storage, operating systems, and language runtimes.

  12. Week 12

    Software Development & Program Quality

    Use requirements, tests, debugging, documentation, and version control to improve software quality.

  13. Week 13

    Data Management & Databases

    Organize, query, validate, and protect structured data.

  14. Week 14

    Networks, Security & the Internet

    Follow data across the internet and examine the security and privacy decisions behind connected systems.

  15. Week 15

    Computing, AI, Ethics & Final Project

    Evaluate computing's impact and integrate the semester's concepts in a final computational project.