Week in Review: January 1-7, 2018

Week in Review Header

As I expected, the year is off to a very slow start with my goals. I didn't get make much progress last week, but the next couple weeks should be much better.  Our Navy Reserve junior sailors' evaluations were due this past weekend and those took quite a bit of time.  We also had temperatures around 0, leading to our pipes freezing.  We got them thawed just in time for our furnace to stop working.  Luckily we have a wood stove or else we wouldn't have been able to stay in the house. As of this morning, the living room was about 70 degrees with the rest of the house warming up to around 50.  We had someone look at it on Friday but they couldn't get the part until this week.  They should be out to get things running this afternoon.  The part didn't work so they are going to try something else either tonight or in the morning.

Edit 1/11:  The part for our furnace didn't work, but they figured out the gas valve was bad.  They got it fixed Wednesday morning.  So now we have thawed pipes and heat… Then the floor was wet by our toilet.  That turned into a big job that required ripping out some of the floor.  I won't be doing much learning/development this week and will share the next Week in Review on January 21. 


JavaScript 30

I only got through 3.5 days of JavaScript 30 but I was happy to get started.  It's been fun and I learned some things.  The CSS + JS Clock from day 2 was a neat little project, but it left one thing out.  When it got to the top of the hour, the hand would spin around counter-clockwise to start over instead of going from 59 seconds to 0 to 1 like you would expect.  I played around and found the following code worked well for fixing this.  If it's the top of the hour, it will remove the transition so the hand doesn't try to go counter-clockwise back to the beginning (1 second).  I repeated the process for minutes and seconds.

