- Skill Up:A Software Developer's Guide to Life and Career
- Jordan Hudgens
- 550字
- 2021-07-15 17:03:30
Getting past skill plateaus
Over the years I have witnessed a few key reasons why individuals (and myself) run into skill plateaus.
Proper information/resources
When a student lacks access to proper information, it makes learning a more arduous process. Imagine a talented developer in high school who had been relying on her teacher (who had limited skill). In cases like this, the student will need to find additional resources, such as online courses, that will help teach her concepts she's never been taught before.
Best practices
During a phase of the learning cycle when best practices are the focus, students may feel like they are hitting a learning plateau. I remember when I was first learning about test-driven development. The concept seemed counterintuitive. I would spend 2-3 times the amount of time on a feature. And this became incredibly frustrating. It felt like I wasn't learning anything new because my new knowledge wasn't affecting anything on the screen.
However, this phase isn't actually a skill plateau. There are many times where developers need to take a step back and focus on quality over quantity when it comes to building applications.
My advice for going through this phase is to embrace it. Be patient. As soon as you have a firm understanding of how the best practices can be utilized, you'll be able to move onto learning new concepts. The only difference is that now you will be able to leverage your new skills, the result being that you'll be a more refined developer.
Challenging/new tasks
In my experience, the main cause of students hitting a skill plateau is when they stop challenging themselves. If you remember back to when you were first learning development, it seemed like your knowledge was skyrocketing each day.
The reason for this was because each of the concepts you were learning were completely new to you. However, after a certain period of time it seems like it's natural for us to want to become comfortable. Instead of trying to learn something new each day, we simply try to duplicate the work that we've done up to a certain point.
This approach is less taxing mentally. However, it has the nasty side effect of limiting how we improve. Whenever I feel like I'm getting into a rut, I will look at popular websites and I'll start to put together a list of features that I want to learn how to build. From that point, I can put a plan together for what concepts I need to learn in order to implement them.
Frustration = skill
One of my favorite illustrations of getting past skill plateaus was made by the calligrapher, Jamin Brown:

Notice in this illustration how the learning process is filled with plateaus? This is a natural component when it comes to improving at any skill.
But also notice that the key to overcoming a plateau is called the Frustration Zone. I think that's a great name for it. Learning complex topics is not easy. As you've probably heard countless times, "if it were easy, everyone would do it".
Becoming a developer can be one of the most rewarding experiences that someone can have. And part of what makes learning how to code so fulfilling is how many challenges you'll need to overcome to succeed.
- 基于粒計算模型的圖像處理
- Mastering ServiceStack
- Linux核心技術從小白到大牛
- Mastering KnockoutJS
- PHP 7+MySQL 8動態網站開發從入門到精通(視頻教學版)
- 深入分布式緩存:從原理到實踐
- IoT Projects with Bluetooth Low Energy
- 零基礎輕松學C++:青少年趣味編程(全彩版)
- Python Programming for Arduino
- LabVIEW數據采集
- Hands-On Dependency Injection in Go
- Raspberry Pi Robotic Projects
- Java Web入門很輕松(微課超值版)
- HTML5+CSS+JavaScript深入學習實錄
- Python程序設計