I haven’t written anything in a while and for the last several weeks I’ve told myself that “this is the week I would finally post a new blog”. Finally, this is the week. Recently something clicked for me and I realized I want to invest time into my coding practice.
“Coding practice” – what’s that? The way I see it a doctor has a medical practice, and as a developer I have a coding practice. To me, coding is more art than science. I leave my coding style behind when I write code, much like an artist’s brush strokes are traceable to them. (I realize I’m mixing metaphors between doctors and artists, and that’s fine by me. Hey I never said I made sense.) Like any skill, I have to practice it if I want to improve.
Now how do I make sure I get enough deliberate practice to improve my skills? I don’t have a complete answer to this, yet. I started tracking my daily work to help keep myself determined. Actually, I started this last year when I joined the 100 Days of Code challenge. I had a 36 day streak of daily coding before I stopped. At the end, I was churning out spaghetti code because I wasn’t designing anything before I wrote code. That didn’t help me.
Rather than jump back to mindless coding, I decided to create my own challenge – the Improvement Challenge. It’s simple, write down a goal you want to achieve and track your progress against that goal every day. I use a GitHub repo to track my personal improvement, WBD-Improvements. Today is day 9 of my tracking and I track my work across several projects including my coding projects. I expect that I’ll come up with more rules and maybe a better name as time goes on but for now I have enough to get started.
What goal are you working towards? Would tracking daily progress help keep you focused? Try it out and let me know how it works for you.