Saturday, February 13, 2010

How To Count Your Day

I have been making an attempt to record my day. I'm doing this for a number of reasons. I want to know how my moods change through the day, when I'm happy or not, when I'm feeling motivated, and when I'm being productive.

To facilitate this, I have a spreadsheet on Google Docs called "Daily Me" and I've built two sheets. One tracks daily and one tracks hourly. This is what I'm tracking.

Daily:
  • When I wake up
  • Weight
  • How many of my morning exercises did I do?
  • How many of the things I want to do every day did I do? This includes morning pages, sketching, picking up my guitar, reading, and writing.
  • When I go to sleep
Hourly:
  • Mood
  • What am I doing right now?
  • 1-10 scales on how happy, depressed, energetic, and motivated I feel at the moment
  • "Productive" which I mark yes or no. I consider being "productive" doing whatever it is I feel I should be doing right then. This is the thing I try to keep in the green and use everything else to improve.
You might think this could get disruptive. I don't have to do it hourly, so that is only a maximum. I use KAlarm, and your OS has or can have another app for reminders. Every hour it launches a Spreadsheet Form in a new window to let me enter things and get back to whatever I'm doing.

I use this for other daily things. It asks me every day if I've done my exercises, tells me when to check my e-mail (not so I remember to, but so I don't check it too often), and other things.

Overall, I find this is helpful. I like being kept honest, even if its just with myself. I pay more attention to if I'm doing what I should be doing at any given moment, but I don't have to put too much into it and get distracted from those very things. Later, I can look back and find patterns. Even without looking into it deeply, filling it out and thinking about what's going on and how its affecting my day to day helps me improve my understanding of myself and how to do more with every day of my life.

Monday, February 08, 2010

DeferArgs on GitHub

A time ago I wrote a library called DeferArgs and I used it when I was still in Twisted code every day. I no longer have that fun, but I was reminded of the code and decided to throw it onto GitHub for anyone who cares for it.


http://github.com/ironfroggy/DeferArgs

An example usage, where foo could take any deferreds and would be called when they all fire.

@deferargs
def foo():
    assert False
@catch(AssertionError)
def onAssert(error): 
    print "OOPS"     
@catch()             
def onOthers(error): 
    print "I WOULD BE REACHED FOR ANYTHING NOT CAUGHT ABOVE."
@cleanup                                                    
def _(r):                                                   
    print "The result was: ", r

 
I write here about programming, how to program better, things I think are neat and are related to programming. I might write other things at my personal website.

I am happily employed by the excellent Caktus Group, located in beautiful and friendly Carrboro, NC, where I work with Python, Django, and Javascript.