Instructions for those who want to become a programmer from scratch
Instructions for those who want to become a programmer from scratch
Anonim

The crisis is forcing many to change jobs or even completely change their specialty. You have to learn new skills and professions. An excellent choice in this case can be the profession of a programmer. It is interesting, comfortable and profitable. In this article, we will try to answer the question of how to build a career as a programmer from scratch.

Instructions for those who want to become a programmer from scratch
Instructions for those who want to become a programmer from scratch

You should start your path to a career as a programmer by answering the question, do you need programming at all? This question does not apply to those who study or studied in a specialty close to programming. If you were better at math than in the humanities at school, if you like to spend a lot of time at the computer, if you want to learn something new, then programming is for you.

Where to begin

There are several options for the development of events, as a result of which a person becomes a programmer. The first one is the parents-programmers who taught their children everything. These kids don't even need to go to university. The second option is the fashionable profession of a programmer. After school, it was necessary to choose where to go to study, and chose the fashionable direction of IT, it seemed like I liked it. And the last option is a hobby that has grown into work.

If none of the above happened to you, then you have a choice of four options:

  • Self-education … This option can be used both independently and in conjunction with other methods. The Internet is full of, and, which help to learn various programming languages and technologies. But this is the hardest path for beginners.
  • The university … If you are graduating from high school and want to be a programmer, then go to university. If not for knowledge, then behind a crust. It can serve as a bonus when applying for a job. Although you will get some knowledge too. But don't forget to do self-study as well. The choice of a university should be approached very responsibly. Study the study programs carefully and choose the best technical universities.
  • Mentor … It will be very nice if you find someone who will agree to help you and point you in the right direction. He will suggest suitable books and resources, review your code, and provide helpful advice. By the way, we already wrote about where you can find a mentor. You can look for a mentor among familiar programmers, at IT parties and conferences, on online forums, and so on.
  • Specialized practical courses … Try looking for courses in your city where you will be taught a programming language or technology. I was pleasantly surprised by the number of such courses in Kiev, including free and with subsequent employment.

What language, technology and direction to choose

When you become a programmer, after a year or two you will be free to choose whatever language you like. But when choosing the first programming language, a beginner should consider the following criteria:

  • Availability on the market of vacancies … The ultimate goal of this path is to find a job as a programmer. And this will be difficult if no one is looking for developers in your programming language on the job market. Check job sites, see who are looking for more, list a dozen languages. And move on to the next criterion.
  • Low entry level … If you have to spend a long time learning a language, this can discourage you from programming in general. Read about the languages you chose above. Browse the literature you need to read to learn these languages. And select those that they write about, that they are easy, or that seemed easy to you. Such languages can be PHP, Ruby, Python.
  • The thrill of the process … If you don't like writing code in your chosen language, you will not enjoy the process, work, and life. Do you need it? Make the right choice.

Also, you will have to decide on the direction of programming. Mobile, desktop, games, web, low-level programming and so on. The most popular and relatively light industries are development for web, mobile and desktop clients. For each direction, one language may be suitable and not at all suitable for another. That is, when choosing a programming language, it is also worth starting from this factor.

Learn web technologies anyway. It is HTML markup language, CSS styles and that will make your page dynamic. In the next step, learn the server-side language (Python, PHP, Ruby, and others) and suitable web frameworks for it. Examine the databases: almost every programmer vacancy mentions this.

How to get the initial experience

Without experience, you won't get a job. Without a job, you will not gain experience. The vicious circle of real life. But it's okay, we'll get out of it.

First, don't wait until you've read all the books on your chosen programming language. Start writing your first lines of code after the second chapter of the book. Complete all tasks from books, retype examples, understand them. Complicate the examples and assignments from the books with your ideas. Create your tasks for the covered material. Solve these tasks.

Second, you need to find your first projects. This is probably the most difficult option, but a working one. You will have to look for orders yourself, fulfill them, bother with payment. For a beginner, this is daunting, but then all the other options will seem like a cinch. Completed projects can be written into experience and shown to your future employer. Real projects are a big plus on your resume.

If you know English, it is better to register on English-speaking exchanges. The market is bigger there. If you don't know English, learn it. In the meantime, Russian-language freelance exchanges are available to you. Look for small projects that match or slightly above your level of expertise. Apply for a couple of dozen of these assignments. And get ready to get a sea of rejections. But if one or two applications fire, you have a chance to get real experience.

Another good option for getting real experience is open source. Such projects always need new people, even beginners. You can search for bugs in the project or look in the bug tracker and suggest methods for solving them. Finding such projects is easy on GitHub or. Feel free to ask questions there.

The fourth way to gain experience is to help familiar programmers. Ask them to give you small and simple tasks. If something doesn't work out, you will always have someone to turn to. And at the same time you will participate in a real project.

The last way is your own projects, various hackathons or work in a coworking space. It is difficult to start your own projects, it is better to look for acquaintances or friends.

Why Choose Python

Let's talk a little more about choosing your first programming language. The first language should be simple and popular in the market. This language is Python … I highly recommend choosing it as your first programming language.

Python program code is readable. You don't even need to be a programmer to understand in general terms what is going on in the program. Due to the simple syntax of Python, you will need less time to write a program than, for example, in Java. A huge database of libraries that will save you a lot of effort, nerves and time. Python is a high-level language. This means that you do not need to think too much about memory cells and what to put there. Python is a general purpose language. And it's so simple that even kids can learn it.

For the sake of fairness, it is worth mentioning other programming languages. Java can be a good choice for a beginner. This language is more popular than Python, but also a little more complex. But the development tools are much better developed. One has only to compare Eclipse and IDLE. After Java, it will be easier for you to move on to working with low-level programming languages.

PHP is another very popular language. And I think it is even simpler than Python. It is very easy to find yourself a mentor or a solution to a problem on the forum. This is because there are a huge number of PHP-programmers of different levels in the world. PHP does not have normal imports, there are many options for solving the same problem. This makes learning more difficult. And PHP is tailored exclusively for the web.

Languages C and C # very difficult for a beginner. Ruby - a good choice as a second language, but not the first. JavaScript - a very simple language, but it will not teach you anything good. And the task of the first programming language is still to teach you something correct, to set some kind of logic.

Is English important

Important! Do not know? Teach. Do you know? Improve. Learn to read, write, listen and speak English. Focus on technical literature. Listen to English-language podcasts. Read English programming tutorials.

What you need to know besides the programming language

Of course, besides the programming language and English, you need to know something else. But what depends on the direction you choose. A web programmer must know HTML, CSS, JavaScript. A desktop programmer teaches the operating system API and various frameworks. A mobile app developer teaches Android, iOS or Windows Phone frameworks.

Everyone needs to learn algorithms. Try taking a course on Coursera or finding a book on algorithms that works for you. In addition, you need to know one of the databases, programming patterns, data structures. It's also worth getting to know the code repositories. With at least one. Knowledge of version control systems is a must. Choose Git, it is the most popular. You need to know the tools you are working with, the operating system, and the development environment. And the main skill of a programmer is to be able to Google. You cannot live without it.

The last steps

You need to prepare a resume. Not just a resume, but. You shouldn't write there, but you don't need to be silent about your skills either. Once you are invited to an interview, you must prepare for it. Go through the material on your resume. You must be confident in your knowledge. Review the projects you worked on, remember the technologies that you used. And forward - to a brighter future with a new profession of a programmer.

Recommended: