Starting to Teach IB Computer Science in 2012 (for exams in 2014)
IBO has created a new structure and content for IB Computer Science. The intention was to de-emphasize programming and increase the emphasis on problem-solving. The problem-solving aspect is labeled "computational thinking". Computational thinking and problem solving occur in other realms, not just programming, hence the addition of non-programming Options.
Essential ReadingBefore starting the course, read the IBO documents:
Guide (syllabus) and TSM(teacher support material) As the course progresses, teachers will probably read: Teaching Plan Suggestion Example Internal Assessment Projects IA Project FAQ IA Assessment Criteria Other Teachers' Web-sites Extended Essay Guide Choose an Option, Software & Hardware
Options
There are 4 Options to choose from - Databases, Web Science, Modelling and Simulation, and Object Oriented Programming. Each teacher must teach one Option. This allows teachers to present problem-solving and computational thinking in a realm that is easy for them to teach. Teachers should choose an option early in the course, as this will influence their approach to teaching the core topics as well. Software Each Option has some standard software that can be used for investigations and building systems. Some suggestions are shown at the right. It's a good idea to choose appropriate tools before beginning the course. Hardware The course is intended to be taught using PCs (or Macs), with each student having their own machine. It's probably not sensible to teach the course using a tablet instead of a PC, as it will be difficult to find appropriate software that runs on a tablet. After choosing appropriate software, just choose hardware that supports that software. Suggested Easy Start = Java + OOPFor many teachers and students, the OOP Option will be the easiest to teach and learn.
Textbook for Core Concepts - Computer Science Illuminated by Dale and Lewis Using Java for the Core + OOP Option - use Java for the core programming - David J Eck's Java Notes core + OOP - Processing simplified Java editor, easy to install Processing is graphics oriented, but you can teach normal programming, too. You can even do OOP, but the editor is not very helpful for OOP. -- or run Processing online at http://sketchpad.cc - funprogramming.org Processing videos for beginners - java-examples.com Lots of small sample programs - NetBeans - very powerful editor for Java, good help functions, appropriate for larger projects - OOP Basics in Java Web Science, Databases and Modelling/Simulation don't look so simple - need to gather lots more resources. For the OOP option, you can use past exams for sample questions. That won't work for the other Options. |
Suggested ResourcesHere are some suggestions for resources that can be used. Any other software or books can be used instead, but these are suggestions in case you don't quite know where to start.
Textbook for Core Concepts Computer Science Illuminated by Dale and Lewis ppt Slides for Comp Sci Illuminated Various Tools (for investigations of systems and HW) Task Manager Free Hex Editor Circuit Simulator CPU Emulator Free Online Network Tools Core Programming (non Java) Pseudocode Practice Tool - for IB Pseudocode Start - Small Basic (Win 7 only) Dead simple to install and start using Very similar to QBasic (nostalgia calls) or RunBasic runs online, or download for Mac, Windows or Linux (like Liberty Basic) or CodeAcademy to learn JavaScript nice editor, runs in the browser Any of these almost covers core 4.3 (missing collections) Later - Visual Basic.net Express Includes collections, methods, GUI, etc A serious development IDE, fully OOP Appropriate for project work Java Programming (core and OOP) JETS Java Specification - required constructs Mulkey's Processing Examples for IB Comp Sci Mulkey's Standard Java Examples for IB Comp Sci Java Tutorial and Reference Practice Problems Rosetta Stone - Lots and Lots of Algorithms Start - Processing - very easy to install and get started, Lots of interesting sample programs Fully adequate for the core syllabus For OOP - BlueJ - easy to install, very good visualization of classes and objects Later - NetBeans - very powerful editor, Great help functions, a good choice for OOP Databases Open Office Base (or Libre Office) or MSAccess if you already have MS Office Pro Database Design with UML and SQL A free web-site that covers most of the Option need more resources here Web Science A web connection Any browser like Firefox A Wysiwyg editor like Kompozer or BlueGriffon NetObjects Fusion for project work, larger web-sites Web Science Overview - a good overview of the Option, but needs more detailed material for instruction. Includes lots of references www.w3schools.com brief explanations of all details. Explanations are a bit too brief. How the Internet Works this is the right level, but only covers some basics Web Technologies - a Computer Science Perspective covers the basics for sections C1 and C2 Semantic Web for Dummies - very readable coverage of semantic web concepts for second half of the Option Modelling and Simulation Open Office (Libre Office) Calc spreadsheet NetLogo Modeling System .. Need lots more tools .. Introduction to Computational Science challenging but readable, more than enough for IB Mathematical Models with Applications modelling activities for high school students Modelling Scenarios interesting scenarios for modelling, a teacher resource |