How to leverage an artist’s daily routine to “warm up” and get their creative juices flowing for the day to kickstart your own daily coding.
Over the past year or so I’ve gotten more and more into art, particularly comic art and illustration. This has led me to follow some of my favorite artists on Instagram and Twitter and I started noticing an interesting trend. Most of these artists will take ideas for “warmup sketches” or just post ones they picked for themselves. These usually are quick and dirty sketches they can easily knock out, though sometimes more elaborate. They use these to get the creative juices flowing before diving into their work for the day. Sometimes they are sold at reasonable costs as an extra source of income but the main goal is to use these to get warmed up and generally get into the groove for the day.
This reminded me of the book “Steal Like An Artist” and well it’s a really good idea that I see value in so this year I am going to “steal” it for my own use. How does this practice relate to being a CFML programmer? Well we are creative and to some extent artists ourselves in crafting solutions. Pretty much everyone I follow in the CFML community is when I see their code compared to my own. So the premise is that simple, do something quick and easy, or hard for a learning opportunity, to start the day. I see three ways to pull this off: Code Wars, any other active coding challenge, and picking something in your own codebase to refactor.
So early 2020, back before the world imploded with Covid, the Modernize or Die podcast crew led a successful effort to get CFML up and running on CodeWars.com. I talked about it in this blog post “Trying out CFML on CodeWars.com” and Gavin Pickin talked about the effort to get listed and the Code Wars site itself in this post “Help us get CFML / ColdFusion added to CodeWars Website“. The Kata concept on this site is a perfect parallel to me to a “sketch”. They don’t take a lot of time, are sufficiently challenging, and even better they show you how other’s approached the same problem so you can learn something new along the way. Down the road if you ever exhaust the katas that are there, then maybe creating a new one could be the warm up for the day. Then you are helping yourself get going as well as leaving something for other CFML users out there and helping the community.
So for this one I was thinking of things like Hacktoberfest or Advent Of Code. I don’t know much about the latter and just heard about it on one of the December Modernize or Die podcasts. But the idea for each seems to line up pretty nicely with what would qualify as a warm up. From listening to the podcast though the Advent challenges seemed like some could become more involved but one can always pull the ripcord if it’s time to move on to paying work. Hacktoberfest is a good one because it is helping the community by contributing to and helping to improve CFML sites and projects. The goal is to find tasks out there that are already defined so one doesn’t have to spend time coming up with the idea and can just use the time as it is intended. Doing a quick Google search for “Coding Challenges” brings up lots of coding challenge sites out there to choose from with predefined tasks ready to go.
Technically Code Wars falls into this category as well since it is a made up of coding challenges. I listed it separately because I am already familiar with it and it has CFML specific challenges/katas.
Your Own Code
This is an easy one and probably what will be my go to “sketch” most of the time. This one has an added advantage of improving my own codebase and in the long run helping to have better applications. Each morning just pick a cfm page to refactor or a function in a CFC and do the same. If your code is like mine, you likely cringe at some things you open that were written back before you knew better, or maybe what you did last week when you were in a rush. I see this as separate from a new project or feature you are trying to do. That would be real work and what you are warming up to do. Save the dive into the deep end till after a short dip in the kiddie pool. The “sketch” should be something completely different than the day ahead in my mind. This should be for a kickstart and not something to be frustrated with and get burned out. The whole idea is something that is meant to be helpful. If you see something that would be a candidate for a “sketch” down the road make a note of it and circle back one morning.
What qualifies as a “sketch”: something simple, something that gets you into your groove, and a task that does not take too much time to complete. I am going to set aside roughly 30 mins a morning for my “sketch” each day. Will I stick to this idea? I hope so. In the end there’s no disadvantage and at worst I learn something new or I leave my code in a better place than when I last left it. I can’t say if it really does work but if all these artists are doing this pretty much daily and after a year of following them they have not stopped there must be value to the exercise.
And as an admission I realize this probably is not an original idea and people are likely doing it already. I just haven’t stumbled upon it written down anywhere so I figured why not put pen to paper….figuratively that is.