Sunday, August 4, 2013

Weekend coding

This weekend was a typical one for me (at least for the last few years).  I spent the majority of the time with my family, hung out with some friends on one night, and did some household chores.

During the weekend, I managed to spend about 1.5 hours working on my latest project (this google app engine).  Given it was only a small amount of time, I made some decent progress. 

In my day job, my objective is to build reliable, maintainable, error-free performant code.   
At home, my objective is to build things that are interesting and fun, while learning something along the way.  Given the difference in weekend coding from real-job coding, here are some pointers on how to make progress on a hobby project successful.
  • Keep a list of work items that you may want to work on next. This list should be varied like, "updating the database schema to hold a user's dataset" or "update the UI to align all the buttons on the page".  I never know what mood I will be in when I return to a project. If I feel like making UI updates, working on back end tests or whatever, there should always be something ready to work on.
  • Make quantum updates.  This means take small steps that a make a difference.  If you try to accomplish a big task within a small amount of time, you may not finish anything tangible, which is disheartening.  
  • Code first, fix errors later.  This is probably the one that is the biggest departure from my normal habits.  For weekend coding, it's most important to get something working, so that you can give yourself a job-well-done pat on the back.  If you spend too much time harping on every edge case, you again might run out of time. 

No comments:

Post a Comment