How to learn programming from scratch
Forming Educational Program / / December 19, 2019
How to learn programming from scratch
1. independently
If you have iron willpower and a burning desire to become a programmer, you can achieve your goal with the help of self-education. This is not the easiest and shortest way: you have to understand the information chaos and struggle with procrastination. But you can study at a convenient time for relatively little money or absolutely free.
Easiest to start with the interactive online courses. In the web there are many sites, Which is available materials to explain the basics of programming and set the direction for further development. Pay special attention to the courses that are taught in the examples of real projects, that is, step by step describes how to create a specific program or site.
Remember that you will not succeed without practice. Learn from project-oriented courses and try to write themselves understand them programs and sites. Look on YouTube lectures with the analysis of the projects that you would like to develop. First copy other people's work and analyze it. Then try to move away from the original experiment, change the individual elements until you can not create something unique.
In addition to courses and video lectures, offers official documents available on the site language, and books. When will understand the basics, look for the latest edition, subtitled Best Practices on the programming language selected. These books contain the best methods of development.
Be sure to set a goal to create your project and work on it constantly.
This will help consolidate their knowledge and to understand what information you still do not have enough. Your skills will be developed together with the project. When you finish it, working on a new - more complex.
If you have difficulties in learning or development, you can always consult on any question to the community of programmers like "Toaster"and Stack Overflow. You, for example, help to solve any problem, choose a good course or point out the errors in the code.
Hone skills convenient for specific sites, where you can compete with other programmers, deciding by a code different practical tasks. Among such services - Codewars, TopCoder and HackerRank.
If you feel that your development was at a standstill, or want to accelerate learning, try the following options.
13 tips for those who learn programming by yourself →
2. With Mentor
Mentor - a personal mentor who indicates errors, warns of the pitfalls, helps to lay a course. Useful advice received at the right time can save you from many problems and save a lot of time. Therefore, no one hurt a mentor.
Find out if any of you know the developers. Maybe someone of them will want to help you. If people like you do not know, you can look for them in the community of programmers. For example, the same "toaster". Only mentoring services are not cheap, but for just spending a lot of time to strangers no one wants.
3. Teachers 'live' courses
Remote and full-time courses with teachers who teach programmers from scratch, have become incredibly popular in recent years. In this format, you will also have to work very hard on their own. But you'll be doing on professionally prepared program, and problem solving will check the living man. The disadvantages of the courses are the high cost of education.
Popular Russian-language online sites that deal with the system of programmers "Netologiya», GeekBrains and Loftschool.
If you prefer to engage in full-time, you can look for training centers that teach programming in your required location. Unfortunately, these institutions often present only in the big cities. The computer can cause Academy exemplary "STEP", Which has branches in several countries.
4. In the University
If you have a lot of time left and you are sure that you want to connect a life with programming, you can study computer science at the university. But keep in mind that the traditional schools lag behind the progress, so that modern programming languages and other technologies you have to learn on their own.
On the other hand, the University will provide fundamental knowledge of mathematics, algorithms, and other areas that will help you become a highly skilled programmers. Over the years of hard study, you build up the right kind of thinking that will grasp everything on the fly in the professional sphere.
How to choose the direction and language
In the IT industry, there are several areas, each of which uses a different set of languages. We list the main areas in order of increasing complexity:
- Web development. Popular languages: JavaScript, PHP, Python, Ruby.
- Mobile development. Popular languages: Java, Swift.
- Development of games and applications for desktop computers. Popular languages: C ++, C #, C.
- Big Data, machine learning. Popular languages: Python, R, Scala.
What to look for when choosing a
To make the right choice of direction and, in particular, language, consider the following factors: the complexity of the the development and the amount of training materials on the Web, your personal preferences (what you want to develop) and demand for language in the job market.
The demand for courses in your area is easy to check on job sites. Just open a section for software developers and see the number of available vacancies.
INFOGRAPHICS: What programming language to learn first →
If you can not decide
If you are confused, take a look at JavaScript - the language in which is written almost the entire web. Many organizations and programmers are advised newcomers choose this language as the first.
For example, the founder of the educational resource freeCodeCamp Quincy Larson recommends JavaScript all beginners. Larson is a very simple argument:
- JavaScript is relatively easy to master. And to write something and run in that language, enough to have a code editor and browser.
- JavaScript - the most demanded language in the international labor market and has great potential. In JavaScript ecosystem invest big companies like Google, Microsoft and Facebook.
- In JavaScript very wide scope: from the sites and browser-based games to mobile applications.
In addition, around this language it creates a large community of developers. High interest to JavaScript provides a huge number of courses, books and other educational content.
What else needs to know the programmer: mathematics and English?
Any programmer will not prevent a deep understanding mathematics. For such areas as the development of the game graphics or big data, mathematical mind - it is a necessity. But as far as web design and create simple programs, in most cases without mathematics you can do. Although among the professionals there is no consensus on this matter.
But an understanding of English, at least at a cursory reading of the documentation required for all programmers. Official documents and most of the educational materials appear primarily in English. books often become obsolete even before it comes out translation. In addition, knowledge of English opens up prospects for work with the world.
How to learn English: the most interesting and useful →
How to get a first experience and first job
To find a first job as a programmer, you should have a portfolio. This creates your project, but rather a few that show all of your developer skills. The program most courses include the development of projects that can get in your portfolio.
Very valuable item in the summary will be the availability of work experience, especially team development. But where to take it, if you are looking for a first job?
- Perform several orders exchanges of freelancing. It can be "freelance" or Upwork. Offer their services for free, then you will come to the first customers.
- Find like-minded people and create with them a common project. People get together for this purpose almost every educational area, where there is a programming course.
- Choose the course organizer who helps with employment. For example, in GeekBrains after training gives access to the internship from different companies, including - paid. GeekUniversity and "STEP" guarantee employment to their graduates.
Before interview do not forget to look for the web lists of problems and questions that are frequently asked job seekers.