Hello,
I feel a need to tell my personal story about how I failed to learn to code.
First of all, I'm in my late 30s, didn't study IT but have a strong inclination to it since teen days. Had some basic overview on algorithms, some HTML knowledge, nothing special. Two years ago I've had time to try to dig into Python.
I've finished a couple of online courses, visited some forums, done a dozen of tutorials and hit a couple of specialized Python books. I was really persevere at it.
Outcome 1: I've got a grasp on basic things and structures. However I couldn't understand a more advanced techniques, for instance, I didn't see a sense in using classes for example, when I could more clearly express myself via functional coding. Furthermore, I started to jump from tutorial to tutorial, most of that was basic stuff, meaning, it was hard for me to continue to learn new things and concepts, instead repeating all from the start, like data types, variables, functions etc...
So the learning path was problematic, I felt I need a mentor, teacher, or whatever one calls it.
Another thing, I was excited at the beginning, learning new stuff, getting through the exercises and overcoming them successfully, but as I progressed it increasingly started to suck. Frustration emerged from the fact that I couldn't understand more advanced concepts and thus my advancement hit the plateau. Furthermore, I couldn't see how to apply the knowledge (writing simple scripts that sum up the numbers is really boring and not useful at all nor they contribute to learning progress).
Even if I managed to understand some more advanced concepts, still I wasn't sure what to do with it, because more advanced stuff meant I'd have to learn another things like SQL, HTML/CSS, or other stuff, depending on the path I was going to take. So I took a couple tutorials of HTML and skimmed through one book of it. Even then I couldn't see the point what I'd do with it. You are not going to code your web page, but instead install a Wordpress or something similar and get it up and running in 30 mins max. Need some functionality? Just install a plugin. As regarding to Python, it is out of the question to code some app, as there exist a vast number of those for nearly any purpose. I did some comparisons of Python to Java as well (Java is widely used for Android programming), I could switch to Java as well but still felt I'm years (if not decades) from doing anything useful with this whole stuff and just quit.
My motivation behind this was not to switch my profession to coding, but to see what I can get from it, to try to take it as a hobby and then to see if something useful can come out of it. I found out following:
Outcome 2:
As I stopped to waste my time with coding, I switched to learning a foreign language, which I found much more useful. In two years I managed to achieve a C1 level (certified, currently pursuing C2), which brought me challenge, joy, meaningfulness and real usability. I advanced my career with it as well.
Compared to programming language, I don't know what could emerge in a 2 more years of doing it, but with my way of learning it, it would be either impossible or very very dull, boring and un-inspirative.
I feel a need to tell my personal story about how I failed to learn to code.
First of all, I'm in my late 30s, didn't study IT but have a strong inclination to it since teen days. Had some basic overview on algorithms, some HTML knowledge, nothing special. Two years ago I've had time to try to dig into Python.
I've finished a couple of online courses, visited some forums, done a dozen of tutorials and hit a couple of specialized Python books. I was really persevere at it.
Outcome 1: I've got a grasp on basic things and structures. However I couldn't understand a more advanced techniques, for instance, I didn't see a sense in using classes for example, when I could more clearly express myself via functional coding. Furthermore, I started to jump from tutorial to tutorial, most of that was basic stuff, meaning, it was hard for me to continue to learn new things and concepts, instead repeating all from the start, like data types, variables, functions etc...
So the learning path was problematic, I felt I need a mentor, teacher, or whatever one calls it.
Another thing, I was excited at the beginning, learning new stuff, getting through the exercises and overcoming them successfully, but as I progressed it increasingly started to suck. Frustration emerged from the fact that I couldn't understand more advanced concepts and thus my advancement hit the plateau. Furthermore, I couldn't see how to apply the knowledge (writing simple scripts that sum up the numbers is really boring and not useful at all nor they contribute to learning progress).
Even if I managed to understand some more advanced concepts, still I wasn't sure what to do with it, because more advanced stuff meant I'd have to learn another things like SQL, HTML/CSS, or other stuff, depending on the path I was going to take. So I took a couple tutorials of HTML and skimmed through one book of it. Even then I couldn't see the point what I'd do with it. You are not going to code your web page, but instead install a Wordpress or something similar and get it up and running in 30 mins max. Need some functionality? Just install a plugin. As regarding to Python, it is out of the question to code some app, as there exist a vast number of those for nearly any purpose. I did some comparisons of Python to Java as well (Java is widely used for Android programming), I could switch to Java as well but still felt I'm years (if not decades) from doing anything useful with this whole stuff and just quit.
My motivation behind this was not to switch my profession to coding, but to see what I can get from it, to try to take it as a hobby and then to see if something useful can come out of it. I found out following:
- you should have strong motivation to learn the coding, which is not the problem if you do see the purpose in it,
- it is hard to learn it on your own, but not impossible,
- in my case, a mentor/professor/whatever one calls it would be a big advantage,
- I didn't socialize with other fellows who try to do the same (because I did it on my own), which was certainly a big minus,
- yes I could follow a coding forums but that would be time consuming (to dig up the forums after a few hrs of learning was really kinda hard),
- I couldn't see how could the knowledge be applied nor how could it be useful.
Outcome 2:
As I stopped to waste my time with coding, I switched to learning a foreign language, which I found much more useful. In two years I managed to achieve a C1 level (certified, currently pursuing C2), which brought me challenge, joy, meaningfulness and real usability. I advanced my career with it as well.
Compared to programming language, I don't know what could emerge in a 2 more years of doing it, but with my way of learning it, it would be either impossible or very very dull, boring and un-inspirative.