From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alexandre Norman Subject: Re: Transforming org-mode project in Gantt graphes Date: Mon, 12 Jan 2015 23:03:16 +0100 Message-ID: References: <1420202939817.fc7305a8@Nodemailer> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary=001a1134930e3118e3050c7baee9 Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:49281) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YAn5S-0003z9-7c for emacs-orgmode@gnu.org; Mon, 12 Jan 2015 17:03:51 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YAn5Q-0004GT-Ct for emacs-orgmode@gnu.org; Mon, 12 Jan 2015 17:03:50 -0500 Received: from mail-lb0-x234.google.com ([2a00:1450:4010:c04::234]:57853) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YAn5Q-0004Fx-0g for emacs-orgmode@gnu.org; Mon, 12 Jan 2015 17:03:48 -0500 Received: by mail-lb0-f180.google.com with SMTP id l4so20000856lbv.11 for ; Mon, 12 Jan 2015 14:03:46 -0800 (PST) In-Reply-To: List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Pascal Fleury , Dain Miller , Manish Cc: Org-Mode --001a1134930e3118e3050c7baee9 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hello, I reworked on my code. You can find it here : https://pypi.python.org/pypi/python-gantt/ or with pip :: pip install python-gantt Enclosed, there is two parts : - python-gantt : this library is used to draw gantt svg charts from python - org2gantt : used to transform org-mode files to python-gantt ones You can see outputs here : - http://xael.org/norman/python/python-gantt/project.png - http://xael.org/norman/python/python-gantt/project_resources.png Installation ------------ To install python-gantt, just issue : python setup.py install It requires : - svgwrite - clize Usage ----- For using org2gantt, see help : python org2gantt/org2gantt.py -h Basic usage is : python org2gantt/org2gantt.py org2gantt/example.org It should generate two charts : one for tasks and one for resources assignment. Syntax for org-mode ------------------- See org2gantt/example.org and org2gantt/README.org for detailed explanations. Basically, you need to define : - resources : in a special section "RESOURCES" - and projects containing tasks. Timeframe of tasks is defined by (beginning) and (end). Some properties are used for : - duration of the task - define some task's blockers - resources used - and some other things Syntax is mostly compatible with org-taskjuggler when you have renamed RESOURCES section. In addition, resources can also be defined as tags. I think it's better than the org-taskjuggler property method as you can use them directly in org-mode ! My work flow ------------------- I work for a big company with two missions : - sysadmin (os + apps) on a 300+ server park, - do some integration and qualification on applications, - deploy those applications on our servers. I am managing 15 persons in two teams. One do daily sysadmin and the other one do the IQ and deployment part. For the sysadmin part, it's quite straightaway : daily repetitive tasks, and little scheduling (server installation, patch, updates=E2=80=A6) For the IQ / deployment team, the dates of operations are not defined by me but others (devs for the delivery and clients for production interruption). Scheduling is done with a long term view (6 months - 1 year)=E2=80=A6 but e= volve as dev are usually in hurry at first and in late at the end. For this, I need to check resources allocation in order to be able to do th= e work. I used ganttproject for this. But it is not really user friendly and lack good outputs I can share with others. org2gantt allows me to do some nice pictures for big managers. And with org-mode, it helps me to easily keep track of tasks (notes, documents, milestones) and who is assigned to what. Org-mode is also really usefull keep the someday/maybe notes. Regards, Alexandre On Mon, Jan 5, 2015 at 10:44 AM, Alexandre Norman wrote: > Hello, > > > On Mon Jan 05 2015 at 10:07:47 Pascal Fleury > wrote: > >> Happy New Year!!! >> > > Thanks. > I wish you (all) an happy new year also ! > >> >> Just curious: did you see this ? http://orgmode.org/worg/org- >> tutorials/org-taskjuggler.html >> > > Unfortunately, no. > > >> I must say I like your output better, rather than opening another tool. >> But maybe there is a way to at least use the same properties to make it >> useful to more users ? >> > > After a quick look, there are good design ideas to take=E2=80=A6 > I think I will do the switch !!! > > Thanks ! > Alexandre > > --001a1134930e3118e3050c7baee9 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Hello,

I reworked on my code. You can find it = here : https://pypi.= python.org/pypi/python-gantt/

or with pip ::

=C2=A0 pip i= nstall python-gantt


Enclosed, there is two parts :

- pyth= on-gantt : this library is used to draw gantt svg charts from python
- o= rg2gantt : used to transform org-mode files to python-gantt ones

You can see outputs here :

=C2=A0- http://xael.org/norman/python/python-gan= tt/project.png
=C2=A0- http://xael.org/norman/python/python-gantt/= project_resources.png
=C2=A0
Installation=
------------

To install python-gantt, just issue :

=C2=A0= python setup.py install

It requires :
- svgwrite
- clize
<= br>Usage
-----

For using org2gantt, see h= elp :

=C2=A0 python org2gantt/org2gantt.py -h


Basic usage= is :

=C2=A0 python org2gantt/org2gantt.py org2gantt/example.org

It should generate two charts : one = for tasks and one for resources assignment.


Syn= tax for org-mode

-------------------

See org2gantt/example.org and org2gantt/README.org for detail= ed explanations.
Basically, you need to define :
- resources : in a s= pecial section "RESOURCES"
- and projects containing tasks.
Timeframe of tasks is defined by <SCHEDULE> (beginning) and <= DEADLINE> (end).
Some properties are used for :
- duration of the = task
- define some task's blockers
- resources used
- and some= other things

Syntax is mostly compatible with org-taskjuggler when = you have renamed RESOURCES
section.

In addition, resources can al= so be defined as tags. I think it's better than the
org-taskjuggler = property method as you can use them directly in org-mode !


My work flow

-------------------

I work for a = big company with two missions :
- sysadmin (os + apps) on a 300+ server = park,
- do some integration and qualification on applications,
- dep= loy those applications on our servers.

I am managing 15 persons in t= wo teams. One do daily sysadmin and the other one
do the IQ and deployme= nt part.

For the sysadmin part, it's quite straightaway : daily = repetitive tasks, and little
scheduling (server installation, patch, upd= ates=E2=80=A6)

For the IQ / deployment team, the dates of operations= are not defined by me but
others (devs for the delivery and clients for= production interruption).

Scheduling is done with a long term view = (6 months - 1 year)=E2=80=A6 but evolve
as dev are usually in hurry at f= irst and in late at the end.

For this, I need to check resources all= ocation in order to be able to do the
work. I used ganttproject for this= . But it is not really user friendly and lack
good outputs I can share w= ith others.

org2gantt allows me to do some nice pictures for big man= agers. And with
org-mode, it helps me to easily keep track of tasks (not= es, documents,
milestones) and who is assigned to what.
Org-mode is a= lso really usefull keep the someday/maybe notes.


Regards,
Alexandre


On Mon, Jan 5, 2015 at 10:44 AM, Alexandre Norman <norma= n@xael.org> wrote:
Hello,

On Mon Jan 05 2015 at 10:07:47 Pascal = Fleury <fleury@users.sourceforge.net> wrote:
Happy New Year!!!

Thanks.
I wish you (all) an happy new year also !
<= div>
Unfortunately, no.
=C2= =A0
I must say I = like your output better, rather than opening another tool. But maybe there = is a way to at least use the same properties to make it useful to more user= s ?

After a quick look, = there are good design ideas to take=E2=80=A6
I think I will do th= e switch !!!

Thanks !
=
Alexandre
=C2=A0
=

--001a1134930e3118e3050c7baee9--