Ending the #100DaysOfCode Challenge

I decided to the end the #100DaysOfCode challenge officially. Those who follow the GitHub repo for the project, could see I made it up to Day 95.  I haven’t been able to keep up with a daily blogging schedule to keep you all updated, but I did share notes on the challenge about what I worked on for each day via the #100DaysOfCode page.  I wanted to do one last post about the challenge, what I did, what I learned, what I completed, and overall what went wrong that made me what to end it.

The Pros

Overall, this challenge has been the best thing for me in being held accountable to learning new things outside of work.  Here is what I completed since starting the challenge back in January:

Books Completed

  • “JavaScript and jQuery” by Jon Duckett
  • “You Don’t Know JS: Scope & Closures” by the folks at Getify

Modules and Tutorials Completed

  • DevTips jQuery in 15 (test demo available)
  • JavaScript track – Codecademy (87% of this was done before the challenge, I completed the remaining portions)
  • AngularJS track – Codecademy
  • Intro to jQuery – EdX
  • Learn AngularJS for Beginners – Udemy
  • HTML5 and CSS track – Free Code Camp (I didn’t know at the time I could skip tracks, I completed this as a prerequisite for the JavaScript track)
  • Responsive Design track – Free Code Camp (ditto)
  • jQuery track – Free Code Camp
  • JavaScript basics track – Free Code Camp

MOOCs Completed

  • Responsive Web Design – 94.0%, Coursera
  • Interactivity with JavaScript – 99.2%, Coursera
  • Front-end Frameworks: AngularJS – 100%, Coursera
  • Multiplatform Mobile App Development with Web Technologies – 100%, Coursera

Projects Completed

  • Tribute Page – for Free Code Camp, built with HTML and CSS
  • Portfolio Page – for Free Code Camp, built with Bootstrap 3
  • Bootstrappin’ Portfolio – 5 page portfolio site built with Bootstrap 3
  • Personal Template – biographical landing page built with Bootstrap 4
  • Creative Template – landing page for creatives built with Bootstrap 4
  • TaskList – built with Bootstrap 3, JavaScript, and Handlebars.js
  • Animal Exhibit – built with Bootstrap 3, JavaScript, and Handlebars.js
  • BBC site clone – landing page of the BBC Tech News page, built with HTML and CSS
  • Book App – built with AngularJS (I decided to continue building this beyond a one-page SPA)
  • conFusion Restaurant App* – built with AngularJS
  • conFusion Restaurant Mobile App* – built with AngularJS, Ionic, and Cordova for Android and iOS
  • Prince Tribute quote generator – built with HTML, CSS, and JavaScript
* Due to Coursera’s honor code which I accepted as a scholarship recipient, I’m not allowed to share the complete code for these projects nor launch them as my own. They have not been added to the GitHub repo for this reason.

Languages, Libraries, and Frameworks Learned

  • Bootstrap 4 – proficient, it’s not too much different from v. 3
  • Jasmine – basics
  • jQuery – basics
  • JavaScript – intermediate
  • AngularJS – advanced
  • Meteor – basics
  • Handlebars.js – basics
  • Ionic and Cordova – advanced
  • Node.js – basics

Verified Certificates Received

  • 1 from University of London & Goldsmiths
  • 1 from University of Michigan
  • 2 from The Hong Kong University of Science and Technology

With the challenge, I finished tutorials that I had in my queue, received scholarships to complete MOOCs for web developer certificates, and contributed hundreds of lines of code on GitHub for projects I truly enjoyed developing.  Unintentionally, I also became more efficient at writing tutorials for this blog. As what I was learning grew complex, my posts got longer.

The Cons

The biggest setback for me was when I got promoted at the organization I work for during the first 30 days of the challenge.  As part of my promotion, I was put in charge of our organization’s new site launch and app.  It was a great opportunity   With the promotion came longer work days, more training outside of office hours, and more travel.  I also took on two freelance gigs outside of my day job to do some design work for clients.  Working 50-60+ hours a week during February and March, plus doing course work for my web development specialization didn’t exactly make me excited to contribute code to this challenge on most days.  I started skipping days which lead to me losing track all together.

