Lemme tell you something, DO NOT learn BASIC as your first language. As a hobbyist, I avoided C/C++ for 25 years because I just didn’t get pointers and memory manipulation, and messed around with other languages like JS and PHP instead (also BASIC’s GOTO and GOSUB kinda ruined me as a programmer for a few years). But once it finally clicked a couple years ago, I now want to write EVERYTHING in C/C++.
I think plain C at least should be everybody’s first language. It literally reprograms your brain to think exactly like how a computer internally functions. I never got that with other languages, because they were so far removed from the actual machine.
Edit: also, after learning some of it, it’s pretty neat when you do stuff like look at parts of the Linux kernel source code and think “wow, I know what’s actually happening here now!”.
I actually think that everybody should learn a functional language like Scheme first because it teaches you to think about state explicitly. It’s very easy for somebody who learned a functional language to pick up an imperative one, but it’s very hard for people to go the other way around.
Lemme tell you something, DO NOT learn BASIC as your first language. As a hobbyist, I avoided C/C++ for 25 years because I just didn’t get pointers and memory manipulation, and messed around with other languages like JS and PHP instead (also BASIC’s GOTO and GOSUB kinda ruined me as a programmer for a few years). But once it finally clicked a couple years ago, I now want to write EVERYTHING in C/C++.
I think plain C at least should be everybody’s first language. It literally reprograms your brain to think exactly like how a computer internally functions. I never got that with other languages, because they were so far removed from the actual machine.
Edit: also, after learning some of it, it’s pretty neat when you do stuff like look at parts of the Linux kernel source code and think “wow, I know what’s actually happening here now!”.
I actually think that everybody should learn a functional language like Scheme first because it teaches you to think about state explicitly. It’s very easy for somebody who learned a functional language to pick up an imperative one, but it’s very hard for people to go the other way around.