You can`t learn programming from reading books or online fill-in-the-blank type tutorials. Especially the online tutorials with browser based exercises where you code directly in your browser. The problem with that approach is that it doesn`t provide practical experience. It provides an illusion of learning something as it tugs you along to complete an assignment that`s more of a fill-in-the-blank type problem. A student feels like they`ve learned something but that knowledge does not stick. Unfortunately that experience will not help in an interview nor an actual project. Valuable time ends up going to complete waste.