As someone currently in the process of learning programming here are a few thoughts on my attempt at learning two of the bolded languages, Java and Ruby:
I’m currently working through The Odin Project, which has a backend focus on Ruby, and I’d highly recommend it. I’d also recommend Peter’s guide to TOP which I’ve found very useful which includes some time estimates, some additional resources and some things to learn after you complete TOP. Perhaps the biggest plus to TOP for me is giving projects of the correct difficulty at the correct time so that they are challenging but doable. Another of the biggest benefits of TOP is the sheer scope of the resources already collected for you. Also Ruby is far more intuitive than Java.
Before starting TOP I started learning programming by attempting to learn Java on my own without much structure. However, going on my own I’d often spend time attempting to track down a good explanation for topics. There was also the issue of not knowing what was a logical path to take to learning and I think I took some major false steps. The resource I found most beneficial during that time were probably the free courses at Cave of Programming which covered a wide range of topics but had the huge downside of being somewhat dated video tutorials. Other than that I didn’t find lots of free resources to help learning Java but there are some pretty cheap stuff on Udemy and a subscription to Lynda could be a good investment as well.
Of course, a huge caveat, I am a sample size of one who had no experience at all with programming before starting with Java. People with different backgrounds may have very different experiences.
Regarding the topic of how to learn, I am not such a fan of the online courses relative to simply reading a book or website which lists all a language’s syntax, or a long list of functions. If that’s enough for you to grasp it, it’s certainly faster. Many of the main websites for languages contain these lists.
As someone currently in the process of learning programming here are a few thoughts on my attempt at learning two of the bolded languages, Java and Ruby:
I’m currently working through The Odin Project, which has a backend focus on Ruby, and I’d highly recommend it. I’d also recommend Peter’s guide to TOP which I’ve found very useful which includes some time estimates, some additional resources and some things to learn after you complete TOP. Perhaps the biggest plus to TOP for me is giving projects of the correct difficulty at the correct time so that they are challenging but doable. Another of the biggest benefits of TOP is the sheer scope of the resources already collected for you. Also Ruby is far more intuitive than Java.
Before starting TOP I started learning programming by attempting to learn Java on my own without much structure. However, going on my own I’d often spend time attempting to track down a good explanation for topics. There was also the issue of not knowing what was a logical path to take to learning and I think I took some major false steps. The resource I found most beneficial during that time were probably the free courses at Cave of Programming which covered a wide range of topics but had the huge downside of being somewhat dated video tutorials. Other than that I didn’t find lots of free resources to help learning Java but there are some pretty cheap stuff on Udemy and a subscription to Lynda could be a good investment as well.
Of course, a huge caveat, I am a sample size of one who had no experience at all with programming before starting with Java. People with different backgrounds may have very different experiences.
Epicodus put their entire Ruby/Rails program online for free here. I don’t know enough to judge the quality, but it might be useful.
Regarding the topic of how to learn, I am not such a fan of the online courses relative to simply reading a book or website which lists all a language’s syntax, or a long list of functions. If that’s enough for you to grasp it, it’s certainly faster. Many of the main websites for languages contain these lists.