Fundamentals of Programming and Computer Science (College in High School) Course ID 15111 Description A college-level introduction to the foundations of programming offered to high school students through Carnegie Mellon's CS Academy platform. The course emphasizes problem-solving in Python with clear, robust, and reasonably efficient code using top-down design, informal analysis, and effective testing and debugging. Topics include data and expressions, conditionals, loops, strings, 1d and 2d lists, animations using model-view-controller, sets, dictionaries, efficiency and Big O analysis, object-oriented programming, recursion and backtracking. Required Background Knowledge High school students who take this course for CMU credit should have at least one prior full-year course of programming (in any language) or the equivalent, and must have their teacher's permission based in part on their performance on the required/recommended math pre-test. Course Goals Students who complete this course and pass the CMU-supplied and CMU-graded final exam with a C or better can have their final grade transcripted as 15-111. Most colleges will transfer credit for courses with a grade of C or better. 15-111 will count as a prerequisite for any CMU course requiring 15-112 and the student could transfer the credits to any other college as appropriate. After the initial offerings of this course, students informed us that, in addition to Carnegie Mellon, they received course credit from schools including Penn State, Purdue, U Maryland, U Mass, U Virginia, U Wisconsin, and Northern VA Community College. Assessment Structure In February, a Practice Exam is made available; Feb 1 - April 15 is the 15-111 Exam signup and CMU Course Enrollment Petition submission period (students who sign up will be registered for 15-111 and billed for the $200 exam cost); mid-May is the exam date with the 15-111 Exam Date set to be after AP exams. If a teacher has an approved conflict, we will allow an alternate date soon after the official date; mid-June exam grades are entered into the CMU registration system. Course Link https://academy.cs.cmu.edu/