Our Teaching Approach
Codetoday's Curriculum and Methods
We believe that the most important skill to learn is to be able to think in the manner required to be able to communicate with a computer.
This includes thinking in a logical and systematic way, problem-solving, and fostering a mindset in which errors are seen as a key part of learning — these are all key aspects of programming and skills that are relevant beyond coding as well.
All our courses:
have small class sizes (6 students) to ensure individual attention
focus on understanding how to communicate with a computer through coding, which is the essential skill for a good programmer;
teach the fundamentals of computer programming thoroughly while making sure it's fun and engaging. We deliberately choose to teach Python programming on a computer rather than using other gadgets and devices that can distract from learning the basics of coding well;
include additional resources: videos and notes to act as a reminder of what was covered in the course;
include a support package for six months after the end of the course;
put equal importance on having exceptional content and exceptional delivery as we believe that both are critical to learn a specialised subject such as coding.
Our Curriculum and Methods
Courses are centred around one or more projects including writing animations and games through which we cover the key topics in programming, including data types and data structures, conditional statements, control flow and functions, and focus on the skills required to plan and construct a computer program in an efficient manner.
As we advance further we use a broad range of projects to cover all aspects of programming, including combining coding with other subjects such as maths and science.
All our sessions follow a similar structure: instructors introduce a topic briefly but students do most of the coding themselves, with the instructor going around the room discussing students' work, ideas and issues individually and as a group, as required.
Our curriculum starts from the very basics and puts emphasis on the fundamentals of coding. It also goes deep at the other end for those students who go through the intermediate and advanced stages. For these students we cover advanced topics in programming such as Object-Oriented Programming, functional programming and other methods used in data science, science and maths.