if (seconds >= 59) {
    secondHand.style.transform = `rotate(${secondsDegrees-1}deg)`;
    secondHand.style.transition = "none";
} else {
    secondHand.style.transform = `rotate(${secondsDegrees}deg)`;

See the Pen JavaScript 30 – JS and CSS Clock by Geoffrey Shilling (@geoffreyshilling) on CodePen.

Podcast Picks of the Week

I listen to way too many podcasts.  This isn't nearly all the podcasts I listen to, but any time I take notes on something, I'm going to share it here.

Goals for This Week

I told you it was a pretty quiet week (in terms of development).  This week I hope to get on track with my schedule and goals and have much more to report on that.

I know fitness isn't directly related to code, but I think you have to have a good balance in life.  Developers spend a lot of time in front of a screen.  For this reason, I may start adding my fitness goals and workouts to the week in review.  I'll also be working on a plugin at some point directly related to that.

That's all for now. Aloha until next week!

Week in Review: November 20-26, 2017

Week in Review Header

I hope you had a Happy Thanksgiving for those of you that celebrate it! Thanksgiving is always a busy time of year. I work for a publishing company and last week some volunteers went in for a few hours late at night to get the Black Friday/Cyber Monday fliers in the newspaper; it was a three pound paper. Now it's back to regular IT work during the day.



I'm semi-happy to say I didn't learn much in these first two videos and they were more of a refresher. Nothing against the courses by any means – they are great – but I knew enough prior to taking them I probably could have skipped them. I wanted to complete the entire Become a PHP Developer learning path on Lynda.com and these are part of it.

[Lynda.com] Finished HTML Essential Training by James Williamson.

[Lynda.com] Finished CSS Essential Training 1 by Christina Truong

[Lynda.com] Started JavaScript Essential Training by Morten Rand-Hendriksen


  • [Atom] atom-live-server Package
    This package performs a live reload of your web browser based on the changes you make/save in Atom. I've wanted to look at something like this for a while, but haven't had a chance. I learned about this in Morten Rand-Hendriksen's Lynda.com course, JavaScript Essential Training.


[Plugin] Hawaiian Howdy

Purpose: Hawaiian Howdy is a simple plugin that changes the "Howdy" text in the admin area to a Hawaiian greeting based on time of day. It can also wish you a Happy Aloha Friday. Both of these are options that can be turned on or off independently.
Progress: Although I didn't quite finish the plugin this week, I came very close. The code itself is done as of yesterday. The last thing I'm working on is the readme file, screenshots, and updating the plugin's page on my site. It took a while for this simple plugin, but I learned a lot. I will probably take a look at this again in the future and do a rebuild using classes/object-oriented programming.
GitHub Repo: https://github.com/geoffreyshilling/hawaiian-howdy

Podcast Pick(s) of the Week

I’m going to start sharing my top pick(s) next week. Between Thanksgiving and everything leading up to it, I missed a lot of podcasts this week.

Goals for This Week

  • [Event] WordCamp US: It's hard to believe it's WordCamp US time again! Even though this year was really busy and I wasn't able to make it to any other WordCamps, I do everything I can to not miss this one. The last two years it's been in Philadelphia, PA. It's in Nashville, TN this year and next year and my wife is even coming with me. I plan to write a post about the experience.
  • [Plugin] Hawaiian Howdy: I'll finish up the readme file, screenshots, and update the plugin's page.
  • [PHP] IZ Ipsum: The code on IZ Ipsum needs cleaned up. Although this is a non-WordPress project, I do want to rewrite the code so it conforms to the WordPress PHP standards.
  • [Website] GeoffreyShilling.com: I plan to make the site restructuring go live on January 1, 2018. I need to continue adding content and writing the text for the different pages. And I still need to take a picture of my mason jar full of mini-figs 🙂
  • [Learning] Lynda.com: This week I should finish up JavaScript Essential Training as part of the Become a PHP Developer learning path. Learning PHP is the next course in the path.

That's all for now. Aloha until next week!
Maybe I'll see you at WordCamp US!

Note: This post was written using Gutenberg.

New Feature: Weekly Progress Report (for November 13-19)

Weekly Progress Report

I’ve been narrowing my focus over the past few months and will continue to do so. The biggest change I’ve made is that I’ve decided to stop working on the #100DaysOfCode challenge just past the halfway point, at day 54.

I started making changes to have the rules fit me and how I was going to do it, and it was really getting pretty far from the initial challenge. And it's not like I need inspiration to keep going – if I have time to work on things, I do.

I was learning a lot, but felt obligated to code each day to get the challenge done. This was coming at the expense of learning why I was doing the things I was or how it actually worked.  That's not what I want.  Although I still have a certain amount of time scheduled each day for projects/development, I’m no longer worried about coding. Some days I’ve been able to code the entire time and others I’ve not written a single line while I learn how something new works. I'll be writing a separate post about why I think #100DaysOfCode is a great idea, but it’s just not for me.

I had written a weekly post in the past as an experiment, but I’m going to try that again with a little different format. Every week I’m going to write about the following items:

  • Projects: I have a number of projects I want to work on, including changing the “Howdy” text to a Hawaiian greeting, something to track my workouts (mostly running) for our Navy Reserve fitness test, a custom review post type for this site, a plugin to track my coffee consumption, and a restructuring of this site to launch January 1st (if not before). Every week I’ll share my progress and link to the code on GitHub, or other applicable location.
  • Learning: I’m a lifelong learner and I won’t ever have enough time to learn everything I would like. With that being said, I generally do some each week, if not every day. I have a premium subscription to Lynda.com and am always working on something there. I’ve also done some work on freeCodeCamp’s Front End Development Certification.
  • Gotchas: Sometimes you hit a wall when you’re working on something. Any time I run into issues I’ll share what happened and how I got around it.
  • Podcast Pick(s) of the Week: I listen to a lot of podcasts on a wide range of topics including WordPress, general development, organization, and productivity. I kept track of how many I listened to a couple weeks ago and it was almost 80. Although I feel many of them are beneficial, I’ll only be sharing my top picks each week.
  • Article Pick(s) of the Week: As with podcasts, I read a lot of articles – mostly about WordPress. I’m going to find the ones I think are interesting.
  • Goals for the next week: This is pretty straightforward; this is what I want to accomplish the following week.


I've done a lot of learning the past few months.  It's tough because I want to learn so many things.  The biggest thing I've learned recently is to slow down.  I was coding just to code as I worked through #100DaysOfCode even if I wasn't fully understanding what I was doing.  From here on out I'm setting out a learning path that is just as important as the number of lines of code I write.  For now, I'm going to include what Lynda.com courses I'm taking, but I may remove that in the future and just have some key takeaways for the week.


[Learning: Lynda.com] Finished WordPress: Custom Post Types and Taxonomies

[Learning: Lynda.com] Working On:  JavaScript for Web Designers


  • Atom Shortcut
    CTRL+/ comments a block of code
  • I came across Automattic's Git Workflow and I really like their branch naming scheme.  This is the scheme I will be using going forward.
    add/{something} — When you are adding a completely new feature update/{something} — When you are iterating on an existing feature fix/{something} — When you are fixing something broken in a feature try/{something} — When you are trying out an idea and want feedback


[Plugin] Hawaiian Howdy

Purpose:  Hawaiian Howdy is a simple plugin that changes the "Howdy" text in the admin area to a Hawaiian greeting based on time of day.  It can also wish you a Happy Aloha Friday.  Both of these are options that can be turned on or off independently.
Progress:  I have to finish up the plugin internationalization, change the default information in the readme file, and make sure the rest of the WordPress coding standards are followed.  After that, Hawaiian Howdy should be done.  I already use it on my site and I love the extra touch of Hawai'i it adds.
GitHub Repo:  https://github.com/geoffreyshilling/hawaiian-howdy

[Website] GeoffreyShilling.com

Purpose:  This is an obvious one – it's my website!  I'm going to share weekly updates, reviews, plugins/themes I write, code snippets, and information that I think would help others on the same path as me.  I won't be doing a complete redesign right now, but I am changing how things are laid out.  The changes are planned to go live on January 1st, 2018. 
Progress:  I have a good portion of the work done.  The reviews are going to have their own custom post type and I am working on building that.  The biggest thing I have left is to write the actual content for some of the pages.  I also have to decide if I want to add in things beyond code, such as recipes and fitness tracking.  It would make it a lot easier for me to maintain one site, but that also dilutes the focus of the site.  We'll see.

Podcast Pick(s) of the Week

I’m going to start sharing my top pick(s) next week.

Goals for This Week

  • [Plugin] Hawaiian Howdy:   I should have no problem finishing the Hawaiian Howdy rebuild this week.
  • [PHP] IZ Ipsum:  The code on IZ Ipsum needs cleaned up.  Although this is a non-WordPress project, I also want to rewrite the code so it conforms to the WordPress PHP standards.
  • [Plugin] PRT Tracker:  If I get done with the other projects, I would like to get back into my PRT Tracker.  This is what I'm going to use for tracking my workouts (running, curl-ups, and push-ups) to improve my score on the Navy Reserve fitness test we have every six months.
  • [Learning] Lynda.com:  This week I'll finish up JavaScript for Web Designers and then I'm going to work on the Become a PHP Developer learning path.  I've already taken a couple courses, but will probably take them again as a refresher.

That's all for now.  Aloha until next week!

Note:  This post was written using Gutenberg.

Week in Review: June 19-25, 2017

It’s been a little while since I’ve posted, but I intend to start sharing a weekly update from now on.  This will be a great way for me to track my progress.  Here’s what I’ve been working on:



I’ve been spending quite a bit of time on the WordPress.com forums for some time now.  As much as I enjoy it, that means I haven’t been able to spend nearly as much time on the WordPress.org forums.  I miss them.

I’ve decided decided to cut back on the time I spend on WordPress.com get more back into the WordPress.org forums.


100 Days of Code

It’s hard to believe I’m already two weeks into #100DaysOfCode.  I’m very pleased with my progress.  I’ve been learning a lot about PHP and WordPress plugins.

Coffee Cache  [WordPress Plugin]
This was my big project for the week and I absolutely loved working on it.  Coffee Cache is a plugin to track the amount of coffee I drink and give reports based on day, week, month, brand of coffee, roast, etc.  I have created a working back-end that features:

  • Custom post type (coffee)
  • Custom taxonomies (brand, roast, location)
  • Generates a default title and filler text.  Example:  Coffee Logged at 2017-06-25 18:17
  • Removed the standard text editor
  • Added a custom meta box that allows me to set number of cups of coffee, cups of water, brand, roast, location, container tracking, and notes

IZ Ipsum  [PHP]
A Hawaiian version of the lorem ipsum generator used as filler text that can be used in initial design and mock ups.  It generates filler text using information about Israel “IZ” Kamakawiwo’ole from Wikipedia.

Popular Posts  [WordPress Plugin]
This is a plugin I built while following along with WordPress Developer Tips: Creating a Popular Posts Plugin on Lynda.com.


What are you working on this week?  Share it in the comments below!  Aloha until next week!