share
Super UserWhat open-source applications do you use for software development?
[+22] [41] George Edison
[2010-04-25 05:16:54]
[ open-source development ]
[ http://superuser.com/questions/134449] [DELETED]

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).

generally in "must-have" questions one places one's own answer in ...y'know... an answer. - quack quixote
If you want to make a list a programs, it has to be clear, with rules. Don't put your answer in your question, post it as actual answer, and only one program per answer. - Gnoupi
Also, rework the question, it's far too broad for now. "application you use for software development" is too wide if you start including Gimp or 7-zip. Because at that point, Firefox is helping development, a dual screen organizer would be helping, etc. Keep "software development" to a narrower place, or this question will end in a mess (and will get closed). - Gnoupi
If you don't narrow it, then it will be approximately the same as this other one, since most of the programs you can find there are helpful also to software development. - Gnoupi
Ok, reworded myself (feel free to edit or rollback), and put your answers to actual answers. Edit them to add more details if you need. - Gnoupi
should this be windows only? because much of my dev stack ships native on unix. - xenoterracide
@xeno - edited the question to make clear the fact that any OS goes. - Gnoupi
Ok I've been listing unix implementations separately because often apps that work nice on unix don't work so nice on windows in the same form. Often the windows ports are a completely separate project. - xenoterracide
@xeno such details are also relevant in the answers, don't hesitate to add such things. - Gnoupi
Thanks for fixing the question. - George Edison
Why is super-user more appropriate for this question than SO? - maayank
This question is IMHO a better fit for programmers.stackexchange.com - Ola Eld√ły
@DMA: Would it be possible to migrate it? - George Edison
[+24] [2010-04-25 08:18:02] xenoterracide

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/
[2] http://portableapps.com/apps/development/gvim_portable

You haven't done much C# development have you? MonoDevelop/VisualStudio are not easily replaced. - Evan Plaice
Nope... I don't code using proprietary platforms (I don't care what you say I think Mono is proprietary) - xenoterracide
1
[+21] [2010-04-25 08:15:07] xenoterracide

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/
[2] http://code.google.com/p/msysgit/

(4) I am not sure you can really claim that git is the best. Perhaps it is best for your needs, but that is a pretty subjective term. - tim
@tim: nope, git's better :P - Phoshi
(2) @Phoshi Perhaps it is, but my experience on Windows with git was, well, not good. - tim
last time I tried it msysgit was a lot better. although I'm sure development on windows is still strained... however. I'd like to state that, outside of gaming, my experiences with windows aren't good. Maybe an OS problem and not VCS. besides vanilla git doesn't run on windows. you have to use cygwin or msysgit and I mentioned that separately. - xenoterracide
Hmm, I use msysgit and it works fine for me... Better than SVN, anyway. - musicfreak
I use msysgit on windows. It is much more better than svn. - Vili
I like Git, but Mercurial grew on me a lot faster than Git did. First, Mecurial integrates directly with the file browser so you don't need to seek out good GUI tools to work with it. Second, I can't remember the last time I've had to look up a command for Mercurial. With git, I spend more time beating it into submission to get it to do what I want. It can handle revision control to a much finer detail than it's competitors but it comes at a cost. Either way, +1 because I use it a lot anyway. - Evan Plaice
Mercurial integrates with /what/ file browser? - xenoterracide
2
[+20] [2010-04-25 09:49:20] Peltier

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/

What would we do without gcc? - George Edison
3
[+18] [2010-04-26 16:15:32] heavyd

VirtualBox [1]

Virtualization is the only way to go about testing on several different operating systems or OS configurations.

[1] http://www.virtualbox.org/

Yup. I use VirtualBox alot! - George Edison
4
[+17] [2010-04-25 16:51:38] Jonno_FTW [ACCEPTED]

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/

