Why I’m Quitting #100DaysOfCode and [Temporarily] Support

With the addition of a new class to my schedule, I now have too much on my plate. I’m not complaining, but I need to make some decisions.  For the most part, I’m the one that chose to do these items.

This is exactly why it’s good to know your priorities.  It becomes a whole lot easier to make decisions when you know them ahead of time.  In addition to my full-time job, I’m working on fitting these into my schedule:

  • Volunteer Fire Department.
    • Emergency Medical Responder (EMR) Training. 
      This is a new class I started a couple weeks ago.  A handful of people from our volunteer fire department are taking this course.  It’s an important one (with homework and everything!) that I want to make sure gets enough attention.  It can literally be a matter of life or death with this one.
  • #100DaysOfFitness.
    I’ve wanted to get in shape for a while, but there wasn’t time to fit it in the schedule.  Now I’ve made fitness a priority and made time in my schedule.  As of right now, my goal every week is to run at least 20 miles, do 75 push-ups, and 150 curl-ups.  
    Read more about my #100DaysOfFitness challenge.
  • Kids’ Playhouse. 
    We’ve talked about building the kids a new playhouse for a while now.  We have some of the supplies, but as I really started going through the set of plans we have, a number of small things just weren’t making sense.  My grandpa was a carpenter and wouldn’t have even needed plans.  We’ve decided instead of rebuilding it from scratch, we are going to fix up the one we already have. 
  • Cub Scouts.
    My son is just finishing up the last of his Cub Scout requirements.  We got a few months behind because our previous Den Leader decided they weren’t interested in doing the job after all.  I took over as his Den leader and we’ve made some great progress.  He’s done with his Weblo requirements but I want to make sure he finishes up his Arrow of Light since that is the one thing that transfers to Boy Scouts.  Once he moves on to Boy Scouts, he will be doing more, but I won’t be running things.
  • Navy Reserve.  
    The normal Navy Reserve stuff.
  • Development.
    I have a couple projects I’m working on, including my Mug Monday WordPress plugin.  It will allow me to share a new coffee mug from my collection every Monday.

Quitting #100DaysOfCode

After several attempts, I’ve come to the conclusion that the #100DaysOfCode challenge isn’t a good fit for me – or I’m not a good fit for it,
however you want to look at it.  I love the idea, but it just doesn’t work with my schedule and priorities.

My problem has never been to stay motivated; the problem is finding the time.  I do spend time on code and development, but not consistently enough for something like this.  I have too many variables (no pun intended) in my life that can take no time one week and 20 hours the next.

I still intend to work on freeCodeCamp, but not for an hour every day.  I’ll also continue to work on my other projects and learning development when I can fit those in.

Taking a Break from Support

This is the tough one for me.  Although I haven’t had much time for a while now, I’ve tried to keep up with a little with support here and there, including moderator stuff in the mornings.  I absolutely love doing it, but with everything else right now I’m just taking a break completely for a couple months.  There are some really kind, generous people on the support team.  I may pop into the Slack channel sometimes, but that’s about
my limit.

Make the Most of Your Time

I already have enough going on that I don’t like to take too much time away from my family when I don’t have to.  For this reason, my fun stuff or hobbies fit in where there can. 

Obviously, I don’t have a choice sometimes, but evenings are usually reserved for family.  I typically wake up between 4:00-5:00 am so I can do my stuff without taking away from family time.  What doesn’t fit in before work, usually doesn’t happen.

The key is in not spending time, but in investing it.

Stephen R. Covey

Nobody has a lot of time and that’s why we need to make the most of what we do have.  Set your priorities and stick with them.  Don’t waste your time, but invest it things important to you.

#100DaysOfCode: My Challenge to Become a Developer

I tried the #100DaysOfCode challenge before, but stopped at day 54.  I was getting the coding done, but wasn’t learning very much – which was the whole point of doing the challenge.  This time around I’m doing things a little different.  I’m focusing more on learning development (especially JavaScript) than what challenges I’m getting done.  I’d much rather spend a week on a single challenge if I understand it when I’m done.

My Why

The whole reason for doing the #100DaysOfCode challenge is to learn.  Although I got off to a slow start, my goal this year is to learn the basics of JavaScript.  I’ve already made a lot of progress, but I also have a long way to go. I love coding, but when it comes down to it, it’s still just a hobby for me. For this reason, it’s harder for me to fit it into my schedule than some other things.  Doing the challenge will help me set priorities and cut back on unnecessary things.

