As a senior in high school, I had the option to take two different computer science courses.
Option 1: AP Computer Science A, taught at my high school. The teacher was one of my school’s math teachers who had some programming experience. (My school had not actually offered a comp sci course since I started there, even though Intro to Java was on the books.)
Option 2: An independent study in computer science, taught at the local vocational high school. The teacher had a master’s degree in computer science from Brown and had worked for Macromedia/Adobe. (She was also the daughter of my school district’s Director of Technology, whom I knew as a student representative to the Technology Committee.)
On the surface, Option 1 looks better for college admission, since it’s an AP course. There may also be some perceived bias against vocational schools. However, I chose Option 2. This proved to be the superior choice. I had already taught myself basic programming skills, and the independent nature of the course meant I was able to learn at my own pace and study different topics with a knowledgeable teacher.
When I started college, it turned out that the AP Comp Sci A test wasn’t even worth any course credit. Actually, the Computer Science department did not require Computer Science I as a prerequisite for more advanced courses, assuming that if a student could pass Computer Science II, they didn’t need to take the previous course. Choosing the better course allowed me to get a jump-start on learning more once I got to college. Although I did not end up completing my intended computer science minor due to too many course conflicts with my physics major, I still found it useful to have an advantage from my high school course. I continue to use the lessons I learned from my high school teacher (who excelled at teaching object-oriented programming and data structures) in my current software/programming-heavy research on the CMS experiment.
Full disclosure: the non-AP course did not contribute to my weighted GPA or class rank because I took it in the last semester of my senior year. The last semester was not counted since rankings had to be decided before the semester ended, both for reporting to colleges and for the purpose of valedictory and salutatory addresses during graduation.
As a senior in high school, I had the option to take two different computer science courses.
Option 1: AP Computer Science A, taught at my high school. The teacher was one of my school’s math teachers who had some programming experience. (My school had not actually offered a comp sci course since I started there, even though Intro to Java was on the books.)
Option 2: An independent study in computer science, taught at the local vocational high school. The teacher had a master’s degree in computer science from Brown and had worked for Macromedia/Adobe. (She was also the daughter of my school district’s Director of Technology, whom I knew as a student representative to the Technology Committee.)
On the surface, Option 1 looks better for college admission, since it’s an AP course. There may also be some perceived bias against vocational schools. However, I chose Option 2. This proved to be the superior choice. I had already taught myself basic programming skills, and the independent nature of the course meant I was able to learn at my own pace and study different topics with a knowledgeable teacher.
When I started college, it turned out that the AP Comp Sci A test wasn’t even worth any course credit. Actually, the Computer Science department did not require Computer Science I as a prerequisite for more advanced courses, assuming that if a student could pass Computer Science II, they didn’t need to take the previous course. Choosing the better course allowed me to get a jump-start on learning more once I got to college. Although I did not end up completing my intended computer science minor due to too many course conflicts with my physics major, I still found it useful to have an advantage from my high school course. I continue to use the lessons I learned from my high school teacher (who excelled at teaching object-oriented programming and data structures) in my current software/programming-heavy research on the CMS experiment.
Full disclosure: the non-AP course did not contribute to my weighted GPA or class rank because I took it in the last semester of my senior year. The last semester was not counted since rankings had to be decided before the semester ended, both for reporting to colleges and for the purpose of valedictory and salutatory addresses during graduation.