My favorite strategy to learn and achieve anything you want in your development career
Tags: codenewbie, beginners, webdev, career
Published: 2020-12-11 22:02:24


Spoiler: I don't think there are 'secrets'. All of this stuff is out there and has been said before. Perhaps not always in the realm of coding/engineering but for our purposes, I bucket this under great strategies to learn to help you better understand how to learn. People generally want the least amount of work, the fastest route to success but usually, those stories (of overnight success) or tips/techniques(of how they doubled their income in 4 days etc) ignore all the time and action preceding these moments.

Technology, programming, or learning to code is an enormous set of mountains to climb. It is overwhelming. This strategy won't guarantee success but it will provide massive results that over time you can work with to steer more towards success (whatever that means for you)

One repeated pattern that I have noticed this week inspired me to write this post.  

Here are two interactions I had:

{% twitter 1336402357601628167 %}


{% twitter 1336410169547370513 %}


{% twitter 1336053291755646982 %}

{% twitter 1336067272927047681 %}


They both focus on the same thing. My concrete example is the number of books I have read. Again, a worthless metric all on its own but it helps prove what is possible by a little action. 2019 I read less than ten books. 2020 so far I have read almost forty. What is the difference? Have I been taking days or weekends to focus entirely on reading? Nope. Honestly, all I did was commit to reading 10 pages a day. Sometimes more, sometimes less. But again, consistent small action produces massive results. 

With learning to code, becoming an expert in 'x', building something you want to, all these things take a lot of time and this may be a strategy you could utilize to help you on your way. Is it the only thing you need to do to become successful? Perhaps, but probably not. You can produce massive results but pick the wrong thing to work on. Or maybe what your after is a bigger puzzle and this one thing on its own provides assistance but it needs more than that.

**Some examples:**

**Reading**
You read 5-10 pages a day it adds up a lot. If you only want to generally read more this 100% works. But to bring this back to coding and development -  If you only want to read every blog/tutorial/book/ on React but never work on the examples or your own projects will you know React? Eh, kind of but so much of learning a new framework/language is a solid mix of understanding/comprehending React but then doing it on your own. You need to experiment and try things and run into your own issues to really embrace what you have read and work that side of this equation. 

**Boosting test coverage**
This just came up at work. Happens with both greenfield and mature products unless you strictly break the build for some percent of code coverage. But for many reasons I have seen it relaxed and later re-visited with conversations about why this percentage is so low. You have two options and both work. You can sidetrack the team or a portion of the team and boost this coverage. Similar to working on the 'right' thing you might get some garbage tests here solely to boost test coverage but on the flip side sure in a utopian world you could potentially get only great tests. The other option is basically this principle at work. Choose a tiny increment you commit to adding that sprint(say a couple percentage points) and devote a little bit of time over a long period and watch that number rise dramatically. 

**Working out**
This gets complex. Here is a personal example. In 2019 I was really proud of the number of times per month/and the total number of visits I made to the gym. I set many personal records for different lifts and yes I was stronger. However, my larger goal was to lose weight and be healthy. I was definitely healthier but I didn't pay a lot of attention to my diet and honestly, I stayed within the same weight +/- roughly 5-10 pounds that whole year. This is one of those more complex areas where yes going to the gym is awesome and I am still happy with those metrics however strength/cardio is just one portion of how to be healthy and lose weight. 

Coding, learning, and your career are more like working out. One thing probably isn't enough and it is complex. You can get lost just trying to learn what you need to do. An important component of getting anything you want is taking action. Even figuring that out you can get stuck. Do I work nights and weekends? Do I pull all-nighters? Do I read all the books first? Should I sign up for someone's course? There are a million ways to do it but I think this strategy is a little less obvious. It is not as quick or fast as some other ways but it is easy to commit to. And pretty soon these small consistent efforts provide a huge boost.

> Doing is better than thinking and strategizing when it comes to anything tech/programming and your learning journey.

Here are my rules for doing: 
1. Pick something to do
2. Commit to some amount of time you can do daily or say weekdays and go for it. Test out various times during the day to see if you complete this task better at a certain time for you.
3. Ensure its focused (if you want to learn React stick in React and its ecosystem)
4. Ensure whatever you do mixes up consuming information (reading/tutorials etc) and producing (build some stuff /try it out)
4b. If you are following some tutorial or example exactly. Then, once you do that successfully try to add-on to it or modify it in some way

Make a decision and pick something and try this out. Whatever results you get check-in in a month and figure out if you are moving more towards your goals and visions or not. Again, this is only a piece of the puzzle but it does consistently surprise me so I wanted to share. 

If you do want to read further on this topic I recommend Darren Hardy's book: The compound effect.

If you liked this article, check out: 

- [What is full-stack development?](https://dev.to/_bkern/wtf-really-is-full-stack-breaking-down-confusion-on-software-roles-and-job-descriptions-21fa)
- [How to be one of the best junior developers](https://dev.to/_bkern/how-to-be-one-of-the-best-junior-developers-76f)

What do you think? Let me know on Twitter and [follow me there](https://twitter.com/_bkern) for more development, programming, and general software engineering content.