Developer tools - a short list

IT News & Other

In order to be efficient, any developer need to use good tools. In this article you can find a short list of tools used in programming, especially web programming.

Basiclly in a developing process at least this types of tools are used: an IDE, version controll software, relational database management system (RDBMS), a webserver (for the web application only) and of course beside the tools the programming/scripting language.


This types of tools depends of project complexity, the quality standard required by client, and so on. So for complex projects the developer also can use tools like Continuous integration (CI), unit testing software and automated testing tools. For each type of tool there are many alternatives, both paid and free, below is a list with some of them.

1. IDE (Integrated development environment) tools
Free alternatives could be:
- NetNEans a fully-featured Java IDE written completely in Java, with many modules available
- Eclipse s a multi-language Integrated development environment (IDE) comprising a base workspace and an extensible plug-in

Paid alternatives can be:

- PhpStorm - Smart PHP IDE with refactorings, code completion, on-the-fly code analysis and coding productivity orientation.

- PhpED is the Integrated Development Environment for PHP (PHP IDE), HTML, CSS, XML, SMARTY, XHTML and other.


2. Version Control tools

- SVN (Apache Subversion) be easy to use in Windows by using TortoiseSVN shell interface

- GIT - distributed version control system designed to handle everything from small to very large projects with speed and efficiency.


3. Databases

Databases can be classfisied by data model that are using like: Relational model, Object model, Document model and so on. The most popular is relational model. The dominant database language is the standard SQL for the relational model, and as database example we can enumerate: MySQL, Microsoft SQL Server, Oracle database.

The next generation of post-relational databases after 2000s became known as NoSQL databases, including fast key-value stores and document-oriented databases. XML databases are a type of structured document-oriented database that allows querying based on XML document attributes.


4. Webservers

In order to develop web application you need a webserver installed locally, The webserver in most of the time depends of programming tehnology used for developing the application. For example if you use ASP.NET you will need IIS server, if you develop in PHP you will need Apache webserver, or if you want to develop in Java you might use GlassFish webserver


5. Test-driven development (TDD)

Is related to the tests first,  programming after concepts. An suppose that devoper to write test for a particular piece of code and then start to implement it in order to pass the tests. There are many tools depends of technology used to develop application that might be used to run the unit test: in PHP can be used PHPUnit, in Java can be used JUnit and so on.


6. Behavior driven development (BDD)

Behaviour driven development it focus on how application should behave considering a specific scenario. All test all made based on stories, each story can have one or multiple scenarios. Stories are written in a readable language so and a non-technical person can understand and make the stories.


7. Continuous integration (CI)

When developer works in team they need extra tools in order to prevent some issues that could occour when they release the code to certain environments. A continuous integration tool help you to make automated build, automated test and deploys. A example of CI tool could be: Jenkins



Add comment