IB Diploma Computer Science
Welcome to my teaching notes for the International Baccalaureate Diploma Computer Science course.
Everybody in this country should learn how to program a computer… because it teaches you how to think. - Steve Jobs
Overview
- Course introduction (November 2020)
- Course syllabus
- Schedule for Year 12, 2020/21
- Schedule for Year 13, 2020/21
Units & key resources
- Unit 1: Systems design
- Unit 2: Computer architecture
- Unit 3: Networks
- Unit 4: Computational thinking, problem solving, & programming
- Unit 5 (& D4): Abstract data structures (HL only)
- Unit 6: Resource management (HL only)
- Unit 7: Control systems (HL only)
- Unit D: Object orientated programming: Concepts, features & programming
- Internal assessment
- Case study (HL only)
- Extended essay (optional)
Programming practice
- Repl.it auto graded practice for Java (I am the registered teacher for this so I will get notified of and can monitor your progress)
- CodingBat for Java
- Daily programmer challenge
- Code Abbey (213 problems)
- Little book of algorithms
IB assessment outline
Examination | Standard level | High level |
---|---|---|
Exam 1: Short answer & structured scenarios. Units 1-7. | 45%, 1h30 | 40%, 2h10 |
Exam 2: Object orientated programming. Units D1-D4. | 25%, 1h00 | 20%, 1h20 |
Exam 3: Case study (HL only) | n/a | 20%, 1h00 |
Internal assessment: Solution | 30%, 30h | 20%, 30h |
Internal assessment: Group 4 project | 0%, 10h | 0%, 10h |
Other IB teacher websites
Other IB CS teacher websites. Feel free to check them out!
- bwagner
- Chris Coetzee, Dartford Grammar School, UK
- Michael Brooke, St Julian’s School
- Bill MacKenty, American School of Warsaw
- Robert Griffiths, Colegio Gran Bretaña, Bogotá
- Wikibooks, various authors
Other resources
Online programming courses & lectures
- Video lectures from various universities highly recommended and comprehensive
- edX: Introduction to Java Programming – Part 1 (25 hours)
- coursera: Object Oriented Programming in Java Specialization (13 hours for course 1, 24 hours for course 2, 25 hours for course 3, don't worry about course 4)
- Introduction to Programming Using Java, Eighth Edition (online, free edition) by David Eck
Non-Java programming resources
- Repl.it auto graded practice for Python (I am the registered teacher for this so I will get notified of and can monitor your progress)
- CodingBat for Javascript
- CodingBat for Python
If you come across any other site worth adding to the list, please let me know!