views:

151

answers:

8

A lot of time I have to code from home. Normally I just remote desktop to my computer at work and code. But it is remote desktop: slower, no dual monitor and ...

Is there a better way of doing this? Maybe a drive that follows you everywhere you go!

A: 

What’s the problem, license costs? If not, get a decent distributed versioning system and simply use your home computer. It’s not as dandy as using your computer as a remote client, but IMHO it’s much more practical.

zoul
+2  A: 

Work on a laptop and carry it with you

Ray
It should be noted that this doesn't fix the 2nd monitor problem (you aren't likely to pack your external desktop monitor along with your laptop), but it's a darn good solution otherwise. Generally, I find that working with just the laptop screen is fine for short periods of time.
Michael Kohne
Remember to encrypt the drive in case you leave it on the train.
Pete Kirkham
Theoretically, you can connect your home monitor to your laptop when it's at home. They make "monitor cables" for this purpose.
jrockway
+1  A: 

Ask your company if you can download the repository locally to your system instead of remoting. Worst case scenario they say no

Woot4Moo
+5  A: 

Quite a few of my collegues have the entire development environment in a Virtual PC installed on a small portable USB drive. When at the office they plug it in to the office computer. When having to work at home, they simply bring the USB drive and run it at their own personal PC.

Anders Abel
+1 nice idea.+15 char[]
Behrooz
+2  A: 

Why not use a distributed SCM such as Git? You can work remotely and check into your local (laptop) repository, and sync to the office repository as and when you're at the office.

Brian Agnew
Any SCM (this isn't VSS) should work remotely (albeit using a VPN to avoid exposure to everyone). You don't need a local repository for a few checkins.
Richard
well the question is how comfortable it will work remotely... we use svn and they don't give me VPN for my private notebook. i know it sucks for some operations while you aren't connected to the central server.. like can't view history logs and can't commit (have to locally copy the directory for each commit as workaround!)..
stmax
The point about a distributed SCM is that I have a repository *on my laptop* which I can check in/out of, determine revision histories etc. *without a network connection*. I don't need a network connection until I want to sync with another repository (the office one?).
Brian Agnew
@Richard - *Any SCM should work remotely*. I'm not entirely sure if I understand you correctly but you seem to be entirely ignoring the current shift in SCM's?! Distributed SCM's are the new boys in town.
Lieven
@Lieven If you have a company with a thousand ClearCase users, they aren't going to change to Hg just so one person can work at home.
Pete Kirkham
@Pete - the point that Lieven is making is that most people are misunderstanding what a distributed SCM actually *is*.
Brian Agnew
@Pete - to add to Brian's answer, they don't need to. That one person can use hg as much as he wants locally and/or distributed and push his changes to the central ClearCase repository when he feels like it to comply with company standards.
Lieven
@Lieven, @Brian: I know perfectly well what a DSCM is, but it is not the only option here. That is all I was saying. A DSCM could well be a hammer to crack a nut. (Disconnected use doesn't apply here: the OP talks of remoting in to their workstation in the office.)
Richard
ClearCase has a system of flows which work is created in, and a powerful system of labelling and of access control. So unless your company is using ClearCase as a very expensive CVS replacement, you aren't going to be able to just push changes - you need to check out to tell the other users that you're working on an area and lock it. So either you check out everything that you might need, or you are going back to CC to check stuff out, as so may as well just use a ClearCase dynamic view on your laptop.
Pete Kirkham
A: 

sometimes i just copy the source to work on it at home. we use subversion for version control.. it's not the most comfortable when you aren't connected to the server, but it works. you might want to try some distributed version control system like mercurial or git, which should be more comfortable while you aren't connected to the central server since they'll still allow you to view logs, create branches/merge while offline. note that for all three there exist (more or less stable) windows clients: google for tortoisesvn (for subversion), tortoisehg (for mercurial) and tortoisegit (for git).

stmax
A: 

I've set up SVN repository on my home server. It doesn't require much, getting any old pc which is able to run some linux server is not a problem I guess.

It's much easier and safer to use revision control software instead of copying files to USB drive and back, since it's easy to overwrite some changes that way. Revision control does all the synchronization and comparision between versions, allowing you to follow changes you've made etc. I've picked SVN for several reasons, mainly because of it's easy server-side configuration and an excellent Windows client - TortoiseSVN.

However if you have enough of RAM memory both on your home pc/notebook and at the workplace, you could consider creating Virtual Machine. That way, once configured workplace might be set up in just a few minutes almost anywhere (I'm using VirtualBox that way for over a year).

migajek
+1  A: 

I work from home a fair bit. At various times I've done most of what you have been advised to try:

  • I can check code out from the company repo (SVN) onto a USB stick and use that at home;
  • I have a company laptop which I can plug into the company VPN (security prevents doing this with my own PC, but then I use a Mac at home, Windows and Linux at work), and remote desktop to the development platform (which is remote from my office anyway);
  • I've recently started using a Dropbox, and have a working copy checked out into my Dropbox at work which is automatically synced to my Dropbox at home;
  • My development environment is a copy of Emacs, and the company provides compiler licences that I can install on my home computer, so no serious software issues.

With a good broadband connection any or all of these is very workable and quite productive. Like you I miss the multiple screens when I am at home, so I am thinking of buying a new one to get round that problem.

High Performance Mark