Start learning at 50
I’ve always wanted to learn programming. I’ve read a blog post saying that at this age it was to late . Then I read a post here in saying the opposite. I’ve found a site that was learn x in y minutes where it has a bunch of languages there. After reading them, the languages that caught my attention were Julia, Clojure and Go. Are any of these good for a beginner or should I start with something else? I know what are variables, can spot an if/else statement but that’s about it. What are some good resources for someone like me who likes to learn by doing things?
Pascal was designed for beginners, so I’d start there. Get a handle on the basics before you move onto something which is using object-oriented programming, as that’s a whole thing to understand in itself. One step at a time (I’m a teacher, and we always only teach students one concept at a time). And once you’ve got the basics then C# in a Nutshell series of books (one for each version of C# as new features come out) is very good with explaining the next level stuff and not rehashing the basics (there may be similar books available for other languages, but that’s outside my area of expertise).
For the people saying Python is beginner friendly, no, it isn’t. I had to teach it to high school students (I had no choice in the language). Having to have exact indenting, whilst also not caring at all about how you use your variables, not to mention is OOP, is all a bit much for some students, some of whom don’t even fully grasp how to use loops yet. One step at a time.
One nice thing about learning (and teaching) python is that it’s a multiparadigm language. Students don’t have to learn about indenting until you cover flow control. Classes and OOP can come way, way later.
I started with C++. Also multiparadigm, but the syntax and compiler errors were brutal, not to mention pointer arithmetic.
I’m not sure I can think of a language that would be better suited to learning. GDScript seemed kind of nice, and you get to make games.
Which is one of the very first things they’re taught - “hello world”, variables (“Enter your name”, “hello {name}”), branches, and loops, in that order.
Pascal - it’s what it was designed for. Variables, branches, and loops, with strong types and optional indenting. Once people have a handle on that, THEN move onto OOP.