As I embark on developing a new app, I’m looking at what I can do to improve my process.
First, while I appreciated learning ruby, I think for scripting I’m going to go back to Python. Ruby has some neat things about it for sure, but dealing with gems and dependencies is killing me. I haven’t used Python in a number of years, and with Python 3 out I’d like to go back and give it a shake. I’m sure it will have its own unique headaches and problems. I don’t use scripting languages all that often, but there are needed from time to time. So at least this time around, unless I have reason to choose a particular language over another, if I just need to hack out some script, I’m going to look at using Python for my solutions in the foreseeable future.
Second, I’m looking at doing more test-driven development (TDD). While TDD is nothing new, it is the new hotness. I hate to admit that much of my history is either waterfall-based or “cowboy coding”, but the past few years I’ve worked to change this. I’ve been wanting to adopt TDD in my workflow but one circumstance or other has prevented it. But on this new project, I’m making TDD a must. One thing that I’m curious about is the new Xcode 5 “bots” stuff. Apple’s really working to integrate such things into their toolchain, so I really should work to take advantage where I can. I just got the server updated to Mavericks (finally trust it enough to upgrade critical infrastructure), so I can start to work with using them.
I have been programming since I was a kid, and even after doing this professionally for about 20 years well… old dogs gotta keep learning new tricks. Never stop learning.