How do we use dotProject

How do we use dotProject


In this post we’ll talk about dotProject – a web-based open source project management system. We have used it from 2004 to the present day (seven years). You may consider this post as a mini-guide on the use of dotProject, based on the experience of a team of four developers who build web applications for businesses. This post is quite lengthy as we wanted to share our experiences and avoid creating just another impractical review.

It is hard to remember now, amongst which systems I had to choose. I remember that I found dotProject and eGroupWare. Today, according to Wikipedia, there are tons of such systems. In 2005 the choice was much smaller and the level of their maturity much lower. I have installed dotProject and eGroupWare, and I liked the dotProject – it had all the features that were needed, and even more. If you’ve read some of my previous posts, you know that I am not a supporter of services when you have to pay regardless of whether or not you are using the service, where the data can not be easily migrated to another provider. In general, I like lock-in free services and respect people who create them. It is not easy. I want to be able to leave without loosing data or having a headache because of data conversion. In this case we are talking about the data stored in the database and the files that are attached to projects, tasks, etc. Otherwise, I feel insecure and dependent on the service provider. If we talk about project management systems, then this freedom is only given to you by an open source system installed on your server, developed (preferably) on the language you are familiar with. This gives you almost unlimited possibilities – you can dig up and tweak anything. Rule is simple. If you do not want to tweak – you can live without it. That’s why I chose dotProject.

Much later I decided to look at the two most frequently mentioned project management systems: Basecamp – with an emphasis in simplicity, and FogBugz – with a bias in bug-tracking, and I must tell you that even if they were free and downloadable (not SaaS) systems, then I would still chose dotProject. I did not see anything terribly missing for my work in them. FogBugz differentiates itself with evidence-based scheduling. It can not be used in our work – often project undergo a tangible change during development process, so I do not need to know the probability of a new version release by a certain date. Basecamp – a good system, with minimal functionality, but there is no forum. Posts (messages) in the project can be grouped using categories. Categories looks like a tags. For example, ‘design’. If you click ‘design’ you will see all top level posts in this category with their bodies. We find it quite unusual. Conventional forum will show only subjects which are easier to absorb (imagine you have 30 posts in ‘design’ category). You can not browse all messages in all projects. You need to switch between projects which we found inconvenient. But this is just us – both products are very successful which tells us we all have different projects to manage with different views on systems to use.

What would I like to tell about dotProject – system we use?

First – we are using an old version 2.0.4 (current one 2.1.15), and only basic dotProject modules. No add-ons. And later in the post you will see that for us (and perhaps for you), even half of the standard modules as well as half of the form fields attached to projects and tasks are not needed. How are we dealing with it? We had two choices – modify dotProject or simply do not pay attention to it which we selected. We have done one or two upgrades, and then just fixed the bugs and added a few things we needed. Unfortunately, the dotProject team did not want to use our code, we offered more than once. The system then met our requirements, and only in 2008 we started using phpBB for discussions in parallel with dotProject forum and later abandoned dotProjects’ forum completely. Why? On one hand, the increased complexity of projects dragged amount of posts in some forums to a thousand and more. Not an issue for phpBB, but not for dotProjects’ forum. We had to spend time to optimize SQL, since loading a page in busy forums was taking 10-20 seconds. On the other hand, in mid-2008 we began to work on our own product – Nerrvana – in dotProject but we decided to try using phpBB instead of internal dotProjects’ forum. Soon it became clear that it was a great idea. Therefore, we advise you to use dotProject for project tasks, time tracking and specifications, and a forum (of your choice – phpBB, vBulletin, Vanilla) – for discussions. Later we needed to create forums and provide access to our client. phpBB allowed us to do it with ease. I would hesitate to show customers dotProjects’ forum. It does not have an advanced editor (rich editor) and the ability to insert images etc. Learn more about the advantages of using a specialised forum platform for project management and collaboration in my next post in this series – “How do we use a forum”.

