My current (and first) job as a junior developer is ending and I need to look for a new one. I've received a fairly appealing offer in town, but for a variety of reasons I expect I might relocate soon. This new job will provide me with training in new technologies which would make me more marketable.

While my concern ultimately has to be for myself, I'd like to deal as ethically as possible with my employers, as well as burn as few bridges as possible. 

What I'd like to know is - how long should one reasonably stick around at a new job? How much of a black mark is a short employment span going to be for future employers?