Thanks for sharing this! I've been struggling with time tracking, I use a phone app but it doesn't really fit my habits anymore, especially now that I'm doing work on desktop and not mobile. This looks like exactly what I'm looking for!
Timewarrior uses a custom data format, but I don’t think it’s meant to be read or manipulated by hand. You technically can, but you’d need to spell out full UTC timestamps, for example.
This is why Hackers/Freelancers are so hard to please. I made ZimTik for almost all of the reasons this guy mentions. I just wanted something as simple as a spreadsheet that automatically takes care of as much as possible (invoices, taxes, expenses, etc). But we don't expose everything as txt files. But that's something I'll have to consider I guess :)
I agree with the author that it's hard to generalize use-cases, and make it easy to use. It looks like a really nice solution for solo tracking.
I freelanced a few years and now work in a small consulting/hosting co-op. We have to manage time for dozens of active projects. When it's time to invoice clients, I often end up doing small tweaks on my time-tracker. It used to take me 30 minutes to generate/send an invoice. When I had 2 clients, quarterly invoicing, that was fine. These days I generate around 20 invoices per quarter, 5-10 minutes per onvoice. It includes emailing the client and including a time sheet.
Besides reinventing the wheel (well, partially, because it uses our CRM product), I find it really useful to support Gitlab and Matternost webhooks. I can do "/spend 1h" on the client's issue, and it adds the time in the right project. Similarly I can do "/punch 10:00+1h acme/support [comment]" on mattermost, and it will do the same.
It's overkill for most, but I think good time tracking and invoicing are similar to having a good dev setup. You'll save time and avoid frustration down the road. Freelancer and consulting shops often need to track all those small 15 mins calls and emails, which add up, and sometimes a client will ask where that time went, so it's important to have good reports.
> I think good time tracking and invoicing are similar to having a good dev setup.
I agree and found that to be especially true with freelancing, since the work time is the effectively basis for the invoice.
One hint for those curious: klog isn’t capable of generating reports (as in a HTML or PDF). But there is the `klog json` subcommand that enables people to create their own, much like in the spirit of what was recently discussed here: https://news.ycombinator.com/item?id=29435786
12 comments
[ 3.1 ms ] story [ 36.7 ms ] threadhttps://timewarrior.net/
It’s a great tool in general, though.
https://github.com/projecthamster
I freelanced a few years and now work in a small consulting/hosting co-op. We have to manage time for dozens of active projects. When it's time to invoice clients, I often end up doing small tweaks on my time-tracker. It used to take me 30 minutes to generate/send an invoice. When I had 2 clients, quarterly invoicing, that was fine. These days I generate around 20 invoices per quarter, 5-10 minutes per onvoice. It includes emailing the client and including a time sheet.
Besides reinventing the wheel (well, partially, because it uses our CRM product), I find it really useful to support Gitlab and Matternost webhooks. I can do "/spend 1h" on the client's issue, and it adds the time in the right project. Similarly I can do "/punch 10:00+1h acme/support [comment]" on mattermost, and it will do the same.
It's overkill for most, but I think good time tracking and invoicing are similar to having a good dev setup. You'll save time and avoid frustration down the road. Freelancer and consulting shops often need to track all those small 15 mins calls and emails, which add up, and sometimes a client will ask where that time went, so it's important to have good reports.
I agree and found that to be especially true with freelancing, since the work time is the effectively basis for the invoice.
One hint for those curious: klog isn’t capable of generating reports (as in a HTML or PDF). But there is the `klog json` subcommand that enables people to create their own, much like in the spirit of what was recently discussed here: https://news.ycombinator.com/item?id=29435786