Computer programming is one of the most interesting and well-paid occupations, and the prospects for the development of this sector the most optimistic. The programmer will always be in demand in the labour market, the entire virtual world (social networks, forums, company websites) rests on the software that is required daily to complete and update. And even if you plan to work in another field, programming skills will be a significant advantage when seeking employment.

Studying programming languages, logic of algorithms, you develop and rebuild the way of thinking, learn to solve puzzles and challenges of different types and to understand causal relationships - all of this will be useful in any case. Programming skills will allow you to create your own product such as a website or program for processing the data and gathering information. Even to ease your Finance, you can write code, which, as no third-party software, will take into account all your requirements and wishes.
IT portal GeekBrains offers one of the best free courses teaching programming – online course "fundamentals of programming". Here for 4 lessons are the fundamentals of code generation and real development experience. Moreover, learning takes place in online form, and at the end of the lesson to consolidate the material given homework assignments, which are then discussed in the next lesson. For the convenience of students, the courses take place in the evening, but the lessons are not lost even if a forced pass - each lesson remains in the form of videos in their own "classroom" of the student. During the course you will learn the basic languages and areas of programming, understand the principle of writing code and even able to write a simple program. After the training, in addition to knowledge, you will instructions for further development of programming skills and all the videos of online classes.

For people with reduced concentration more convenient there will be another free course - video course GeekBrains on the "Basics of programming". It is a series of 15 video lessons for 6 minutes each. The education process is design a game form that allows to optimally combine theory and practice. Thus, in General, 90-minute video course students learn the basics of algorithms, variables, data types, loops, branching, arrays, functions - and create your first program: financial calculator and game. The course is designed for a comfortable passage into the student comfortable pace.
Start learning web programming and even write your first blog free video course in 15 lessons "PHP. Quick start". Before diving into PHP will be discussed the creation of a web page, 80% of the time lessons is practice. You will get acquainted with HTML and CSS, the basic tags of the web page. During training learn the basic functions of PHP, as it works with variables and parameters, loops and arrays. At the end of the course every student will write your first PHP script.

Another free course Object-oriented programming. This is hard to understand, but the course is a logical continuation of "fundamentals of programming" gives an overview of object-oriented approach. During this course you will learn about classes, objects, methods, and learn to create and use. Get acquainted with the key principles of OOP – encapsulation, inheritance and polymorphism. And since the course is practical – each class will work on creating their own games and by the end of training will get your first self-written software.

A free lesson in Objective C and app TO-DO List will teach you all the rules to create a mobile application. A course of 16 lessons provides an excellent basis for further study of application programming for gadgets.

Video tutorials for advanced users "Git. Quick start" provide the skills for team development using the distributed version control system Git. After 11 lessons, you will be able to confidently use this tool for team development. You will learn basic operation, rolling back changes, learn in the command mode to develop several versions of a program and master branches. All this will enable, in particular, to organize and effectively use collaborative code repository on the Internet.

Training video "#. Mini-programs" allows free learn Windows Forms Net.Framework in the C# language. In 10 lessons, students are introduced to the working environment Net.Framework and write a few utilities for Windows.

Video manual "#. Work with API Vkontakte" on 11 classes will begin to work with API Vkontakte and create your own mobile app for this social network.
An important part of any programming training - maximum immersion in the environment that is problematic for remote study material. The portal GeekBrains solved this problem, giving its pages a wealth of useful articles and webinars. Here you can see the current trends in IT world, stay up to date with the latest news and get useful tips. Webinar "Simple rules of good code" will be an indispensable support novice programmers in the period of the core courses.

When you develop applications for gadgets will be useful to listen to free webinars: "Kivy. Mobile app to Pythonsand Mobile apps on NativeScript". And for web developers - "Skills and tools for effective PHP development", "Web server adult", "Web development with java" and others.

Articles like "7 common mistakes of inexperienced programmers" or "the Best tools to achieve the goals", allows beginners to learn and the experience that will speed up the process of teaching programming. A difficult issue of overcoming procrastination covered in the article "How to maintain the motivation to practice programming?" With these tips, you can successfully motivate yourself in training.
After learning the basics of programming the portal GeekBrains offers to continue more in-depth training in one of the "Professions", for example, to learn to be Java programmers. The ability to write code in Java cross-platform most in demand today. Course 0 to level 2 training, you will leave in your Luggage a good practical knowledge of the chosen language, and portfolio – certificates of training.
Everyone who attended one of the "Professions" after training, has the opportunity to do an internship in the team of one of our business partners GeekBrains. After training "profession" you will be able to choose among the proposed projects the most interesting and to fix the received knowledge in courses, to learn how to use the most advanced technology of programming and to acquire command experience writing code and developing applications.