tags:

views:

480

answers:

19

Is there any list of software that you recommend that increases a developer's productivity? Not necessarily programming software but organizers, planners, etc.

For eg. I just found this fences software to group desktop icons.

+2  A: 

I like Expresso. It is a regex tool that makes working with regex easier.

N/B: I do not mean coffee! I mean the software tool :)

Phil
Actually, I almost read "Espresso". And actually, that's the only which makes me as being a developer more productive.
BalusC
I use RegexCoach, but definitely - a regex tool to test is a good thing to have if you're working with them.
OMG Ponies
Online version of Regex Builder is called Rubular, and help me a lot
Vestel
+1  A: 

I find Mind Mapping useful. MindMapper is the one I have and know best, but there are many others.

Helps me organize my thoughts about a problem.

Tim Pietzcker
that has a little hard learning curve
Shawn Mclean
+2  A: 

Evernote for a mind dump application and Remember the Milk for a task list. Also, to daily improve your general computer productivity I highly recommend going to Lifehacker.

Blake Blackwell
+4  A: 

Take a look at How do you organize your work? question. There is a list of programs helping to organize your every day tasks.

Ivan Nevostruev
A: 

I really like fogbugz I use it at work and the free startup/student edition for my private projects.

Klok is another tool i use to manage my time

Aaron
A: 

Mind42 is an excellent online mind mapping tool.

Shailesh Kumar
+3  A: 

Big list of online prodctivity tools. I recomend reading a book The Productive Programmer by Neal Ford.

cetnar
+1 for The Productive Programmer. Definitely a must read in my opinion. Great book
JamesEggers
I'm sorry, but a productivity book needs by done in comic-book style with lots of big pictures and simple lessons - that tomb of text is quite intimidating. :-)
Frank Krueger
+2  A: 

Here is a very nice list of tools.

I give many thanks to Scott Hanselman for creating this list.

http://www.hanselman.com/blog/ScottHanselmans2009UltimateDeveloperAndPowerUsersToolListForWindows.aspx

David Basarab
+1  A: 

I use Pomodoro Technique: http://www.pomodorotechnique.com/

There's a desktop app for it written in Air but I hate Air because of perfomance. So I've written my own simple timer for it :)

valya
A: 

The tool that most improves my productivity is the desktop trash can.

... i.e. putting away all the distracting stuff, working on what I need to and deleting the rest.

cartoonfox
A: 

If you want efficiency then you want "best practices" and then you ask which tools support these practices.

For example, having a bug-tracker/todo list saves a LOT of time. So there's trac, basecamp, github, fogbugz and... they're a dime a dozen really, I prefer Trac myself.

Version control saves time, distributed version control saves the most time. So try git, bazaar, or mercurial.

Unit testing saves time. Believe it or not. It saves time in the long run, so use whichever xUnit framework to save time.

Gantt charts DO NOT SAVE TIME on projects with less than 10 people. I know, I've dealt with them a lot. So look out for MS Project, or GtkGantt or Kivio or whatever.

One thing to keep in mind with this list, to save time you need to invest some time to learn the tools. So always weigh in whether the tool proliferation is worth it.

Hope that helps, it took me a while to learn these things.

hendrixski
Gantt charts *may* save much time, and a lot as long as there is more than 3 developers and some kind of limited resource(s). Base the chart on the limited resources and you are able to maximize the use of these.
daramarak
@daramarakYes, the cost/benefit analysis on Gantt charts only makes sense once you have enough developers, and fixed milestones/timelines. Then you maximize the work being done by each developer. But if you only have 3 developers then I'm sorry bu you're going to spend more time on drafting the Gantt chart than you can gain from from it. I'd say it's closer to 10 developers before Gantt makes economic sense.
hendrixski
A: 

I found some good ideas in Neal Ford's The Productive Programmer

MakoCSH
A: 

Gnome-Do, and I guess by extension Quicksilver. I haven't used Quicksilver so I can't comment on it's usefulness.

It hooks into everything and minimizes the cost of a context switch, when you need to do some task in another program.

For example looking something up on google becomes as simple as typing "Win+space searchterm enter" from any window.

EmFi
+1  A: 

Best file manager for programmers still is Total Commander. And I switched to Mac long time ago. I do miss it.

neoneye
+9  A: 

Sometimes the lack of software increases productivity. Close any browser tabs containing Google Reader, Reddit, Digg, Slashdot, and close any IRC sessions. Productivity increases tenfold. ;-)

a paid nerd
Pull out the wireless cards and network cables too. Or, live in my neighborhood and use DSL from SBC, which is efectively the same thing.
brian d foy
+1 That is probably the best advice here.
daramarak
A: 

I use emacs and org-mode in a GTD style, it gives me an overview of my tasks, and lets me consider the code rather than remembering the N tasks that i'll have to do during the day.

Also, the browser is a double edged sword, it might be that shutting down the browser after each search will make you think before you surf.

daramarak
A: 

For non-programming related, check out "everything" http://www.voidtools.com/ for extremely fast file searching on windows. It handles regex's as well. I hotkey it to ctrl-alt-f, and i never have to click to find files again, or remember an entire file name for that matter.

If your using visual studio for c++ or c, check out visual assist X from whole tomato. Where intellisense fails, vax usually can figure out whats happening.

Jasper
A: 

On a Mac, software such as SelfControl is good if you're tempted to visit non-work related websites.

philfreo
A: 

Although you may be asking for software for yourself, I've found that the best way to handle this was to let team members choose their own software, operating system, and so on. As long as their choices didn't affect the rest of the team (such as needing a certain editor, etc), they are free to use whatever makes them productive.

As a corollary to that, I try to not let any tool decide the process. When the tool decides how you do things instead of the other way around, you have problems.

I'm mostly a toolsmith, so I end up automating most of any process. Since I also create the tools, I can change the process as it evolves.

brian d foy