There are some computer science programs which use C++ as the language for the introductory courses and I feel great pity for those students what a horrible way to be introduced to programming

@wallhackio our class did this and even at the time i felt like they should have just done C instead

@wallhackio it’s wild to go through a basic computer science class and still not be able to read a single file of C code because they never REALLY taught you how malloc() and friends worked

@Lady strange to use C++ then.

Also I am curious what language would you use to teach new programmers basic software concepts

@wallhackio i think basic software concepts should be taught in C, because there is no more basic software concept than “produce readable, maintainable code and do not shoot yourself in the foot”, and C is the easiest language in which to discern whether a student has learned these lessons

for anything more advanced than that, idk, probably Swift

@wallhackio (actually i think there’s an argument to teach basic programming concepts in POSIX sh instead, and would also consider this acceptable, but this is a more radical take)

@Lady @wallhackio POSIX shell sounds like it would be hard to teach because of all the nasty corners in it but this is otherwise a good take

@aescling @wallhackio i’m not sure teaching “computers have to tokenize your code before they can read it” is a bad thing necessarily

@Lady @aescling @wallhackio i do think that shell commands spending so much of their time as strings before the computer does anything is bizarre and sets up weird expectations if you try to then go to another language

like i can't think of how exactly to phrase this but the old rm -rf $STEAM_DIR/* bug that just wipes your drive when $STEAM_DIR is empty, is like. i can think of ways that a similar kind of bug could come up in other languages but that feels like the result of a sharp corner to me

Follow

@monorail @Lady @wallhackio i mean this is a diffurent kind of mine than word-splitting really, but related i suppose, but what i mean is that the purrticularities of tokenization in the POSIX shell are complex in ways that make it not hard to footgun, which is a pedagogical challenge to overcome. i think it might be worth it given that shell is somehow still a good language, and hell, people teach python to new students, and that definitely has its own dark corners. but like

@aescling @Lady @wallhackio i am of the opinion that every new programmer should learn either (something like) python or (something like) C and then work towards the other, and which one they should start with depends on the student so this idea is completely impractical

@aescling @Lady @wallhackio i think that if you're the kind of person who should know ocaml, you'll learn it, and there's no force on heaven or earth that could stop you

Sign in to participate in the conversation
📟🐱 GlitchCat

A small, community‐oriented Mastodon‐compatible Fediverse (GlitchSoc) instance managed as a joint venture between the cat and KIBI families.