Re: [O] Testers / Feedback wanted: Gantt charts via org-gantt.el

2015-11-09 Thread Karl Voit
* Bernhard Schmitz  wrote:
>
> Hi Karl, hi Eric,
>
> I know it has been a while.

I was off-mailinglist for a couple of months. Sorry.

> Karl:
>
>> Oh, I was too lazy to write a working example.
>> 
>> ,[ working example ]
>> | ** DONE My pretty task
>> | CLOSED: [2015-04-30 Thu 07:50] SCHEDULED: <2015-04-30 Thu>
>> | :PROPERTIES:
>> | :CREATED:  [2015-04-17 Fri 15:36]
>> | :ID:   2015-04-17-Dach-zu
>> | :TRIGGER:  foo1(NEXT) bar1(WAITING)
>> | :BLOCKER:  previousXY prevZ
>> | :END:
>> `
>> 
>> So when this task got marked as DONE, the headings with the ID
>> propertes "previousXY" and "prevZ" must not have been in an open
>> state. Further more, the headings with ID "foo1" got the new states
>> NEXT and "bar1" WAITING accordingly.
>
> Your example clarified the effects of org-depend on the actual org
> file, but I'm not sure how this should translate to the gantt
> chart.  The :BLOCKER: property says that when this gets marked as
> done, the blockers must not be open. 

I'm using :BLOCKER: such:

** Throw away old stuff
SCHEDULED: [...]
:PROPERTIES:
:ID: throw-away
:END:

** Paint room
SCHEDULED: [...]
:PROPERTIES:
:BLOCKER: throw-away
:END:

This way, I don't see "Paint room" on my agenda as long as I did not
finish throwing away the old stuff.

So IMHO the BLOCKER line marks the earliest time of beginning of
"Paint room".

> So actually, the :BLOCKER:
> property has no effect on either the start time, nor on the end
> time of a headline. It only clarifies the earliest possible end
> time - which cannot be expressed in a gantt chart.  

I don't know GANTT charts that well. I thought that with GANTT, the
"Paint room" just gets "connected" to the "end" of the "Throw
away"-bar. Additionally, if the "Throw away" bar is moved, the
"Paint room" is moved accordingly.

> Similarly, the :TRIGGER: property does not define a start or an
> end time of the triggered property either. The only case in which
> it does is if it triggers a (DONE), which would mean that an
> unrelated task suddenly becomes done simply by another task being
> done, and I don't think that happens all too often.

True. I added it for being complete about the features of org-depent
which I am using.

> I now know that I can implement whatever you suggest with
> relatively little effort, but first I need to know what actually
> should happen.

I hope that cleared things a bit. 

Sorry again for being away for so long.

-- 
mail|git|SVN|photos|postings|SMS|phonecalls|RSS|CSV|XML to Org-mode:
   > get Memacs from https://github.com/novoid/Memacs <

https://github.com/novoid/extract_pdf_annotations_to_orgmode + more on github




Re: [O] Testers / Feedback wanted: Gantt charts via org-gantt.el

2015-08-04 Thread Bastien Guerry
Hi Bernhard,

this is really nice!  Would you like to have this library
added to the contrib/ directory of org-mode?

Thanks for your work on this,

-- 
 Bastien



Re: [O] Testers / Feedback wanted: Gantt charts via org-gantt.el

2015-06-25 Thread Eric S Fraga
On Saturday, 20 Jun 2015 at 12:46, Bernhard Schmitz wrote:
 Hi Karl, hi Eric,

 I know it has been a while. I think every suggestion has been
 implemented by now, except for linking independent headlines.
 I wanted to ask for your input again, as I'm still not sure how to
 handle this, and both of your suggestions seemed to fall into the same
 category for me.

 * Eric S Fraga e.fr...@ucl.ac.uk wrote:

 The only comments I have at the moment is that it is missing support for
 milestones and all of my GANTT charts have such and that I would like to
 be able to link tasks across headlines (i.e. groups).  Can I suggest a
:milestone: tag or MILESTONE property for the former and a LINKED-TO or
 similar for the latter?

 Should this link only be a graphical link, or should the start time of
 the second headline be determined by the end time of the first (as it
 is done with ordered headlines)? Or can what you have in mind be
 expressed by org-depend (see below)?

Assuming you are referring to the second of my suggestions (linking
across headlines).  If so, I am not sure about org-depend as I have
never used it.  Does it allow linking across headlines or only within a
sub-tree?  In any case, it would be nice if the start time would be
dependent on the end time of the from link, but only if a start time
were not specified explicitly?

thanks,
eric

-- 
: Eric S Fraga (0xFFFCF67D), Emacs 25.0.50.1, Org release_8.3beta-1231-ga0a883



Re: [O] Testers / Feedback wanted: Gantt charts via org-gantt.el

2015-06-20 Thread Bernhard Schmitz

Hi Karl, hi Eric,

I know it has been a while. I think every suggestion has been implemented by 
now, except for linking independent headlines.
I wanted to ask for your input again, as I'm still not sure how to handle this, 
and both of your suggestions seemed to fall into the same category for me.

* Eric S Fraga e.fr...@ucl.ac.uk wrote:

 The only comments I have at the moment is that it is missing support for
 milestones and all of my GANTT charts have such and that I would like to
 be able to link tasks across headlines (i.e. groups).  Can I suggest a
:milestone: tag or MILESTONE property for the former and a LINKED-TO or
 similar for the latter?

Should this link only be a graphical link, or should the start time of the 
second headline be determined by the end time of the first (as it is done with 
ordered headlines)? Or can what you have in mind be expressed by org-depend 
(see below)?

Karl:

 Oh, I was too lazy to write a working example.
 
 ,[ working example ]
 | ** DONE My pretty task
 | CLOSED: [2015-04-30 Thu 07:50] SCHEDULED: 2015-04-30 Thu
 | :PROPERTIES:
 | :CREATED:  [2015-04-17 Fri 15:36]
 | :ID:   2015-04-17-Dach-zu
 | :TRIGGER:  foo1(NEXT) bar1(WAITING)
 | :BLOCKER:  previousXY prevZ
 | :END:
 `
 
 So when this task got marked as DONE, the headings with the ID
 propertes previousXY and prevZ must not have been in an open
 state. Further more, the headings with ID foo1 got the new states
 NEXT and bar1 WAITING accordingly.

