While the previous course, Jr Python 1, saw Code Campers using simple functions, this sophomore course of our Python Basics stream focuses the kids on writing their own functions, and learning how to use functions as programming tools to implement decomposition in their Python code. They will put these new skills into practice by combining them with the concepts learnt in Jr Python 1 in order to build larger programs that include creating art, animations and games using the turtle graphics module for Python. Solving any complex problem usually involves breaking it down into smaller, more manageable parts, which can then be separately understood and solved. This process of decomposition is key in computer science, where data, processes or problems are tackled more efficiently in parts. As before, Jr Python 2 provides an age-appropriate learning curve for kids to grant them ample opportunities to appreciate functions as tools which allow programmers to enhance the readability and reusability of their code. Through this process, they will developed two key skills critical for programming – decomposition, as well as abstraction, the reduction of unnecessary detail in complex problems in order to extract relevant concepts for understanding and solving them.