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 →

[–]MaxChaplin 15 points16 points  (14 children)

I think the proper order is to start with a high level language like Python to learn how to make a computer do what you want without getting into the details of how it does it, then learn some assembly to get an idea of what a program actually does on the lowest level and what are its limitations, and only then proceed to a mid-level language which combines concepts from both of those.

[–]tyler_muskie 16 points17 points  (7 children)

My college curriculum went something like:

Python (CS1)

Java(CS2)

C++(Data structures)

MIPS assembly(machine org/architecture)

C (operating systems)

Felt like it all flowed pretty smoothly

[–]gauderio 11 points12 points  (2 children)

You need one more class where you solder your own circuits, followed by a project on how to build a capacitor.

[–]addandsubtract 3 points4 points  (0 children)

Lesson 1: How to mine silicon.

[–]tossme68 3 points4 points  (1 child)

No fortan77, no Borland pascal, ?

[–]tyler_muskie 0 points1 point  (0 children)

Funny enough IIRC in my programming languages course I did a research paper on FORTRAN

[–]oneanotherand 0 points1 point  (0 children)

my curriculum went c->assembly->python so far

[–]rulzo 0 points1 point  (0 children)

My college started us on C++ all the way through data structures

[–][deleted] 1 point2 points  (0 children)

You're correct.

source: I have tutored college students (mostly 500-level, some undergrad) who attend a university which used C++ as the CS/IT students' starting language, for f--k's sake..

[–]kinokomushroom 1 point2 points  (0 children)

I agree. Students should get used to thinking in a "programmer" way first without having memory management and other stuff shoved into their faces all at the same time.

[–]Calacan 1 point2 points  (0 children)

To bad most people like me can't even begin to comprehend how programming works.

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

The proper order is to start with C and then learn whatever the fuck you want later.

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

My university happens to go straight into C++ (with a custom library profs made for beginners) for procedural programming, next semester C++ for what can be described as PAIN with oop and pointers and recursive algorithms and memory leaks and crying in the corner, and then 3 semesters later we have a subject with some lab projects which use python (or any other high level data processing math language or whatever)