Still, I was too stubborn too quit. So, I took the biggest hit with my blogging.  When I started the challenge, I blogged everyday.  Once February hit, I had to group days to provide be breaks in between posts. During the last stretch, I only contributed 3-5 posts.  Blogging about what I was learning became more difficult because I had to spend time organizing material and writing in a way that makes since for newbs as well as advanced learners.  A typical blog post for me grew to more than 500 words, with me sometimes having to create series just so that I could cover a subject more thoroughly.

Once I started skipping days, this challenge that should have only taken 100 days, lasted over 4 months. Once May hit, I threw in the towel…for my sanity.

What I Learned About Myself

This challenge revealed a lot about my learning style and what I feel are the best ways for me to accomplish certain goals.  This include the following

  1. Taking courses that don’t provide any type of technical support outside a user-generated forums (and Stack Overflow links) are not for me.  Not having on-call support while working on course projects is very frustrating.  This has continued to be a hurdle for me, so I have decided to hire a mentor who has experience in building MEAN stack web apps when I start my capstone project this Summer.  If I have to pay for on-call, one-on-one, high-ranking expertise to help me out whenever I need it, then so be it.
  2. As I said previously in another posts, books should be my primary introduction to any new language, library, or framework I pick up.  I like tutorials, but they don’t really teach me much other than how to follow directions.  I retain information so much better if I’m reading material.
  3. I need to become comfortable reading official documentation for any web tools I want to use.  For example, I’m thankful for Cordova for providing a guide to deploy Ionic apps for iOS and Android, but I had to go over that doc way too many times then I care to admit before I could successfully get my conFusion app to successfully launch in the emulator provided.  I’m too quick to find a shortcut when I don’t feel the docs are articulate enough.  While this is not a problem, I need to read the docs and follow the directions as written first before trying anything else.
  4. There is no future in me writing tutorials on a regular basis…at all. I appreciate all my readers, but if I find it difficult to explain a subject in 300 words or less, don’t expect a post about it in this space.

In all, I feel good about wrapping up this project now.  If you have enjoyed my posts thus far, please consider following Our Code on Twitter.  I just launched this account a week ago to engage more with readers.  Follow me, mention a blog post, and I’ll be sure to follow back.

Thanks for riding with me on this challenge!

10 thoughts on “Ending the #100DaysOfCode Challenge

  1. Congratulations on making so much progress during your #100daysofcode! Would you be interested in publishing this on Medium as well? We could share it with our open source community 🙂

    • Thank you Quincy! I absolutely would be interested. I’ve never used Medium before but I heard good things about it! What do I need to do on my end to make this possible?

  2. Hey, which resources have you used to build your github projects, i’m as a relative beginner js programmer would like to partcipate in such projects [with some help of-course] and I wonder where you got those ideas/projects to work on from.. if you could share.. again for the github projects.. thanks a lot! love your article!

    • Each project is different, but here is a composite list of all the tools I use. For JavaScript programming development, I used Mocha for testing, jQuery as an interactive library, Handlebars.js for templating, AngularJS as my JS frontend framework, Ionic as my mobile framework, Cordova for deploying to mobile, NPM and Bower as my tool managers, Sublime Text as my editor.

      I got all my ideas for projects from MOOCs and tutorials I have taken. I recommend Coursera, EdX, and Udacity if you are looking for free online programming classes. If a class is really good, I pay for it and take through Udemy. I also watch a lot of youtube tutorials on web development.

      I wish you the best of luck on your endeavors 🙂

  3. Congrats! It’s wonderful to see that you’ve grown your knowledge base in such a succinct amount of time. Are you planning on making another blog? It’d be great to see projects/ideas you’re working on in the future!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s