Learning something new is, for the vast majority of people, a difficult and stressful task that requires dedication and focus. For me, the beginning of my journey down the path of the software engineer has been just that. New concepts and ideas are pressed upon my mind daily, and it is very easy to become overwhelmed with stress and anxiety when the demand starts to escalate. Luckily for myself, I'm learning in an environment where help is within arms reach, but this wasn't always so.
Years ago, I had toyed with the idea of teaching myself how to code. The prospect was daunting, and I didn't have a clear picture of where to start or what to learn. I started reading books and using online resources, but the task turned out to be too big for the then young man who still had to work full time to earn a living. I struggled to understand the fundamentals and I was, frankly, bad at coding. Anxiety, self doubt, and stress derailed my learning, and I never really gave it the effort that it deserved.
Being bad at something is perfectly fine. How you deal with that fact is what matters. Stress is a dangerous beast that affects everyone, from student to CEO. Those that manage their stress levels and keep their head above the tide of expectations will find it much easier than those who despair and panic at every hurdle that bars the path ahead.
I often find myself looking back upon my first attempt at coding to see where I went wrong. Aside from the structured education I'm currently receiving through Flatiron, the biggest difference is how I managed stress levels and perceived failures. If I could turn back the clock and give my younger self some advice, there would be two things that I would want to impart.
Coding is hard, and don't feel bad about it not making sense at first. Take a break if you start to panic. Go for a walk or exercise to blow off some steam. If you believe that you can't solve the problem in front of you, chances are that you'll be right.
Don't be afraid or stubborn when it comes to asking for help. I myself have been too prideful to ask for help, thinking that I should be able to solve my own problems. Just as the internet is a vast web of computers and servers, so too should we be as developers. Collaboration and networking have been fundamental to my search for knowledge, and I credit a lot of my success to those helping hands and voices that have been there when I have needed assistance or insight from someone more knowledgable.
Like any unfamiliar task, learning to code is difficult. If you're unprepared or easily discouraged, as I once was, it will be harder still. Take your time and look for help when you need it. My journey has just begun, but it has already been immensely gratifying.