What do I want to learn in 2012?

Posted: - Modified:

Update: Detailed outline / updates available on Dropbox

Want to help me with anything on this list? Please feel free to contact me at sacha@sachachua.com . What can I help you learn? I’m sure I’ll learn tons along the way, too!



  • Self-tracking / personal informatics: Learn with Quantified Awesome
    • [ ] Android development
      • Goal: custom Android app for tracking and reporting, so that I can keep an eye on my goals and collect/analyze more data
      • Estimate: 80 hours
      • DONE Set up my development environment again
        CLOSED: 2011-12-16 Fri 18:54
        • State “DONE” from “TODO” 2011-12-16 Fri 18:54
      • DONE Get Quantified Awesome to show up on my Android
        CLOSED: 2011-12-16 Fri 18:54
        • State “DONE” from “TODO” 2011-12-16 Fri 18:54
      • DONE Accept a file from Tap Log Records
        CLOSED: 2011-12-16 Fri 20:34
        • State “DONE” from “TODO” 2011-12-16 Fri 20:34
        <action android:name="android.intent.action.SEND" />
        <category android:name="android.intent.category.DEFAULT" />
        <data android:mimeType="*/*" />
      • TODO Display a value from the file from Tap Log Records
      • TODO Parse the CSV and display a number
      • TODO Display the total work time
      • TODO Display the total work time this week
      • TODO Display yesterday’s statistics for sleep and discretionary time
      • TODO Synchronize with server
      • TODO Build simple text input
      • TODO Synchronize text input with server
      • TODO Build customizable categories, one level
      • TODO Build CSV export
      • TODO Build second level of categories
      • TODO Build arbitrary tree structure
      • TODO Add other forms of input – images?
    • [ ] Goal tracking
      • Goal: Visual way to keep track of how much I work each week, how much I sleep, how much time I spend on focused learning, etc.; also, customizable questions to help me change my behaviour
      • Estimate: 16 hours
    • [ ] Visualization
      • [ ] Time
        • Goal: Overall view of how I spent my time in a month or in a year, so that I can shift my time patterns
        • Estimate: 16 hours
      • [ ] Goals
        • Goal: See goal tracking
        • Estimate: 16 hours
      • [ ] Use
        • Goal: Identify things worth spending money or time on based on past use and satisfaction
        • Estimate: 16 hours
    • [ ] Behavioural change
      • Goal: Get better and better at life by structuring each month as an experiment
      • Estimate: 48 hours
    • [ ] Applying automated testing to life
      • Goal: Stop more things from falling through the cracks by developing automated tests (ex: checking balances, etc.)
      • Estimate: 16 hours
    • [ ] Accommodating other people’s patterns
      • Goal: Build systems that other people can use so that I can help them and so that I can learn from how they live
      • Estimate: 80 hours
  • Tools: Learn by doing
    • [ ] Take advantage of improvements in Emacs and Org-mode
      • Goal: Make the most of the tools I use
      • Estimate: 16 hours
    • [ ] Learn how to make the most of Org-mode outlines – maybe use this for knowledge representation?
      • Goal: Get to know Emacs Org Mode thoroughly so that I can use it to organize and publish what I know
      • Estimate: 8 hours
    • [ ] Other tools that can take advantage of extra CPU and memory
      • Goal: Find apps or packages that can help me work even more effectively
      • Estimate: 26 hours
    • [ ] Org and synchronization between multiple computers
      • Goal: Get this sorted out so that I don’t accidentally lose any information
      • Estimate: 4 hours
    • [ ] [#C] Web service integration
      • Goal: Interact with Quantified Awesome from Emacs so that I can meld Org and QA
      • Estimate: 16 hours
  • Writing: Learn by doing and reading
    • [ ] Writing about life and things I’m learning
      • Goal: Write notes and pointers to memories so that I can remember and share stories
      • Current: 0.9 hours a day
      • Estimate: 80 hours, part of discretionary buffer time as well
    • [ ] Writing family stories
      • Goal: Help capture and share some of our family stories
      • Estimate: 40 hours
    • [ ] Organizing stories
      • Goal: Build a system for collaboratively working on and organizing stories
      • Estimate: 40 hours
    • [ ] Organizing notes
      • Goal: Make it easy for me (and possibly other people) to browse my notes by topic or explore a knowledge map
      • Estimate: 40 hours
    • [ ] Putting together an e-book that will be useful to at least one other person
      • Goal: Learn how to package information so that I can scale up
      • Estimate: 80 hours
  • Visual: Learn by doing and by being inspired by other people
    Lowered priority on this to make space for other interests; should see if I can find someone else to do the IBM comic series
    • [ ] Drawing with more colours
    • [ ] Illustrating life, tips
    • [ ] Taking, organizing, and sharing more pictures
  • Delegation / elimination: Learn by doing
    Lowered priority on this to make space for other interests; may still look into delegating, but am okay with taking longer to accomplish my plans (maturation is handy!)
    • [ ] Delegating some chores?
    • [ ] Simplifying stuff and routines


Not estimated because this is part of social time

  • [ ] Planning and decision-making: Learn by making decisions
  • [ ] Cultivating relationships with family: Learn by reaching out
  • [ ] Cultivating connections online: Learn by reaching out
  • [ ] Making time for friends: Learn by reaching out
  • [ ] Local tech events: Learn by finding out about events and attending them
  • Shared interests
    • [ ] Once-a-month cooking: Learn by doing
    • [ ] Dealing with community-supported agriculture: Learn by doing
    • [ ] Tutoring: Learn by doing and reading


  • Rails: Learn with Quantified Awesome
    • Goal: I want to learn more about Rails because I want to get better at building systems to support the way I want to live, and because I enjoy using it.
    • [ ] Rails 3.1: I want to take advantage of new features while building Quantified Awesome
      • Goal: Use Quantified Awesome to answer my questions about how I spend my time, what I use, and how I want to grow
      • Estimate: 80 hours
    • [ ] Mongo and other data stores
      • Goal: Work with data that does not easily fit SQL data models
      • Estimate: 20 hours
    • [ ] APIs: I want to integrate my web apps with lots of other tools, and allow for integration
      • Goal: Add a native Android app and an Emacs interface; possibly integrate Twitter, my blog, and other websites for more data / questions
      • Estimate: 80 hours
    • [ ] Performance tuning: I want to make sure my systems can handle the requests I want it to.
      Not estimated because this is part of work
    • [ ] Security testing: I want to be more confident in the applications I build.
      Not estimated because this is part of work
  • Testing
    • [ ] 100% test coverage: Learn with Quantified Awesome, work projects
      • Goal: Get used to building more slowly and reliably
      • Estimate: 40 hours; rest included in development
    • [ ] Selenium and other front-end tests: Learn with work projects
      Not estimated because this is part of work
    • [ ] Behaviour-driven development: Learn with work projects, Quantified Awesome
      • Goal: Learn how to express behaviour clearly and concisely so that I can specify my own apps
      • Estimate: 8 hours; rest included in development
  • Launching
    • [ ] Testing ideas: Learn with Quantified Awesome
      • Goal: Test ideas and see which ones might be useful to people; build networks
      • Estimate: 40 hours
    • [ ] Launching with minimal or no defects: Learn with work projects
      Not estimated because this is part of work
    • [ ] Launching personal projects: Learn with Quantified Awesome
      • Goal: Make life better for at least one other person
      • Estimate: 80 hours
  • Drupal
    Not estimated because this is part of work
    • [ ] Installation profiles and code packaging: Learn with work projects
    • [ ] Testing: Learn with work projects
    • [ ] Drupal 7: Learn with work projects
  • Front-end and web design
    • [ ] More JQuery + AJAX for richer interactions?: Learn with work projects
      Not estimated because this is part of work
    • [ ] CSS and frameworks: Learn with work projects
      Not estimated because this is part of work
    • [ ] Basic information architecture: Learn with Quantified Awesome
      • Goal: Figure out a mobile and web interface that fits the way I (and maybe other people) live
      • Estimate: 40 hours
  • Projects
    Not estimated because this is part of work
    • [ ] Agile development: I want to get better at planning and executing agile projects
    • [ ] Documentation: I want to take better notes so that I can support projects more effectively


Not estimated because this is part of work

  • [ ] Determining needs: Learn with work engagements
  • [ ] Social analytics: Learn with work engagements

Time budget

From Dec 14:

Nudged by @catehstn‘s recommendation of my blog to @Tending2Entropy as an example of goal planning in personal life, I updated my learning plan with the things I’m planning to learn next year.

It was easy to come up with a quick outline. There are so many interesting things I want to learn. The tough part, however, was thinking about what I might actually get to do.

What does my cognitive surplus look like? I wanted to get a sense of how much discretionary time I actually had on a regular basis. I have about 20 weeks of data since I resumed time-tracking near the end of July. So that my numbers wouldn’t be thrown off by the vacation we took, I focused on the last eight weeks (graph: 2011-10-16 to 2011-12-11).

Over the eight-week period, I got an average of 3.5 hours of discretionary time per weekday and 7 hours of discretionary time per weekend day. I can simplify that to an average of 4.5 hours per day, which comes out to 1642 hours for 2012 (not including vacations, which include more discretionary time).

Around 40% of discretionary time was used for social activities. Let’s say that another 30% is a buffer for breaks and other things that come up, leaving 30% for focused learning. That gives me a time budget of around 500 hours. I want to do more than 1,000. Hmm.

Prioritization is important. I can focus on the things I want the most, then see how the rest of the year shakes out. Plans will change anyway, and estimates are flexible. My first few priorities for personal learning:

  • Android development, so that I can save time syncing and get more of the data I want
  • Goal tracking (handy for keeping the rest of my time in line)
  • Behavioural change (trying small experiments)

Another way to deal with the gap is to shift more time. Over those eight weeks, tidying took about 0.7 hours / day, and cooking took about that much time too. Let’s say half of future tidying and all of future cooking is outsourceable at $20/hour. That’s an additional 384 hours for a trade-off of $7,680 after tax, which is a large chunk of money. I’d rather save the money and let it compound for later use, especially if I time chores so that they take advantage of low energy. Besides, cooking and other chores are partly social time too.

I can shift time in other ways. For example, I can use commuting time to learn more about Emacs, Org, and Rails, so that will help too. I can also use walking time to record life stories if I can figure out a workflow for dealing with audio or short notes.

Good to know what the size of the box is, and how much I want to pack into it! Let’s see how it all works out…

You can comment with Disqus or you can e-mail me at sacha@sachachua.com.