Stack OverflowEssential Programming Tools
[+124] [122] Mat
[2008-08-05 12:36:44]
[ tools development polls ]

We all have different needs due to the platform and/or stack we work with, and simple programmer preference is famous for starting religious wars.

However, in each area there is usually a set of tools that get recommended over and over, even though people might individually prefer one member over the others. Unix text mode code editors, for example, is an extremely contentious issue but no one can deny that most people will choose either vi or emacs.

So, without criticising the alternatives, recommend me developement tools. Text editors for different platforms, version control systems, bug trackers, database engines, templating systems... whatever! What do you enjoy using every day?

I'll edit together the answers as a list of highly recommended tools in each area. Please don't start discussing which is the best ;)

It's an interesting question but it's a bit broad. I might be a desktop developmer in VB6, you might be a PHP/Javascript web dev, and him over there might be doing embedded systems in C. Not to mention telecoms in Erlang, iPhone dev in whatever the heck it is, etc etc - MarkJ
I thought we already had a site for subjective questions. - rubayeet
@rubayeet, I believe this question predates that site. - Constantin
@Constantin - agreed, but to my knowledge subjective questions were always discouraged here. - rubayeet
[+122] [2008-08-05 12:46:06] maclema

If you're doing a lot of Javascript, the FireBug plugin for Firefox is a must!

(1) I would recommend it for HTML/CSS work also. - James McMahon
(1) It's great for jQuery! - Michael Robinson
Note that Chrome's developer tools are very similar to firebug. - Tikhon Jelvis
@Tikhon also known as Webkit's Web Inspector, it's still quite different from firebug having its advantages but mostly people prefer firebug because of inspector's disadvantages. - Cawas
[+83] [2008-08-05 12:38:18] GateKiller

Stack Overflow [1]


(1) Your tool should be on top of the list.. - Syed Tayyab Ali
(8) -1 for abject crony-ism... - MagicAndi
(10) +1 for abject cronyism. - Rob Lachlan
+1 for posting as link =p - Garet Claborn
+2 for awesomeness and -1 for lack of unicorns. - Cawas
[+64] [2008-08-05 12:45:21] Marek Grzenkowicz

The Scott Hanselman's 2007 Ultimate Developer and Power Users Tool List for Windows [1] may give you some ideas.


[+64] [2008-08-14 19:55:34] farmerchris

Another one-up for SysInternals. You can mount their tool repository as a shared drive:


I just copy over all the files into C:\Program Files\Bin, then add that to my PATH.

Wow, thanks for sharing this - Jonas Gulle
These tools are unbelievably useful on Windows. I didn't realise you could see them with a plain old UNC path! - j_random_hacker
I literally LIVE off of procmon.exe some days. Never thought I'd learn as much as that little beauty has taught me... :D. - KSimons
[+30] [2008-08-05 12:43:27] Karl Seguin


  1. Subversion or Git, Tortoise
  2. Mantis
  3. 3SqlLite (I use it almost exclusively for prototypes and demos)
  4. MySQL - For the price, it's stupidly amazing

