Programming is simple and it is for everyone. No studies and no skills are needed. This is how they sell us the essence of programming various types of bootcamps and other training ...
Bullshit. Learning to program is really hard. It requires a huge amount of time, a dozen projects, and the acquisition of practice and skills that are not necessarily related to the IT industry. So if someone tells you that everyone will find a job after the course, this person is just lying.
Every day, thousands of people ask themselves: how to become a good programmer? How to develop a wide spectrum of skills and how to live from programming? Over the years I have learned many technologies to fit the current job market and today I will share my approach with you.
As we said, programming is very simple… just kidding. It is very difficult.
Why is this happening
First of all, programming is an extremely extensive topic. New technology is born every day, and what we learn today may turn out to be outdated tomorrow. There are, of course, immortal technologies like Cobol and C.
Second, programming itself requires a certain skill. These skills may vary depending on the job profile, but usually there are a dozen, if not several dozen. And it is not only hard programming skills, but also a lot of soft.
Third, the entire IT industry is extremely interconnected. For example, when learning Java, we need to learn the basics of virtual machines and application servers. In principle, if you are learning one thing, about a hundred things are related to what you are learning.
There is also good news
There is a way to learn a language well and earn some money at the same time. Strange isn't it? Nobody will tell you at the $ 10,000 bootcamp. Here's my quick list of topics on how not only to learn to program, but also to earn thousands of dollars in tuition. Are we starting?
Now it's time to define the complete basics. Be sure to read about data types, both primitive and complex. Read about loops, loop nesting, flow control statements, input / output elements, and the basics of object-oriented and functional programming.
Be sure to stick to one language. It doesn't matter which language you choose. Of course, there are whole debates about which language to choose on Facebook or forums. You can't waste your time on anything stupider, right? I believe that you should choose one language and stick to it for a year, and then you can change it. You must become good at whatever language you choose. And go to your blog and post why you choose this language.
And now I have bad news for you
Of course, it's easy to figure out your path, but it's not that easy to do. Once a friend of mine wanted to learn to program. He bought books and started picking something there. It all took less than 3 months and then he quit. And he was learning Python, the easiest language in the world to be conquered.
I perfectly understand that we may be tired or we may not feel like it. Or the family takes up a lot of our time. Let us remember that we are different and that is why we learn differently. What worked for me, may not necessarily work for you.
And here comes knowledge from another field, namely the definition of the learning system, time management and one's own skills. So I will show you how to approach learning.
My system of learning and earning money
This system is very simple. You just need to focus on one thing at a time. This is really very important and be sure to remember it. In this way, in addition to a passive income of $ 12,500 per month, I was able to build as many as 5 startups in eight years. I adapted this way to learning. Are we starting?
First, open any text editor. The blog's text editor is good for this too. Identify a few things you want to be good at, but don't overcomplicate it. Start with four or five topics at most. For example, a good list to start with is: Learn Java, Learn IDE, Learn Linux, Learn GIT.
Now for the key part. Plan a whole week and choose a different thing to learn for each day. One single thing. For example, Monday you focus on learning Java, Tuesday you learn to use the IDE, Wednesday you learn GIT, Thursday Linux, and Friday you use what you learn. Spend the amount of time you have on these issues. But do only one thing each day.
Use the Google calendar. Keeping track of your progress on a calendar is really motivating. Plan yourself every week on Friday every week. It will teach you to work in sprints. Also, settle accounts for each week of your work.
At the end of each day, write a quick summary of what you will do. Take notes. They don't have to be extensive. Remember that five days is five nice blog posts. And as many as five things to master.
And here's a little note. You can, of course, try to combine the two activities in one day, because sometimes it cannot be otherwise. For example, you can't write code separately and then push your work. At the same time, never combine activities that you can do separately. Everything must have separate time limits.
You can combine two activities in one day. But only if they cannot be made separately. Say you contribute to the open source / git learning community. How will you contribute to this if you don't write code? So you can mix it up a bit with the Laravel exercise. You get a point!
Do not combine separate steps that can be done separately. Like learning Laravel and Learning Rails. They must have separate time boundaries (a day or a week dedicated only to this topic).
Summary - why should I stick to it
Adrian, you're a goddamn idiot. You're stupid. Yes, I am a fool and a madman who sells my websites for a lot of money. I love being an idiot. I love doing what no one does, the so-called normal. By learning to program commercially in OOP (when I thought I could do everything already), I was able to afford a three-month internship at Future Processing. I was 26 or 27 then. And I had a passive income of over PLN 20,000, built on the things I was learning.
Not only do you get an extra competence development program, but it also shows you how to earn money with your studies. Remember that a programmer's career does not last forever, and 20,000 zlotys of passive income will be useful to everyone.
You can also ask, why do you need this system? You're gonna go to a bootcamp. You will go to college after all. You don't need any schedules from me. Of course you can do that. And do. But both learning programming and building up passive income will take you longer.