Ti2 Data Science Program
Why teach young children computer science and the fundamentals of programming? Why continue to educate older children in computing and even expose to and immerse them in data science, which presupposes a strong understanding of computing? What do these young people gain; what might they lose?
There is the practical reason that most things we touch or more likely touch us operate with computers chips and components, which require programing knowledge to understand how to make them work. Others hold the perspective that learning computer science cultivates a type of procedural and process thinking of cause and effect in highly complex systems and therefore the ability to abstract within high levels of systemic complexity.
It’s no accident that a single program episode for younger people has multiple themes in time and space that move with such rapidity. They require a certain type of processing to follow.
In a technologically directed world where economic and political power resides with those who make or understand the technology it is clear that developing an understanding is important to professional success. Power is amplified by their ability to use and understand computing. In that same environment it is personally important to gain such understanding to be comfortable in this world.
At Ti2, we recognize computing as another form of literacy in a world permeated if not grounded in technology. We want our students to be successful professionally. We really would like our students to be fully at home in the world into which they are entering as independent adults.
The full program is a six-year course of study. Students with prerequisite knowledge and understanding can enter at any level with permission from the program director. And, as always, age is a rough parameter. The Innovation Institute does not deny students the right to learn. We do take social and emotional development and wellbeing into consideration for admissions to a course.
Computer Science in Python I: Game Programming, Grades 4, 5-6
This course introduces or reinforces critical programming concepts including:
Students explore the above concepts through computer game design using the Python programming language.
Students also explore basic algorithms (e.g., sorting, searching, and hashing), basic data structures (e.g., lists and trees), basics of image processing, and the basics of object-oriented programming.
Currently, Python is one of the most prominent and more robust modern programming languages used in science; however, when a new language supplants Python our students will be well equipped to learn it. We choose to teach Python rather than Unity, for example (a game programming-specific language), as the focus language for this reason. Students who complete this course will be capable of completing some of today's programming tasks by the course’s end. Our philosophical grounding in the how’s and why’s of all that we teach, including computer science, will position students to learn new languages given strong computer science foundations.
Computer Science in Python II: Game Programming, Grades 6-8+
This course builds upon Level I by introducing concepts including:
- more sophisticated algorithms (e.g., divide and conquer strategy, dynamic programming, further graph algorithms); and the
- basics of Artificial Intelligence (e.g., A* search).
The above concepts are taught by experiencing the challenges and fun of designing games in Python. One objective of this course is to equip students to build any app that stretches their capacities and imagination.
Data Systems, Levels I, II & III, Grades 8-12
Data play intimate roles in all aspects of life, personal and professional, from individual online purchases to business and science. The deluge of data generated from many sources, or so-called “Big Data”, present enormous challenges in analyzing them, let alone deriving the insights contained within them. The knowledge required to analyze them are drawn from multiple disciplines, such as statistics, machine learning, information sciences, and computer science, which can take years to master.
The Innovation Institute series of Data Science courses provide hands-on learning and some theoretical backgrounds toward this end. By the end of the series, students should be well equipped to apply cutting-edge Data Science techniques, such as Artificial Neural Network, Deep Learning, Reinforcement Learning, Random Forest, Regression of various kinds, Model selection, Predictive Modeling, as well as formulating real-world questions into series of analyses, all the way to some basics of result interpretation. Throughout the series, students will be analyzing real-world data of various fields, such as financial, education, public health, and genetic data, using R and Python programming languages.