Your example clarified the effects of org-depend on the actual org file, but 
I'm not sure how this should translate to the gantt chart.
The :BLOCKER: property says that when this gets marked as done, the blockers 
must not be open. So actually, the :BLOCKER: property has no effect on either 
the start time, nor on the end time of a headline. It only clarifies the 
earliest possible end time - which cannot be expressed in a gantt chart.
Similarly, the :TRIGGER: property does not define a start or an end time of the 
triggered property either. The only case in which it does is if it triggers a 
(DONE), which would mean that an unrelated task suddenly becomes done simply by 
another task being done, and I don't think that happens all too often.

I now know that I can implement whatever you suggest with relatively little 
effort, but first I need to know what actually should happen.

Regards,
Bernhard






Re: [O] Testers / Feedback wanted: Gantt charts via org-gantt.el

2015-06-05 Thread Bernhard Schmitz
OK, small update:

- Milestones are implemented. All headlines with tags that are in 
:milestone-tag (org-gantt-default-milestone-tag, resp.; :milestone: by default) 
are marked as Milestones.

- tag highlighting is working correctly. The alists :tags-bar-style and 
:tags-group-style (tag . style) set the styles, :tag-style-effect sets 
whether this style is applied only to the headline with that style, or to all 
its subheadlines ('subheadlines). (All options are available as 
org-gantt-default... as well).

- tag inclusion/exclusion is working correctly. If :use-tags is non-nil, only 
headlines with at least one of the given tags (and its subheadlines) will be 
used. If :ignore-tags is non-nil, headlines with one of the given tags (and its 
subheadlines) will be ignored.

