A Data-Centric Introduction to Computing
About the book
An introduction to computing through a data-centric lens, emphasizing how programs manipulate data and how data structures enable efficient computation. The book prioritizes data as the organizing principle rather than starting with syntax or control structures.
Prerequisites
No prior programming experience was assumed.
Sessions
- 8 Sep Session 1 provisional
- 9 Sep Basic Data (Part 1) provisional Introduction to fundamental data concepts
- 10 Sep Basic Data (Part 2) provisional Core data types and operations
- 11 Sep Tabular Data (Part 1) provisional Working with tabular data structures
- 12 Sep Tabular Data (Part 2) provisional Tabular data manipulation and analysis
- 13 Sep Lists (Part 1) provisional Introduction to list data structures
- 15 Sep Structured Data (Part 1) provisional Working with structured data formats
- 16 Sep Structured Data (Part 2) provisional Advanced structured data concepts
- 17 Sep Structured Data (Part 3) provisional Complex structured data patterns
- 18 Sep Trees (Part 1) provisional Introduction to tree data structures
- 19 Sep Trees (Part 2) provisional Tree operations and traversal
- 20 Sep Trees (Part 3) provisional Advanced tree algorithms
- 22 Sep Foundations: Bonus Materials (Part 1) provisional Additional foundational concepts
- 23 Sep Foundations: Bonus Materials (Part 2) provisional Bonus materials and exercises
- 24 Sep Foundations: Bonus Materials (Part 3) provisional Advanced foundation topics
- 25 Sep From Pyret to Python (Part 1) provisional Transitioning from Pyret to Python
- 30 Sep Tables in Python via Pandas (Part 2) provisional Pandas operations and methods
- 1 Oct Tables in Python via Pandas (Part 3) provisional Advanced Pandas techniques
- 2 Oct Programming with State (Part 1) provisional State management concepts
- 6 Oct More Programming with State: Python (Part 1) provisional Advanced state concepts in Python
- 7 Oct More Programming with State: Python (Part 2) provisional Python-specific state management
- 13 Oct Halloween Analysis (Part 1) provisional Data analysis techniques
- 14 Oct Halloween Analysis (Part 2) provisional Statistical analysis methods
- 15 Oct Halloween Analysis (Part 3) provisional Interpretation and insights
- 16 Oct Directed Acyclic Graphs (Part 1) provisional Introduction to DAGs
- 17 Oct Directed Acyclic Graphs (Part 2) provisional DAG algorithms and applications
- 21 Oct Graphs (Part 2) provisional Graph algorithms and traversals
- 22 Oct Graphs (Part 3) provisional Advanced graph applications
- 24 Oct Several Variations on Sets (Part 2) provisional Advanced set operations
- 25 Oct Several Variations on Sets (Part 3) provisional Set theory applications
- 27 Oct State and Equality (Part 1) provisional State management and equality concepts
- 28 Oct State and Equality (Part 2) provisional Equality in programming
- 29 Oct State and Equality (Part 3) provisional Advanced state and equality topics
- 30 Oct Recursion and Cycles from Mutation (Part 1) provisional Recursive patterns with mutation
- 1 Nov Recursion and Cycles from Mutation (Part 3) provisional Advanced mutation and recursion
- 3 Nov Detecting Cycles (Part 1) provisional Cycle detection algorithms