For me (keeping in mind that I mostly do .NET):

  1. VS.NET is far beyond any other editor
  2. Resharper is a must-have add-in for .NET programmers
  3. Reflector to look inside dlls
  4. SnippetCompiler
  5. My text editor of choice is EditPadPro
  6. IntelliJ for my Java (Resharper and Intellij are so alike it's easy to switch between the two)
  7. Red-Gate SQL [Data] Compare
  8. DotTrace .NET profiler
  9. jProbe Java profiler
  10. Reflector (.NET decompiler)
  11. Cavaj (Java decompiler)
  12. NAnt/Ant, Cruisecontrol

+1 for resharper, I feel like I'm banging rocks together without it - mgroves
[+26] [2008-08-31 11:30:26] Matthew Watson

The only must have is version control and file backup It doesn't really matter which version control you use as long as you have some way to track what changes have been made to the system.

[+23] [2008-08-05 12:39:35] John Downey

I could probably not live without WinMerge [1] on Windows. It is a GUI diff/merging program that can generate standard unified diff patches. It also has a couple of cool plugins that let you diff zip files and MS Office documents.


WinMerge is truly the next best thing if you don't want to pay for Beyond Compare. - Chris Noe
KDiff3 is also excellent, but it only works with text files. - Hosam Aly
[+19] [2008-09-17 11:37:47] Epaga

Can't believe I'm seeing Trac ( so seldomly, it's such a great tool: combines and integrates Wiki, Bug Tracking, SVN, and Project Planning, plus it has a bazillion plugins:

+1 for trac-hacks - Cawas
I've worked at 2 places that used Trac, and it was indeed very cool. Looking back, the popularity of Trac seems to have followed the rise and fall of SVN. There's a TracMercurial plugin, but from reading the page (even today) it doesn't seem terribly performant or featureful. Every day I do things with 'hg' (the command-line tool) that I don't see how to do with TracMercurial, and I don't think that was true with SVN when I used Trac. I think there's a future for Trac, if (and only if) they can make it work great with DVCSs. - Ken
[+12] [2008-08-05 13:02:19] Brett Veenstra

.NET Dev:

[+11] [2008-08-18 18:35:08] Steven Dick

Continuous build: Hudson [1]

Seriously, the guys who put Hudson together did a great job. It's a single WAR (Java Web ARchive) file that contains an embedded web server and allows you to setup a continuous build server with a single command.

The web interface is great with good feedback through the use of AJAX.

This thing puts a smile on developers' faces when I show it to them. It's that good.

Issue tracking: Jira [2]

The best issue tracking tool I've used in 15 years. Developers and managers like it. Web-based with a clean interface.


I was on a project that used Hudson and I thought it was great. - Nosredna
[+11] [2008-08-05 13:04:58] Mat

IDEs and Text Editors

Visual Studio



Source Control




Bug/Issue Tracking



Not going to list a ton of sites but just going to go with the suggestion of The Internet. And, really, that one applies to most things in modern life and not just software development.

(Going to have trouble keeping up! Will do linking later.)

I find your lack of faith in vim/emacs disturbing :) - ldigas
If you use Trac ( you should have a look at Agilo for Scrum ( It's not only useful when you are doing Scrum but is also providing a nice interface. - Doro
Sorry the right link for Agilo is: - Doro
[+10] [2008-08-05 13:01:05] happyappa

+1 for PLSQL Developer. awesome mature well-though tool for experts. dont want to miss it. - mhaller
+1 for Fiddler. - David Young
[+9] [2008-08-14 19:33:53] Wilka

I find TestDriven.NET [1] indispensable when unit testing with .NET. It's by far the best test running tool I've used. It's great when you just need to run a single test in the VS debugger. Just right click on the method in the IDE and choose " Test with -> debugger [2]".


FYI -- you can also run single tests with the 'Test View' that comes with Visual Studio. Just right click on a test in that view and select 'Debug selection' or 'Run selection' - Dan Esparza
[+8] [2008-08-05 12:59:10] UberAlex

For Java, there are loads of great tools for development.

A lot of people are still holdouts and use text editors like Vim. Anecdotally, they are power users who use things like search/replace and the macro tools to do tasks transparently. [1]

There are two great IDEs for Java: Eclipse [2], and Sun's NetBeans [3]. Both tools are particularly hot for doing J2EE development, since they can set up and run your tomcat and glassfish servers and manage deployment.

I'v never managed to get TDD going for myself, but I think a lot of people will like JUnit [4].

One thing I don't like in most IDEs is their XML support. For that I use the Exchanger [5] XML editor. It's a pity it hasn't been updated in a while.

There is, imo, no excuse for not having some sort of version management. Currently, I use Subversion. On OSX, I really like Version [6], and windows has unparalleled integration with TortoiseSVN [7].

I think the future is probably in Distributed Version control, so something like Git might be worth reading up on (guide here) [8]

Virtual Machines can make a big difference to testing stuff, since they can let you break things or set up distributed systems locally. We use Xen [9] for our servers, and I am trying Virtualbox [10] for local testing on my mac.

Finally, I'd say that the GNU utils (grep, tail, pipe, sort, etc) are indispensable for diagnosing problems. I'd recommend looking at things like cygwin [11] or the windows powershell to try and get them if you're in windows.


[+8] [2008-08-05 12:39:32] Adhip Gupta

NUnit [1] for .NET Unit Test Cases. NAnt [2] for .NET automated builds.

Will update the post as soon as I can think of other required tools!


[+7] [2008-08-05 13:03:33] PabloG

ClipX [1] for multiple clipboard support in any program, not only inside Visual Studio

SlickRun [2] for quick command execution

Find and Run Robot [3] for fast desktop/start menu search or filesystem search with Locate32 plugin

AutoHotkey [4] for keyboard remappings, with my own keyboard mappings,

F4+F4 To close any window

Alt+Alt To open Find and Run Robot process list (similar to Alt+Tab but with filters)

Alt+1 Send active window to half up screen (useful for comparisons in one monitor)

Alt+2 Send active window to half down screen

Alt+0 Switch active window to monitor 1-2


MouseGestures [5] (AutoHotkey script) to enable mouse gestures across applications


I'm crazy of FARR too. - Emmanuel Caradec
[+7] [2008-08-27 20:28:59] Doug

Linux (Gnome):
Meld [1] is a great tool that I've been enjoying recently.

From their homepage:
Meld is a visual diff and merge tool. You can compare two or three files and edit them in place (diffs update dynamically). You can compare two or three folders and launch file comparisons. You can browse and view a working copy from popular version control systems such such as CVS, Subversion, Bazaar-ng and Mercurial.


meld is excellent, i'm eagerly awaiting a windows port someday - Matt Joiner
[+7] [2008-09-18 13:55:37] slicedlime

If you're coding with Visual Studio, Visual Assist X [1] is one of the best addons you could ever find.


[+6] [2008-08-31 17:59:08] Steve Steiner

Procexp and Procmon [1] are critical sysinternals tools for diagnosing tricky configuration problems with assemblies, dlls, registry entries, and the file system. If you are a windows dev and the sysinternal tools are not part of your toolbox and you are cheating yourself.

Fxcop [2] for managed code and Prefast [3] for VC++ code (particularly with SAL annotations) are incredibly helpful for setting a standard code quality bar and keeping it across a team. If your app requires it this can be critical for writing secure code.

VMware and Hyper-V are incredibly useful for setting up and isolating difficult bugs.

Obviously the VS debugger (disclosure .. I worked on the vs debugger). With the VS debugger there are data visualizers that can be incredibly helpful for specifc tasks. Josh Smith's "Mole" [4] for debugging WPF is a good example and I believe there is a 3rd party visualizer for datasets that is much better then the default one.

For deep debugging of the clr you need to use SOS [5], which has support in VS, but is often used from windbg.

For trapping production problems and debugging offline you should implement minidump support [6] in your app.


Could you edit your answer to highlight product names? - J.F. Sebastian
[+5] [2008-08-28 13:40:18] Joseph Pecoraro

Some Mac Applications for Web Development.

If there is no $/€ amount listed assume the application is free. My "must haves" are always the top listed one in the group (with the exception of Coda because I haven't purchased it so I don't know). The rest listed are all other very popular applications used by others.

Local Server:






General Development Tools:

Source Control:


Windows Emulators: (you should get these for cheaper almost always)

Utilities: (for everyday things to improve productivity)

Gosh, I know I missed a bunch but I think this is a good foundation for listing applications. To go along with this you really need links to documentation websites, etc. but that is really outside the bounds of the question.

I hope you bought a mac!


[+5] [2008-08-05 13:01:13] Matthew Schinckel

MacOS X.

[+5] [2008-08-05 12:45:35] Lasse V. Karlsen

These are the ones I use every day, on Windows:

Source Control: Subversion [1], TortoiseSVN [2], VisualSVN [3]
Command Prompt Replacement: Take Command [4]
Build Control: FinalBuilder [5]
Text Editor: Notepad++ [6]
File/Folder Comparison Tool: Beyond Compare 3 [7]
IDE: Visual Studio 2005/2008 [8]
Scripting: Python [9], Komodo [10]


[+5] [2008-09-18 14:09:23] kms

Topics in Pragmatic Programmer [1] related to tools:

Grab the book for the details.


[+5] [2008-09-18 13:54:51] Serhat Özgel


alt text

[+4] [2009-01-15 10:12:30] Guillaume

A brain, paper and pen

[+4] [2008-08-14 20:51:38] Pascal

For Regular Expressions:


[+4] [2008-08-28 13:05:08] KiwiBastard

.NET related:

Delphi related:

Xcode related:



[+4] [2008-09-02 15:49:33] community_owned

Even when working all day long in Visual Studio, emacs is a must-have, if for no other reason than its macros.

You can configure VS to easily edit the file in Emacs -- just add emacsclientw.exe to Tools->External Tools. I've used this for years, but as of v2008, VS will frequently ignore on-disk changes and it's FRUSTRATING. Has anyone else seen this problem, and have any way to fix it? - NVRAM
[+4] [2008-09-13 07:37:52] Sébastien RoccaSerra

Here's what I use everyday:

Here's what I use often:

There is probably better out there, but that's what we use:


[+3] [2008-08-05 12:57:55] Antonio Haley

To help with traversing through code in a command line environment ctags and cscope make life a lot easier.

[+3] [2011-03-11 05:27:22] Alan Peabody

One or more large whiteboards and camera to snapshot ideas before you move on to the next.

[+2] [2008-09-24 11:45:03] Odilon Redo

First, find a good multi-file text editor / IDE and stick with it, learn all you can about it and extend it to your needs. Choose carefully because moving is tough once you've become familiar with one. Key features to look for:

As my main text editor, I love TextPad [1] but it costs a little and doesn't have proper Unicode support. Notepad++ is a good and portable alternative. I use Notepad2 [2] to open single text files because it's very fast and Unicode-smart.

Aptana [3] is quite wonderful for all your web development needs - and is available on Linux too. Especially good if you find code auto-completion useful or are used to Eclipse.

Use Firefox and learn to use Firebug [4]. It will make your web development life so much easier. Oh, and don't forget to get Firebug Lite [5] as a bookmarklet for getting some of those features with IE, Opera, etc. Install the Web Developer [6] extension too which has useful "view cookies", "CSS off", "images off" features etc.

To manage your own development, I like DevProject Manager [7]. Others have covered source control in detail elsewhere on this page, but I like Subversion [8].

A good diff utility is vital, especially for managing releases across servers. WinMerge [9] is great and is available as a Portable App. The best thing about it is that you can navigate directories for changes (like Windows Explorer with diffs visible for all the files - changed/same/new).

Filezilla [10] is a good and portable FTP client, or you could try the FireFTP [11] Firefox extension.

I'd also recommend the following handy utilities:

Certain little tools make everything that little bit easier (all these are XP/Vista):


[+2] [2008-09-30 05:08:57] Mark A. Nicolosi

From a Gnome user's perspective...


[+2] [2008-08-05 12:50:50] Dan Herbert

Personally, I prefer the following tools, depending on the language I'm developing for:

[+2] [2008-08-05 12:53:58] Nick Berardi

I have actually put together a list of my favorite tools on my blog:

Then there is always Scott's list, which is way more complete than mine:

[+2] [2008-08-06 13:56:04] Zack Peterson

Similar question: What are your must-have tools? [1]


[+2] [2008-09-11 01:22:33] sherbang

Git [1] for version control. Works great by itself, or as a svn client with git-svn.


[+2] [2008-08-28 13:10:22] aku

I like these free utilities:


[+2] [2008-08-14 20:09:56] Leonardo

My list of daily used applications:

They are not necessarily the best in their fields, but as they say: "pick one tool, take the time to learn it, and squeeze it".

Ok, nobody says that.


[+1] [2008-08-29 05:58:41] Jiaaro

now we know that stack overflow needs a merge feature ;)

[+1] [2008-08-31 18:12:30] Roddy

Well, I know that this is unlikely to be believed, but that's fine by me:-

The C++Builder IDE from Codegear [1] gives me such a great head-start on developing Windows GUI applications that I'm almost unwilling to recommend it in case my competitors catch on.

It's not perfect, but the combination of C++, two-way visual RAD design, a well tried and tested application framework (VCL) and slews of third-party components (basically, all Delphi components since ~1995) hit a sweet spot for me.

Otherwise, +1 for for the usual suspects: SVN, TortoiseSVN, Fogbugz, Winmerge.


[+1] [2008-08-28 13:05:29] jinsungy

Two apps I use frequently are..

-SQL Prompt from Red-Gate software (Intellisense for SQL)


[+1] [2008-08-28 13:05:59] community_owned

MZ Tools and Smart Indenter for Excel development...even if it's not a "proper" language it's nice to write nice code in it!

[+1] [2008-08-28 13:03:23] Craig

[+1] [2008-08-28 13:06:13] Niyaz

It depends.

You should consider answering the following questions:

  1. What development do you do?
  2. What kind of projects are you working on?
  3. Do you need some design tools?
  4. What is your budget?
  5. What is your system configuration?

[+1] [2008-08-28 13:06:31] Rob Cooper

[+1] [2008-09-11 01:30:23] sherbang

A good REPL [1]:
When programming in python I live in ipython [2] and am constantly testing things out next to my editor.
When programming in Java beanshell [3] gets plenty of use.
When I write PHP I miss having an easy shell to work in.
Edit, save, run, debug, edit takes a lot longer.


[+1] [2008-09-15 13:30:54] schwerwolf

I write code in Perl and C.

gdb - for C debugging
perl - for perl debugging

vim - I try to never use the mouse. Some prefer Emacs. It's a matter of tradition for me. I typically use vim when I want to focus on a task that I'm familiar with. I use Visual Studio when I absolutely need the context-completion and object-browsing.
MS VS2005 - Microsoft has the best context-completion and object-browsing I've ever used.
Viemu - Sometimes I want vim in visual studio- this is the only tool I know of that provides this capability. However, I've realized that one of the reasons I use vim is to decrease the amount of screen clutter. Viemu doesn't help with that much.

kdiff3 - I don't know how I'd survive without a decent merging and diffing tool. This does the job reasonably well. It's gui-based but you can construct merges using keyboard shortcuts. That's a boon.

MediaWiki - If it's not in the source code, we use a wiki. This is a good solution for non-deliverable document control.

Bug Tracking:
Trac - for small shops, this integrates bug tracking and revision control reasonable well.

Revision Control:
Subversion - Very well supported in the industry. Almost as ubiquitous as CVS. The only feature it's missing is merge-tracking. I understand that's a feature planned for a future version.

[+1] [2008-08-05 13:21:22] Kevin
  1. ClipX [1]
  2. Crimson Editor [2]
  3. allSnap [3]
  4. FileZilla [4]
  5. Firebug
  6. Photoshop
  7. Colour Spy [5]

[+1] [2008-08-05 13:22:18] Mat

I figured that since there are lots of good answers here that I would make my own answer, mark it as The Answer, and edit it up with everyones suggestions. All fine except I can't accept my own answer... Not really sure what to do about that.

Summarize the answer in the question text like… did - David Schmitt
[+1] [2008-08-17 17:15:16] Robin Robinson

[+1] [2008-08-14 19:57:19] Patrik

These are the tools I use every day.

  1. Visual Studio 2008
  2. Visual Studio Team System 2008 Team Explorer
  3. SQL Server 2005
  4. WIX
  5. Sandcastle
  6. Notepad++
  7. "The Internets"

Where can I find these "Internets"? - spoulson
I'll take two :) - ldigas
[+1] [2008-10-07 23:14:08] AtliB

Some of my favorites:

[+1] [2008-09-25 13:16:36] heisen

On Linux, C, C++, Java

[+1] [2008-09-26 16:15:04] community_owned

Expresso is good but RegexBuddy is much more usable.

Regex Buddy Link [1]


[+1] [2008-10-24 11:09:15] yeradis

Hello and good day for everyone

If you plan to play with XML i recommend the use of XMLSpy Enterprise Edition
If you plan to play with databases i recommend the use o AquaFold Aqua Data Studio
if you plan to play with UML i recommend you to use Enterprise Architect
If you plan to play with java i recommend you the use Netbeans
If you plan to play with OS compatibility a i recommend you to use VirtualBox
If you plan to play with php i recommend you to use Delphi for php
if you plan to play with the web i recommend you to use Google Chrome
If you plan to play with .NET framework i recommend you to use Sharpdevelop , Visual Studio better

Thats all With no more.... bye bye

[+1] [2008-12-07 21:35:08] kushin

Thanks, a lot of nice tools listed here. Time to try some of them. Here are what I use currently.

[+1] [2008-12-07 22:16:49] nzpcmad

For .Net, look here in SO [1]:


For .Java, look here in SO [15]:



[+1] [2008-12-18 16:59:49] Patrick Smacchia - NDepend dev

NDepend [1]: It is a static code analyzer that will let you explore your code base, and write quality and design rules.

See all feature of NDepend here
- Code Query Language (CQL)
- Compare Builds
- 82 code metrics
- Manage Complexity and Dependencies
- Detect Dependency Cycles
- Harness Test Coverage Data
- Enforce Immutability and Purity
- Warnings about the health of your Build Process
- Generate custom report from your Build Process
- Diagrams
- Facilities to cope with real-world environment


[+1] [2008-12-18 17:20:19] community_owned

One tool that I always miss on Windows is a good window manager. I suppose this is one reason why Windows (and Mac) developers tend to like IDEs better than old Unix folks.

On Linux I prefer Blackbox -- it's features fit my work style, and it tends to stay out of my way.

I used to have a tabbed file manager with built in editor based on SciTE/Scintilla (which is a great tool..) I wish I could find the name!! - Garet Claborn
[+1] [2008-09-20 05:07:21] Terhorst

My recommendations aren't specifically programming tools, but they help organize my workspace while I'm getting things done.

WinSplit Revolution [1] -- I like to be able to quickly maximize, tile, and organize my windows with a quick keystroke or two. I threw together a little script to do the same thing in Linux because I could find nothing like it. I can't stand working for long on computers that don't have something like this now.

VirtuaWin [2] -- Virtual desktops for Windows that actually work half-decently. Not an incredibly slow piece of junk like Microsoft's official powertoy.

Launchy [3] -- Launch programs via keyboard. I use Gnome Do [4] on Linux, but it's not as good.


just downloaded WinSplit and it's awesome. - Sylverdrag
[+1] [2008-09-15 22:07:30] community_owned

On Linux(Ubuntu):

On Windows(Vista):


[+1] [2009-01-15 10:12:05] bowsie

For development process tools we use some of the Atlassian products (FishEye repository browsing, Crucible peer reviewing tool, Confluence wiki) and Hudson - which (echoing sentiments above) is on of the greatest development aids I have ever used.

JIRA is the best issue management tool I have ever used, but am still a fan of XPlanner in certain cases.

The more they integrate the better.

[+1] [2009-06-20 23:37:11] opensas

ide: visual studio / netbeans (zip file!, almost portable)

editor: notepad++ (portable)

file comparison: winmerge (portable)

source control: subversion, tortoise

ticket control: redmine

file manager: free commander (portable)

explorer: IE, FF (portable), chrome (portable)

FF plugins: firebug, web developer, xmarks

sites: STACKOVERFLOW!!!, gotapi

miscelaneous: launchy (can't live without it!)

virtualization: virtual box (I have a machine image for every environment)

office: openoffice (portable)

lamp stack: xammp (portable!)

disk usage: windirstat (portable), scanner (portable)

pdf viewer: foxit (portable), sumatrapdf (portable)

uncompressor: 7-zip portable

M$ sql comparison tool: sql delta

M$ sql management: visual studio sql manager


mysql management: phpmyadmin, manager provided with mysql

as you may have noticed, I have a special predilection for portable applications...

[0] [2009-06-20 23:52:25] mnuzzo

I use the Eclipse IDE for Java development with the Subclipse plug-in for revision control of group projects and SVN as the actual revision control program. For C/C++ and python development on Linux I prefer to use gedit. For Ruby development on any platform and C/C++ and Python development on Windows, I prefer to use Scite.

[0] [2009-07-16 07:09:19] zeroDivisible

When I am learning algorithms / data structures / programming there are two tools, which are invaluable to me - Microsoft Excel and Idle (Python GUI).

You may laugh - but proving simple things in Excel and using Idle as pimped calculator really speeds my learning process.

Honestly I'm not a big fan of Excel, but it does have various uses as a programmers tool. Quickly seeing equations work out on data is nice. You may find this interesting. Crazy. - Garet Claborn
[0] [2010-04-06 17:00:55] Rob Tanzola

Wireshark [1] when you need to know what is actually on the wire. Lots of filtering options and support for a large number of protocols.


[0] [2010-04-06 17:21:17] IAbstract

I've dropped all the eye candy. I've decided to rough it for a while.

[0] [2010-07-21 14:43:48] Vanwaril

I don't see many Unix-platform Development tools here besides the standard vim, emacs, shell utilities, versioning, etc.

Besides those, there are a few really powerful tools out there:

[0] [2011-03-11 05:00:20] Garet Claborn

[0] [2009-01-15 10:28:32] Adam Hawes

[0] [2009-02-01 08:02:31] unigogo

The 1st step to design the web page is to design layout. The layout generators [1] will save your time.


[0] [2009-02-08 21:40:42] tbone

LLBLGen for code generation, it is brilliant.

[0] [2009-06-17 16:59:11] Kevin Horgan

Source Control : Subversion

Bug tracking : FogBugz

Text Editing : Ultra Edit and vi

SQL Editor : Aqua Data Studio

Cocoa/ Objective C : XCode

FTP : FileZilla

Browser : Safari / Opera

...and a decent spreadsheet package (Excel) to match and concatenate delimited lists of data together and parse as SQL commands...:)

[0] [2008-09-16 03:51:06] Blinky

Cygwin or, if in Vista Ultimate, the Unix Subsystem. Mostly for the purpose of having access to grep.

[0] [2008-09-16 03:56:18] community_owned

VIM, putty, firebug, firefox.

[0] [2008-09-17 06:43:56] Dara Kong

Here's what I use daily for console development on a windows machine.

Source Control: TortoiseSVN

IDE: Visual Studio 2005

IDE Addin: Visual Assist X

Diff/Merge: Beyond Compare

Wiki: Trac

[0] [2008-09-18 14:35:30] Bergeroy

For PHP development, I use NuSphere PhpED [1].


[0] [2008-09-18 14:40:43] Steve Moyer

An automated build and test environment ... For Java, I use

Everything is built, deployed and tested upon every checkin!

[0] [2008-09-20 04:56:07] Andy Lester

[0] [2008-09-22 01:12:24] Sam Stokes

[0] [2008-09-17 12:13:48] community_owned

2 spring to mind for me... PSPad [1] for editing and DevProject Manager [2] for storing code snippets


[0] [2008-09-24 21:54:53] torial

Agent Ransack is a tool I use for searching many files for contents in Windows. It is fast, and powerful.

[0] [2008-09-25 11:40:34] Keltia

I'm mostly developing on FreeBSD but use Mac OS X as my main desktop so I use TextMate [1] for text editing and various UNIX utilities coming from MacPorts [2]. I use Fusion [3] for creating & managing FreeBSD VMs. My version control system of choice is Mercurial [4], a decentralized vcs. Scripting is done in Ruby [5].

Being a Ruby fan, I'd recommend Redmine [6] for bug tracking/releasing/forge. It is evolving quite rapidly and has the same feature set as Trac.


[0] [2008-09-25 12:22:03] Dror Helper

When Developing software for Linux I discovered something shocking: There is no such thing as "Essential" tool. you can write code using simple text editor and debug the program by writing logs. And your understanding of the program would probably increase.

However since most of use need to maximize our output in order to create value to our companies every tool that its cost is less then the time it saves should be considered essential.

[0] [2009-01-14 05:18:55] bo

Miranda IM

[0] [2009-01-15 09:49:08] Sam

My current development tool list:

  • Visual studio 2008
  • Resharper
  • Powershell
  • SQL 2005
  • Firefox + Firebug
  • Google

  • 87
    [0] [2008-12-15 02:54:59] community_owned

    UltraEdit for ASCII editing

    MyEclipseIDE, VS2005

    JUnit, Ant, Subversion & TortoiseSVN

    Sun Glassfish Server


    PuTTY, FileZilla

    Newsgator for RSS reeds

    Fiddler for HTTP debugging

    I also use Sun's VirtualBox for having different developer setups (java, .NET) without cramming everything into one.

    [0] [2008-11-30 04:52:24] Software Monkey

    Shameless self plug: I also find my own RefactorBuddy [1] invaluable.

    And without reservation, ProGuard [2] Java code obfuscator/shrinker.


    [0] [2008-09-26 16:23:31] Marcin

    As I do all my programming these days as just noodling around, I only use Squeak for stuff, and if I need to achieve anything it will usually involve cygwin commandline tools or Xemacs for text processing.

    A sensible alternative for all of those might be something like bigloo + xemacs.

    [0] [2008-09-25 15:03:15] FrankS

    Best Regular Expression Editor I know for Windows is Expresso [1]. It has a designer and even more important, an automated analyzer, that can easily be used for documentation of complex regexp snytax.

    For merging I also use SourceGear DiffMerge [2]. And the rest of the tools includes a good Text Editor and a good IDE.


    [0] [2008-10-10 12:33:45] thijs

    I'd say something like VMWare or Virtual PC would be a good start. Although it isn't as fast as raw hardware you'll gain time when you want to start clean or when you want to try out something new. Also switching between projects with different tools (versions of visual studio, source control, frameworks, factories & generators) is much faster!

    [0] [2008-10-06 12:30:42] Caroline Orr

    I'm very happy with Subversion + Trac for integrated source code control, repository browser, issue tracker and wiki. I run it on an Apache web server which also provides the authentication mechanism. Trac is very easy to set up and use.

    [0] [2008-08-14 19:49:36] mabwi

    MySQL Workbench is pretty amazing. It's a way to set up your tables/and stuff visually, produce pretty charts to tape to your wall, and it has a nice export tool, for full create scripts, and will also read previous exports to create an ALTER script based on Diffs.

    [0] [2008-08-27 20:21:17] John Channing

    I am a huge fan of Powershell [1]. Don't be fooled by the administrator tools credentials, if you do development in .Net or want a OO scripting language on your Windows box that puts the UNIX equivalents to shame, this is it. I also use GVim [2] and Notepad++ [3] on a daily basis.


    [0] [2008-08-05 13:08:57] Bernard

    I personally just bought a copy of SlickEdit [1]. Great editor (vim emulation + integrated IDE features = yes please!), expensive, can be kinda clunky. Beyond Compare [2] is a great diff tool. As far as version control, I like Git [3], but SVN [4] is great and widespread. I need a good shell, and fish [5] is my favourite.


    [0] [2008-08-06 14:01:09] community_owned

    File/Folder comparison: Beyond Compare [1] (not free). I used WinMerge years ago but it didn't have folder comparisons at the time.


    [0] [2008-08-06 14:03:33] Dan

    If you are using Visual studio, you have to get Reshaper

    Visual studio is essentially an incomplete product without it. I cannont stess this enough.

    [0] [2008-08-06 14:10:38] graham.reeds

    Want: Visual Studio 2005 Subversion NSIS

    Have: Visual C++ 6 PVCS 5 InstallShield 5.5

    Yes, the average age of my development tools is 14 years...

    You poor bastard. - TraumaPony
    [0] [2008-08-06 14:22:58] Matthew Ruston

    IDE: Oracle JDeveloper [1]

    It was essentially forced upon me by my job, but now I adore it. It's my first stop for Java/JSP/JSF work (it can also do PHP with a plugin). The zero-configuration embedded application server is also quite awesome.

    Also, another vote for Beyond Compare [2]. I just discovered it a few weeks ago when Jeff Atwood blogged about it.


    [0] [2008-08-09 18:47:20] Gerald Bortis

    WinMerge [1] for diff/merge and TortoiseSVN [2] for CM are the first things I install after Eclipse.


    [0] [2008-08-05 12:45:49] saniul

    Bash [1], sed [2], awk [3] for little shell scripting


    [0] [2008-08-05 12:46:41] Ronnie

    Beyond Compare is essential for comparisons of files, folders local or remote (ftp). It is awesome!

    Check it out at

    [0] [2008-09-15 14:20:25] Cory Engebretson

    For a good list of available tools, check out Scott Hanselman's recommendations. [1]

    In practice I don't see how you could really use all of those tools well. Here is a pared down list of what I use in my 2 separate development environments since I split my time roughly in half between C# and Python. About half of these tools are free.

    Missing Tools


    [0] [2008-09-15 14:42:34] sleep-er

    kdiff3 - works in linux and windows

    [0] [2008-09-15 14:43:30] sleep-er

    trac - a great way to view your svn tree + wiki + bug tracking

    [0] [2008-09-15 15:14:45] community_owned

    Windows XP and later:

    Programmer's Editor:

    On Windows XP and later, I recommend TextPad. It is an excellent low-cost editor, which supports multiple language configurations and good but limited integration with 3rd party tools

    I also use UltraEdit-32 from IDM Computer Solutions. It is not as good for multi-language development, but it supports editing files accessible with FTP.

    UNIX/Linux remote sessions: puTTY is an excellent free program for this.

    [0] [2008-09-13 04:04:42] Crippeoblade

    rssbandit - rss reader

    trayit [1] - for minimizing windows to tray. Hate having too many on taskbar


    [0] [2008-09-13 06:17:22] khebbie

    For .Net:

    [0] [2008-09-04 01:17:49] Frank

    I am a big fan of xplorer2 [1], it makes navigating the file system more programmer friendly. I am sure everyone will agree that using the search capability in Windows XP is infuriating; Xplorer2 allows you to search across directories and inside files, although not quite grep it is very useful. It comes with a nice lightweight replacement of notepad.


    [0] [2008-09-07 01:00:03] Tomas Kohl

    Eclipse PDT for PHP development on Linux.

    [0] [2008-09-07 02:03:07] Robert

    Of the tools I have seen on the list that haven't been mentioned one of my favorites is "Dave's Quick Search Deskbar" which can be found at it's ability to use switched shortcuts for things like MSDN and the MS Knowledgebase Q articles are outstanding. There are probably 30 of the shortcuts I use constantly when programming and well over 200 odd searches ranging from FedEx Tracking number search.

    For quick and dirty UI prototypes I have found I am using the Pencil Firefox add on which is a handy SVG Image editor. There are enough stock UI widgets built in I can make an interface in 3 or 4 minutes to send off as a .PNG for a decent approximation. Pencil can be found at Pencil Homepage [1]


    [0] [2008-09-08 06:24:30] Geir-Tore Lindsve

    In addition to many of the above, I'm a big fan of MaxiVista [1]. I use it with two laptops each with an external monitor, and uses it in two scenarios: 1. Extending the screen so that I can use four monitors simultaneously, or 2. Control the secondary computer with the same keyboard/mouse as I use on my primary computer just by moving the cursor over to the next monitor.


    [0] [2008-09-08 06:37:53] Sara Chipps

    REsharper Paint.NET Fiddler Notepad++

    are my main goto's

    [0] [2008-09-09 13:48:23] Stradas

    While programming I use snagit and evernote.

    Snagit [1] is great for screen prints. You can set it up to hot-key captures into a stack of screen captures with a name that counts up. I like to use them to keep a chronology of runs of some of my output. (Techsmith also makes Camtasia studio. A must have for demos.)

    Evernote [2] is a great notepad program that creates a continuous tape of just about anything. I paste code into it all the time. It has a nice little search filter. It is pretty cool to grab a copy of the website you are developing each time you change it. Great way to show changes without much work.


    [0] [2008-09-09 13:54:55] Nick Fortescue

    I'd second IntelliJ IDEA as a Java IDE. I keep on trying others but going back to IDEA. Built in refactoring, almost psychic code completion, good debugging, good integration with almost every popular tool, and usability which has clearly been thought about.

    [0] [2008-09-11 01:04:31] stevechol

    For the Mac:


    [0] [2008-09-11 01:21:00] sherbang

    GVim [1] - I've tried to use other editors and larger IDEs and such, and keep coming back to good old gvim.


    [0] [2008-08-28 13:06:07] Thomas Owens

    Environments: Eclipse (C/C++, Java, PHP, Ruby, Rails), EiffelStudio (Eiffel), Visual Studio (.NET), Expression Studio (.NET design)

    Text Editors: jEdit

    Shells: Cygwin, PowerShell, Unix command line tools for Windows

    Compilers: MinGW (Windows, C/C++)

    Version Control: TortoiseSVN (SVN), TortoiseCVS (CVS)

    Mathematics: R (statistics), Octave, Maxima, Singular CAS (still comparing the functionality of the last 3...I'll probably choose 1)

    Art: GIMP, Inkscape (Scalable Vector Graphics)

    [0] [2008-08-28 13:32:18] Adam Haile

    Slick Edit Gadgets [1] are a great addon to VS...I particularly like the line count. And they are free! The full versions I nice too, but may not be worth the cost for everyone.

    VSWindowManager [2] is a great tool for keeping window "Profiles" in Visual Studio. I use it all the time for switching between full window text editing and the usual window with Solution Explorer, Errors, Output, etc.

    VisualSVN [3] For VS Subversion integration...if you use VS and work in a subversion environment, this is hands down the best $50 you can spend. The time and sanity saved is worth every penny. I even bought it for work myself because they were too cheap to get it for me...I like it that much.


    [0] [2008-08-28 14:20:29] JosephStyons

    There are many, but there are some that I find myself installing before I even get started:

    I have found Copernic [1] to be much better than Windows Live Search, even under Vista.

    If you have > 1 monitor, then Ultramon [2] is indispensable.

    In Firefox, Mouse Gestures [3].


    [0] [2008-08-28 14:22:06] JosephStyons

    There are many, but there are some that I find myself installing before I even get started:

    I have found Copernic [1] to be much better than Windows Live Search, even under Vista.

    If you have > 1 monitor, then Ultramon [2] is indispensable.

    In Firefox, Mouse Gestures [3].