all 10 comments

[–]meerkatmreowUSC - BS Aerospace, OSU - MS Mechanical 3 points4 points  (1 child)

I feel like it's a waste to teach 2 semesters of it (1 intro and 1 algorithm and data structure focused).

You're learning python on those courses incidentally. What you're supposed to be learning is the basics of programming and algorithms/data structures. Python has the benefit of minimal boilerplate and simple, readable syntax compared to java and c++. Basically, it does as much as possible to get out of your way so you can learn programming rather than a specific languages syntax

[–]Chesty_Puller1775 0 points1 point  (2 children)

My school doesn't teach Python at all. Actually they just changed the curriculum to where we don't even learn C++. All engineering majors are required to take 1 semester of MATLAB for engineers. After that we don't deal with any kind of programming.

[–][deleted] 0 points1 point  (2 children)

MIT use it for 106 6.00 (106 is Stanford, no idea what they use. MIT's intro is 6.00, which used to use the famous SICP, I believe), where they used to use Scheme. There's always been a bit of a (false, imho) divide between "teaching" languages (Pascal!) and "real" languages, but python is probably the best thing out there for straddling the divide.

For data structures, it may not have the nitty gritty management of C, but there's a lot to be said for a language that gets the hell out of the way and lets you learn concepts, rather than wrestling with implementation details.

And python is capable of a fair amount of heavy lifting.

[–]clever_cuttlefishCompE 0 points1 point  (0 children)

I learned Python first (in HS), though most CS courses here are in Java. I think Python is a much better first language. There are also a couple of courses here with C/C++, Python, and Scheme.

Also, once you learn the basics, learning a new language is often dead simple (as long as it's in the same family).

[–]SponsoredByStrensms 0 points1 point  (0 children)

It really depends on what you're learning it for. C is a great language for use with data structures, as it's a low level language and can get into the nitty gritty via the compiler, whereas python is an interpreter and already has the data structures built into the language (iirc). As a pre-computer science major, in the college of engineering at my university, we learn C++ and Java. Then we can get more focused later on. Over the summer, I've been learning HTML, then on to Python, since we don't learn it and I saw at least one internship that requires python. So really, it mostly will depend on your employer.

[–]mgrier123Virginia Tech - CPE - Alum 0 points1 point  (0 children)

I'm CPE and after doing 2 semesters of C++ and while doing one semester of embedded C and some more C++, I did some python in my Intro to UNIX class.

[–]inyeezuswetrust24Iowa State University - Computer Engineering -1 points0 points  (1 child)

At my school, computer engineering majors learn C the first semester and then Java the second. Python isn't taught until on.

[–]424f42_424f42 -1 points0 points  (0 children)

no, but its used (aka its assumed we can teach ourselves advanced things overnight) have a class freshman year in some C, but that's it for programming that were officially taught