Developer Retrospective

Logan RasmussenLogan Rasmussen
7 min read

I've had a lot of ideas lately, in fact, so many that I've been a little overwhelmed with what route I should take next for learning. I wanted to make a quick post about the things that I have been juggling because it all sounds like a lot of fun!

So Many Ideas

What should we spend our free programming time on? We only get a finite amount of it, so we shouldn't make the decision too lightly. But, in my opinion, we should definitely have fun.

I have had many software ideas over the last weeks, but I haven't yet started down the path for any of them... I am having a hard time deciding what I actually want to focus on, for learning and content to share. If I start down one path will it be the right one, will I get bored, or will it work out really well and everything will be amazing? The only way for me to decide what to do is to actually think through what options I have, so, here they are.

One thing I have to keep in mind is that I'll soon be changing jobs, so that weighs heavily into my decision.

Idea 1 - Card Collecting Software

Lately, I have been getting back into the hobby of collecting trading cards. Because I've been so excited about it, that's where my mind space has been. I've taken a trip down memory lane with Pokemon Cards, and I've been introduced into the current state of the hobby. While collecting cards there are many things you need to track, manage, and organize if you want to have a well kept collection.

Unfortunately, when figuring out the state of my old cards I spent quite a bit of time putting cards into a binder, taking them back out, and placing them back into the binder again... I've gone through a few different organizations of my binder because I didn't realize fully what cards were in each set. I'd love to have a good piece of software that would help me organize it right the first time.

The great thing is, these needs fit naturally with what software can do. Here are some of the ideas I've juggled in my head, but haven't seen done very well in any tracking system I've tried so far.

  • Advanced Sorting
    • Rarity (Rare, Uncommon, Common, etc)
    • Printing (holographic, reverse holo, normal)
    • Type (Fire, Water, Grass, etc)
    • Set (Base, Jungle, Fossil, etc)
  • Collection Tracking (mark as have when you physically have it)
  • Estimated Collection Value
  • Marking cards as "wanted" with a reason
  • Images
  • Marking your cards to be a certain condition (and condition explanations)

Idea 2 - 2D Game Development

The reason I actually got into programming was potentially getting into game development some day. Way back in the day playing StarCraft I built custom maps, and used their trigger system to create special events in the game. These gave me a taste of what if statements were and how programming worked in simple terms without realizing it was programming at the time.

I thought it was soo cool to imagine an effect of something happening based on a condition, and then to actually see it play out in the game. Now I have that same desire, but to create my own game entirely rather than a piece of one.

I have already purchased Game Maker Studio 2, followed a few tutorials, and gotten a taste of what it's like to make some 2D games in the software. And, it feels good! Who doesn't want to create their own game, that just sounds awesome, right?

The problem? There's a lot of work involved, but that also means I'll be able gain some very unique skills to games. Anyway, here's what I'd have to do for games.

  • Design Work
  • Art
  • Sounds
  • Music
  • Specific Programming Language (Game Maker Language)
  • Game organization and performance considerations
  • Other unknowns

I'd love to create a game, but there are a LOT of unknowns so I don't know if this should be my primary path or not. At least, maybe not when I'm hopping into a new job position soon.

Idea 3 - Job Skills

Of course, learning is always important for your current job position. If you're not actively learning new things in your position you may start to feel stale, and it can affect your performance in your assignments.

I will soon be changing jobs, which is exciting! It also means I'll be changing what I'm using from day to day. Currently I've been using front end React, css, and HTML pretty much exclusively. In my new role this will change, and I will be touching all sorts of different technology on the front and back end.

So... Maybe it's wise for me to wait a few weeks before diving in too deep with either of my hobby paths, and go down the professional path to improve my job performance right from the start. I love jumping in to new projects and new tech, and sometimes it takes some extra learning before you can really be effective.

I have a track record of being able to jump in and get going quickly, and this would be a great path to accelerate that even more, and would provide these benefits overall.

  • Fast Start to a new job
  • Practice with new tech
  • Validate my on the job skills
  • Greater Confidence
    • Confidence in myself
    • Confidence of my Employer in the decision to hire me
  • Provide value to the company

So Little Time

We all have lives, and every waking hour shouldn't be spent at the computer. I want to enjoy hobbies, family, friends, and solo time. The greatest challenge is balancing the time to get what you want out of it, and where to include skill improvement and hobbies like programming. Here are some pros and cons of where I should spend some of my free time.

Prioritize Hobby Software?

Pros

  • I may be able to enjoy my card collecting even more! As it's on my mind, this would be an immediate reward for me, the passion for it is already there.
  • I have multiple friends who might also benefit from it (real testers!)
  • If I create a game, I can share in the fun with family and friends
  • I may find strategies in these projects that are useful for my job, while having fun.
  • My brother is also interested in building games, this could be a way to bond with him AND to gain some new skills.
  • So much fun to be had!
  • There is a chance I could learn some hard skills to transfer to my job as well.

Cons

  • I might regret not spending more time learning targeted career and job specific skills to perform better in the new position. When jumping into a project for the first time I've found there are always strategies or new tech to learn and become familiar with.
  • While working I might find my mind wandering to my hobby projects instead if I dive in too deep.

Prioritize Professional Skills?

Pros

  • Better job performance
  • Less stress when learning the projects
  • Less post-job-day stress, leisure time will be more rewarding
  • A hard days work earns a good days leisure

Cons

  • Card collection management might be slower
  • I probably won't get a game created too soon.

Pro and Con Summary

I've included a sample of my thoughts above, so hopefully you get the idea. There's a lot to consider when plotting out your time. There are only a few moments in each day, if any, that can be spent toward personal projects. I've got to juggle a few younglings, a house, time to spend with my amazing wife, etc, so what should I spend my time on?

Which Idea - My Conclusion

There are books to read, tutorials to follow, and unlimited amounts of things that can be learned, but what brings the biggest win right now?

Luckily, I've got a few weeks before my new job starts, so in that time I will enjoy my hobbies. If I can manage it, I'll spend some time making some games, or creating a collection management program. Most of it depends on how involved I can get my brother in the process of making games.

Either way, I'll focus on the biggest win and reward for me at this time. Once my new position starts, I'll re-evaluate so that I'll be able to perform at my new job the best that I can, I'm really looking forward to it!

0
Subscribe to my newsletter

Read articles from Logan Rasmussen directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Logan Rasmussen
Logan Rasmussen