Giter VIP home page Giter VIP logo

ap's Introduction

ap

THIS IS A WORK IN PROGRESS... USE AT YOUR OWN RISK!

> cat test/known-scenario-1.txt
activity act-01 5
activity act-02 3
activity act-03 5
activity act-04 3
activity act-05 3
activity act-06 3
activity act-07 3
activity act-08 5
activity act-09 3
activity act-10 5
activity act-11 5
activity act-12 5 act-03
activity act-13 10
person user-01 80
person user-02 20
person user-03 60
person user-04 80
person user-05 60
person user-06 20
person user-07 80
claim user-01 act-01
claim user-02 act-02
claim user-03 act-03
claim user-04 act-04
claim user-05 act-05
claim user-06 act-06

> cat test/known-scenario-1.txt | ap --today 2020-03-30
act-04 2020-03-30 2020-04-02 user-04
act-09 2020-03-30 2020-04-02 user-07
act-05 2020-03-30 2020-04-06 user-05
act-01 2020-03-30 2020-04-07 user-01
act-03 2020-03-30 2020-04-09 user-03
act-02 2020-03-30 2020-04-20 user-02
act-06 2020-03-30 2020-04-20 user-06
act-11 2020-04-02 2020-04-13 user-07
act-13 2020-04-02 2020-04-21 user-04
act-08 2020-04-06 2020-04-16 user-05
act-10 2020-04-07 2020-04-15 user-01
act-07 2020-04-09 2020-04-16 user-03
act-12 2020-04-13 2020-04-21 user-07

> cat test/known-scenario-1.txt | ap --today 2020-03-30 | ap-gantt
# This should pop Gnuplot open!

Input

Activities

activity act-01 10
activity act-02 5
activity act-03 5 act-01 act-02

Activity entries are prefixed with the 'activity' keyword, and they specify:

  • the activity name
  • the effort (in days) required to complete the activity
  • an optional list activities that the current one depends on

People

person user-01 90
person user-02 50

Person entries are prefixed with the 'person' keyword, and they specify:

  • the person name
  • their allocation to this project, with the idea being that the smaller their allocation, the longer it's going to take for them to complete a given activity

Claims

claim user-03 act-01

Claim entries are prefixed with the 'claim' keyword, and they specify:

  • the person who has claimed..
  • the activity that was calimed

Out of office

out-of-office user-01 2020-04-25
out-of-office user-02 2020-04-25 2020-12-25
out-of-office user-03 2020-04-25 2020-12-25..2020-12-31

Out of office entries are prefixed with the 'out-of-office' keyword, and they specify:

  • the person this OOO entry refers to
  • the date(s) (YYYY-MM-DD) the person won't be up for working
    • Single date entries: YYYY-MM-DD, e.g. 2022-07-04
    • Date ranges: YYYY-MM-DD..YYYY-MM-DD, e.g. 2022-07-04..2022-07-06

Affinity

affinity user-01 100 act-01
affinity user-02 50 act-01 act-03

Affinity entries are prefixed with the 'affinity' keyword, and they specify:

  • the person we are defining a affinity record for
  • how productive they are i.e. a real number in the range [0, 1]
  • the activity or list of activities this productivity coefficient applies to

TODO

  • Find a good heuristic
  • when people start off with multiple activities assigned, ap combines them together -- which means other activities depending on any of them, might end up being claimed later because the completion date was pushed too far ahead (i.e. when the two activities got completed)
  • Shared, and mutual resources
  • Docker support?!

ap's People

Contributors

iamfirecracker avatar

Stargazers

 avatar

Watchers

 avatar  avatar

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.