/ motivation

Monthly development targets

Today I'd like to talk about something I've been testing out that I found to be pretty rewarding.

Setting a monthly target

Backstory

We've all been through that phase of learning how to build a habit, maybe even used Fabulous at one point or another. And one important thing I learned from that phase was repetition is essential.

So I tried adapting this in technology as well, especially with TDD (test driven development) as I was having so much trouble adapting TDD in my development workflow.

Methodology

  1. I start my month by deciding on what my focus would be for the upcoming month. (usually by going through my Trello board of stuff to learn and improve) [1]
  2. I print the focus for the month with big bold letters and hang them in front of me at work. (ex: print a big TDD as a visual cue and hang it on the office walls)
  3. I start slow, by scratching the surface first just to break my fear. (ex: fix the next bug in a TDD fashion)
  4. I put a mark down on my paper each day I follow-through on my focus.
  5. I criticize myself if I break my habit and redo what I can while following the habit. (ex: rewrite code written first, and start do that following TDD)
  6. Repeat.

I noticed that, for me, once I followed these steps I actually got to do and learn a lot of stuff way faster than I usually do.

Conclusion

I've been following this method for 6 months now:

  • I've started learning Scala
  • I've started learning Kotlin
  • I've started my first fully OSS application, Wally, in Kotlin
  • I've started my own blog again, after a couple of years of doing nothing
  • I've gotten used to writing proper TDD with Kotlin on Android

These steps are not only limited to technology, they are pretty universal if you want to build a habit of anything. (As long as you have a motive for that habit)


  1. I changed to deciding in the same month because of how technology landscape changes quite fast, something that might be of utter importance now can be overcome by something else in a month time. ↩︎