My vision for this site is for it to contain pretty much every topic I’ve learned over the years. Here’s a general roadmap of what I’m planning:
With that in mind, if you’re planning a curriculum that spans across multiple classes, here’s how I would organize it:
In a perfect world, students would be introduced to computer science at an early age. I don’t have any experience with this side of things, but you might want to check out the teaching primary students guide.
Processing is great for introducing the basics, since it makes it easy to create animated and interactive programs without a ton of boilerplate code. You could spend at least the first course or year working through the fundamentals, all the way up to OOP.
Processing is built on top of Java, so students have already been programming in Java. But Processing also hides a lot of stuff from the user. I’d use a Java course to introduce more advanced topics like inheritance and interacting with complicated libraries.
After students have seen concepts like OOP and can understand the flow of a Java application, they can branch out into Android development.