I taught myself HTML and CSS in the mid-late 1990’s when we got our first computer. There was still a printed directory of websites at that time (think phone book for the Internet).  I’ve made various websites off and on since then, including plenty of dabbling in code/customization. Now it’s time to really dig in.

My Rules

You can view the official rules on #100DaysOfCode.com.  I’ll be following the main rules for the challenge, but adding to them.  More specifically, for the next 100 days I will:

  • Code a minimum of one hour every day.
    • If I don’t reach a full hour of code, that day will not count.  An extra day will be added on to the end of the challenge.
  • Tweet my progress every day using the #100DaysOfCode hashtag.
  • Encourage and support at least two people each day in the #100DaysOfCode challenge on Twitter.
  • Push my work to GitHub, when applicable.
  • Log my progress on GitHub, to include projects completed.
    • This is one place I am making a change from last time.  My log will be for the previous day’s work.  For example, I will be logging my day 1 accomplishments on the morning of day 2.

      This is going to help me be more consistent in updating the log.  I only missed two days of coding during the entire month of May, but only logged about half that.  I’m a morning person and wake up several hours before work.  That’s when I do most of my coding. 

      The last time I tried this, I didn’t want to do my log that early in the morning in case I worked on it any more during the day.  My evenings are generally reserved for family time.  That means when the evenings came around and we were doing something, the log was not a priority. Finishing the log the following morning works better with my schedule.

    • I’ll also be doing the condensed version of the log instead of the normal one.  I want to keep track of what I’m doing, but I don’t want to spend a lot of time on that.  The more time I spend on the log, the less time I spend coding.

My Plan

I’m a big fans of lists.  I find it’s helpful to plan out what I intend to do for the challenge. This will help me stay focused on what I want to do and learn. Creating this list at the beginning will prevent me from wasting time thinking about what comes next.

Goals

  • Complete freeCodeCamp’s Responsive Web Design Certification and start working on JavaScript Algorithms and Data Structures Certification.
    • I had worked my way through quite a bit of the JavaScript Algorithms and Data Structures while these were still beta versions. The certifications are no longer beta and I’m going to go ahead and do them again in the official curriculum.
    • Each certificate calls for 300 hours of time, but there will be a lot of review for me. I don’t expect the first part to take anywhere near that.
    • My freeCodeCamp profile:

      geoffreyshilling
  • Learn JavaScript.
    • This is a more general foundation.  I’m pretty good at figuring things out using reference material.  I want to continue improving my knowledge so I need to look up fewer and fewer things.
  • Learn Gutenberg.
  • Gutenberg is replacing the WordPress editor. The larger goal is to expand that to entire websites. I’ve been using Gutenberg for months on my sites and I love it.  I want to learn more about developing for it.

Projects

There are a number of projects I want to work on during this challenge.  Although I likely won’t complete them all, this will give me plenty to work on over the next 100 days.

freeCodeCamp

  • I plan to spend at least five hours a week working on freeCodeCamp’s  challenges.

WordPress Plugins

The plugins I want to work on include:

  • Mug Monday. 
    URL:  https://geoffreyshilling.com/plugins/mug-monday/
    A Gutenberg-compatible custom post type so I can share a picture of a different coffee mug each week.  Note:  I have made good progress on this plugin already. 
  • PRT Tracker. 
    URL:  https://geoffreyshilling.com/plugins/prt-tracker/
    A practical way for me to track my fitness workouts in order to improve my Physical Readiness Test (PRT) score in the Navy Reserve.  Workouts will include running, push-ups and curl-ups.
  • Coffee Tracker.  A fun way for me to track how much coffee I drink.  It will let me enter how much coffee, the brand, location, roast, and more.  Reports will be added so it will show my most popular coffee, total coffee for the year, average coffee per hour, and more.

My Notes

  • My #100DaysOfCode starts today, June 11, 2018 – also known as King Kamehameha Day.
  • I will miss some days.  I don’t want to, but it’ll happen.  As much as I love coding, it’s still a hobby.  My other priorities that come first include family, being a volunteer firefighter and our department’s treasurer, and the Navy Reserve.  Sometimes all of these converge at once and there is no time left.
  • The focus is on learning, not seeing how much I can get done.
    • The goal is to still make as much progress as I can, but I’m not going to move on until I understand what I’m doing.  If it takes me a week to understand something, that’s how long I’ll spend on it before I move on.
  • I intend to keep track of “lessons learned,” as far as what worked for me, what didn’t, any issues I ran into, or recommendations I have.

