Anecdotally, I’ve read a few threads on here about Engineering students needing some computing skills right off the bat in some of their courses, in some schools, to support work in, say, a physics course.
What general computer languages (and hey, general skills while we’re at it) should prospective students be exposed to? For example, I hear that MatLab is something used. But how can a high school student (affordably) have some exposure to it, if their school has limited computer offerings?
Students are facing many challenges at college that can impact anxiety levels; having some previous computational experience can help them feel more confident and less like they’re playing catch-up when doing class work or group work. Hence, this question.
Anecdotes and recent experiences/feedback are welcome!
My D only had a semester of CS in HS. Super basic stuff. Everything she needed in her college courses she was taught in those classes. She didn’t feel at a disadvantage not having more CS classes before hand. She had no prior exposure to Matlab or Aspen, what she uses the most, until college.
Always appreciate your posts and that’s great to hear; your daughter has been thriving!
That being said, every student is different. Some really want to have some orientation before actual orientation. And/or have attended high schools that haven’t adequately prepared them for where they have been accepted. Especially versus other students. Hence the question.
The course that really acts a weedout at many colleges for engg students is calculus. If you are on a strong footing in calculus going in, you will feel very comfortable. Or at least not uncomfortable. That will also make Physics easy.
But is programming relatively trivial? Some engineering types prefer the building of things rather than the programming of them. Perhaps I am mistaken, but I view computer programming as different than calculus/physics topics. From what I’ve seen, there are kids that love programming or at least do a lot of it, and other kids who are not all that partial to it and do the computing they need to to get by in their classes. Just my impression.
Programming is just logical thinking and structure. There is some craft to it. Different part of the brain. Not hard to pick up. 6th grade kids are doing it these days. Maybe trivial is a bad word to use here :-). Once you learn one language, most other languages are similar. Of course takes time to get good at it. If you are going to be a CS major though, you may want to come in a little bit prepared – ideally with Python or Java, and if you are really motivated, do a data structures/algos course in the summer.
I don’t disagree with your points (that programming is logic and structure; started early for many - but not all; many languages share similarities). It’s just that some engineering students are into programming, but others really are not. Hence the expansion of engineering majors.
What is the intended engg major? A friend at an auto company was telling me recently that pure mech is hard to hire these days, but mech with data science is a great combination. Other people I talk to were telling me that some combination of mech, electrical and coding is a good combination of skills to have. I don’t know how much programming civil engineers need – I would guess they use pre-packaged custom software, and not code anything up from scratch. Likewise with Chem engineers.
Even for a CS undergrad, the math is more important. I would guess that CMU SCS would prefer to see strong Calc BC grades, and would love a discrete Math course over an AP CS course if there is only time for one.
I agree that Math is more important for CS. I was just pointing to the fact that while you can do well coming in without much programming experience, you will be surrounded by kids who have been programming since at least middle school.
Learn Python. It is free, and has become ubiquitous in industry for handling data. I have no idea if it would be needed for undergrad engineering, but knowing Python will definitely not hurt. It has some similarities to Matlab, so the transition would be easy.
For a brief introduction to Python for physical science and engineering (not aimed at prospective CS majors), this is a free resource used in a popular UCB DeCal class: Python for Astronomers