How to be a better [insert title here]...

Languages - Technology

  • Learn BOO and write my own DSL for something
  • Learn Ruby or Python
  • Learn F# or Haskell
  • Use Specter or nSpec on at least one project

Training - Reading - Listening - Watching

  • Finish the Jeremy Miller DIY CAB Series
  • Finish the 31 days of Resharper
    • Use Keyboard Jedi for a week.
  • Read
    • Pragmatic Programmer (Again)
    • Managing successful projects with Prince
    • Iterating Infusion
    • Foundations of F#
    • Build your own .NET language and compiler
    • xUnit Test Patterns
    • Practical Software Factories
    • Foundations of Object Oriented Programming using .NET 2.0 Patterns
  • Listen to the entire DotNetRocks back catalogue and write at least one email to Carl & Richard
  • Watch the entire DNRTv back catalogue
  • Watch the entire GrokTalk back catalogue

Code Readings


  • Begin Open Source Project: The Interface Repository Project
    • Develop spec
    • Develop website
    • Outline standard interfaces for design patterns
  • Improve OTS.Enterprise libraries
    • Reach 100% code coverage on unit tests for the OTS.Enterprise libraries
    • Refactor IoC properties into a similar format as WPF using callbacks and hashtables for performance.
  • Finish my SocialSync facebook application (or at least port it from PHP to .NET)
  • Begin work on the Social Business Card App for facebook using .NET & Silverlight.
  • Finish my Windows Workflow Foundation powered bot
  • Finish my CruiseControl -> nantcontrib task -> style code page (now online @
  • Finish and Open Source my extensible System Monitoring Service.
  • Write the Authenticated RSS Proxy to Trac (integrated into the OTS.Enterprise Libraries & a single rss.ashx file)
    • implement feed checker security -> ie: google reader with my id can access proxy but no-one else.
  • Write the little application that toggles VPNs for WM5 based on connection type (GPRS vs WIFI)
  • Write a WPF raytracer (thanks Eric Sink for the idea).
  • Learn how to perform colour-correction on RAW photos.