Figured this question would have a happier life here than on SO.
So, what open-source applications does everyone use in the development of software?
This may include for example IDEs and version control, editors, but not a bittorrent client or Internet browser which are more general purpose (even if some can help with development). There is no limitation on operating system.
Only one program per answer (preferably add a description, not only a link).
Don't post the same program twice (check the list before posting another answer).
Vim [1] Best vi clone there is (and imo text editor) and more than adequate replacement for any IDE. Also available in portable [2] edition
[1] http://www.vim.org/Git [1] The best version control system. msysgit [2] listed separately as it it provides far more features needed in windows than just git.
[1] http://git-scm.com/gcc [1] The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, and Ada, as well as libraries for these languages
[1] http://gcc.gnu.org/VirtualBox [1]
Virtualization is the only way to go about testing on several different operating systems or OS configurations.
[1] http://www.virtualbox.org/Notepad++ [1]: a plaintext editor for windows.
It has syntax highlighting for a lot of programming languages along with a lot of plugins for formatting all the way up to FTP clients. Even allows you to define your own keyboard shortcuts on top of the existing ones (which aren't that comprehensive).
[1] http://notepad-plus.sourceforge.net/Eclipse [1] is an awesome free IDE with a plugin system that means that one minute I can be writing some test code in Python and the next switch to Java or C++ via MinGW that someone else linked.
[1] http://www.eclipse.org/Don't forget grep
:)
The one without peer.
GDB [1].
(Check this SO question [2] for some GDB features you haven't used yet.)
[1] http://www.gnu.org/software/gdb/SVN and Tortoise
Mercurial [1] via TortoiseHg [2] for revision control.
[1] http://mercurial.selenic.com/PostgreSQL [1] The most powerful open source RDBMS. It has features that I can develop with that no other FOSS database can do.
[1] http://www.postgresql.org/Perl [1] and cpan [2] Great language and a huge collection of libraries and apps implemented in it that are freely distributable. If you're on Windows use Strawberry Perl [3] just for a Note the best of the best CPAN modules are listed on Task::Kensho [4] including more than a few that I don't think should be listed separate for development
[1] http://www.perl.org/geany [1] and its many plugins [2], particularly geanyvc. Great for when you need to switch languages quickly and often.
[1] http://www.geany.org/MinGW [1]
[1] http://www.mingw.org/MinGW, a contraction of "Minimalist GNU for Windows", is a port of the GNU Compiler Collection (GCC), and GNU Binutils, for use in the development of native Microsoft Windows applications.
ctags is awesome.
msysgit [1] it contains a perfectly good unix shell (bash) and familiar programs like vim 7, coreutils and openssh. Plus I need git itself. windows only.
[1] http://code.google.com/p/msysgit/Code::Blocks [1] is a cross-platform IDE built around wxWidgets, designed to be extensible and configurable. Runs on Windows and Linux.
[1] http://www.codeblocks.org/meld [1]. Not just a diff viewer, but also allows you to move/copy chunks back and forth.
[1] http://meld.sourceforge.net/libvirt [1] and KVM [2]. Because Wine is not quite Windows.
[1] http://libvirt.org/Perl was taken :-(
But Python is a close second. Very fast (faster than Perl mostly), full support for math classes, regex almost as good as Perl, understandable syntax, goto toolbox.
Awk is a close tie. Great regex and the best book ever written [1] by the authors of the language.
[1] http://rads.stackoverflow.com/amzn/click/020107981XNetbeans [1] - I use it for php development.
[1] http://netbeans.orgYou get all the tools you need to create professional desktop, enterprise, web, and mobile applications with the Java language, as well as C/C++, PHP, JavaScript, Groovy, and Ruby. It easy to install and use straight out of the box and runs on many operating systems including Windows, Linux, Mac OS X and Solaris.
I like the Leo Outlining Editor [1], though I'm still a newbie with it. I love how Leo allows me to use similar thoughts/concepts/patterns/snippets in many places while only writing it once [2]. Even more intriguing, Leo allows me to re-organize someone else's work in a way that matches my thinking without (necessarily) changing their organization using a feature called @shadow [3] applied to external files [4]. It wasn't these cool and irreplaceable features which led me to Leo though, I learned of those later. It was these words [5] which got me interested enough in Leo to play with it in the first place.
[1] http://webpages.charter.net/edreamleo/front.htmlcrunchyfrog [1]. Handles quite a few database products, and one or two not-quite-databases.
[1] http://code.google.com/p/crunchyfrog/Since that the question was about tools rather than languages, and Emacs was taken, I have to anser Graphviz [1] - Because when developing you have to draw diagrams often, and there is no reason to do so manually.
[1] http://www.graphviz.org/WiX [1] is an open source installer builder. Working with it is just like working with the rest of my project code (edit, compile, link, test). It is just another project inside Visual Studio the final .msi is constructed every time I hit the build button.
[1] http://wix.sourceforge.net/gedit
Like Notepad++ for *nix but without the clutter. It also easy to extend using either standard bash scripting or python scripts.
Note: if you think gedit sucks because it's slow to load, disable the 'file browser' plug-in. It's a known issue [1].
[1] https://bugs.launchpad.net/ubuntu/+source/gedit/+bug/280411Aptana Studio
Get it from http://www.aptana.org/studio - very handy IDE for web and application development
I work with nano.
Decent open source tool for C# and vb.net development.
[1] http://www.icsharpcode.net/opensource/sd/Bazaar [1] (distributed version control system) via TortoiseBzr.
[1] http://bazaar.canonical.com/en/