Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

comment on

( [id://3333]=superdoc: print w/replies, xml ) Need Help??

There is a plenty of software tools of that kind to be discovered online. Either free or for charge, implemented as a webservice or installed locally, command line or graphical, large enterprise-scale project management or simple todo listers for individual use. Lots and lots of stuff like that.

A couple of years ago I very considered using a tool called taskwarrior. I tested it. Liked the multidimensional concept of urgency. I could not help hesitating. Pondering on it, I finally found out what bugs me in regard to urgency calculation that is relevant for the ranking of my to-dos.

I would have liked to configure an urgency criterion "drift between task progress and passage of time". So urgency is determined, with the respective configured weight, by how much I have already proceeded with the task in relation to the elapsed and the available time.

As I cannot code C++, just have a little command of that language, I started to make a feature request for the taskwarrior devs. Soon then I was stuck because I realized it would not be easily feasible. Two major problems needed to be addressed so such a feature would make sense actually:

  1. Calculation of the position on the scale between starting date and due-date goes like this: my $pos = (time() - $start_time) / ($due_time - $start_time).
    A problem showed up when I elaborated the idea in my mind: The due-date is like every other date for a system, nothing more than the number of a second counted since epoch, i.e. Jan 1st, 1970 01:00 on Unix and unixoid systems.
    Computer systems do not sleep. Well, they might be turned off at night. But when turned on again, they re-initialize their time with the battery-based hardware clock, so for software, shutdown is as intangible as death for living creatures.
    But for us humans it is a crucial difference in life quality whether we get regular and sound sleep or not. With naive time calculation as described, chances are we spend the night with thoughts drawing circles in the mind like ... My tool expects me to work day and night, like now for example, but I sleep or at least try to, for sure I will fail my deadlines, oh. Oh wait, I remember my tool said I achieved 39% although only 22% where expected, so all is fine ... but tomorrow it will expect me to have achieved 71% or so, oh that glorious a tool, computers are in fact so inhumane ... I should stop using the tool that steals my sleep and ranks my tasks in such an irrealistic way.
  2. My progress should not simply be an input labelled "Estimate progress (%)" because that would be prone to airy manipulation, but in fact be calculated from which steps and maybe substeps of a task I have already checked and which not yet. In order to shape progress more realistically, we need to consider optional indications like "step A be about twice the expenditure of time for step B".

In the end, I dropped my idea of writing feature request. There is no use to get frustrated by a reply like "uh, tl;dr, could you make a pull request, thx", this at least would be my reaction when faced with a load of pages for a feature request. Rather, I started my own open-source project in Perl. There are great CPAN modules like Moose, DBIx::Class and Mojolicious, so I was sure it is feasible once I get through the elaboration of the time problem. Computer-aided task and time management aligned to individual biorhythm and job conditions, this was and still is my objective. And I got through it. The time model related code is even fairly covered by tests and it works practically, reduced my work-related distress in my "life" time, I have been testing it in my every-day work for more than a year (service administration, software development with Perl).

Because my mid-of-scale, yet another but the better ;) project is written in Perl, I advertise it here in the PerlMonks community. Learn more, and if you are interested, be welcome to test the online demo installation at my Humane Tasking Initiative site. Or read on, clone or fork my FlowgencyTM code repository at GitHub.

Contributions, questions and comments are welcome. Please understand that the tool must remain far from supporting staff performance monitoring. Technically, it can easily be abused like that, like a kitchen knife can be abused for murder. This is why I envision the software project be embedded in an initiative, and why local usage with full own data souvereignty is focussed in development.

To those who find that concept of time overhead I recommend TaskWarrior instead. Between that project and mine can be found a remarkable number of similarities, no wonder because TaskWarrior is my primary source of inspiration. I guess admittingly that the development of Taskwarrior is more stable than the development of FlowgencyTM (by the way, this is a working title subject to change in the future), because I am the initiator and main developer, the only one as yet, whose full-time job deserves priority.


In reply to Humane Tasking Initiative / FlowgencyTM by flowdy

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":



  • Are you posting in the right place? Check out Where do I post X? to know for sure.
  • Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
    <code> <a> <b> <big> <blockquote> <br /> <dd> <dl> <dt> <em> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr /> <i> <li> <nbsp> <ol> <p> <small> <strike> <strong> <sub> <sup> <table> <td> <th> <tr> <tt> <u> <ul>
  • Snippets of code should be wrapped in <code> tags not <pre> tags. In fact, <pre> tags should generally be avoided. If they must be used, extreme care should be taken to ensure that their contents do not have long lines (<70 chars), in order to prevent horizontal scrolling (and possible janitor intervention).
  • Want more info? How to link or How to display code and escape characters are good places to start.
Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others cooling their heels in the Monastery: (3)
As of 2024-03-29 04:35 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found