One of the things that drives me crazy about this time of year, is the never-ending set of lists for what happened in the last year, or resolutions for the new year. Absolutely hate them. So why am I writing one now, good question, I have no idea. But if you hate lists and have stopped reading, oh well. Anyway, here’s my lists of things to get done in 2012.
1. Set Up a GitHub Account – Really?!?! It is the tail end of 2011 and I don’t have a GitHub account. More and more it seems to matter less and less what is on your resume. Show me what you’ve done. Show me you can collaborate and play nice with others.
2. Learn Ruby – I don’t mean dabble in Ruby. I don’t mean write “Hello World” in Ruby. I don’t mean write C# style code with Ruby syntax. I’ve done that and it hasn’t mattered much. Learn to write Ruby style code in Ruby. Why? Because maybe it will make me a stronger developer across the board by introducing me to different ways to write code and solve problems. I also think the Ruby community as a whole are strong proponents of software craftsmenship. Or at least the ones I run into are, and that can only be a good thing.
3. Write More Code – The last few years I have spent a lot of energy working with Agile practices, and especially trying to help the teams I am on be more productive and write better, well-tested code through practices like pairing and TDD. I am very proud of the end results, but a side effect of that has been that I write less code on a day to day basis. That may require being creative and looking for new opportunities to write code outside of my day job. But I really miss the challenges of solving technical problems on a regular basis.
4. Read More Code – Participating in the Global CodeRetreat was a great opportunity to work with a lot of developers, all with different experiences and skill levels. Being an experienced developer is great, but there is so much to be learned from seeing how other people solve problems. Instead of just downloading some open source tool that makes my life easier, peek under the covers, run the tests, I don’t know…maybe even contribute to the project. At the very least get some new ideas.
5. Get Out of My Comfort Zone – Over the years I have developed a set of skills and practices that work well for me and that I have been successful with. I wouldn’t say it is easy, but it is a little safe. I have experience with problem domains I work in, I am comfortable with the languages I use, and I have developed a set of practices that are well ingrained in me. That’s all well and good, but there is a potential for a lot of growth to be found outside your comfort zone.
6. Buy a Mac – Windows and Microsoft have been good to me, and I have used Windows for work for the past 20 years or so. I will probably still do my day job work on a Windows machine, but in the spirit of learning new languages and getting out of my comfort zone, maybe it is time to see how life is from the other side. I could do all these things on a Windows box, but it’s time for a little change. Plus I can hang out with the cool kids at developer events.
So I am seeing a theme here for 2012. Hopefully I can make it all happen.
Have a safe and happy new year!