Hiatus 2 (Day 207)

When I started this blog, there weren’t many competing priorities in my life. I have since found some really interesting things to dive deep into and with strong reasons why. I’ll share them with you right now.

Communication – As I have worked at my company (and through the lessons I have learned writing this blog), I have developed a philosophy about the best way to run a company. Your vision and plan should first be meticulously thought-out and grounded in reason. Then, they should be championed by management and shared on a regular basis. That way, everyone can repeatedly buy-in and work with focus.

I haven’t seen that done excellently yet. I would often find myself wondering why we are doing something or what the plan is next. And it is up to the decision maker to make that clear. You can’t blame the child if they didn’t understand how the storyteller narrated the book. I want to be a part of that shift. I want to explore my theories in aligning a company. That sounds like a grand and worthwhile goal.

Creation – I want to try my hand in entrepreneurship. I want to explore my ability to find pain points in the market and build solutions that fill them and every aspect of that process in between. My friend and I have a project that has been lagging for a while. I want to get back to it.

These goals truly make me come alive and I can’t wait to explore where they will take me. These goals and strong reasons why make it easy for me to decide to drop this blog. Unfortunately, my blog doesn’t have as strong of a reason to exist and I found myself split with too many commitments.

Perhaps someday I will return, but it will be after I have truly given these goals the ol’ college try. This is goodbye. I am so happy for all the lessons I have learned.

(Note: I don’t want to become a boring fart that is all work and no play. I am not foregoing all fun activities for these two goals. I’ve been doing a lot of other fun things like Toastmasters, boxing, dance, and writing. So to complete this post, that’s why I’m dropping this because that’s a lot of balls in the air 🙂 )

Hiatus 2 (Day 207)

Day 205

Time: 21:31


As I mentioned earlier, I wanted to display playable demos for the committed state of each day in my blog. So you can play the game I had at day 3, or day 60, or whatever.

Today, I brainstormed how I want that to work. I call it Commitopia.

I’ll continue tomorrow.

Day 205

Day 203

Time: 43:05


Found a simplification.

The code originally stored boxcar locations on two independent axes (x and y). This is too complicated and was causing bugs as I introduced acceleration and speed.

I was able to greatly simplify when I realized the train track is essentially a number line wrapped into a circle. I can store a car’s location with a single number on this line and then later “unwrap” the location based on where along the track it is.

This made for very clean code that leaves no room for bugs. The location is a single value, not some arbitrary pixel location.

Next: I want to look into making the “chug” sound match frequency with the train’s speed.

Day 203

Day 202

Time: 35:01

Added an accelerate/decelerate effect to the train. It accelerates once every 10 frames. I’ve heard about counting frames from speedrunners and fighting game players, but now I truly know what that means 🙂

I’ll sync sound and make acceleration more incremental tomorrow.

Sidenote: Had some blog presentation improvement ideas today.

  1. Visual representation of my projects on a calendar.
  2. A counter of what day I am on.
Day 202

Day 199

Time: 37:45


Did two things today:

  1. Figured out how to do a looping sound for the chugga-chugga train sound
  2. Cleaned up the movement logic as asked by the tutorial

Looping sound

Nice logic to loop sounds in Pico. Simple start/stop, although I had to do some digging to understand.

Logic improvements

The basis of my improvement was understanding that the train’s direction changes only 4 times. Once at each corner.

The original code was written to check where the train should go at any given point on the track.

I updated the code to check if it is on a corner. If so, update the direction to travel. This greatly simplified the code from checking infinite cases to just checking 4.

Tomorrow: dedicate the majority of my time to automating commits and making these demos playable.

Day 199