#100DaysofCode – I Failed

But I’m not upset about it.

In fact, I’m glad I failed. I probably need to do it more often.

I’m sure that I’ve mentioned this before: I am a perfectionist. Not in a cliche-job-interview-answer kind of way that just means I work very hard to do very well. I wish.

For me, perfectionism takes on the form of an All or Nothing attitude. Things will go perfectly according to plan or they don’t go at all. Not many people talk about how perfectionism can keep you from doing anything simply because it deviates from your plans.

Development is not the best environment for the perfectionist paradigm.

There’s a reason there are updates and versions of software! You can always find a change or improvement to make – that doesn’t mean that you never release! Imagine if that kind of thinking dominated even television. We’d never see the last season of Game of Thrones (we probably would have gotten a better final season of Heroes though).

And this isn’t a paradigm that applies only to one part of life. Chances are, if you have perfectionist tendencies, it spills over into other aspects of life. From how you view your job performance to making weekend plans to that workout regimen you’ve been meaning to start.

I’m glad I failed this challenge.

Not only did it give me a reality check about perfectionism, but it made me reevaluate my goals.

My goals during this challenge were created out of frustration, not motivation. I decided on goals based on what I thought I should be doing, without about why I should be doing it or if I even wanted to.

In the process, I realized that I still have an interest in video game development and have started learning how to use Unity and code in C#. At nearly the same time, I started going back to FreeCodeCamp and completing some of the Basic JavaScript lessons I hadn’t done yet. This led to finishing an Intermediate Algorithm Scripting problem I had been stuck on, then doing some more with my Portfolio site.

Initially, I felt conflicted about working in two different languages – all the advice out there says to pick one and master it if you want to be successful. I do want to be successful. But I also want to do something I enjoy and I deserve to have both.

Maybe next month, I’ll decide game dev isn’t for me. Maybe front-end. Maybe I’ll keep doing both. Maybe I’ll decide I hate them both. But I won’t know if I never even allow myself the chance to try.

I’m glad I failed this challenge because I learned something: there is no perfect path.

 

 

Advertisements

Day 35 (Okay, it’s actually Day 37 but still…)

I think I’ve figured it out guys

I’ve been concerned for a while about getting stuck on projects, challenges, and even tutorials. It just felt like something wasn’t clicking for me and I wasn’t progressing.

Algorithms.

There are plenty of people who think algorithm practice is completely useless. When I was looking for resources, the advice was typically “just build something.” That was my problem though – I was “just building something” and clearly missing something in the foundation. I tried switching up courses, switching up languages,

One of the videos I was watching reminded me of one of the Algorithm Scripting Challenges I had been stuck at on Free Code Camp. After working at it for some time, I had passed half of the requirements, but nothing I did got the other half to pass. So I Googled.

As I looked at other people’s code and FreeCodeCamp’s solutions, I realized that none of the solutions looked quite like mine. That’s not inherently a bad thing – there can be dozens of ways to solve one problem. The reason that it bothered me though was that the other solutions used methods I didn’t even think to use and/or had forgotten about. Then, I realized that while I could read the code, it was challenging for me to really interpret and understand it.

Light Bulb moment

When I got stuck on previous Algorithm challenges, I would refer back to challenges I had already passed for clues, or even the Basic JavaScript exercises. So, that’s what I did – I started opening up older scripting challenges to see if any of them were similar in nature. Next thing I knew, I started trying to solve them again. Suddenly, I knew exactly what I needed.

As a result, I’ve spent the past week or so practicing algorithms instead of finishing the course I had intended to finish. But, honestly, this is the most accomplished I’ve felt in the past 37 days.

Goals for Day 40:

  • Complete ES2015 – I am more than halfway done with this course (55 minutes left)  with a weekend ahead of me and it is 100% doable.
  • Complete 2 Algorithm challenges a day.
  • Research other resources to help keep up with Algorithm practice.
    I know that there are some “coding dojos” out there – I’ve used CodeWars this week. What’s your favorite? Which would you recommend?

Day 25

Goals for Day 25:

  • Complete Object Oriented JavaScript (2 hours)
  • Complete The Module Pattern In JavaScript (16 minutes) I ended this video with more question marks than when I started it. This will definitely take some additional digging on my own to understand a little bit more.

This upcoming week for me is a busy one, which means that getting my coding time in will be more difficult. Difficult, but not impossible so I set my expectations and goals accordingly.

Goals for Day 30:

  • Complete Introducing ES2015
  • Research and post about Module patterns in JavaScript.

Day 20 (Pt 2)

I started the Object Oriented JavaScript course today and completed section 1, Introduction to Methods. We covered:

  • Objects
    • Methods – provides functionality of objects and may or may not return values.
    • Properties – stored data or state of an object
    • Keys – the name of a property
    • Values – the contents of a property
    • Native & Host objects

In this section, we also built the beginnings of a calculator which has given me an idea for my weekend project: update the code of my JS Calculator using a calculator object. Not only does it actually make a lot of sense, but I also think that my code will be cleaner and easier to read when re-organized this way.

Day 20

Goals for Day 15:

  • Complete JavaScript and the DOM (3 hours)
    Finished! It took me a few days longer than day 15, but I still feel good about it.

 

 

Goals for Day 25:

  • Complete Object Oriented JavaScript (2 hours)
  • Complete The Module Pattern In JavaScript (16 minutes)

 

 

Day 13

 

So far, so good!

I set my expectations for these first 2 weeks as increasing how much time I spend coding. Coming from a few months of nearly 0 times per week, I’m up to at least 4. Success!

Weekends are where I fell off which surprised me a little bit. Since I obviously have more time to code on the weekends, I thought my productivity would increase like it had previously. I found that it was actually harder to interrupt a day of doing nothing to do something that I kind of classified as “work” in my mind. To combat this, I will use weekends to focus on completing projects more so than courses. I still have plenty left on FreeCodeCamp and have a few ideas of my own.

Going Forward, I will also post an update every 5 days – specifically days ending in 0 and 5. I’ve mentioned this before, but writing has not only been fun, but beneficial in retaining information. Being able to talk about what I am doing in detail – in a way both techies and non-techies can understand is a skill I appreciate having and improving.

Goals for Day 15:

  • Complete JavaScript and the DOM (3 hours)

 

 

Day 1

Decided to start my own #100DaysOfCode starting today.

Dance season is over, which means more time to prioritize coding and learning and building and blogging. So here’s what’s happening:

  • Paused CS50.
    I feel as though I come off as indecisive and wishy-washy. I have enjoyed CS50 and will definitely complete it in the future. Learning a new programming language is exciting and I definitely benefited from trying something new, but it also reminded me that there’s still plenty to learn and build with JavaScript.
    Trial and error, folks.
  • Reactivated my Team Treehouse account.
    It has been over a year now since I last had an active account. I decided to reactivate it because I wanted a bit more structure than FreeCodeCamp or Udemy offered. Things like quizzes, tracks, suggested goals, and time estimates were appealing to me.
    I will be jumping into the Full Stack JavaScript track. Treehouse now gives the option to test out of courses, and I was able to test out of a couple of basic JS courses. I now have 32 hours left before I complete the track. At an hour a day, that’s only a bit over a month and just under 1/3 of my challenge.