- I have added an option :tikz-options . If this is non-nill, the entire chart 
will be placed inside a tikzpicture environment with the given parameters. E.g. 
scaling is possible with :tikz-options scale=0.5, every 
node/.style={scale=0.5}. This seems to work fine, so the lowlevel-scale option 
has been removed.

Regards,
Bernhard 

 -Ursprüngliche Nachricht-
 Von: emacs-orgmode-bounces+bernhard.schmitz=vis.uni-stuttgart...@gnu.org
 [mailto:emacs-orgmode-bounces+bernhard.schmitz=vis.uni-
 stuttgart...@gnu.org] Im Auftrag von Karl Voit
 Gesendet: Mittwoch, 3. Juni 2015 17:17
 An: emacs-orgmode@gnu.org
 Betreff: Re: [O] Testers / Feedback wanted: Gantt charts via org-gantt.el
 
 * Eric S Fraga e.fr...@ucl.ac.uk wrote:
 
  The only comments I have at the moment is that it is missing support for
  milestones and all of my GANTT charts have such and that I would like to
  be able to link tasks across headlines (i.e. groups).  Can I suggest a
 :milestone: tag or MILESTONE property for the former and a LINKED-TO or
  similar for the latter?
 
 How about a heading task who got only DEADLINE (no SCHEDULED) and
 does not span more than 1 day? This seems to be a mile-stone to me.
 
 (Or *additionally* this tag?)
 
 --
 mail|git|SVN|photos|postings|SMS|phonecalls|RSS|CSV|XML to Org-mode:
 get Memacs from https://github.com/novoid/Memacs 
 
 https://github.com/novoid/extract_pdf_annotations_to_orgmode + more on
 github
 




Re: [O] Testers / Feedback wanted: Gantt charts via org-gantt.el

2015-06-03 Thread Karl Voit
* Eric S Fraga e.fr...@ucl.ac.uk wrote:

 The only comments I have at the moment is that it is missing support for
 milestones and all of my GANTT charts have such and that I would like to
 be able to link tasks across headlines (i.e. groups).  Can I suggest a
:milestone: tag or MILESTONE property for the former and a LINKED-TO or
 similar for the latter?

How about a heading task who got only DEADLINE (no SCHEDULED) and
does not span more than 1 day? This seems to be a mile-stone to me.

(Or *additionally* this tag?)

-- 
mail|git|SVN|photos|postings|SMS|phonecalls|RSS|CSV|XML to Org-mode:
get Memacs from https://github.com/novoid/Memacs 

https://github.com/novoid/extract_pdf_annotations_to_orgmode + more on github




Re: [O] Testers / Feedback wanted: Gantt charts via org-gantt.el

2015-06-03 Thread Karl Voit
Hi!

* Bernhard Schmitz bernhard.schm...@vis.uni-stuttgart.de wrote:
 Von: Karl Voit [mailto:devn...@karl-voit.at]
 
 And accomplishing this, I personally would like to see that your
 method takes org-depend into consideration. Namely the properties
 BLOCKER and TRIGGER:(NEXT|TODO|STARTED). I plan my projects using
 mostly BLOCKER and TRIGGER:NEXT to express dependencies.

 This should be possible (might take a while, and no promises), at
 least for those simple dependencies. More complicated things
 expressed via org-depend would require some serious effort.

Understood.

 I don't understand the TRIGGER:(NEXT) syntax, though. According to
 the org-depend documentation TRIGGER: requires an id or a
 chain-siblings string.

Oh, I was too lazy to write a working example.