Why did we need to provide access to a forum for our client, you may ask. The answer is simple – work on projects with customers via e-mail box is obsolete. Employees are changing, and in a year or two no one remembers why a decision was made. The one who wants to “change the world” often does not know why this world was built that way in a first place. Clients manager does not know why the work on the specification stopped. A forum, in contrast to an email, gives answers to all these questions. I did not like the lack of permanent storage for requirements, questions and answers on the project. I wanted to have a place where a new clients’ employee even in a year or two after application launch could easily jump start and be up to date about decisions that were made a long time ago before making suggestions about changing an existing application. A place I can use to get an old project and re-read all by myself if necessary. When our discussions and communication with the customer is in one place, it is very convenient.

The modules we actually use are Projects, Tasks and Files (fig. 1 num. 1). Other modules – Calendar, Companies, Forum and Contacts are very easy to hide. We do not use them, but as you see, they are not hidden. If you have many clients, use the module Company as an additional filter to view projects and tasks for each client. Tabs for managing users (User Admin) and system (System Admin) are visible only to a user having administrative rights. If you do not want see them – create a separate account for an administrator, and exclude them from your profile.

Click to enlarge

Fig. 1 Projects
(click to enlarge)

As you can see, we have launched 176 projects since 2004 (fig. 1 num. 2) and completed 158. When a project is completed, we keep it for some time in the status Completed, then we set it Inactive flag which moves a project to Archive tab making it automatically invisible on all other pages, which we’ll talk about further. It is very convenient to be able to get a project from the archive when additional modifications are required. You remove Inactive flag, create a new task and immediately get access to the file specifications, links to the forum. Development space-time continuum stays uninterrupted. It is very easy to add a new status/tab in dotProject if you need it. For example, Ongoing status was added by me. I wanted to store some projects separately from the InProgress tab.

Figure 1 shows projects view. Lots of information, but we only use a combination of status (depends on tab you selected) and a project name on this page. Neither the percentage of completion, or columns starting from ‘Start’ are not used by us. I highlighted project ‘Misc’ (fig. 1 num. 3), which, as you see, was created in 2007 (fig. 1 num. 4) and contains 143 tasks, where 72 are assigned to me (fig. 1 num. 5). Project ‘Misc’ is used for everything we would like to improve in our application. Sometimes it requires additional research we have no time to do now. Tasks are taken and completed in this projects when we have spare time doing business components (the ones visible to our client) or a critical mass is reached and completing some tasks will save us a considerable amount of development time. For some reason this view does not show up an amount of uncompleted tasks but total versus yours regardless of their status. In fact we have 22 unfinished tasks in this project – large number of them also means that we are passionate of things we do too.

How do we decide when to create a project, and when a task? It’s simple. If we will have subtasks, it is a project. If not – a task. Each new application in our system is a project (in our system, applications are added to the platform similar to SalesForce).

If we follow a project name link on Figure 1, we will see project details (View Project) page shown below.

Click to enlarge

Fig. 2 Project details
(click to enlarge)

I must admit it is full of fields we do not use too. I think it is better to have more than you need and I can say it very easy to ignore stuff you do not need. For example, I just do not notice the fields (fig. 2 num. 7) and columns (fig. 2 num. 3). Tab ‘Forum’ is visible (fig. 2 num. 1) because a lot of old discussions are in dotProjects’ forum, and therefore we can not hide it entirely. The project, shown on Figure 2, is new (created after we started using phpBB as dotProjects’ forum replacement), so you will see a link on our separate internal forum (fig. 2 num. 1), where we discuss sparklines. You see that a project contains five tasks. Details of each tasks can be looked at by clicking on the links (fig. 2 num. 5). If you worked on a specific task and want to update a task log – it is easy ​​(fig. 2 num. 2). Completed tasks are easy to hide, using a filter (fig. 2 num. 6). ‘Gantt Chart’ tab is a feature we also do not use, but the ‘Files’ tab is a smooth transition to the files of the project. You will find specifications, screenshots in there.

If we follow a link marked with an arrow at the top of Figure 3, we will end up on the ‘Tasks’ page.

