Managing Projects with WebCollab
Installation is extremely simple and took me less than ten minutes. I used my distro's vanilla installations of Apache, PHP and MySQL, which worked perfectly. Linux beginners will find the most difficult part of the install to be creating a new user in MySQL that has the appropriate access to the database. Aside from that, this is definitely something that a person who is just beginning to experiment with Linux can install without complication.
There are two methods of installation, one using the command line and the other through a Web-based setup routine. I chose the latter. For the sake of an example, I use collab.example.com here.
Download and unzip the tarball into your Web directory:
# tar -zxvf WebCollab-1.62.tar.gz
Change the permissions on the main config file:
# cd WebCollab-1.62/config # chmod 666 config.php
Point a Web browser to collab.example.com/WebCollab-1.62/setup.php. This guides you through the automated portion of the setup, which includes creating an SQL database and running a table creation script, as well as setting four environment variables in the relevant config.php file.
Restore the permissions on the config file:
# chmod 664 config.php
A user name and password are required to access any part of the software and determine which projects can and cannot be viewed and/or edited. As with most other systems, only administrative users have the ability to add or remove accounts. A user also can be designated as a project or task owner, giving that account the ability to perform administrative tasks on that particular project or task.
Groups also play an important role in task designation. Projects can be assigned by the owner to a user or to an entire group. Subgroups or task groups can then be used to further delegate tasks within a given project.
The access control is fairly comprehensive and provides a lot of flexibility for administrators and project owners. For example, I frequently have projects with other engineers, which required the ability of all parties to edit tasks, mark jobs complete and change due dates. In these cases, I assign everyone in my group edit rights to the project. I also have projects that I allow clients to view, and in these cases, I want to restrict them to read-only. I also do not want clients to be able to view any project other than their own. Both of these details easily are achieved by checking or unchecking the All users can view or Anyone in the user group can edit buttons.
WebCollab is ideal for projects that can be broken down into a series of tasks with brief, one or two sentence, descriptions. Each project and task has a description field, start date, end date, priority and assigned group. When a task is created for a given project, it is treated as a subproject, with the same information fields and editable data as its parent job. This portion of the software is similar to most versions of popular to-do lists, but it adds the flexibility to be used as a quick checklist or a fairly in-depth breakdown of a task with running commentary.
The project and task views are where the software really shines. As mentioned before, each has its own file upload section and message board. This is where the collaborative aspects of WebCollab really set it apart from a traditional to-do list. Users can ask each other questions, make comments, upload relevant documents and much more. This is what separate WebCollab from task management applications and makes it more of a project-oriented groupware. I find the message board element of WebCollab to make things more interactive and thus more interesting for everyone involved.
August 27, 2015
12:00 PM CDT
Free to Linux Journal readers.Register Now!
- Three More Lessons
- Django Models and Migrations
- August 2015 Issue of Linux Journal: Programming
- Hacking a Safe with Bash
- The Controversy Behind Canonical's Intellectual Property Policy
- Secure Server Deployments in Hostile Territory, Part II
- Shashlik - a Tasty New Android Simulator
- Huge Package Overhaul for Debian and Ubuntu
- Embed Linux in Monitoring and Control Systems
- KDE Reveals Plasma Mobile