Hi,

I’m back again. This time basically writing to keep it as quick reference for myself and posting it as blog if it could help others.

This is basically a list of some tools we generally use for development/Project planning. There are few tools that developers/Project manager use so frequently tht we do not need  list. However there are few tools that we use occationally and when we actually need them, we forget the best tool to meet the requiremetns. So this is an attempt t list down important tools for development/project management purpose.

I’ll keep the list updated and if someone finds I miss any important tool, please leave a comment so that I can add that in the list.

Please note: Only open source or free softwares qualify for this list. If there is not open source solution in any category, I’ll clearly mention it. However I’ll simply neglect paid softwares, if there is even a single decent opensource solution is available in the category.

Please note: This article is yet not finished. I’ll be adding more softwares here. Please write comments if you want to add any other software in list.

I’m adding them in following categories:

  1. IDE
  2. Text Editors
  3. Servers
  4. Frameworks
  5. Project Planning

Integrated Development Environment (IDE)

IDE are basically used to make development work faster. An IDE is not only an editor for editing programs but contain lot of other tools to make development work faster by doing lot of dirty work.

However if you are a student, learning basics, please do not use IDE as it will do all dirty work and you will not get a chance to learn the basics, which are very important.

I generally work on PHP and Java so there are only two IDE that qualify in this list. Please note this list is also a personal preference for me.

  1. Eclipse: Eclipse is available as different package for different language. For PHP, PHP Eclipse (Eclipse with PDT plugin) is one of the most common PHP IDE. For Java/J2EE, separate eclipse platform are available to download.
  2. Netbeans: Netbeans is as powerful as eclipse. Both are open source too. So it is actually a personal preference to select any one of them. I personally prefer Netbeans and it is installed on my personal laptop but Eclipse is little more popular. In offices, chances are, you will find Eclipse. Same is the case for me too and eclipse is installed on my PC in the office.

There are few more IDE, which I use occationally.

  1. Aptana: Aptana is basically eclipes with few more pre-installed pluging. It is more suitable static websites. I assum it as free replacement of dreamweaver, even though it misses many dramweaver features, it is perfect if integrated browser is not must for you.
  2. Appcelerator: This is latest version of Aptana, I guess. However I didn’t tested it a lot. Will give it a try while making next static website.

Editors

IDEs are good for prefessional who need to deliver the work quickly and need extended development tools. However these extended tools comes at some cost. IDEs are generally very heavy and can make your system considerabilly slow, specially when you have low RAM and working with many softwares and servers in parallel.

We generally use less than 10% of IDE features but pay system speed for 100% features. Most of times, we use IDE just for syntex hignlighting. If syntex highlighting is your only purpose of using IDE, better use editors. Notepad is a basic text editor which do not support syntex highlighting so it is not included in my list. Below are my preferred text editors.

  1. Kate: Well I listed it here but actually this do not belong to this list. No doubt kate is my most preferred editor but it is available only for Linux and this list is basically for windows softwares.
    I really miss kate on windows. There is a project “KDE for windows” which claims running kate on windows is possible through it but I never tested KDE for Windows. So sorry to list it here but I could not resist.
  2. NotePad++: This is my second preferred editor and most preferred on windows. This support syntax highlighting for many languages. A powerful yet light weighted editor. I presonally do more than 50% of my development work on NotePad++.

I don’t consider any other editor. Kate on linux and Notepad++ on windows. However if you do not like above two or for some reason not able to install the, you may also consider jEdit or Notepad2. There are many other free text editors are available so again, it a matter of personal choise.

Database Designer

For different softwares, we use different databases. However I’m concentrating only on free/open source so two most common database that qualify for this list are MySQL and Derby. MySQL is commonly used with PHP and derby with Java. For MySQL, there are two options; MySQL Workbench and PHPmyAdmin. PHPmyAdmin is quick and wit MySQL Workbench, its easy to view ER diagrams.

I personally prefer to design all database in MySQL WorkBench and once programming starts, PHP my Admin to manage database.

For derby, while working on Java, I prefer integrated DB editor of Netbeans.

Issue Tracking

There are many Issue Tracking softwares.

BugZilla: Concentrating on free solutions, most trusted is bugzilla. However it is written in perl and installing it on my office server is not possible for me. If you can install BugZilla, it is best.

Mantis: In my current office, I’m interested only in PHP/MySQL based Issue tracking system. Mantis is best in this category.

Trac: It do not fit for me as it is not written in PHP but if you can go through it, it is not only an issue tracking system but best wiki based project management tool under free/open source category.

Office Suite

Well office suites is not dedicated for project planning/programming but they are so common that I need to include them here. First step of any project is Planning which require writing Functional Test Cases (FTC), Software Requirement Specifications (SRS), making some prosentation, some quick planing in spreadsheets. So office suite is an important part of project planning.

MS Office: I’m writing this list for MS Windows and as far as I understand, nearly every company that purchase MS Windows also purchase MS Office. So MS Office is my first choise here even if it is not free. With latest version, MS Office also include MS One Note, which really make it easy to group many information together. Office suite is the only exception where I prefer paid software over free. However this is not always true.

Open Office: In my previous company, I was working on Linux and MS Office is not available for Linux. There, Open Office is best choise. However even on windows, you may go for Open Office, if MS Office do not sutes to your budget.

Libre Office: Open office was designed by Sun microsystems. When Oracle take over Sun Microsystems, open source community was suspecious about great open source project by Sun. Most important were MySQL, Open Office and Java. However Oracle maintained and further developed them as open source. After Oracle over take Sun Microsystems, an open source community took open office and start developing it further as Libra Office.

So Open Office and Libra Office are same, just maintained by two different communities.

I still trust Open Office due to its maturity but even if Oracle decides to make it payable, we will have another option Libra Office.

Wire Frames

Once basic SRS/FTC of any project are ready, we need wireframes to get them approved by clients. In this category, I’ve only one prefernce; Pencil. Pencil is firefox addon. To install it, you need to have firefox but I guess most developers have all popular browsers.

It generally have all HTML form components but when you first install it, you will feel it have limited controls. Don’t worry, with time, you will have your own library. Work with it for sometime and your will find its pretty easy and able to fulfil your all wire frames requirements.

Gantt Chart

Gantt chart is one of the most important tool for project managers. With that, it become very easy to plan task and resources. Gantt Project is free and powerful software to fulfil all  those requirements. It is not as powerful as other payable softwares but as far as I know, its best in free/open source category.