📜 ⬆️ ⬇️

The dangers of learning from books

Today, developers are in a state of constant pressure. The desire to achieve a high level of knowledge of new languages ​​and tools, the fear of one day to fall out of the information flow can overshadow everything. Indeed, both programmers who do not follow the trends and movements of the industry, and constantly read technical news for orientation, face the risk of losing competitiveness: what skills to learn when there is time, which ones to ignore, which methods should be used.

The first instinct for learning something new is usually to search for good resources on the Internet and, possibly, to purchase a couple of books. In addition to reading, you can find slides and videos, articles and blog posts, or even attend live meetings or conferences. I have seen hundreds of engineers (accomplished and junior) spending a great deal of time reading about different languages ​​and tools, many of which they may never deal with professionally. Some even read with the aim of obtaining a certificate, which, in their opinion, will demonstrate their skills in the new skill.

I also saw other developers inclined to learn in a different manner. They also read a little (usually the product documentation and quick start guide) and immediately switch to a more practical approach. Once they acquire a basic understanding of the language or tool, they try to create something.

')
As a human resources manager, I met with candidates who quickly learned a new language (used by a potential employer) and solved some of the problems that are often asked for an interview, or even developed a simple application in the GitHub repository. As the leader of the Java user group, I came across speakers who were building a simple application to get acquainted with the framework being demonstrated and showed its work. The goal of the presentation may be “I think X looks cool. I did not work with this, but I read and wrote something to demonstrate the experience of working with X. I will be ready within a month. ”

Apparently, many people like the reader’s part of the training, but they concentrate too much on it and never create anything. This mainly characterizes university graduates who have a wealth of experience at the university, but spend very little time in action. Even if your writing is absolutely useless to the world, your creation matters. Learning from practice is not a new idea, and the educational value is obvious. What other advantages does it give?

Competitiveness and Interview Benefits


Writing this post about learning from books led me to a job review after my interviews over the past year. The developers I helped to get a new job had (with rare exceptions) one thing in common - the product portfolio and code. Ten or five years ago it was a rarity, but today it has become the norm. Developers for Android and iOS could show at least one application available for download. Web developers demonstrated websites and accompanying code samples. Even specializing in back end programmers had something to show at the interview.

The greatest value of “practical training” and portfolio can probably be seen in the mobile application environment. It’s hard to sell yourself as a mobile developer if you don’t have at least some application to demonstrate, and the first question asked by mobile developers is usually “Do you have an application?”. Software developers in many other areas, as a rule, do not ask such questions and do not evaluate them according to this principle. Simply put, mobile developers know that in most cases, possession of an accessible application makes them more salable.

Programmers working in a safer environment, for example, creating secure systems or financial software, often cannot show a working example when applying for a job. Without the opportunity to show their past work and without personal projects, such candidates are more often exposed to language questions and interviews in the style of a game show, which many applicants fear. Merchantability may be more related to experience and arbitrary assessment of skills, instead of demonstrating the achievements of such candidates.

Benefits of the interview


Possession of the portfolio gives the interviewee a special advantage, since he has some control over emerging issues. Having come to the interview with empty hands, the applicant risks drowning in the flow of questions. Having a working example will almost certainly reduce part of the interview to discuss it. One can hope that the author of the code will be in a better position, since he will be asked questions regarding his example, and not questions on random topics. Even developers with average abilities can see an increase in productivity in interviews with a topic related to their code.

tl; dr
Read enough to get going and write something. Do not wonder if this will change the world. Keep writing and improve it from time to time. Bring the code to the interview and practice talking about your creations.

Source: https://habr.com/ru/post/180113/


All Articles