Home > Computers & Technology > Software > Software & Web Development
Created on: November 02, 2008
Developing softwares is hard. Computing is about perfection, to which human is not used, as Fred Brooks put it. Therefore, powerful tools are vital for a good programmers: they improve productivity and reduce mistakes. Below are a short list of tools which I find useful.
First and foremost, a powerful shell. Let's face it: programmers are no "normal users" or "average users" or "noobs." Programmers are power users. Thus, there is no need to shy away from Command Line Interface. A powerful shell helps automate a whole host of things, and allows the programmers to concentrate on the project only. For example, back up the source, upgrade the system, etc. All of those jobs should not bother the programmers. Let the shell do it! I personally like BASH. In Windows, Cywin can provide a decent shell. PowerShell from Microsoft can also be used. Anyway, have a proper shell, and take full advantage of it.
Second, a source version control system. This is true for even one-person project. Sometimes, I desperately want to go back to a previous state of the source code. For example, after trying to implement some "cool" features, only to discover that it breaks the rest of the programs. The source version system would allow me to do that, automatically. In multi-programmer environment, the source version control system is vital. It allows many programmers to work on the project at the same time, as well as keep track of the change, and prevent conflicts. You cannot imagine how mad it is when two people try to fix the same bugs, and end up break it. I really like GIT, it is easy and fast. SVN and Subversion work very good as well. Do not, however, use the one from Microsoft. It is for manage very very large projects, like building bridge and the like. Furthermore, the open-sourced solutions work extremely well, even in corporate environment. Stick with them.
Thirdly, a scripting language. It is necessary to have something to take care of the compiling process, and I mean it. Doing it yourself will, sooner or later, drive you mad. Features from the Integrate Development Environment (IDE from now on) are never enough. Thus, you need scripts. This should be paired with yourself to maximize the automation. The scripts can be about checking out code, checking in stuffs, doing laundry stuffs, and the compiling process. You should have the a script to do everything from the source code to the end product (the installation files or CD). This saves a lot of time and effort. I really like
Below are the top articles rated and ranked by Helium members on:
Good tools for Software Developing
Helium Debate
Cast your vote!
Is Microsoft Internet Explorer 8's version targeting good or bad?
Click for your side.
Featured Partner
American Dystonia Society (ADS) is dedicated to advancing Dystonia research, promoting patient advocacy and increasing public awareness of this debilitating disease. Our top priority is to maximize delivery of donations and grants to fun...more