I work remotely and have recently taken on a bunch of responsibility with two non-profit orgs. And I've found my time getting crunched between everything. So, I've started detailed time tracking to make sure that I don't slip on work hours, especially since it's not 9-5.
I don't submit it to anyone, it's just for myself. And, it turned out that I wasn't slipping at all. But, the peace of mind of being able to prove it to myself was good. A nice side effect is seeing which projects or types of activities take up my time.
Other accountability things I've been doing lately is writing more comments, documentation, and focusing on writing code that is easy for others to jump into (well structured modules, one-click dev setup, automated deploys, etc). That is, even on projects for myself or where I'm likely to be the only person ever to touch it. It is good practice to get into and it does help a lot when you're coming back to something after 6 months.
I use Time Keeping Sucks (TKS), because it's a great little command line tool[0], Vim format, web UI[1] and more written by some very talented colleagues and lots of people (myself included) use it daily at work. It's built to interface with the time tracking system at work, but could probably easily be generalized to work with any similar API.
(You might find my Python stub[2] if you search for the name. It's really just a development setup based on other work, to maybe use the ideas from the original Perl implementation and hopefully involve a wider community.)
I set up separate accounts on my machine for personal, work, sideprojects and log in to those accounts when I am working or when I want to veg out and play minecraft. Couple this with an invasive tracker like rescuetime and I can have HN and reddit blocked on my work-related user accounts.
Followup question:
Can anyone comment on using the org-mode clock feature for something like this?
I keep running into mentions of the feature in the manual, but I've never seen anyone actually using it in the wild.
I use org-mode for time tracking. I like that I can see the project I am supposed to be working on at the bottom of the screen. Helps keep me on track.
There's even a Rust implementation that's being worked on, it's pretty nice. Still not as convenient as RescueTime though. Doesn't have automatic categorization for example.
I don't submit it to anyone, it's just for myself. And, it turned out that I wasn't slipping at all. But, the peace of mind of being able to prove it to myself was good. A nice side effect is seeing which projects or types of activities take up my time.
Other accountability things I've been doing lately is writing more comments, documentation, and focusing on writing code that is easy for others to jump into (well structured modules, one-click dev setup, automated deploys, etc). That is, even on projects for myself or where I'm likely to be the only person ever to touch it. It is good practice to get into and it does help a lot when you're coming back to something after 6 months.