Learning how to code is NOT easy

I wrote this letter to myself as a part of an assignment in the Udacity Front-End Web Developer Nanodegree course I’m previewing today. It’s a snapshot of where I am in my career journey right now.

Letter to self

Dear Vanessa,

You already know how tough it is to learn how to code — last year you completed a three month, full stack, web development bootcamp! However, you’ve been struggling with staying motivated lately when you think about how much you still have to learn, and how you’d love to specialize in front-end development.

You’ve also felt discouraged as you realize that finding a full-fledged web developer job in San Francisco is very competitive, and you still need to work on your algorithms to master those tough interviews.

However, you know you can solve problems, and you know that you’ve already come a long way. Sometimes you just need to remind yourself of your goals and how to persevere even when the going gets tough.

Problem Solving

How will you solve your problem?

Something I will list first is that after working with a problem for a long time, sometimes the best thing is to take a break, and most importantly get a good night’s sleep (Cathy Bechler mentions this in her post).

Then, if looking for answers online (e.g. StackOverflow) proves fruitless, ask your software developer friends! Post your own question! Sometimes you have to risk sounding stupid — and a lot of times your question won’t even be that stupid after all. Everyone was a beginner once.

Skills I can use to help tackle challenges

What skills do you have now that will help you tackle challenges?

As a result of years of being an enthusiastic student as well as my bootcamp experience, I am able to reach inside and remind myself that just because I don’t know something today does not mean I can’t learn it tomorrow, or next week. Change of mindset is very helpful when approaching a problem.

Another skill is knowing when to call it a day. I feel that I’m pretty good at knowing when I need a break so that I can come back fresh and tackle the problem.

I also consider myself to be very good at Googling the right thing to find the answer I need.

Growth Mindset

How will a ‘growth mindset’ help you reach your goals?

As much as I love learning, when I get stuck, and I mean REALLY stuck on something, I can get so frustrated that I want to quit and do something easier. This becomes a negative cycle of me feeling bad about myself (“I am a failure”) and then abandoning my goals of self-improvement.

This fixed mindset has to change. Most of all, I have to remember that where I am now is not indicative of where I could be in the future. It’s GOOD to fail sometimes. Failure shows you what you still need to work on. It’s GOOD to get stuck. It means you’re working on a worthwhile problem and there’s something to be learned there.

In contrast, the growth mindset embraces failure as a learning experience and encourages action over rumination (or, getting stuck in your head and feeling like crap when you feel like you aren’t learning fast enough).
“How to navigate the ups and downs of learning to code”

I often find that writing my thoughts down is a great way to foster my growth mindset, especially when I’m feeling discouraged or down on myself. By getting out of my head, I’m able to start thinking more rationally and find the motivation to move forward.

Goals

Something Joyce Akiko wrote in her post really resonates with me:

We risk being known as people who can’t follow through, who lack focus

As much as I don’t want to care what other people think, this is a fear that has plagued me for most of my life, and usually my way of dealing with it has been to shift to another goal I’m confident I can achieve.

Recently I’ve realized, however, that I’ve already started my coding journey, and there is so much that I enjoy about coding and actually building apps people can use (as opposed to the administrative or operations work I did in my past jobs) that I shouldn’t abandon my desire to become proficient at coding. The reason why I got into coding in the first place was so that I could have the skills I needed to make design or interface changes I envisioned or to create prototypes of my ideas. I wanted to be a self-sufficient builder of web experiences, and that is still my personal goal.

In the long term, my career goal is to become a product manager. I know that in order to get there, I need to have a solid technical foundation so that I can effectively communicate with product engineers. I think the best way to do that would be to land a front-end web developer job.

Additionally, I have a couple of website ideas related to dance training and concert tracking that I would like to build on and eventually launch.

Don’t give up!!!!! You wanted a job/career where you could use your brain more — go get it!

Love,
Vanessa


Articles referenced in this post:
  1. http://www.codeconquest.com/blog/how-to-navigate-the-up-and-downs-of-learning-to-code/
  2. http://blog.thinkful.com/post/98829096308/my-first-month-coding-an-emotional-roller-coaster

On failure

You haven’t failed enough yet.

You have to throw yourself into uncomfortable waters, harder. Or throw yourself into one subject, and get deeper.

Flow is the best feeling. It happens for me while I’m practicing yoga, dancing, coding, writing, reading… it’s when you are no longer aware of time passing. The passage of time is no longer strenuous and boring and something to be measured or analyzed.

Your mind controls way more than you think. We are not helpless to the forces of the world. There is almost nothing that just “IS”. Don’t be fooled by what people deem is “TRUTH.”

The only way to get good at something is to be terrible at it at first. And I mean horrendously terrible. But be humble about your terribleness. Ask questions, put the time in, make the mistakes. Don’t write things off, make sure that you lean into what strains and challenges your brain, what you don’t understand. Will yourself to understand. Be willing to be embarrassed by your lack of understanding along the way. Have the resilience to push through your bullshit and excuses so that you can GROW.