Question: I am setting up a Linux development machine ([Ubuntu](http://en.wikipedia.org/wiki/Ubuntu_(operating_system)) 9.0.x). 

I want to know the best development environment for a C++ developer on Ubuntu - giving my background (see below).

1. 5 years+ C++
2. 5 years Visual Studio
3. Not much experience using GNU tools ([GCC](http://en.wikipedia.org/wiki/GNU_Compiler_Collection), [GDB](http://en.wikipedia.org/wiki/GNU_Debugger), [make](http://en.wikipedia.org/wiki/Make_(software)), etc.)
4. 6 months or so of using [Emacs](http://en.wikipedia.org/wiki/Emacs) at university (about 8 years ago!) - I don't remember anything though ;)

I come from a Windows background so am more at ease with GUI than [CLI](http://en.wikipedia.org/wiki/Command-line_interface), although I expect to learn the CLI commands over time. I want to be effective and "hit the ground running" as it were, in terms of developing on Linux.

I am particular interested in tools that will make my life easier for:

1). project management 
2). build configuration via GUI (rather than makefile editing - at least for now). 
3). debugging IDE that allows me to set breakpoints and step in/out/over 

It would be useful if the IDE suggested has a GUI to ease my transition to Linux, but is also customisable (e.g. can accept hand crafted edited make files etc. - when I have learnt how to create them). This will allow me to have more control over the build process later on.

Which set of tools would you recommend in order for me to achieve the maximum productivity in the minimum amount of time on my Ubuntu desktop?

So:
Which application (IDE) offers:
 (i). easiest transition from Visual Studio (and ideally can use manully crafted make files)
 (ii). extensive debugging capability akin to Visual Studio

for the latest Ubuntu (9.0.x) desktop OS?

Answer: 
As for C++ developing I'd choose [Qt Creator IDE](http://qt.nokia.com/products/developer-tools) for easiest migrating from Visual Studio. I believe it can cover all your needs.
You can use Glade Interface designer (glade.gnome.org) for interface design.

BOUML for UML modelling & project management 

You can always use eclipse or netbeans for c++ development on linux.

Though I recommend Eclipse, it would automatically generate makefiles, debugging is very easy & you can configure your code repositories within the IDE.