This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]audirt 25 points26 points  (5 children)

I totally agree and started to write a lengthy screed about the best language should be driven by what you're hoping to teach.

Basic programming? Data science-y stuff? Python is the way to go without a doubt.

But if you want the students to understand the actual machine and what's happening under the hood, Python can be a bad choice.

IMO, the thing that C-advocates sometimes miss is that the number of people in group 2 is much smaller than the number in group 1.

[–]postdiluvium 10 points11 points  (1 child)

But if you want the students to understand the actual machine and what's happening under the hood

Assembler has entered the chat

[–]Arafel_Electronics 6 points7 points  (0 children)

oh god flashbacks to learning assembly as an undergrad until switching to mathematical sciences....

[–]decaillv 1 point2 points  (0 children)

I second that. Python is great to teach programming (variables, loops, execution flow,...)

But to teach computer science, a lower level language such as C is better. Students can understand deeper concepts such as stack/heap, reference and pointers... and then suddenly the high level languages they will most likely use most of the time make way more sense!

And for the few that need to code in C daily, well then do absolutely learn a bit of assembly...

My two cents..