I think I’ve talked about it before here, but not in much detail. So the topic is about how much faster you get results when focused
The best example of being all over the place is college/university. Let’s say it’s a CS degree or any other occupation. You haven’t done anything of it before college and expect college to teach you all you need to know. You study just enough to pass exams, finish 4 years and what you end up is being unqualified for all jobs after spending 4 years of studying
The problem here is that you learn all the different stuff without any particual purpose. They call it basic, general education. You learn this stuff for 2-4 month, then switch to different topic, then switch to another etc.
As a result you don’t remember anything about previous stuff you learned because you didn’t apply it after learning. In best case you’ll learn one stack like .NET
Only chance is if you study in your free time for topics other that they teach you and you know what you want to do after college. Of course it varies from college to college, but most of them work this way
Now this is the path that actually going to get you somewhere. If you graduated college – diploma gives you some value, so you could be OK. But as a self-taught developer, without a clue of what exactly you want to do you’re f#%@ed.
I started with learning C++, then went to Java with JavaFX (desktop applications), then decided to learn some Ruby, HTML, CSS, JS, backends in Java. And only then I finally decided to stick with Android as a core stuff for me
How much time I would’ve saved if I had a clue in the beginning? A lot! Up to 6-8 months.
When you know exactly what you want to do – then you come up with a plan of what stuff you need to know, then just break it down to steps and that’s it. You don’t waste no time for learning extra stuff which isn’t going to benefit you in the next year or two, or in getting a first job
But if you follow your passion of learning new and new stuff – then you’ll be a beginner in everything for a long time
Excel In Something
In the beginning you might not understand the difference between being a beginner and more advanced, you’re basically a beginner at everything
But when you spend some time like 3-6 months of learning just one particular technology and look back at stuff that you stopped learning before, you really feel the difference between being a beginner and not
Plus in this process you kind of create your own track of learning new stuff. And it gives you confidence of finishing stuff. Like I think most people are feeling down of starting stuff, but never getting any decent result from it
That pattern you can use for other areas/technologies that you wish to learn later
I’m pretty damn sure that all programmers are bored with particular technologies sooner or later. So you go and switch to another one and then another one and then one more…
Like for example, you start learning Java, learned some syntax, console Hello World, got bored and then do some Python, C#, same Hello World. Then went to front end: do some Angular Hello World, got bored, decided to try React, then Vue etc and it can go on and on
I’ve just recently seen an introduction to Flutter, a cross-platform mobile framewok in Dart language. Was I surprised to see it in Dart and not in Kotlin, Swift or at least Java? Not much, was it because of features of this language? Well, there’s coroutines introduced in last Kotlin version, so I hope they chose it not because of
Let’s use another language, just because
I guess, we’ll have to learn new and new languages all the time, it’s like a curse
Most likely you’re doing Android development if you read my blog, but tell me if you felt being bored with technology and just decided to learn new because of it