- What It's Like to Work for 10gen
- Review of "MongoDB Applied Design Patterns" by Rick Copeland
- Book Review: "Building Node Applications with MongoDB and Backbone"
Thanks for talking to us! What have you been working on lately?
No! Photography is the farthest from coding I can get. Programmers are my favorite people, but we're lamentably homogenous. I use photography to meet people different from me: homeless people, veterans, boxers in a basement gym. There's a common motivation in coding and photographing: in both cases I'm trying to maximize my generosity, my compassion, and my craftsmanship. But my experience of the two is totally opposed.
Are there any particular developer tools or resources you couldn't live without?I use Tower for most of my Git operations. It lets me easily stage and unstage chunks and individual lines of code, which has revolutionized my daily work. You think you can do this from the command line but you're wrong: it's too onerous. Tower makes it natural.
You're probably wrong about visual debugging in an IDE, too. You think it won't save you time but it will. In my opinion the majority of coders are wasting large portions of their lives because they don't use a visual debugger. This is especially true of the best programmers. My favorite Python IDE is PyCharm, but any visual debugger helps.
Do you have any favorite open source projects you've contributed to recently?I've contributed some packages called Motor and Toro, to be used with the Python async framework Tornado. Last month I added a queue implementation to Guido van Rossum's framework, Tulip; working with Guido was a thrill. But lately I itch to branch out from Python, so I'm submitting tiny patches to MongoDB and brushing up on my C++. I'm reading "C++ In A Nutshell" front to back. My girlfriend makes fun of me:
"What's happening in your book now?"
"If a class template participates in function overloading but the template does not need to be instantiated to resolve the overload, the class template may or may not be instantiated.""The plot thickens."
Do you follow any blogs or Twitter feeds that you would recommend to developers?Mainly the Planet Python RSS feed, and I like the Coder Weekly, Python Weekly, and PyCoder's Weekly emails.
Did you have a coding first love -- a particular program, gadget, game, or language that set you on the path to life as a developer?I've loved programming like crazy ever since I was introduced to Logo and BASIC. As a kid I wrote macros that drew pretty text patterns in MS Word 4 for DOS. MS Word came with a manual in a big binder that I took to bed with me so I could memorize the commands. I didn't know enough to go find a better programming environment, but it didn't matter.
As a pro, there have been patches where I didn't feel that thrill at coding, but it's back now. I try to follow the bliss when picking a project or a language to work with.
Anything else you'd like to mention?
If I may plug: I hear 10gen's online MongoDB classes are really good. People should consider the MongoDB for Developers class that's taught in Python and started April 1:
Curator's note: There's also a course for Java devs starting May 13.