Summer 2020

Columbia Summer High School Academic Program for Engineers (SHAPE):

Course Names:

  • Advanced Computer Science, Web Development Elective

Course Description:

  • This course addresses students who already have some basic background in computing and programming in any language (such as Java or Python). By the end of the course, students will know how to think like a computer scientist, develop computational solutions to problems at a high level, critically compare different algorithms that solve the same problem, and implement applications in Python from scratch.

  • The course consists of the following components, which build on each other:

  • A brief review of the Python language, with a focus on object oriented programming.

  • Formal analysis of algorithms and big-O notation. Students will implement, analyze and compare a number of comparison-based sorting algorithms.

  • Theory and implementation of fundamental data structures such as stacks, queues, heaps, trees.

  • Graphs and associated algorithms (tree traversals, shortest paths).

  • An introduction to Artificial Intelligence and problem solving using heuristic state-space search, as well as adversarial search and game playing.

  • Additional topics such as an introduction to Machine Learning and neural networks may be covered based on student interest.

Notable Projects:

  • Implementation of sorting algorithms, Othello AI, Cryptocurrency news terminal (Web Development)

Languages Used:

  • Python, HTML, CSS and JS

Instructor Notes and Feedback:


Stanford Pre-Collegiate Summer Institutes:

Course Name:

  • Introduction to Data Science: Visualization and Modeling

Course Description:

  • Data science has revolutionized the way our world works and how we understand it. Technology enables us to ask more questions of more data, but how do we go about using these tools effectively and ethically?

  • This course will introduce students to computer algorithms and the diversity of models they can generate, each with pros and cons. Students will use datasets from the natural and social sciences to answer real-world questions, pursuing questions and data relevant to their own lives. They will apply different facets of machine learning through R programming exercises deeply integrated into the course. By the end of the course, students will have developed a technical skill set that allows them to investigate any given dataset with strong coding abilities and a scientific approach.

Notable Projects:

  • COVID-19 Heat map, Bitcoin Price Prediction Model

Languages Used:

  • R

Instructor Notes and Feedback: