After playing a little bit with QBasic when I was a kid, I was given a K&R C book. My takeaway: programming is not for me. I didn't look at programming seriously again until I was 23. This article is terrible advice.https://www.zeroequalsfalse.press/2017/11/29/c/
-
-
I completely agree with you on C - it's a terrible language. But as a first language, Ruby and Javascript are terrible choices as well - you may have more fun, but you will likely learn how to do everything wrong.https://medium.com/@mindplay/the-problem-with-learning-languages-like-javascript-php-ruby-or-python-first-is-you-can-get-away-7accc689d365 …
-
Can you give an example of something "loose" you can get away with in both Ruby and JavaScript that you can't do in Go that you have to spend years to unlearn?
-
Yes, you can learn how to get away with certain wrong things in Go as well, but it's not the first thing you will learn - in Go is easier to do things right, and you have to go deeper to break the rules - in Ruby, JS, Python etc. it's the other way around.
-
I really want you to provide me with an example, not just rhetoric.
-
I don't think my post is at all rhetorical though. In my experience, devs who don't know any of the stricter languages, even if they create working products, tend to write code that no one else can understand. Programming requires discipline - the loose languages don't teach it.
-
My experience is that trying to bootstrap with a strict language causes people who could be great programmers to bounce off. I wrote Ruby and JS for years before writing way more code in Rust and TS and I have not experienced years of bad habits to unlearn.
-
On the other hand, as I said in my original post, sentiments about what it means to be a "real programmer" pushed me off of the path that eventually led me to working on the Rust programming language. So I just disagree with your empirical claim.
-
Isn't it possible you just didn't really have the interest or patience when you were younger though? People change. I've changed my opinions on lots of things over the years. Maybe you just weren't ready yet? ;-)
- 8 more replies
New conversation -
-
-
This is great advice for beginners and I couldn't agree more. But for the context here, which is an object oriented course, I would never recommend Ruby or JS (nor C/C++).
-
What would you recommend?
-
I like the Kotlin type system. I believe it represents well the Object Oriented concepts and has a clear and fun syntax. Also, since it's Java compatible, it has a great variety of use cases out of the box.
-
No Python? Python is OO and beginner friendly
End of conversation
New conversation -
-
-
Everyone is so different. K&R alienated me as a beginner. But so did Ruby. VB and C# got me through thanks to rich tooling and APIs explorable from IDEs.
-
What do you think it is about Ruby that causes difficulty? The terseness?
-
I can’t explain, it just felt funky to me
End of conversation
New conversation -
-
-
apposite interview with
@ohhoe today ;)https://medium.com/@nodejs/how-i-got-into-node-rachel-white-913671778acc …Thanks. Twitter will use this to make your timeline better. UndoUndo
-
-
-
Ruby, JavaScript, Python, Go, and QBASIC (it still works) are all easy starting points. Possibly Pascal too but I never bothered with it. Still, some may be able to start with C++.
-
Hear hear!
End of conversation
New conversation -
-
-
I agree. A lot of students express to me their desire to make something visually appealing early in the course, which i end up having to explain is not simple at the start of C++, so I definitely see the hindrance here.
-
Python is good for beginners too!
End of conversation
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.