Is AP Physics C helpful for CS major?

Why not?

Are we talking about course usefulness, or course rigor (especially from the perspective of adcom)? While a web development course may be useful, plenty of kids learn how to develop websites without taking such a course. It’s a trivial task to learn, even though it may be time-consuming.

Unless you are using a very narrow definition of web development (simple static content websites with no accounts and the like), it is not a “trivial” task. I think that is a bit of an absurd characterization, considering virtually all applications are either browser applications (requires web development), platform-specific applications (desktop, mobile - and oftentimes still using web paradigms), or hybrid (which uses web-heavy paradigms). To say web development is trivial, is to say most application development is trivial.

OP said this is a college-level Web Dev class. It isn’t going to be stuff like making Wix sites or serving static simple HTML pages from localhost (unless this was misrepresented).

Whether it was offered by a college or not, it’s still a trivial task to learn. Do you know any tippy-top CS program that offers such a course?

Are you being serious? Literally every one of them… For example, at my alma mater:

At the College of Engineering:
EECS 485 (eecs485staff.github.io)

At the School of Information:
339 - Web Design, Development, and Accessibility | umsi (umich.edu)

1 Like

Web services are far from trivial. I am not sure what goes into a HS-level Web Development course, but maintaining a reliable, scalable, distributed system is not something most people just pick up for themselves, and if you want to do it right, you really do need a theoretical framework for it.

1 Like

It’s trivial (to learn) in the sense that it can be learned by kids on their own, if they have the inclination, time, and some reasonable smarts.

You can say this about almost any subject, including physics. I encourage you to look into the syllabi of what I posted above and see what is covered in a college-level Web Dev class. Even better, if you think web dev is so trivial, I encourage you to create a simple website yourself. Navigable and responsive pages, user authentication, lazy loading (or a reasonable alternative), data updates across pages, cookies + session management (including options for your users to customize in order to comply with stuff like GDPR), consuming an API, having its own API to communicate with your database layer, your secure database, having the site hosted, secure HTTP - all this is just about the bare minimum for creating a public website (failing to do some of that stuff could even cause legal trouble). I haven’t even gotten into best practices, like breaking up stuff into microservices, CI/CD tooling (containerization, orchestration, CI pipelines), performance monitoring, security monitoring and scanning, database tuning, concurrency/parallelism/async/thread locks/mutations/multithreading, and on and on.

I’ve been seeing a lot of debate here so I guess I’ll clarify my personal situation. I go to a very, very high-ranked high school in the country (I don’t want to say which one but I’m sure it can’t be too hard to figure out based on the rankings) that is especially focused on STEM. And so, yeah, it’s not just one of those trivial web development courses. But I also should add that AP Physics C is undoubtedly the most difficult class offered at my school. In fact, I have serious doubts about my ability to get an A in the course. Additionally, though I plan to apply EA to as many schools as possible, I would have to apply RD for a good chunk of schools, meaning that some schools would take a look at my first semester during senior year. So the decision basically becomes whether to take an easier course in AP Stats/Web Dev(not an easy course) which I would probably have an A in or take a much harder course (the hardest, in fact) but risk having a not-great grade.

You’re sure about this? What do you consider Web Development to consist of? All right, here’s one description

​In this course, students will learn the fundamentals of dynamic web applications and websites and help them transition from technology consumers to technology creators. Students will learn how to program using Ruby on Rails, HTML, CSS, and JavaScript. The course will cover computer science basics such variables, data types, loops, conditionals, functions, version control and web-focused technologies such as RESTful routes and API integrations. By the end of the course, students will be able to build a dynamic web application from scratch and push it live to production servers.

Sure, you can learn a lot of this on your own or apply other programming skills. I agree that it is simpler than teaching yourself calculus or advanced physics. Understanding how the entire system interacts is often the difference between doing this well or making a mess of it. Many people claim to know REST and they really just do a lot of copy-paste coding. I doubt many high school students teach themselves Ruby on Rails, and if they did, I think that would be something to brag about.

A HS student who built a cloud application full-stack and could explain how it worked back-end and front-end would be better prepared for a computer science program than one who had As in physics and calculus.

But all that aside, I will concede that computer science isn’t “rocket science.” I just take issue with your “yuck”. One wonders what you think of kids who take AP economics or government.

I haven’t seen anyone becoming a physicist by reading a few books, but I’ve seen plenty who have become great programmers without any formal education in that subject.

likely B in AP Physics C vs. a likely A in AP Stats and a likely A in Web Dev?

I would choose the latter in a heartbeat, especially as a HS senior and prospective CS college student. You have more compelling things to worry about, like writing great essays, securing fantastic recommendations, submitting those college apps, having some memorable moments with your friends before you part ways, prom, etc. There is a minimal, if any, benefit of your coursework being seen as more rigorous with you taking AP Physics C vs. AP Stats + Web Dev. The cost, which is a risk at a lower grade AND time spent away from that important stuff, is not worth it in my view.

I also happen to have some dim views on a few AP courses.

That’s a terrible comparison. A more fair comparison is physicist vs. academic computer scientist. I think you are seriously underestimating computing as a field, which is a shame.

1 Like

One of my favorite “fun facts” about Enrico Fermi is that he taught himself calculus as a teen–from a secondhand textbook written in Latin. See e.g. this source. OK, his case is very unusual.

I actually agree that AP Physics C is going to look very good in terms of rigor. It has a dog-and-pony show aspect to it though, because the skills and inclinations needed to do well in CS, even academic CS, are just not the same as those needed for Physics.

1 Like

I actually have deep respect for computer scientists. My S is a CS major and will likely become a computer scientist. I certainly don’t underestimate the challenges. However, programming is a different matter.

Programming is a broad term, but if you think web dev is just programming, you’re wrong.

I just asked some people (in addition to my counselor) and they are telling me the average first-semester grade for students is in the B- to B range for AP Physics C. And, again, I go to a pretty high-ranked school where most of the kids are above average, so it’s safe to say this scares me a little.

I’ve edited my above response with some more food for thought.

1 Like

I’ve seen plenty of “great programmers” who cannot begin to analyze algorithmic complexity or even tell you if their great program has exponential or quadratic running time.

Beyond that, very few self-taught programmers are effective software developers before working in an environment that places a higher premium on maintainability and testability than just getting the code out as fast as possible.

I’m not coming from this with an unrealistic notion about physics vs. software development. Yes, more people are likely fail out of a physics course. Physics is counterintuitive whereas building a web application should not be. That does not mean that one is more worthy in any sense. Students should follow their passion.

There are also some incredibly elegant theorems in CS, such as the inverse-Ackerman complexity of of union-find. It’s not always easier than physics. It does require a different way of thinking.