- What tools do you use daily in the course of your development, and why those tools in particular?
- Textmate. Q: How do you start an argument in a room of developers? Ask them “what texteditor is better and why?” I’ve always subscribed to the classic “if it isn’t broken don’t fix it” train of thought on this. Before I used Textmate, I couldn’t stand the editor I was using (possibly JEdit or Aptana or something else equally horrible…I was on a PC at the time). Changing over to a mac opened the world of Textmate up to me, and I’ve had no reason to really look for something better since then.
- iTunes & a good pair of headphones. Honestly, I just can’t imagine working anymore without these two items that they’ve become a part of my required tools. Whether in the office or out in public it can be way to easy to get distracted by things happening around me, especially when I’m trying to get to the bottom of something complicated.
- Stackoverflow.com. This is definitely more of a resource than a tool, but I still make use of it on a daily basis and it is often an invaluable tool in getting a task accomplished. One of the biggest things that I love about programming is the community. When I have a problem, I can usually count on two things: 1: somebody else has has the same problem and 2: There is a thoughtful discussion about approaches and solutions to this problem. Beyond that, its not a one way street as you can help out your fellow programmer with something you’ve worked through that he/she may be losing sleep over.
- Google Chrome. More specifically, the Google Chrome developer tools. Having been a Firebug person for so long, this was kind of a weird changeover initially. But, once I got the hang of what was happening, going back and using Firebug seems kind of old and busted now.
- How did you get into development/programming/engineering, and what keeps you in it?
I’d been “living with computers” since the 80’s when my parents got an Apple IIC. After that it just kind of seemed like it was a forgone conclusion that I would wind up working in a tech field. For a brief stint in college it seemed like the tech world and me may part ways; however, I found my way back in grad school while working on a Master’s of Information Science. One week before I graduated, I interviewed for and was offered my first full time, non freelance job working with Internet technology and the rest was history.
- Who is another programmer or developer you admire, and why?
Alan Turing. In college, I was a dual major in computer science and history and his name kept popping up in both arenas all 4 years. Whether it was first year CS101 and a term paper I wrote on “Turing Tests” or my third year history seminar on WWII with the work he did on “The Bombe” at Bletchey Park he was a present and fascinating figure. Granted he isn’t a developer or programmer in the sense of those terms that I work in today, but he is one of the first innovators and definitely a figure worthy of admiration for his brilliance and impact.
- How do you keep yourself up-to-date with the latest technologies and what new or upcoming tech are you excited about?
It is hard to answer this question because being in the tech field new developments seem to come at you from every which way. Probably the biggest ones I’ve looked at are meetings and conferences. Seems as though if you are in a city with a tech community, there will always be a designated get together to talk shop. Its great to attend conferences, but also just following them on any number mediums (twitter, blogs, etc. ) is great to learn about what new developments are popping up.
- What’s your favorite language of the moment? Why?
Working in a Ruby on Rails shop, it would be hard for me to answer this question with anything besides Ruby. But as to why it actually is my favorite presently, not so easy. Compared to other languages with which I’ve had experience, rails almost defies you to not like it. Writing apps it always come across as effortless and elegant because you are excited to work with it and proud of what you accomplish. Additionally, I’ve never come across a community that is so invested in advancing their interests that my job almost seems like a labor of love (with benefits).
- Do you have any advice for nascent developers?
Work! I remember first starting out one my ongoing complaints was that I couldn’t get a job because I didn’t have experience, and I couldn’t get experience because nobody would give me a job. But, I wish I had known then what I know now because working (albeit for free) is so easy to do in this industry. Find something you want to make (in my case it was a budget application to rein in my poor spending habits) and build it, and then share it on github or wherever. Do this with lots of things. Build yourself a website. Build your friend a website. Those are the best avenues to gain experience and some of the best things I’ve worked on since they’re for yourself and you can do/learn whatever you think would be cool.