Free web-based software for project management

project managementAfter being part of a new team that works with outsourcing team with dynamic allocation of resources (developers) without using a software to plan and schedule the project, I’m now interested in experimenting some free web-based software for project management [project magement wiki].

As expected, the awesome wikipedia contains a page about the software used for project management, as well as a comparison of the  project management software.

Among the open source, web-based, here is the list of the ones that seem more insteresting, with some notes. I’m making this list in order to having them read to try.

See in this article how to manage developers

Zend framework scaffolding CRUD libraries (for CMS and admin areas)

I’ve recently made extensible Zend Framework libraries for admin scaffolding [click to go to the page with details and download link], that is the automatic creation of CRUD forms. Differently from Symfony admin generator, Code Igniter and CakePHP, on ZF there is nothing similar already made 🙁
EDIT: Of course there are other frameworks to scaffold admin areas (Yii, ATK…) but in case you want to use Zend these libraries might be the best option to save time.

My libraries create forms by automatic reading of table structure (fields and type), with extra customization support. The code is strong object oriented, so extensible and re-usable. There are helpers to make dropdown and ajax components for foreign key table fields (in order to make forms for 1-N and N-N table relationships).

Before putting them on a public SVN and writing the documentation, I prefer to test more and improve them. However, I’ll send the code to whom may be already interested.

Details of the components

  • Controller (subclass of Zend_Controller_Action) with CRUD (create, read, update, delete) actions already made. When creating a CRUD form, it’s enough to extend that abstract  CRUD controller, then implement to methods that return the dependent form and model.
  • Models
  • Views (not strongly necessary as if not existing the controller prints the default content, but suggested)
  • Forms: automatically generated by reading metadata, with validation created depending on the field type (e.g: required values for not null values, integer validation when the field is INT, maxlengtt checks etc…), datepicker in case of timestamps etc….
    Forms extensible and customizable.
  • Order and filter form (for listing action) working with URL string (so order and filters are kept during CRUD actions)
  • Various interfaces for each component to keep the code OO and understand better errors.
  • Various Helpers
  • Other stuff …

When creating a new CRUD form, the components must be extended, then customised. I’ve used my libs to generate two different admin areas and it doesn’t take long by copying and pasting the components already made, anywayin the future I’ll probably think of a Zend_tool extension to generate them easier.

Preview:

CRUD forms


The power of the Regular expression on the web

Regular Expression are Swiss-knife tools developers should know, extremely useful for  web-purposes and unavoidable when dealing with content scraping.
A single call of a preg_match_all with a medium complex regular expression could save hundres of LOC and time as well as obtaining much more maintainable code.

There  are advanced features like subpatterns and conditional expressions. They might be useful to extract some patterns, task  otherwise not easily feasible.

Pattern Syntax guide – php.net

Useful links about regular expressions

Zend tool not working after Netbeans 6.9 setup

Netbeans 6.9 modifies the  zend framework tool and adds an additional class in order to use it directly from the IDE.

The problem is that Netbeans changes the common INI file of the tool (.zf.ini placed inside the user folder). Without specifying additional parameters, the tool does not work anymore from the external command line.

My quick solution was temporarily moving the INI file, however it’s possible to specify additional parameters to use another config file.

Details:
the command

zf create project ...

returned the error

prompt>zf create project
Warning: include_once(NetBeansCommandsProvider.php): failed to open stream: 
No such file or directory in C:wampwwwZendFramework-1.10.6libraryZendLoader.php on line 146
PHP Warning:  include_once(): Failed opening 'NetBeansCommandsProvider.php' for inclusion )
include_path='C:wampwwwZendFramework.10.6library;.;C:wampbinphpphp5.3.0PEARpear')
 in :wampwwwZendFramework-1.10.6libraryZendLoader.php on line 146

Chrome and Internet Explorer ignore Windows hosts file

I’ve recently had some issue with local websites (in addition to ” localhost”->127.0.0.1). Chrome and Internet Explorer didn’t use the hosts file to solve the other local addresses (e.g: “zendapp.localhost”->127.0.0.1) I’ve previously set.

I’ve had this problem on Windows Seven. After some googling its seems that the issue is not OS-dependent but it’s a default setting, that developers do not like 🙂

Solution: open Internet Explorer, got to “Internet options” -> “Connection” -> “Local area network (LAN)” and untick “Automatic configuration”