- Skill Up:A Software Developer's Guide to Life and Career
- Jordan Hudgens
- 867字
- 2021-07-15 17:03:24
Tipping point for developers
With all that being said, I want to discuss topic of defining the tipping point for developers, which is essentially the point at which a developer goes from a beginner to a pro. Since this topic is a bit abstract, it's not possible to point to a specific point in time and say:
"Here it is, this is when it all clicks and makes sense."
There's not a sentinel moment when programming mastery occurs. It's different for every individual.
My own experience
I remember when I was originally learning programming. Understanding the syntax and context did not come easy for me. It seemed like I spent 99% of my time looking things up and copying and pasting code from others just to get my programs running.
The doubt machine
Needless to say, my confidence as a programmer was very low in the beginning. I kept being plagued by nagging doubts, such as:
- Maybe programming isn't for you
- Even if you code works you won't be able to write your own programs
- You're only typing in what the book is saying to do, you won't be able to build anything custom
And the negative thoughts continued from there
The painful process
If you're a new developer maybe some of this sounds familiar to you, or maybe it doesn't and I simply lacked confidence. Either way, I trudged along, trying everything I could think of to improve as a developer:
- Going through dozens upon dozens of programming books in various languages
- Trying to build up a portfolio of project
- Following online guides
However, back when I was originally learning how to code, the online resources weren't quite as good as they are today.
The tipping point(s)
So, what did the trick and pushed me over the edge to become a professional developer? None of those things… and all those things. I persevered through project after project and I consumed every training resource I could find. And slowly something amazing started to happen:
"Everything started to make sense."
The first tipping point
Even though it was a while ago, I still remember the moment my first development tipping point happened. I was sitting in front of my computer in a coffee shop and working on a web application.
A few hours went by and I stopped dead in my tracks, realizing that I had just spent the afternoon building a project and hadn't looked up a single code snippet. It wasn't like I programmed the space station, the project was incredibly basic. However, it was one of the most exciting moments I can remember in my life.
The second tipping point
As great as that was, I still had very far to go. I remember the next moment when I felt like I reached another key milestone. Even though my confidence had increased as a developer, the thought of anyone seeing my code was a very scary thought. However, I had started to build my freelance business and a client (who was also a developer) asked me to perform a pair programming session with him.
He had run into a bug with the program we were building and asked me to jump on a screen sharing session where we could work on the project at the same time. Honestly, I was scared to death when he asked. I had never coded in front of anyone before and the thought of doing it with this client pretty much gave me a panic attack. However, I didn't really have a choice in the matter so I started the session with him. After a few minutes of nervousness, I started to relax and to my surprise not only did I not make a fool of myself, I actually figured out the bug in his code and got the feature working.
The secret
So, what was my secret to getting over the hump and going from a beginner to a professional developer? Unfortunately, there is no easy-to-follow recipe. However, there is a process that is guaranteed to work. And the process isn't specific to becoming a programmer, it's the same whether you want to be a developer or a professional athlete… it's hard and smart work.
The book
In the book The Tipping Point, by Malcolm Gladwell, Gladwell gives countless case studies of what it takes for individuals to achieve mastery in a specific field. The key comes down to how dedicated an individual is to a specific skill. The book postulates that it takes around 10,000 hours for an individual to become a true master of whatever they're pursuing.
I'm not sure I believe in the 10,000-hour rule, mainly because there are a large number of variables when it comes to learning a topic or skill and rarely does a single rule apply for all fields. Also, I think the quality of your practice makes a significant difference.
For example, if you're learning how to play the violin: 5,000 hours of practice with a world class instructor is probably equivalent to 10,000 hours trying to figure it out yourself. However, with all that being said, one thing cannot be denied, the key to mastery is hard work.
- 程序員面試筆試寶典(第3版)
- Mastering Visual Studio 2017
- Mastering Adobe Captivate 2017(Fourth Edition)
- 程序員面試筆試寶典
- Java Web基礎與實例教程(第2版·微課版)
- Neo4j Essentials
- INSTANT Weka How-to
- Python應用輕松入門
- Reactive Programming With Java 9
- Kotlin Standard Library Cookbook
- Scratch·愛編程的藝術家
- Visual Basic程序設計(第三版)
- C指針原理揭秘:基于底層實現機制
- 分布式數據庫原理、架構與實踐
- Python Machine Learning Blueprints:Intuitive data projects you can relate to