A systems-minded computer science course from first principles to operating systems, programming languages, security, and computational design.
Begin with START_HERE.md.
The main course text is COURSEBOOK.md.
This course is built for learners who want to understand computing deeply: not only how to write programs, but how programs become systems.
Latticra — Foundations of Computer Science begins with logic, computation, and programming fundamentals, then moves toward C, data structures, computer architecture, operating systems, programming language design, security, and the design philosophy behind Latticra.
logic → code → memory → machines → operating systems → languages → security → Latticra
This repository now contains a complete v1 course foundation:
- Full coursebook
- Formal syllabus
- 10-module course map
- Glossary
- Assignments
- Labs
- C examples
- Tiny language examples
- Capstone project guide
- Assessment checklist
- Review guide
- Contribution guide
- Roadmap
- Orientation — how to think like a computer scientist
- Computation — logic, binary, representation, and algorithms
- Programming — control flow, functions, memory, and problem solving
- C — the language of systems foundations
- Data structures — arrays, lists, stacks, queues, trees, and maps
- Computer architecture — how machines execute programs
- Operating systems — processes, files, memory, terminals, and kernels
- Programming languages — syntax, semantics, interpreters, and compilers
- Security — threat modeling, defensive design, and trustworthy systems
- Latticra design — connecting the foundations to a real systems project
START_HERE.md Recommended course entry point
README.md Public overview
COURSEBOOK.md Main course text
COURSE.md Module-by-module course map
SYLLABUS.md Formal syllabus and pacing
GLOSSARY.md Core vocabulary
CAPSTONE.md Final project guide
ASSESSMENT.md Completion checklist and review questions
REVIEW_GUIDE.md Final review prompts
ROADMAP.md Future development plan
CONTRIBUTING.md Contribution guidelines
docs/ Individual module guides
assignments/ Written and programming assignments
labs/ Hands-on lab exercises
examples/ Small supporting examples
For a 10-week path, complete one module per week.
For a slower path, spend two weeks per module and treat this as a 20-week self-study course.
The course is complete when a learner can explain and demonstrate the full arc:
logic → code → memory → machines → operating systems → languages → security → Latticra
using examples from the labs, assignments, and capstone.
This repository is now a complete v1 course foundation. Future work should expand examples, deepen module lessons, add diagrams, and improve exercises while keeping claims technically honest and evidence-bound.