Join Me?

Are you already participating in the #100DaysOfCode challenge or want to get started?  I’d love for you to leave a comment or find me on Twitter and let me know what you’re working on!  Best of luck to all of us!

Other Resources:

Important Reset for #100DaysOfCode and WordPress Support

Working in the IT field, pressing the reset button is not uncommon. But most of the time it’s done on physical devices.  This last month has been beyond busy and I’ve decided to hit the reset button on several things in my life; these items include WordPress Support, #100DaysOfCode, and my PRT Challenge.  Here’s a brief summary of the major things that have kept me busy:

  • I attended my two weeks of Navy Reserve annual training (AT). There were several issues, including trouble with both my flight and hotel reservations.
  • After returning to the airport from AT, my car wouldn’t start.  Luckily we managed to get it going with Detroit’s complimentary in-airport service.  The car wouldn’t start at all the next day and had to be taken to the shop.  It turns out there was an electrical issue that caused a small but constant drain on my battery.  This drain also killed my relatively new battery.
  • We got back to town just in time for me to attend the second half of our fire department’s business meeting.
  • I got home Tuesday night from AT and we left early Thursday morning for my wife’s four-day 2017 Thirty-One National Conference.
  • The following weekend was my Navy Reserve drill weekend.
  • This last Thursday I traded in my car for a Jeep Compass.  I’m beyond stoked to be a Jeep owner again!
  • This weekend is my first weekend home in over a month.  Yesterday we had a few hours of fire department training in the morning.  I’m hoping today will consist of plenty of relaxation. It’s always nice to travel, but it’s great to be home and finally get to spend some time with my family.

With all that being said, I haven’t made much progress on #100DaysOfCode in quite a while. I don’t mind missing a day here or there, but I was about a third of the way done and missed a few weeks. That defeats the whole purpose of the #100DaysOfCode challenge. For this reason, I’ve decided to start over, but with some changes. Last time I was focused on PHP/WordPress development. I’m confident in my ability to understand what I need to at this point and to figure out what I don’t yet know. It’s time I learn JavaScript, deeply.

I’ve been working on a new schedule that’s taking affect tomorrow. With this new schedule, I’ll be learning JavaScript five days a week. The other two days will be spent on WordPress/PHP development. I’m going to be working on freeCodeCamp’s Front End Development Certification. There are a couple plugins I want to work on that should help me dive deeper into WordPress. My coffee tracker plugin is one I’m quite excited about.

I’ve also decided to start writing about my progress again. I had started this in the past, but then removed the posts. This will give a good history as I progress and it’ll be fun to look back in the future.

The way I do WordPress support is changing as well. For quite a while now, I’ve been trying to split my time between WordPress.org and WordPress.com. As much as I enjoy this, I don’t have the time for both of these with everything else I’m working on. I have decided to focus on the .org forums starting tomorrow.

My revised goal is to spend one hour a day coding and 30 minutes on the WordPress.org forums. This will be on top of any time spent on moderator tasks. I’m still going to be busy, but at least I won’t feel like I’m spreading myself too thin to make progress on any one thing.

Let’s see how this works.

#100DaysOfCode: My Challenge to Code for 100 Days in a Row

In case you haven’t already heard of it, 100 Days of Code was started by Alexander Kallaway and is just like it sounds:  you commit an hour of coding every day for the next 100 days.  I’d recommend checking out his article explaining it in more detail.

I’ve dabbled in code for a while and can do some things as long as I have documentation to go by.   It’s been hard for me to find time to code much because this isn’t job-related; It’s simply a hobby I really enjoy.

Now I’m making time to begin my first round of #100DaysOfCode.  I say first round because I intend to focus primarily on WordPress and PHP.  The next time I do this I will be working on JavaScript and front-end development.

My goal for this challenge is to build a strong foundation of PHP and WordPress.

The Rules

    • I will code a minimum of one hour every day for the next 100 days.
    • I will tweet my progress every day using the #100DaysOfCode hashtag.
    • I will push my work to GitHub every day, where applicable.

Read More