Click to enlarge

Fig. 3 Tasks
(click to enlarge)

By definition, dotProject displays all your unfinished tasks on this page. If you have too many of them, you can set a flag called Pinned for some tasks, as I do, and use pinned tasks filter to see only those that are directly in the work. Right here you can add an entry into the task log (fig. 3 num. 2), or go to the task itself using the task name link (fig. 3 num. 3). To show you what information we actually use I again marked the fields that we do not use (fig. 3 num. 1).

Now let’s look at the task page (View Task). I marked the fields that we do not use (fig. 4 num. 6) following already established tradition. Number 1 is showing a field, which can be used to link task and forums’ topic for discussion. Number 4 – total hours worked; an important and real thing. Progress – quite a subjective measure, to me, especially when halfway it turns out that you need three times more functionality and not the one discussed when you started. Even without changes in the task anybody can write 95% and get stuck in some place for three days. So we have all our requirements dynamically changing often, and we do not rely on estimates of completion percentage at all. A new task log can be added in two ways (fig. 4 num. 3). Number 2 shows the Files tab. Place where they really are – but only those which where attached to this task not to the entire project. File can be attached to a project or to a task in dotProject. Logically the Files tab on project view (fig. 2) will show all files attached to a project as well as all files attached to project tasks. For example, if a task is a bug, files attached to this task will be – screenshots with instructions on how to reproduce this error. dotProject developers created plenty of fields to store URL (two fields for a project, one for a task). Even each task log can include a URL (fig. 4 num 5). In task logs you can use URLs to link with a forum too. You will agree if you were discussing how to do something, somewhere in the middle of the topic and finally did it, then repeating the same thing in a task log will be boring and time consuming. It is much easier to write short – “Implemented – see the link”, and include a URL linking the task log update with a specific post in the forum with the details of implementation.

Click to enlarge

Fig. 4 Task details
(click to enlarge)

And finally, let’s look at a project files page.

Click to enlarge

Fig. 5 Project files
(click to enlarge)

We practically do not use the link labeled fig. 5 num. 1, because if you open it in our system, you’ll see a paginated page showing the first twenty or so files with mark “693 File (s) (24 Page (s))”. Yes, it contains a convenient filter to display files by project, but there is a better way – to open a project and ‘Files’ tab on it. This page is shown on Figure 5. dotProject is equipped with a primitive, but quite handy version control system for files. If I need to change a specification I checkout (fig. 5 num. 2) it. dotProject notifies all those involved in a project, that document will change. This is perhaps most important, since it alarms everyone to delete local copies of this document. Version control is typically needed for specifications. When you load a new version into dotProject it does not remove the previous ones. Older versions are available by clicking on a number showing total count of file revisions (shown by arrows on fig. 5).

The project, shown on Figure 5, is a good reason for us to talk about dotProject’s connection with the forum. Numbers 3 and 4 mark two links. One of them points to our internal forum for this project. Another one points to a forum created to discuss the project with the client.

Why do we have a separate forum for a client? First, to ask the client one question we often need a dozen of posts to discuss it. Why to load clients with the information that might be misunderstood or confusing? Secondly, Vadym is in the U.S.A, I am in Australia, and Dmitriy and Alex are in Ukraine. On the one hand, the lack of direct communication, on the other – all discussions are recorded. It is a fact that writing takes more time so we all are forced to write to a point only. What more could you want? Third, as you probably guessed, our native language – Russian, but not our clients. It is easier for us to discuss things in our native language.

Thus, since the beginning of using phpBB, we always create two forums for a project. Each task usually requires a new topic. Topic name could be different from the task name, but should clearly relate to the topic and task. However sometimes a task requires several topics. For example, there is a task – “Specification”, and it is immense. I’ll call topics as: “Specification – add/edit/show audit pages” or “Specification – email notifications – 3 types”. Therefore, if you open a forum for this project, you will always clearly see specification topics, without even thinking that a specially selected prefix connects all of these topics with a specific task in a project management system. I have tried to show all of this in the diagram below.


