We use the teaching kid’s programming (TKP) intentional method to create recipes that give kids a thorough understanding of the effect of each line of code they write.

For example, a student might want to build a game to play with their friends but doesn’t yet have the skill to build it from scratch. Our Intentional Recipes provide step-by-step guides for building all kinds of games (and other cool items). It’s a bit like following Lego instructions to build a treehouse that gives you familiarity with how the blocks fit together, so that you can later build your own creations.
Each recipe has a learning goal, but the students are usually too focused on the end result to realize that they are learning complex programming concepts. This makes learning selfmotivated and rewarding. Our collection of recipes is always growing as new technologies appear, and we improve them iteratively as we find what works best.

Level Summary

We teach classes by Levels to incent students to continuously pursue new coding skills while working with students having similar experience and goals. Students graduate to the next level by passing an exam that includes a written portion and a coding exercise. We match groups of students based on learning speed, and they progress through the levels at their own pace.

Learn by doing

Our students are coding from the moment they step into the classroom. During class, students face away from the whiteboard because our emphasis is on the practice of coding, not on listening to the teacher. Just as you don’t learn to swim by reading a book, you don’t learn to code by listening to a lecture.

Agile

We have adapted ideas from the world of Agile software development to make learning engaging and interactive. We use Retrospectives, Pair Programming and The Perfection Game to learn collaboratively. Iterative Development is key to teaching the powerful skill of problem solving. Students learn that if you tackle a problem in pieces, you can solve almost anything. Being taught this way makes programming approachable and fun.

Mastery

We believe that a firm foundation of the basics is essential to developing confidence and virtuosity in programming. That is why our passing grade is 70%. Students are assured of mastery of each Level before moving on.

Fun

We emphasize fun and discovery in our curriculum. Each lesson contains high-interest content for kids, such as video games, social media, mobile apps, and robot automation. We use proprietary “recipes” which are step-by-step guides that give students a thorough understanding of the effect of each line of code until they are capable of writing it from scratch.  Each recipe has a learning goal, but the students are usually too excited about the end result to realize that they are learning complex programming concepts.

Programming Levels

Level 0

Logic, loops, variables

Students use professional programming tools starting on their first day at The League. We write user-interactive programs and games using Eclipse. We use Makey Makey to interact with the world in unusual ways, draw with TKP’s Tortoise, and create code-based animations with Processing. By focusing on a small number of concepts, students end this level with mastery of logic, loops and variables, and with a firm foundation in problem solving and logical thinking.

Level 1

Objects & methods

We jump right into object oriented programming in Level 1. This level is challenging because students learn to understand classes, methods and objects which are big ideas for small heads. We make this fun by building graphical user interfaces with Java’s Swing API and by the end of this level you are able to make your own interactive applications at home.

Level 2

Beginner project

At level 2, it’s time to put your coding skills to work. We break our classes into smaller groups (2 or 3 students per mentor) so that kids can build a project of their own design. Depending on the project, this may take 2-4 months. This comes with a whole new set of challenges since the code is built upon week after week. Students need to learn to write clean and readable code. During the process, we perform UX testing and use that feedback to improve the user interface. The students use GitHub to publish their work. All the github portfolios you see on the students page contain code they wrote themselves from scratch. This level ends with a presentation of the project, a demo to family and friends and a pizza party to celebrate their accomplishments.

Level 3

Data structures & algorithms

All serious programmers need to be data virtuosos. In Level 3 students learn to master lists, stacks & hashmaps and to implement basic sorting and searching algorithms. It’s the beginning of a long and beautiful relationship with unit testing and JUnit. Knowing this stuff gives you the ability to write more stateful and complex games, and naturally, we try out this new knowledge on some maze-navigating robots. LEAGUE students test out of this level using a mid-term exam for first year students of computer science at Stanford University.

Level 4

Advanced object oriented programming

Some of the higher forms of coding have frightening names like polymorphism, abstraction, inheritance and encapsulation. Believe it or not, our students will own these concepts in Level 4.

Level 5

AP Computer Science exam prep

9 out of 10 of our students pass the computer science AP exam with a score of 4 or greater. We’ve even had a student pass the AP exam in the 7th grade. The thorough understanding of coding learned in levels 0-4 make passing the AP a breeze. The hardest thing we have to teach in Level 5 is how to write code on paper for the first time.

Level 6

Advanced project

The skill of programming is a powerful tool that can be used to change the world. That’s why in Level 6 our students team up and spend 3-4 months working on a project that impacts society for the good. These are usually mobile or web apps. Some of our students have won prizes competing against adult teams at civic hackathons with these apps.

Level 7

Software Craftsmanship

Learn to craft code like a pro! This level takes you from code monkey to software engineer with topics such as refactoring, clean code, test-driven development, design patterns, techniques for working with legacy code, and how to be an Eclipse ninja. This course has been developed in collaboration with some the best and most experienced programmers in San Diego. This is stuff they don’t even teach you in college!

Level 8

Oracle Java certification

In level 8, you’ll study for professional certification as a Java programmer. The “Oracle Certified Associate, Java SE 7 Programmer” exam is the industry standard for Java developers.

Students are ready for work! The LEAGUE works with students to pursue internships and programming job opportunities. Several students have already contributed in the thriving San Diego telecommunications industry!
Recipe Samples

Developed iteratively, we are constantly creating new curriculum as new technologies appear.

PENTAGON CRAZY

LEVEL 0
See the Recipe

MAGIC WORMS

LEVEL 1
See the Recipe

TURTLE TREASURE HUNT

LEVEL 3
See the Recipe

Questions & Answers

How long does each level take?

Students move at their own pace through the levels. It doesn’t matter how long it takes. We can teach anyone to code given enough time and patience with a student who is dedicated to that goal.

How do I get into the LEAGUE?

We recommend starting in one of our ongoing Programming Workshops that then feed programming savvy students into weekly streaming classes. Simply go to our Join page to sign up.

Can I start in the middle of your Levels if I have some programming experience?

Certainly. Come on in and we’ll assess your skill level and goals and fit you into the right class.

Is there homework?

Only if you want there to be! Programming is contagious, many students continue coding while at home. It’s all self-driven, we do not require homework to progress at the LEAGUE.