Computer science knowledge and coding are skills that nowadays can be learned from the childhood. Obviously, they are becoming vital for our daily life, such as reading or writing, for instance. However, there is a lack of programming-literate teachers at schools, so this is where the online services may come into play. They provide you mostly with an ability to start making practical exercises simultaneously with learning theories. Here is a set of some of the services that already count millions of users...
Focused on web development, Codeacademy is one of the most popular free education services nowadays. It is mostly aimed at the novice users without any programming experience and provides them with knowledge of JavaScript, Ruby, Python, HTML, and СSS. The course features practical lessons with detailed instructions in the wizard-like form.
Once you are done with the first steps and have understood the basics of the particular topic, you can start playing with blocks of code. Be sure: all your errors will be corrected by the system. At the end of each task you will earn a badge. Gathering some of them, you will be able to increase your level. That all sounds like a gameplay, isn't it? What's more, Codecademy includes no video instruction, just exercises and examples. Maybe, its use convenience is the reason why this service has been selected by British government as the main learning platform for K-12 schools in the new educational programme. Finally, although the structure of Codeacademy has been criticized by users, developers try their best to improve it. You can briefly fill in an interactive form available in the down right corner to send an immediate feedback to the developers about the possible mistakes in the explanations. No wonder, the project is being made by volunteer contributors, just like Wikipedia, so mistakes may occur and have to be corrected.
Code School offers online web technology courses with video lessons, screencasts, and coding exercises. In comparison to Codeacademy, there is only some free content, and you have to pay for most of lessons. Besides JavaScript, Ruby, HTML, СSS, the service provides users with an ability to learn building iOS applications for iPhone and iPad mobile devices. Each lesson structure differs from the ones at Codeacademy: there are less wizards. The theory is explained along with instructions for a task. The code lines are put into the frames, code strings are highlighted, each symbol has its particular color.So is the design of the whole window: you'll clearly understand what your goal is, where to enter the variables, and where to see the output lines. As for the hints and error corrections, they are quite vague. Like a good teacher, they encourage users to think what is wrong with their code and find out the mistakes by themselves. Similar to Codeacademy, you will be able to collect badges, keep track of your progress, as well as observe how many lessons are left to complete the whole course. What's more, you can watch videos made by experienced programmers, ask questions on the Forum, and get notifications about new contents which are being continually added by developers. A monthly subscription of $29 is required.
In case you prefer learning from real teachers, that's Udacity at your disposal. This is a service that currently includes 14 classes, where you can learn to solve complex problems with the help of world-renowned university professors, and company members in Silicon Valley, such as specialists from Google, Mozilla, Facebook, and Nvidia, for example. Courses cover topics that will not only teach you how to write code, but also provide good knowledge of mathematics, physics, and even bring some basics of "How to build a startup."
Among the most demanded ones is web development, programming for Android, software engineering, software testing, etc. So these are skills that may be necessary for lots of positions in the IT companies.Courses are categorized in accordance with knowledge level and have the detailed description, including a schedule and information what you will finally be able to build. Obviously, Udacity can be considered as a serious system of distance education.
So this project suits mostly those who want not only to develop specific skills, but intend to get certificates by the end of courses. Due to this reason, its monthly subscription cost of $150 is a bit higher than on other similar services.
By choosing methods and services for learning, you should think of what you would like to achieve, what you finally want to code. No doubt, online systems may help you develop many coding skills and provide you with lots of useful information. Anyway, using a single service may be not sufficient for your ultimate goal. To be successful, you should try combining several courses according to your needs and expectations.