Becoming
Because I’ve been working to develop myself as a professional software engineer, I recently read Designing Learning by by Andy Hunt and Dave Thomas, the authors of The Pragmatic Programmer. It inspired me to go a little further and write down a specific plan for the things I want to learn and how I’ll learn them. Then I noticed that the meme has been making its way around the blogosphere. Ok, now I feel like a copycat. That’s out of the loop. Ah well. I’ll be documenting my plan and how well I follow it here on this blog. I’ll also be using the blog to record things I learn and my thoughts about them.
Just for background, here’s a bit about my current state as a developer. While, I don’t consider myself a great developer, I do want to improve more than most of those I know. At work I code in C++ and do some powershell scripting.
After brainstorming, I’ve decided that the areas where I would like to focus my learning are:
- .NET framework and C#
- TDD and unit testing
- Software classics - CS theory and software engineering especially
- MicroISV and software entrepreneurship
- Automating everything
- Other programming languages, such as Erlang
- Regular reading of journals and magazines, such as Dr. Dobbs
I will be using the following proven techniques to learn:
- Reading (includes watching presentations)
- Writing
- Projects
- Experiments
- Discussion with others
So I’ve chosen 5 specific things to do that include a mix of the things I want to learn and the techniques for learning.
- Project: Write unit tests for EGX, begin TDD, avoid Mocks
- Read one article, book chapter, etc per day (at work or on commute)
- Write about what I’ve read about on blog, even if it’s just a link and a note
- Experiment: Spend a day thinking about every activity I do, and how it could be automated
- Discussion: After reading an article or two, talk to David about starting a MicroISV
And to make sure it happens, I’ll do the following in the next few weeks:
- Do an hour of EGX development on each driving day of my vacation
- List chapter, article, etc. to read on Joe’s Goals each morning
- Joe’s Goals checkbox for writing about reading
- Spend tomorrow considering how I could automate everything I do
- Find some MicroISV articles to read on vacation, forward to David