(click to enlarge)

Forum-categories in phpBB conveniently divide the internal (only us) and external (customers and us) forums.

Finally, I would like to provide some statistics from our dotProject setup.
Projects1 – 176
Tasks2 – 997
Task logs3 – 4909
Total hours4 – 23958
Total posts in forum before switch to phpBB5 – 8247
Files6 – 828
Files total size7 – 135.5 Mb
Db dump8 – 16.8M


1 – select count(1) from projects;
2 – select count(1) from tasks;
3 – select count(1) from task_log;
4 – select sum(task_log_hours) from task_log;
5 – select count(1) from forum_messages;
6 – select count(1) from files;
7 – cd /var/www/aws_dp; du -ks files
8 – mysqldump -u xxxx -p xxxx > dotproject_db.dump; du -ks dotproject_db.dump

Print this post | Home

6 comments

  1. Keith Casey says:

    Wow, I have to admit that this is one of the most detailed and complete open source reviews that I’ve read in years. Nice job & thanks.

    Before I dive in, since you’ve been around dotproject since ancient times, you may recognize me as “caseydk”. I was on the core team for ~3 years, was active on the forums, and did lots of bug review before leaving the team and joining web2project. Anyway.. some followup questions & comments for you:

    * I remember using egroupWare about the same time. While it supported a huge amount of functionality, it wasn’t a good match for me or my team either. We needed a more “traditional” project management approach and dotproject won out.

    * Also, while BaseCamp was always handy for those quick one-off simple things that are either Done or Not-Done, my problem was not having dependencies. I like knowing “although X looks easy, A, B, and C need to be completed first”.

    * Has the “no sub-project” limitation been annoying or slowed you down? That was one of the things that bugged me the most. I regularly ran into the situation where a subproject had to have different set of permissions than its parent.

    * You don’t use any of the Task Date information? Why is that?

    * Within your phpBB side of things, I assume you use separate containers for internal vs clients due to permissions reasons but how do you handle cross-customer projects? For example, you work with Design Firm A regularly and Customer B regularly, so they’d each have their own container. What happens if you work with A and B on the same project?

    * Do you have some sort of user syncrhonization or single-credentials (not necessarily single sign on) between phpBB and dotproject? How do you handle account creation?

    * I know a few of the phpBB guys.. if you have nifty patches, modules, etc to share with them, let me know. I’ll happily pass them along to the right people. They’ve come a *long* way in the last few years and they’re doing some great work.

    * I’d *love* to see your changes and suggestions. I don’t use dotproject anymore but I lead web2project which is a fork that we started in 2007. In the time since, we’ve dropped 1/3 of the code, added nearly 500 unit tests (phpUnit), have a regular release cycle, configurable columns on the Project List screen, 20-100x performance throughout, and even somewhat regular code reviews. In fact, Sebastian Bergmann – of phpUnit – has led in a couple.

    - Of course, we have a clean upgrade process from dotproject to web2project.
    - We’ve already support turning urls into links within text – https://github.com/caseysoftware/web2project/blob/master/includes/main_functions.php#L1324
    - One of the more useful things for my group has been the iCalendar output. Now you can subscribe to a calendar feed and all Tasks, Events, etc automatically can show up in your Outlook, Google, or Thunderbird calendar. Add On modules can add to it easily too.

    * Stats from my own web2project (formerly dotproject) install going back to late 2003:
    - 168 projects, 1991 tasks, 13437 logs, 14240 hours, 2094 todo items (from the Todos Add On module)
    - My Favorite modules: TodoList (my Basecamp clone), Project Designer (from Pedro), and SmartSearch (also Pedro)

    Feel free to drop me a note if you want to talk further.

    Seriously.. I would love to see your updates & patches. :)

  2. Wow, I have to admit that this is one of the most detailed and complete open source reviews that I’ve read in years. Nice job & thanks.

    In exchange I can only say – I would love to see such comments in here.

    Before I dive in, since you’ve been around dotproject since ancient times, you may recognize me as “caseydk”.

    I only posted in dotProject forums and talked to Karen. It could all be different if we would met then, isn’t it? :)

    Also, while BaseCamp was always handy for those quick one-off simple things that are either Done or Not-Done, my problem was not having dependencies. I like knowing “although X looks easy, A, B, and C need to be completed first”.

    Hard to say now as I cannot remember how BaseCamp looked like in 2003 and I was looking for a system to install on my server anyway. I looked at BaseCamp now when I was writing this post and FogBugz recently and as I said I did not find anything so appealing I terribly miss. It is really how DHH said in his speech on YCombinator 2008: “There can be lots of winners, just like there are lots of small Italian restaurants out there doing pretty great even though there are other Italian restaurants.” Same is true for project management systems. Some people, like me, like to have their own install, some people like BaseCamp. I guess, some just want to be able to say that they are using a much talked about system thinking it makes them cooler too. There are lots of implicit and explicit factors involved here.

    Dependencies. May be we are too small to need dependencies. It is very rare when I need to record that we cannot start A before B is completed. I just give task B high priority and A – normal priority. Or both tasks are done by the same person and if it is yours you know what exactly it is and you will not “fuel until the petrol tank attached” right?

    Has the “no sub-project” limitation been annoying or slowed you down? That was one of the things that bugged me the most. I regularly ran into the situation where a subproject had to have different set of permissions than its parent.

    Again – not important for us. We all have admin rights – there are four of us and nobody needs to be managed in a sense big companies do it. We are happy with the concept – project, task. Task dependencies do not harm, sub-project, if added, will not harm too but we do not need it. Being able to move a task from one project to another is a good feature, but we already have it.

    You don’t use any of the Task Date information? Why is that?

    Do you mean “Start Date”? We always have a set of tasks in progress for each of us. We never have a situation when we need to start a task on 25 May or finish it on a certain date. Sometimes we have deadlines but people who are involved do know about it anyway. It is ‘tattooed’ in our brains.

    Within your phpBB side of things, I assume you use separate containers for internal vs clients due to permissions reasons but how do you handle cross-customer projects? For example, you work with Design Firm A regularly and Customer B regularly, so they’d each have their own container. What happens if you work with A and B on the same project?

    Simple for us. We have one BIG client. I know it is weird but this is how it is and we will launch our own product very soon. I do not want to go into too much detail about the product as it will be a completely different setup as it is a completely different business model – own product/service comparing to contract work.

    Answering you question. Forum-category is just a frame in phpBB on UI side and it also helps to manage permissions for forums belonging to a category. I will still keep only two forum-categories – TEAM & CLIENTS (it does not matter how I will name them). Inside CLIENTS I will create a forum ‘Z’ and will give access to customer A and B. I will give read only access to our team and will make myself a moderator (so only I can post on TEAM side). A & B can post and read, team can subscribe and read and I can post.

    Do you have some sort of user syncrhonization or single-credentials (not necessarily single sign on) between phpBB and dotproject? How do you handle account creation?

    Nothing. If I would be you (working in this area) I would integrate a decent forum and project management system. Does not make sense to me to write forum functionality from scratch.

    I know a few of the phpBB guys. if you have nifty patches, modules, etc to share with them, let me know. I’ll happily pass them along to the right people. They’ve come a *long* way in the last few years and they’re doing some great work.

    I do not have many suggestions for phpBB. If they can “steal” GMail’s rich editor functionality and make it like it is in GMail – switchable. I am kinda tired of explaining to clients how they have to split quote replying. When you hit ‘Quote’ in phpBB it puts [quote][/quote] tags around all the text and if you want to respond to questions you have to copy-paste these tags all the time which is not how this has to be in 2011 :) .
    I have to say that we are running an earlier version of phpBB either (may be things I say already done) because it requires new PHP version and we are running old WP and dotProject on the same server and never actually have time to look at it due to a workload :(
    So making a friendly post editor will be a must for me to see phpBB prosper. Another thing – email notification when I subscribed contains:

    Hello ivk,

    You are receiving this notification because you are watching the topic,
    “Post #11 – David Heinemeier Hansson at Startup School 08″ at “”. This
    topic has received a reply since your last visit. You can use the following
    link to view the replies made, no more notifications will be sent until you
    visit the topic.

    If you want to view the newest post made since your last visit, click the
    following link:
    http://XXX.com/viewtopic.php?f=18&t=314&p=10291&e=10291

    If you want to view the topic, click the following link:
    http://XXX.com/viewtopic.php?f=18&t=314

    If you want to view the forum, click the following link:
    http://XXX.com/viewforum.php?f=18

    If you no longer wish to watch this topic you can either click the
    “Unsubscribe topic” link found at the bottom of the topic above, or by
    clicking the following link:

    http://XXX.com/viewtopic.php?uid=53&f=18&t=314&unwatch=topic

    Often you can fit an actual post (if it is big could be first XX characters of it) instead of posting same text over and over where I have to click a link to read it anyway. Why is having the actual message inside the notification important for me? Because I “star” ones in GMail when I can’t or have no time to answer them. I can have five or six of these sitting in my Inbox and I have to open up a link every time I want to check what was that post I have not answered yet (subject of email does not help here much). I am not saying this must be done but at least would be nice to have it as an option. It also looks unwise to send the same email where forum_id and topic_id inside URLs are different with a lot of text which does not carry any info at all (“You are receiving this notification because you are watching blah blah …..)

    I’d *love* to see your changes and suggestions. I don’t use dotproject anymore but I lead web2project which is a fork that we started in 2007. In the time since, we’ve dropped 1/3 of the code, added nearly 500 unit tests (phpUnit), have a regular release cycle, configurable columns on the Project List screen, 20-100x performance throughout, and even somewhat regular code reviews. In fact, Sebastian Bergmann – of phpUnit – has led in a couple.

    It is good that you managed to separate and move forward when you realised you can do better. I have heard of web2project. I did not write about things I want to have in a post as I was afraid to make it so big that nobody will read it. I am writing in a style I would write todo notes for myself (skipping ‘would’ and ‘kind’ just add them when you read) :)

    1. Integrate forum or build one which is not worse than existing forums in functionality at least for end client. Apart of the things you said – common auth and permission set you can expand further by actually linking tasks to topics (projects to forums) and updating task logs automatically with link to a post. You can create a project wall (sorry Facebook) with all update links – forum posts in client and team forums, task log updates, hours worked. It will be lots of other things which such integration will reveal. From my point of view each project management system tries to invent a new way of communication completely forgetting about tried and true forum model which is good. They try to make it look like social network sites messaging components which is a big mistake from my point of view. Who said you should use the same format for work and leisure?

    Why phpBB? We created two modes for phpBB – one emulates uservoice.com in a forum created as a type ‘ideas’, another mode emulates 37signals Answers (or simple stackoverflow.com if you like) in a forum created as type ‘answers’. We are going to open source both soon. Imagine project management with forum with a portal for ideas your clients can post and vote with a portal for Q/A integrated into one platform and open sourced.

    2. There is a very cool thing called Mylyn. When I saw it working in Zend Studio (which is based on Eclipse) where it works too I was amazed. It remembers environment, files, functions, objects and it opens up all of them conveniently when you start a task. If you did not look at it – please read. The point is – there is a connector for Atlassian and FogBugz but there is no connector for dotProject. The one which will be able to login to dotProject database pull all your tasks to IDE and allow you to update dotProject task logs from IDE. It is not a big deal of time to build but it will be a brake through feature if you will market it wisely.

    - Of course, we have a clean upgrade process from dotproject to web2project.
    - We’ve already support turning urls into links within text – https://github.com/caseysoftware/web2project/blob/master/includes/main_functions.php#L1324

    I will be honest. I will upgrade 100% with features 1 and 2 implemented above and you will hear from us regularly from that point forward :) Otherwise – simply too busy. Life is short :)

    - One of the more useful things for my group has been the iCalendar output. Now you can subscribe to a calendar feed and all Tasks, Events, etc automatically can show up in your Outlook, Google, or Thunderbird calendar. Add On modules can add to it easily too.

    Again – just more proof all people do it differently. I just cannot think why I need a calendar.

    Stats from my own web2project (formerly dotproject) install going back to late 2003:
    - 168 projects, 1991 tasks, 13437 logs, 14240 hours, 2094 todo items (from the Todos Add On module)

    Impressive and good to know we are not the only ones using an unsexy system at such extent :)

    - My Favorite modules: TodoList (my Basecamp clone), Project Designer (from Pedro), and SmartSearch (also Pedro)

    Can you give me access (to some setup with read only access) with all these modules on just to have a look?

  3. Keith Casey says:

    I understand your perspective on Dependencies & Subprojects. It’s probably just the way I think. ;)

    I think the difference comes down to the work we do. I primarily work in a per-project space and it sounds like you’re on a product space.

    For the record.. I *hate* our Forums system. It still has a “how PHP was written in 2003″ perspective to it. Which – although it works – it is a hairy mess that is a pain to update. Most of our core modules have undergone major cleanup where we’ve eliminated 50% of the code in some cases and closed lots of bugs. But not the Forums. :(

    Within web2project, we now have a series of Authenticators which don’t handle user synchronization but just passing off the auth step to another system. You still have to have a user on both ends. WordPress and Drupal are on the list.. I think phpBB could be too.

    Next, *if* there’s a way we could interact with phpBB programmatically, I don’t see why we couldn’t have web2project create forums on its own. Even better, if there was a way we could define forum/permissions templates, we could let you define them in advance and then roll out automagically. Intruiging..

    On the “project wall” concept, I’ve been investigating an Activity Feed. I’ve been impressed with Assembla’s ongoing list of what is going on across the system and thought that it would be a good thing to emulate *and* probably to serve as the default destination page post-login. I think project-based color coding is a must but I think filtering – at both the Company and Project levels – would be powerful.

    We’ve been looking at ways to pull web2project functionality out of its web interface and into other things but I don’t know of anyone trying Mylyn specifically. Here’s our spec – http://wiki.web2project.net/index.php?title=Desktop_Client_Spec – Two of our guys – Trevor Morse and Benjamin Young (formerly of dotprojet) – are working on the API to make the whole process secure. If you have suggestions or tips there, I’m very happy to consider them for the list. :)

    I don’t have a demo set up with those modules but I’ll take care of one this week and set you up with access. :)

  4. Igor Kryltsov says:

    I think the difference comes down to the work we do. I primarily work in a per-project space and it sounds like you’re on a product space.

    Exactly. Projects are applications or major components inside a system for me and tasks are smaller parts of these.

    For the record.. I *hate* our Forums system. It still has a “how PHP was written in 2003″ perspective to it. Which – although it works – it is a hairy mess that is a pain to update. Most of our core modules have undergone major cleanup where we’ve eliminated 50% of the code in some cases and closed lots of bugs. But not the Forums. :(

    I was wrong saying it is better to integrate with external forum platform. May be it is not because admin part of phpBB is huge and complex (project management system will not need 80% of it) and different from your security concept. In any way you have a road map for a product which as a combination of where you want to move it which includes top wish list of your clients. If forum revamp was not on a list – does not make sense to add it now unless of course my post changed your point view.

    Within web2project, we now have a series of Authenticators which don’t handle user synchronization but just passing off the auth step to another system. You still have to have a user on both ends. WordPress and Drupal are on the list. I think phpBB could be too.

    Of course it can but again if it is your vision or wish of your clients. Right?

    Next, *if* there’s a way we could interact with phpBB programmatically, I don’t see why we couldn’t have web2project create forums on its own. Even better, if there was a way we could define forum/permissions templates, we could let you define them in advance and then roll out automagically. Intruiging.

    There are only three ways:
    - rewrite own module
    - integrate with existing forum
    - do nothing
    Decision needs to be taken by you as you know your client base. Do they ask for it? Will you be willing to provide single install script? Will they be willing to install two products if you won’t? There are lots of factors. If I would be you deciding to do a forum I will stop at this point and make a two column table with pros and cons. If it will be phpBB with complex and not totally hidden admin UI – client can easily mess around and brake web2project install and be disappointed with a product overall. Lots of arguments …

    On the “project wall” concept, I’ve been investigating an Activity Feed. I’ve been impressed with Assembla’s ongoing list of what is going on across the system and thought that it would be a good thing to emulate *and* probably to serve as the default destination page post-login. I think project-based color coding is a must but I think filtering – at both the Company and Project levels – would be powerful.

    Agree. I would also suggest making UI of the system cleaner and lighter in Basecamp or GitHub style. I looked at web2project UI and I like dotProject, far from perfect UI, more. I was always wondering why web designers starting a career building 1001 template for WordPress instead of taking Mantis, Bugzilla or web2Project and building a nice site and nice UI filling a portfolio with a system design thousands of people use and thousands of potential clients heard of … I had to do a UI design myself for our product to a point when a designer will need to cast shadows and redraw my designs from MS Visio to Illustrator or Photoshop allowing us to produce images out of it to construct pages. I had to do it because we could not find a UI designer. I uploaded a picture for you here. Top part is UI which was built to make system up and running very early and bottom part is my redesign. I think this is important for both product and marketing site. You can use MS Visio and then pass your new layouts to a person who can use something like this. Unfortunately I have no time but after I have done this for our system I feel I can do it for project management system too.
    Just browse these elements which are already in Adobe Illustrator and a designer can use and transform your vision into real UI designs.
    http://www.webalys.com/images/gui-design/preview-gui-1.png
    http://www.webalys.com/images/gui-design/preview-navigation.png
    http://www.webalys.com/images/gui-design/preview-windows.png
    I was talking to Vincent (framework author) but he was unfortunately also busy with own RoR project by the time I prepared my Visios

    We’ve been looking at ways to pull web2project functionality out of its web interface and into other things but I don’t know of anyone trying Mylyn specifically. Here’s our spec – http://wiki.web2project.net/index.php?title=Desktop_Client_Spec – Two of our guys – Trevor Morse and Benjamin Young (formerly of dotprojet) – are working on the API to make the whole process secure. If you have suggestions or tips there, I’m very happy to consider them for the list. :)

    If it is needed it is needed. However I do not understand how this ”Therefore, the goal of this effort is to build a simple user interface that allows for the everyday user to simply retrieve their assigned tasks and log time as needed.” leads to “be desktop-based, not a web site or a wrapper around a web site;”. Logical conclusion will be to build a simple client. Why web2Project cannot have a simple web version?
    As for “work on Android and/or iPhone/iPad devices” – still can be done via web. Recent articles I saw on this topic:
    http://37signals.com/svn/posts/2778-design-decisions-basecamp-mobile-ui
    http://37signals.com/svn/posts/2771-providing-great-user-experience-with-feedback
    Offline work. I think it is cool and hard to implement but already not needed :) At least for me and I have such rare moments offline and I know how to fill them :)

  5. Roland Haroutiounian says:

    Hi,

    Thanks a lot for this post. It’s been such a long time since I have wanted to find a detailed use cas of dotproject. What especially interested me was the way to use it with external applications which stores the notes on tasks.

    Personnally I’m a scientist and I work with an ELN (Electronic Laboratory Notebook). I wanted something to manage my projects and wanted to keep all the notes in my ELN , which is based on a wordpress blog, so that I use it as a paper-based notebook, keeping a default chronological view with categories and tags to manage my notes.

    Substituting the forum you talked about with a blog, I will have the perfect system.

  6. Igor Kryltsov says:

    Hi Roland,
    Glad to hear it helped you.
    Cheers