This seems a bit overkill, like trying to prevent yourself from wasting time on a site by blocking it in your hosts file. I worry it would make "mental context switches" too expensive, which might help to discourage you from wasting time on HN, but also get in the way of your work. I imagine that if I tried to separate my activities into separate accounts, I would get tired of switching users and end up with a de facto main account very quickly.
Have you looked into a virtual desktop solution yet? I use virtual desktops for very similar reasons (tuck all the real time wasters away in one desktop, put music playing controls and such in another, and use every other one for a different task), and I find it does a very good job of keeping me focused on the task at hand without getting in my way when it's time to do something else. Each one of my desktops is just two keypresses away, but there's no indication that anything is even running in any other desktop but a tiny square in the bottom right corner of my screen.