Coder Social home page Coder Social logo

ernestum / wage-labor-record Goto Github PK

View Code? Open in Web Editor NEW
3.0 1.0 0.0 65 KB

A tool to help you to keep track of what you did for whom and how much time you spent.

License: GNU General Public License v3.0

Python 100.00%
time-tracker time-tracker-app time-tracking time-tracking-app

wage-labor-record's Introduction

Wage Labor Record

Wage Labor Record is a tool to help you to keep track of what you did for whom and how much time you spent on it ... if you are into that kind of thing.

This one weird trick to live a comfortable life

I recently discovered this trick to live a comfortable life:

You help people with their problems, and they give you some token in return.

Here they call this the "service economy" and the tokens are called "money". I also found out that it is a lot easier when you:

  1. Talk to them before you do something for them and find an agreement on what you will do and what you will get in return. They call it a "contract".
  2. Write down what you did, how much time you spent on it and how many tokens you like to get in return. They call this writing an "invoice".

If you give those tokens to other people, they are vastly more likely to let your use food and shelter that they own1. Or they might be willing to do something for you in return.

This software tool helps you to record what tasks you did for whom and how much time you spent on it.

Why chose WLR?

There are lots of other time tracking software. I did not try all of them, but I made the following observations:

  • The simple ones often only run in the CLI. This means I cannot see at a glance if and what task I am recording right now. Those tools also won't be able to detect any idle time and remind me about it.
  • The GUI ones are mostly overtly complex and require way too many clicks. The friction to use them day-to-day is way too high.
  • The ones with a decent usability and GUI are proprietary solutions tied to some cloud infrastructure, and at some point they drop support for the Linux desktop client (looking at your Toggle Track ...)

So this time tracker tries to

  • provide a minimal GUI that does not get into my way
  • never needs an internet connection to work or any cloud infrastructure
  • be simple enough that I can afford to maintain it over the next years and adapt it to unforeseen needs in the future

Features

  • Detect idle time, remind me about it, let me decide what to do with it
  • Low friction: let me start tracking with a single click and decide later what I actually did
  • Human-Readable file format
  • UI
    • Explorable (cli is not enough)
    • Linux Desktop integration
    • Indicate if I am currently tracking time via tray icon
    • Centered around tray
  • Minimal dependencies (make it future-proof)
  • Minimal configuration needed/Sensible defaults

Non-Features

  • Internet connectivity
  • Using the electron framework to eat CPU, RAM and battery

Dependencies

  • xprintidle as a dependency to detect idle time.
  • GTK 3.0 for the GUI

Installation

I recommend installing via pipx:

pipx install wage-labor-record

Usage

wlr

Development Resources

Making a Release

python -m build
twine upload dist/*

Hint: use token as username and the token from pypi.org as password.

Alternatives to this and why they don't work for me

  • jupyter-timetracker - GUI too complex/too close to DB editing tools. No support for clients
  • tim CLI only, no idle time detection but uses hledger as a backend!
  • salary-timetracker CLI only, tracking bound to git repos, fixed hourly rate but hey it uses CSV files!
  • ttrac CLI only, no idle time detection, no support for clients or tasks but uses JSON files!
  • tickertock only with a StreamDeck, wants to use cloud service as backend but uses a hardware interface!
  • mttt CLI only, no idle time detection but uses plain text files!
  • tt-cli CLI only, no idle time detection, no support for clients
  • timetracker CLI only, no idle time detection, no support for clients
  • hamster comes pretty close but seems outdated/abandoned and a little bit too complex

Footnotes

  1. "Ownership" is a widely accepted social construct here. If you own something you are to decide who can use it and what to do with it. If necessary, people are convinced to play by those "ownership" by violence. Violence means harming somebodies mental and/or physical well-being in a way that they don't want to happen. However, most of the time people play by those rules since the think that "ownership" is a nice idea, and they don't want to ruin it for everybody. โ†ฉ

wage-labor-record's People

Contributors

ernestum avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

wage-labor-record's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.