How long does it take to learn python programming language? That depends on various factors. There is no general time. Sure – anyway, every person learns differently fast. Previous knowledge also plays a role. The first language is much harder than a second or third. In addition, every programming language has a different complexity. So it is supposed to be easier to learn to python than to understand how drivers are written for operating systems. The article still gives you answers.
When do you say “I can program”?
I can program – when do you say that? Or: how do you define this condition? I may associate something different from you with the statement. I do not find it so important to know all aspects, functions, methods or classes of a programming language by heart. You could learn the knowledge by heart. And that’s not what programming is about.
In practice, you do not have much factual knowledge. Applying this is significantly more difficult in practice than in theory. Read a whole book and then start with an empty editor. Already you understand how that is meant. In addition, there is a reason for any programming language references. In which you can look. You have to know where to look.
I recommend focusing on the following stages:
The first step is to familiarize yourself with the syntax of a language. It is important to “get warm” with the language through a lot of practice. Small test programs, whose function is more in the background, are the optimal entry. At first, it is not necessarily easy and pleasant. You will always look up things. That’s why exercise is important. The basics go “in flesh and blood”. The knowledge wanders into implicit memory. The same happens while tying the shoes, switching in the car or writing by hand – you do not think about every step. You just act. And at the same time, you do not think about where to put a parenthesis. You just know it.
2. The basics
The second step is to learn the basics of the language. These are mainly things that appear in every programming language. How do you write strings, arrays and the like? Which control structures are there? How do you write loops? How do you write your own functions, classes, and methods? How do you create objects? Are there special data structures (such as tuples or dictionaries in Swift)? And so on. This is important in order to avoid constantly having to consult the documentation for constantly needed functions. The more prior knowledge is available, the faster this step goes.
3. Get to know features
Only in the third step do you go on a journey through the library. Which features are included? A good overview of the standard library is important. So you know what the language itself can do, where external libraries are necessary and where your own solutions are needed. This works best – who would have thought – by simply writing software. Use the features, experiment with it. So there are in many libraries solutions for the database access, input/output at the file level and the like. This step is usually much more fun because there is already a sense of the language.
4. Software Architecture, Best Practices & Co
The fourth step will familiarize you with best practices and design patterns. Good programming and clean code is mainly the result of good architecture. This is the real sticking point separating the wheat from the chaff.
When one can speak precisely about mastering a programming language, probably every developer answers differently. Personally, I think you can at least say that you can handle a programming language if you feel safe working with it. I would speak of dominance if you only have to read references and can work independently with the given information (without example code).
Learn programming – the felt duration
You want to learn programming. When do you start to call yourself a programmer? After other developers do that! If other programmers call you that, you’ve made it. Unfortunately, that does not change the way you feel.
For your journey that is almost completely irrelevant. The central question is: When do you feel confident in programming? Because then you come in the so-called flow. Learning becomes a game. You do not practice anymore but play. From my point of view, this starts at level 3.
Learn programming in 30 days?
To claim a lump sum with the product xyz you can learn programming in 30 days is wrong. These providers like to convey the abbreviation – read this book and save many years to learn. That will not do. You become an experienced programmer only through much practice.
But what works well: You can reach the state of Flow with the appropriate program in 30 days. And as soon as that happens, the feeling does not change much anymore. Whether you develop a complete app or website.
In this respect, there is truth in these products quite well (which is often simply greatly exaggerated).
Learn programming considerations
Of course, there are a few factors that influence your learning process. Here are a few (logical ideas) that you can only partially influence:
Which previous knowledge do you have?
The existing knowledge has a decisive influence on duration and learning success. If you already speak other programming languages, you will learn a new language much faster. You can connect a lot with experiences and “make friends” faster with the knowledge. Especially the syntax and basics are no longer a challenge at some point. You can then concentrate much more on the language features, the library and things like architecture and design patterns. Not only do you learn faster. With time and more prior knowledge, you will also automatically write better source code.
How much time do you invest?
Clearly: The decisive factor is the time invested. If you can invest 4 hours per day, that’s always better than just an hour. But even those who learn for an hour or half an hour a day come forward! This is very important. Especially beginners often wait for the perfect circumstances. A cozy evening in bad weather. Reading the book relaxing on the sofa. Certainly great, but focused half an hour learning is just as effective. More important is: learn regularly!
How quickly do you understand individual aspects?
Learning success also depends on your abilities. Everything else would be a lie. Some people learn new things faster. Some slower. This is not a question of intelligence. Not every brain works equally. For example, younger people usually need fewer repetitions to save the same knowledge in long-term memory.
Your Mathematical/Logical Mind
Anyone who has never dealt with abstract thinking, mathematics or logic before, unconsciously builds something there while programming. That’s positive! However, this also slows down the learning success a little.
Of course, there are other factors. Someone who only finds time in the evenings because he works during the day needs more time than someone who can use the high-performance phases of the brain during the day. But to pursue all sorts of factors so deeply beyond the scope here. A tip in any case:
Do not lose yourself in the details too much. It is not so important to absorb all written lines and keywords. You will not be able to do that directly anyway. And: It comes automatically with time. It is much easier and more fun when you approach relaxed. Everything else is self-evident.