Published on

My thoughts on AP Computer Science A

Plus my thoughts on Java and AP as a whole

Authors
  • avatar
    Name
    Ethan Chey
    Twitter

Hello internet! I have some random thoughts to share.

So, some context before we start. I'm currently taking AP CSA through FLVS, or Florida Virtual School. It's a state-run online "school", where students in Florida can have their entire education hosted online or physical-school students can add an extra class to their schedule without it taking up an additional period.

AP CSA is a really interesting course in my opinion, and definitely one of my favorites. It's fun and somewhat challenging, instead of being only challenging like many other AP courses (AP Biology...).

Java: you love it or hate it

Despite the somewhat common sentiment about Java, I think it's good and fits well into an AP course curriculum. Granted, I've taken many past college-level courses on Java, so it's not very difficult to me. However, there's a reason why so many courses still use Java: it's universal and teaches what curriculums want.

Do I actually like Java? I'm not sure. It's definitely more intuitive to me now, but I don't know if two-years-ago me would agree with current me. I really don't think some Java concepts are intuitive to the layman wanting to pick up programming, especially with concepts like objects, constructors, overloading, etc. I know for a fact that when I first read it in a textbook, I was so confused! I think Python is a good example of a simple-to-learn programming language -- it is quite intuitive and hides the majority of its complexity. While writing this, I realize that this is probably the reason why it was the first programming language I learned in school.

Does APCSA "teach" Java well?

I put teach in quotes on purpose here -- how well you're taught in an AP course is overwhelming determined by your teacher. With that being said, I believe that the curriculum is structured in such a way that if a student were to learn each unit in order, they would have a decent understanding of Java by the end. There's no "out-of-order" units; you're not taught about recursion before variables. Everyone's experience will vary though, as it also depends on how "logical" you think. In other words, if you're someone who enjoys math and enjoys logic puzzles, programming is likely up your alley. If not, then you may have a harder time!

Update: post-AP-scores

I got a 5 in AP CSA! The score distributions for AP CSA were interesting to look at. 67% of students got a 3 or above, and a quarter of students got a 5. This appears to be in line with previous years, but I'm surprised at the average score consistently being above a 3 for the past 10 years. Crazy!

Word counter
So many numbers! Current statistics as of July 18. View the full page here.
View this page on GitHubPublished on