If you know the lang you wanna learn , just go to their website .. there are always ton of free beginner tutorials .. and they are obviously best in class .. Once you are done with beginner stuff ..check out awesome (language) repos on GitHub for free resource .. Typically , when you want to learn a programming language , you have a good reason .. eg a project , or a tool you wanna build .. learning to program without a clear objective is almost like sailing alone in the Pacific :-) .. find purpose ..means will follow