One topic I’ve been passionate about throughout my life is learning and, more aptly, growing. This has been a lifelong pursuit, and in reflection, I can reasonably say I’ve built a strong framework for growth through all of my adventures, careers, and successes. I’ve shared it with many I’ve met and have employed it several times in my life to learn more about adventurous sports, coding, engineering, and leadership. Let’s explore my framework and how you might be able to apply it yourself with examples of how I’ve applied it. Here is how to learn any skill quickly (as a traveling engineer)!
Featured Image Credit
How to learn skiing quickly
Starting on the bunny slope
The bunny slope is where most people start on their skiing (I’ll cluster all the different types of boards into just “skiing”) adventures. When you first look at the bunny slope, it will appear very gentle and easy to approach. Experienced skiers will laugh and joke off the bunny slope. Your learning starts here!
The bunny hill might seem anti-climactic and even perhaps feel more confident. However, trying more challenging runs such as single or double diamonds immediately would leave you overwhelmed with fear. If you were to attempt those, the result would only be a failure and possible injury or even death. This is not simply a lack of courage or imposter syndrome. You lack real experience.
Back to the bunny slope, you go down this once seemingly gentle slope only to find it isn’t so easy. You fall, hurt yourself, it is cold outside, and your body is so tense you are sorer than you’ve ever been. You could hope to have a strong support system of folk to encourage you to go despite your mind and body telling you to stop. Otherwise, you could keep telling and urging yourself to go, reminiscing why you were inspired to start in the first place. But, ultimately, it is only you that can make it to the bunny slope.
You keep going. You start seeing patterns, feeling the movements needed to make the turns, slow down, and gain control of the situation. Finally, after what seems like forever, you start feeling, “I got this.” You feel confident in making it down that bunny slope with relative safety and ease. Congratulations, you have leveled up! The story is not over yet. It is only just getting started.
Pushing your limits beyond comfort
When you are doing something you are afraid of failing, that feeling you have is natural and needed. While I am not suggesting you make drastic strides that put you in danger. Progressively pushing yourself and your limits will help build eventually comfort much faster than without it. No amount of youtube or coaching will help you gain experience and grow other than getting on that slope and skiing. Although it is worth noting, coaching can help accelerate your growth faster.
For some, they tell themselves they have reached as far as they need to go. They stop pushing themselves further for steeper slopes and stop progressing their experience and skill level. Others continue to push their limits and refuse to stay in that comfort zone. As a result, they progress faster and prevent getting stuck or peaking out on their skill growth. No one can help you push your limits but yourself.
Breaking that comfort zone will never feel easy. It will constantly feel harder and harder. As the slopes get steeper and your moves get sharper. At the same time, you will feel the sum of your experience, which will equate to confidence. You don’t feel the imposter syndrome, as you feel you’ve made these motions before. You’ve fallen 100s of times, and for each time, you’ve improved slightly. Less steep slopes that used to be a challenge don’t even make you break a sweat anymore.
Reaching the peak of the mountain
After what may seem thousands of runs, progressively work your way through challenge after challenge. Through the green, blue, and diamond runs, you now find yourself looking down from the top of the mountain. The Double diamond runs are the apex of the difficulty in Sking and signify challenging terrain as anyone getting injured on it isn’t easy to rescue. You are on your own—the infrastructure sucks. There are no handrails, no safety guards. It is real freedom. At the same time, it is perilous.
You’ve earned the respect of your peers. No one laughs at you anymore. You find no one knows what to do at this point aside from point the board downhill and go. You’ve accumulated a lot of experience up to this point, though. Despite the dangers, you feel confident in your skills to handle this terrain. You point your boards downhill and ride. The sum of your experience helps you navigate the wild landscape safely.
You will find that the top is more lonely, and those around you that you do find are very skilled. You might think of the top of the mountain as the sport’s apex, but you’ll find it is truly just the beginning. Once you hit the doubles, your growth hits diminishing returns, and you begin working on the very fine skill sets and optimizations. The mountain’s peak only opens the doors to infinite possibilities and finer specializations to learn and experience. The growth opportunity never ceases. You only stop pursuing it.
This story, I hope, resonates with you and more so that it helps build a framework I’d present to you and extract some finer rules you can apply to yourself.
- Beginning a new activity may feel humiliating. Humble yourself and start as a beginner.
- Don’t be afraid to fail along your journey. Instead, accept failure and be around others who accept it. If you are failing, you are growing.
- Push your comfort zone beyond the median of your comfort and find challenges you have not done before until you can confidently do them. Then pursue challenges you feel less confident in and rinse and repeat.
- Coaches and mentors can accelerate your growth but can never replace your action. You must act.
- Have focused goals as you iterate to improve and reflect and grow when you fail. Failure to reflect and not realize unmet goals is a wasted opportunity for growth.
- Let no one, be it a stranger laughing at you, friends, or family, get in the way of your ambitions. You are committing yourself because you believe in growing. Remember that.
- If you feel imposter syndrome or lack of confidence, it likely means you are pushing your limits (which is good), and more experience will help you become better there. So accept this for what it is, practicing pushing your boundaries.
- Constant iterative practice will build experience and confidence, leading to stronger skills with refinement and reflection.
- When you hit your peak, there is always more to grow. So learning something new has infinite growth potential that matches a diminishing return with your time.
Applying this to software engineering
Let’s explore practical ways to quickly apply this framework to learn any skill—precisely, programming. Programming is what I call a “complicated” problem for those unfamiliar. It has a finite set of possibilities. Programming may appear daunting for any beginner but let that not be an excuse if you are committed. Focus on small iterative objectives and continue to push yourself.
You are starting with tutorials and exploring the learnings of others. Remember, these are accelerators, but you only grow if you are the one making the actions. You must program. Read the tutorials and create the program. Go through the motions, get something working. You will find a spider web of things to explore, and all of those things may feel worth learning but keep focused on those objectives. Quickly progress to building a real piece of software—a website. Find a tutorial and push through it. It may take a long time, but you must push through despite any frustrations you feel along the way and the feeling of being laughed at. Once you’ve achieved that website, you may feel you have hit your mountain top.
This is only just the beginning, though. You’ll see many other mountain tops in the forms of other software programming languages, frameworks, libraries, toolsets, and operating systems. The list is endless, and the growth potential is infinite. First, however, it would be best to reflect on all you’ve accomplished to get to this point. You did it. Now do it again. Build 5 more projects. Each time you build a new one, find a more complex problem to solve. Each time you create a new one, you’ll learn more and build it faster. You must always be challenging yourself to grow.
After building enough or working on large-scale projects, you will realize that this programming skill is truly just a complicated problem. Complicated in the way it is predictable. However, something else makes building software much more difficult than you ever realized. People. The code that your program needs to be understood by others, built on over time, is easy to use and not to be mishandled, and you need to get other intelligent people to agree your solution is the best. This is where complicated meets the complex problem space. This is the art of building software.
Engineering is the Mount Everest of the software engineering world and will take you straight into space if you let it. It is the thing that will make or break any product being built, succeed or fail over time, as the complexities of where to invest, how to invest, and build a product with buy-in as a team are non-trivial in all aspects.
The Everest of Programming
Yet, my framework still applies. You’ve mastered programming up to this point and likely built many projects with many different people. Your experience is irreplaceable. With that, you’ve learned what works and doesn’t work. Each time, improve, even when you have failed and reflected. To grow as an engineer, you must start taking charge and making bad decisions (in controlled environments) and continue to push your limits. Imposter syndrome may hold back as the stakes of failure are amplified at this level. Much like falling on a double diamond leads to dire consequences. However, you’ve experienced much to get to this point and must be willing to accept that with each failure, you get stronger. With a strong mentor in your career to reflect on your success and failures, you will grow even faster.
Putting yourself in front of large projects as a tech lead or architect and using your engineering knowledge of leading the project investments, coding styles, technical tooling, engineering systems, architecture stack, team expertise, and vision buy-in becomes the name of the game. Mistakes will affect your peers, and you must remain humble and use your peer buy-in to support and understand your growth trajectory. If you are always looking for the next challenge, you will grow.
After all that, I hope this read was enticing and valuable for helping you in whatever skillset you want to learn next. Be it beneficial to your career or the next hobby you want to know about. This framework will help simplify the learning model, and I guarantee results. Remember, you are the only one that can push yourself to achieve where you want to be.
Thanks for reading! Check out more articles written by the team at Travel-Wise and me!