Most developers rarely have to travel for work. While traveling can be fun, my experience with work trips is that they are usually pretty tough. Not only do you need to deal with being out of your normal environment, but you need to focus on the reason for your trip and keep up with what is happening back at the office. Because a developer usually does not go on the road simply for the sake of getting to chit-chat with clients, and usually still needs to be available for critical work, it is not as simple as "bring a laptop and something to read on the plane." Here are some tricks I learned that keep a developer happy while on the road.
The general rule of thumb for travel is "smaller and lighter is better." Unfortunately, developers tend to need powerful machines with lots of screen space. There are two really good reasons to drag a giant laptop around instead of a lighter, smaller machine. First, if it is the machine you've been issued (and a lot of developers do get machines like this, since they work from home regularly), then it makes sense to not get a second one. The other good reason is if you are going to be doing a ton of development while offsite. I have a pretty old, unimpressive laptop, but it is reliable, somewhat light, and gets the job done. If I traveled more, I would look into something lighter, bigger, and more powerful (my laptop is not that good). My secret is that I do as much as I can through remote desktop sessions to my powerful desktop machine at the office—that lets me travel light with full bore power on hand.
The accessories (mouse and keyboard, specifically, though Webcam and microphone are important too) are even more important to me than the machine. I really dislike the trackpads on PCs; in fact, the only trackpad I've ever liked is the Apple Magic trackpad. It is a must to have a mouse with me. I have a wireless mouse that is almost full-sized, and it is perfect for me. If you anticipate needing to do a lot of coding, find a way to bring a "real" keyboard with you unless you really love your laptop keyboard. I also find a Bluetooth headset to be indispensable, especially when you're trying to communicate in airports.
The most important software items for me on a business trip are:
- VPN access to the office (tested before the trip starts)
- Email client (configured and tested before the trip starts)
- Visual Studio
- OutSystems Agile Platform
- Version control client
- Microsoft Office
- Remote desktop clients
- 100% patches and up to date antivirus
From there, I can use remote desktop to access my full toolset as needed. If you cannot use a remote desktop tool, you will naturally need to make sure that your laptop has your full-fledged work environment. Make sure to fully test it!
Make sure that you pack the appropriate clothes for the site you are visiting. Many IT departments have relaxed dress codes that are not in line with the people with whom you will be dealing. As a home worker, that is certainly true for me. I like to pack a tie that goes well with most shirts and put it in my laptop bag just in case it turns out that I need a tie. I make sure to put on a fully professional appearance, including shaving (much to my chagrin).
My Kindle is a must have for the plane ride and for bedtime reading. I usually get to bed much earlier while on the road (not having to take care of kids lets me get wrapped up much earlier), so it's great to catch up on reading. I also like to have a paper book for the parts of the flight when electronics are not allowed. On my most recent trip, I took my iPad, and I got to play video games for more than a few minutes at a time.
Finally, I find it helpful to have hardcopies of all plane and hotel reservations, directions, rental car details, etc.—you just can't count on your phone always working (I found myself in an airport a few weeks ago without a reliable signal, for example). I also like to bring as much ID as I can, cash (you never know if you can find an ATM or have a chance to stop at it), and extra clothes just in case.
J.JaKeep your engineering skills up to date by signing up for TechRepublic's free Software Engineer newsletter, delivered each Tuesday.
Justin James is an OutSystems MVP, architect, and developer with expertise in SaaS applications and enterprise applications.