NP++ = god send! - James.Elsey
I love it but it's windows only and I'm primarily a *nix user now. ;( - Evan Plaice
5
[+16] [2010-04-25 07:56:15] Mokubai

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/

6
[+14] [2010-04-25 06:57:22] Ivan Petrushev

Don't forget grep :)


7
[+12] [2010-04-25 07:37:05] DevSolar

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/
[2] http://stackoverflow.com/questions/1471226/most-tricky-useful-commands-for-gdb-debugger

8
[+12] [2010-04-26 21:19:01] tim

SVN and Tortoise


9
[+12] [2010-04-25 19:36:22] afrazier

Mercurial [1] via TortoiseHg [2] for revision control.

[1] http://mercurial.selenic.com/
[2] http://tortoisehg.bitbucket.org/

10
[+11] [2010-04-25 08:29:46] xenoterracide

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/

11
[+8] [2010-04-25 17:33:40] cschol

GNU Emacs [1]

[1] http://www.gnu.org/software/emacs/

12
[+7] [2010-04-25 07:37:41] xenoterracide

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/
[2] http://www.cpan.org/
[3] http://strawberryperl.com/
[4] http://search.cpan.org/dist/Task-Kensho/lib/Task/Kensho.pm

13
[+6] [2010-04-25 07:55:53] Ignacio Vazquez-Abrams

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/
[2] http://plugins.geany.org/

Geany++, it's pretty awesome. Lightweight yet powerful. - Felix
14
[+5] [2010-04-25 07:34:57] Gnoupi

MinGW [1]

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.

[1] http://www.mingw.org/

15
[+5] [2010-04-25 07:36:16] Gnoupi

Inno Setup [1] is a free installer for Windows programs.

[1] http://www.jrsoftware.org/isinfo.php

16
[+5] [2010-04-25 09:50:17] Peltier

ctags is awesome.


17
[+5] [2010-04-25 09:50:42] Peltier

cmake [1] is a pretty cool build system.

[1] http://www.cmake.org/

18
[+4] [2010-04-25 07:31:13] xenoterracide

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/

19
[+4] [2010-04-25 07:33:05] Gnoupi

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/

20
[+4] [2010-04-25 07:56:57] Ignacio Vazquez-Abrams

meld [1]. Not just a diff viewer, but also allows you to move/copy chunks back and forth.

[1] http://meld.sourceforge.net/

21
[+4] [2010-05-17 15:06:13] Nishi

WinSCP [1] for remote file management (FTP, SFTP)

[1] http://winscp.net/

22
[+3] [2010-04-25 07:59:11] Ignacio Vazquez-Abrams

libvirt [1] and KVM [2]. Because Wine is not quite Windows.

[1] http://libvirt.org/
[2] http://www.linux-kvm.org/

23
[+3] [2010-04-30 03:12:42] RCIX

Lua [1]. The best scripting language, bar none.

[1] http://www.lua.org

24
[+3] [2010-04-30 05:33:38] drewk

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/020107981X

vote up perl then ;) - xenoterracide
I already did! Up votes are free, no? - drewk
+1 for Python :) - Felix
(2) -1 This answer doesn't do justice for python. Why not just make it python or just upvote perl. IMHO, python kicks the pants off of perl in usability. - Evan Plaice
Python > Perl. Get over it. - Fake Name
@Evan and @Fake: Why the Perl hate folks? Why do you care if somebody gets things done with Perl? I think I was fully respectful to Python. Love the language. But I still get things done with Perl. Why hate Perl? - drewk
25
[+3] [2010-05-05 05:43:23] Vili

Netbeans [1] - I use it for php development.

You 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.

[1] http://netbeans.org

It also does python now... - Fake Name
26
[+2] [2010-04-25 09:08:16] matt wilkie

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.html
[2] http://webpages.charter.net/edreamleo/intro.html#clones-views
[3] http://webpages.charter.net/edreamleo/atShadow.html
[4] http://webpages.charter.net/edreamleo/intro.html#creating-external-files-from-outlines
[5] http://webpages.charter.net/edreamleo/testimonials.html#longer-quotes

27
[+2] [2010-04-25 07:57:56] Ignacio Vazquez-Abrams

crunchyfrog [1]. Handles quite a few database products, and one or two not-quite-databases.

[1] http://code.google.com/p/crunchyfrog/

What is a "not-quite-database", exactly? Everything on the features list looks like a database to me. - musicfreak
Perhaps I should have written "not-quite-RDBMS" instead. I was alluding to its LDAP support. - Ignacio Vazquez-Abrams
28
[+1] [2010-05-05 07:03:16] Little Bobby Tables

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/

29
[+1] [2010-05-08 19:40:17] earlNameless

Notepad2 [1]

[1] http://www.flos-freeware.ch/notepad2.html

30
[+1] [2010-04-30 03:16:40] Michael Todd

BugTracker .Net [1]

[1] http://ifdefined.com/bugtrackernet.html

31
[+1] [2010-04-27 14:19:10] rschuler

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/

32
[+1] [2010-04-26 17:37:35] Andrew Lewis

MonoDevelop [1] and MySql Workbench [2]

[1] http://monodevelop.com/
[2] http://wb.mysql.com/

(4) one app per post, please. please edit this post to remove one and post it separately. - quack quixote
33
[+1] [2010-04-26 21:16:31] tim

hudson [1] for CI build server

[1] http://hudson-ci.org/

34
[+1] [2010-07-29 06:37:22] Evan Plaice

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/280411

35
[+1] [2010-05-16 21:04:31] user37371

Aptana Studio

Get it from http://www.aptana.org/studio - very handy IDE for web and application development


36
[0] [2010-04-26 23:36:16] woodstock

I work with nano.


(2) One program per answer. Please edit this answer to keep only one, and post others as individual answers - Gnoupi
not to mention one of these was already posted. - xenoterracide
37
[0] [2010-05-08 20:22:57] Troggy

SharpDevelop (#develop) [1]

Decent open source tool for C# and vb.net development.

[1] http://www.icsharpcode.net/opensource/sd/

38
[0] [2010-05-15 15:39:09] Nishi

Bazaar [1] (distributed version control system) via TortoiseBzr.

[1] http://bazaar.canonical.com/en/

39
[0] [2010-05-15 15:49:52] Nishi

HeidiSQL [1] - fast desktop MySQL client

[1] http://www.heidisql.com/

40
[0] [2010-05-16 20:53:07] dag729

IDLE [1]

[1] http://docs.python.org/library/idle.html

41