The remote web developer

John Reeve | April 9th, 2009 | ,

Monday morning at our weekly breakfast meeting we were discussing what it would look like to do web development remotely for Pelago. We brainstormed a few ideas and came up with a pretty cool solution on how we would want to be setup if we had the opportunity to work offsite for a few days, months, or even years. This would be our plan of attack:

  1. Setup a laptop with a fresh install of Ubuntu Linux. (You could use Mac OSX as well, but then you have to shell out more cash) There are plenty of great IDEs you can install for doing the actual coding. Also, install the requisite development tools — PHP, MySQL, PostreSQL, Apache, Nginx, etc — and you have a fully portable dev environment, at least on the Linux side. See the next step for Windows and Mac.
  2. Virtualize. VirtualBox is a great Ubuntu app for virtualizing other environments. Install your Windows and Mac images and you are ready to virtualize any web browser on any OS for testing your work while you develop.
  3. Use versioning. We have a centralized subversion server that autoupdates our internal staging servers. Once you are finished cranking away on code and have it tested enough to submit, commit your code and the development servers at the office will do the rest.
  4. Centralize using web-based project management software. There has to be a great degree of communication between the remote worker and central command, primarily with the project manager. Using project management software that provides task/bug/issue tracking allows you to update the status of your assignments and notifies the project manager that your work is ready for testing.
  5. Use Skype and screen sharing for collaborative pair programming. There will be times when you just can’t figure out a development problem on your own, and your Instant Messenger isn’t the best medium to explain the situation. These are the times you need to get on the phone with a fellow developer and go through the code together. Many of our most difficult coding conundrums have been resolved within minutes by applying a second set of eyeballs.
  6. Find a quiet, remote place to work. We recommend somewhere tropical, the middle of the desert, or a nice mountainous locale. Afterall, the whole point of our brainstorming session was to find creative ways to get ourselves out of the office more often while still being able to get our work done.
  7. What about design?. Yeah, we do design too. But that problem is easily solved in one of two ways. You can install Photoshop on Ubuntu using Wine. Or install Photoshop on your virtualized copy of Windows or Mac. There is the Gimp as well. We just like doing code more than we like designing, so we mainly geeked out on tailoring Ubuntu to development meet our needs.

Intervals blog updates in your inbox!

Lear

8 Responses to “The remote web developer”

  1. Charles says:

    A good webcam is must.

  2. Charles says:

    You really need to get a good web cam, expect to be on the phone more, and utilize skype.

    Chuck

Leave a Reply

The Intervals Blog
A collection of useful tips, tales and opinions based on decades of collective experience designing and developing web sites and web-based applications.

What is Intervals?

Intervals is online time, task and project management software built by and for web designers, developers and creatives.
Learn more…

John Reeve
Author Profile
John Reeve

John is a co-founder, web designer and developer at Pelago. His blog posts are inspired by everyday encounters with designers, developers, creatives and small businesses in general. John is an avid reader and road cyclist.
» More about John
» Read posts by John

Jennifer Payne
Author Profile
Jennifer Payne

Jennifer is the Director of Quality and Efficiency at Pelago. Her blog posts are based largely on her experience working with teams to improve harmony and productivity. Jennifer is a cat person.
» More about Jennifer
» Read posts by Jennifer

Braden Jones
Author Profile
Braden Jones

Braden is a co-founder and strategist at Pelago. His blog posts draw from his worldwide business travels and forays into the retail apparel industry. Braden loves to surf and recently adopted a Doka named Moose.
» More about Braden
» Read posts by Braden

Michael Payne
Author Profile
Michael Payne

Michael is a co-founder and product architect at Pelago. His contributions stem from experiences managing the development process behind web sites and web-based applications such as Intervals. Michael drives a 1990 Volkswagen Carat with a rebuilt 2.4 liter engine from GoWesty.
» More about Michael
» Read posts by Michael

help.myintervals.com
Videos, tips & tricks