,[ working example ]
| ** DONE My pretty task
| CLOSED: [2015-04-30 Thu 07:50] SCHEDULED: 2015-04-30 Thu
| :PROPERTIES:
| :CREATED:  [2015-04-17 Fri 15:36]
| :ID:   2015-04-17-Dach-zu
| :TRIGGER:  foo1(NEXT) bar1(WAITING)
| :BLOCKER:  previousXY prevZ
| :END:
`

So when this task got marked as DONE, the headings with the ID
propertes previousXY and prevZ must not have been in an open
state. Further more, the headings with ID foo1 got the new states
NEXT and bar1 WAITING accordingly.

That's basically it.

 So if you can describe a consistent way that org-gantt should
 handle org-depend, then I might implement it (again, no promises),

I hope I could describe the dependency definitions properly now.

 but as I have never used org-depend I don't know if whatever I
 could come up with would make sense.

:-)

-- 
mail|git|SVN|photos|postings|SMS|phonecalls|RSS|CSV|XML to Org-mode:
get Memacs from https://github.com/novoid/Memacs 

https://github.com/novoid/extract_pdf_annotations_to_orgmode + more on github




Re: [O] Testers / Feedback wanted: Gantt charts via org-gantt.el

2015-06-02 Thread Eric S Fraga
On Saturday, 30 May 2015 at 11:33, Bernhard Schmitz wrote:
 Hi,

 my org-gantt.el is now in a usable state.

Thanks for this.  I've had a play with it.  I like it and it's quite
likely I'll be using it in anger soon so you'll probably hear from me
again!

The only comments I have at the moment is that it is missing support for
milestones and all of my GANTT charts have such and that I would like to
be able to link tasks across headlines (i.e. groups).  Can I suggest a
:milestone: tag or MILESTONE property for the former and a LINKED-TO or
similar for the latter?

Thanks again,
eric
-- 
: Eric S Fraga (0xFFFCF67D), Emacs 24.4.1, Org release_8.3beta-1195-g1a7364



Re: [O] Testers / Feedback wanted: Gantt charts via org-gantt.el

2015-06-02 Thread Bernhard Schmitz
Hi,

 Von: Karl Voit [mailto:devn...@karl-voit.at]
 
 And accomplishing this, I personally would like to see that your
 method takes org-depend into consideration. Namely the properties
 BLOCKER and TRIGGER:(NEXT|TODO|STARTED). I plan my projects using
 mostly BLOCKER and TRIGGER:NEXT to express dependencies.

This should be possible (might take a while, and no promises), at least for 
those simple dependencies. More complicated things expressed via org-depend 
would require some serious effort.
I don't understand the TRIGGER:(NEXT) syntax, though. According to the 
org-depend documentation TRIGGER: requires an id or a chain-siblings string.
So if you can describe a consistent way that org-gantt should handle 
org-depend, then I might implement it (again, no promises), but as I have never 
used org-depend I don't know if whatever I could come up with would make sense.

Regards,
Bernhard



Re: [O] Testers / Feedback wanted: Gantt charts via org-gantt.el

2015-06-02 Thread Bernhard Schmitz
 
  I have added an option :lowlevel-scale (e.g. 0.5 or 0.75) that will scale 
  the
 complete resulting chart.
  You can of course also use the pgfgantt options (:options) x unit chart and 
  y unit
 chart for more specific scaling.
 
 Lowlevel-scale doesn’t seem to have an effect, adjusting y units may prove 
 more
 useful.

Hmm, this seemed to work fine, but I now notice it does not really do what I 
intended.
I'll have to look at it again.

  Unfortunately, if you have sub-day effort estimates, this will currently 
  not be
 displayed correctly, as the start and end shift is computed based on days. I 
 should
 probably look into that.
  Supporting weeks is difficult, as pgf-gantt does not natively support them 
  for
 compression, only for title calendar.
 
 This is probably something that should be addressed in pgfgantt.
 A flight to Alpha Centauri takes about 1600 days.[1]
 If you assume 5 mm per day that would still need 8 m of wallpaper (and a 
 larger
 office).
 I probably wouldn’t care about sub-day efforts in this case.
 Emptying the litter box will be a checkpoint item, not a scheduled task.

This was just a warning about the current state. Correctly computing the offset 
for compressed calendars (so that the offset displays the day) should not be 
difficult.

 
  I'm not sure about inheritance:
  If I have a deadline for a task, should the subtasks inherit that deadline 
  unless
 an
  explicit deadline is given?
  If I have a deadline for a task and efforts for all subtasks, should the 
  task
 inherit
  that effort?
 
  That way I can give a deadline to the task and estimate efforts to get an 
  initial
  chart.
  Using this chart I can divide the subtasks between workers, rearrange the
  deadlines for the subtasks and finally define a scheduled date for the main
 task.
 
  This works for ordered subheadlines. Deadlines are propagated downwards, if
 the subheadlines are ordered.
  If the subheadlines are not ordered, deadlines are only propagated upwards, 
  as
 it is not clear which task(s) should inherit the deadline.
  So you can set a deadline to the (last) subtask, and it will be propagated 
  to its
 super task.
 
 The last (as in time, not position in file) deadline will be promoted to the 
 super
 task, right?
 That way I can keep an „Integration of Submodules“ task and deadline that.

Yes, the last deadline (and the first schedule) of any task is promoted to the 
super task, if the supertask does not have a deadline/schedule itself. But I 
don't understand why you would need an Integration task with a deadline, you 
can just deadline the supertask itself.

  This gives me another idea:
  Filter / color by tag.
  Print only tasks tagged :Axel: to show my workload, and print tasks tagged
  :Sam_One: to show tasks I have delegated.
  Isn't this already doable by using sparse trees?
 
 Can I build a gantt chart from a sparse tree?
 The sparse tree shows me what is assigned to whom.
 What I want to see is the effort and the time the effort is scheduled.
 
 This is probably too much to ask since org is more personal manager and not a
 project planer.

The comment about sparse trees was not quite well thought out from my side. I 
will have to look at it again.
There are now some options for tags (:use-tags :ignore-tags :tags-bar-style and 
:tags-group-style) that does all of this, but tags are not yet correctly 
promoted to subheadlines, so it does not really work correctly, atm.
You can use :tags-bar-style and :tags-group-style, which is an alist of 
(tagname . style) conses, that styles headlines with tags for groups and 
bars. The current ganttexperiment.org has an example.
I will probably not be able to work on this any further until the end of the 
week.

Regards,
Bernhard


Re: [O] Testers / Feedback wanted: Gantt charts via org-gantt.el

2015-06-01 Thread Karl Voit
* Bernhard Schmitz bernhard.schm...@vis.uni-stuttgart.de wrote:
 Hi,

Hi!

 my org-gantt.el is now in a usable state. It creates gantt charts
 via pgfgantt directly from headlines in org mode, using deadlines,
 schedules, effort estimates and (optionally) clocked time.

I do like your approach.

Although I am not using GANTT charts at the moment, I'd considering
your tool if it provides me a decent visualization of my heading
state.

And accomplishing this, I personally would like to see that your
method takes org-depend into consideration. Namely the properties
BLOCKER and TRIGGER:(NEXT|TODO|STARTED). I plan my projects using
mostly BLOCKER and TRIGGER:NEXT to express dependencies.

I personally am using either SCHEDULED or DEADLINE (hardly) on
headings.

Just my 2 cents ...

-- 
mail|git|SVN|photos|postings|SMS|phonecalls|RSS|CSV|XML to Org-mode:
get Memacs from https://github.com/novoid/Memacs 

https://github.com/novoid/extract_pdf_annotations_to_orgmode + more on github




Re: [O] Testers / Feedback wanted: Gantt charts via org-gantt.el

2015-06-01 Thread Bernhard Schmitz
Hi Axel,

thanks for your feedback

 I tried org-gantt on a current project and ran into one problem:
 
 I track progress with
 * Task [%]
 and
 * Task [/]
 
 Of course the % causes a problem when exporting to LaTeX.
 I suggest to either ignore [%] and [/] or use them as an alternative to show 
 how
 much is completed.
 It is probably a better metric than hours worked.

I do not quite understand: Is this an org mode feature (I could not find any 
documentation - you can possibly tell I haven't been using or mode for too 
long), or is this just something that you do yourself?
While I agree that it would be a good idea to use those numbers, I'm a bit wary 
of implementing something that is not based on official org mode features.
As a preliminary measure, I now ignore % signs.

 pgfgantt doesn't handle \ganttbar commands without start and end date.
 Therefor I can't export an incomplete chart.
 You may want to set the entries with missing scheduling information to the 
 first
 day of the chart.
 (Maybe mark the task or label with a color to indicate that they are 
 incomplete.)
 (See below for some different ideas.)

I fixed this. You can now set :incomplete-date-headlines and :no-date-headlines 
to keep, inactive or ignore.
If inactive, the styles set via :inactive-bar-style and :inactive-group-style 
are used.
All options also have an org-gantt-default... defcustom, which can be set if 
you don't want to set it for each chart.
 
 A two month chart doesn't fit into \textwidth.
 I wrapped it into a sideways environment (provided by rotating.sty), maybe a
 sideways option?

Hmm, I don't see an advantage of having a sideways option vs. wrapping it 
manually, but perhaps I'm missing something?
I have added an option :lowlevel-scale (e.g. 0.5 or 0.75) that will scale the 
complete resulting chart.
You can of course also use the pgfgantt options (:options) x unit chart and y 
unit chart for more specific scaling.

 For a project with 2000 person hours[1] I'll probably need a separate export 
 and
 print it on A0 paper[2].
 Some kind of scaling would be fine (show weeks / month instead of days).

You can already set :title-calendar to year, month[=name] and add compress 
calendar to the :options list to use months instead of days.
Note that you should set :weekend-style and :workday-style to the same thing, 
as org-gantt will otherwise mark some months as weekends.
Unfortunately, if you have sub-day effort estimates, this will currently not be 
displayed correctly, as the start and end shift is computed based on days. I 
should probably look into that.
Supporting weeks is difficult, as pgf-gantt does not natively support them for 
compression, only for titlecalendar. 

 
 For a huge project it may be nice to limit the levels printed:
 Just Module 1 - 8 for the Management and each Module with the submodules for
 the project leader.
 Similar to maxlevel in the clocktable.

I added an option :maxlevel (and org-gantt-default-maxlevel)

 I'm not sure about inheritance:
 If I have a deadline for a task, should the subtasks inherit that deadline 
 unless an
 explicit deadline is given?
 If I have a deadline for a task and efforts for all subtasks, should the task 
 inherit
 that effort?
 
 That way I can give a deadline to the task and estimate efforts to get an 
 initial
 chart.
 Using this chart I can divide the subtasks between workers, rearrange the
 deadlines for the subtasks and finally define a scheduled date for the main 
 task.

This works for ordered subheadlines. Deadlines are propagated downwards, if the 
subheadlines are ordered.
If the subheadlines are not ordered, deadlines are only propagated upwards, as 
it is not clear which task(s) should inherit the deadline.
So you can set a deadline to the (last) subtask, and it will be propagated to 
its supertask.

 This gives me another idea:
 Filter / color by tag.
 Print only tasks tagged :Axel: to show my workload, and print tasks tagged
 :Sam_One: to show tasks I have delegated.
Isn't this already doable by using sparse trees? Or would this involve some 
unnecessary hassle? I'm not an experienced enough org user to determine that, 
but I don't want to replicate functionality that already exists.

 Color tasks by tags to show who is assigned, white for unassigned tasks.
 Noted for future support.

Regards,
Bernhard



Re: [O] Testers / Feedback wanted: Gantt charts via org-gantt.el

2015-06-01 Thread Axel Kielhorn
Hi Bernhard,

Thanks for your quick response.

 I tried org-gantt on a current project and ran into one problem:
 
 I track progress with
 * Task [%]
 and
 * Task [/]
 
 Of course the % causes a problem when exporting to LaTeX.
 I suggest to either ignore [%] and [/] or use them as an alternative to show 
 how
 much is completed.
 It is probably a better metric than hours worked.
 
 I do not quite understand: Is this an org mode feature (I could not find any 
 documentation - you can possibly tell I haven't been using or mode for too 
 long), or is this just something that you do yourself?
 While I agree that it would be a good idea to use those numbers, I'm a bit 
 wary of implementing something that is not based on official org mode 
 features.
 As a preliminary measure, I now ignore % signs.

Section 5.5 „Breaking tasks down into subtasks“ of the org (8.2) manual.

It works with TODO / DONE and checkboxes in lists.

I’ll look into the remaining comments later.


Axel


Re: [O] Testers / Feedback wanted: Gantt charts via org-gantt.el

2015-06-01 Thread Axel Kielhorn
Hi Bernhard,

I pulled 

 I fixed this. You can now set :incomplete-date-headlines and 
 :no-date-headlines to keep, inactive or ignore.
 If inactive, the styles set via :inactive-bar-style and :inactive-group-style 
 are used.
 All options also have an org-gantt-default... defcustom, which can be set if 
 you don't want to set it for each chart.
 
 A two month chart doesn't fit into \textwidth.
 I wrapped it into a sideways environment (provided by rotating.sty), maybe a
 sideways option?
 
 Hmm, I don't see an advantage of having a sideways option vs. wrapping it 
 manually, but perhaps I'm missing something?

No, just adding 

#+LATEX: \begin{sideways}
#+BEGIN: org-gantt-chart
#+END:
#+LATEX: \end{sideways}

to the documentation would be sufficient.

 I have added an option :lowlevel-scale (e.g. 0.5 or 0.75) that will scale the 
 complete resulting chart.
 You can of course also use the pgfgantt options (:options) x unit chart and y 
 unit chart for more specific scaling.

Lowlevel-scale doesn’t seem to have an effect, adjusting y units may prove more 
useful.

 Unfortunately, if you have sub-day effort estimates, this will currently not 
 be displayed correctly, as the start and end shift is computed based on days. 
 I should probably look into that.
 Supporting weeks is difficult, as pgf-gantt does not natively support them 
 for compression, only for title calendar.

This is probably something that should be addressed in pgfgantt.
A flight to Alpha Centauri takes about 1600 days.[1]
If you assume 5 mm per day that would still need 8 m of wallpaper (and a larger 
office).
I probably wouldn’t care about sub-day efforts in this case.
Emptying the litter box will be a checkpoint item, not a scheduled task.

 I added an option :maxlevel (and org-gantt-default-maxlevel)

Great. 

 I'm not sure about inheritance:
 If I have a deadline for a task, should the subtasks inherit that deadline 
 unless an
 explicit deadline is given?
 If I have a deadline for a task and efforts for all subtasks, should the 
 task inherit
 that effort?
 
 That way I can give a deadline to the task and estimate efforts to get an 
 initial
 chart.
 Using this chart I can divide the subtasks between workers, rearrange the
 deadlines for the subtasks and finally define a scheduled date for the main 
 task.
 
 This works for ordered subheadlines. Deadlines are propagated downwards, if 
 the subheadlines are ordered.
 If the subheadlines are not ordered, deadlines are only propagated upwards, 
 as it is not clear which task(s) should inherit the deadline.
 So you can set a deadline to the (last) subtask, and it will be propagated to 
 its super task.

The last (as in time, not position in file) deadline will be promoted to the 
super task, right?
That way I can keep an „Integration of Submodules“ task and deadline that.

 This gives me another idea:
 Filter / color by tag.
 Print only tasks tagged :Axel: to show my workload, and print tasks tagged
 :Sam_One: to show tasks I have delegated.
 Isn't this already doable by using sparse trees?

Can I build a gantt chart from a sparse tree?
The sparse tree shows me what is assigned to whom.
What I want to see is the effort and the time the effort is scheduled.

This is probably too much to ask since org is more personal manager and not a 
project planer.

 Or would this involve some unnecessary hassle? I'm not an experienced enough 
 org user to determine that, but I don't want to replicate functionality that 
 already exists.

I think these are different things. Not scheduling a person to do two things at 
the same time may improve efficiency.

Greetings Axel

[1] Not including the time needed to build the air^Wspace port.[2]
[2] Sorry, since you are in Stuttgart that should be: Not including the time to 
build the railway station to get to the air^Wspace port.




Re: [O] Testers / Feedback wanted: Gantt charts via org-gantt.el

2015-05-31 Thread Axel Kielhorn

 Am 30.05.2015 um 13:33 schrieb Bernhard Schmitz 
 bernhard.schm...@vis.uni-stuttgart.de:
 
 Hi,
 
 my org-gantt.el is now in a usable state. It creates gantt charts via 
 pgfgantt directly from headlines in org mode, using deadlines, schedules, 
 effort estimates and (optionally) clocked time.

Sounds like a good idea.
I tried writing pgfgantt manually but once I finished updating the chart, it 
was already out of date.
Getting the information from org would be fine.

I tried org-gantt on a current project and ran into one problem:

I track progress with
* Task [%]
and
* Task [/]

Of course the % causes a problem when exporting to LaTeX.
I suggest to either ignore [%] and [/] or use them as an alternative to show 
how much is completed.
It is probably a better metric than hours worked.

pgfgantt doesn’t handle \ganttbar commands without start and end date.
Therefor I can’t export an incomplete chart.
You may want to set the entries with missing scheduling information to the 
first day of the chart.
(Maybe mark the task or label with a color to indicate that they are 
incomplete.)
(See below for some different ideas.)

A two month chart doesn’t fit into \textwidth.
I wrapped it into a sideways environment (provided by rotating.sty), maybe a 
sideways option?
For a project with 2000 person hours[1] I’ll probably need a separate export 
and print it on A0 paper[2].
Some kind of scaling would be fine (show weeks / month instead of days).

For a huge project it may be nice to limit the levels printed:
Just Module 1 - 8 for the Management and each Module with the submodules for 
the project leader.
Similar to maxlevel in the clocktable.

I’m not sure about inheritance:
If I have a deadline for a task, should the subtasks inherit that deadline 
unless an explicit deadline is given?
If I have a deadline for a task and efforts for all subtasks, should the task 
inherit that effort?

That way I can give a deadline to the task and estimate efforts to get an 
initial chart.
Using this chart I can divide the subtasks between workers, rearrange the 
deadlines for the subtasks and finally define a scheduled date for the main 
task.

This gives me another idea:
Filter / color by tag.
Print only tasks tagged :Axel: to show my workload, and print tasks tagged 
:Sam_One: to show tasks I have delegated.
Color tasks by tags to show who is assigned, white for unassigned tasks.

Axel

[1] A 2000 PH project is not my usual project size, a few hundred is more 
common.
[2] I have access to an A0 printer but I usually draw with felt markers on 
(literal) wallpaper.
Much faster for an initial design and I can use „real“ cut and paste:-)




Gantt-ECM.org
Description: Binary data




[O] Testers / Feedback wanted: Gantt charts via org-gantt.el

2015-05-30 Thread Bernhard Schmitz
Hi,

my org-gantt.el is now in a usable state. It creates gantt charts via pgfgantt 
directly from headlines in org mode, using deadlines, schedules, effort 
estimates and (optionally) clocked time.
In contrast to ox-taskjuggler it does not require an external program, and in 
contrast to Eric Fraga's gantt chart creation it reads from the headlines 
instead of a specific table. Something like this has been discussed on this 
list, but I couldn't find that anyone has actually implemented it. 

For some examples, take a look at the charts in the manual:
https://github.com/HeyFlash/emacs-stuff/blob/master/experiments/org-gantt-manual.pdf
Source:
https://github.com/HeyFlash/emacs-stuff/blob/master/experiments/org-gantt-manual.org

As I think this might be useful for others I wanted to make it available. I 
would be happy about feedback. 

The file itself can be found here:
https://github.com/HeyFlash/emacs-stuff/blob/master/experiments/org-gantt.el

Regards,
Bernhard