On the Internet there are a lot of questions "how to become a programmer." Today I will not ask, but will try to answer.
The topic does not pretend to be unique and to express its “I”. I just hope that he is at least a little motivating and helping to define his "colleagues in the workshop."
So, I'll start over. By education I am a computer systems engineer. What I did at the university is not clear, but at its end (with good estimates, by the way, and minimum “contributions”), I could hardly imagine what a mac-address was. After defending my diploma, I got technical support from a famous provider. To pass the interview was easy, because Most of the applicants could hardly imagine what the Internet is and what they eat with!
So passed. Have taken. Even a line of technical questions was hung up on me (tomatoes must now fly towards the support of providers)! In fact, among the 20 people of my shift, 5-7 were very competent specialists! Just lingering there for unknown reasons ...
The work did not involve deep development as a specialist. But it was there that I met wonderful people who patiently answered my silly questions and helped me deal with some tasks. Here I was somehow annoyed ... Why can they, but I do not? I overlaid with books Kolesnichenko and Tannenbaum, and began to comprehend what I missed in the university!
It took 2-3 months, I was already well oriented in the subject area. My old home 4th "stump" groaned from virtualok with Linux, and screw - from gigabytes of e-books (nooo, I did not read all of them, I just liked to collect :)).
')
Further the standard way of the administrator went: enikeyschik - assistant - admin! Cool! 2 years later I could already call myself a confident specialist. Then I became annoying adminstva ... No, in fact it is very interesting! Especially when new hardware is brought in, when you need to deploy something new, try out previously unknown technology! Here and forget about the dream! But the implementation ends sooner or later, and the support remains stupid, which irritated me wildly. Maybe not all, but in my case it was exactly that. Until that moment, I was trying to “get acquainted” with programming - namely, python and php. At first glance, with php, we disliked each other; I still don’t understand why. It seemed to be a little better with python, but our “love” faded away and it didn’t flare up :)
In the meantime, there were circumstances at work that our entire IT department retired, led by the head. I decided not to look for a job yet and try to learn java.
It was a strange 2 months ... Programming was taught at the university, but I understood it even worse than the mac-addresses, arguing that “this is not mine” (now this phrase smiles from the IT-students students). As a result, 2 months of diligent reading of books and manuals barely gave me an idea of ​​the base itself. After this time, I even couldn’t realize a simple little problem using loops and arrays!
This is where exactly I am writing this topic for.
As you know, many people give up precisely at the stage of understanding, “but how can this (cycles, arrays, methods and incomprehensible words) help me with this (write an alarm clock reminder) ?????”. And this is exactly what they teach in uni. So I ran into this problem. There is a theory that is set out in the books for dummies by chapters, there are tasks on a pile of online resources, but how can we combine all this? At first I chose the method “I read the whole book, then I will try to write chenit”. Nifiga Until I reached the 4th chapter - what was in the 1st, I already forgot. No practice. In the subject area is absolutely not oriented! At that time I would have a tutorial for the “most-most”, with the tasks at the end of the paragraph on the topic covered (yes, yes, like in school!), There might be more confusion. But unfortunately I did not find such a textbook on java. As a result, I temporarily (xy-xy) quit this occupation, and went back to work as admin. So I’d probably work if I didn’t find one resource that became a salvation for me, as a novice programmer! Be sure to
share . For fans of C ++ and bash (though it's hard to call it a programming language), there are also:
C ++
bash
As far as I understood, this is a site for students presenting the material in exactly the form I needed!
I began to solve all the tasks that were given at the end of each of the chapters. The tasks here are selected in such a way that you will not limit yourself to reading one article. I bought myself 2 volumes of Horstman and Cornell, and began to study.
At first, everything seemed wildly difficult, took a lot of time. Familiar guys-developers answered me 20 times a day! By the way, I was lucky here too. I did not say - do so and so. They pointed me in what direction to dig, and I again buried in books. As a result, a little less than a month, I got acquainted with the base on SE both theoretical and practical, and I continue to move further in this direction!
In general, I wish everyone to understand one simple thing - if you really want to, it will work out anyway :) Well, do not forget to practice, without this you really cannot go anywhere!
PS By the way, I will not give up tips on improving the effectiveness of training! I think not only I will be interested!