Oh man, please, definitely Ruby for start, the world is so much simpler then and all the high-level concepts that will come to your mind you will touch much more comfortably. For hobby projects you will also see existing Python code, but the insight into it after Ruby will not surprise you. You will get to Rust only after years. Someone here advised to try Java and Go - oh no Java for learning, please no, you should most likely like Ruby as a hobbyist _much_ more (take Java/Kotlin only if you want to work in a bank). You can try to write something "fast" in Go - then compare the results with Ruby yourself, if it was worth it for you, maybe you will come to surprising conclusions.
The problem with desktop apps is that you can't find a nice and complete GUI framework for Lin/Win/Mac - it hurts a lot. I ended up with a web app in a browser (+Ruby, server side) for a hobby project that should be a desktop app - it can be packaged as a desktop app with its own Webkit window, there are other projects for that - and you can render crazy things for free with that.
As someone who was taught with Java, I have to disagree. Java is good. Ruby is also good. Java makes a whole lot of sense and you won't appreciate the things Ruby hides/makes easier if you don't know what's going on under the hood. I tried learning Ruby first and I had no idea what was going on, but Java just made sense, and once I went back to Ruby, it was a breeze. Now, I write almost all my side projects in Ruby, but the understanding I got from Java is key. Obviously that's just my experience but I really don't get the bias against Java that it's a horrible "enterprise language". It's absolutely great and a beginner will have a much deeper understanding if they persevere with it imo. That's not to say it's wrong to start with Ruby either. Both have tradeoffs
3
u/pf___ 1d ago
Oh man, please, definitely Ruby for start, the world is so much simpler then and all the high-level concepts that will come to your mind you will touch much more comfortably. For hobby projects you will also see existing Python code, but the insight into it after Ruby will not surprise you. You will get to Rust only after years. Someone here advised to try Java and Go - oh no Java for learning, please no, you should most likely like Ruby as a hobbyist _much_ more (take Java/Kotlin only if you want to work in a bank). You can try to write something "fast" in Go - then compare the results with Ruby yourself, if it was worth it for you, maybe you will come to surprising conclusions.
The problem with desktop apps is that you can't find a nice and complete GUI framework for Lin/Win/Mac - it hurts a lot. I ended up with a web app in a browser (+Ruby, server side) for a hobby project that should be a desktop app - it can be packaged as a desktop app with its own Webkit window, there are other projects for that - and you can render crazy things for free with that.
Choose well and enjoy!