Slashdot Mirror


What Free IDE Do You Use?

postermmxvicom writes "I program only occasionally and mostly for personal interest. I went to update my favorite free IDE, Dev C++, yesterday and noticed that it had not been updated since 2005! I went looking for other free IDEs and came across Code::Blocks and Visual Studio Express. I work from a Windows machine, use C++, and make mostly console apps; but have written a few Windows apps and D3D or OpenGL apps. I wanted to know what free IDEs you use and recommend. What do you like about them? What features do they lack? What about them irritate you (and what do you do to work around these annoyances)? For instance, when I used Visual C++ 6.0 in college, there was an error in getline that had to be fixed, and the code indenting in DevC++ needed to be tweaked to suit my liking."

1,055 comments

  1. Vim by Anonymous Coward · · Score: 4, Insightful

    nuf sed

    1. Re:vim by Anonymous Coward · · Score: 0

      Colorless green Cthulhu waits dreaming furiously.

      What a brilliant merging of the works of Chomsky and Lovecraft.

    2. Re:Vim by bernh · · Score: 1

      If you like vim, take a look at pida which is an IDE built around vim (although there is also emacs support).

    3. Re:Vim by 5865 · · Score: 5, Funny

      too awk ward

    4. Re:Vim by Smooth+and+Shiny · · Score: 1

      There is really only one IDE worth mentioning - RadASM.

    5. Re:Vim by Anonymous Coward · · Score: 0

      No wonder so many Linux applications look like crap if their gui is designed in a text editor. A graphical tool can be much more efficient because the code for positioning etc. is automatically generated by the ide rather than the programmer having to type lines and lines of code just to create a simpe but good looking gui.

    6. Re:Vim by geminidomino · · Score: 5, Funny

      Strangely enough, you're not the first person I've seen who's sed that.

    7. Re:Vim by zztong · · Score: 1

      I would say "bash" is my IDE, and "vim" is my editor.

    8. Re:Vim by Anonymous Coward · · Score: 0

      Vim + GNU Screen? Unstoppable.

    9. Re:Vim by TangoCharlie · · Score: 1

      Vim

      nuf sed

      Emacs!

      --
      return 0; }
    10. Re:Vim by Anonymous Coward · · Score: 3, Funny

      No - Emacs!
      No - Vim!
      No - Emacs!
      No - Vim!
      No - Emacs!
      No - Vim!

      Welcome to the jihad.

      You'd mod me redundant or flame bait, wouldn't you. But ha! I posted as a coward!


      "...It's better to die on one's feet than live on one's knees," Nately retorted with triumphant and lofty conviction. "I guess you've heard that saying before." "Yes, I certainly have," mused the treacherous old man, smiling again. "But I'm afraid you have it backward. It is better to live on one's feet than die on one's knees. That is the way the saying goes." --
      Catch 22

    11. Re:Vim by sgt+scrub · · Score: 1

      Wow. It looks like there is a reason for a windows vm on my dev machine after all. Thanks!

      --
      Having to work for a living is the root of all evil.
    12. Re:Vim by sorak · · Score: 1

      nuf sed

      He is using Windows, and by default, the Linux and Windows versions work differently. For example, the Visual mode commands do not work the same as they do in Linux.

      If I could get Vim for Windows to work just exactly like the Linux version, without having to load up cygwin, then I would agree with you 90%. (The remaining 10% is that code completion is nice).

    13. Re:Vim by gers0667 · · Score: 1

      I primarily program using Ruby on Rails. When I started, it was with an Eclipse based IDE. I then jumped to Netbeans when their support for RoR matured. Now it's all (gvim/mvim), a command line and git.

      For Java work, I stick with Netbeans, since hand building a Java project from scratch can be a lot of work.

    14. Re:Vim by D+Ninja · · Score: 1

      No...the OP is asking about an IDE...not a whole operating system..

    15. Re:Vim by Anonymous Coward · · Score: 0

      Not really.

      Editor snobs must be the only people who modded you Insightful, as it's not informative in the least and completely ignores the OP's question.

      Vim is not an IDE if you need to spend a week customizing the stupid thing to turn it into one. That's like saying Emacs is a gaming console because you can theoretically play games with it.

      Try being constructive next time, and shame on anyone who modded you insightful.

    16. Re:Vim by Anonymous Coward · · Score: 0

      http://en.wikipedia.org/wiki/Comparison_of_integrated_development_environments

    17. Re:Vim by Abcd1234 · · Score: 1

      He is using Windows, and by default, the Linux and Windows versions work differently. For example, the Visual mode commands do not work the same as they do in Linux.

      Uh... huh? Now, granted, I use GVim on Windows, but at least AFAICT, it works identically to it's Linux counterpart. 'course, I'm also not what I'd call a true poweruser, but still... details?

    18. Re:Vim by Anonymous Coward · · Score: 0

      ^^And gvim in Windows.

      Also:

      "Which Free IDE Do You Use?"

      There, fixed that for you.

    19. Re:Vim by djtriv · · Score: 1

      This looks really slick. Thanks!

    20. Re:Vim by Murpster · · Score: 1

      Vim running on some kind of *nix system is the only IDE you need, and the best that exists.

    21. Re:Vim by bumby · · Score: 4, Funny

      I don't grep it.

      --
      Hey! That's my sig you're smoking there!
    22. Re:Vim by Abcd1234 · · Score: 1

      FYI, you don't actually need an IDE to do GUI development. At least on the GTK side, you can just fire up Glade and go nuts.

      No, crappy GUIs on Linux have a lot more to do with the fact that developers are *not* typically all that aesthetically atuned (at least in my experience).

    23. Re:Vim by Anonymous Coward · · Score: 0

      It's been a while since I've used it, but, IIRC, it was either that the keymappings didn't work the same, or that the text selection worked using the standard windows selection method, rather than Vim's selection method.

      For example in the following list of files, if you wanted to remove the word "Pearl Jam" from each line, Vim for Linux made it possible to put the cursor at the beginning of the first occurance of the word "Pearl Jam" on line one, and press Control+V, and type "11l3jx", to accomplish this. In the windows version, I know this didn't work.

      \mp3s\Pearl Jam - Once.mp3
      \mp3s\Pearl Jam - Why Go.mp3
      \mp3s\Pearl Jam - Jeremy.mp3

      Unfortunately, I am sketchy on the details, as, for Linux development, I use Vim, but the windows version of Vim is only used for personal projects (as in the silly example of trying to turn a directory listing into a reasonable track listing), and has gotten rather dusty.

    24. Re:Vim by Abcd1234 · · Score: 1

      It's been a while since I've used it, but, IIRC, it was either that the keymappings didn't work the same, or that the text selection worked using the standard windows selection method, rather than Vim's selection method.

      For example in the following list of files, if you wanted to remove the word "Pearl Jam" from each line, Vim for Linux made it possible to put the cursor at the beginning of the first occurance of the word "Pearl Jam" on line one, and press Control+V, and type "11l3jx", to accomplish this. In the windows version, I know this didn't work.

      Well, good news, it works now, both in GVim, and well as console Vim, run either from the Start Menu or cmd. :)

    25. Re:Vim by ta+bu+shi+da+yu · · Score: 1

      Funny, I regularly express the opinion of the first editor.

      --
      XML is like violence. If it doesn't solve the problem, use more.
    26. Re:Vim by Hurricane78 · · Score: 1

      I might destroy your world view with this, but:

      Neither nor! And sometimes a bit of both!

      Rule 1 to spotting a retard: He acts as if 1/0 dichotomies existed.
      (Rule 2: He thinks that there is only one dimension/property/factor in something.)

      --
      Any sufficiently advanced intelligence is indistinguishable from stupidity.
    27. Re:Vim by Hurricane78 · · Score: 1

      Can anyone explain to me, why you would create a GUI in assembler? To re-invent the wheel as often as possible? Because you can write better code on-the-fly, as a library that is improved for over a decade? Because it's so much harder for no reason? Because you dislike the usefulness of abstraction?

      I don't get it.

      Or have we all just been whoooshed?

      --
      Any sufficiently advanced intelligence is indistinguishable from stupidity.
    28. Re:Vim by Hurricane78 · · Score: 1

      Well, I bet you can run an IDE in it.

      By the way: Is that virtual machine for Emacs done already? I want to install Vista in it, and then install Emacs in that! ^^

      --
      Any sufficiently advanced intelligence is indistinguishable from stupidity.
    29. Re:Vim by iron-kurton · · Score: 4, Funny

      Stop it guys. Less is more.

      --
      Change is inevitable, except from a vending machine -- Robert C. Gallagher
    30. Re:Vim by gmuslera · · Score: 1

      The question was about IDEs, not operating systems.

    31. Re:Vim by WinterSolstice · · Score: 2, Interesting

      I love Vim, and it's probably my favorite editor for anything in the small-medium size (99% of my perl programs, some C, some Java, most of my PHP stuff).

      Eclipse is also fantastic, and picks up for me where Vim leaves off. It's a little too cumbersome for very short tasks, but awesome for anything with includes or lots of subs.

      These plus XAMPP (Linux, and even Windows if you roll that way) make me quite productive on PHP/HTML/CGI stuff.

      Note: I'm biased - roughly 90% of my coding is PL/SQL, SQL, Perl, PHP, and database driven frontends. I don't do anything fun with graphics, so I'm sure that my tools aren't the best for hardcore OpenGL/GLUT type stuff :)

      --
      An operating system should be like a light switch... simple, effective, easy to use, and designed for everyone.
    32. Re:Vim by Anonymous Coward · · Score: 0

      There's always THAT guy.

    33. Re:Vim by fm6 · · Score: 3, Funny

      How do I filter out all these perls of wisdom?

    34. Re:Vim by fm6 · · Score: 1

      nuf sed

      No. "Nuf" would be you explaining why you think fancy IDEs are a waste of time. See my sig.

      This is why I hate AC posts. He'll never see my response, and probably doesn't want to. If he cared what other people think, he'd login and participate.

      Not that some logged-in users don't indulge in here's-what-I-think-who-cares-what-you-think. But that kind of post accounts for 99% of AC posts.

    35. Re:Vim by RangerElf · · Score: 2, Funny

      make it stop!

    36. Re:Vim by natebarney · · Score: 1

      make: *** No rule to make target `it'. Stop.

    37. Re:Vim by Anonymous Coward · · Score: 0

      grep -v, duh.

    38. Re:Vim by Anonymous Coward · · Score: 0

      No. The problem with slashdot is people like you who bitch about AC posts and make pedantic complaints that are themselves even more offtopic than the GP was('nt).

      Posted as AC, just because you hate it so much.

    39. Re:Vim by Anonymous Coward · · Score: 1, Insightful

      I don't understand this thread, even after I completely reddit

    40. Re:Vim by finiteSet · · Score: 1

      cut it out you're make'ing my head hurt.

      --
      If we start buying CDs then the terrorists have already won.
    41. Re:Vim by Anonymous Coward · · Score: 0

      phuck u

    42. Re:Vim by Anonymous Coward · · Score: 0

      I've told you once...

    43. Re:Vim by HvitRavn · · Score: 1

      It's so easy, even a cat can do it!

    44. Re:Vim by msclrhd · · Score: 1

      You don't need a graphical tool to create a GUI. If your GUI interface requires you to hand-position all of the controls (Windows RC files, anyone) then you are using the wrong GUI API. Hand positioning GUIs just results in inconsistent spacing, sizing and layout of controls. All the decent GUI toolkits (Java, Gtk, XUL - not sure about Qt or Cocoa/Carbon) all allow you to specify the structure of the UI (i.e. the box model) and will auto-position the controls at runtime. This makes things like localisation, right-to-left vs left-to-right ordering and resizable dialogs a snap to implement (there is no extra effort on the part of the developer).

      Also, Gtk and Java (and possibly the others as well) allow you to dynamically create the UI on the fly at runtime. With an API that doesn't support auto-reflow, you have to write a lot of repositioning code which is harder to maintain.

      The solution is not to have IDEs churning out reams of crappy code for you, the solution is to provide decent APIs that abstract the routine stuff so that you are actually specifying what the program does.

    45. Re:Vim by msclrhd · · Score: 1

      Oh, forgot to mention -- any GUI library/framework that requires you to use a graphical editor/IDE to create the UI in is crap. You can choose to use a graphical editor (e.g. a HTML designer for HTML/CSS and Glade for Gtk), but the point is that you shouldn't need to.

    46. Re:Vim by fm6 · · Score: 1

      I've been using Vim on Linux, Windows, and Solaris for about 10 years now, and I've never seen that problem. Thing is, Vim's keymappings are extremely customizable. Plus the thing comes with a script that changes the keymappings to make them more Windowslike. Are you sure it wasn't a config problem?

    47. Re:Vim by fm6 · · Score: 1

      Since when is complaining about assholedom "pedantic"?

    48. Re:Vim by felixhummel · · Score: 1

      true

    49. Re:Vim by vrmlguy · · Score: 1

      I knew this seven years ago, you insensitive clod!

      --
      Nothing for 6-digit uids?
    50. Re:Vim by sorak · · Score: 1

      I don't know. I didn't spend a great lot of time trying to troubleshoot the problem. It currently selects like every other windows application, as opposed to using vim mode, and I couldn't find anything online about how to make it act differently.

    51. Re:Vim by ZygnuX · · Score: 1

      "You'd mod me redundant or flame bait, wouldn't you. But ha! I posted as a coward!"
      +3 Funny.... Sweet sweet irony.

    52. Re:Vim by m6ack · · Score: 1

      Uh... Emacs?

    53. Re:Vim by Elrond,+Duke+of+URL · · Score: 1

      $ make it STOP=true

      --
      Elrond, Duke of URL
      "This is the most fun I've had without being drenched in the blood of my enemies!"-Sam&Max
    54. Re:Vim by s1lverl0rd · · Score: 0

      I can hear an echo in here.

    55. Re:Vim by Karlprof · · Score: 2, Funny

      I gnu you guys would take it too far.

  2. ID what? by Anonymous Coward · · Score: 2, Funny

    I use nano, textwrangler, and jEdit depending on where I am...what's this "IDE" you speak of?!

    1. Re:ID what? by CaptSolo · · Score: 1

      I use VIM (and MacVIM when on Mac), mostly for Python development. What's this "IDE" thing again?

      -

      I am wondering, though, what do others use for coding (and for Python coding in particular). Text editors are fine for many tasks, but perhaps there are more complex projects with lots of files which require something like Eclipse, etc. What's your experience w. that?

    2. Re:ID what? by Ciggy · · Score: 1

      I think they mean: bash - my current IDE

      bash is the most extensible IDE I've ever come across (along with csh, tcsh, zsh, ash, etc). It has features to reformat code (cb, etc), check code (lint, etc), compile code (almost any language: C, C++, fortran, Lisp, Pascal, etc), debug code (gdb, strace, etc). What more does anyone want?

      --

      A rose by any other name would smell as sweet;
      A chrysanthemum by any other name would be easier to spell
    3. Re:ID what? by Nutria · · Score: 1

      what do others use for coding (and for Python coding in particular)

      vim on Linux, and Idle on Windows.

      --
      "I don't know, therefore Aliens" Wafflebox1
    4. Re:ID what? by fuzzix · · Score: 1

      I use nano, textwrangler, and jEdit...

      I found jEdit to be sluggish at times. It was just as powerful as I required, but I wound up switching to Komodo Edit. It's code validation leaved jEdit in the dust and it just about matches the other features I need.

      Still based on a bloaty framework, but not as :)

    5. Re:ID what? by vux984 · · Score: 5, Insightful

      What more does anyone want?

      The efficiency that is gained by not having to move your project through 20 different tools manually?

      In other words, the INTEGRATED part of "IDE".

    6. Re:ID what? by fuzzix · · Score: 1

      ...leaved...

      No excuse for this - have had my coffee and everything

    7. Re:ID what? by Nutria · · Score: 1

      The efficiency that is gained by not having to move your project through 20 different tools manually?

      What's the difference between activating "make" thru some keystrokes in the IDE, and Alt-tabbing to another window and typing "make"?

      --
      "I don't know, therefore Aliens" Wafflebox1
    8. Re:ID what? by peppepz · · Score: 4, Insightful

      I think you’re missing the "I" in "IDE".

    9. Re:ID what? by vux984 · · Score: 4, Insightful

      What's the difference between activating "make" thru some keystrokes in the IDE, and Alt-tabbing to another window and typing "make"?

      Count the keystrokes.

      Its all of 1 keystroke in (for example) Visual Studio to build a project and start debugging it.

      Alt-Tab, make is 5x that amount. And I might do this a hundred or more times in a day.

      But that won't actually work do it, you have to save the file. So that's a couple more keystrokes per round trip to count (and a 100+ opportunities to forget to save the file(s) added to your day)

      And that's on a tiny project with apparently one editor window and one terminal window. Alt-tabbing 7 or 8 times, and saving changes in half a dozen different editor windows before going to the terminal and typing make is a more realistic scenario, and its a lot more keystrokes...

      Plus, the IDE indicated I had a syntax error as I was typing it, and the code completion prevented me from making another one; and when the class I was trying to instantiate didn't get colored as a 'type' by the syntax highlighter that I knew was correct I immediately knew I hadn't included it in this file. All that saved me a round trip or two through the build process.

      And when the app compiled there was a compiler warning; in the IDE a double click on the warning took me right to the source line in the editor, so I could fix it, and rebuild. With bash I get to read the name of the file and linenumber that had the problem, alt-tab to the right editor window, manually jump to the line number, make the fix, save it, and then switch back to the terminal window and run the build script again.

      So... no difference at all between an IDE and bash, except the IDE saves me multiple round trips through make, prevents errors, and saves thousands of keystrokes a day.

      I didn't say the IDE was more "powerful", I just said it was more efficient. And it is.

    10. Re:ID what? by nschubach · · Score: 2, Interesting

      I can't believe I have to type this...

      About 4-5 (or more depending on how many windows are open...) keystrokes, less programs open on your task bar, and if you don't code in the same fonts/colorization as your command prompt, the shifting of your eyes to another style of window and/or color scheme. (ie: moving from white to black or vice versa)

      Doesn't sound like much, but if you can hit F9 (or whatever) and have the environment automatically create it...

      --
      Every time I start to have faith in humanity, I ruin it by driving to work between 7 and 8 am.
    11. Re:ID what? by ranok · · Score: 0

      I beg to differ, I tried using Visual Studio at work, and was frustrated with the amount of effort it took to create and configure a project *just to compile a single file*. With emacs *gasp* you can hook it into a makefile, so it's just one key combo to make, it'll save your files for you. Additionally, with emacs you can add snippet support so you can type for and it will happily expand for you. I suppose VS is only useful if you like switching to the mouse every third keystroke. It may be more keyboard efficient, but certainly not more time efficient. Also, try building a project written in an esoteric language with VS (rather tricky)

      --
      (>'.')>
    12. Re:ID what? by Anonymous Coward · · Score: 5, Insightful

      I tried using Visual Studio at work, and was frustrated with the amount of effort it took to create and configure a project

      Maybe you're incompetent.

    13. Re:ID what? by Anonymous Coward · · Score: 0

      I believe he is speaking of this "Irritating Development Environment" i have heard so much about in office-type environment.

      Apparently have all this fancy font and coloring and stuff like that.
      Ew, I'll take green on black any day.

    14. Re:ID what? by Anonymous Coward · · Score: 0

      Well said - Brainf*ck may be a Turing-complete language, but that doesn't mean other languages aren't a better choice in most cases.

    15. Re:ID what? by bjourne · · Score: 0
      Your comparison is incorrect because that is not how shell people write software. In your example, make would be the last command in the bash history. The shell window would be the previous one to the editor which means that one alt-tab keypress is enough to switch to it. So the actual keypresses to save and compile the software would be: ctrl+s, alt-tab, up arrow (or ctrl+p) and enter. Yes, that is three keystrokes more than the IDE way in which you press F9 to save and compile the software. On the other hand, with the shell way you don't even have to move your fingers away from the home position on the keyboard.

      Plus, the IDE indicated I had a syntax error as I was typing it, and the code completion prevented me from making another one; and when the class I was trying to instantiate didn't get colored as a 'type' by the syntax highlighter that I knew was correct I immediately knew I hadn't included it in this file. All that saved me a round trip or two through the build process.

      That same code completion will also embed spelling mistakes in the API because programmers are to lazy to type out the method names and so wont notice when they contain spelling errors. The background compilation process takes resources and will (in all IDE:s I have tested) increase the IDE:s latency. If you type faster than the IDE can process your input, the syntax checking soon becomes more of an annoyance than an advantage.

      And when the app compiled there was a compiler warning; in the IDE a double click on the warning took me right to the source line in the editor, so I could fix it, and rebuild. With bash I get to read the name of the file and linenumber that had the problem, alt-tab to the right editor window, manually jump to the line number, make the fix, save it, and then switch back to the terminal window and run the build script again.

      Right, you have to double click on the warning. When I see the warning in the shell, I press alt-tab, C-x b, M-g, enter the line number and I'm right at the line that the compiler complained about. And I can do that much faster than it takes you to reach the mouse, scroll the IDE:s compiler output window and double-click on the warning.

      I didn't say the IDE was more "powerful", I just said it was more efficient. And it is.

      For newbies and people who cannot touch type, yes. For professional programmers, not so much.

    16. Re:ID what? by bsDaemon · · Score: 1

      makefiles? They're basically just shell scripts... and you can drop out of Vim or whatever with a handy-dandy Ctrl+Z (send it to the background) and then pop back in after you've done whatever else it is you meant to do. Frankly, I've never found an "IDE" that I liked... too complicated and they stick things in strange places. I prefer to know exactly where everything is being kept and what precicely is being done to it.

    17. Re:ID what? by Anonymous Coward · · Score: 0, Interesting

      You seem to be assuming that no emacs/vi user has ever taken the time to create a macro that does everything your IDE "run" button does, if not more. It's pretty trivial to tie the saving, building and running of a program to a single keystroke.

      You also seem to be unaware that emacs's m-x compile feature lets me click on a compiler error and jump right to the line too. So, at least based on your arguments, emacs is in a dead heat with your IDE.

    18. Re:ID what? by tha_mink · · Score: 5, Insightful

      For newbies and people who cannot touch type, yes. For professional programmers, not so much.

      Spoken by someone, who very obviously, has never taken the time to learn the ins and outs of a good IDE like Eclipse or VS. There's no argument here. If all things are equal, ie you know both methods the same, and IDE is SO much faster to work with that it's not even close.

      --
      You'll have that sometimes...
    19. Re:ID what? by jandersen · · Score: 0

      The things you mentions as advantages are more or less the very ones I would mention as reasons why I don't use an IDE. Syntax highlighting and code completion drive me absolutely insane and I don't use debuggers; I REALLY can't stand it when a program tries to outsmart me - it is the same with idiotic gimmicks like incremental search.

      Maybe I am just old fashioned, but to me the clearest way of indicating syntax is indentation, which I believe people use even if they use syntax higlighting. It has the advantage that you aren't crippled when you have to work away from your usual machine. I use standard vi for the same reason - there isn't a vim on all platforms, and most of the improvements in vim are actually nothing more than gimmicks anyway, IMHO.

      The functionality you get in an IDE may be great when you are on Windows, where you neither have a proper shell nor command line window. I use either a tabbable xterm (in KDE) or screen (on a terminal) - normally with 4 or 5 command lines open at the same time. The first one for vi, the next for make and so on. OK, so I have to type ":w" to save my file, jump to next terminal session and type "make" then jump to next session and run the program; I can't say it is a huge effort, but maybe I've just got a stronger constitution than most.

      And of course, since I do it this way, I always have the full power of a proper shell right at my fingertips, which you don't have in an IDE, not even one that run on UNIX.

      Oh, just one more reason for not using an IDE: it hides what actually goes on from the programmer. Take the build process - in an IDE you push a button and it sort of happens, but you are not really sure how, certainly not in any detail. When you use make, you have actually written a makefile yourself which means that you have had to sit down and understand it as well as understanding the compiler- and link flags. This is actually useful knowledge, believe it or not.

    20. Re:ID what? by X0563511 · · Score: 1

      Both vim and Idle work on both. Why would you use exclusively for each?

      --
      For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
    21. Re:ID what? by Anonymous Coward · · Score: 0

      Maybe I don't need a project to manage a single .c file?

    22. Re:ID what? by twostix · · Score: 1

      "I didn't say the IDE was more "powerful", I just said it was more efficient. And it is."

      That's a big call.

      I've started programming in Java and am using Netbeans (Eclipse would barely even *run* on this machine, utter rubbish).

      - Often it autocompletes completely the wrong variable and keeps going as though there's no problem, try debug that in a hurry!
      - It trains you to be lazy and not hold variable & method names and the overall structure of the app in your mind.
      - Adding libraries is a simple affair, except when it breaks..and it does. And then of course you've never had to manually do any of it so don't know how to fix it...
      - Bloated
      - Ridiculously Bloated, at least it runs though

      I've found that I'm equally as productive using Kate as I am in Netbeans.

      I do love the Autodoc popups in Netbeans though, very nice and makes it worth using when you've got massive third party libraries imported as I do.

    23. Re:ID what? by Hucko · · Score: 3, Funny

      come on, we are talking about IDEs and you go bring in operating systems... play fair.

      --
      Semi-automatic amateur armchair Australian philosopher; conjecture ready at any moment...
    24. Re:ID what? by ardor · · Score: 1

      But the things he mentions affect the workflow greatly. It is an immense improvement in the workflow if one does not have to tab through windows to get to the terminal and then back to the editor. It is *one* action - rebuild. It should not involve more than one step, but this is precisely what happens with vim + make/scons/.... (I do use vim and the terminal, btw, but I am adding commands inside vim to invoke the build tool, essentially turning vim into an IDE).

      There are several tasks that happen frequently:
      - build
      - clean
      - rebuild
      - search
      - replace
      - open N files
      - switch between opened files
      - save files

      These should be instantly available as a keystroke. vim has issues with multiple files, even with tabs. I'm trying to tweak it to be easily able to switch, but this is not the default. Build happens so often, it MUST be one keystroke. Rebuild happens less often, it could be something like ctrl+f5. Clean, the same. Search, replace, open, save are self explanatory.

      One other important thing is to be able to quickly have an overview over the project's content. Source files, classes, closures, functions etc. This is something where IDEs excel, and I sorely miss this in large projects.

      --
      This sig does not contain any SCO code.
    25. Re:ID what? by Anonymous Coward · · Score: 0

      vim:

      map M :set mp=make\ -j4^M:make ^M

      One keystroke. Sorry.

      Oh and I didn't have to touch a mouse. I could also do this on a remote machine without a remote desktop (oh, unless it's Windows).

    26. Re:ID what? by Anonymous Coward · · Score: 1, Insightful

      Its all of 1 keystroke in (for example) Visual Studio to build a project and start debugging it. Alt-Tab, make is 5x that amount. And I might do this a hundred or more times in a day.

      I don't think it's your development environment that's providing an efficiency problem.

    27. Re:ID what? by maxume · · Score: 1

      Probably because each one tends to be available (by default) on either platform.

      What the above is trying to say is that Idle is installed by default with python on Windows (my understanding is that it is often a separate package on Linux, perhaps I am wrong) and vim is pretty likely to be available on Linux.

      --
      Nerd rage is the funniest rage.
    28. Re:ID what? by TomRK1089 · · Score: 1

      You don't use debuggers? Ever? That, to me, seems more inefficient and wasteful than any downsides to developing within an IDE. So when something gets bollocksed up, you just start guessing where the problem is, as opposed to stepping through the program and examining it? Or do you just stick ten thousand print statements in?

      Even for the trivial C projects I've had in my CIS courses at uni I was glad to have some basic knowledge on how to use GDB. It's a lot easier, in my mind, to look at the program as it executes and see exactly what broke (bad memory allocation or deallocation, wrong function call, whatever) then to make a change, try again, make another change, try again...

    29. Re:ID what? by Anonymous Coward · · Score: 0

      Yeah. Vim is an editor, not an IDE. And as an editor, you really don't want to count keystrokes against Vim. Not to mention mouse usage. Vim will whoop your ass as far as keystrokes go (again, for text editing).

      Just try to delete all the text in a function, in the current set of parenthesis, to the first ":" etc. All those should take about 3 keystrokes in Vim.

    30. Re:ID what? by lytithwyn · · Score: 1

      And of course, since I do it this way, I always have the full power of a proper shell right at my fingertips, which you don't have in an IDE, not even one that run on UNIX.

      http://codingexperiments.com/images/gui_editors_review/kdevelop4.png

      Oh, just one more reason for not using an IDE: it hides what actually goes on from the programmer. Take the build process - in an IDE you push a button and it sort of happens, but you are not really sure how, certainly not in any detail.

      https://svn.forge.morfeo-project.org/svn/freeswmaster/trunk/japousa/ILS/kdevelop.png

    31. Re:ID what? by Anonymous Coward · · Score: 0

      So, if you tried to use Linux and fail because you find it confusing... that makes you an incompetent? Oh yeah!

    32. Re:ID what? by vux984 · · Score: 2, Insightful

      Your comparison is incorrect because that is not how shell people write software. In your example, make would be the last command in the bash history.

      You are constructing ridiculously optimal cases for your argument.

      make might be the last command, it might not be. You'll have to visually check it before you push enter after pushing the up arrow. Maybe its make, maybe it was some other tool, maybe you deleted an object file, or ran grep on some output. Your single alt-tab is also probably really multiple alt-tabs -- most of us professional programmers have more than a single shell and a single text editor window going.

      And if you've got multiple text-editors, you might have multiple ctrl-s's to save them. So sure, it might be ctrl-s, alt-tab, up, enter... or it might be ctrl-s, alt-tab, alt-tab, ctrl-s, up, up, up, enter. And because you need to actually confirm that the correct window and bash command are selected, you can't necessarily do it blind foldeded -- you need that visual feedback loop.

      Reaching all the way for F5 is faster. And hey, Visual Studio is happy to let you remap keys. You want compile to be ctrl-; go for it. It even comes with a pile of emacs short cut schemes; you just have to turn them on.

      That same code completion will also embed spelling mistakes in the API because programmers are to lazy to type out the method names and so wont notice when they contain spelling errors.

      Wow, that's digging awfully deep for an nit to pick at.

      Right, you have to double click on the warning. When I see the warning in the shell, I press alt-tab, C-x b, M-g, enter the line number and I'm right at the line that the compiler complained about

      No, I don't have to double click.

      By default I can press Alt-F6 a couple times to cycle tool windows to the error list, down-arrow to select the warning, and enter to jump to the line in the code. Less than half the keystrokes you need. (assuming 'enter the line number' is at least a 3 to 4 digit number). And if there are 10 text editors going and the one I want is actually closed, its still just 3 or 4 keystrokes, because the IDE selects the correct editor... and even opens the file if its closed.

      And again, I setup additional hotkeys. And I can make hotkeys that are more preciese... instead of 'cycle tool window' I can hotkey - 'select compiler output tool window'. I can macro the whole thing too... and we're not talking 'simple recorded keystroke sequences' we're talking full on context and state aware stuff; branching, conditionals, full on programs unto themselves.

      Really, modern IDE's approach emacs in terms of flexibility, extendability, programmability, etc.

      For newbies and people who cannot touch type, yes. For professional programmers, not so much.

      Spare me.

    33. Re:ID what? by mdarksbane · · Score: 1

      "Idiot gimmicks like incremental search" You mean so I can type ctrl-i, three characters and be *instantly* where I want to be instead of having to bring up a full search and hit enter, then backspace because I mispelled the word, then enter again?

      Or code completion, so if you can't remember exactly what the syntax was on some obscure object you only need to use for two lines you have to go navigate to the source file, open it up, and find the interface, instead of just hitting one keyboard shortcut to bring up the entire interface immediately?

      You don't see any benefit in having an IDE tell you immediately, at a glance, that your program will not compile? Instead of sitting around and waiting for the whole make to run to give you a list of errors?

      Do you realize that there is no reason not to combine an ide in one window and a shell in another? That this is a very standard way of working? IDE's also contain keyboard shortcuts for nearly everything - I almost never take my fingers off of the home row.

      I agree that setting up a new project in an IDE is cumbersome. You need to do that once per project - you will be working on that project for months.

      As for not using debuggers... even if you're on a command line, you use a debugger. Or you can wade through 1000 lines of source code trying to figure out exactly what died, when a debugger would show you in 5 seconds that you forgot that you initialized a variable to the wrong number.

      I'll agree 100% that people shouldn't be taught how to program on an IDE - it's important to know what is actually going on under hood. I learned on vi and cc. But that doesn't mean you can't improve on it.

    34. Re:ID what? by modmans2ndcoming · · Score: 1

      Sorry, but Eclipse, while it is capable and extensable, drives me insane. Its debugger is a complete pain in the butt.

      Oh to have an IDE for Java that worked as well as Visual Studio.

    35. Re:ID what? by primowalker · · Score: 1

      There are many different tools out there that allow us to do the same job in many different ways. There is a very good reason for this - we are all different! Each of us see things in slightly different ways and therefore use tools in different ways. The best IDE or tools, if you like, are whatever works for you and makes you productive. All this arguing sounds like a lot of, "My tool is better (read: BIGGER) than yours!". I'd like to think we've advanced beyond that point by now as a civilization. Now, to answer the original question, I use vi, emacs and scite, depending on the platform and project I'm working on.

      --
      -- James Walker
    36. Re:ID what? by stonemetal · · Score: 1

      So the actual keypresses to save and compile the software would be: ctrl+s, alt-tab, up arrow (or ctrl+p) and enter. Yes, that is three keystrokes more than the IDE way in which you press F9 to save and compile the software. On the other hand, with the shell way you don't even have to move your fingers away from the home position on the keyboard.

      Wow, you must have some fancy programer keyboard where the up arrow is on the home row. At least on my keyboard F9 is closer than the up arrow.

      nd when the app compiled there was a compiler warning; in the IDE a double click on the warning took me right to the source line in the editor, so I could fix it, and rebuild.

      When I type make in Vim and there is an error or warning it goes to the line automatically no click, no funky command sequence. In my experience IDE's provide slightly better project management abilities but tend to be a little slower. Code completion tends to be a little better in IDEs, though it tends to be more in your face and distracting.

    37. Re:ID what? by Suiggy · · Score: 1

      Hides the build process? Maybe you should try digging in a little deeper. In Visual Studio and XCode (and probably other IDEs), there's a console view that shows you the exact command-line text of each translation unit as it's being compiled, and it shows you the output as well. If you go into the project settings, you can add pre and post build steps. You can even delegate the build to a classic gmake/nmake build process. With Visual Studio, there is the command line tool vcbuild which allows you to build your C++ applications directly from the command line if you so choose (for example for automated builds and continuous integration). You also have complete control over compiler/linker options for multiple configurations/build variants. You can use .vssettings files (Visual Studio) or .xcconfig files (XCode) to allow you to share the exact same build configuration settings across multiple projects and solutions while only having to maintain one set of compilation settings. Sounds like you didn't spend any great deal of time working with an IDE. It sounds like you tried it out one afternoon and lost interest because you're a slow learner. There, I said it.

    38. Re:ID what? by UnknownSoldier · · Score: 1

      > You don't use debuggers? Ever? That, to me, seems more inefficient and wasteful than any downsides to developing within an IDE. So when something gets bollocksed up, you just start guessing where the problem is, as opposed to stepping through the program and examining it? Or do you just stick ten thousand print statements in?

      1. The better the programmer you are, the less you even need to use a debugger.

      A debugger is either a tool or a crutch -- too many junior programmers use it as a crutch. I've worked with a lot of good, experienced programmers who don't even use a debugger half the time to solve problems.

      2. I've "debugged" real-times systems on PSX, PS2 and Wii, where there wasn't EVEN a debugger available (PSX, PS2 VU microcode, Wii's IDE had a tendency to crash), so yes, you are _forced_ to think things through based on what is being printed, or when a breakpoint is hit.

      Let me know when you've actually been coding for 20+ years working on systems where a debugger is not even functional, is buggy, and/or is incomplete, such as pixel shaders.

      --
      Reddit - the Dig of /.

    39. Re:ID what? by Austerity+Empowers · · Score: 1

      Notepad++ is my "IDE" for windows. nano works great for linux. This works for C, C++, Verilog, VHDL, Perl, HTML/CSS, PHP, etc.

    40. Re:ID what? by X0563511 · · Score: 1

      Ah, but on Windows python is not standard either. It's not so much of a stretch to download vim while you download python.

      The same could be said about vim and idle on major distros - usually only a bare-bones vim is present by default (no proper syntax highlighting etc) and while one is installing vim proper, one could just as easily install Idle.

      Just seemed strange to me, is all.

      --
      For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
    41. Re:ID what? by maxume · · Score: 1

      I see what you are saying, but those steps are 'extra' and sometimes, that is enough.

      --
      Nerd rage is the funniest rage.
    42. Re:ID what? by Anonymous Coward · · Score: 0

      One can use key bindings feature in Vim to automate almost anything to almost any level of sophistication. I agree that highlighting-syntax-error-while-you-write would still be missing though. But the point is the various tools on *nix allow you to automate your environment to any level you want. I guess most of us are just lazy to do this one-time activity and therefore choose an IDE.
      By the way, what about scenarios like integrating lex, YACC, R and C ?

    43. Re:ID what? by Bat+Country · · Score: 5, Insightful

      As much as I enjoy using bash for the things it's best at, you are showing the blind spot that irritates me most about open source evangelism and UNIX purism.

      That is the mistaken 100 tools that do the same thing (and more) as one single specialized program are just as good as having a single program custom tailored to your tasks. With that sort of attitude, nobody would ever have written "make" in the first place, let alone all those automated tools to write makefiles.

      For that matter, "bash" would never have been written because "sh" can already do most of the same stuff and commandline tools and cleverly written shell scripts can make up the functionality, right?

      I think by now, if you're reading this at all, you're scowling and looking for something to disagree with.

      The point is that sh and the dozens of powerful commandline GNU tools based on the great old stuff that was written for UNIX are still useful and relevant today, but they're not the only thing that is useful and relevant today. Sometimes you just want a single tool which does the job and gets out of your way with the least amount of effort. That doesn't make you stupid or lazy or childish, or everybody who's using bash right now needs to grow up.

      If you have to spend 5 minutes writing a command with 12 pipes and output redirection through 13 programs which duplicate a functionality I get from a single checkbox in, say, Visual Studio, then you're not working efficiently. And merely because I choose to skip those steps does not mean I have no idea how to do them - I'm a professional UNIX system administrator as my day job.

      The point is that although practice makes perfect, familiarity breeds contempt. When I get home to code on my own projects, I'd prefer not to have to write makefiles, build scripts, hand compile everything, edit out of a single window so I never forget to save anything, and constantly search for line numbers in a lousy no-syntax-highlighting no-code-completing circa 1980 text editor. I did that circa 1980, and I believe in progress.

      --
      The land shall stone them with the bread of his son.
    44. Re:ID what? by Anonymous Coward · · Score: 0

      If all you know are Java Netbeans, I guess its pretty hard to get around the DotNet platform. But I wouldn't blame the IDE for lack of user-knowledge...

    45. Re:ID what? by wezeldog · · Score: 1

      I use interactive debugging, but I try not to be in such a rush to hit f5, f8, f10 or whatever. I read the error message that was generated and think about it and the code for a few moments. I may not have to fire up the debugger at all. Maybe there are assertions that help identify the bug. This may be the only option in some environments where interactive debugging is verboten. Nothing wrong with the interactive debugger. I've used it to brute-force my way through some ugly and unfamiliar stuff. It may not be the most efficient debugging tool for every occassion.

    46. Re:ID what? by Ciaran+Power · · Score: 1

      The main problem I had with VS over Emacs is that its editor is rubbish. A lot of programming time is spent editing your source code. I tried the VS 'emacs mode' (or whatever it's called) and, as well as missing features, it differs from Emacs in a number of annoying ways.

      Personally I'd take the Emacs-XTerm-zsh-make-strace-gud IDE over VS because it contains a much better editor.

    47. Re:ID what? by mlk · · Score: 1

      Making it a IDE.
      VIM likely can be as well - never really used it.

      --
      Wow, I should not post when knackered.
    48. Re:ID what? by mlk · · Score: 1

      Nor do I all that often (I do however used an IDE).

      Unit tests give me details info on what is broken.

      --
      Wow, I should not post when knackered.
    49. Re:ID what? by mlk · · Score: 2, Informative

      Eclipse would barely even *run* on this machine, utter rubbish

      Wow, what machine are you using?!

      I use a Netbook (Atom 1.6GHz CPU, 2GB of RAM & shitty GC) and runs Netbeans, Eclipse and Visual Studio happily. Sounds like you are blaming the IDE for a shitty machine.

      --
      Wow, I should not post when knackered.
    50. Re:ID what? by AlexBeck · · Score: 0

      So you love to do things the complicated way. If you want to see how things happen in even more detail maybe you should even write your own compiler & linker. How about your own editor and OS too?. Oh, yeah, that would be pretty unproductive, right?

    51. Re:ID what? by Reapy · · Score: 1

      Totally agree here. I unfortunately never really got a great education in terms of debugger use and had always stuck to print statements while in school. When I got out in the work world, I asked some of the other people how they debug and most of them just used print statements too. I thought they were just too old school to know how to use the 'new' tools (ha).

      Seven years later I never use a debugger :( I used it a week or so ago when I was helping someone debug their code. I didn't know the code so just said stop it here and check stuff, and sure enough we found the error. I couldn't tell him what to try to print out since I didn't know what to try to print out.

      When it's my stuff though, I'm not writing long term executing stuff, I can usually get right to the 'crash point' in a few seconds, so I just put a print in where I want to double check stuff, but for the most part, if you just look at the error, you know exactly what to fix.

      I usually just build incrementally, just have a ton of milestones and check it as you go, so when you run into an error you know it's in the latest block of stuff you added in, and it is pretty easy to pinpoint what the error is, then just READ the code and figure it out.

      Code is just a bunch of instructions, you just have to go back and look at your logic, you don't need to stop it and see that i is 15 right before your array out of bound exception error, you need to look and say, oh, i typed = when I needed in the for loop.

      I like this debate that is going on here, but really it is just your standard apples to oranges. As they always say there is a proper tool for a job, find the right tool and use it.

      I don't like IDE's since I write many small code projects. I never learned what all the extra files an IDE creates actually does, and I hate having things I don't need all over the place. I work on windows, and use ultraedit and a dos window I alt tab over to and build.

      I like how and IDE does have the nice double click right to the error line functionality, but honestly hate the screen real estate it takes up. I prefer to alt tab over to see errors, and like the code itself to take up as much screen space as possible. I finally got a second monitor here and it's great, i have the command window on the other screen and I can have ultraedit take up the whole main monitor. I have a list of files across the top of open windows. I don't have to look at the whole project all the time, so if I am only working with 2 files, I have ONLY those 2 open, so when I move between them I just ctr tab I'm right there, even visually this is easier for me to pick from 4 files i'm working on rather then 15 that might be in the project.

      I just have trouble wrapping my brain around a large amount of things and for me anything I can do to narrow down my vision on a project, I do it, so having everything separated out really helps me work faster, since I have to do less hunt and peck to find things.

      See, if I was working on a larger apps... if the build time was in minutes and not seconds, if the bug I was looking for occurred after several minutes of run time, you bet your sweet ass I would want to work with a good IDE and would take the time to learn it.

      But yeah, 10000 line programs, meh, text editor, "reading the code" debugging, and then print statements if needed, gets things done for me pretty quickly. It is just what you are comfortable with, and if it works, why try to fix it?

    52. Re:ID what? by moronikos · · Score: 1

      I wish I had mod points to mod up. Well said. It's as if the original poster asked whether he should get a Prius or a Honda hybrid and the respondents tell him he should get a horse instead.

    53. Re:ID what? by Reapy · · Score: 1

      It just goes to show that no one modded this up that the "everyone is right" opinions are frowned upon here. It's only when you type an inflammatory comment on one side or the other that you get attention (I find this applies to life in general as well )

      For example, if you had said, VI is for real men, you bunch of faeries who use IDE's couldn't code your way out of a box, you might have got +5 informative.

      You can't say stuff like, IDE's are great if you take the time to learn them and configure them, but sometimes they are overkill for small projects. Or things like, VI is great for me because I've worked with it for 20 years and there is no sense in me learning dvorak, er an IDE at this point.

      Oh no, stick with the arguments, either list your 1000 tools your IDE has, or tell everyone they are morons for needing all the help. Hey, little girl, you want some water wings to help you get across the pool too?

    54. Re:ID what? by Joce640k · · Score: 1

      There's more to writing code than typing "make"...

      --
      No sig today...
    55. Re:ID what? by Joce640k · · Score: 1

      PS: If you're on Windows then it's a total no-brainer. Visual C++ Express is the best, don't waste time looking at anything else.

      --
      No sig today...
    56. Re:ID what? by Sir_Lewk · · Score: 1

      "Idiot gimmicks like incremental search" You mean so I can type ctrl-i, three characters and be *instantly* where I want to be instead of having to bring up a full search and hit enter, then backspace because I mispelled the word, then enter again?

      :set incsearch

      Just sayin...

      --
      "linux is just DOS with a UNIX like syntax" -- Galactic Dominator (944134)
    57. Re:ID what? by Sir_Lewk · · Score: 1

      vim has issues with multiple files, even with tabs

      Bullshit, the issue is you just don't know how to use Vim. (not that this isn't to be expected, but don't blame your incompetence on Vim...)

      Build happens so often, it MUST be one keystroke. Rebuild happens less often, it could be something like ctrl+f5. Clean, the same. Search, replace, open, save are self explanatory.

      So map them to something. It's pretty trivial to do, in fact, that's what I did.

      --
      "linux is just DOS with a UNIX like syntax" -- Galactic Dominator (944134)
    58. Re:ID what? by Anonymous Coward · · Score: 0

      Some people like to download and run an IDE.

      Others like to build one.

      People are different, get over it.

      Also, VI is better than Emacs.

    59. Re:ID what? by mdarksbane · · Score: 1

      Not saying that vi doesn't support some of the editing features (or that you can't get all of them through some arcane set of macros and plugins in emacs) just arguing that some of the features are, in fact, useful :)

    60. Re:ID what? by grimarr · · Score: 1

      I haven't used Visual Studio, but I have used Eclipse (and IBM's RAD, which is based on it). I much prefer IntelliJ IDEA from jetbrains.com. It's not free, but it's quite affordable, and well worth the cost. They have a free trial available, too.

    61. Re:ID what? by gparent · · Score: 2, Informative

      That same code completion will also embed spelling mistakes in the API because programmers are to lazy to type out the method names and so wont notice when they contain spelling errors. The background compilation process takes resources and will (in all IDE:s I have tested) increase the IDE:s latency. If you type faster than the IDE can process your input, the syntax checking soon becomes more of an annoyance than an advantage.

      That same IDE also has a "Rename" button which will automatically replace every instance of the method name by its correct name, and it will work even if it is used as a variable name in other places in the code. As for the latency, it's a non-issue. There is no latency.

      Right, you have to double click on the warning. When I see the warning in the shell, I press alt-tab, C-x b, M-g, enter the line number and I'm right at the line that the compiler complained about. And I can do that much faster than it takes you to reach the mouse, scroll the IDE:s compiler output window and double-click on the warning.

      Not only is a double-click much faster (and I type fast), but even if it wasn't, Visual Studio also has a shortcut for direct line fetch (And it's a lot shorter than that C-bufferbly instructions manual you just wrote)

      For newbies and people who cannot touch type, yes. For professional programmers, not so much.

      It has nothing to do with being a "newbie" or not, that's just emacs elitism shit. There are VS newbies just like there are emacs newbies, and while you don't seem to be an emacs one, it's obvious by your post that you ARE a Visual Studio newbie, and in that case it's no wonder you think it's so slow and clunky when it's in fact faster.

    62. Re:ID what? by ckaminski · · Score: 1

      I'd like to hear your reasons...

          I'm a BIG fan of the Visual Studio 6 + 7 debugger (the only versions I've used in recent years). And I was a waffler with Eclipse until recently. Until I had to debug an issue on a complex J2EE project for which I A) didn't have source for either of the two products involved, B) had to debug remotely C) while on a conference call with three of the original developers. I was sold, and having the ability to break on class-load? Awesome functionality. I realize most of this is the JVM and not Eclipse, but Eclipse made the whole adventure easy.

    63. Re:ID what? by GreyWolf3000 · · Score: 1

      Unless you know how to script your console to repeat common tasks like save+build+run test suite with a single keystroke (e.g. F9). Method completion is a little different; I would imagine it really helps for programming languages like Java with ReallyLong.classNames.andMethod.paths(), but isn't as nice for, say, Linux kernel development, where the guidelines ask for a modicum of brevity in function names.

      The keystroke "macroing" is obviously going to be at least as much work as, say, configuring a big honking IDE. I'm just saying I think the workflow for the command line can be equally streamlined. I've never actually done that much of it.. for me, saving the file, switching to another bash terminal, and invoking make has never been something I do more than once per 5 minutes, and in the time where I'm switching, I often catch myself remembering a mistake I made.

      Even great coders can't crank out *that* much code per day.. even if it's possible to gain some workflow speed with an IDE (still doubtful to me), I don't necessarily think that speed translates to more LOC per day.

      I don't like how command liners such as the poster you responded to act like using an IDE makes you a 'wimp' or something (wth is this, pre-K?), but that's beside the point.

      --
      Slashdot: Where people pretend to be twice as smart as they really are by behaving like children.
    64. Re:ID what? by bzipitidoo · · Score: 1

      I have. IDEs don't have longevity and robustness. The Integrated part is blessing and curse. I used to be pretty good with WordStar editing commands and setting watchpoints and debug displays in the Borland Turbo Pascal and Turbo C IDE's. One of my favorite improvements was syntax highlighting introduced in Turbo Pascal 7. And now knowledge of that IDE is all useless. The Borland C++ compiler was crap. Had some very bad bugs. It sure wasn't portable either. If I could have taken that IDE and hooked it up to a different compiler, or run it in Linux, it would have remained useful. And WordStar is history. In contrast, vi has been around longer, and is still everywhere, and has syntax highlighting.

      I've tried IDEs again, now and then, and always end up back at the command line. Most recently was the IDE that's bundled with Zenwalk. Its editor locked up on trying to view a non-text file that had some text embedded in it.

      --
      Intellectual Property is a monopolistic, selfish, and defective concept. It is "tyranny over the mind of man"
    65. Re:ID what? by ckaminski · · Score: 1

      I have cygwin, xvi (old copy), and eclipse all on a flash drive. I'm *NEVER* without my development environment anymore.

    66. Re:ID what? by milimetric · · Score: 1

      I am good with both. I use Vim on a daily basis and I've used every Visual Studio from 6.0 to 2008. I love Visual Studio's debugger and file management, integration of a wide array of tools for adding references and configuration and code generation and endless other things.

      But when you're talking hard core file editing where you just wanna jump all over a few files and produce more than two thousand lines of code per day, Vim really shines. You have to be good at it though, it's not for the faint of heart. you have to remember how to set marks and use them and make use of all the registers and write regular expressions fluently. You have to know how to select paragraphs and matching brackets and find / jump to any part of the file very quickly. All this takes time to learn and it could be argued that it wastes more time than it saves. So I think what it comes back to is that it's a pleasure to use because it doesn't get in your way or freeze, and that makes all the difference.

      For any Vim noobies reading this, I have four tips:

      1. change your caps lock key into a ctrl key and use Ctrl + [ to get out of insert mode.
      2. use v and V to enter visual mode and marvel at how convenient it is when you don't want to think about all the crazy ways to select text.
      3. use ctags and read online guides for how to jump back and forth throughout your project by integrating with it.
      4. check out command references online and use it a lot, it took me about a year to get decent with it.

    67. Re:ID what? by lamber45 · · Score: 1
      Its all of 1 keystroke in (for example) Visual Studio to build a project and start debugging it.

      All right, that's F5 in VS, but most of the time in Emacs I wouldn't actually type "make"; my keystrokes would be:

      • Ctrl+X,S (to save the file)
      • Alt+Tab (to switch windows)
      • Up-Arrow (to get the last time I typed "make test" or whatever)

      However, if I wanted to run compilation in emacs upon pushing F5, I'd add the following line to my .emacs:

      (global-set-key [f5] 'compile)

      Plus, the IDE indicated I had a syntax error as I was typing it, and the code completion prevented me from making another one; and when the class I was trying to instantiate didn't get colored as a 'type' by the syntax highlighter that I knew was correct I immediately knew I hadn't included it in this file.

      I've never gotten code-completion to work in Emacs (except for typeless XML, with nxml-mode); but it has syntax-highlighting for a lot of languages. Code-completion is nice for large projects and using unfamiliar libraries, but it's also annoying sometimes, because the visual effects get in the way of my thought-pattern.

      And when the app compiled there was a compiler warning; in the IDE a double click on the warning took me right to the source line in the editor, [...]

      The Emacs "compile" commmand can do this.

      [Not arguing with you in particular, because you never said that Emacs isn't an IDE; just mentioning my experience with it...]

    68. Re:ID what? by vux984 · · Score: 1

      [Not arguing with you in particular, because you never said that Emacs isn't an IDE; just mentioning my experience with it...]

      Yeah, quite the contrary. I even said elsewhere in the thread that an IDE approaches the extensibility and flexibility of emacs.

      And even vi people; after they've written all these macros and shell scripts and stuff that they brag they've done to optimize the process... they've pretty much assembled an IDE too, and just don't want to admit it. After all whats the difference whether the 20 development tools are glued together by a '3rd party package' or 'something you rolled yourself'. At the end of the day, if your glue does everything the ide does... you've got an ide.

    69. Re:ID what? by Anonymous Coward · · Score: 0

      I beg to differ, I tried using Visual Studio at work, and was frustrated with the amount of effort it took to create and configure a project *just to compile a single file*.

      Seriously...open the file, press F5 and click "Yes" when Visual Studio prompts you to create a project. That's not a lot of effort...

      With emacs *gasp* you can hook it into a makefile, so it's just one key combo to make, it'll save your files for you.

      In VS the project file is your makefile. Once you specify a project file you can use a single keystroke to save, build and debug a project.

      I suppose VS is only useful if you like switching to the mouse every third keystroke.

      I hope you realize you don't need to click each intellitext suggestion, you can use the tab key.

      Also, try building a project written in an esoteric language with VS

      You've got a point, VS is not good at that kind of thing. However it did support J++ (which is an esoteric language).

    70. Re:ID what? by Sir_Lewk · · Score: 1

      Trust me, if it's an "editing feature" then Vim supports it. ;)

      --
      "linux is just DOS with a UNIX like syntax" -- Galactic Dominator (944134)
    71. Re:ID what? by rgviza · · Score: 1

      And...
      For the record, vim has syntax highlighting and to get to a line number you type 237gg to go to line 237. How is that slower than scrolling with a mouse?

      You can automate repetitive bash operations with a bash script.

      Your efficiency is directly related to your knowledge of your editor and tools.

      It is more efficient for you, but saying it's more efficient, period, is said without consideration for everyone's experience.

      Just playing devil's advocate...

      -Viz

      --
      Don't kid yourself. It's the size of the regexp AND how you use it that counts.
    72. Re:ID what? by ardor · · Score: 1

      By default, opening multiple files with GVim does not create tabs for each one of them. Neither do I have handy keystrokes like Ctrl+Left / Ctrl+Right to switch between tabs, or something like Ctrl+1, Ctrl+8 ... to quickly switch to the first 9 or 10 tabs. I have been trying to ages to get this to work, so far it never worked fully. Switching caused *buffer* changes, not tab changes, which is really bad regarding the undo history. Googling for this did not help, and IMO, these things should exist by default.

      --
      This sig does not contain any SCO code.
    73. Re:ID what? by Sir_Lewk · · Score: 1

      Holy shit man, are you serious? Notepad++ is perfectly fine but nano is outright masochism. For the love of all that is good go find a text editor that at least has syntax highlighting and regex search/replace.

      --
      "linux is just DOS with a UNIX like syntax" -- Galactic Dominator (944134)
    74. Re:ID what? by mdarksbane · · Score: 1

      It's possible to debug without a debugger, and it's possible to over-use a debugger when some simple code checks, reviews, or log statements would be better.

      That said, I've developed for situations (like pixel shaders, or OpenGL in general) where I worked for months without a debugger, then we finally bought GDebugger. And my bugfinding time was nearly cut in half. There are still bugs that you have just dig into the code on, or areas where the drivers/applications are buggy and you can't get useful debug information. But there is such a vast gap in the amount of information you have to start trying to fix a problem between using and not using a debugger. Just the basic level of "here's where we notice the problem develops, and this is the state of your program" can drop the time to find simple bugs by such a huge amount compare to "something broken, I have no idea where, I'll turn on my billion logging statements and then go add a bunch of new ones until I find a lead."

      "Crutches" are still tools, and they were made for a reason. I can live without a debugger, but I'd never choose to.

    75. Re:ID what? by Sir_Lewk · · Score: 1

      So in short, as I said, you just don't know how to use Vim....

      --
      "linux is just DOS with a UNIX like syntax" -- Galactic Dominator (944134)
    76. Re:ID what? by Anonymous Coward · · Score: 0

      I tried using Visual Studio at work, and was frustrated with the amount of effort it took to create and configure a project

      Maybe you're incompetent.

      Maybe he had to configurae a project for the following combinatorial mess:

      Win32 Debug, and Release
      Windows Mobile 5 Standard, Debug and Release
      Windows Mobile 5 Professional, Debug and Release
      Windows Mobile 6 Standard, Debug and Release
      Windows Mobile 6 Professional, Debug and Release

      So... let's count the configurations there: 10. Yep, 10 separate configurations. Lots of commonallity, but occasionally different libraries, include paths, macros for each. Ah, the joys of WM development.

      Having such a pile of configs, and having them in source control is a real pain. Especially since the config editor has a nasty habit of not using relative paths. Not so useful when each programmer might check out the project to a different physical location, and you may very well have different branches of the same project in different locations.

      Maybe it's not quite so simple as it appears.

      It's either live with it, or find the tricks and train your developers in how to use non-trivial .vsprops files for common settings between configurations.

    77. Re:ID what? by SleepingWaterBear · · Score: 1

      I've been using Geany lately. It's a nice lightweight IDE, and it's fast, stable, and has all the most critical features.

      I've worked some in bigger IDEs (Visual Studio when working in windows) and I dislike the lack of control I have. If I'm making a cookie cutter program, Visual Studio is great, but if I want to do anything unusual it usually proves to be a big hassle to figure out the Visual Studio way to do it, and a lot of time goes into setting up the environment. I can see how if you were doing the same sort of coding all the time, and were developing for only one platform such an environment would be more efficient, but I prefer the flexibility of a lighter weight system.

    78. Re:ID what? by Nutria · · Score: 1

      I'd rather use the CLI in Windows, but IDEs seem a more natural fit on that platform.

      --
      "I don't know, therefore Aliens" Wafflebox1
    79. Re:ID what? by jeremyp · · Score: 1

      That's fair comment when you are talking about a project consisting only of a single file. However, when was the last time you were involved in building a real application that had only one source file?

      Yes IDEs are complex tools but they do improve efficiency once you learn to drive them (well good ones do).

      --
      All I want is a secure system where it's easy to do anything I want. Is that too much to ask ~~ Randall Munroe
    80. Re:ID what? by vux984 · · Score: 1

      For the record, vim has syntax highlighting and to get to a line number you type 237gg to go to line 237. How is that slower than scrolling with a mouse?

      I'm pressing 'enter' on the warning line in the compiler output and it takes me directly to the problem line number. I don't have to scroll anything.

      Your efficiency is directly related to your knowledge of your editor and tools.

      That only goes so far. Being an expert with a hammer doesn't put you ahead of a good nail gun.

      You can automate repetitive bash operations with a bash script.

      You automate and customize enough stuff, and you've built yourself an IDE.

    81. Re:ID what? by Austerity+Empowers · · Score: 1

      Nano has syntax highlighting. Grep does the rest. I mean I am familiar with Eclipse...it's just usually not worth the aggravation.

    82. Re:ID what? by Anonymous Coward · · Score: 0

      >>"That is the mistaken 100 tools that do the same thing (and more) as one single specialized program are just as good as having a single program custom tailored to your tasks."

      Dude, drink the grammar kool-aid, please.
      Grammar nazis around the world will thank you.

      Oh, and my favorite IDE is RJ Text Ed.

      Of course, I do love Eclipse, especially with the SWT ... and then there's Visual Studio 2008. And I for one am proud that no one has yet mentioned pico, nano, or echo & cat redirection.

    83. Re:ID what? by jeff4747 · · Score: 1

      you have to remember how to set marks and use them and make use of all the registers and write regular expressions fluently. You have to know how to select paragraphs and matching brackets and find / jump to any part of the file very quickly.

      Alternatively, I can just double-click or use the right-click menu in Visual Studio, depending on which task you're trying to mark/regex/etc your way through.

    84. Re:ID what? by jeff4747 · · Score: 1

      - It trains you to be lazy and not hold variable & method names and the overall structure of the app in your mind.

      Once you get to some real projects, you'll realize this isn't an issue. As it's not possible to do when working on a non-trivial system.

    85. Re:ID what? by jandersen · · Score: 1

      You don't use debuggers? Ever?

      Nope. Not ever. Now, I wasn't really out to put down IDEs or their users; we are all different, some may like using this sort of tools, I just don't.

      Perhaps it is down to the things I have worked with in my career - I worked on Windows when it was still version 2.0, and there was no way one could have used a debugger in that environment (real-mode x86); the only way to track down why a program failed was by inserting print statements. Since then I always write my code with print statements embedded, controlled by a suitable debug flag. And I can tell you it works a hell of a lot better than any debugger - I have successfully debugged multithreaded programs on Windows NT, written by somebody who either didn't know that the desktop interface isn't reentrant (or didn't know what that means) and who hadn't a clue about semaphores and event-driven programming. Now, how many simultaneous threads can you realistically follow in a source level debugger without loosing the thread, ahaha? Whereas printed output can be analysed over and over, you can even put it into an SQL database and try to cross-analyse it if you care.

      I generally find the problem faster than my colleagues, I might mention.

    86. Re:ID what? by TomRK1089 · · Score: 1

      Hmm, I see. My post was a bit more snarky than I meant it to be -- I really am curious as to doing it other ways.

    87. Re:ID what? by Bat+Country · · Score: 1

      This is what happens when I rephrase something then forget to proofread it afterward.

      Eventually I'll learn.

      --
      The land shall stone them with the bread of his son.
    88. Re:ID what? by modmans2ndcoming · · Score: 1

      capabilities and power do not make it a great debugger.

      It comes down to accessing the information. I love how you can debug in VS and all the information is just there for you.

      When I use the Eclipse Debugger, it feels like I have to go looking for the data.

    89. Re:ID what? by Anonymous Coward · · Score: 0

      I didn't say the IDE was more "powerful", I just said it was more efficient. And it is.

      That's entirely the problem nowadays though. It's the IDE that is powerful. All of your above points hold true, but only to the extent that without their assistance, you wouldn't be able to perform efficiently.

      If you didn't use an IDE and instead just edited in plain text, you would never have any syntax problems ever again. Also, editing in plain text has the advantage of forcing you to memorize your code. This has two advantages, first, you can relatively easily search within your code to jump immediately to a location (in the case that the compiler chokes on something). Secondly, you can write code a lot faster because you know exactly what you want to write and where you want to write it. (no more, "is it ArrayList or Arraylist?")

      So many times I've watched my CS partners use a traditional editor or IDE and fumble with the scroll wheel, looking for where they wanted to edit. It takes at least 10 seconds to find where they want to go. With a search in Vim, I don't have to open up a search box, I just type '/' and can search with regular expressions. Jumping to the next match only requires typing 'n', etc...

      Anyway, the entire theme of this post is that what vi or emacs doesn't do for you in terms of code completion is compensated for by your own fantastic brain. Force it to learn something (especially by rote memorization and repetition, as with programming), and you won't regret the expertise gained.

  3. Eclipse and Netbeans by Ethanol-fueled · · Score: 5, Informative

    I don't mess with C++ often but I still use Dev C++. Code::blocks wouldn't even install on my machine(or maybe it did, but never started up without a fatal error, can't remember which) and Visual Studio Express is a monstrosity which will take 45 minutes to install tons of weird crap while making your monitor flicker. Visual Studio express also allows only one programming language.

    Contrast those with Netbeans and Eclipse which are known as Java IDEs but can be configured with plugins and add-ons to do all kinds of stuff, including C/C++ development. I haven't tried either of the two for C/C++ but I believe that Eclipse would be a the good middle ground between Dev C++ and the bloated NetBeans.

    Here's[PDF warning] a good place to start. Good luck.

    1. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0, Redundant

      Give Code::blocks a try, if that does not suit you try Dev-c++.
      Dev-c++ works perfectly for me as a developer

    2. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 2, Informative

      Visual Studio Express only allows one language because you download the environment for the language that you want. For example, Visual C++ Express is just for C++.

      With that said, Visual Studio Express has never taken me 45 minutes to install and it (and the other express editions) install quite quickly. Check your computer for viruses... The full install of Visual Studio (not free, hence not the Express edition) is a quite different story though, and you had better have some spare time while installing it.

    3. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 2, Insightful

      NetBeans is not that bloated.. it is comparable to Eclipse and in some cases better than Eclipse when it comes to Java.

    4. Re:Eclipse and Netbeans by Hognoxious · · Score: 5, Funny

      I've used eclipse since version 2. I can't comment on it, I'm still waiting for it to open.

      I'm here all week, try the tuna salad!

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    5. Re:Eclipse and Netbeans by Haeleth · · Score: 1

      I've experienced Netbeans taking up to five minutes to load, and that's on Sun's own current workstation hardware. If that's not bloated, then what is?

    6. Re:Eclipse and Netbeans by cubiczee · · Score: 1

      For small projects, recent netbeans versions feels much more responsive than intellij or eclipse to me. Opens in a few seconds on my 3.5 year old thinkpad.

    7. Re:Eclipse and Netbeans by whm · · Score: 4, Insightful

      I am surprised to see you describe Netbeans as bloated when compared to Eclipse. I fought with Eclipse for years before trying out Netbeans, and have been nothing but pleased with it. More than anything, it is the bloat of Eclipse that drove me away! Plugins upon plugins upon plugins, all heaped together in some massive directory. Configuration panels that need a search box!

      My Netbeans experience has been a breath of fresh air.

    8. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 3, Funny

      A rotting whale on the beach.

    9. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      Err, Netbeans boots in about 10 seconds with my cheapo laptop. Better change your workstation :-)

    10. Re:Eclipse and Netbeans by Sectrish · · Score: 4, Informative

      I also use Dev-C++ for my windows development, I find the interface to be superb in not getting in my way, while not being dog-ugly or slow.

      Conversely, I was searching for an alternative for linux (yes, I'll learn vi/vim some day, just not now), and what I found was Geany. It starts up at the flick of a finger and manages to look a lot like Dev-C++ (perhaps more polished even). The only thing I dislike about it is its (intentional) weak project support, but that could conceivably be fixed with the nice plugin system. So, Geany is very lightweight and supports quite a lot of languages, it has its default settings such that if you have the necessary compilers installed (which is basically mostly true on most linux systems, or can be done with one line at the shell), it'll work out of the box. The same for python, perl, etc.

      Then I noticed that it also has a windows port, that comes with its own GTK+ runtime (all nicely contained in Geany's folder, and nicely uninstalled if you want), I tried it and while the first startup is not as fast (due to the GTK+ libraries needing to be loaded), all the rest is just as snappy. Ofcourse the windows version needs a little more help to get started, but not _that_ much more. All you basically have to do is install MingW and set your $PATH to search MingW/bin.

      So basically the only problem with Geany that still remains (for me), is that it doesn't really support projects like Dev-C++ did, so for now you basically have to make your own makefiles. This could also be viewed in a positive light ofcourse, as learning about makefiles will prove to be a good skill if you want to do some open source contribution. But I'm sure it could get tedious as well (haven't done many large projects lately), so someone developing a plugin would be really nice, and probably not too hard as well.

      Well, I've been ranting and promoting long enough now, time for Geany to promote itself, give it a spin (it's free, the only cost is your time ;) ).

    11. Re:Eclipse and Netbeans by QuantumG · · Score: 2, Funny

      Ya, and compared to Jack Black I'm actually kinda attractive.

      --
      How we know is more important than what we know.
    12. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      Mr Shady Tree and his Acorns.

    13. Re:Eclipse and Netbeans by DeathToBill · · Score: 2, Insightful

      Eclipse is brilliant for Java development - there is nothing quite like it I have found.

      When it comes to C++, things are a bit stickier. The infrastructure is there for good code complete and refactoring tools, but they are currently (last I looked, a few months ago) too slow to be really usable and just a bit erratic. Code completion that sometimes throws up the wrong answers is much more frustrating than no code completion at all, and code completion that regularly takes significantly longer than typing the expression manually is worse again.

      As seems to be the rule with all things eclipse: If it almost works in this version, it will work in the next version, and it will be fast the version after that.

      --
      Slashdot - News for Nerds, Stuff that Matters, in ISO-8859-1 Has just realised that beta makes this signature redundant
    14. Re:Eclipse and Netbeans by major_fault · · Score: 4, Informative

      I have to recommend Code::Blocks. I used Dev-Cpp for a long time before Code::Blocks and I've tried Visual Studio, but Code::Blocks wins at least for now because: 1) it starts up and is mostly faster on my machine than Visual Studio, 2) it supports more than one compiler (can compile with both gcc and cc), 3) and the best part is that you can have the project directory respond to actual directory layout when you have made the project before without an IDE. If someone gets a fatal error in case of Code::Blocks was probably because of not downloading extra package with .dll-s. Also, it's safe to use it's nightly builds.

    15. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      Perhaps back in 2001 it did. Its a lot more light weight than you give it credit for since all you need to do is remove the plugins you dont use.

    16. Re:Eclipse and Netbeans by Dr.+Hok · · Score: 4, Informative

      I've used eclipse since version 2. I can't comment on it, I'm still waiting for it to open.

      Huh? OK, Eclipse may start up slower than freecell, but I usually start it only once a day while I pour me a coffee. The real issue with Eclipse is that it's (almost) no use with less than 2GB memory, so it doesn't really run everywhere (yet).

      I tried it as a C++ IDE for a while and found it quite nice, only to find out that C++ sucks compared to Java (from a developer's POV). I had to look at someone else's code and it was uber-hard to locate the places where all those macros and typedefs are. I haven't found an IDE that can help you here, so I ended up grepping a lot.

      NB: As a Java developer I was mildly insulted by the fact that TFA never even bothered to mention that he's looking for an IDE for C++.

      --
      Say out loud: I'm an Aspie and I'm somewhat proud, I guess. Uh. Can I write an email in all caps instead? Hm...
    17. Re:Eclipse and Netbeans by BollocksToThis · · Score: 1

      +1, duplicate anecdotal experience.

      Maybe I am just lucky, having not really tried NetBeans before v6.5...

      --
      This sig is part of your complete breakfast.
    18. Re:Eclipse and Netbeans by Nutria · · Score: 1

      Its a lot more light weight than you give it credit for

      Or do PCs have a lot more RAM?

      --
      "I don't know, therefore Aliens" Wafflebox1
    19. Re:Eclipse and Netbeans by JPeMu · · Score: 2, Informative

      For full-blown development, I use Embarcadero (formerly CodeGear/Inprise/Borland) RadStudio - There's a free version "Turbo C++ Explorer" which is a full version with the caveat that you can't create/install custom components for the Visual Component Library (VCL).

      I've also extensively used Dev-C++ in the past - whilst I do like it, it often crashes, especially when performing Code Completion lookups on large projects. That said, the exception handling is fairly robust and I've never yet lost anything due to it crashing.

      The C/C++ support in NetBeans is excellent - Code Completion works well, and the environment is very comfortable to work with. It also produces Makefiles for you enabling you to build your project easily outside of the IDE. I've never tried the Eclipse plugins for C++ as I find Eclipse too cumbersome to use - it has way too many features, often presented at the "top level" of the UI where the features you actually want are buried in nested menus/dialogs as opposed to pretty much all other IDEs I've used where the features you need are found comfortably to hand. YMMV of course.

      Lately, I've taken to using Code::Blocks - It's by far my new preferred "small and simple" IDE. It's a fairly small footprint, available for both Linux and Window (possibly Mac too?), and most significantly for me doesn't require a Java install. I'm not convinced that it's easy to reliably generate Makefiles from it, but I haven't really tried all that hard. The Code Completion is good, as are the Symbol Browser (Class navigation) and GDB integration, and there's a number of plugins available to perform other tasks including profiling and suchlike.

    20. Re:Eclipse and Netbeans by Nutria · · Score: 3, Informative

      never even bothered to mention that he's looking for an IDE for C++

      Read more thoroughly.

      I work from a Windows machine, use C++, and make

      I could be snide and say that's a symptom common to most Java programmers, but it would be too easy.

      --
      "I don't know, therefore Aliens" Wafflebox1
    21. Re:Eclipse and Netbeans by Adam+Jorgensen · · Score: 1

      Well, I've used NetBeans as my main IDE for the last two and a half years or so and can safely state that on moderately decent x86 hardware it takes between 10 and 20 secs to start. At this point, it's actually a whole lot *LESS* bloated than Eclipse (Which stands true to its name...)

    22. Re:Eclipse and Netbeans by martin-boundary · · Score: 5, Funny

      I work from a Windows machine, use C++, and make

      I could be snide and say that's a symptom common to most Java programmers, but it would be too easy.

      Excuse me, something's wrong with your boldfaced text. When I mouse over it, nothing happens?

    23. Re:Eclipse and Netbeans by Chief+Camel+Breeder · · Score: 2, Informative

      Loading time depends strongly on the number of NetBeans modules. With the default modules only, my current copy of NetBeans starts about as fast as my Eclipse on the same host. My old copy of NetBeans 5.5, which has loads of might-be-interesting modules, loads very slowly.

    24. Re:Eclipse and Netbeans by AlecC · · Score: 1

      I find Eclipse (over GCC) a better C++ development environment than Visual Studio - I switch between the two frequently. It is, of course, a real resource hog and you need a powerful machine (quad core 2.8 GHz in my case) and plenty of ram (4GHz) and it still takes forever to start. But once started, it is very fluid and friendly.

      --
      Consciousness is an illusion caused by an excess of self consciousness.
    25. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      There's about five different prereqs to install VS, so 45 minutes is not unbelievable for the first time. Also SQL Server Express takes forever.

    26. Re:Eclipse and Netbeans by nschubach · · Score: 1

      Not just you. I found Netbeans far more responsive than Eclipse.

      --
      Every time I start to have faith in humanity, I ruin it by driving to work between 7 and 8 am.
    27. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      The bloated Netbeans? What year are you in? If you think NB is bloated you haven't tried it in a couple years.

    28. Re:Eclipse and Netbeans by Dr.+Hok · · Score: 1

      never even bothered to mention that he's looking for an IDE for C++

      Read more thoroughly.

      I work from a Windows machine, use C++, and make

      I could be snide and say that's a symptom common to most Java programmers, but it would be too easy.

      Aw yes, sorry, I forgot that it's customary in C/C++ to hide relevant information somewhere in the middle instead of the headline. (SCNR)

      --
      Say out loud: I'm an Aspie and I'm somewhat proud, I guess. Uh. Can I write an email in all caps instead? Hm...
    29. Re:Eclipse and Netbeans by SwabTheDeck · · Score: 1

      I'd have to agree that both Eclipse and NetBeans have sort of a "heavy" feel to them, and it's probably at least in part due to the fact that they're written in Java (and by this, I mean the actual IDE is a Java app, not that it's an IDE for writing in Java). Despite this, I've started to appreciate a lot of the features NetBeans has for Java development. I'm not sure if they all carry over to other languages through plug-ins and whatnot, but for Java, it really goes the extra mile. Good code completion, in-line lookup of Javadocs, safely renaming all instances of an object in a given scope, and a highly useful and simple-to-use GUI toolkit prompted me to make the switch. I was previously using JCreator, which is another free Java IDE that's much more lightweight and I still use it sometimes if I'm dealing with a single-file project so that I don't have to deal with throwing stuff into my workspace, creating a new project, etc. in NetBeans. I still haven't gotten around to giving Eclipse a try, but I hear it's comparable in quality.

    30. Re:Eclipse and Netbeans by Xymor · · Score: 1

      NB was like that when I was running 5.5 5 years ago in a 512mb win2K worstation.

      In my current PC, NB6.7B takes 8s to boot, 2 more than eclipse but still...

      To be fair, the default LAF takes 15+ seconds to boot and is generally slow even for common tasks. Changing to Nimbus or Metal often improve NB responsiveness and boot time IMO.

    31. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      Netbeans is hardly bloated compared to Eclipse and unlike Eclipse its performance doesn't drop by adding in plugins requiring the user to fiddle with startup settings to try to bring it back to an acceptable level of performance.

    32. Re:Eclipse and Netbeans by Octorian · · Score: 1

      I hope Eclipse's C++ support has improved since I last tried it. The last time I used that plugin, it was slower than molasses. That was a few years ago, so things may have gotten better. However, I've heard that NetBeans has a surprisingly good C++ plugin, which I have not had an opportunity to try.

      Of course I use Eclipse as a Java IDE all day without complaint (ok, the UI is cluttered, but the functionality is there). Then again, this discussion is for a C++ IDE.

    33. Re:Eclipse and Netbeans by Zebedeu · · Score: 1

      I find that Netbeans is way slower and more slugish accomplishing anything. The interface feels more foreign and some of my preferences either don't work or only work sometimes (using tabs instead of spaces, for example).

      Yeah, Eclipse is bloated and confusing, but given the choice between the two (and for Java I think they're the best choices) I'll take Eclipse just for the speed alone.

    34. Re:Eclipse and Netbeans by geminidomino · · Score: 1

      Could also depend on what one considers "bloat." I tried it last year. Unfortunately, it was on a machine with less than a gig of ram, so fuhgeddabodit.

      Some might consider taking 6-700MB of ram to be "bloated"

    35. Re:Eclipse and Netbeans by hattig · · Score: 1

      I use Eclipse because I've used to for a while (a previous job was doing Java development on Macs) and now it runs with a consistent interface across my work computer (Windows XP), my home computer (Linux) and my notebook (Mac). However I haven't really used it for C / C++ development, I tried it on my Linux machine and it seemed okay, but I didn't try a big project.

    36. Re:Eclipse and Netbeans by deniable · · Score: 1

      Visual Studio express also allows only one programming language.

      Which one was that then? Last I checked you could use C#, VB.Net or C++. In fact I have all three installed on a notebook now.

      SQL Server Express 2008 is a whole different issue and refuses to install until I upgrade from SP1 to SP1.

    37. Re:Eclipse and Netbeans by TheCycoONE · · Score: 1

      As others have mentioned this doesn't sound typical. Sun ONE Studio on the other hand use to take forever to load (for me)

    38. Re:Eclipse and Netbeans by Veretax · · Score: 1

      I agree, I use eclipse for my tasks that do no require using a MS Based IDE, although I disagree with the Author of the OP. The express versions of Visual C++, C#, etc. are not Visual Studio, they are in essence stand alone compilers, and hence do not have close to the same functionality some other freeware IDEs might provide. Visual Studio is they version you have to buy, that connects so many of the disparate resources into one.

      I tried the express versions, and they are okay for things like Forms applications or console applications, but if you are doing ASP.Net, you need to have multiple installs or put the code in the .aspx page (which I don't agree with, personally). Frankly, it was too much of a headache to develop with the express versions for anything I'd want to show the versions to the world.

      I like Visual Studio as a package, but the express versions really are not intended to build anything overly large, or for anything but perhaps learning the language constructs, this of course my opinion.

      The result is that I use Visual Studio at work, where I have a license, and for stuff I do at home off the company dime I use eclipse for my IDE needs, and I have been very satisfied with it to date. It may not have quite as many bell's and whistles as Visual Studio, but it does provide some measure of Syntax Highlighting, which to me is a necessity if you want to code anything quickly. It makes debugging a lot simpler too.

      When I was at my University we were of the school, that we'd write it in notepad, ftp it to the Solaris server, then compile and run it. Honestly, After seeing how easy an IDE is to use, and how much headache it can save, I recommend them for those who are not already working in a native environment (Such as with VI on some WorkStation.)

    39. Re:Eclipse and Netbeans by SQLGuru · · Score: 2, Insightful

      I think it's worth the time anyway. Look at the original request.....casual programmer. Microsoft has catered to that market for quite a while (one of the reasons that VB was thought of as a "second rate" language at times -- and most enterprise developers I know disparaged "VB coders"). As a casual programmer, who wants to deal with make files and hand coding GUI's in a text editor or any of the stuff mentioned so far? Create a Solution file, Add one or more projects, set up a small local DB if needed, drag and drop the interface, code the events, step through the code in debug, and build the final solution. To me, Visual Studio is the easiest INTEGRATED development environment. Out of the "box", I can do everything I need to build complete apps with no tweaking required. I've used others and always found them missing *something* that I have to track down some plug-in or extra utility to accomplish.

      For the original poster, I'd recommend Visual Studio Express. For anyone else that does serious programming......I still think that Visual Studio is a good development environment, but if you want to be a MS basher then get Eclipse (which I personally don't enjoy using, but it is widely supported and can eventually do everything you need after a lot of tweaking).

    40. Re:Eclipse and Netbeans by AppyPappy · · Score: 1

      You know that you can get a machine with more than 1 gig of memory now.

      I have a one gig laptop and it will barely run Eclipse. It runs fine on my two gig and 6 gig machine.

      --

      If you aren't part of the solution, there is good money to be made prolonging the problem

    41. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      I have tried most of the free options for windows (including eclipse, cream, SciTE with custom config files, Code::Blocks...) and I have to say that Netbeans 6.5 is my favorite. Part of this is because it works (well, imho) for all of the languages that I use daily (Java, C++ and Python) but I also like that it is lighter than eclipse. If you haven't tried it in a while give the latest version a chance (you'll need Cygwin or MinGW and MSYS for C++, but that's pretty standard) Now if someone would just write a CLisp Repl for it...

    42. Re:Eclipse and Netbeans by mdarksbane · · Score: 2, Insightful

      I'm getting the impression from people I talk to that until very recently, Netbeans really sucked. Since version 6.0 it has sucked significantly less. Not sure if that is enough less suck to be better than eclipse or not - my limited experience with both has indicated that they both are very usable, but have their issues.

    43. Re:Eclipse and Netbeans by LWATCDR · · Score: 1

      I think the key to both NetBeans and Eclipse is not to use the defualt install.
      Both tend to load in every plug in under the sun. Get just the base install then pick the plug ins you want.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    44. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      I'm no expert, I wouldn't even call myself a programmer, but I installed Visual Studio Express on my two year old laptop, it took three minutes, and as a complete novice I was able to write a program to help me play poker. (Specifically it gives me a translucent HUD over any open table showing me G-bucks calculations that pertain to that specific table.)

      That's not to say Visual Studio Express is the most appropriate choice for an experienced developer -- I have no idea what the best choice might be. But I'd say your characterization of the software is disingenuous at best, if not downright intentionally dishonest and misrepresentative.

    45. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      I work from a Windows machine, use C++, and make

          I could be snide and say that's a symptom common to most Java programmers,
          but it would be too easy.

      Excuse me, something's wrong with your boldfaced text. When I mouse over it, nothing happens?

      It's probably just an implementation problem with your specific JVM. Don't worry, you'll get used to that kind of stuff after you use Java for a while.

    46. Re:Eclipse and Netbeans by D+Ninja · · Score: 1

      Yes. This is very true. Netbeans was just sad until the 6.x release. I have now put aside Eclipse for awhile just to see if Netbeans is worth sticking with.

      So far...I like it a lot. It has a couple quirks, but niceties like the GUI design tool, it's plug-in system, and the various packages (for SOA, C++, etc development) is extremely handy.

    47. Re:Eclipse and Netbeans by trekie86 · · Score: 1

      What was the last version of Eclipse you used? you can use the search box in the preference pane to set all your preferences easily. Netbeans is way bloated, I can easily disble the eclipse plugins I don't want to use. That is what eclipse is, its a framework that is enhanced by plugins, that's its purpose. Netbeans likes to package a ton of crap in its wars, almost none of which are needed. I have used both the newest version of Eclipse and NetBeans and NB takes a lot longer to load, its only advantage I have is being able to run a server through the interface but Eclipse has a plugin for that as well. Netbeans claims that it is open source but Sun, I mean Oracle, has a big hand behind it. I hope the NetBeans lovers are ready to start paying for it, that's what Oracle does.

    48. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      it was uber-hard to locate the places where all those macros and typedefs are. I haven't found an IDE that can help you here, so I ended up grepping a lot.

      Visual C++, any edition in the last ten years. Put the cursor on an identifier (or macro), hit F12 and it takes you to the definition. Or you can dock the "Code Definition Window" at the bottom of the IDE; this automatically shows the definition of whatever your cursor is on. This includes, for example, all the comments preceding function definitions so it's incredibly useful.

    49. Re:Eclipse and Netbeans by chicagoan · · Score: 1

      This exact issue is being addressed in the next release of netbeans (6.7). http://wiki.netbeans.org/FitnessForever

    50. Re:Eclipse and Netbeans by DiegoBravo · · Score: 1

      Well, people rants because of the slow startup time, and sorry, that will not improve significantly by adding more RAM (maybe with Solid State disks and a bit of quantum computing, but of course didn't test:)

      Sadly, for people grown with cc/gcc, the startup time feels really unacceptable (it yet annoys me after using Eclipse and Netbeans for several years.) The subconscious ideas or conclusions are 1) working with the IDE will be slow (which is not true, if you have a decent quantity of RAM) and 2) the resulting application will be bloated (as of course happens with the Microsoft tools, but not for C/C++, and even Java if you're careful.)

    51. Re:Eclipse and Netbeans by Ethanol-fueled · · Score: 1

      You can install a plugin for a GUI builder on Eclipse. The Eclipse GUI builder, while not as full-featured or pretty as Netbeans', dosen't use weird code from any additional libraries. You can copy and paste the generated GUI code from Eclipse into Netbeans of JCreator, compile it, and have it Just Work(tm). If you paste Netbeans' generated GUI code into Eclipse or Jcreator it won't find everything it needs because of all the non-standard libraries that Netbeans uses.

      When I said that Netbeans was bloated, I wasn't referring to the program's speed or its load time, I was mainly referring to unnecessary complexity to get stuff to just work.

      Netbeans makes it easier to build GUI programs using the built-in Matisse GUI builder, but the underlying code is a lot more difficult and unnecessarily bloated to read if you want to actually type in code instead of setting events and everything else using the mouse.

    52. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      Funny, when I moused over, I've got free Visual Studio Enterprise offer. Are you one of those "suxxors" I keep reading about?

    53. Re:Eclipse and Netbeans by marcosdumay · · Score: 1

      It didn't got any better. Eclipse C++ is still slow, full of bugs and hard to use. It is also still one of the best C++ IDEs available for Windows.

      To be fair, that entire IDE concept applies to Java quite well, but has some problems when applied to C++. It is quite hard (would require a very good AI) to read a bunch of macros and discover that, since the developper likes Pascal, they rewrite the C++ language, for example. Hell, C++ compilers can't even point the line number of an error sometimes.

    54. Re:Eclipse and Netbeans by Bat+Country · · Score: 1

      Aw yes, sorry, I forgot that it's customary in the younger generation to stop reading at the headline.

      --
      The land shall stone them with the bread of his son.
    55. Re:Eclipse and Netbeans by andredurao · · Score: 1

      I agree with you, I was using eclipse for a project in the past and it puts more than 1MB of plugins and other stuff in each project that I used, I've been using netbeans for a year and a half, and since than I dond't want to change it for nothing, sometimes it is slower, yes it is, but I prefer the syntax highlighting, better than visualstudio, that lacks with a simple brace highlight And after I learn hotkeys like ctrl+1, ctrl+2, and others, I don't wanna change it for nothing. Other good pro its the code models that really helps to speed up the coding. One cons is that subversion plugin that comes within netbeans it's slower than running a command line to update or commit,

    56. Re:Eclipse and Netbeans by bugi · · Score: 1

      Well there's the problem. He should use Perl. Then he'd realize that scalars start with $; and that "use" gets executed in a BEGIN block so his previous declaration of $C means nothing.

      Also, in conformance with the principle of least surprise, one should always pre-increment, unless there's a good reason to post-increment.

    57. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      The software I develop at my job needs to be able to run on two seperate platforms (unix based and windows XP), so we have Visual Studio for building the windows binaries and we have eclipse with a plug-in for the unix builds. I find Visual Studio to be a wonderful IDE that uses space efficiently, has very good searching and navigation utilities, and it's easy to setup a build in it. Eclipse has almost zero real-estate for my code, since the windows don't have an auto hide feature, and it uses that horrid workspace directory where it loads copies of specific files rather than just using the directory where all of my code files and project files actually reside.

      I'm more inclined to use GNU make and spend the 60 minutes it takes to rebuild the entire project than fight with Eclipse to rebuild one piece of it.

    58. Re:Eclipse and Netbeans by Dr.+Hok · · Score: 1

      Aw yes, sorry, I forgot that it's customary in the younger generation to stop reading at the headline.

      Near miss. It is the privilege of us elder ones to glance only casually at something, then complain. Works better and better the older you get.

      AFAICT the young ones stop reading even before the headline.

      Thanks for calling me young, though.

      But seriously, it is good style to convey the gist of a message in the headline. In this context the invention of Javadoc is IMHO one of the biggest advantages of Java.

      --
      Say out loud: I'm an Aspie and I'm somewhat proud, I guess. Uh. Can I write an email in all caps instead? Hm...
    59. Re:Eclipse and Netbeans by thePowerOfGrayskull · · Score: 1

      I've experienced Netbeans taking up to five minutes to load, and that's on Sun's own current workstation hardware. If that's not bloated, then what is?

      When did you last experience this? The versions released in the last several years have drastically improved load times - and even more so in the past year.

    60. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      Wow, what's all this C++ hate? I know it can be a pain, but at least it isn't slow as fuck.

    61. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      Same here. I've just yesterday migrated from Eclipse to Netbeans, after becoming utterly frustrated with the free profiler plugin TPTP for Eclipse (instaling it is for some unknown reason a major pain - after I had finally got it done, it corrupted my workspace so it doesn't open anymore). The profiler in Netbeans seems way more powerful and it needs no friggin installation/configuration.

    62. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      Excuse me, something's wrong with your boldfaced text. When I mouse over it, nothing happens?

      Sounds like you've got a problem with your mouse. When I mouse over it, my cursor moves just fine. My 6 year old kid should be able to help you with this problem.

    63. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      Think less ignorantly. Eclipse has a framework / plugin for C++ development...

    64. Re:Eclipse and Netbeans by BitZtream · · Score: 1

      I had to look at someone else's code and it was uber-hard to locate the places where all those macros and typedefs are.

      Than Eclipse sucks. If you can't right click on the word in an editor and be taken to the definition your IDE is a POS.

      One of my biggest complaints about NetBeans is the lack of a 'go to definition' and 'go to declaration' like you'll find in Visual Studio.

      NB: As a Java developer I was mildly insulted by the fact that TFA never even bothered to mention that he's looking for an IDE for C++.

      This just means you're stupid if you couldn't infer from the summary that the user was working with C++ since he mentions it several times with no mention to any other language. Sounds like the problems you have are likely you're own inexperience and inability to use the context given to figure out whats going on. I doubt any IDE can help you.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    65. Re:Eclipse and Netbeans by BitZtream · · Score: 1

      1) VS can be slow to start, and can be annoying, doesn't need to occur often so it doesn't really bother me.

      2) So does Visual Studio, they just didn't make a UI for you to do it as an end user. With some registry hacking you can plugin any compiler you want, even cross compile with GCC, though debugging in the idea is pretty much out at that point so its moot. Considering your choices are GCC, which produces shitty code and doesn't really have any benifit on Windows, or the Intel optimizing compiler which will break just about any existing app in strange ways due to its extremely insane optimization methods, I'm not really sure why you would want to give up a perfectly good compiler in exchange for a slower or broken one, but it can be done if you REALLY need to.

      3) Not sure what you mean here, Visual Studio doesn't modify the directory if you are creating a project from existing sources. It has a few directories that it requires and puts things in, but those are configurable via the project file(s).

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    66. Re:Eclipse and Netbeans by Mechanik · · Score: 1

      I tried [Eclipse] as a C++ IDE for a while and found it quite nice, only to find out that C++ sucks compared to Java (from a developer's POV). I had to look at someone else's code and it was uber-hard to locate the places where all those macros and typedefs are. I haven't found an IDE that can help you here, so I ended up grepping a lot.

      Ummm... Highlight macro name or type name. Hit F3 for "Open Declaration." Or if you want the references to it, context menu->References->In Workspace. Or, use the language aware search dialog. Yep, difficult. Disclaimer: I work on CDT.

    67. Re:Eclipse and Netbeans by Mechanik · · Score: 2, Insightful

      I've used eclipse since version 2. I can't comment on it, I'm still waiting for it to open.

      This is a common theme. People tried out version 1 or 2 of Eclipse, bitched that it was slow, and never tried it again. Version 2 was... jeeze... probably about 2001 or 2002? I know when I started working on CDT in 2004, version 3.0 had just come out.

      Eclipse has come a long way in the last 5 years, and so have the JVMs. I think you'd find that there is a world of difference now in comparison.

    68. Re:Eclipse and Netbeans by swilver · · Score: 1

      No use with 2 GB of memory? By default it will use a max of 256 MB (limited by Java VM), and I found that to be enough for projects with 5000-10000 source files.

    69. Re:Eclipse and Netbeans by swilver · · Score: 1

      C++ is just not well suited for building an IDE around. That's really the power of Java/C#, they play nice with IDE's -- mainly due to the lack of macros and conditional compilation. It allows the IDE to be far more powerful and offer refactoring options I could only dream of when I was still programming C/C++. No amount of AI is gonna solve this really, for the same reason that dynamically compiled languages will never be able to do something simple as globally renaming methods/variables without side effects.

    70. Re:Eclipse and Netbeans by caseih · · Score: 1

      For grokking other people's C++ code, cscope is an invaluable tool. It should make it very easy to find typedefs, macro definitions, variable definitions, etc, among entire groups of files. One of the more positive legacies of SCO!

    71. Re:Eclipse and Netbeans by SplashMyBandit · · Score: 1

      Netbeans got an overhaul of the editor in version 6 and the whole thing is significantly faster (I find editing and completion is now faster in Netbeans than Eclipse). In general Eclipse can often do more complicated things than Netbeans but I find that it is so much simpler to do equivalent things in Netbeans (as in the things you do many times per day rather than the complex things you do once every couple of projects). You mentioned OpenGL development. Netbeans has a nice (free) plugin for this that also helps designing shaders. Unless you're writing telephone network software I'd say jumping to Java is probably a good move (rather than .Net which is only fully implemented on one architecture on one O/S). With Java your productivity will end up higher than C++ and you're equipped from embedded to supercomputer and (almost) all operating systems.

    72. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      I echo whm's thoughts, never looked back after netbeans 4.5 its been smooth. cant comment about C++ though, remember using vi, but the GUIs have spoiled me so much, I dont remember much of the syntax either. huh!! I must be growing old..

    73. Re:Eclipse and Netbeans by RalphTheWonderLlama · · Score: 1

      Don't want bloat? Don't use an IDE.

      http://www.crimsoneditor.com/

      --
      simple, fast homepage with your links: http://www.ngumbi.com/
    74. Re:Eclipse and Netbeans by SoftwareArtist · · Score: 1

      I've been using Netbeans for C++ development for about a year, and I'm generally happy with it. It's true that C++ support is much less sophisticated than Java support (many fewer refactorings supported, etc.), but all the basics are there, and they work well enough.

      Prior to that I used Eclipse, and wasn't at all happy with it. If Netbeans treats C++ like Java's younger sibling, Eclipse treats it as the unloved stepchild. The C++ support was incredibly buggy, and didn't seem to be getting any better with successive releases. Also, I found the whole UI painfully convoluted and very hard to use. Moving to Netbeans was a big improvement in almost every way.

      I also use Visual Studio (not Express, the full version) for one project that requires it, and I absolutely detest it. So many of the basic features just aren't there, or don't work at all. For example, "Find all references" on a method will indiscriminately find references to every method of any class that happens to have the same name, "Go to definition" often takes you to the wrong class, there are no refactoring tools at all, etc. I wouldn't recommend it to anyone under any circumstances.

      --
      "I'm too busy to research this and form an educated opinion, but I do have time to tell everyone my uninformed opinion."
    75. Re:Eclipse and Netbeans by recharged95 · · Score: 1
      Netbeans with just the C/C++ kit is 23MB.

      .

      Eclipse on the other hand is 76MB in C/C++ config. And that doesn't include the SVN plugin whereas Netbeans has it by default.

      .

      Both IDEs have come along way. Netbeans has become lean-n-mean where as Eclipse is truly an IDE and framework.

    76. Re:Eclipse and Netbeans by OrigamiMarie · · Score: 1

      I was once trying to learn C++. I had Eclipse laying around on my computer, so I figured I would download the convenient C++ plugin, and learn in Eclipse. A few days later, I determined that Eclipse was absolutely not fit for C++ development. This is because I eventually figured out that Eclipse was playing a dirty trick on me. I expect that no matter which IDE you use, you have a reasonable expectation that every last print statement that was fired off before a seg-fault will arrive at the console, so you can debug by seeing where the program halted. This works with Eclipse & java, it works with C++ & command-line, and it does not work with Eclipse & C++. I only realized this out after a couple of days of trying to understand what I was doing wrong, and eventually noticing an inconsistency in the print statements, and then running on command-line. So unless you just want Eclipse for the very heavy editor, I would stay far, far away from Eclipse's C++.

    77. Re:Eclipse and Netbeans by gwait · · Score: 1

      That would be Sun, at the moment, sadly..

      --
      Bavarian Purity Law of Rice Krispie Squares: Rice Krispies, Marshmallows, Butter, Vanilla.
    78. Re:Eclipse and Netbeans by mystuff · · Score: 1

      Netbeans [1] and Eclipse [2] provide a fully functional C++ Integrated Development environment - and work on Windows too. Sure they might not work for *everyone* but they might both very well be on par with Dev-C++ and you know they are continuously extending the functionality of both projects. If you tried it in the past, it might be worth checking it out again:

      [1] http://www.netbeans.org/features/cpp/
      [2] http://www.eclipse.org/cdt/

    79. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      Nonsense. If your monitor flickers while installing it, that's a problem with your machine.

      What is this Linux zealot obsession with talking about how long somethign takes to install? You install it once and use it.

      To Linux zealots: features == 'bloat'

    80. Re:Eclipse and Netbeans by prozaker · · Score: 1

      java writing c++.
      that's so new age.

    81. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      Heavy NetBeans (and Emacs) user here. NetBeans 6.0 was a quantum leap. While using 5.5, I was thinking of walking away, since 6.0 came out I've been terrified that I might have to work on a Java project I can't use it on. It got a bit slower, but that was noticeably improved in 6.1.

    82. Re:Eclipse and Netbeans by kaffiene · · Score: 1

      Exactly my thoughts too. NB is sweet IMO

    83. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      If that's not bloated, then what is?

      Your mother

    84. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      Really? What are you using, a TRS-80?

    85. Re:Eclipse and Netbeans by Anonymous Coward · · Score: 0

      No you aren't. I've seen you.

    86. Re:Eclipse and Netbeans by Dr.+Hok · · Score: 1

      I tried [Eclipse] as a C++ IDE for a while and found it quite nice, only to find out that C++ sucks compared to Java (from a developer's POV). I had to look at someone else's code and it was uber-hard to locate the places where all those macros and typedefs are. I haven't found an IDE that can help you here, so I ended up grepping a lot.

      Ummm... Highlight macro name or type name. Hit F3 for "Open Declaration." Or if you want the references to it, context menu->References->In Workspace. Or, use the language aware search dialog. Yep, difficult. Disclaimer: I work on CDT.

      The problem is that it works only if all includes are resolved.

      Sorry, I was a bit sloppy in my original post. I forgot to mention that I had to examine a fairly large project, of which I only had the pure C++ code (some 3000 cpp files + 3000 h files) without a makefile, i.e. there was no information about the include paths (these 3000 header files had only 2000 unique names in 100 inc directories, plus a couple of third-party libraries that were not included). In case you wonder: I didn't have a makefile, because it was to be autogenerated on the build machine in an old, home-grown environment that I couldn't reproduce for various reasons.

      In this (possibly unusual) case Eclipse was unable to help me because it needed all included files, including nested includes, repeat ad nauseam... (literally), before it could start locating the declarations of symbols used in a file. It took me a couple of days before I realized that it was virtually impossible to resolve all includes. Of course, this is a shortcoming of C, not Eclipse.

      This problem simply doesn't exist with Java: All you need are the first-level imports which are well-defined, including package names, so finding them is a piece of cake even for obscure third-party libraries. And it doesn't even matter whether you have the sources or the compiled class files.

      --
      Say out loud: I'm an Aspie and I'm somewhat proud, I guess. Uh. Can I write an email in all caps instead? Hm...
    87. Re:Eclipse and Netbeans by mgcarley · · Score: 1

      Somewhat agree. I think I have about 4 or 5 different eclipse installs on one machine. I'm not entirely sure why. Possibly they are borked, possibly I got bored over a series of different days...

      Lets see now... QT Java, QT C++, Android... uh... Flex... and... AIR... hrm. Should really look at that machine.

      --
      Founder & COO, Hayai India (hayai.in) / USA (hayaibroadband.com) // t: @mgcarley
  4. Emacs by onnellinen · · Score: 5, Insightful

    What else would you need?

    1. Re:Emacs by Anonymous Coward · · Score: 5, Funny

      That's somewhat obvious.

    2. Re:Emacs by umghhh · · Score: 0, Redundant

      give the parent mod points for he is speaking the words of wisdom!

    3. Re:Emacs by Bazouel · · Score: 2, Funny

      vi?

      --
      Intelligence shared is intelligence squared.
    4. Re:Emacs by Anonymous Coward · · Score: 1, Funny

      An editor to run on that fine OS.

    5. Re:Emacs by Anonymous Coward · · Score: 0

      sup dawg. I heard you like emacs, so I replaced your vmlinuz with emacs. I hope everything still works ok, but since you posted I guess you didn't notice. If you don't believe me, check the checksum. /made you look

    6. Re:Emacs by syousef · · Score: 5, Funny

      What else would you need?

      Vallium, Panadol and Coke.

      --
      These posts express my own personal views, not those of my employer
    7. Re:Emacs by mikeage · · Score: 0, Redundant

      It's a nice OS... but it needs a good text editor

      --
      -- Is "Sig" copyrighted by www.sig.com?
    8. Re:Emacs by Carewolf · · Score: 4, Insightful

      vi is not an IDE or emacs competitor. Now vim on the other hand...

    9. Re:Emacs by BattyMan · · Score: 1

      Really... is this even a question?

      --
      Exceeding the recommended torque is not recommended.
    10. Re:Emacs by DMUTPeregrine · · Score: 2, Interesting

      There is one, it's called Viper.

      --
      Not a sentence!
    11. Re:Emacs by Anonymous Coward · · Score: 0

      A lecturer once cracked the hilarious joke: You cannot spell "vile" without "vi".

    12. Re:Emacs by pmontra · · Score: 1

      Please don't mod parent as Funny but as Informative. I'm using Emacs right now and have been using it since too many years to tell. It works fine, I can even add to it all those fancy little windows (Files, Projects, Navigation, Debug, Watch, etc) that fill up the screen in IDEs, but never felt the need for it. I'm also using Netbeans 6.5 when some customer forces me too, but Emacs is better and requires 10 times less RAM.

    13. Re:Emacs by LaskoVortex · · Score: 1

      You cannot spell "vile" without "vi".

      Yes, and emacs put the vile in vi.

      --
      Just callin' it like I see it.
    14. Re:Emacs by Anonymous Coward · · Score: 0

      Tss all you need is an Hex Editor some hardware charts and you're done. Oh you can also use nano if you find it too much trouble to make the documentation in hex.

    15. Re:Emacs by Anonymous Coward · · Score: 1, Funny

      Indeed, zsh is the best IDE!

      Full integration with every programming program ever made, what more could you ask for?

    16. Re:Emacs by martin-boundary · · Score: 1

      Actually, you can always "ed-it".

    17. Re:Emacs by dzfoo · · Score: 1

      In most Linux installations, and even in Cygwin, "vi" is aliased to "vim" in the default Bash profile; hence the confusion of some people regarding the two.

      I used "vi" in Solaris and BSDi (csh) back in the mid 90s, and years later discovered "vim"; and I can attest to the differences between them, in features and usability!

                -dZ.

      --
      Carol vs. Ghost
      ...Can you save Christmas?
    18. Re:Emacs by Anonymous Coward · · Score: 0

      What else? A good editor of course!

    19. Re:Emacs by Anonymous Coward · · Score: 0

      Well, it it's an editor you want, there's only one standard.

    20. Re:Emacs by Anonymous Coward · · Score: 0

      if you run vim as "vi", it will run in VI compatability mode, which is probably not what you want.

    21. Re:Emacs by dzfoo · · Score: 1

      I didn't mean run "vim" as "vi", I meant the profile aliases the command "vi" to "vim", so whenever a user types "vi" they are actually running "vim" (in "vim" mode), and some don't know the difference.

                -dZ.

      --
      Carol vs. Ghost
      ...Can you save Christmas?
    22. Re:Emacs by ColonelPanic · · Score: 1

      What else would I need? A decent text editor that interacts well with the Unix environment around it. I use aoeui.

      --
      "Skill shows through where genius wears thin." -Wittgenstein || Religion: uniting aviation and architecture.
    23. Re:Emacs by rrohbeck · · Score: 1

      Hookers?

    24. Re:Emacs by Anonymous Coward · · Score: 0

      Yeah, but more importantly...can you build GUI interfaces in Visual Basic so that we can track IP addresses with it?

    25. Re:Emacs by Anonymous Coward · · Score: 0

      Text editor?

    26. Re:Emacs by rbanffy · · Score: 1

      There is an add-on for those who can't get rid of their vi habits

    27. Re:Emacs by boowax · · Score: 1

      a text editor to go with it

      --

      You report, Slashdot decides
      Prevueing you're poast ownly hellps iff ewe no how two spel inn teh furst plase
    28. Re:Emacs by DriedClexler · · Score: 3, Insightful

      Spare hot-swappable pinky fingers?

      --
      Information theory is life. The rest is just the KL divergence.
    29. Re:Emacs by Anonymous Coward · · Score: 0

      He said he needed an IDE, not a new operating system. Sheesh!!

    30. Re:Emacs by marcosdumay · · Score: 1

      On the fly error checking. Really, that and go to function definition (somehow with a keyborad, while a click is acceptable for Eclipse, it will be quite out of hand at Emacs).

      Those are the only features worth adding.

    31. Re:Emacs by ManWithIceCream · · Score: 1

      I always alias 'vi' and 'vim' to 'emacs' (or 'emacs-nox' depending on what system I use.)

    32. Re:Emacs by gwait · · Score: 1

      Ditto!

      Notepad with syntax highlighting is not an option!

      --
      Bavarian Purity Law of Rice Krispie Squares: Rice Krispies, Marshmallows, Butter, Vanilla.
  5. Eclipse by cblack · · Score: 5, Informative

    I like Eclipse as an IDE because it supports many languages/modes and is very customizable. I mostly use it for Java, Perl and HTML/XML/CSS right now. There are MANY plugins and the context-aware help/auto-complete is very well done.

    1. Re:Eclipse by El_Muerte_TDS · · Score: 5, Informative

      Also a great feature of eclipse is that you can install multiple copies of it on the same machine.
      This is specially useful because MANY plugins make eclipse slow. So for every major project environment (i.e. Java, or PHP, or PDT, ...) I have a separate eclipse install.

    2. Re:eclipse by codekavi · · Score: 1

      I love vi/vim and it's my preferred editor of choice.
      One small problem: poor support for non-ascii character display. That's what makes me use eclipse instead.

    3. Re:Eclipse by buchner.johannes · · Score: 3, Informative

      Eclipse is pretty awesome for C aswell: Automatic Code formatting, resolving macros (and even respect them in auto-formatting).
      Yeah and what every other does: Ctrl-Click on functions to jump there, project tree, file outline, etc.

      But at the end of the day, you'll still have to think and write the code yourself :-)

      --
      NB: The message above might reflect my opinion right now, but not necessarily tomorrow or next year.
    4. Re:Eclipse by Azverkan · · Score: 1

      Eclipse has IMHO the best configuration for selecting the files to tag with the "Derived" folder property. I am willing to put up with fact that it is slower and buggier than most of the competing solutions primarily because of how much easier it is to manage tagging for large projects. The indexer itself is slow for C/C++ files and fairly buggy (both the quick and full versions tend to hang on large projects a lot).

      http://www.mojavelinux.com/blog/archives/2006/03/eclipse_resource_filtering_using_derived/

      For extremely large projects, I still tend to use Visual SlickEdit (fairly expensive). It is extremely quick when updating tags for extremely large projects. I would prefer to use a cross platform open source editor, but none of the ones I have evaluated can match it in speed yet. Eclipse looks promising and might be able to close that gap in the future.

      In terms of feature set, I am not aware of anything that can separate reader tags from writer tags like Source Navigator is capable of. The project was abandoned a few years ago, but some new maintainers have recently made a new release.

      http://sourcenav.berlios.de/

      If you do any work on headless servers or embedded systems, you will likely have to pick a console editor like vi or Emacs along with cscope in addition to whatever GUI tools you choose.

    5. Re:eclipse by ChunderDownunder · · Score: 1

      JDK 1.5 runs on OpenVMS, with 1.6 in beta, so yes.

      DOS and OS/2 (eComStation keeps it on life-support) are dead platforms. Eclipse could possibly be set up to cross-compile for them if necessary.

    6. Re:eclipse by Anonymous Coward · · Score: 0

      I swear by Eclipse

      I swear at Eclipse.

    7. Re:Eclipse by derGoldstein · · Score: 1

      If you're using Eclipse for Perl/PHP/Python and web standards (X/HTML/Javascript/CSS), then you may want to check out Komodo Edit.

      For Java, it's hard to beat Eclipse, but for the other things you mentioned Eclipse is a bit heavy, IMO. Needless to say, if you have everything integrated into Eclipse so that you can do Java and the other languages, then you're probably better off with just one IDE. However I find Komodo very useful for dynamic languages as well as web standards.

      --
      Entomologically speaking, the spider is not a bug, it's a feature.
    8. Re:Eclipse by buchner.johannes · · Score: 1

      Uh, what I forgot:

      Build with just Ctrl-B, buggy lines are highlighted - so comfortable. I bet Anjuta + Code::Blocks do this too, but what made these a no-go was that I needed a autocomplete for structs.
      stp->[Ctrl-Space] or st.[Ctrl-Space]
      Afaik Anjuta and Code::Blocks only support autocomplete if you have already written at least one character.

      --
      NB: The message above might reflect my opinion right now, but not necessarily tomorrow or next year.
    9. Re:eclipse by icebraining · · Score: 1

      Really? I use UTF-8 with latin characters without any problems.

    10. Re:Eclipse by Zebedeu · · Score: 1

      Thanks for the link to Eclipse.
      I'm sure no one here knew what it was or how to find it.

      I keed, I keed.

    11. Re:Eclipse by LunatikOwl · · Score: 0

      Also, you can install is to memory stick and use it everywhere.

      IMHO Eclipse is great for Java, good for C++ and OK for PHP. But the main reason I use it is its UI consistency. Once you learn to use it it doesn't matter in what language you working on, so using it in a new language has almost zero learning curve.

      Also it makes it easy to work on different projects in different languages at the same time - a blessing with applications that use both python and C++ code for example.

    12. Re:Eclipse by twostix · · Score: 1

      I can understand using Eclipse for Java with it's multitude of libraries, clases and threeHundrendAndFiftyMillionCharacter class and method names, but for Perl? Really?

      And surely a 400MB editor is overkill for HTML and CSS which requires nothing more than a syntax highlighting text editor...

    13. Re:eclipse by H0p313ss · · Score: 1

      Vim runs on DOS and VMS and OS/2.

      That's hardly an endorsement.

      --
      XML is a known as a key material required to create SMD: Software of Mass Destruction
    14. Re:eclipse by martas · · Score: 1

      Runs on all platforms.

      Depends on your definition of "runs". On my 2 year old machine, it does nothing but crawl...

    15. Re:Eclipse by oldhack · · Score: 3, Informative

      Language-sensitive reference search sold me on Eclipse. No more recursive grepping through the source tree. That was years ago, and now all IDEs seem to have that and more in varying capacity.

      --
      Fuck systemd. Fuck Redhat. Fuck Soylent, too. Wait, scratch the last one.
    16. Re:eclipse by otakuj462 · · Score: 1

      what's not to like? :-)

      No plugin that implements vi keybindings :(

    17. Re:Eclipse by Anonymous Coward · · Score: 0

      I use Eclipse for Python (PyDev plugin), awesome

    18. Re:eclipse by ADRA · · Score: 1

      I don't see how you could reasonably graft on moded text editor bindings onto a modeless IDE, but by all means, write a plugin if you like. What I do like (though rarely use) is that basically every operation you could want to use within the IDE can be bound to any set of key combinations. We're talking several hundred unique operations key bindable. Of course the number of actual commands depends on what features/plugins you've installed.

      --
      Bye!
    19. Re:eclipse by orclevegam · · Score: 1

      No plugin that implements vi keybindings :(

      There are a couple, but last I looked none of the free ones were any good. There was one that I think I paid $10 for that worked very well though.

      --
      Curiosity was framed, Ignorance killed the cat.
    20. Re:eclipse by otakuj462 · · Score: 1

      If you're talking about viPlugin, which, last time I checked (about 8 months ago) was commercial and cost $10, it wasn't complete enough to be generally useful to me. There's a vi emulation mode for Netbeans called jvi which is quite good. The other option which I'm currently investigating for Eclipse is eclim, which looks great and is actively developed, but was not very stable when I tried it.

    21. Re:Eclipse by Anonymous Coward · · Score: 0

      I'm glad for the link, all I was finding was this.

    22. Re:eclipse by orclevegam · · Score: 1

      I had looked at eclim in the past when it was essentially a way to re-skin the guts of Eclipse using vim, but it looks like they've since added more capability to allow you to embed vim inside eclipse itself, which is pretty cool. I don't remember whether viPlugin was what I used previously, but it's possible as all I really wanted it for was to be able to quickly jump around and do search and replace (e.g. :$s/foo(baz[0-9]+)/bar$1/i, or :?baz) which it seemed to handle just fine in addition to providing some minimum scripting support.

      --
      Curiosity was framed, Ignorance killed the cat.
    23. Re:Eclipse by mgcarley · · Score: 1

      See comment #28121575

      --
      Founder & COO, Hayai India (hayai.in) / USA (hayaibroadband.com) // t: @mgcarley
  6. GVIM by Anonymous Coward · · Score: 0

    GVIM does everything I need it to and more.

    I also happen to work in multiple character sets depending on the project (pure ASCII, UTF-8, pure SJIS, EUC, etc.) and to date I have never found an editor other than GVIM that will let me open and save files to different character sets effortlessly.

    The only complaint I would have at this point is the auto-suggest or whatever it's called, it didn't quite work for me when I tried it though I may not have set it up properly.

    1. Re:GVIM by mcvos · · Score: 1

      GVIM is not an IDE however. It's an editor, and one that can be integrated in various IDEs.

      I've even used GVIM in Visual Studio.

    2. Re:GVIM by zidohl · · Score: 1

      GVIM is not an IDE however. It's an editor, and one that can be integrated in various IDEs.

      Or you could integrate the IDE functionality into vim instead. Ars had a nice writeup on how to fairly effortlessly get IDE functionality in vim ( http://arstechnica.com/open-source/guides/2009/05/vim-made-easy-how-to-get-your-favorite-ide-features-in-vim.ars )

  7. 99% of the answers are going to be Eclipse by linzeal · · Score: 3, Insightful

    I like it, just wish I could get CUSP (Lisp plugin) working in Ubuntu. If anyone says Emacs or Vi they are insane and have never done 10k lines of code in a modern environment.

    1. Re:99% of the answers are going to be Eclipse by 1s44c · · Score: 2, Informative

      If anyone says Emacs or Vi they are insane and have never done 10k lines of code in a modern environment.

      There's the thing, it's not about 'modern environment', pretty displays, or cute graphics. It's about writing good stuff and cuteness is just a distraction from that.

      Both vi and emacs can handle files with 10k lines easily. Chances are they both can handle much longer files before swapping then any IDE.

    2. Re:99% of the answers are going to be Eclipse by Chris_Jefferson · · Score: 1

      Seriously? Swapping because of much larger files?

      Even 50MB of pure source is inconceivable to me (someone might provide a good counterexample), and that's a tiny amount of the memory of any modern system.

      --
      Combination - fun iPhone puzzling
    3. Re:99% of the answers are going to be Eclipse by Tyris · · Score: 5, Insightful

      If you're writing 10,000 lines in a single file regularly, then your probably need to re-evaluate your coding methods (and you're probably not writing "good stuff"). An IDE does more than just allowing you to fill a file with many lines of text, it keeps your 10,000 lines over multiple files organised... and you know... a huge number of other helpful things (code-completion/etc).

    4. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      If you've got 10k lines in one file ur doing it wrong.

    5. Re:99% of the answers are going to be Eclipse by BadAnalogyGuy · · Score: 5, Funny

      If you're writing 10,000 lines in a single file regularly, then your probably need to re-evaluate your coding methods

      Word wrap is deceiving. I only wrote 5 lines of code. They are just very long lines.

    6. Re:99% of the answers are going to be Eclipse by C3c6e6 · · Score: 5, Insightful

      I don't think the parent's point about handling 10k lines of code has to do with with ability to load these files into memory but rather about managing the complexity of such projects. When a program becomes this big, it becomes harder to keep track of all the names of variables, the argument types of subroutines etc. IDEs like Netbeans or Eclipse have autocompletion functionality that make your life as a developer at lot easier.

      It's possible of course that Emacs or vi provide similar functionality but the main point is that you need some type of IDE when managing a large, complex development project.

    7. Re:99% of the answers are going to be Eclipse by 1s44c · · Score: 1

      If you're writing 10,000 lines in a single file regularly, then your probably need to re-evaluate your coding methods (and you're probably not writing "good stuff"). An IDE does more than just allowing you to fill a file with many lines of text, it keeps your 10,000 lines over multiple files organised... and you know... a huge number of other helpful things (code-completion/etc).

      I agree about the 10,000 line files. It shows something else is wrong that an IDE, vi, emacs, or whatever can't directly solve. My point was that choosing an IDE over emacs because IDE's handle 10,000 line files better doesn't make sense.

      From what I've seen IDE's help people write code faster, but they don't help people write better code. Maybe I should try out this Eclipse thing just to see what all the fuss is about.

    8. Re:99% of the answers are going to be Eclipse by 1s44c · · Score: 2, Informative

      Seriously? Swapping because of much larger files?

      Even 50MB of pure source is inconceivable to me (someone might provide a good counterexample), and that's a tiny amount of the memory of any modern system.

      I wasn't suggesting that source code comes in files 10k lines long. linzeal was suggesting it as a reason for IDE's being better than vi or emacs. I was ( trying to ) point out it was a silly argument for exactly the reasons you have said.

    9. Re:99% of the answers are going to be Eclipse by oGMo · · Score: 2, Insightful

      If anyone says Emacs or Vi they are insane and have never done 10k lines of code in a modern environment.

      Heh. If you think that, you have never written (or perhaps grokked) a single line of Common LISP in SLIME. There is nothing quite like developing your code while it's running. And debugging and changing your code. While it's still running. And, well, never really being out of your program.

      IDEs are a quaint imitation. Source analysis? Pfft. How about "active running code analysis" that's tied into what you're currently editing. Integrated debugger? Pfft. You mean you have to stop your program to fix the function you're in the middle of?

      --

      Don't think of it as a flame---it's more like an argument that does 3d6 fire damage

    10. Re:99% of the answers are going to be Eclipse by PeterBrett · · Score: 1

      If anyone says Emacs or Vi they are insane and have never done 10k lines of code in a modern environment.

      Emacs. And I have done several large projects entirely using Emacs, and I've never found it to be anything other than an excellent IDE which does exactly as little or as much as I need it to.

      All of my attempts to use so-called "modern" development environments have left me frustrated at their wanton squandering of screen real estate, ridiculously slow start-up times, and lack of integrated, competent diff and merge utilities.

      But I forgot -- I'm insane, so clearly my experiences and opinions are irrelevant and can be dismissed out of hand. Of course.

    11. Re:99% of the answers are going to be Eclipse by debatem1 · · Score: 2, Interesting

      I like it, just wish I could get CUSP (Lisp plugin) working in Ubuntu. If anyone says Emacs or Vi they are insane and have never done 10k lines of code in a modern environment.

      Let me start this out by saying that I use Eclipse daily, and that I consider that a modern environment.

      Let me qualify that statement by saying that if our ultimate ancestors had known that the eventual development of Eclipse was the price of progress, they would have stayed in the trees.

      I may be insane but 10k is nothing compared to some of the projects I've worked on using vim, and while I can't claim to be 100% satisfied, at least I don't feel like it's actively fighting me.

    12. Re:99% of the answers are going to be Eclipse by Haeleth · · Score: 3, Informative

      If anyone says Emacs or Vi they are insane and have never done 10k lines of code in a modern environment.

      I've worked on programs much larger than 10kloc in both Emacs and Netbeaans. I gave up on Netbeans and went back to Emacs because I was just so much more productive there -- even when working in (yuck) Java.

      It's pretty modern these days, too. It has intelligent autocomplete, it has a class browser, it has jump-to-definition, it will tell me the type of the variable under the cursor, it does code folding, it does source-level debugging ... in fact, pretty much the only thing present in "modern" IDEs that Emacs doesn't have is a point-and-drool GUI designer, and that's fine by me because I don't design GUIs.

      And it is far, far better at actually editing text than any IDE editor I've ever seen.

      Also, it reads mail. :p

    13. Re:99% of the answers are going to be Eclipse by umghhh · · Score: 1

      no you do not IDE to do that or to put it differently - Emacs is an IDE - it allows to edit, compile and in some cases debug code of (almost) arbitrary size and structure. One can even consider vi as a part of IDE with command line compilers and other tools. You may not consider such environment as integrated but that is your perspective - others have different one.

    14. Re:99% of the answers are going to be Eclipse by phantomfive · · Score: 1

      Interesting story about that, a year ago or so I had to look through some text log files that were megabytes long each. Emacs couldn't handle it, they were too long. I went through a number of text editors, and finally found that wordPad could handle them. Talk about depressing. I sure didn't mention that one to any of the windows fans in the office.

      All the same, I do prefer emacs. Autocomplete is kind of nice, but it's a hack that isn't necessary if your code is written well. It encourages people to write code that relies on it. If you have the feeling you can't live without it, then you need to get out of the cage there for a while and breath some fresh air (I'm trying to be nice there. I really want to say something a lot more confrontational). And I'm not the only one. Linus uses Emacs. It's a great tool.

      --
      Qxe4
    15. Re:99% of the answers are going to be Eclipse by ratinox · · Score: 1

      This, a million times this!

    16. Re:99% of the answers are going to be Eclipse by YeeHaW_Jelte · · Score: 1

      "If anyone says Emacs or Vi they are insane and have never done 10k lines of code in a modern environment."

      Anyone saying that hasn't used vi beyond :wq

      --

      ---
      "The chances of a demonic possession spreading are remote -- relax."
    17. Re:99% of the answers are going to be Eclipse by jonaskoelker · · Score: 5, Informative

      If anyone says Emacs or Vi they are insane and have never done 10k lines of code in a modern environment.

      Hoping that I'm not about to start a flame war: why?

      I assume you're qualified to make that statement, which means you know both emacs and vi very well. Whenever you think there's something $EDITOR can't do, you have (1) searched the web for that functionality; (2) asked in the relevant IRC channel(s); and (3) asked on mailing lists, news groups, forums and the like.

      Let's see; they have (I'm most certain that I'm speaking about emacs, less certain about vi)

      • Syntax highlighting (i.e. colouring)
      • Good automatic indentation
      • Automatic auto-completion of names
      • Easy code navigation (ctags, etags, ecb-minor-mode)
      • Version control integration (M-x shell or vc-minor-mode, :!git-commit)
      • Debugger integration (M-x gdb, achida*)
      • Build system integration (:!make & or M-x shell make)
      • man page (vi) and browser integration (both emacs and vi) to view your documentation

      Uhmm... what more do you want? Especially for small 10k-line projects. Example: wminput, which translates wiimote events to uinput events, is 9236 lines (in wminput/**/*.[ch]; this doesn't include bluetooth or wiimote libraries).

      I think that if you think 10k lines even begins to stretch the capabilities of emacs (or vi), you don't know either editor very well. And you can probably find people who'd point at me and laugh (and suggest I don't know the editors very well) when I suggest that 10m begins to stretch their capabilities ;-)

      And I think they'd have a good case: at 10m lines, it's not a question of good editors but of good architectures. Good architectures will allow each developer to work on somewhere between 10 to 100 klocs at a time, not worrying about anything outside their slice of code (until they move on to their next project). [But this is wild conjecture, so take it with a bucketload of salt...]

      * pronounced "a(rrrrrhhhhh)ida", like how Stallman pronounces the chi in "LaTeX" and "TeXinfo" or ch in "Bach". I'm not sure about spelling. Search Google tech talks for Bram Molenaar if you really want to know (and hey, it's a nice talk in its own right).

    18. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0, Insightful

      Yep, that's why Common LISP in SLIME is so pervasive in commercial development -- heck, in all types of development really.

    19. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      Are you fucking kidding me? 10kloc isn't a large program. You could reasonably write a program that size in fucking *Notepad*.

    20. Re:99% of the answers are going to be Eclipse by wizzat · · Score: 1

      I've done 10k lines of code in a 'modern' environment (that's *REALLY REALLY* small!), and I've done well over a million lines (and counting by the day) in VIM. Real IDE's tend to be really crappy at editing and manipulating text, and the only thing they really bring to the table is GUI development. I don't do GUIs (often).

    21. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      We use vi to develop android at work, and that includes kernel development.

    22. Re:99% of the answers are going to be Eclipse by fractoid · · Score: 3, Funny

      Perl is not an appropriate language for monolithic applications.

      --
      Rampant carbon sequestration destroyed the Dinosaurs' tropical paradise. I'm here to help repair the damage.
    23. Re:99% of the answers are going to be Eclipse by Tyris · · Score: 2, Insightful

      From what I've seen IDE's help people write code faster, but they don't help people write better code. Maybe I should try out this Eclipse thing just to see what all the fuss is about.

      Certainly true. I read the parent post as implying a project where 10,000 lines of code is likely to exist. In such a case I struggle to imagine effectively using something like vi or emacs (not that I use them actively) when compared to what is offered by a good IDE.

    24. Re:99% of the answers are going to be Eclipse by fractoid · · Score: 2, Insightful

      When a program becomes this big, it becomes harder to keep track of all the names of variables, the argument types of subroutines etc.

      If you're talking about a project, 10,000 lines is not big. A single _file_ of 10k lines is big, but why for the love of god would you do that?

      Clearly thought out code structure will keep your project pretty easy to read and work with up to maybe 20-30k lines (more if you're smarter than me, less if you're working on unfamiliar code). After that, an IDE becomes increasingly helpful because it saves you time searching for variable definitions, members of structs/classes etc. The application I'm working on (accounting software yay) at my current job has probably ~2mil lines of code, and is small in comparison with the codebase at my old job (an MMO game client).

      --
      Rampant carbon sequestration destroyed the Dinosaurs' tropical paradise. I'm here to help repair the damage.
    25. Re:99% of the answers are going to be Eclipse by i.of.the.storm · · Score: 1

      Also, with CEDET you get pretty nice autocomplete in Emacs. And on the matter of opening large files, I'm not sure why you had that problem but you might want to try a pager like less instead of a text editor, at least if you just want to view the log files. I find that less works best for opening huge random files.

      --
      All your base are belong to Wii.
    26. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      I don't think he meant 'modern environment' as in pretty displays; I'm sure he meant a modern commercial project, where using something as low-level as emacs or vi would be counterproductive.

    27. Re:99% of the answers are going to be Eclipse by SerpentMage · · Score: 2, Insightful

      Let me make a bet here...

      The person using GVIM or EMACS has 10,000 lines BECAUSE of GVIM, or EMACS... Flipping files in an IDE is trivial... In an editor like GVIM, or EMACS it is not a trivial. Ok not that hard, but I wonder if tedious as compared to an IDE.

      HENCE, they have 10,000 lines in a source code file because of the environment they are using.

      --

      "You can't make a race horse of a pig"
      "No," said Samuel, "but you can make very fast pig"
    28. Re:99% of the answers are going to be Eclipse by Gordonjcp · · Score: 1

      From what I've seen IDE's help people write code faster, but they don't help people write better code.

      I've never understood how IDEs are supposed to help you code faster. Someone's bound to trot out autocomplete, but that's about the first thing I switch off. It's an irritating, concentration-breaking distraction when it works, and a bug-generator most of the time when it doesn't work and guesses wrongly.

    29. Re:99% of the answers are going to be Eclipse by slibuntu · · Score: 1

      God damn complex PERL regexps..

    30. Re:99% of the answers are going to be Eclipse by shadowknot · · Score: 2, Insightful

      no you do not IDE to do that or to put it differently - Emacs is an IDE - it allows to edit, compile and in some cases debug code of (almost) arbitrary size and structure. One can even consider vi as a part of IDE with command line compilers and other tools. You may not consider such environment as integrated but that is your perspective - others have different one.

      Absolutely right, the notion that "integrated" means a single program or window with a lot of widgets and toolbars is a pretty narrow view of what an integrated environment is. I could make a similar argument that because I use GNOME Terminal which has multiple tabs it is an IDE (which for me it is). I accept that some people are more effective and comfortable working in an IDE such as Eclipse or Netbeans but I am more comfortable in a terminal that gives me access to text editors, compilers etc. There is no _one_ solution for all that is _better_ it is down to personal preference and working style. If you don't feel comfortable in an "IDE" or in a text editor with shell access then you are not going to be productive.

    31. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      Haha, you're right! Only a complete newbie would never have grokked a line of Common LISP in SLIME!!

    32. Re:99% of the answers are going to be Eclipse by shadowknot · · Score: 1

      I don't think he meant 'modern environment' as in pretty displays; I'm sure he meant a modern commercial project, where using something as low-level as emacs or vi would be counterproductive.

      The notion that you can only be productive in an IDE is a specious one. Developers, as I'm sure you are aware, are sticklers for comfort. I happen to be comfortable in a text editor (vim) with shell access. Forcing me to use an IDE would be counterproductive as it is not a comfortable place for me to work. This is not a matter or IDE's being better or plain old editor's being better it is down to personal preference.

    33. Re:99% of the answers are going to be Eclipse by thorne51 · · Score: 1

      if you're struggling with something like screen real estate then you're probably using the IDE wrong. Most IDE's have collapsible panels. My NetBeans setup is a glorified text editor with the project management view (files and directories and such) all collapsed as i don't want to see these constantly. Eclipse has this feature as well. Emacs and vim are great tools for quickly editing a file and updating some code on a remote linux box. I use vim every day, but managing a huge project with total 10k lines of code distributed over hundreds of files with a tool like vim is a nightmare. For working on projects, go with and IDE like Eclipse or Netbeans, especially if you're doing multiple mini-projects. For small "hello world" apps that aren't gonna do much intensive stuff, use vim. As for the debate between Netbeans or Eclipse, its a matter of personal choice. I have worked with both and I prefer using Netbeans (I'm still a bit green and Netbeans has been a huge help). The more expert coders have been known to use Eclipse but I'm not too crazy about the whole feel for it.

    34. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 1, Informative

      I do the same in Eclipse when coding in Java at least, modify code, and variable value, while the code is running and testing the result without the need to relaunch...what is your point ?

    35. Re:99% of the answers are going to be Eclipse by jrumney · · Score: 1

      I think that if you think 10k lines even begins to stretch the capabilities of emacs (or vi), you don't know either editor very well.

      Emacs itself has one individual source file that exceeds 25k lines (32k if you count generated files), and probably a dozen more around 10k.

    36. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      You mean you have to stop your program to fix the function you're in the middle of?

      Um, no. Eclipse hot deploy + a web app in tomcat = win. You only need to redeploy when you change the class signature.

    37. Re:99% of the answers are going to be Eclipse by AlXtreme · · Score: 5, Informative

      The person using GVIM or EMACS has 10,000 lines BECAUSE of GVIM, or EMACS... Flipping files in an IDE is trivial... In an editor like GVIM, or EMACS it is not a trivial. Ok not that hard, but I wonder if tedious as compared to an IDE.

      Bollocks: Ctrl-x b. For us emacs-users, it's second-nature.

      The reason why so many people still prefer vim or emacs is that we can do everything efficiently using the keyboard only. Coding, switching files, compiling, debugging, everything. And we can do that on our own computer, or on one on the other side of the world with merely ssh and the command-line editor of choice.

      You might think that something as simple as switching between files isn't trivial in vim/emacs, but that only shows that you haven't learned either. You can point and click all you want, but programming isn't done with a mouse.

      --
      This sig is intentionally left blank
    38. Re:99% of the answers are going to be Eclipse by Chris_Jefferson · · Score: 1

      Woops, missed the subtlety there. My bad.

      --
      Combination - fun iPhone puzzling
    39. Re:99% of the answers are going to be Eclipse by GreatBunzinni · · Score: 1

      I use vim extensively and I fully agree. On top of the features you mentioned there are also other great features such as tabbing (:tabnew, :tabedit, gt to switch tabs, etc...), screen splitting (:split, :vsplit, ctrl+W,w to switch between screens, etc...), text markers that the user can jump into with only a couple of keypresses (m{a-Z} to create a mark and label it {a-Z], g'{a-Z} to jump to that mark, etc...) and even automating certain actions through macros.

      I'm sure emacs also have these features but unfortunately we don't usually see them in those fancy text editors bundled with all sorts of crap (i.e., IDEs). So to insinuate that editors such as vim or emacs can't hold their own in relevant-size projects is disingenuous at best.

      --
      Slashdot, fix your code or at least hire someone who is competent at it to do it for you.
    40. Re:99% of the answers are going to be Eclipse by peppepz · · Score: 1

      Some examples:
      If you’re working on a PHP site on a remote machine, an IDE will manage uploading via ftp only the files you’ve modified, taking care of dependencies.
      If you’re working on a Java project, you can rename a Java class or move it in another package and the IDE will take care of refactoring all the code for you. This includes moving the source files in the file system, updating every class referencing that one, and even updating comments, if you want.
      If you’re working on a C project, it can tell you where a preprocessor macro was defined and every instance where it has been used.
      If you’re writing an XML document, such as an XHTML web page, it will tell you when your document does no longer validate, even while you’re typing.
      Whatever project you make, an IDE can usually create every possibile kind of output package (jar, tar.gz...) with no need for you to manage Makefiles and update them when the dependencies change.

      It’s nothing that you can’t do without an IDE - it’s just that an IDE lets you do it faster and with less effort.
      And, in some IDEs you can usually embed your favourite editor - which, of course, should be VIM - if you like so.

    41. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 1, Interesting

      • Syntax highlighting (i.e. colouring)

      Yes, vi has this. I'd also like to say that I think coloring is helpful, but it's a crutch you can live without. Reading in color requires less attention to detail, which leads to less productive code review. Seriously.

      • Good automatic indentation

      Vi has some rudimentary indentation support, but there is no substitute for a language-aware indentation tool. For example I like to use 'indent' for ansi C and 'astyle' for C++. Unfortunately there are no tools (yet) that can properly indent perl, javascript, or C99 (the C and C++ tools all choke on the { .foo = 42 } style initializers).

      • Automatic auto-completion of names

      I like it in languages that require it, but needing this feature is usually a sign that you're doing something wrong. And using it without an integrated context-aware parser is torture. I hate to say it, but Microsoft's tools win hands down here.

      • Easy code navigation (ctags, etags, ecb-minor-mode)

      Get cscope!

      • Version control integration (M-x shell or vc-minor-mode, :!git-commit)

      Serious/rhetorical question: Why on earth would you want to commit from within vi?

      Don't do that. Edit your file. Test that it does what you think it does, and then commit it.

      • Debugger integration (M-x gdb, achida*)

      See above. Sadly this is another place Microsoft's offerings kick our ass.

      • Build system integration (:!make & or M-x shell make)

      Again, Microsoft wins here. But I still prefer keeping a separate window for make.

      • man page (vi) and browser integration (both emacs and vi) to view your documentation

      I don't want browser integration in anything. Why would you subject yourself to security risks in your IDE? Keep it simple, stupid. No integration.

    42. Re:99% of the answers are going to be Eclipse by Razalhague · · Score: 1

      Flipping files in an IDE is trivial... In an editor like GVIM, or EMACS it is not a trivial.

      1. Open files in different editors
      2. Alt-Tab or simply use the task bar
      3. ???
      4. Profit!

      I'm pretty sure vim has commands to do all that in one process, but it isn't exactly a memory hog. Besides, the window-manager already has the functionality built in, so why bother?

      Also, I have more trouble switching between files in Eclipse since Ctrl-Page Up/Down keeps switching between the alternate views instead of files.

    43. Re:99% of the answers are going to be Eclipse by PeterBrett · · Score: 1, Insightful

      Emacs and vim are great tools for quickly editing a file and updating some code on a remote linux box. I use vim every day, but managing a huge project with total 10k lines of code distributed over hundreds of files with a tool like vim is a nightmare. For working on projects, go with and IDE like Eclipse or Netbeans, especially if you're doing multiple mini-projects. For small "hello world" apps that aren't gonna do much intensive stuff, use vim.

      To be frank, if you really think that 10kloc is too much of a "huge project" for Emacs or vi, then I get the distinct impression that you really don't have the experience of either software projects or Emacs to be handing out advice on either.

      I regularly work on a project with approx. 150k lines of C code, not to mention Scheme code, build scripts etc. When working on that project, I can use Emacs to edit C, Scheme, Flex parsers, Bison grammars, Makefiles, M4 files, shell scripts, and gettext translations, and can use it to do compilation and full-text searches on arbitrary subsets of the files in my project. I get all of this with context-sensitive Tab autocompletion and indenting, and consistent syntax highlighting. It also integrates with my version control system (Git) & patch management system (StGit). I can use it to create and edit diffs, and refine three-way merges. All I need to work on that project is a terminal emulator and an Emacs instance.

      The thing that makes Emacs so great is that it scales all the way from quickly hacking config files to a fully-fledged IDE with all the features you'd expect from one. Your claim that all it's good for is, '...small "hello world" apps that aren't gonna [sic] do much intensive stuff,' is risible.

    44. Re:99% of the answers are going to be Eclipse by dzfoo · · Score: 1

      Wow, indeed. Next time we'll try a hammer.

              -dZ.

      --
      Carol vs. Ghost
      ...Can you save Christmas?
    45. Re:99% of the answers are going to be Eclipse by PeterBrett · · Score: 1

      The person using GVIM or EMACS has 10,000 lines BECAUSE of GVIM, or EMACS... Flipping files in an IDE is trivial... In an editor like GVIM, or EMACS it is not a trivial. Ok not that hard, but I wonder if tedious as compared to an IDE.

      Why on Earth is this moderated 'Insightful'?

      Flipping files in Emacs is trivial! If you're a mouse-addicted GUI fanatic, you Ctrl-leftclick on the buffer and you get a nice drop-down menu of all of the buffers you've currently got open. If you prefer not to move your hands from the keyboard, you press C-x b and start typing the name of the file you want to switch to, tab-complete and press return. Alternatively, hit C-x C-b and get a clickable list of every buffer you've got open along with what mode it's in, its size and its associated filename. There's about three other ways to do it, including the "Buffers" menubar item that shows about the last 10 buffers you visited, etc., etc.

      Most people who whinge about Emacs seem to never have actually used it for long enough to realise that Emacs is an IDE, not a text editor. Its just that unlike most IDEs, it works quite well as a simple text editor as well.

    46. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      Modern environment is not about pretty displays, or cute graphics so much as sensible well designed outlines, views and code management tools. Just because your computer can manage 10k lines easily does not mean you can without proper tools.

    47. Re:99% of the answers are going to be Eclipse by dzfoo · · Score: 5, Insightful

      I don't know about emacs, but in vim I can open multiple windows at a time (not to mention multiple buffers!), and switch between them rather effortlessly.

      Look, most of use defending vim and emacs are not saying that it is impossible to use an IDE to be productive; just that it isn't necessary. I certainly believe that each person should work with whatever tools they feel comfortable.

      However, the "IDE kids" keep categorically rejecting the notion that you can be productive in anything but a large, bulky (and yes, maybe even bloated) integrated system. They would do good not to be so narrow-minded.

      I've used both and, although I see value in some IDEs, I personally prefer using the leaner, smaller tools. Sometimes all those windows and automatic wizards and code injectors just get my way.

              -dZ.

      --
      Carol vs. Ghost
      ...Can you save Christmas?
    48. Re:99% of the answers are going to be Eclipse by fredrik70 · · Score: 1

      well, see the recatoring tools that are available now in better IDEs:
      * autocompletion (yay!)
      * extract code to a method
      * extract interface from class
      * rename class/method/variable and let IDE change every occurance of it
      * autogenerate repetitive code parts (singleton patterns, getters and setters for class members, etc)
      * shortcuts for loops and other common contructs (like type 'itar', meaning Iterate Array, and IDE generates code to iterate the nearest array it finds, etc)
      * find all references of a method
      * go to the definition of a method
      and more!!!

      I'm sure some of this stuff can be found in emacs/vim as well iirc

      --
      if (!signature) { throw std::runtime_error("No sig!"); }
    49. Re:99% of the answers are going to be Eclipse by tkinnun0 · · Score: 1, Insightful

      Does it refactor methods signatures? Update import statements when copy-pasting code from an other class? Generate hashCode() and equals()? Extract a method from a block of code? Rename methods, classes, fields or local variables? Inline methods? Suggest quick fixes?

    50. Re:99% of the answers are going to be Eclipse by nschubach · · Score: 2

      A single _file_ of 10k lines is big, but why for the love of god would you do that?

      Because headers go at the top of the code...not in another file that's why they call them headers! /sarcasm

      --
      Every time I start to have faith in humanity, I ruin it by driving to work between 7 and 8 am.
    51. Re:99% of the answers are going to be Eclipse by c · · Score: 1

      > Both vi and emacs can handle files with 10k lines easily.

      Additionally, vi and emacs are just the editors. The command line is the IDE, and for *nix development it's perfectly adequate. There's decades of work behind it to make it adequate.

      I wouldn't touch Windows development without an IDE.

      c.

      --
      Log in or piss off.
    52. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      I totally agree.

      Modern coding is modular, and to be modular there is no way you're going to have a source file that is 10 000 lines long.

      As far as I am concerned, eclipse is good for me. I love how it underlines the errors I make, or auto completes.

      It is especially good when I add new code to my programs.

      When just editing a few things here and there, I just use vi or vim because of how fast it starts up, because I find it on every single server I use, including systems I don't manage.

    53. Re:99% of the answers are going to be Eclipse by Vanders · · Score: 1

      10k? I've got a 15k+ C++ project which I wrote from scratch in what is essentially the Syllable equivalent of Notepad. In fact I use the same editor for all of my development work in Syllable: kernel, Glibc, porting stuff like WebKit, writing new applications...all of it. My "IDE" is Bash. Which is how I like it!

    54. Re:99% of the answers are going to be Eclipse by dublindan · · Score: 1

      I dunno, I use eclipse for work and its the most unstable piece of software in my toolbox. Its also quite slow and eats memory.
      I also use vim for work and it is extremely stable, fast and uses very little memory.

      Feature-wise, vim compares pretty favorably to eclipse:
      Both support plugins
      Both support syntax highlighting for a large range of languages
      Both have convenient editing shortcuts
      Both support code completion
      Both support tabbing
      ... etc

      I admit that a freshly installed unconfigured eclipse is much much more usable than a freshly installed unconfigured vim, but once configured properly (eg, I use NERDTree and a bunch of other plugins, some I wrote myself) vim can do everything eclipse can and more (I can run vim in a remote terminal. I cannot do that with eclipse, for example).

      Yes, vim takes a lot of work to get going, but IMHO once it is, its worth it. To each his own however.

    55. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      You don't seem to know what you're talking about.

      Vim is great for small to medicore (up to 30k lines) projects Try :[v]split in vim, along with :Sex.*

      * not a joke

    56. Re:99% of the answers are going to be Eclipse by cerberusss · · Score: 1

      Those five lines are Java with a lot of trinary operators.

      class Blah {
          public static void main( String[] args ) {
              return (args[1].equals("--version") ? "Blah-a-licious version blah" : (args[1] == "--help" ? "No help available" : (args[1] ? ) /* INSERT CODE HERE */ )));
          }
      }

      Count 'em. Five lines, bitch.

      --
      8 of 13 people found this answer helpful. Did you?
    57. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      If anyone says Emacs or Vi they are insane and have never done 10k lines of code in a modern environment.

      I have... and "modern" IDE are great - if only the had a decent editor. So I went back to emacs.

    58. Re:99% of the answers are going to be Eclipse by SwabTheDeck · · Score: 1

      Both vi and emacs can handle files with 10k lines easily. Chances are they both can handle much longer files before swapping then any IDE.

      I think the point the parent was trying to make is that it's a huge pain in the ass to write a large app using a simple text editor vs. a full-blown IDE, not that there are hard limits on how many lines of code they can handle (which I would imagine that ANY type of coding environment should be more than capable of handling far more lines of code than anyone would ever sanely have open at a given time. It's just text, folks! Imagine what a couple gigs of text looks like and that's roughly how long it'll take until you start "swapping"). There are plenty of things that Emacs and Vi[m] can do that true IDEs do like syntax highlighting, bracket matching, etc. In fact, my roommate wrote his own .vimrc that's like 300 lines long and has all sorts of ridiculous stuff in it that I didn't even know was possible. However, what they don't do is integrate with the compiler and the debugger well. Sure, you can run gcc or make or whatever from inside Vi by using the ! command, but once you've attempted to compile and eventually muck something up, it's then up to you to read the compiler output and navigate manually to the problem area. This may be fine if you have one problem, but if you have several, this process becomes burdensome. What it amounts to is a lot of extra typing, and no clear advantage over a full IDE. The classic terminal editors definitely have their uses, though. If you're on any sort of *nix system that you haven't had the pleasure of configuring yourself, Vi is almost certainly on there and ready to go. If you want, you can easily just pop in your own .vimrc and it'll work just as you'd like it. Also, if you're stuck doing work remotely over SSH (which I've done my fair share of) having a full-featured text editor at your disposal is quite refreshing.

    59. Re:99% of the answers are going to be Eclipse by Antique+Geekmeister · · Score: 1

      I certainly have. Usually, that's what "libraries" were invented for, to allow you to factor code into usable functions. If you're stuffing that much code all into one file, you're usually doing something very, very, very wrong.

      But it happens, usually in legacy code written by one of theose "creative wizards" who was very brilliant and kept all that mess in their head, but was never taught to write in modular fashion, or who was never taught that "small operations make small mistakes". And then, Emacs is my savior, with the splittable windows so I can reference different parts of the same file in the same environment and make parallel changes to multiple parts of the code.

      And it takes noticeable resources, but one heck of a lot less resources than a big old local editing and compilation environment when the machine I want to actually compile and test on is in another state. Let's hear it for terminal based toolkits to keep that Bittorrent downloader down the hall from interfering with real work!

    60. Re:99% of the answers are going to be Eclipse by Bluesman · · Score: 1

      And it can use VI keybindings, so you can simulate using the best text editor in the best IDE. M-x viper-mode is the only emacs keybinding you need to learn.

      --
      If moderation could change anything, it would be illegal.
    61. Re:99% of the answers are going to be Eclipse by BerntB · · Score: 2, Insightful

      I have it easier to keep multiple code windows open in Emacs, since I don't lose lots of area to IDE buttons etc. (I generally run two A4 of Emacs and one A4 Shell window. If I do development, I'd really need another screen for browsers and other windows).

      --
      Karma: Excellent (My Karma? I wish...:-( )
    62. Re:99% of the answers are going to be Eclipse by richpm · · Score: 1

      Of course you could put some Eclipse into your vim and (maybe) get the best of both worlds. http://eclim.sourceforge.net/

    63. Re:99% of the answers are going to be Eclipse by jellybear · · Score: 1

      Not just C-x b, but bookmarks (C-x r m) and registers (C-x j r) as well as ETAGS lookups (M-.) and that's just the beginning. Emacs is a champ as far as jumping around multiple files.

    64. Re:99% of the answers are going to be Eclipse by mario_grgic · · Score: 1

      Yes, because in VIM CTRL+] is really hard. And CTRL+o to go back where you came from. It's just like Eclipse, navigate to the definition of what ever you are on, and go back to where you came from.

      Of course you need to use ctags to build the tags file for your entire source code base, and the nice thing is ctags works for a lot more languages than your average IDE, and is quite fast too.

      --
      As the island of our knowledge grows, so does the shore of our ignorance.
    65. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      managing the complexity of such projects. When a program becomes this big, it becomes harder to keep track of all the names of variables, the argument types of subroutines etc.

      Cohesion, cohesion, cohesion. It's the only way to fly.

    66. Re:99% of the answers are going to be Eclipse by cain · · Score: 1
      May be a troll, but:

      "flipping files" in Vim:
      :Sex - explore current directory in other window, hit 'return' on filename to edit in the new buffer
      :e[file] - open file for editing in another buffer
      :ls - lists files open in other buffers.
      :bN - where 'N' is the number of the open buffer you want top flip to
      :b[file] - where [file] is a portion of the filename open in a buffer you want to flip to
      :bd - close current buffer

      etc.

    67. Re:99% of the answers are going to be Eclipse by mario_grgic · · Score: 1

      Aha, I work on over 2 million lines of code base, and all the new guys that come in and use their IDEs, can't match the speed of old farts with bash and vim. As matter of fact, they can't even follow what is going on looking over the shoulder. The bash screen just flashes too fast for them, and text flies around and things magically happen.

      Then, they shut up pretty fast about their IDE. And when you go over to their desk to help them out, you are frustrated by how slow it takes to find a file to edit and make a simple change. You just want to take the keyboard from them and "bash" their head with it.

      --
      As the island of our knowledge grows, so does the shore of our ignorance.
    68. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      One word, refactoring

    69. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      Let me make a bet here...

      The person using GVIM or EMACS has 10,000 lines BECAUSE of GVIM, or EMACS... Flipping files in an IDE is trivial... In an editor like GVIM, or EMACS it is not a trivial. Ok not that hard, but I wonder if tedious as compared to an IDE.

      HENCE....

      C-x C-f filename
      C-x 3
      C-x o
      C-x b
      from now on, C-x o to switch buffers. What? you had to touch your mouse? you just lost the game son.

    70. Re:99% of the answers are going to be Eclipse by twostix · · Score: 1

      If you think 10k lines of code is a large or even medium project then yes your lack of experience probably requires you to use an IDE.

    71. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      I may be just an old timer, but at one point we managed multiple thousands of lines of code using punch cards! While modern IDE's make it much easier to keep track of things, they also have a much larger learning curve just to use the coding environment.

    72. Re:99% of the answers are going to be Eclipse by thorne51 · · Score: 1

      Well then I don't know Emacs that well then. I wasn't aware of all this functionality and will definately investigate, but I still think for a hobbyist programming something like Netbeans or Eclipse is very easy to use, user friendly, and the learning curve would probably be not as bad or as intimidating.

    73. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      "The person using GVIM or EMACS has 10,000 lines BECAUSE of GVIM, or EMACS... Flipping files in an IDE is trivial... In an editor like GVIM, or EMACS it is not a trivial. Ok not that hard, but I wonder if tedious as compared to an IDE."

      ^x b

      How much easier could it be?

    74. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      How is flipping files is not trivial? Here's how I'd edit all the files in a repository containing 'certain text' in Vim:

      > vim `grep -rnil 'certain text' *`

      I have ^n and ^p mapped to :next file and :prev file, so flipping's dead simple. Or try :split or :vsplit for direct comparison. I use five kinds of auto-completion, and with ctags can jump to a function's definition with ^].

      I have regular expression search-and-replace one keystroke away. I have ^L mapped to a lint of the current file, so syntax checking is almost unconscious.

      I have a room full of IDE users continually asking me for text processing help.

      The story of Vim in my experience is that for the first month everything takes 2-5 times longer, then that ratio reverses itself. The Vim book is a very worthwhile read.

    75. Re:99% of the answers are going to be Eclipse by Coryoth · · Score: 2, Insightful

      I think that if you think 10k lines even begins to stretch the capabilities of emacs (or vi), you don't know either editor very well.

      To be somewhat fair to the OP, I believe his point was more that if you try a modern IDE for a decent amount of time (say 10k worth of code) instead of just dismissing it after opening it and fiddling for a bit, you'll come to appreciate the advantages it offers. Whether that's actually the case is debatable, but the thrust of his point -- that people often dismiss an editor/IDE without actually taking the time to fully appreciate what it can do -- is, indeed, exactly the same as yours. I've used both Emacs and Eclipse extensively, and they both have their pros and cons, not all of which are obvious without actually making good use of them.

    76. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      You know they have this thing called X where you can have more than one terminal open at a time right?

    77. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      If anyone says Emacs or Vi they are insane and have never done 10k lines of code in a modern environment.

      I actually use vim to code on a project that consists of over 14,000 lines of PHP and over 10,000 lines of C. I use cscope and a handful of key mappings to quickly navigate through the project. And of course there's completion and syntax hilighting as well. People are often amazed at how efficiently I can jump around function calls and definitions.

      Ctags is nice, but it is not nearly as powerful as cscope in terms of flexibility. Cscope provides the ability to not only go directly to function definitions, but also can jump around files and locate calls _to_ a particular function or all the calls a particular function makes, among other things. Pair that with ctrl-T for backtracking through the tag stack, and you have a very powerful way of exploring the code of a project of any size.

    78. Re:99% of the answers are going to be Eclipse by Coryoth · · Score: 1

      On top of the features you mentioned there are also other great features such as tabbing (:tabnew, :tabedit, gt to switch tabs, etc...), screen splitting (:split, :vsplit, ctrl+W,w to switch between screens, etc...), text markers that the user can jump into with only a couple of keypresses (m{a-Z} to create a mark and label it {a-Z], g'{a-Z} to jump to that mark, etc...) and even automating certain actions through macros.

      I'm sure emacs also have these features but unfortunately we don't usually see them in those fancy text editors bundled with all sorts of crap (i.e., IDEs).

      In fact Eclipse can do all of the things in the GPP and the things you list here fairly effortlessly. Which is not to say that it is better than Emacs or Vim, but rather that you seem unaware of all the capabilities some IDEs actually offer. Emacs, Vim, and IDEs like Eclipse have their pros and cons, and there are perfectly good reasons for wanting a person wanting to use any one of them. It is better, generally speaking, to have informed reasons however.

    79. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      Also, it plays tetris, it's really the best OS out there...

    80. Re:99% of the answers are going to be Eclipse by twostix · · Score: 1

      Dont worry, when they grow up they'll be defending their old arcane and "inefficient" IDEs against the new generation of WYSIWYG code generators.

      Frontpage 2020: Java Edition!
      Frontpage 2020: C++!

      "Well I personally use Frontpage Java Edition because it's more *efficient* than ugh writing "code". I mean get with the times, nobody can program a *real* application in an IDE in 2020, it's impossible!" - 22 year old code monkey, 19 August 2020

      I'm only half joking...

    81. Re:99% of the answers are going to be Eclipse by PeterBrett · · Score: 1

      Sure, you can run gcc or make or whatever from inside Vi by using the ! command, but once you've attempted to compile and eventually muck something up, it's then up to you to read the compiler output and navigate manually to the problem area.

      Incorrect, as far as Emacs is concerned. When you run make in compilation-mode, you get a buffer with clickable links for each error/warning that take you to the file and line affected (and there are keystrokes for next/previous error). Made changes and want to recompile? Go to the compilation buffer, hit 'g'. It'll prompt you to save any modified buffers, then go away and run your make command line again.

      I strongly recommend that you investigate what Emacs and vim are capable of even without customised rc files before you come and make any further statements about what they can and cannot do. Quite a lot of people say that, "Emacs can't do X," when what they mean is, "I don't know how to make Emacs do X."

    82. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      It scares me that Emacs is now the lean editor system? (And you probably read your email in it tooâ¦)

      That said, I use whatever is handy, (and yes I've worked on real code bases, 1M+ lines.) Emacs is fine (I use it as a text editor, nothing else,) Eclipse & Netbeans sometimes, vi (and friends) but I'm not super proficient, and then text editors Textmate, joe, etc.

      I'm not sure that the person who talked about cons, didn't have it right. I think people who want a IDE expect 3 main things from it: editor, build system, and debugger interface. Is that true?

    83. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      Umh, first of all, gvim is in pretty rough shape. But I guess it says a lot about you that you mentioned the graphical front end...
        The Linux kernel is one project where I know emacs and vim are widely used. That's 11 million lines of code.
        One can have several files open in vimacs, of course, but if you're writing code that way, you're doing it wrong.

    84. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      Uhmm... what more do you want?

      1. Type hierarchy
      2. Find references to method/class/whatever
      3. As-you-type error checking (the red squiggly lines)
      4. The clickable explorer / outline
      5. Jump to type (basically a search form for classes, no more need to know exactly where a class is in order to jump to it)
      6. Various refactoring tools
      7. Showing documentation while performing autocompletion (i.e. javadocs in Eclipse, very useful when you're trying out classes you are not familiar with in the java standard libs as you don't need to go to your browser to look at the documentation to tell what a method does)

      Don't get me wrong, it is possible to develop in emacs/vim, and I've spent time using vim/ctags/gdb, but a properly made IDE will save you a _lot_ of time if you know how to use it.

    85. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      Yes, there is a learning curve. You must not be very far along it.

    86. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      > If anyone says Emacs or Vi they are insane and have never done 10k lines of code in a modern environment.

      I work with Linux, Linux embedded, and Windows. The one thing that I've always found in common between them is vi is present (emacs to a lesser degree but I never got the taste for it).

      Additionally, I've started using CodeLite (http://www.codelite.org/) which is also cross platform. It supports C/C++ very well, is in regular development, and isn't as bloated as most of the other editors I've tried out.

    87. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      M-X speedbar

      It sounds that most people talking bad about Emacs here have only fired up it once or twice and never took the time to actually read the manual (well, why am I not surprised, this is Slashdot after all).

    88. Re:99% of the answers are going to be Eclipse by bartwol · · Score: 1

      Let me make a bet here...

      The person using GVIM or EMACS has 10,000 lines BECAUSE of GVIM, or EMACS... Flipping files in an IDE is trivial... In an editor like GVIM, or EMACS it is not a trivial. Ok not that hard, but I wonder if tedious as compared to an IDE.

      ...said not only by a person who [obviously to many of us] doesn't know, but with the conviction of person who doesn't know what he doesn't know.

      Good luck with all that confidence.

    89. Re:99% of the answers are going to be Eclipse by maxume · · Score: 1

      I thought he was using 10,000 lines as an amount of experience (and that less than that would not give enough experience with the IDE to convince one of the benefits).

      --
      Nerd rage is the funniest rage.
    90. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      Moolenaar

    91. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 1, Insightful

      That is exactly what is wrong with Emacs users. Of course the people who are ex-Emacs users (like myself) know ctrl-x b. It works great if you remember the names of the files you are switching to. What happens when you didn't write the code you are editing and have no idea what file you need? In an IDE it is a trivial problem, using CLI style the first thing I would do is grep. You can solve the problem either way and you can argue the merits, but I always feel like current Emacs users who argue with those who have left Emacs always think that we left because we're idiots. Emacs users kind of epitomize the "if your only tool is a hammer then everything looks like a nail" crowd.

    92. Re:99% of the answers are going to be Eclipse by dzfoo · · Score: 4, Funny

      Wow! what a smart comment. I'm impressed. Did you write that yourself, or was there a wizard for it?

              -dZ.

      --
      Carol vs. Ghost
      ...Can you save Christmas?
    93. Re:99% of the answers are going to be Eclipse by esme · · Score: 1

      If anyone says Emacs or Vi they are insane and have never done 10k lines of code in a modern environment.

      I've worked on projects much larger than 10k loc, in vim. Without syntax highlighting, completion, folding, etc. Of course vim can do all those things, I just don't use them. I mostly use 4-8 terminals with a couple dedicated to compiling and/or deploying webapps, and editing files in the rest.

      The point is: different tools work for different people. Just because you like one set of tools doesn't mean that set of tools is objectively better, or is going to be good for any particular person.

    94. Re:99% of the answers are going to be Eclipse by orasio · · Score: 1

      Of course you do need an IDE.
      The thing is that it's very ignorant to say that Emacs is not an IDE.
      GNU + vi could be an IDE, also, although I wouldn't know, because I don't like modal interfaces, and I don't have enough experience with vi.

      I am a mostly Java programmer, and I use primarily Eclipse, because I am lazy. I worked with Emacs a lot, when Eclipse and the JVM were too slow to be workable on some machines. Emacs takes some getting used to, but provides code completion, and very good source code navigation. I wouldn't miss any of Eclipse's features I I went back to Emacs. Of course, I work with other people, and I just cant expect them to take the time to learn Emacs (I'm not _that_ good at convincing people), but it's a good alternative for me.

      If you know your tools, like autoconf - style tools, or maven in the case of Java, the features an IDE provides besides source code editing (packaging, building, tests, providing dependencies, SCM) do not surpass their command line alternatives.

      I understand that learning how to be productive using command line svn and make or maven might be a bit hard, but it's a big fat lie to say it's less _productive_ than pointing and clicking. Specially because it's so difficult to put together a point and clicking script.

      It might be _harder_ than a point and click IDE, but it's not less productive.

    95. Re:99% of the answers are going to be Eclipse by MagicM · · Score: 1

      Build system integration (:!make & or M-x shell make)

      Integration. I do not think it means what you think it means.

    96. Re:99% of the answers are going to be Eclipse by Matthew+Weigel · · Score: 1

      Errr, nope, I work on modern commercial games and Emacs works great. We exceed 10kloc by orders of magnitude, we have the budget for great tools, and Emacs is what I choose.

      --
      --Matthew
    97. Re:99% of the answers are going to be Eclipse by maraist · · Score: 1

      Forget 10k lines, that's a 'small project'. Try 100k lines. To the IDE, the only difference is how much memory you need to have installed (for those that cache all symbol names in mem). I currently need about 3 to 4 gig of RAM (the last half gig is for non-editor stuff :)

      Variable-completion was done by emacs 20 years ago. That's trivial. Try these features (which I use daily):

      * preview-javadoc, preview-function[method] parameter signature/overloaded signatures, preview-jump-to-source, jump-to-source - no mouse needed - I NEVER need API docs, because signatures and view-source is 100% accurate, while [java]docs tend to be stale, but they're still useful to get intended use-patterns. But the time-saving of not going to a web-browser to search for documentation pays for itself (even the premium editors).
      * version-control visual-diff history overlays on a per-line basis (both annotation graphics and popups)
      * real-time compiled syntax and LOGIC checking (i.e. 'you're doing something stupid here', annotations)
      * function/method/field/variable not-used highlights, field assigned-but-not-used (also variable used before assigned, but in java at least that's an error condition)
      * sub-class, super-class method visual markers
      * test-code-coverage line-highlights
      * create-unit-test from method icons. (which go away as you create them)
      * jump-to-next/prev method (though I sorely miss the vi jump to matching paren, editors that optionally support vi accelerators tend to lose most of the IDE's niceness in that mode WHATS WRONG WITH YOU PEOPLE??)
      * Quick at-a-glance file-has-errors, file-tree-path-has-errors
      * Quick at-a-glance file/path has changed since last VCS checkin
      * Rename variable (invasive contextual search, even into HTML files that would use template attributes), Rename method, Rename class, extract interface from class (renaming all references to former class to use the new interface where possible)
      * Safe-delete (check to see if anything is meaningfully using this symbol - meaningful may optionally include references in comments and or templated code such as used in HTML)
      * Delegate structure/object (use pass-through getters/setters, so you can 'proxy' the structure/object)
      * real-time editing of actively debugged code!!!! Meaning if while stepping through the debugger I see a bug, I can make a change, and the next time through the loop, the new code is applied. (don't know if it works in C, but definitely interpreted languages - java has some limitations - can't change signatures only method-bodies)
      * Can step through HTML as it's rendered on the back-end, some support for debugging the javascript that's dynamically generated (I haven't used this part, and firefox's firebug is often more than sufficient)
      * At a click auto-decompile 3'rd party source-less code. (assuming it hasn't been obfuscated - though even then, the logic can be reverse-engineered). And by at-a-click, I mean, I'm looking at my code, I see a method call to a 3'rd party library, I move my cursor to it and hit Control-G, and boom - decompiled as if it were my own code, sitting in a temp path which can be included in my workspace. I can then actually edit this code and ship it with my code. Fixing 3'rd party bugs in SECONDS. Try doing that with emacs, much less vim. Of course you have to be conscious of licensing issues, but what else gives you this much power in off-the-cuff open-source contributions??? As a result, my overworked schedule has allowed me to submit patches to open-source projects with no more than half an hour of total distraction time (on the company dime).
      * If 3'rd party source-code is available (and auto-linked via something like maven), then you're even better able to understand their code, because white-space is often a subtle form of documentation (these 5 lines are related, then there's a double-space then new code). I often find that MUCH more descriptive than a "//". Also, you're patches are easier to create because you have actual line-

      --
      -Michael
    98. Re:99% of the answers are going to be Eclipse by uarch · · Score: 1

      "If anyone says Emacs or Vi they are insane and have never done 10k lines of code in a modern environment."

      To claim no one who's worked with even a small amount of code (10k isn't that much tbh) would never use vim or emacs again is a bit ignorant. If you organize things properly it really isn't very hard even if it isn't ideal.

      That being said, I'll completely agree that a good IDE can make a large project easier.

    99. Re:99% of the answers are going to be Eclipse by Tarsir · · Score: 1

      I certainly believe that each person should work with whatever tools they feel comfortable. However, the "IDE kids"...

      Unbelievable. You say something, and then contradict it just four short words later! Apparently, you believe people should only use IDEs if they are inexperienced, or perhaps incompetent, programmers, which is very much different from working with whichever tools they feel most comfortable.

    100. Re:99% of the answers are going to be Eclipse by SparkleMotion88 · · Score: 1

      Uhmm... what more do you want?

      • Automated refactoring (e.g. renaming a variable/function/class and having all references updated)
      • Configuration management integration (e.g. create a "task" associated with a Jira entry. When switching to that task all files for that task are opened. When completing that task, files are checked in to source control with the appropriate Jira tags, the Jira entry is updated, and a peer review package is generated).
      • Integration with other tools (modeling, automated test)

      I agree with the assertion in previous posts that IDEs provide a lot of efficiency in some situations. Not all software development is hacking and debugging -- some of us work in a very rigorous environment where we have to contend with things like configuration management, peer review, automated testing, architecture modeling, etc. We don't enjoy doing these things as much as we enjoy writing code, so getting our IDE to help us with some of these "other things" saves us time and makes work less tedious.

    101. Re:99% of the answers are going to be Eclipse by maraist · · Score: 1

      And you point out an important point. Pair-programming doesn't work with vi* as a good vi* person will fully leverage the hundreds of accelerators which provide no visual feedback (which is awesome for editing over slow network connections).

      And you wonder why the newbies stand there in depressed frustration..

      Pair-programming (including training) requires lots of contextual information. Even a good person is pressed to their limits in being able to remember the path that got them to a point of code, much less understand the purpose/impact of that code-file. What does it do (the name of the file might have helped - is that displayed anywhere?), what files does it use? (Are there any graphical linkages to descriptions of module-names?) Who uses the code? (any ability to search the code for invocation points, or better yet 'list' invocation points).

      I find that when I encounter a new piece of code, I need to traverse it linearly to follow a use-case. When an external reference is made, sometimes the name of that reference is sufficient, but often times, I don't trust that the code is immutable, so I need to traverse it to see if bad-coding mutated the state beyond expectation. If you're the passenger, you can't easily follow these trains of thought. And it becomes slightly irritating to constantly ask to inspect the contextually referenced code.

      The best thing to do is have the trainee 'drive' and have the experienced one navigate. This keeps the trainee from getting lost/frustrated - quick verbal descriptions will be easier/more-accurate than documentation.

      Note these have little to do with the editor. BUT, an editor can GREATLY enhance a trainee's ability to digest new code. See my other post in this thread for a listing of powerful inspection capabilities that are nearly impossible in most editors except theoretically emacs.

      --
      -Michael
    102. Re:99% of the answers are going to be Eclipse by kungfugleek · · Score: 1
      One of the most useful things Eclipse has is code references -- highlight a variable (or method name, or class name, etc), right-click and "Show References" lists all the places in your project/workspace (however you have it configured) where that specific thing is referenced. It's not just text search either -- it pays attention to context like (in Java) scope, method overloading, etc, so you don't get false positives. Doing that on a public method when you're trying to decide whether to change its signature or create a delegate method (for example) is very handy. I've also used it to check and see if an odd-looking method is actually be called from anywhere. Just wondering if emacs/vim does that? Just curious -- not trying to perpetuate the flame war or anything.

      What's really strange is that a lot of Eclipse developers I've talked to don't even know about that feature.

      Oh, and I wanted to respond to the comment about "at 10m lines, it's not a question of good editors but of good architectures..." That's totally true, but for some of us, we don't have the luxury of coming into a project when it's first being built, and so we have to just deal with the architecture that's there. It sucks but it's life. So for some cases, an IDE that can handle extremely large and poorly organized files is a necessity.

    103. Re:99% of the answers are going to be Eclipse by H0p313ss · · Score: 1

      Wow! what a smart comment. I'm impressed. Did you write that yourself, or was there a wizard for it?

      -dZ.

      I do hope you were aiming for irony.

      --
      XML is a known as a key material required to create SMD: Software of Mass Destruction
    104. Re:99% of the answers are going to be Eclipse by dzfoo · · Score: 1

      Way to miss the point, there; that takes skill. I was deriding those who feel a necessity to say that it is impossible to be productive without using an IDE.

      And, yes, in my experience, those who make such claims are typically inexperienced people who have not really tried other tools, hence my "IDE kids" remark.

      I personally feel you can be productive with whatever tools you feel comfortable.

                  -dZ.

      --
      Carol vs. Ghost
      ...Can you save Christmas?
    105. Re:99% of the answers are going to be Eclipse by Abcd1234 · · Score: 1

      Meh, all handy little features, none of them necessary.

      Does it refactor methods signatures?

      How often do you do that, really? Hell, I have that in VS and I still never use it.

      Update import statements when copy-pasting code from an other class?

      Again, never needed it.

      Generate hashCode() and equals()?

      Emacs and Vim can both be set up to support templates, so it can be done. Besides, this is just boilerplate... again, convenient, but by no means necessary.

      Extract a method from a block of code?

      Vim: da{, type in method signature, p

      No idea about Emacs. Again, convenient? Yes. Necessary? Hardly.

      Rename methods, classes, fields or local variables?

      Again, how often do you really do this that a simple search/replace in the current file won't be sufficient? Once again, I have this feature in VS... I never use it.

      Inline methods?

      Uh, that's the compiler/VM's job.

      Suggest quick fixes?

      Good Christ, I'll be damned if I want Clippy in my VM. Thanks but no thanks. :)

    106. Re:99% of the answers are going to be Eclipse by FireFlie · · Score: 1

      Somehow I doubt that autocomplete is the strongest feature that someone can point out in their IDE, but it's one that's certainly not limited to IDE's (M-/ in emacs).

    107. Re:99% of the answers are going to be Eclipse by jrumney · · Score: 1

      * Build system integration (:!make & or M-x shell make)
      Again, Microsoft wins here.

      As does M-x compile

    108. Re:99% of the answers are going to be Eclipse by bugi · · Score: 1

      Wrong tool for the job. Less is more.

    109. Re:99% of the answers are going to be Eclipse by Pinkybum · · Score: 1

      The main value of an IDE is having a Window Editor and being able to step through with the debugger. Although a window editor doesn't really help you very much in Java!! http://madbean.com/anim/totallygridbag/.

    110. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      I dunno about emacs but VI you need to search Google & install & configure all the extra stuff (auto-complete in VI is a pain to get configured the exact way you want, especially if you also want GVIM to work properly as well). Contrast that with a good IDE that has all that available from the get-go with all the common keybindings set up (e.g. ctrl-space for auto-complete which isn't what VI uses).

      BTW, ctags, etags, etc blow chunks. On any moderately sized project they breaks down because they just guess at parsing (they don't actually know your project configuration).

      Compare all this with something like KDevelop4 which now has amazing code completion that blows any VIM/emacs equivalent out of the water (and Visual Studio too). If you start writing a function within a class in the cpp file, it'll provide completion hints (CTRL+number) about what to do (i.e. add the function prototype to the header as well). If you use an iterator (although GCC 4.4 implements auto) you can write something like

      i = list.begin();

      & it'll provide a hint about adding the appropriate type.

    111. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      Do E-macs or VIM support code completion? It may be rotting my brain, but I think code completion makes me much more efficient as a developer. I post anonymously because I cannot bear the shame.

    112. Re:99% of the answers are going to be Eclipse by Medgur · · Score: 1

      I used Emacs on UE3. That's a few million lines of code.

      Visual Studio choked and died three or four times a day, so I did all the actual non-debugging work in Emacs in order to avoid losing state.

      That project really brought out my hate for Visual Studio. What a piece of garbage.

    113. Re:99% of the answers are going to be Eclipse by GreyWolf3000 · · Score: 1

      Do you know how many lines of code are in the Linux kernel? How many core contributors do you think use IDEs?

      --
      Slashdot: Where people pretend to be twice as smart as they really are by behaving like children.
    114. Re:99% of the answers are going to be Eclipse by ADRA · · Score: 1

      "You mean you have to stop your program to fix the function you're in the middle of?"

      When I started switched my Java IDE to Eclipse, this was one of the big OMG moments. This single feature saves me so much time, no other argument could sway me away from using it. Beyond that, there are so many features packed in there that I can't even imagine developing without it any more.

      --
      Bye!
    115. Re:99% of the answers are going to be Eclipse by Blakey+Rat · · Score: 1

      I use vim extensively and I fully agree. On top of the features you mentioned there are also other great features such as tabbing (:tabnew, :tabedit, gt to switch tabs, etc...), screen splitting (:split, :vsplit, ctrl+W,w to switch between screens, etc...), text markers that the user can jump into with only a couple of keypresses (m{a-Z} to create a mark and label it {a-Z], g'{a-Z} to jump to that mark, etc...) and even automating certain actions through macros.

      Visual Studio and Eclipse can do all of those things.

      I'm sure emacs also have these features but unfortunately we don't usually see them in those fancy text editors bundled with all sorts of crap (i.e., IDEs). So to insinuate that editors such as vim or emacs can't hold their own in relevant-size projects is disingenuous at best.

      Possibly true. However, it's also true that you're ignorant of the capabilities of IDEs and thus unfit to judge the other way 'round.

    116. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      Tell that to Radiator... open.com.au

    117. Re:99% of the answers are going to be Eclipse by ADRA · · Score: 1

      >>Does it refactor methods signatures?
      >How often do you do that, really? Hell, I have that in VS and I still never use it.
      A lot. When you work on projects that are less than perfectly coupled, this moves from handy to necessary.

      >>Rename methods, classes, fields or local variables?
      >Again, how often do you really do this that a simple search/replace in the current file won't be sufficient? Once again, I have this feature in VS... I never use it.
      If I rename/refactor an interface, my work has interfaces that are linked to literally hundreds of files. Its not something you want to risk doing wrong, or by hand. If I wanted to rename a method through eclipse, I would:
          - Select a method to rename
          - Shift-Alt-R (or use the right click menu
          - Type in a new name and hit enter. After a few seconds of crunching, all references have been renamed..

      This will find all structural links to that method in all open project that reference my editing project. Each and every reference to the method will get the name change, and life moves on. Through the command line, you could be spending days search/replacing every possible reference to the method in 100 files.

      --
      Bye!
    118. Re:99% of the answers are going to be Eclipse by natoochtoniket · · Score: 1
      If anyone says Emacs or Vi they are insane and have never done 10k lines of code in a modern environment.

      I don't recall the last time I worked on anything that was only 10K LOC. The system I work on most of the time is millions of lines. Most of the individual directories have at least 10K LOC in them, and most have much (much!) more than that. There are hundreds of header files, and hundreds of library files. We use imake to generate the makefiles. Even the makefile's are huge -- There are hundreds of them, and most of them have thousands of lines of make-language code.

      Periodically, someone tries to load this system into an IDE. It doesn't fit. They spend a few months trying, and eventually give up. One part of the problem is that a significant fraction of the code is actually written in application-specific languages. The compilers for those languages are built as part of the system. Another part is that just maintaining the list of required libraries in the 'project' file of an IDE is labor intensive, and must be done for each executable. Using imake to generate the makefiles allows us to automate most of that drudgery.

      But xemacs has no difficulty, at all. We have an xemacs mode adapted for each specialized language. Some of the developers prefer vi, of course. They both work.

      Just for the record, I have done a few 10K LOC programs in a "modern" IDE. I then had to re-do all of the 'project' stuff to move that code to a new IDE, just this year. I enjoy working with a nice GUI IDE on small projects at home. I suppose if you are working on a commercial system that only has a handful of executables, and only KLOCs for each, those same IDE tools might be useful. But seriously big systems require serious, portable, and maintainable tools.

    119. Re:99% of the answers are going to be Eclipse by BitZtream · · Score: 3, Insightful

      In modern computing, its not acceptable that you have to go out of your way to figure out how to do something that trivial.

      Its not the 60s any more, the last 50 years has been spent figuring out ways to make interfaces more user friendly. If you're 'IDE', be it vim or emacs can't be bothered to make itself a little more user friendly then why should users bother to use it?

      Not saying that you should stop using it or anything, if it works for you, more power to you. You should however stop suggesting it as though it were an acceptable solution. Its not. 20 years ago sure, today, its just not, especially to someone who is ASKING ABOUT IDEs. If they are asking about IDEs they are not experienced enough to start using user-unfriendly IDEs that require a reference manual until you memorize 7 or 8 hundred keyboard shortcuts to get the job done.

      , but programming isn't done with a mouse.

      And building a house isn't done with a screwdriver alone, but you certainly use a screwdriver when building a house, and a mouse when programming on anything that matters in a slashdot discussion.

      If you like emacs or vim, good for you, glad it works. Just stop being such a retarded short sighted, my way is the only way, douche bag and stop pushing it on the rest of the world.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    120. Re:99% of the answers are going to be Eclipse by jparker · · Score: 1

      > The reason why so many people still prefer vim or emacs is that we can do everything efficiently using the keyboard only
      > You might think that something as simple as switching between files isn't trivial in vim/emacs, but that only shows that you haven't learned either.

      When I used Visual Studio regularly (don't hate - you try using something else to make Xbox games) I did everything through the keyboard as well. Ctrl-I to enter immediate mode, of UnBlah.cpp, keybinds to switch between associated headers and cpps, etc. I had keybinds macro'ed to build or run every configuration, so I could do it with a single key chord without moving my hands from the keyboard or even switching apps.

      At the same time I was writing our linux-based dedicated server (for the PC SKU) over ssh using vim and makefiles. I love vim; I use it for just about everything text-based I do (and once as a hex editor in a pinch). But I don't use it for writing serious code. Simple perl scripts sure. But a project with hundreds of source files, dozens of libs, about a dozen build flavors of each, etc? The IDE wins.

      The bit about being able to work from anywhere in the world is nice. It's hard for an IDE to match that (unless you can spare $20 for a thumb drive. Zing!). But if that's not a big deal, the IDE wins out for complex projects.

      Writing code is complex. Complex projects are complex. Tools to manage them are also complex. This goes for the CLI and GUI tools (though the GUI tools often put a friendly face on the simple things). Either flavor is going to take time and attention to master, and either can be very powerful. Think back to when you were first learning emacs or vim - how long did that process take? Assume it will take 25-50% as long to learn a GUI tool well. Give it that time, then make your call.

    121. Re:99% of the answers are going to be Eclipse by BitZtream · · Score: 1

      And heres where the vim/emacs crowd always misses the point.

      You can use a keyboard exclusively in any good IDE. You don't have to use the windows you don't want, you can close or hide them. You don't have to use the wizards, its as simple as not using them. You don't have to use the mouse.

      I spent all day working in Visual Studio yesterday on a laptop with a trackpad and had left my mouse elsewhere. Because of this my solution was simply to avoid using the trackpad and use keyboard shortcuts. I had to lookup a couple of my less used shortcuts for navigation but everything got done all the same.

      All the 'IDE kids' that keep 'categorically rejecting' that you refer to aren't rejecting, they just tend to find that on any modern hardware, the trivial amount of speed and ram saved by running something like vim or emacs is entirely not worth the benefits of having everything offered by vim or emacs and more, offered by any modern IDE worth its salt.

      You can do multiple windows in GUI IDEs, you can do multiple buffers, you can do remote builds and remote debugging, you can also have nice wizards to use (or not use), you can also have nice pointy-clicky interfaces for things like gui dialog editors or data set views, or you can not.

      vim/emacs comment: We're great because you can do everything from a keyboard without a mouse and we don't include a bunch of extra useful (maybe, depending on your POV) stuff that cases bloat!

      IDE comment: We're great because you can do EVERYTHING vim and emacs do, and a bunch of stuff they can't.

      vim/emacs == work pickup truck with the bear essentials to get the job done, no Air conditioning or heater, great gas milage, painted in primer grey.

      IDE == work truck with the bare essentials to get the job done, and air conditioner, a heater, built in drink cooler, GPS navigation for many of your repeated tasks, and a shiney fire engine red paint job, fully waxed and buffed. Depending on the IDE you use, it may even been an extended cab truck that makes it easier for your coworkers to work with you.

      You guys need to get over the idea the vim/emacs are better. The are just more primitive versions of the same thing. More useful in some very specific situations, but in most they are just lacking and you're too stupid and/or stubborn to realize and/or admit it.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    122. Re:99% of the answers are going to be Eclipse by pthomsen · · Score: 1

      All the same, I do prefer emacs. Autocomplete is kind of nice, but it's a hack that isn't necessary if your code is written well.

      Talk about rationalizing after the fact! If Emacs had autocomplete, you'd be touting it as a must-have. A hack? How so? Encourages people to write code that relies on it? Are you kidding?

      Autocomplete is a great tool that helps you write code faster, especially on large projects where you may be unfamiliar with APIs (for example) written by other developers.

    123. Re:99% of the answers are going to be Eclipse by Abcd1234 · · Score: 1

      A lot. When you work on projects that are less than perfectly coupled, this moves from handy to necessary.

      I guess I've just been lucky, then. :)

      This will find all structural links to that method in all open project that reference my editing project. Each and every reference to the method will get the name change, and life moves on. Through the command line, you could be spending days search/replacing every possible reference to the method in 100 files.

      Or you rename the method, let the compiler catch the errors, and then fix them (of course I'd start with a search/replace first, and let the compiler catch the remaining cases).

      Again, for the number of times I actually have to do this, it hardly seems like a killer feature for "real" IDEs. And, if push came to shove, you could always use a standalone refactoring tool (which will likely be as good or better than similar tools integrated into your average IDE).

    124. Re:99% of the answers are going to be Eclipse by tkinnun0 · · Score: 1

      I make use of those all the time. Necessary? No, but then hardly anything is. Convenient, definitely, but more than that, essential to proving that a modification to code has been done correctly.

      And unlike Clippy, quick fixes are shown when you request them and poignant, like "remove this unnecessary variable/field" or "add this argument to method signature" or "create this method/class" or "change the method return type to match this return statement".

    125. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      The wizard. :(

    126. Re:99% of the answers are going to be Eclipse by Abcd1234 · · Score: 1

      .I make use of those all the time. Necessary? No, but then hardly anything is. Convenient, definitely, but more than that, essential to proving that a modification to code has been done correctly.

      Not usually, actually. 99% of the time, a rename done improperly will result in a broken compile. Which is probably why I've never gotten around to using the refactoring tools... I just end up doing the rename, fire up a quick test compile of the file/sub-project/project I'm working on, and then fix the few remaining errors the compiler caught.

      And unlike Clippy, quick fixes are shown when you request them and poignant,

      Because you can't figure out those things on your own?

      You know, normally, I don't bemoan people's use of IDEs. Use the tool that suits you. But if you really need your IDE to tell you to "create this method/class", honestly, you're using your IDE as a crutch, and that's a very bad sign, IMHO.

    127. Re:99% of the answers are going to be Eclipse by ausekilis · · Score: 1

      don't forget the most important feature: M-x dunnet

    128. Re:99% of the answers are going to be Eclipse by dzfoo · · Score: 1

      Another one that missed the point. Boy, we're on a roll, uh?

      Read my comment again, I did not claim that vim or emacs is better than an IDE. I talked about my personal preference, but also mentioned that I had used IDEs too. They have their place and some of them are actually very good. I wasn't deriding any one who uses IDE for the sake of using one, just those that claimed that it is impossible to be productive without one. Read further up in the thread and you'll find plenty of comments claiming this.

                -dZ.

      --
      Carol vs. Ghost
      ...Can you save Christmas?
    129. Re:99% of the answers are going to be Eclipse by starfishsystems · · Score: 1

      And if you don't like the default key bindings, you can define your own. And if you don't like the existing functionality, you can extend it. So it's not just that flipping between files is trivial in Emacs. That's true, but it's only scratching the surface. You could, if you wanted, use one key to flip between files of a certain type, and another for another type. Those could be within a given window or across a set of windows, or across a set of displays for that matter. Whatever works most efficiently for you.

      --
      Parity: What to do when the weekend comes.
    130. Re:99% of the answers are going to be Eclipse by joib · · Score: 1

      If anyone says Emacs or Vi they are insane and have never done 10k lines of code in a modern environment.

      I use emacs to work on a roughly 2m LOC project written mostly in C (although the parts where I mostly play around is only a few hundred kLOC).
      A couple of years ago I tried to use eclipse with the CDT plugin. It chugged for about half an hour trying to index the source files, then crashed.
      I went back to emacs. exuberant ctags and ECB allow me to jump around the code just like an IDE, so I'm not missing that much in the end.

    131. Re:99% of the answers are going to be Eclipse by chthonicdaemon · · Score: 1

      I don't have the time to check it now, but gnu coreutils' source code is a 3.8 MiB .tar.bz2, and I'm guessing you will not find a single IDE-related file in there, since most of the developers just use simple text editors. Linus uses MicroEmacs. RMS (obiously) uses Emacs. It is very possible to handle very large projects without an IDE and many people do. It is not simply because they are stupid or unwilling to change.

      --
      Languages aren't inherently fast -- implementations are efficient
    132. Re:99% of the answers are going to be Eclipse by steveha · · Score: 1

      When a program becomes this big, it becomes harder to keep track of all the names of variables, the argument types of subroutines etc. IDEs like Netbeans or Eclipse have autocompletion functionality that make your life as a developer at lot easier.

      And, years before there were any IDEs, I was using ctags with vi and managing large programs with ease. You're looking at a call to function foobar(), you put the cursor anywhere in the name of the function and hit Ctrl+], and bam, you are now looking at the function definition. Ctrl+T pops the tag stack and puts you back to the call.

      http://ctags.sourceforge.net/

      These days, vim might have autocompletion, and Emacs doubtless has it somewhere in its gigabytes of code. I've never looked for it, because I just flip back and forth between the data structure definition and the code I'm writing; and I copy the member names instead of typing them. (Okay, I just did a Google search; looks like vim does have it.)

      My current project is portable between Linux and Windows. I can work on it either on a Windows computer or on a Linux computer. On the Windows computer I use Visual Studio, and on the Linux computer I use vim and ctags. For intense debugging, the Visual Studio debugger is more convenient; someday I ought to get a visual debugger for Linux. But overall, I do most of my work in Linux. It's equally fast and I enjoy it more.

      It helps that I have been using vi since before IDEs existed... if I were heavily trained on an IDE, and deeply grokked its inner mysteries, I might give the edge to the IDE.

      steveha

      --
      lf(1): it's like ls(1) but sorts filenames by extension, tersely
    133. Re:99% of the answers are going to be Eclipse by tkinnun0 · · Score: 1

      Because you can't figure out those things on your own?

      Don't be silly. If I've already written the return type, the method name and the types and names of the arguments elsewhere, why would I type them again to implement the method when I can get all that plus an impossible-to-miss note reminding me that the method is a stub with a single button press? Instead of fixing typos I'd rather be looking at the method and asking myself: is this really what I had in mind?

    134. Re:99% of the answers are going to be Eclipse by Abcd1234 · · Score: 1

      Don't be silly. If I've already written the return type, the method name and the types and names of the arguments elsewhere, why would I type them again to implement the method when I can get all that plus an impossible-to-miss note reminding me that the method is a stub with a single button press?

      Wait, what? Assuming I'm reading you right (and I might not be... I've never used this code clippy thinger before), who the hell writes code that calls a method before stubbing it out first?

    135. Re:99% of the answers are going to be Eclipse by phantomfive · · Score: 1

      Talk about rationalizing after the fact! If Emacs had autocomplete, you'd be touting it as a must-have.

      Why do you say that? Do I have a pattern of rationalizing after the fact? Emacs had etags long before autocomplete existed. Also, I've been using Visual studio almost exclusively for the last 8 months. It's not like I'm inexperienced in this. I've used a lot of different editors.

      ......especially on large projects where you may be unfamiliar with APIs (for example) written by other developers.

      I believe you have explained my point here: if the API is large and confusing, it can be hard to use without autocomplete. If those developers hadn't relied on autocomplete, the API wouldn't have been nearly as confusing and would have been easier to use.

      Also, with emacs it is possible to have three, four, or ten windows open at a time. It's even easier if you have two monitors. Visual Studio can't do this, and so without autocomplete you have to switch back and forth between tabs a lot. Autocomplete is a hack that kind of works around this problem. Of course it is kind of nice in and of itself, and so are etags, but they are by no means necessary.

      --
      Qxe4
    136. Re:99% of the answers are going to be Eclipse by Homburg · · Score: 1

      Emacs and vi do both support something very like this via ctags.

    137. Re:99% of the answers are going to be Eclipse by gwait · · Score: 1

      Spoken like someone who's never used emacs. You are uninformed.

      Compiling, debugging, autocomplete, syntax highlighting, jump to next compile error, and more are all done WITHIN EMACS, without having to exit to a command line tool ever,
      and it's had these features for well over 20 years.

      You can even use the mouse and menus if you find the need.

      --
      Bavarian Purity Law of Rice Krispie Squares: Rice Krispies, Marshmallows, Butter, Vanilla.
    138. Re:99% of the answers are going to be Eclipse by tkinnun0 · · Score: 1

      If you're using a top-down approach to a problem, it's great fun being able to call methods as if they already existed and then, with a push of a button, they do!

    139. Re:99% of the answers are going to be Eclipse by gwait · · Score: 1

      Hear hear!
      There's lots of good features in some modern IDE's but Eclipse is a seriously overcomplicated bit of bloatware.

      Eclipse totally violates the KISS principle..

      --
      Bavarian Purity Law of Rice Krispie Squares: Rice Krispies, Marshmallows, Butter, Vanilla.
    140. Re:99% of the answers are going to be Eclipse by Lunzo · · Score: 1

      A friend at uni had this theory that any program can be written in a single line of Perl.

    141. Re:99% of the answers are going to be Eclipse by Abcd1234 · · Score: 1

      Well, I gotta tell ya, that approach to development is, to say the least, strange to me. Personally, when developing new code, most of the time I already know what functions I need thanks to my up-front design work (whether that be on paper or simply in my head), so I stub them out right away. The rest of the time, I just write the stubs as I need them.

      Frankly, the approach you describe sounds... ad hoc. I can certainly see writing code that way in limited cases, but generally speaking, it strikes me as a bad approach to problem solving, as it would seem to encourage a design-as-you're-coding mentality. And the last thing I'd want is an IDE which encourages such behaviour.

    142. Re:99% of the answers are going to be Eclipse by glasserc · · Score: 2, Insightful

      In modern computing, its not acceptable that you have to go out of your way to figure out how to do something that trivial.

      Completely false. In modern computing, specialized, learner-unfriendly interfaces designed for experts to get the job done fast are completely acceptable. Whether you feel emacs is this or not is probably a matter of personal preference. But I've certainly been overwhelmed by Eclipse's dialogs-within-dialogs, so I disagree that it's as user-friendly as you say.

      Ethan

    143. Re:99% of the answers are going to be Eclipse by crono_deus · · Score: 1
      Heheh.

      Sounds like Smalltalk or Squeak. The IDE is the language. Need to perform memory analysis? aClass allInstances. Want to see how many references there are to a given object? anObject allInstances. And I love being able to inspect an object, step through code, and see my inspected object change with the code. The whole language was such a completely different development paradigm that even now, some 30 years after its invention, I'm still marveling at it.

      Going back from Smalltalk and Squeak to working in Java and C++ with XCode and Emacs was like stepping out of heaven (debugging pun most certainly intended) and into a trash heap, strange runtime issues notwithstanding. Sounds like I'll have to give SLIME a go.

      --
      Ne Cede Malis.
    144. Re:99% of the answers are going to be Eclipse by fractoid · · Score: 1

      That's easy to fix, break them out into part1.cpp, part2.cpp, part3.cpp etc.

      And then you have a main.cpp where you just go:
      #include <part1.cpp>
      #include <part2.cpp>
      #include <part3.cpp>

      ...wait, what's that screaming sound? :P

      --
      Rampant carbon sequestration destroyed the Dinosaurs' tropical paradise. I'm here to help repair the damage.
    145. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      And I remember when everyone said no programmer would ever use an IDE. I learned C on unix with vi but have to use VS Team for work. It's not bad and does alot for you but there is something more natural about vi. It's all about the right tool for the job.

    146. Re:99% of the answers are going to be Eclipse by BerntB · · Score: 1

      Sigh, s/If I do development/If I do web development/

      --
      Karma: Excellent (My Karma? I wish...:-( )
    147. Re:99% of the answers are going to be Eclipse by Anonymous Coward · · Score: 0

      The fact that people have such a hard time figuring out how to do stuff in emacs pretty much proves that emacs just isn't the right tool for the job for most people.

    148. Re:99% of the answers are going to be Eclipse by bar-agent · · Score: 1

      Emacs itself has one individual source file that exceeds 25k lines (32k if you count generated files), and probably a dozen more around 10k.

      Why the hell do they do something like that? I mean, I start getting nervous about my file size when the scrollbar slider stops shrinking...

      --
      i'd hit it so hard, if you pulled me out you'd be the king of britain [bash.org]
  8. Your VC++ irritation by BadAnalogyGuy · · Score: 5, Insightful

    Keep in mind that VC++ is not the Microsoft Platform SDK. These are two completely different, albeit related, products. The SDK had a bug in getline(), but VC can't really do anything about the quality of the installed SDK.

    The best free IDE is the one that you don't have to think about, it just gives you the tools to do your job without getting in your way.

    My in-laws have a Mercedes. On the infrequent opportunities I have to drive it, I am always amazed at how well it supports my driving. It is the little things like rotating the headlights into a turn, actually automatically switching into neutral when the car comes to a stop, and auto-dimming rear view for night driving that make driving it a pleasure.

    1. Re:Your VC++ irritation by dominious · · Score: 2, Funny

      wait a minute! This is a car analogy! How is a bad analogy, guy??

    2. Re:Your VC++ irritation by PhrostyMcByte · · Score: 1

      Keep in mind that VC++ is not the Microsoft Platform SDK. These are two completely different, albeit related, products. The SDK had a bug in getline(), but VC can't really do anything about the quality of the installed SDK.

      getline() is part of the C++ standard library, which is part of VC++. The Platform SDK (now simply called the Windows SDK) contains all the Windows-specific headers.

    3. Re:Your VC++ irritation by Anonymous Coward · · Score: 0

      getline() is not part of the Windows SDK (previously known as the Platform SDK). It is part of the C/C++ runtime library, which is closely tied to the specific version of C++ compiler you are using.

      Visual C++ can very much do something about the quality of the C runtime library, but they probably do not fix something like getline for backward compatibility reasons. Or maybe they are not aware of this bug - you could try send some feedback to MSDN - it does work sometimes.

    4. Re:Your VC++ irritation by oldhack · · Score: 1

      It's a delight to the Mercedes mechanics as well. :-)

      --
      Fuck systemd. Fuck Redhat. Fuck Soylent, too. Wait, scratch the last one.
    5. Re:Your VC++ irritation by paradigm82 · · Score: 1

      Regrettably, this is wrong too. getline() is part of the standard C/C++ library which comes with Visual C++. Hence, it IS a bug in Visual C++. Note also that the poster provided a link detalining how to circumvent the bug by changing a couple of lines in the string.h file - which comes with Visual C++. The error is totally unrelated to the platform SDK. The platform SDK provides headers, libs and docs for the Win32 API, the native Windows API and does not provide standard functions, such as getline().

    6. Re:Your VC++ irritation by ADRA · · Score: 1

      Since I don't really know the answer, I'll ask: Can you use VC++ without using the platform SDK? If so, then good for all. If not, then your argument is irrelevant. If you can't use VC++ without a product that contains a flawed stack, then both products are broken by association.

      --
      Bye!
  9. wxDev-C++ extended that project by jfern · · Score: 5, Informative

    version 7.0 RC5 came out 2 months ago.
    Wiki page with link

    1. Re:wxDev-C++ extended that project by AmiMoJo · · Score: 3, Insightful

      wx is about the best free GUI toolkit available for Windows. They all suck to some degree, but wx less so than the others.

      I'm not sure why the OP is bothered by Dev-C++ not being updated. If it works, why not carry on using it?

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    2. Re:wxDev-C++ extended that project by Spy+der+Mann · · Score: 1

      A project that's not being updated doesn't have its bugs fixed. At first I thought Dev-C++ was a nice IDE, but when I tried Code::Blocks I realized that Dev-C++ was a rather poor IDE. I just became a Code::Blocks enthusiast. The latest versions have syntax highlighting even for scripting languages like PHP. You also can do debugging with GDB, search for declarations / implementations of a given function, add virtual directories...

      Oh. Code::Blocks can import Visual Studio workspaces.

    3. Re:wxDev-C++ extended that project by secondsun · · Score: 1

      Because tools, methodologies, and technologies are always being updated.

      --
      There is nothing wrong with being gay. It's getting caught where the trouble lies.
  10. Vim/DevC++ by polymerousgeek · · Score: 1

    On the rare occasion I'm forced to write something for windows, I prefer DevC++. Even though I haven't seen or heard anything new about it in years, it was the first IDE I ever used, and my first experience with C/C++, so I'm still very fond of the interface. For all my real work (on Linux), I stick with vim.

    --
    53 49 47 53 20 53 55 43 4B
  11. IDE ? by Jae686 · · Score: 1

    I'm more than happy with gedit and make.........

    1. Re:IDE ? by 1s44c · · Score: 1

      I'm more than happy with gedit and make.........

      Vi is arcane but it does some powerful stuff that you don't get in gedit. Get used to vi and you will see a productivity improvement.

    2. Re:IDE ? by debatem1 · · Score: 1

      As a vim user, I have to admit that I was pleasantly surprised at how much I could get done in gedit when I actually sat down and used it. It comes out of the box looking like a notepad replacement, but if you look a little closer it has support for modal editing, snippets, all kinds of things, they're just implemented as plugins. I'll probably stick with vim, but theres nowhere near as big a gap between the two as I would have said had I not been forced to actually use it for a while.

    3. Re:IDE ? by clickclickdrone · · Score: 1

      Whilst in of itself, vi isn't a rich dev environment, I have to concur that to see a Vi guru use it in anger is something to behold. I used to work with a contractor that was a vi obsessive and the speed he could churn out code and the way he used to leverage features I didn't know even existed was awesome. I particularly liked the way he used to shell out to an OS call, get some data and pull it back into the edit.
      After seeing what it could do I went straight out and bought a couple of heavyweight vi books but never really got the time it needed to properly learn.

      --
      I want a list of atrocities done in your name - Recoil
  12. Visual Studio by Anonymous Coward · · Score: 5, Insightful

    As long as you don't piss yourself in disgust when Microsoft is mentioned (as many here do) - Visual Studio is actually very good.

    1. Re:Visual Studio by fredrik70 · · Score: 1

      It's a decent IDE, refactoring tools are a bit crap though. Personaly I use resharper plugin for my VS 2008, which makes VS work a bit more like IntelliJ (the bestest Java IDE ever), but it's dotnet only. However, there's a free tool for VS out there called Refactor. Never tried it so cannot say if it's good, but migt be worth a try.

      --
      if (!signature) { throw std::runtime_error("No sig!"); }
    2. Re:Visual Studio by Jezral · · Score: 1

      I'd even say Visual Studio is the best, by a very long mile. There just isn't anything as powerful in a single cohesive package. It is one of the main reasons I develop primarily on Windows (the other being gaming). And don't let anyone fool you into thinking that VC++ is evil...it doesn't lock you into making Windows only programs; you have to lock yourself in, if that's your desire.

      You could get similar results with cobbling together various tools, but why bother when VC++ Express already Just Works...

      That said, the final pin to make VC++ Express perfect would be some Valgrind functionality.

    3. Re:Visual Studio by Anonymous Coward · · Score: 0

      Yup Visual Studio is amazing even the express edition and if you are an emacs fan you can set it up to use emacs (for most of the common commands). The debugger is quite good and intellisense is pretty neat (well it does have a tendency to break sometimes).
      Not sure if they have added this in the latest version but the one I used didn't have refactoring for C++ but there were some plugins available that can add it in.

    4. Re:Visual Studio by fractoid · · Score: 1

      +1, Please God Let Me Stop Using Borland Turbo C++

      I've always used MSVC++ for Windows development, and it's excellent. There are occasional technical glitches but in general the interface, workflow etc. are great... and it's never been highlighted to me more than now, when I'm working with Turbo C++. You can clearly see the divide between the MS products that their "B Arc" programmers worked on (Office 07 for starters, eew) and the products that their core tech team worked on.

      --
      Rampant carbon sequestration destroyed the Dinosaurs' tropical paradise. I'm here to help repair the damage.
    5. Re:Visual Studio by laejoh · · Score: 1

      I didn't piss myself but anyway, you owe me a new keyboard and screen!

    6. Re:Visual Studio by Unoriginal_Nickname · · Score: 1

      Refactoring and auto-completion tools are never really going to get to the same level as those for Java and C# because the C++ grammar is undecidable and context-sensitive. You can write a tool like Refactor! which will work for 90% of cases but fail in the other 90%.

    7. Re:Visual Studio by dzfoo · · Score: 2, Insightful

      >> There just isn't anything as powerful in a single cohesive package.

      Wow! That's a pretty bold statement. You should go out and look around more. Seriously!

      If you want to take my words, as someone who has actually worked with various different packages (including your beloved VisualStudio), I find VisualStudio slow, unstable, and bloated, and too obtrusive for real work. Let's see, the Delphi IDE, to me at least, seems more powerful and versatile (and it even does C++ and C#, too!). And how about C++Builder from Borland? Even Eclipse seems to be at least comparable with VisualStudio (even to the slow and bloat level). And if you concede that Delphi is at least as good as VisualStudio, then you must say the same for Lazarus, which is an open source clone of it intended for FreePascal. And this is not even getting into using plain-old developer's text editors with plug-in support (such as EditPlus), which can easily integrate with external tools.

      VisualC++ is certainly not evil, but--and I say this from experience--it is not the only integrated development environment, nor even the best one, for C++ out there. It is just the only one most Windows developers know about.

      And let me just end by saying, as I always do, to each his own-- just don't go claiming that your favorite pet system is the best in breed just because you like it.

              -dZ.

      --
      Carol vs. Ghost
      ...Can you save Christmas?
    8. Re:Visual Studio by mario_grgic · · Score: 1, Redundant

      I'll say this. There is nothing more powerful, faster, and productive than standard UNIX tools (bash with find, grep, sed, awk, perl, tail, sort etc) good editor either VIM (faster actual editing) or emacs.

      Of course, learn to touch type, learn and use regular expressions where appropriate.

      Yes, it takes couple of years to learn all this stuff (of active learning each day. Touch typing will take 6 months alone. VIM alone will take a year or so to get really proficient). UNIX tools can take a couple of years to get familiar with and proficient with. But once the UNIX way sinks in, it gets easier.

      But once you do it's like nirvana, and you just can't believe how much more productive you are. Then you will look back at your current world view and smile quietly "oh, boy how naive I was". (if you don't do that regularly you are not growing as fast as you should by the way).

      And the nice thing, this power of UNIX is available everywhere (Linux, OS X, Windows (either cygwin or MKS Toolkit), and any traditional UNIX like Solaris, HPUX, AIX etc).

      --
      As the island of our knowledge grows, so does the shore of our ignorance.
    9. Re:Visual Studio by Anonymous Coward · · Score: 0

      What Free IDE Do You Use?

      No more questions....

    10. Re:Visual Studio by Anonymous Coward · · Score: 0

      Lets give the author fair warning: The Express version of VS is not necessarily the same one that other people are familiar with. So you do not know for certain which version they are reviewing unless they specifically say "Express Version". There are limitations. I cannot not tell you what they all are, but before picking it as my IDE, I would thoroughly review those limitations to be sure that none of them are going to be an impact on my projects.

    11. Re:Visual Studio by orclevegam · · Score: 1

      Having had the misfortune of using Visual Studio, it really makes me wish someone could do for C#/C++ what Eclipse does for Java. VS is mostly there, but for instance not being able to quickly and simply find all classes that implement a particular interface, or to find all occurrences of a class or subclasses of that class can be a real pain in the butt when you've grown used to having that ability in Eclipse. I understand of course some of that is the fault of the language, what with C++ being such an unbelievable rats nest of dependencies.

      --
      Curiosity was framed, Ignorance killed the cat.
    12. Re:Visual Studio by Jezral · · Score: 1

      I have looked around. I've tried them all, pretty much, on both Windows and Linux. Only one I haven't tried is XCode on OS X, but I've heard good things about that. I've dearly wanted to find a single powerful IDE that I could use cross-platform, but none exists.

      Of all the IDEs I've tried on various platforms, none come even close to VC++ Express. A huge amount of that rests in the debugger alone...gdb and IDEs that use gdb are hilariously underpowered compared to VC++'s integrated debugger.

      So for all development and debugging, I use VC++. For profiling and sanity checking, I use gprof/gcov/valgrind. Best tools for their job.

    13. Re:Visual Studio by dzfoo · · Score: 1

      Just curious: how, in your opinion, is the VC++ integrated debugger different than, say, the Delphi or BDS integrated debugger?

            -dZ.

      --
      Carol vs. Ghost
      ...Can you save Christmas?
    14. Re:Visual Studio by Mr2001 · · Score: 1

      If you want to take my words, as someone who has actually worked with various different packages (including your beloved VisualStudio), I find VisualStudio slow, unstable, and bloated, and too obtrusive for real work. Let's see, the Delphi IDE, to me at least, seems more powerful and versatile (and it even does C++ and C#, too!).

      I used Delphi for many years and then switched to VS. Delphi in the early years (up to version 7) was lightweight and versatile.

      Then they decided they wanted it to be Borland Developer Studio, and it started sucking, big-time. It became a Visual Studio clone done all wrong: the windows were in slightly different places, but the major differences were that it was slower, way buggier (even by the standards of Delphi, which has always been buggy), and had a ridiculous license file scheme (no fun at all when your development box isn't connected to the internet). Now I dread having to do any maintenance on those old projects, because BDS is such a horrific pain to work with.

      So, back to "versatile", is there anything in particular you think BDS can do that VS can't?

      And how about C++Builder from Borland?

      Heh, if you want Delphi, why not just use Delphi? The VCL is a poor fit for C++, the language extensions they had to add to make it work are ass-ugly, and it takes way longer than Delphi to compile an equivalent program. If you really want to write not-quite-C++ code, you might as well use C++/CLI.

      --
      Visual IRC: Fast. Powerful. Free.
  13. VI by 1s44c · · Score: 0, Flamebait

    Just vi. It's all about function not cuteness.

    But lets not start the whole vi V emacs thing again, I'm sure lots of people are happy with emacs.

    1. Re:VI by BadAnalogyGuy · · Score: 5, Funny

      I'm sure lots of people are happy with emacs.

      I'm sure lots of people are happy with American cars too, but we have objective standards for a reason.

    2. Re:VI by 1s44c · · Score: 1

      I'm sure lots of people are happy with emacs.

      I'm sure lots of people are happy with American cars too, but we have objective standards for a reason.

      Are there objective standards for how productive a coder is? It doesn't seem an easy thing to measure.

    3. Re:VI by isama · · Score: 1

      no longer needing to run linux to code?

    4. Re:VI by centuren · · Score: 1

      Are there objective standards for how productive a coder is? It doesn't seem an easy thing to measure.

      Back in 2000 we were taught by our CS instructors that 10 lines of code per hour was a good measurement for a productive programmer, all things considered. It was an old school faculty (some had never used Windows before), and I've no idea how accurate that was or is now, as there's only one realistic metric I've used to review programmers' work, perfectly illustrated by that xkcd comic I can't find (dammit).

      Coder productivity is measured by how many "WTF?"s come up when the code is reviewed.

    5. Re:VI by Haeleth · · Score: 1

      Is there a benefit to running a bloated and buggy text editor?

      What you call "bloat", we call "features".

      What you call "bugs", we also call "features". ;)

    6. Re:VI by fredrik70 · · Score: 1

      >Coder productivity is measured by how many "WTF?"s come up when the code is reviewed.

      Isn't that code quality??

      --
      if (!signature) { throw std::runtime_error("No sig!"); }
    7. Re:VI by centuren · · Score: 1

      Sure, I suppose code quality is a better descriptor. It was reviewed as part of the development process, where quality determined how much had to be revisited. Each WTF was something that had to be worked on again, so in that sense it was a measure of productivity.

    8. Re:VI by Anonymous Coward · · Score: 0

      Sure is. Just ask someone down on HR, they've got the grips on that.

      - "When in doubt, ask Human Resources."

    9. Re:VI by Lally+Singh · · Score: 1

      10 lines per hour? That's way too high.

      Assuming you're counting debugging, testing, and documentation.

      I've heard, through oral history only, that good numbers for total-time-of-project / (LOC * number-of-programmers) is less than 30 lines per programmer per day.

      --
      Care about electronic freedom? Consider donating to the EFF!
    10. Re:VI by orclevegam · · Score: 1

      It's both productivity and quality in one when you use WTF?s/Lines as your metric. Low line count, or high WTF? count will equally degrade your rating (not strictly true mathematically, but close enough). Hint, smaller numbers are better. You could of course also measure it in Lines/WTF?s, in which case larger values are better, but a lack of WTF?s leads to a division by zero.

      --
      Curiosity was framed, Ignorance killed the cat.
  14. What I use by JazzXP · · Score: 3, Interesting

    For Java & PHP development, Eclipse. Does everything I need it to. For Windows C++ development, VS2008. Work in a MS shop, so not much choice here. Mac Objective-C development, Xcode. Not much choice with this due to nib's being so intergrated with the code.

    1. Re:What I use by mrsteveman1 · · Score: 1

      You don't actually have to use nibs, do you?

    2. Re:What I use by JazzXP · · Score: 1

      Don't HAVE to use Nibs, but you'd be mad not to. It cuts the development time quite significantly. At least for the small projects I work on anyway.

  15. It's not C++ but... by adamkennedy · · Score: 1

    ... for Perl the Padre IDE is getting pretty awesome.

    Works identically on Windows, Mac and Linux and they even managed to get the entire IDE to install itself from the CPAN.

    1. Re:It's not C++ but... by BadAnalogyGuy · · Score: 1
  16. Eclipse CDT by Anonymous Coward · · Score: 0

    I recently switched from emacs to Eclipse CDT with emacs key bindings (an option in preferences). I am pretty happy with it so far.

  17. Mix and match by SpazmodeusG · · Score: 1

    Personally i mix and match to make an IDE.
    For the code editing i have notepad++.
    For the compiling i have the intel core compiler.
    For debugging i use Intel Debugger.

    There's plugins for notepad++ to make the compiler/debugger only a keyboard shortcut away.

    1. Re:Mix and match by kitzkar · · Score: 1

      While notepad++ is a very good editor, it has terrible plugin support. Each and every update removed some plugins saying that they are not compatible with the current version. For example, the function list plugin is not supported by the current notepad++ version. I guess the developers never heard of backward compatibility.

  18. Turbodelphi by andersa · · Score: 2, Informative

    Free edition of Delphi.

    1. Re:Turbodelphi by acheron12 · · Score: 2, Interesting

      Don't forget the open source Lazarus

      Or actually, maybe do forget it. Object Pascal and C++ have virtually identical capabilities with slightly different syntax. But C++ is so widely used that there are always more available libraries, IDEs and sources of support. And I say this as someone who used to program in Pascal myself. If you want to go for an obscure language, at least make it something interesting like Dylan...

      --
      there is no god but truth, and reality is its prophet
    2. Re:Turbodelphi by andersa · · Score: 1

      What if you have already tried C++ and found the syntax to be archaeic? Anyway, yeah, check out Lazarus. It's really starting to look mature.

    3. Re:Turbodelphi by dunkelfalke · · Score: 1

      I agree.
      Delphi always was the best tool for developing Win32 software.

      --
      "It's such a fine line between stupid and clever" -- David St. Hubbins, Spinal Tap
    4. Re:Turbodelphi by Gramie2 · · Score: 1

      I've been a Delphi coder for more than ten years, and recently tried out Lazarus on my Mac at work. I still can't get the executable to run outside the IDE, and a Hello World program looks like it takes about 40MB, when all the necessary libraries are compiled in.

      Under Linux/Windows, Lazarus is clunky but bearable, but still far, far less capable -- and downright fun -- than Delphi (which, by the way, is now planning to have cross-platform capabilities, by the end of next year, I think. If only they'd done it five years ago).

    5. Re:Turbodelphi by Lunzo · · Score: 1

      What part of "I'm looking for a C++ IDE" didn't you understand?

    6. Re:Turbodelphi by andersa · · Score: 1

      You're an idiot!

  19. xwpe ftw! by Anonymous Coward · · Score: 0

    xwpe ftw!
    http://www.identicalsoftware.com/xwpe/screenshots.html

  20. KDevelop 4 and Qt Creator by EsbenMoseHansen · · Score: 4, Informative

    Two options that have not come up yet. KDevelop 4 is shaping up really good, but I do not think it is actually working on win32/64 yet. The other is Qt Software's offer Qt creator which is also getting a good deal of praise. The latter is probably extra good if you use Qt... and if you don't, I would recommend at least looking at it, since it is a very nice LGPL library.

    --
    Religion is regarded by the common people as true, by the wise as false, and by rulers as useful.
    1. Re:KDevelop 4 and Qt Creator by dwater · · Score: 1

      > The other is Qt Software's offer Qt creator which is also getting a good deal of praise.

      It seems to have some modicum of 'vi' support too, though I've not tried it (yet).

      --
      Max.
    2. Re:KDevelop 4 and Qt Creator by EsbenMoseHansen · · Score: 1

      > The other is Qt Software's offer Qt creator which is also getting a good deal of praise.

      It seems to have some modicum of 'vi' support too, though I've not tried it (yet).

      And so does KDevelop. My colleague uses that, and he doesn't complain too much.

      Kdevelop4 is the most promising one, I think, but it is not 100% stable yet. And the refactoring tools are still being written (though at least a few a actually working pretty nice now, including renaming).

      --
      Religion is regarded by the common people as true, by the wise as false, and by rulers as useful.
    3. Re:KDevelop 4 and Qt Creator by Flanders · · Score: 1

      I'm using Qt Creator at work and find it really promising.
      It's also worth to mention that it has a visual debugger and Git integration. The only negative thing is the file system browser sidebar, there should definitely be an option for a tree view. What I'm also missing is (better) support for development in Scratchbox.

    4. Re:KDevelop 4 and Qt Creator by dwater · · Score: 1

      > Kdevelop4 is the most promising one, I think

      I get put off by things that start with 'K' because I use the other one, and I somehow think that it won't work properly.

      It's worth noting that Eclipse also has some 'vi' goings on....though, iirc, that's more like eclipse being squeezed into 'vim' rather than the other way around.

      --
      Max.
    5. Re:KDevelop 4 and Qt Creator by Anonymous Coward · · Score: 0

      For Linux, not sure if this works on Windows where I prefer Vim, I use Geany, which is an extension to gedit. It just plain works, is very simple and easy to use.

    6. Re:KDevelop 4 and Qt Creator by DoofusOfDeath · · Score: 1

      I generally like Kdevelop3, but I find that it has problems debugging some fortran code I have. It can't make sense of an array that's been redimensioned and/or it can't step through some functions. (Even when I built with "-g -O0"). It's probably gdb's fault, but KDevelop3 is where I see it.

      I really hope that KDevelop4 smooths out some of these issues, because it otherwise seems like a great replacement for VisualStudio.

    7. Re:KDevelop 4 and Qt Creator by forkazoo · · Score: 1

      I'm surprised it took this long to mention Qt Creator. I've been using it quite a bit recently, as I've been doing some Qt GUI stuff for work. Free and cross platform. Easy to setup. Biggest drawback for the OP is that last time I checked, DirectX was only supported with MS compilers. The included mingw(?) gcc doesn't include out of the box support for direct X. OpenGL isn't a particular problem though. Unfortunately, some of the Qt Phonon stuff on Windows depends on Direct X.

    8. Re:KDevelop 4 and Qt Creator by Anonymous Coward · · Score: 0

      I've been waiting for 10 years...
      well,..... almost that long ....

      for the kdevelop, qt designer, and/or monodevelop
      to give me an "environment" like VS.

      I want to VISUALLY make a FORM, add a few widgets:
      buttons, text box etc, and be able to CLICK
      on it to add/edit code just like VS. IOW,
      I want to easily toggle between the FORM widget
      and the code, and have class/function/variable
      information readily handy. IS this too much to
      ask after years and years of the developers
      adding heavy duty functionality and ignoring
      simple user friendliness ?

      Until then, I use a CLI on linux just for
      testing code pieces and won't do any major
      piece of software.

    9. Re:KDevelop 4 and Qt Creator by JoeMerchant · · Score: 1

      I'm surprised I had to scroll down this far to see Qt Creator mentioned... Following some of the imagery above, I'd sooner kill a buffalo and dress it with my bare hands than use most IDEs, and I've been trying them off and on for about 15 years now. Qt Creator actually makes my programming work easier without forcing me to learn a bunch of arcane switches hidden under six layers of GUI just to make simple things happen.

      I'm not sure I'd use Qt Creator to work with libraries other than Qt, but if you are just a casual programmer, you could do worse than to start a project from one of the Qt examples.

    10. Re:KDevelop 4 and Qt Creator by JoeMerchant · · Score: 1

      I'd like to program for KDE, just like I would have liked to program for Macs in 1992, just like I did program on the Atari 800 back before then... difference being that today I like to pay my mortgage, feed the family, etc. Qt is actually a pretty righteous choice, especially when your customer base contains 50% Windows XP, and 45% Windows Vista.

    11. Re:KDevelop 4 and Qt Creator by EsbenMoseHansen · · Score: 1

      Yeah, let's hope. But actually, the debugger is one of the parts that holding Kdevelop4 up. Now personally, I love the command line interface in gdb, so I'm not bothered.

      --
      Religion is regarded by the common people as true, by the wise as false, and by rulers as useful.
    12. Re:KDevelop 4 and Qt Creator by EsbenMoseHansen · · Score: 1

      I've been waiting for 10 years... well,..... almost that long ....

      for the kdevelop, qt designer, and/or monodevelop to give me an "environment" like VS.

      I want to VISUALLY make a FORM, add a few widgets: buttons, text box etc, and be able to CLICK on it to add/edit code just like VS. IOW,

      I seem to remember you can do exactly that in Qt designer? Personally, I prefer just designing the widget with actions, and then write the action in a full IDE, but I think it is possible. Of course, with the integration in KDEvelop4 you can do both, I guess.

      I want to easily toggle between the FORM widget and the code, and have class/function/variable information readily handy. IS this too much to ask after years and years of the developers adding heavy duty functionality and ignoring simple user friendliness ?

      Until then, I use a CLI on linux just for testing code pieces and won't do any major piece of software.

      I fail to see how KDevelop4 doesn't deliver that today. I admit I do very little GUI programming, except web, but the little I've done seems to work fine.

      --
      Religion is regarded by the common people as true, by the wise as false, and by rulers as useful.
    13. Re:KDevelop 4 and Qt Creator by Anonymous Coward · · Score: 0

      I'm quickly becoming a fan of Qt Creator. I'm always switching between my Windows box at work, a Mac at home, and a Linux laptop on the go. It's nice to have a cross-platform IDE that starts quickly and has moderate hardware requirements.

      I particularly like how clean and minimal the interface is. My tablet pc's screen has rather low resolution (1280 x 800), but Creator's default interface fits nicely.

  21. Visual Studio Express is quite good by daVinci1980 · · Score: 4, Informative

    You hit it in the summary. I program professionally. At work, I use gcc, xcode or msvs (depending naturally on the platform).

    At home, for personal development on Windows in C++, nothing beats Visual Studio Express. It's lightweight, meaning they've trimmed out most of the stuff that you don't care about anyways for personal projects.

    As much as it might pain the free software crowd, Microsoft has done a good job with Visual Studio Express.

    --
    I currently have no clever signature witicism to add here.
    1. Re:Visual Studio Express is quite good by cathector · · Score: 1

      +1 VSE. the editor is allright (actually i prefer vi or crimson editor for straight-up text editing) but VS has a couple features which are hard to find elsewhere:
      * a very fast find-in-files: this may seem unsexy, but it's the number one thing i use VS for. it's so much easier to search for a symbol than navigate a source hierarchy. VS must be building indexes or something, because it takes just a second or so to grep a largish codebase for a symbol while actual grep takes maybe ten or fifteen.
      * memory breakpoints: being able to break when a particular byte of memory is changed is pretty cool. i'm not sure if VS express has it. there is a hefty performance overhead tho, so you really only want to use it when smaller guns haven't panned out, if you'll pardon the mixed metaphors.

      i was a regular purchaser of whole tomato's VS code-completion-companion tool for several versions, but around 2007 i un-installed it due to general crapiness of recent versions.

      in the big scheme of things, i think it's good not to rely on any IDE too much. time-savings are cool, but so is understanding what the heck is going on.

    2. Re:Visual Studio Express is quite good by wannabgeek · · Score: 2, Informative

      a very fast find-in-files: this may seem unsexy, but it's the number one thing i use VS for. it's so much easier to search for a symbol than navigate a source hierarchy. VS must be building indexes or something, because it takes just a second or so to grep a largish codebase for a symbol while actual grep takes maybe ten or fifteen.

      ever heard of a tool called "cscope"? It integrates nicely with vim and does the same thing you're talking about. And more.

      memory breakpoints: being able to break when a particular byte of memory is changed is pretty cool. i'm not sure if VS express has it. there is a hefty performance overhead tho, so you really only want to use it when smaller guns haven't panned out, if you'll pardon the mixed metaphors.

      gdb (the one debugger I know) does it too. One of my biggest pains with using VS is the lack of power (in other words, scripting support) for the editor and the debugger. I don't think the default editor of VS supports regex substitution even today, which is one of the most basic features of an editor. Similarly, it's very easy to fire gdb up and let a program run and collect some stuff while the program runs (breakpoints, and commands). To do it in VS editor is a pain, AFAIK.
      http://tech.slashdot.org/story/09/05/26/2249208/What-Free-IDE-Do-You-Use?art_pos=1#

      --
      I'm much more funny, interesting and insightful than the moderators think
    3. Re:Visual Studio Express is quite good by chronos · · Score: 1

      Lately I have had to write code in Visual Studio and I find that I don't like it at all.
      It seems like for every little task I have to fight it every inch of the way.
      The IDE assumes that it knows more than I do and so tends to get in the way.

      I would much rather deal with emacs or vi since I can get them to do what I want
      with little effort. These editors may not have the cute graphics but they do have
      the virtue of doing what I want.

    4. Re:Visual Studio Express is quite good by Anaerin · · Score: 1

      Yup, VS (at least, VS 2008, including all the free versions) supports RegEx substitution, you just need to open the little "+" next to the words "Find options", which will expand the window and display more options, check the little box in the search window labelled "Use:", and choose "Regular Expressions" from the dropdown that becomes active (The other option there being "Wildcards", for when you don't need a sledgehammer).

    5. Re:Visual Studio Express is quite good by XDirtypunkX · · Score: 3, Informative

      Visual Studio has supported regex substitution for quite a while, including in Express. Under the Find and Replace dialog, expand the "Find Options" and tick "Use" (with regular expressions selected in the combo box). It works in a similar way for Replace in Files.

    6. Re:Visual Studio Express is quite good by Sean+Hederman · · Score: 1

      Except for one little caveat. Visual Studio's regular expressions are it's own bastardised syntax.

    7. Re:Visual Studio Express is quite good by TapeCutter · · Score: 1

      I agree with the OP in that MS has done a great job with VS over the years. Many posters disagree and claim they have to "fight" the IDE, having used it since V1.5 on Win3.1 all I can say is RTFM! The only annoyance I have is that every major realese, MS shuffles things around for no apparent reason other than to sell training courses.

      "I don't think the default editor of VS supports regex substitution even today, which is one of the most basic features of an editor."

      Not sure about express version but regex has been in the full version for a very long time (in my 2005 version it's on the find/replace dialog and also the "find in files" dialog), the VS find really is the best windows grep around. I have converted many of my winphobic collegues just by using it while they were watching.

      You can also use expressions for breakpoints, eg: break when loop is on it's 476897th iteration or break when pointer P=NULL, very useful for when an array overflow bug changes a variable in an unrelated part of the app.

      "it's very easy to fire gdb up and let a program run and collect some stuff while the program runs (breakpoints, and commands). To do it in VS editor is a pain, AFAIK."

      Have you tried the debug menu at the top of the screen? - How is right click or pressing F9 to toggle a breakpoint on the current line more of a pain than gdb?

      "One of my biggest pains with using VS is the lack of power (in other words, scripting support) for the editor and the debugger."

      It has macro's, add-ins and commands such as "tabify" but I haven't found a good use for macros or add-ins in the past decade or so. Personally I can't think why you would want to run a script in a debugger, generally debugging is bug specific it's not something you do twice? Do you have a specific example to demonstrate this alleged "lack of power"?

      I'm not sure when you last looked at VS but your criticisims are typical of someone who hasn't looked very hard and doesn't want to.

      --
      And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
    8. Re:Visual Studio Express is quite good by pherthyl · · Score: 1

      VSE is ok. The editor is alright (although, what's the keyboard shortcut to jump between header and implementation?) and it is pretty lightweight, with a nice debugger.

      However what prevents me from using it is the Intellisense is horrible. It might work alright if you restrict yourself to MS libraries, but for anything else (even your own classes) it's the most inconsistent piece of shit I've ever seen. On many different computers and configurations, Intellisense never works 100% for third party libraries or my own code. It'll get either half the methods, or none of them, or all of them once, then lose them again. Same with the function list on top. Half of the time it's empty and you can't jump to a specific function.

      So I jumped ship to QtCreator (since I mostly use Qt anyway). Even for non-qt projects, the usability and efficiency of the IDE is miles ahead of VSE. The only big downside is that while it can compile with the msvcc compiler, it can't integrate the MS debugger, so for projects that require a microsoft compiler, it's not the best.

    9. Re:Visual Studio Express is quite good by cathector · · Score: 1

      huh cool, i may check out cscope.
      one place where VS falls short for me is recording and playing back macros within the editor. (i'm not sure why i do this so much, but i do) It has the feature, but it's ultra-bloated an unresponsive. For that i generally copy whatever file i'm working on into the lightweight crimson editor, do the macro stuff, and copy it back.

    10. Re:Visual Studio Express is quite good by PitaBred · · Score: 1

      Microsoft does make good tools. But all of their tools do their damndest to lock you into their software ecosystem. If you want cross-platform code, you can't really play much with Microsoft tools.

    11. Re:Visual Studio Express is quite good by howlingmadhowie · · Score: 1

      Why should that pain the free software crowd?

    12. Re:Visual Studio Express is quite good by JoeMerchant · · Score: 1

      As much as it might pain the free software crowd, Microsoft has done a good job with Visual Studio Express.

      It doesn't really pain them much at all, since VSE can't build a single thing that runs in *nix.

    13. Re:Visual Studio Express is quite good by Draek · · Score: 1

      Why would it pain the Free Software crowd? helping people develop Windows apps on C++ is most definitely *NOT* the focus of the Free Software movement, and the fact that there are Free tools specialized for that at all surprises me.

      Still, I do agree with you that VisualStudio is an excellent tool. Microsoft may produce some of the world's worst applications sometimes, but when they focus on a "by developers for developers" mentality they're nothing short of brilliant.

      --
      No problem is insoluble in all conceivable circumstances.
    14. Re:Visual Studio Express is quite good by spongman · · Score: 1

      what's the keyboard shortcut to jump between header and implementation?

      http://stackoverflow.com/questions/706938/visual-studio-2008-macro-to-switch-between-header-and-source-files

    15. Re:Visual Studio Express is quite good by mgcarley · · Score: 1

      Microsoft? Good Job? What is the world coming to?

      --
      Founder & COO, Hayai India (hayai.in) / USA (hayaibroadband.com) // t: @mgcarley
    16. Re:Visual Studio Express is quite good by Count+Sessine · · Score: 1

      Visual Studio has supported regex substitution for quite a while, including in Express. Under the Find and Replace dialog, expand the "Find Options" and tick "Use" (with regular expressions selected in the combo box). It works in a similar way for Replace in Files.

      ...except that the guys who implemented the regex engine for the Visual Studio search and replace never quite figured out the whole DFA/NFA thing, and every third or fourth time you use it it gets stuck on a recursive match and hangs all of Visual Studio. I've never had that happen with the one in Eclipse.

  22. eclipse by tero · · Score: 4, Informative

    I swear by Eclipse - I mostly do Java these days though, but I do have it setup for C++, Perl and PHP as well.
    Good plug-in support - easy to install and update.. what's not to like? :-)

    Integrates with most versioning tools through plug-ins (CVS, SVN etc).

    Runs on all platforms. It's great.

  23. Xcode with Ada plug-in by iliketrash · · Score: 2, Informative

    I use Apple's Xcode with the Ada plug-in from www.macada.org

  24. vim by gzipped_tar · · Score: 1

    Vim with a bunch of addons has been good enough for me.

    --
    Colorless green Cthulhu waits dreaming furiously.
  25. Eclipse by ErikPeterson · · Score: 4, Informative

    I use Eclipse http://www.eclipse.org/ for all my IDE needs. I have found that it works well on any platform (and with any language) that I find myself sitting behind (or coding in). Eclipse gets my vote mainly for its very wide language AND platform support.

    --
    The world's smartest bug zapper www.zapstats.com/kickstarter
  26. Netbeans by Rik+Sweeney · · Score: 1

    I use Netbeans 5.5. I did upgrade to 6.x but quickly reverted back when I found out it did not support auto completion without having to import the package first. Maybe this was a bug in Netbeans 5.5 but I did like the way I didn't have to stop typing, use the keyboard combination or right click and select "Fix imports". Having to do this just to get method completion for something like a Hashtable was unacceptable to me.

    1. Re:NetBeans by Eythian · · Score: 1

      ...you might think that pressing the ';' key should make the cursor jump to the end and skip over the ')'. NetBeans will do the small things like this, where I haven't seen Eclipse do it.

      Eclipse does this. Whenever it doesn't for some reason, I immediately turn it back on in the prefs. Coding without it is a pain.

  27. Eclipse and Notepad++ by Jartan · · Score: 3, Informative

    Notepad++ isn't really an IDE but it's probably the best c++ editor I've found for Windows. If you want a full blown IDE then Eclipse is probably your best bet. It's written in Java but with a little fiddling it's not too ugly. As for Dev-C++ it's probably lost support because it's written in Delphi of all things.

    1. Re:Eclipse and Notepad++ by Anonymous Coward · · Score: 0

      Notepad++: As to editors, SciTe is very good, highly configurable, with a vast set of example configurations.

    2. Re:Eclipse and Notepad++ by bennomatic · · Score: 1

      Totally agreed; I heart Notepad++.

      --
      The CB App. What's your 20?
    3. Re:Eclipse and Notepad++ by rrohbeck · · Score: 1

      I liked it but went back to TextPad a couple of months ago after Notepad++ crashed on me twice.
      TextPad hangs sometimes before exiting but it has never crashed on me in several years.

    4. Re:Eclipse and Notepad++ by mario_grgic · · Score: 0, Flamebait

      You mean it's the best primitive editor that does not require learning? You do know that gVim is available for windows right? And I can guarantee it's better than Notepad++.

      --
      As the island of our knowledge grows, so does the shore of our ignorance.
    5. Re:Eclipse and Notepad++ by phimpshiex · · Score: 1

      Notepad++ rules !!

    6. Re:Eclipse and Notepad++ by mario_grgic · · Score: 1

      How is this a flamebait. I have (an old version) Notepad++ installed on my system here, and it does not have a single command to navigate the source code. Not even a command to move to the next function/method, nothing. Let alone to move over more complex text objects, like sentences, paragraphs, words, inner words etc.

      I think the "goodness" of editor can be measured a little more objectively, than what most assume here. I'm not out to flame anyone, but if someone is asking me for a good editor, I will suggest what I think is best.

      Now, what I'm suggesting will involve commitment to learning, but it's one of those worthwhile, lifelong skills to have (like touch typing or speaking a foreign language). You learn a good editor once and edit text efficiently for the rest of your life.

      --
      As the island of our knowledge grows, so does the shore of our ignorance.
  28. What I use(d) by Lord+Lode · · Score: 4, Informative

    Years ago I worked mainly in MS Windows, and I used Dev-C++ as the free IDE, because it's fast and simple.

    Then I switched to Linux. Tried KDevelop for a few days but didn't like it. Then discovered Kate, which can work as a sort of IDE, because you can open multiple documents, and open a console window at the bottom to type compile and run commands.

    Then KDE4 was release and Kate suddenly was unusable for programming (due to ruined search function). And that's when I discovered Geany, which is really nice, it has the same functionality as Kate but is more clearly geared towards programmers.

    Geany works great in Linux, I see that it's cross platform, so I guess you can also get it to work in Windows. But note that due to Windows not having the same compiler tools as Linux available by default, it might be handier in Windows to have something that comes with its own compiler like Dev-C++ :)

    1. Re:What I use(d) by sashang · · Score: 1

      Geany works great in Linux, I see that it's cross platform, so I guess you can also get it to work in Windows. But note that due to Windows not having the same compiler tools as Linux available by default, it might be handier in Windows to have something that comes with its own compiler like Dev-C++ :)

      Except it has this ability to leave trailing whitespace on the end of lines, can't do buffer local settings (i.e. can't set different a different value for tabstops depending on the file), and the last time I saw someone use it he would tap the space bar several times to indent because Geany's tabs to space conversion was broken and I don't even think it's configurable via some sort of script language. I don't really understand why people don't use one of the more established editors like emacs or vim. If you learn how to use one of those well then you're not going to regret it, but with something like Geany you'll eventually run into problems that these serious editors would already have encountered and solved.

    2. Re:What I use(d) by Lord+Lode · · Score: 1

      Geany has tools to remove trailing whitespace of a file in one action. Also, in every editor that can, I enable the setting to show whitespace (where spaces become light dots and tabs light arrows) so I can see what's going on. Geany doesn't leave more trailing spaces than other editors I used, it's the same...

      Also, it took me some time to figure out how, but appearantly there are multiple places in Geany where you can change settings related to converting tabs to spaces. After cursing for a while, I got it to work correctly. I don't remember exactly what it was anymore, but now I can use tab to indent 2 spaces, like I want editors to behave. I agree Geany's setting-layout of inserting spaces instead of tabs sucks, but it's possible.

    3. Re:What I use(d) by Anonymous Coward · · Score: 0

      Thanks. Just down load it, good stuff.

    4. Re:What I use(d) by kayoshiii · · Score: 1

      I am curious to know what is wrong with the search function in Kate.... I use kate on a daily basis and I like the way the search tool in 4 is implemented.

    5. Re:What I use(d) by Anonymous Coward · · Score: 0

      Thanks for the tip on Geany. Kate is the one app I really miss from Linux since I switched to OS X. The KDE Mac port has come a long way and is promising but isn't quite there yet for professional use. I'll definitely give Geany a try.

    6. Re:What I use(d) by greg1104 · · Score: 1

      Geany has a "Detect from file" setting for indentation that helps with the situation where you need different tab stops for different files. I'm not sure exactly how it works, it seemed to function OK when I used it a few times. Having per-file configuration settings isn't particularly important to me, and agreed that if its something you need for your routine tasks Geany isn't the right editor for you yet. It actually would be nice if said detection supported parsing that particular part of typical mode lines .

      The other stuff you mentioned is clearly not a problem with the current code, so your anecdote was either against an older version (quite possible, Geany is still moving around fast) or came from someone who hadn't figured out how to configure it correctly yet.

      As for why I find Geany useful, I find the graphical versions of both vi and emacs to feel unnatural compared to applications that were built specifically for the GUI environment. For me, it's important that the UI of my editor match all the other applications I use every day, and Geany doesn't feel very different from Firefox/Open Office/other GTK2 apps.

      Also, there's something to be said for software still being actively developed. The one UI quirk I ran into in Geany that drove me crazy ("Save" being grayed out if the doc hadn't been changed) was fixed in about a week once I pointed it out on their developer mailing list.

    7. Re:What I use(d) by Lord+Lode · · Score: 1

      Open multiple documents in Kate. Make sure every document has for example the string "LoadLevel" in it. I choose a string that sounds like a programming function on purpose :) Now click one document and search for LoadLevel. It'll find it. Click on another document (in the list on the left). Press F3 for "find next". Kate will not find LoadLevel in the other document. Instead you have to open the find dialog and manually type LoadLevel again. You have to do this again for every document. ALso the "case sensitive" search option is independent for every open document. That makes Kate 4 unusable for programming, unlike Kate 3.5 which didn't have that "feature". Geany, btw, has a "find in all files" option. Much better.

    8. Re:What I use(d) by Anonymous Coward · · Score: 0

      Stick with KDE 3, then? Works very nicely on Debian 5.

    9. Re:What I use(d) by Anonymous Coward · · Score: 0

      Note on portable compilers.

      MinGW ( GCC for windows ) is wonderful. Its entire design is portable just copy and paste a MinGW folder into say your flash drive and you have a compiler ready almost.
      Next thing to do is setup your portable IDE to use MinGW on the flash drive. This works pretty well %CURRRENTDRIVE%\MinGW .
      Then Linux and Mac OS X pretty much mostly come with GCC otherwise you can setup something similar for them probably ../../GCC-DIRECTORY or something will work just fine.

      Basically i setup Code::Blocks on my thumb drive with MinGW portably but its not fast enough I'm probably going to consider Geany for it, especially for speed reasons.

      I've learned gedit in Linux is pretty good too, but its just missing a few last steps to make it an IDE.
      I think it has an integrated console compiling technique, but it really needs sub folder handling options in the side pane that list open files..
      Along with automatic MAKE files.

      I could go on all day, but i can never find the right IDE that fits my taste Code::Blocks sorta got there KDevelop is too Qt based i want to learn GTK+/C right now. Then Code::Blocks and Visual Studio Express are pretty equal except ones cross platform while the other isn't. It'd be nice to try out XCode as it seems about right for my taste, but will never know unless it comes our for linux or I get a Mac.

    10. Re:What I use(d) by mebrahim · · Score: 1

      Soon you'll discover Vim or Emacs.

  29. What about Microsoft free visual c++ express editi by zymano · · Score: 2, Informative

    Express edition. Free of charge.

  30. getline and IDE by shird · · Score: 2, Interesting

    The error with getline is a bug with the library/compiler etc. This is separate from the IDE. It's not very difficult to modify the compiler/C runtime etc VC uses - its just an editor which calls out to other executables to do compilation.

    In any case - I'm sure that problem has been fixed with Visual Studio express - Microsoft actually do IDEs and compilers very well, especially with their last few iterations. 6 is pretty old.

    Personally I use vim on unix. But when doing GUI work on windows, Visual Studio is hard to beat.

    --
    I.O.U One Sig.
  31. Haven't seen Monodevelop mentioned yet.. by Hillview · · Score: 1

    http://monodevelop.com/ - Supports C, C++, C#, Asp.net.. rather nicely I might add.

    --
    -Troll, Flamebait, and Offtopic are NOT equivalent to disagreement.
    1. Re:Haven't seen Monodevelop mentioned yet.. by Tanaka · · Score: 1

      +1 If you haven't seen it recently, then it's worth a look.

    2. Re:Haven't seen Monodevelop mentioned yet.. by oliderid · · Score: 1

      I confirm I have been using for mmmh 2 years for a mono c# project and it works like a charm. The product seems to be mature, I didn't have any crash for quite a long time.

  32. Lazarus by dvh.tosomja · · Score: 2, Interesting

    Thank you

  33. silly question by eneville · · Score: 1

    vim of course

  34. Either emacsclient or ed by jonaskoelker · · Score: 2, Interesting

    Say you're working with git (but it may be the same with other VCSs, not sure).

    Say you run git-commit -a (with no -m) in a M-x shell. Then git wants to spawn your $EDITOR so that you can edit your commit message (and see what you're committing).

    In that case, you'd want either emacsclient, which tells emacs to open up a new window for the to-be-edited file (and when you say you're done, emacsclient terminates).

    Or, you know that the thing that call $EDITOR from M-x shell require very light-weight editing, so you want a small editor which doesn't use curses.

    Yes, I'm seriously suggesting to learn how to use ed. If you know sed and/or vi, it's as simple as spending five minutes with the man page, plus having the man page open for reference the first few times.

    It's also a powerful tool for programmatic text manipulation, sitting in a niche where sed is not powerful enough and perl/sh/... is too general to do what you want easily. [it's kinda' like sed but with the whole file in the pattern space and with a few more powerful transformations.]

    1. Re:Either emacsclient or ed by zsitvaij · · Score: 4, Informative
      I'd rather use the built-in VCS-mode right from Emacs. :)

      "With the release of Emacs 22 on June 2nd a new set of version control (vc for short) modes was released as well. The Emacs Tour briefly touches on it, however it fails to point out the geniusness of this feature.

      As of 22.1.1 the following version control backends are supported: RCS, CVS, SVN, SCCS, Bzr, Git, Hg, Arch and MCVS. All commands work the same for all backends."

      more reading

    2. Re:Either emacsclient or ed by jrumney · · Score: 2, Insightful

      Say you run git-commit -a (with no -m) in a M-x shell.

      Why would you do that from a shell buffer instead of using Emacs built in version control operations?

    3. Re:Either emacsclient or ed by martin-boundary · · Score: 1
      Instead of using M-x shell, you can use M-x terminal-emulator. I have

      export EDITOR="/usr/bin/emacs -nw --no-site-file -q -l ~/.emacs"

      in my .bashrc and I have no trouble running a second Emacs in an Emacs buffer.

    4. Re:Either emacsclient or ed by PeterBrett · · Score: 2, Informative

      Say you're working with git (but it may be the same with other VCSs, not sure).

      Say you run git-commit -a (with no -m) in a M-x shell. Then git wants to spawn your $EDITOR so that you can edit your commit message (and see what you're committing).

      In that case, you'd want either emacsclient, which tells emacs to open up a new window for the to-be-edited file (and when you say you're done, emacsclient terminates).

      Or you could save yourself the effort and just use git.el, which integrates git into Emacs.

    5. Re:Either emacsclient or ed by geminidomino · · Score: 4, Funny

      Because I lost two of the fingers on my third hand in a freak threshing accident, you insensitive clod.

    6. Re:Either emacsclient or ed by glasserc · · Score: 1

      As other people have said, emacs has much nicer VCS modes. My preferred one is magit -- it has a slightly unintuitive interface, but it's probably #1 or #2 in terms of "best VCS interfaces I've ever used".

      Ethan

  35. Seconding this by Unoriginal_Nickname · · Score: 4, Insightful

    I use Visual Studio exclusively when developing in Windows. My only complaint is the lack of multi-monitor support but that's coming in 2010.

    1. Re:Seconding this by RanCossack · · Score: 1

      I use Visual Studio exclusively when developing in Windows. My only complaint is the lack of multi-monitor support but that's coming in 2010.

      So... I hear you can use it with multiple monitors if you run it in Linux under wine. Should make your projects a little less complicated.

      Especially QA.

    2. Re:Seconding this by Billy+the+Mountain · · Score: 1

      Can't you just drag the window wide so it fills all the screens?

      BTM

      --
      That was the turning point of my life--I went from negative zero to positive zero.
    3. Re:Seconding this by DarkProphet · · Score: 1

      Hmm I dunno if this is true. I tried to install Visual C# Express on wine/Kubuntu 9.04 and the installer fails with a missing module error or some dumb thing.

      Has anyone been successful in installing Visual Studio under wine? I'd actually really like that!

      --
      What could possibly hurt the security of the American people more than giving our own government the ability to hide its
    4. Re:Seconding this by Unoriginal_Nickname · · Score: 1

      Yeah, but my monitors aren't all the same size. The ideal solution would be a way to detach tabs so you end up with a view like XCode.

    5. Re:Seconding this by Unoriginal_Nickname · · Score: 1

      He was joking.

      KDevelop is about as close as you're going to get. In my opinion, though, people who prefer to use graphical IDEs for C development are very much second-class citizens in the Linux world and none of the tools go very far beyond basic adequacy.

      Auto-indentation in every IDE also seems to be deliberately mangled just for the sake of making it different than Visual Studio.

    6. Re:Seconding this by nurbles · · Score: 1

      I use VS2005 every day on a three monitor system. I've never had a problem pulling various tabs out to windows on other displays, especially when debugging: the source is on one screen, the app on another and all of my debug-specific windows (watch, breakpoints, call stack, memory, registers, etc) are on the third. And VS has no problem saving/restoring those window positions between runs. The only thing I've seen that is odd about multiple monitors is that maximizing the main window makes it smaller on my system (because I have the window spread partly onto a second screen) and that if I connect from home (with UltraVNC), the main window is automatically sized to fit a single screen -- but I think that is an UltraVNC thing. So what is it that actually doesn't work (or isn't supported) on multiple monitors?

      Or do you mean the multi-monitor support for the applications you're developing? If so, that isn't Visual Studio, it is the libraries, SDK, help, etc that you are using. And I know for a fact that multi-monitor functions are available for programs (but they might take a bit of work to track down) because I have several programs that use them. So again, what isn't supported?

    7. Re:Seconding this by Unoriginal_Nickname · · Score: 1

      So again, what isn't supported?/p>

      I use 2008 TS. Are you using some sort of extension? Because Visual Studio *definitely* has no ability to pull tabs out of the main window.

    8. Re:Seconding this by Unoriginal_Nickname · · Score: 1

      Just to clarify, I'm talking about editor windows not the tool windows.

    9. Re:Seconding this by nurbles · · Score: 1

      I'm using VS 2005 Pro at work, but it also appears to work in the VS 2008 Express that I have at home. I right-click on a sub-window title or tab and change it from dockable to floating. Then it may be positioned anywhere on the display(s).

    10. Re:Seconding this by nurbles · · Score: 1

      Ah. If I needed that I would just spread the main window over all the monitors and open a couple new tab groups so that I could see multiple source files at the same time. Typically I open new instances of Visual Studio (or other editors). But I see what you mean about the source tabs being more "stuck" in place than any of the others. I'd never actually tried to split them out because I rarely, if ever, have any need to see two source files at the same time .. except in a diff viewer and the one I use allows me to edit BOTH files while viewing the diffs, so I have it placed with the divider along a screen boundary with one file on each screen. Too bad Visual Studio doesn't have an integrated file compare/merge tool (like DiffZilla or WinMerge).

  36. I use a magnetized pin by floydman · · Score: 2

    and I keep them here:
    http://www.marthastewart.com/goodthings/magnetized-pin-box

    It looks cute, girls get interested in the field.

    --
    The lunatic is in my head
    1. Re:I use a magnetized pin by shockwaverider · · Score: 4, Funny

      A magnetized needle and a steady hand? Nah - Real programmers use ....

      http://imgs.xkcd.com/comics/real_programmers.png

      --
      Remember kids! Guns don't kill people - Americans kill people.
    2. Re:I use a magnetized pin by LaskoVortex · · Score: 1

      magnetized-pin-box

      I don't think people picked up on the double entendre. But I'll help. See, "magnetized" can go with "pin" or "box" depending on how you read it. When applied to sewing, we read "magnetized" to go with the box. However, when manually editing bits on a hard drive platter, we read "magnetized" to go with the pin. But I guess it helps if you have done the latter.

      --
      Just callin' it like I see it.
    3. Re:I use a magnetized pin by Have+Brain+Will+Rent · · Score: 1

      I thought real programmers used interns or work-study slaves...

      --
      The tyrant will always find a pretext for his tyranny - Aesop
    4. Re:I use a magnetized pin by Anonymous Coward · · Score: 0

      microsoft word!

    5. Re:I use a magnetized pin by mmclean · · Score: 1

      XKCD isn't half as funny with just the image and not the ALT-text.

      http://xkcd.com/378/

      Real programmers set the universal constants at the start such that the universe evolves to contain the disk with the data they want.

    6. Re:I use a magnetized pin by Anonymous Coward · · Score: 0

      Nah. I use magnetized bullets and a good aim.

    7. Re:I use a magnetized pin by JoeMerchant · · Score: 1

      My first Fortran teacher (we were the first class to not use punch cards) started programming with a 16 click rotary dial...

  37. But it's not free by BattyMan · · Score: 0

    Go read the article. He said "free".

    --
    Exceeding the recommended torque is not recommended.
    1. Re:But it's not free by Anonymous Coward · · Score: 0

      He clearly meant free as in beer.

    2. Re:But it's not free by stevenvi · · Score: 2, Informative

      Review their web site. Microsoft Visual Studio Express is free.

    3. Re:But it's not free by Anonymous Coward · · Score: 0

      Visual Studio Express is. The only problem is lack of free subversion or other repository support

    4. Re:But it's not free by Anonymous Coward · · Score: 0

      Visual Studio Express is surely free (as in beer).

    5. Re:But it's not free by DarkProphet · · Score: 1

      I am pretty sure the Express versions are now, but I don't think they were always "free". Unless you mean "free" as in compiling the IDE from source yourself, in which case it is not! :-)

      --
      What could possibly hurt the security of the American people more than giving our own government the ability to hide its
    6. Re:But it's not free by Supergibbs · · Score: 1

      VS Express is and it works for most applications... http://en.wikipedia.org/wiki/Microsoft_Visual_Studio#Editions

      --
      First post! (just in case I am...)
    7. Re:But it's not free by Heir+Of+The+Mess · · Score: 1

      After putting up with using Eclipse for a year, forking over $250 for Visual Studio 2008 standard didn't seem to bother me anymore. Trying to save a few hundred bucks just became too counter productive in the long run. There is always the free Visual C++ Express if you just want to program in one language.

      --
      Australian running a company that does C# / C++ / Java / SQL / Python / Mathematica
    8. Re:But it's not free by XDirtypunkX · · Score: 1

      It's a problem, but not a big one if you have Tortoise or the like.

    9. Re:But it's not free by Anonymous Coward · · Score: 0

      Go do some research. Express editions are "free".

    10. Re:But it's not free by Anonymous Coward · · Score: 0

      Visual C++ Express Edition is a Visual Studio version, and it is free. And it is great.

    11. Re:But it's not free by BattyMan · · Score: 0, Troll

      Oh. Uh, some of us here are working with a higher value of "free" than "free as in beer". The monopolist will never meet this standard, and we therefore shun it and all its products.

      --
      Exceeding the recommended torque is not recommended.
    12. Re:But it's not free by Xest · · Score: 4, Insightful

      Yes, that's what's generally referred to as zealotry and ignorance.

      If someone just wants to build Windows apps then Visual Studio is far and away the quickest and easiest way to do that.

      A lot of people don't care if their software was built by an angel with a halo over his head, if that software isn't very productive they'd rather take the piece written by an average day to day coder.

      Some people have better things to do than bicker about religious software vendor wars and just go for what lets them get the job done best, and sorry, but free software all too often just loses out here, until there's a realiation of that, it aint gonna change but the free software has a strong focus on getting things to work, without much effort ever being put into how it works and improving usability and productivity.

      Asking people to give up usability and productivity for some moral stance is going to be about as easy as getting blood out of stone.

      I support the idea of free software, but the free software movement has to accept these points and act on them as the ideology alone isn't enough to make people switch.

    13. Re:But it's not free by Anonymous Coward · · Score: 0

      VS Express?

    14. Re:But it's not free by InsaneBoarder234 · · Score: 1

      The free, yes FREE, IDE that I use is Visual Studio 2008 Professional Edition (Visual Basic, C#, C++). Unfortunately it's a student only deal at certain Universities, but check out the Microsoft Dreamspark program at http://www.dreamspark.com/ for more information.

      For Java development I use Eclipse and NetBeans. I've only just began using Eclipse and will be using it when I start my new job, so it's likely I will sway that way and stick with Eclipse over NetBeans in the long run.

      Finally, PHP and web development, as far as free tools I use Notepad++ for these. I haven't looked at the appropriate plugins for Eclipse or NetBeans yet, but then I don't exactly have reason to because I'm rather happy with Dreamweaver.

    15. Re:But it's not free by Anonymous Coward · · Score: 0

      I am pretty sure the Express versions are now, but I don't think they were always "free".

      No, Express VS and SQL have always been free-as-in-beer. They more-or-less replaces VS Standard which was pay-for but relatively cheap.

    16. Re:But it's not free by jellomizer · · Score: 2, Interesting

      I really like Notepad++ I really wish there was a Linux port for it. But it does run ok in Wine though.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    17. Re:But it's not free by Veretax · · Score: 1

      I agree here. Frankly I find integrating Subversion into VS isn't all its cracked up to be anyways. I'd rather track that information elsewhere, through explorer for example.

    18. Re:But it's not free by ShieldW0lf · · Score: 1

      Check out Geany. It's cross platform, and it's a good minimalist editor. Combine it with sshfs on *nix or DokanSSHFS on Windows and you've got transparent remote editing.

      --
      -1 Uncomfortable Truth
    19. Re:But it's not free by Abcd1234 · · Score: 1

      If someone just wants to build Windows apps then Visual Studio is far and away the quickest and easiest way to do that.

      It's certainly hard to deny that. After all, the Mono folks are basically building a clone of VS as MonoDevelop... they wouldn't be doing that if they didn't realize VS was doing *something* right.

      Really, it comes down to the right tool for the job. If I'm working on a Unix application, I prefer good ol' GNU Screen, Vim, Git, and a plethora of command-line tools (grep and sed, gdb, etc). But if I'm working in the Windows world, it's hard to argue that VS isn't the best tool for the job (though I like to marry it with a Cygwin environment so I can still use Git and grep, sed, perl, etc).

      Asking people to give up usability and productivity for some moral stance is going to be about as easy as getting blood out of stone.

      Here I have to argue a bit, though. Vim and Emacs aren't "usable", in the sense that a neophyte can come to them and immediately become productive. Rather, they're "usable" in the sense that, like driving stick, it requires time and practices to become used to them, but once you've crested the steep learning curve, they become extremely productive power tools.

      That said, on Windows, where you need to build GUIs using the *horrible* Windows layout model, and need to build out installers and so forth the Windows way, the integrated tools in VS just make it that much more useful. But I think that's as much a function of the Windows ecosystem itself, rather than the inherent superiority of VS as a development environment.

    20. Re:But it's not free by Anonymous Coward · · Score: 0

      Oh. Uh, some of us here are working with a higher value of "free" than "free as in beer". The monopolist will never meet this standard, and we therefore shun it and all its products.

      You mean free as in your mom's vile, rank snatch?

    21. Re:But it's not free by bugi · · Score: 2, Insightful

      Asking people to give up usability and productivity for some moral stance is going to be about as easy as getting blood out of stone.

      For some, living the moral life is a prerequisite for sleeping at night.

    22. Re:But it's not free by ADRA · · Score: 1

      I never use it for development, just text editing when I'm on windows, but this is probably the best free text editor that I've seen in a long time. Props to them.

      --
      Bye!
    23. Re:But it's not free by Xest · · Score: 2, Insightful

      And they are almost certainly hypocrits.

      It's nigh on impossible to live the moral live without living in a cave.

      No doubt the PC you posted that message on will end up in a nigerian scrap yard polluting the toxic components into the land rivers and sea in that area.

      Living a moral life does not mean you get to pick and choose what morals you follow, doing that means you're just choosing a different set of morals that are and aren't important to you than someone else without actually making you any more of a good person.

      Unless you sew your own clothes rather than purchase those in shops that have almost certianly come from sweat shops, unless you forego use of a vehicle filled up with fuel from the large fuel giants that pollute and even make species extinct, unless you have never wasted a drop of food in your life whilst children are starving in ethiopia, unless you've never consumed a product whose leftovers end up in a tip seeping pollutants into the earth and riverways used by humans, unless you've never consumed a newspaper or other publication from one of the controlling media groups such as Murdoch's, unless you can claim to have never done any of those things, you cannot possibly suggest that you are a more moral person than anyone else.

      So there's the problem, when people are more than happy to support companies that have caused species of plant or animal to go extinct (from big oil, to wood/paper product firms) as a matter of their daily lives, I do not think taking a moral stance against Microsoft, which has actually been far more philanthropic than the likes of Apple and many other tech. companies ever have is really high on anyone's agenda.

      Ironically, being more productive and hence less stressed is almost certainly going to net the majority of average joes working their day to day lives a much better night's sleep than pretending they've actually made a difference by not supporting Microsoft whilst guzzling gallons of fuel on their commute to and from work each week.

    24. Re:But it's not free by Xest · · Score: 1

      "Here I have to argue a bit, though. Vim and Emacs aren't "usable", in the sense that a neophyte can come to them and immediately become productive. Rather, they're "usable" in the sense that, like driving stick, it requires time and practices to become used to them, but once you've crested the steep learning curve, they become extremely productive power tools."

      That's not really usability though but merely productivity. I don't disagree that keyboard shortcuts and applications based on them (and in fact command line OS' vs. GUI OS' even) can allow you to be far more productive, but they are certainly less usable as usability is really defined as how easily you can use something without such prior knowledge.

      One might argue then that they're extreme examples of productivity over usability, but I'm not convinced this is the case, I believe it's possible for an application to be both usable and be great in terms of productivity. Vi and Emacs are the way they are because it's the way they've always been, not because they've undergone studies in usability and been rehashed based on that. They just offer improvements in productivity on the classic design.

      Some areas of the FOSS world are looking seriously at improving usability, IIRC GIMP has in the past couple of years taken this seriously which is a great step forward. Of course, if the classic way of doing things in a particular app. whose roots dates back decades need to be refactored to improve usability then there's bound to be resistance to change or will to develop a replacement in the OSS community because they're happy with the way things are and the way things work. This is why I'm not sure FOSS really wants to go truly mainstream in general because it will take a lot of sacrifice - developers are going to have to change or replace what they've always been used to to make way for mainstream acceptance. The question the FOSS community has to ask itself is whether it's important to keep developing what they themselves like, or whether they're willing to make the sacrifice to truly go mainstream which certainly will require an attitude change towards greater acceptance of usability. Of course you then get the question of accessibility, even the HTML5 spec seems to be shunning this despite accessibility being given great focus on the web in the last decade, realistically usability is only the first step, followed by accessibility but again they're steps that must be taken if FOSS is to truly displace Microsoft.

    25. Re:But it's not free by Anonymous Coward · · Score: 0

      Yes, that's what's generally referred to as zealotry and ignorance.

      If someone just wants to build Linux apps then vim is far and away the quickest and easiest way to do that.

      A lot of people don't care if their software was built by an angel with a halo over his head, if that software isn't very productive they'd rather take the piece written by an average day to day coder.

      Some people have better things to do than bicker about religious software vendor wars and just go for what lets them get the job done best, and sorry, but proprietary software all too often just loses out here, until there's a realiation of that, it aint gonna change but the proprietary software has a strong focus on getting things to work, without much effort ever being put into how it works and improving usability and productivity.

      Asking people to give up usability and productivity for some immoral stance is going to be about as easy as getting blood out of stone.

      I support the idea of proprietary software, but the proprietary software movement has to accept these points and act on them as the ideology alone isn't enough to make people come back.

    26. Re:But it's not free by thelastquestion · · Score: 1

      There are some moral standards to lose sleep over, however, compared to some of the things done in this world, I do not see how using the right programming tool for the job - whether it is free or not - would be something that will torture your eternal soul.

      --
      Si vis pacem, para bellum
    27. Re:But it's not free by Anonymous Coward · · Score: 0

      On the contrary, getting blood out of stone isn't too difficult. I just put a small amount of ammonia on the trouble spot, then dabbed (NOT rubbed) with my Sham-wow. It came right up.

    28. Re:But it's not free by bugi · · Score: 1

      In all things, moderation. That applies no less to moral activity, which otherwise becomes tyranny.

      In this case, I was referring only to the moral choice of Libre. As with pollution, fair labor and despeciation, each person makes his own moral choices. Whether your neighbor will agree with your choices is another matter.

    29. Re:But it's not free by Anonymous Coward · · Score: 0

      You forget that most open source software is actually better and more user friendly than the closed source counter parts. Just look at MS Office vs Open Office.

      Leaps and bounds. - and one doesn't have a paper clip.

    30. Re:But it's not free by Abcd1234 · · Score: 1

      That's not really usability though but merely productivity. I don't disagree that keyboard shortcuts and applications based on them (and in fact command line OS' vs. GUI OS' even) can allow you to be far more productive, but they are certainly less usable as usability is really defined as how easily you can use something without such prior knowledge.

      Sure, but you should ask yourself something: should power tools, such as code editors, etc, focus on being usable, or being productive? Personally, I would argue that, because these tools are directed at professionals whose ultimate goal is to be productive, it's better to create a powerful tool with a steep learning curve than an easy-to-use tool that gets in the way.

      Or, to put it another way: IMHO, when evaluating any development tool, "usability" should *not* be the first item on the list.

      'course, I'm also a huge fan of Git, which is the SCM equivalent of vi or emacs. :)

      One might argue then that they're extreme examples of productivity over usability, but I'm not convinced this is the case, I believe it's possible for an application to be both usable and be great in terms of productivity. Vi and Emacs are the way they are because it's the way they've always been, not because they've undergone studies in usability and been rehashed based on that. They just offer improvements in productivity on the classic design.

      I disagree. Vi and Emacs are the way they are because developers decided that that's how they wanted to work, and could work most productively. I mean, those tools have been around for 30 or more years, now... and they've stood the test of time. I think that says something for their underlying design.

      Now, can a tool be both usable and productive? Honestly... I'm not convinced. The best applications in their fields, be it FrameMaker or Photoshop or AutoCAD or <insert favorite product here> have one thing in common: they take a long time to become productive in. Similarly, Emacs, for example, can easily be used without knowing anything about it's more powerful features. But to *truly* use it, you've gotta take the time to learn it.

      'course, in the case of Vim, you probably have a point... it's, to say the least, esoteric. It just happens to be esoteric in a way I like. :)

      In short, is it possible to have a tool be both usable and powerful/productive? Perhaps. But I certainly can't think of an example off the top of my head. Can you?

      As for the rest, personally, I've never viewed the free software "movement" as any kind of mission, and, frankly, I find those who do... amusing. Personally, rather than wasting time worrying about world dominance I'd rather spend my time doing what I do best: writing code.

    31. Re:But it's not free by aminorex · · Score: 1

      Knee-jerk reactionary. I hate Microsoft software because it stinks on ice. It is not productive. It is the opposite of productive. Counterproductive. I have wasted more time on closed microsoft software than I would ever have dreamed possible. You can't fix it when it is broken. It is always broken. There is no useful documentation for the most important features -- and this is by DESIGN. The software intentionally shoots you in the kneecaps, because it is part of the microsoft business plan to sell you a wheelchair. This is no more a religious issue than hating someone who rapes my child.

      --
      -I like my women like I like my tea: green-
    32. Re:But it's not free by aminorex · · Score: 1

      Hairshirts don't help anyone.

      That said, asking me to give up usability and productivity in order to make bill gates richer isn't going to get any traction.

      --
      -I like my women like I like my tea: green-
    33. Re:But it's not free by Anonymous Coward · · Score: 0

      Id say - things which are alike in nature grow to look alike

    34. Re:But it's not free by Anonymous Coward · · Score: 0

      Very good point! I am not a Microsoft, Linux, Mac, or other zealot. I just use what works best for my needs. Free or Pay to Use software is not an issue that keeps me roiling in a fervor so that I can't sleep at night. I use several flavors. Just like my conventinal tool box, I pull out the right tool for the right job. Doesn't matter if I bought it from Snap On, or some "free" tool someone gave me. And for most jobs, I don't need to see the source code of the tool I'm using, whether or not it's open source or not.

  38. XCode by Bored+Grammar+Nazi · · Score: 1

    What else?

    1. Re:XCode by ChunderDownunder · · Score: 1

      The OP asked for a 'Free IDE'. Last I checked XCode cost $US599 but came with a free Mac mini. :)

    2. Re:XCode by justindarc · · Score: 0

      I use XCode, combined with Textmate (commercial), but XCode alone is pretty good, and I actually like it. Nothing better for coding for your phone and desktop in the same IDE.

      I agree.. Xcode is probably by far the best IDE in terms of speed and ease-of-use that i've ever worked with

    3. Re:XCode by Pictish+Prince · · Score: 1

      Best I've ever used.

      --
      Only his tendency toward a dazed stupor prevented him from screaming aloud.
  39. If you're moving towards .NET by snookums · · Score: 4, Informative

    Try SharpDevelop if you ever decide to trade in C++ for C# and the .NET framework.

    http://www.icsharpcode.net/OpenSource/SD/
    http://en.wikipedia.org/wiki/SharpDevelop

    I'm not really a Microsoft platform coder any more, but I've used this one in the past and it's not bad. Basically a free (as in speech - LGPL) clone of VisualStudio.

    --
    Be careful. People in masks cannot be trusted.
    1. Re:If you're moving towards .NET by mindcorrosive · · Score: 1

      I've used it, and it's quite good - not up to par with VS in some occasions, but it's FOSS. Supports IronPython as well. Also, you can open directly your VS solutions and projects, and they will just work. The latest version (3.0) supports .NET 3.5, and the installation is nowhere near as invasive as Visual Studio. The upcoming 3.1 will be compatible with the (currently being developed) .NET 4.0.

      --
      + 3.14 Transcendental
  40. NetBeans by timothyb89 · · Score: 5, Informative

    I've been using NetBeans lately for C/C++ development, and (for the most part) it has it's usual awesome editor features. Unfortunately, the C/C++ plugin only works with the Cygwin/MinGW development tools on Windows.

    I'd say that it's most useful editing feature is it's code completion- it completes quite a few of the usual syntactical characters, and it enters them for you in a way that makes sense. Compare that to Eclipse, which only fills in (as far as I know) parenthesis and some brackets. Being accustomed to the completion NetBeans offers, I found the way Eclipse completes characters to be more frustrating than helpful.

    For example, if you have this mostly-typed statement (')' autocompleted by editor):
    some_function(something()[cursor])
    ...you might think that pressing the ';' key should make the cursor jump to the end and skip over the ')'. NetBeans will do the small things like this, where I haven't seen Eclipse do it.

    I haven't used Eclipse as much as NetBeans, so I may have missed the "turn this feature on" checkbox, but I've always found NetBeans to be a more intuitive editor. I'm not an expert C/C++ programmer (Java is my main language), so I could just be making assumptions that may be true for one language but not another. Either way, its just my $0.02.

  41. Buggy? by BattyMan · · Score: 1

    emacs may be many things, but it's not buggy. It's an app which can run for _months_ without trouble. In eleven years I do not believe that I have ever managed to make it crash.

    --
    Exceeding the recommended torque is not recommended.
    1. Re:Buggy? by Anonymous Coward · · Score: 0

      Hexl-mode used to corrupt files on Windows. I count that as a bug.

      Character set and linefeed handling in general is not exactly broken but still awfully complicated compared to everything else.

    2. Re:Buggy? by BattyMan · · Score: 1

      This is a winbloze problem, and not emacs' fault.
      If you had a platform that didn't inject a carriage return in front of every linefeed as it writes the file to disk, it wouldn't corrupt yer hex files. Cygwin works around this transparently nowdays.

      --
      Exceeding the recommended torque is not recommended.
  42. Komodo Edit by Anonymous Coward · · Score: 0

    Im surprised at no mention of Komodo. The free IDE, Komodo Edit, is extremely nice. I use exclusively for python code and I've found the in-line syntax checking/bug checking a handy feature. Also the ability for it to recognize my own internal function/variables in my modules is extremely handy when I have lapses in my memory :p.

    1. Re:Komodo Edit by caubert · · Score: 0

      I also use Komodo. Actually it's Komodo IDE, I finally got the boss to buy the software :) It also has good plugins, alas eats up memory too.

  43. Padre for Perl by Anonymous Coward · · Score: 0

    Padre for Perl, with now have all the goodness of plugins for catalyst, mojo and fantastic support, did I say free?

  44. use no IDE by Anonymous Coward · · Score: 0

    I recommend using no IDE.

  45. U++ TheIDE by luzr · · Score: 2, Informative
    http://www.ultimatepp.org/

    Well, you would probably get more than just IDE with that, as TheIDE is quite tightly coupled with the U++ library (http://www.ultimatepp.org/L$www$uppweb$idess$en-us.html_3.png, http://www.ultimatepp.org/L$www$uppweb$idess$en-us.html_4.png), anyway, ide-wise:

    - it has cool highlighting, including highlighting of C++ blocks and coloring parenthesis (see http://www.ultimatepp.org/L$www$uppweb$idess$en-us.html_2.png)

    - its C++ code-parsing abilitites (for purposes of code-navigation and 'intelisense') are at the moment said to be better than CDT's or at par with Visual Studio, although the problem is that it parses only the project files (not 'external' headers) http://www.ultimatepp.org/L$www$uppweb$idess$en-us.html_5.png.

    - if you are rebuilding large projects often, it has very fast build process. It uses two tricks, one widely known (using multiple CPU cores to launch compiler instances), one special (combining files to avoid header reparsing). In practice, on quadcore CPU, it can build up to 16 times faster than plain make.

    - works in Win32 and X11.

    But there is also a drawback for many users:

    - as it adds a strong crossplatform modularity layer, it gets a lot of suffering getting used to it. Simply do not expect your usual Visual Studio copy...

  46. mc by Anonymous Coward · · Score: 0

    Midnight commander's built-in text editor colorizes code in many different languages. I've been using it for probably about 8 years now, including all the development I did for college projects. With the exception of when I was forced (read required by professor) to develop something in VS, I found it to be stupid slow, buggy, and just downright frustrating.

    Also, there are simple lightweight text editors which work great without all the bulk of a full IDE, like TextPad, Kate, etc. TextPad has a free version which has an annoying pop-up at the beginning, but that's it. Essentially, its a commercial version of Kate anyway.

    So yeah, text editors for modifying code, then compile with gcc/javac/whathaveyou. Its free, fast and works.

  47. Codelite by Anonymous Coward · · Score: 2, Informative

    Why is it nobody seems to know about the excellent CodeLite? Described as "a powerful open-source, cross platform IDE for the C/C++ programming languages (build and tested on Windows XP SP3, (K)Ubuntu 8.04, and Mac OSX 10.5.2)" see http://www.codelite.org/

    1. Re:Codelite by Anonymous Coward · · Score: 0

      Seconded. Codelite is good.

  48. Not Free, but... CodeWarrior by MaineCoon · · Score: 4, Interesting

    Not free, and also no longer sold for Windows, but it's my favorite IDE of all time. I still use CW9 on Windows for anything that doesn't require absolute latest C++ compiler/libs (mainly, my MUD, which I do my dev on Windows, but run it on a Linux server).

    CodeWarrior has a feature no other current Windows-based IDE has - independent free floating edit windows without being locked into an MDI container with grey backdrop. I'd gladly pay a few hundred dollars for a modern, actively supported editor that had such a feature (I hear SlickEdit has been planning it, but they have yet to deliver).

    --
    Hunt your preferred prey at Aliens vs Predator MUD. Join the war at avpmud.com port 4000
    1. Re:Not Free, but... CodeWarrior by Anonymous Coward · · Score: 0

      Spend the money on a Mac Mini and use XCode - free floating windows galore.

    2. Re:Not Free, but... CodeWarrior by scobiej · · Score: 1

      Well, I've pretty much used every main stream IDE out there and a lot other ones to boot. Yes, I'm a big Vim fan and use it a lot but, professionally, I'd have to say slickedit is pretty damn good. Most IDE's (especially with C/C++ projects) struggle with huge code bases but slick takes it in its' stride. It's not free but you don't mind paying for something this good. Eclipse is OK with Java but even then, it's crash city and slooooow as.
      I've always wanted to use KDevelop but it just grinds to a halt importing anything with over a few hundred files (I did look at the code for version 3 but it was pretty messy in there). QTCreator looks promising but is missing way too many features at the moment to be taken seriously.
      I really wish slickedit did a version which was free to use for non commercial development. They may find it opens up a whole new market of opportunity.

    3. Re:Not Free, but... CodeWarrior by ThrowAwaySociety · · Score: 2, Insightful

      CodeWarrior has a feature no other current Windows-based IDE has - independent free floating edit windows without being locked into an MDI container with grey backdrop. I'd gladly pay a few hundred dollars for a modern, actively supported editor that had such a feature (I hear SlickEdit has been planning it, but they have yet to deliver).

      Mod parent up. Why is it that, two decades after GUIs became the norm for spreadsheets and word processors, programmers still have to make do with tabbed editors and split-screens? (This is not to say that tabs and split views aren't important.) Am I the only developer who'd like to use his second monitor for something other than Slashdot?

    4. Re:Not Free, but... CodeWarrior by Anonymous Coward · · Score: 0

      Mod parent down, why would he have a better use for his second monitor than Slashdot?

    5. Re:Not Free, but... CodeWarrior by JoeMerchant · · Score: 1

      Code Warrior on Windows for Palm OS (2/3.0) development blew, chunks, hard. But then, there wasn't really any choice (and, yes, I looked at that open source thing, and, no, it wasn't really a choice.)

    6. Re:Not Free, but... CodeWarrior by JoeMerchant · · Score: 1

      Brief, by Underware. Best programmer's editor, ever. Don't think they ever adapted it for dual monitor use, it was a DOS based beast, best viewed in monochrome green on a black screen.

      Key to a good editor is being able to think what you want and have it happen with a few easy to remember (and execute) keystrokes - this is why the vi guys are so zealous (that, and the fact that they enjoy being arcane) but they have a valid point about mice being for the birds.

    7. Re:Not Free, but... CodeWarrior by MaineCoon · · Score: 1

      I used to be a Mac game developer, and ported a handful of commercial titles to the Mac (including Baldurs Gate 2 and Icewind Dale; didn't work on the expansions, though)

      Never, ever, again will I use a Mac.

      --
      Hunt your preferred prey at Aliens vs Predator MUD. Join the war at avpmud.com port 4000
  49. Qt Creator all the way! (if you code in C++) by Kensai7 · · Score: 3, Interesting

    I'm essentially a beginner in C++ programming and at least for that language I found extremely easy and straightforward doing projects on Qt Software's free IDE. Even if you don't implement their toolkit in your projects, you can still have a stable and unbloated environment to do some serious coding.

    There is only one caveat, afaik, with Qt Creator. It's still in version 1.1.1... this means it probably misses some features (or has some not so obvious bugs) which shall probably be covered in later major releases. Nevertheless, if you bind Qt's capabilitities (ie, signals and slots) to your C++ projects there is no better IDE to unleash your productivity!

    You can have more information and download your free copy here.

    --
    "Sum Ergo Cogito"
    1. Re:Qt Creator all the way! (if you code in C++) by andredurao · · Score: 1

      QtCreator is fine, but also I good option for me was, Eclipse with the Qt-plugin.

  50. VI and Emacs? In this day and age? by syousef · · Score: 2, Informative

    Vi is one editor every professional should know the basics of because it's very feature complete and versatile. Emacs is more specialized but I'm not knocking it. However if you're developing today, you need to move away from modal editors that have awful help systems and no menus. They simply don't encourage learning and get in your way if you're away from the editor for too long and have to try to remember obscure commands (or look them up!). Note they are EDITORS. An IDE does much much more. You should also be using IDEs and editors that support multiple languages. Gone are the days when a computer professional could afford to know just one or two languages. Who the hell wants to learn the quirks of different editors for each one?

    --
    These posts express my own personal views, not those of my employer
    1. Re:VI and Emacs? In this day and age? by Anonymous Coward · · Score: 0

      Emacs is an IDE. No one in their right mind (or not completely ignorant) would call it 'just an editor'.

    2. Re:VI and Emacs? In this day and age? by backwardMechanic · · Score: 3, Interesting

      They simply don't encourage learning and get in your way

      That's exactly why I just gave up on Eclipse, and decided to finally learn to use vi well. Modern IDE's try to do far too much. The last straw with Eclipse was when I wanted (as an inexperienced new user) to write a very short C++ file to test an idea. Eclipse forced me to jump through hoops, defining a project and suchlike. Many of my files are not a project, they're a short self-contained piece of code to do something specific. For coding, I want an editor with syntax highlighting, and a command line. I'm not averse to the right tool - I'm also a happy Qt-designer user, but I'm writing the code with vim.

    3. Re:VI and Emacs? In this day and age? by Anonymous Coward · · Score: 1, Informative

      Emacs is more specialized but I'm not knocking it.

      Did you just seriously call emacs more specialized than vim*? Really? It's basically a Lisp environment with stuff handy for building text editors (and a nifty little example program implementing one). It couldn't be less specialized if they tried.

      However if you're developing today, you need to move away from modal editors

      No, you don't. And emacs isn't a modal editor.

      that have awful help systems

      As a vim user with little emacs experience, I can't speak for it (though you're probably horribly wrong there too), but vim has an excellent help system.

      and no menus.

      Both editors have GUI versions with fancy menus, if that's your thing.

      They simply don't encourage learning

      Learning the basics is plenty easy with emacs. You have to learn more if you want to know every single tiny little feature of it, but that's because it puts 'modern' IDEs to shame. The general stance among vim users is that while it's harder to learn, once you do, it's more efficient. And it also puts IDEs to shame.

      and get in your way if you're away from the editor for too long

      set showmode, and more importantly, you should read the first point of this article. You should read the rest too, probably, but that's the relevant part.

      and have to try to remember obscure commands (or look them up!).

      Again, the whole "GUI versions with menus" thing.

      Note they are EDITORS. An IDE does much much more.

      Both can do just about anything an IDE can. And from the other direction, every single IDE I've seen is nowhere near as good at the whole "editing text" thing that is so fundamental to programming. They tend to be on the level of something like ed at most, and often less.

      You should also be using IDEs and editors that support multiple languages. Gone are the days when a computer professional could afford to know just one or two languages. Who the hell wants to learn the quirks of different editors for each one?

      Both emacs and vim support ridiculous amounts of languages.

      You are hilariously ignorant and basically every single word of your post is wrong.

      *I am going to be talking about vim because unless you are talking about a decades old emacs implementation, it's not really a sensible comparison

    4. Re:VI and Emacs? In this day and age? by Anonymous Coward · · Score: 0

      you're a retard

    5. Re:VI and Emacs? In this day and age? by coaxial · · Score: 2, Interesting

      An IDE does much much more.

      That's why you have a second xterm open with `make |& less` constantly queued up on the command line. Seriously. There's nothing an IDE does that you can't do faster and easier. Learn to write a makefile and an editor and your skills are portable. Learn an IDE and you're screwed as soon as you change jobs and they say, "Oh. We're a foo shop."

      You should also be using IDEs and editors that support multiple languages.

      The vast majority of IDEs are stuck for exactly language, or perhaps two. You want something that handles everything. Use an editor. If you use a grownup editor like vi or emacs, you've got syntactic markup for pretty much everything, along with language specific folding. IDEs simply don't do that. Not that they can't, but they don't. It's because the IDE designers say, "Wouldn't it be cool if we built an IDE for foo?", and the IDE is biased towards that language and workflow.

      Gone are the days when a computer professional could afford to know just one or two languages. Who the hell wants to learn the quirks of different editors for each one?

      So we should learn the quirks of behemoth IDEs instead?

    6. Re:VI and Emacs? In this day and age? by Anonymous Coward · · Score: 0

      Anjuta under Linux is also very good. It has some great plugins

    7. Re:VI and Emacs? In this day and age? by Anonymous Coward · · Score: 0

      That's why you do not use strange language-specific IDEs but instead use a editor with all the features you need. While vi is and editor, vim has most features you ever want and then even some of the new more annoying ones. Luckily most is not activated by default.

      Usually the only think I use it project building and error/warning navigation. I'm not even using the source navigation because I prefer clear programs where 50k lines do not mean I do not know where things are. I once used syntax highlighting, but it just got too disruptive. (But then I'm using C and not C++ which its absurd syntax).

    8. Re:VI and Emacs? In this day and age? by Anonymous Coward · · Score: 0

      I use almost exclusively VIm in my projects (in C#, php or java). There are plugins for vim that make it more like an IDE than an editor (ctags, code completion, make, svn/cvs...). One thing it lacks (or maybe exists but I don't know) is refactoring or renaming functions/variables. When I need this I often end up opening visual studio or eclipse, do the refactor, and get back to my vim.

      I used some time ago an eclipse plugin for vi-like key bindings. It was useful, but not as much as using pure vim.

      And I'm a 100% keyboard programmer. I usually don't move the mouse for several hours. For me, it's speedier writing the full name of the function or variable than having to wait for the autocompletion to become available (this when I know the name of the function and parameters it takes, of course).

      So that's why I use VIm. I'm more eficient, I get more work done in the same time.

    9. Re:VI and Emacs? In this day and age? by Mornedhel · · Score: 2, Informative

      Vi is one editor every professional should know the basics of because it's very feature complete and versatile. Emacs is more specialized but I'm not knocking it.

      Not true. You've obviously never used Emacs. Vi(m) users usually make fun of Emacs because it does everything except coffee. Seriously, it's the standard troll vs. Emacs.

      However if you're developing today, you need to move away from modal editors that have awful help systems and no menus.

      Well it just happens that Emacs is not a modal editor. Also, it has a complete help system, and whaddayaknow, it has menus.

      They simply don't encourage learning and get in your way if you're away from the editor for too long and have to try to remember obscure commands (or look them up!).

      Now you have a (semi-) point. At least you'd have one if common commands weren't accessible through the menu.

      Note they are EDITORS. An IDE does much much more. You should also be using IDEs and editors that support multiple languages. Gone are the days when a computer professional could afford to know just one or two languages. Who the hell wants to learn the quirks of different editors for each one?

      I'm sorry, what ? Neither Emacs nor vi are single-language (I use Emacs for C++, Java, Perl and a bit of Erlang, and it has support -- syntax highlighting, compiling/debugging, indentation... -- for about every language you've heard of and many you've never encountered). Also, Emacs is not an editor. It's got every feature an IDE has, and more.

      --
      This /.-related sig is a stub. You can help Mornedhel by expanding it.
    10. Re:VI and Emacs? In this day and age? by petrus4 · · Score: 2, Informative

      If you want to be able to move around 50+ line files rapidly, Vim can be invaluable. It can also have syntax highlighting support, which can be very useful for reducing bugs.

      The only other two things that IDEs do that I can think of are template/skeleton generation and app launching. Vim is scriptable, and modes have likely already been written to launch/manipulate just about every app you can think of, from tar to cvs to even things like IRC and email. There's even a file management/ftp browsing system for Vim.

      If you need a template generator, writing one yourself shouldn't be too difficult; you can also do it in anything from Perl to PHP to shell, as well.

      Vim is one program which a lot of people tend to knock before they've tried it because, when you don't know anything about it, it can seem extremely intimidating, incomprehensible, primitive, and deeply strange. I did it myself.

      However, once you start using it, you'll discover that while it does take some getting used to, it is actually none of those things. It is the product of a very large amount of programming experience, and a maintainer and users who are programmers themselves, so they know exactly what a programmer's editor should contain.

    11. Re:VI and Emacs? In this day and age? by isorox · · Score: 1

      I use vim to do java development, I have a compile/build script running in one xterm, and vim in another. Syntax hightlighting, multiple buffers, etc. I bounce around with Ctrl=] tags too, and Firefox is an Alt-F3 away.

      However compared with eclipse, which gets rid of annoying errors like not importing clases, cleans up unused imports, better tag matching, reverse method mapping (where is this method used etc), will highlight bad functions, will auto-complete some functions (catch (InteruptedException e) doesn't get as far as javac, it's not an IDE. Eclipse has a high learning curve, and a horrible text editor for those of use that use keyboard vi everywhere, leaves your code littered with :S. vim embedded into eclipse might be interesting, but the overhead of project management is a pain for small projects.

    12. Re:VI and Emacs? In this day and age? by dublindan · · Score: 1

      Actually, I use vim as an IDE. It does everything *insert IDE of choice here* can do. If not, you can write a plugin in a large range of languages to add the features you require. I can also run my full blown vim IDE in a terminal, which you GUI IDE weenies cannot do :-D
      Vim also has syntax highlighting support for a huge range of languages too - more than most editors and IDEs. Personally, I use vim to edit text files, bash scripts, C, C++, Java, Python and Factor source files and it integrates well into my toolkit.

      As an editor, vim provides powerful tools and shortcuts to manage text editing quickly and efficiently providing more conveniences (though they are hinderances until you learn them, of course) than most other editors I have tried. As an IDE, it provides me with everything I could want from an IDE: syntax highlighting, code completion, tabbing, code folding, multiple text buffers (actually, how many editors/IDE's do you know which support multiple paste buffers?), split windows, build tool integration, file browser, source control integration and much much more - and all of this can be run in a text terminal! (You can also run it in a GUI, but I'm not really a fan of it tbh. Also, theres versions of vim such as Cream which hide the modal-ness of vim by default, which makes it easier to learn and use) How is this not an IDE?

    13. Re:VI and Emacs? In this day and age? by eeyoredragon · · Score: 1

      I have a project just for little personal programs, and it includes a file that's completely overwritten constantly just for very simple "The documentation sucks, so I have to write a program to see what this really does" kinds of things. It's the first thing I create on a new environment, and it pretty much alleviates your problem.

    14. Re:VI and Emacs? In this day and age? by EzInKy · · Score: 1


      you should read the first point of this article [viemu.com]. You should read the rest too, probably, but that's the relevant part.

      I'm not the OP, but even after 10+ years of using Linux I still have not been able to force myself to learn either vi or emacs, and this extract from your linked article...


      Correct-conception #1: steep learning curve

      There is one thing which is a commonly held piece of knowledge, and which is true as well. It is shown on this page to the best effect. It's the fact that learning vi/vim is an activity that will take a long time (weeks to months), and that the first experience is not pleasant. I take it this is the main reason why vi/vim editing isn't, and will never be, a popular thing.

      ...is why. It simply should not take weeks or months to learn to use a friggin editor. For most of my editing tasks I use mcedit. It has a nice and very intuitive interface and can be used either as a standalone app or from within midnight commander.

      --
      Time is what keeps everything from happening all at once.
    15. Re:VI and Emacs? In this day and age? by g4b · · Score: 1

      for a small idea file for me nano, kate or notepad++/editplus depending on the platform is more than enough.

      that's the difference between IDE and editor.

      i am an eclipse user myself, but as with choosing the right OS for the job, choosing the right language for the job, I also choose the right editor for the job. eclipse well integrates into svn and handles multiple languages in one project very well. if it is clear, that i work on a project with many files, subversion/bzr/cvs and eclipse supports the language, i definitely use eclipse. code completion, good debugger integration and refactoring is quite useful sometimes.so i sure dont want to miss eclipse in greater python or java projects.

      using kate or kdevelop for custom languages however, since i find writing syntax highlighting templates for katepart very easy.

      so it depends on the job, really. he however asked for an IDE, not an editor.

      what is also a solution for me, is using a custom eclipse project for "stuff".

      downside of kate and eclipse is its typing speed on certain platforms. since sometimes the IDE tries to be smart, and Qt4 starts to be laggy, both show sometimes the symptom of showing you what you type some seconds later. that CAN be annoying, why sometimes fast fixes in big files can be done on the commandline. with vim or even nano/pico or cat/cc

    16. Re:VI and Emacs? In this day and age? by extrasolar · · Score: 1

      Just a few things about emacs that other responders haven't addressed:

      Emacs has a poor help system? Try C-h r sometime. GNU Emacs has one of the best manuals in the free software world. And emacs helps you to appreciate the info system for people who want to *quickly* page through documentation. You can search the entire info file at once, or quickly and effortlessly look up terms, commands, or key presses in the index. There's simply no manual system that beats info IMHO. (Man pages really don't compare for manuals over a given size, and still I see no indexing, no commands to skip chapters/sections of the manual, no way to search through an entire manual if it is divided into separate man pages.) Take the time to read the manual on the info system and if the documentation is available in that format, I think you'll find the time well invested.

      And as others have noted, emacs is hardly specialized, especially compared to an IDE. In fact, I have no idea where you came up with this, so I'm probably biting a troll. But one of the primary strengths of emacs is that it is infinitely malleable to serve whatever purpose you set for it.

    17. Re:VI and Emacs? In this day and age? by syousef · · Score: 1

      Emacs has a poor help system? Try C-h r sometime.

      Did you just read what you typed??? How the !@$% am i suppose to know that key combination when I'm first trying to get help on a new editor? Ever heard of a menu?

      Seriously, this wasn't a trolling insult against your favourite editor. No editor should require me to know things I can't quickly work out from it's own interface.

      --
      These posts express my own personal views, not those of my employer
  51. KDevelop 4 is coming out soon by jamesswift · · Score: 1
    http://www.kdevelop.org/

    3.5 isn't even too bad.

    --
    i wish i could stop
  52. DEATH TO PROJECTS by Chris+Snook · · Score: 4, Insightful

    I've used several different IDEs, with several different languages, for many different programming tasks, over the past decade. I have encountered exactly one instance where having a "project" be anything more than a collection of files I work on at the same time was actually a good thing. Every other time it has simply been an obstacle to bottom-up design, by forcing me to make a lot of decisions about the structure of my code before most of it had actually been written.

    The one time the project-oriented IDE was a good thing, I was working on a large app with more than a dozen people who never got to all meet at once, with a central authority dictating the general structure of things to make sure we didn't duplicate effort or step on each others' toes. There was AI involved, so having an integrated debugger to figure out why the AI was making particular choices was very useful. Kdevelop served us very well.

    Of course, large development teams are inefficient and prone to communication problems that cause delays and bugs, so they should be avoided whenever possible, just like top-down design. Most of the time, I'm either working on incremental modifications to mature code, where a glorified source browser is sufficient, or writing a small utility from scratch by myself, where I really just need a text editor and a command line. I generally use kscope for the former, and kate for the latter. They get out of the way and let me code.

    Sure, I still use a debugger, but the overwhelming majority of the time it's to analyze dumps from crashes I can't reproduce easily, so integrating it with the IDE offers no benefit. A debugger is no substitute for understanding the code, and I can count on one hand the number of times there have been enough control flow-relevant variables being modified at once to make that something I couldn't work out in my head or on a whiteboard.

    --
    There's no failure quite as dissatisfying as a complete and total solution to the wrong problem.
    1. Re:DEATH TO PROJECTS by Anonymous Coward · · Score: 0

      Honestly, it just sounds like you don't get the opportunity to work on very many interesting projects.

      I love the big, complicated ones that are hard enough that they require "top-down design". Which, by the way, really shouldn't be nearly as evil as you make it sound...

      One of the most important things in any large project should be the periodic refactoring that keeps it maintainable (otherwise the "incremental modifications to mature code" you mention will eventually make the control flow impossible to follow). A decent IDE should make it much easier to extract some complicated and messy code embedded inside another function/method/class out into a standalone function.

      And really, any "project-based" IDE with half a brain will let you add/remove/rename projects after they're created. That kind of refactoring should be part of your ongoing maintenance as well. You've got to keep improving the architecture of your tools, along with their implementation.

      And yes, you're absolutely right that "large development teams are inefficient and prone to communication problems that cause delays and bugs"... but in my experience as a professional software developer, those teams are the ones that get to work on all the cool problems, and I wouldn't want to be anywhere else. Sometimes, you just gotta suck it up. :)

    2. Re:DEATH TO PROJECTS by schmurry-mooseness · · Score: 1

      I am in the same boat as you. Also, much of my work is remote in various labs. A terminal with vim is my way. I couldn't use an IDE half the time even if I wanted to.

    3. Re:DEATH TO PROJECTS by Anonymous Coward · · Score: 0

      forcing me to make a lot of decisions about the structure of my code before most of it had actually been written.

      Writing code forces you to think about it before you write it. I feel sorry for whatever company you work for if you don't think before you write.

    4. Re:DEATH TO PROJECTS by Bugs42 · · Score: 1

      Every other time it has simply been an obstacle to bottom-up design, by forcing me to make a lot of decisions about the structure of my code before most of it had actually been written.

      Perish the thought! Surely this is some sort of horrible joke. THINKING before you code? I've never heard of such a preposterous notion! Do you have blueprints before you start building a house? NEVER! You grab your tools and start hammering away, trusting in nothing more than the almighty FSM to guide your hands in such a way as to have everything fit together when you're done! Why plan things out when you can just wing it and pray, right?

      --
      Programmer: an ingenious device that converts caffeine into code.
    5. Re:DEATH TO PROJECTS by Anonymous Coward · · Score: 0

      Well perhaps IDEs are not your cup of tea, but that doesn't make them scrap heaps. They offer a variety of useful tools for basic programmers and even a few for advanced programmers. Perhaps they are hinderful to higher level programmers, but I've never had any issues with them, just little quirks that some programmers such as myself find convienent. Either way, as Tim said, its just my $0.02.

    6. Re:DEATH TO PROJECTS by Anonymous Coward · · Score: 0

      I'm jealous.

      Most of the projects that I work are with 50+ developers.
      I've done a few with over 500 developers all writing real-time code. We used VI as our IDE and separate windows for debugging and module builds.

      The key to making these large teams work together is having a good overall design from the network, system, and application architectures. Then you break out the pieces to workable chunks and document the interfaces - quite tedious, but necessary. Every input and output to a functional area has explicit valid values or ranges. -0.5VDC thru +0.5VDC for example. Often the thread needs to be specified to ensure thread safe code too. Accessing the variable from the wrong thread could break data homogeneity rules and cause a vehicle crash. That would be bad and could cost over $1B.

      OTOH, doing a hobby project on my home server in TK/perl is trivial in comparison, but I'll draw a few state diagrams if anything complex could happen. I still use a `vi` window, a debugging window and a build window. Call me old school.

    7. Re:DEATH TO PROJECTS by Anonymous Coward · · Score: 0

      Can't log in from work for some reason...

      I'd actually like to add to this a bit, just hope it gets seen starting from 0. I agree with most of your points, there's another big one too. Migrating projects between IDE's, or sometimes even versions of IDE's, or just trying to get the code to compile at a later date. A lot of the time some vital information is in the project itself and it could take quite a bit of work to get it running again.

      That said though, I've found myself using kdevelop more and more, once i found a setup for it I like. More or less disable EVERYTHING, set it so that build just executes "make all" on the root, execute just executes "run.sh" in the ./bin directory of the project, and so on. Pretty much the project is just the list of files and the templates to use when creating new files, and the CVS connect information, makefile is done by hand.
      Gives you the benefits of an IDE (auto completion, code lookup, jump to definition, integrated debug, class tree, automatically putting my comment header on all new C/C++/h files and adding them to CVS, etc..) without having to deal with the nightmare that is projects, I could check it out of cvs to my laptop and work on it from the vi in the shell if i needed to, check it back in, sync when i open it in kdevelop, and I'm good to go :)

      There's probably an IDE closer to what I needed that wouldn't have taken so much configuration, but hey, it's setup now and I have to say it's quite nice having the best of both worlds.

  53. I like simple. by Anonymous Coward · · Score: 2, Interesting

    Personally I am happiest when not stuck in some program pretending to do everything, even if it would succeed admirably.

    So for me, it's screen with at least one nvi session and one shell for compiling -- but usually many more, and lots of open manpages for reference. Doesn't even matter much what shell, as long as it supports arrow-up-history and tab-completion. Of course nowadays I have to have a web browser around, sadly very little way around that, so it's X and that and lots of XTerms... many of which sport screen again for various purposes, like irc.

    The point? The magic isn't in the software, though it can help a bit. If you're used to the command line then at some point you might realise that speeding up your workflow is as simple as #!/bin/sh. Or any other language you might choose for the task; awk, sed, C, C++, perl, what-have-you.

  54. oOps by BattyMan · · Score: 1

    Forgot to mention that if you're using the monopoly "OS", the native version doesn't work. Cygwin's does. Right now I'm doing Perl/Tk development (on the PHB's XP system) with Cygwin & emacs. Works well. It also lowers my blood pressure considerably to have bash, grep, find, ls, and other real utilities on that otherwise abominable platform.

    --
    Exceeding the recommended torque is not recommended.
    1. Re:oOps by i.of.the.storm · · Score: 1

      Hmm? I run emacs fine on Windows, natively too. Everything works as expected, I can byte-compile and add new packages to emacs almost as easily as on a *nix, except I have to edit makefiles a little.

      --
      All your base are belong to Wii.
    2. Re:oOps by BattyMan · · Score: 1

      In fairness, it was three years ago when I tried to install the native emacs. The situation may have improved.

      --
      Exceeding the recommended torque is not recommended.
    3. Re:oOps by chthon · · Score: 3, Informative

      Emacs can be compiled without problems under Windows, but is then strictly Windows, with \ for paths and \r\n for line endings.

      You can also compile Emacs under Cygwin, but then it is strictly POSIX and needs a X server to run, otherwise it runs in -nw mode.

      Xemacs, however, can be compiled under Cygwin, but recognises that it is under Windows and runs all graphics natively, obviating the need for an X server. That is why I currently only use XEmacs on my job, it works POSIX with Cygwin, but runs natively under Windows.

    4. Re:oOps by maxume · · Score: 1

      Only working with \ is an odd choice, NT kernel versions of Windows don't care about / vs \, though I guess whatever program you are typing in might want \ for escaping things.

      --
      Nerd rage is the funniest rage.
    5. Re:oOps by chthon · · Score: 1

      Well, now you say it, that was wrong. It works with drive letters, but the paths are indeed all with forward slashes.

    6. Re:oOps by gwait · · Score: 1

      I use the precompiled gnu emacs release for windows (from gnu), along with the cygwin environment (mostly for VHDL or Verilog FPGA development) with no problem, no desire to compile emacs from scratch.
      It mostly seems to work out which type of text file I happen to be working on, hiding the dos vs unix line ending stuff automagically..
      I find it odd how many people are happy with nothing more than notepad with syntax highlighting. There are many great "power user programmer's editors" out there (emacs, ultraedit, perhaps vim?) that can increase your productivity over the mickey mouse editors found in most IDE's.

      What I do think is a great feature in MS's Visual Studio IDE is the inline highlighting and documentation lookup of all the windows library calls, although I wouldn't be surprised if there isn't an emacs lisp macro to do the same.

      --
      Bavarian Purity Law of Rice Krispie Squares: Rice Krispies, Marshmallows, Butter, Vanilla.
  55. Source Navigator anyone? by Anonymous Coward · · Score: 0

    Does anyone remember Source Navigator? It was actually an OK IDE, but seems to have died. Since then I have used Eclipse, but even though I frequently DO work on 10K+ lines of code, I find Eclipse often to be a pain.

    Emacs is simple and once learned can be very useful and powerful. Combined with standard unix tools you can get an amazing amount of stuff done without the big bloating program. The advantage is that these tools are available on most platforms (yes, even Windows) so you don't have to relearn the IDE when it disappears (like SNavigator did.)

  56. BVRDE anyone ?!? by ctrl-alt-canc · · Score: 1

    I develop plenty of number-crunching code on different *NIX hosts, but I login to the network form a Windows computer. I found that BVRDE offers a rather pleasant developing environment. I also looked at NetBeans, but BVRDE allows to access remote sources through (S)FTP, a feature that is mandatory here.

  57. IDES are annoying. bash-in-xterm + GVIM kicks butt by Anonymous Coward · · Score: 0

    YMMV but every time I load up an IDE I find myself saying "wow" and "cool" for about a day and then getting back to terminals and editors. It's a matter of power and convenience. I am writing a text program so why shouldn't my interface also be powerful and expressive (i.e. a language).

    Graphical-Vim is very powerful and lets me edit while testing and running ( a big part of what IDE's do) the difference is that the testing an running all happen in a real environment (not some tiny window in the bottom of an IDE) which I can set up and modify as I go along.

    I think that what I am saying is that IDEs try to take control of lots of things and I end up fighting with them to get what I want. So I decide in the the end that they can f** off and I go back to the command prompt.

  58. my 0.02 by drsparkly · · Score: 1

    * for .NET development on windows, Visual Studio Express / SQL Server Express / SQL Server Management Studio Express
    * dynamic typed languages, PHP/Perl/Javascript, Komodo Edit (Linux and Windows)
    * MySQL - MySQL GUI tools (Linux/Windows)
    * Lightweight Windows text editor with rudimentary highlighting - PSPad (HTML, Javascript, C#/ASP.NET)
    * recently been getting into Qt/Linux and Qt Creator I am finding good for that - has its quirks but it's newish

  59. Geany by Anonymous Coward · · Score: 0

    Geany.It's ported to windows too.
    If you're mostly writing console apps, you might like it.
    PROS:
    LIGHTWEIGHT, fast, small & simple (almost Notepad simple), syntax hilight for lot's of programming and scripting languages
    CONS:
    No GUI designer stuff I think

  60. Was I feeding a troll? by jonaskoelker · · Score: 1

    Hoping that I'm not about to start a flame war: why?

    I should add to myself (sorry for the self-reply): I hope I'm also not feeding the trolls. I mean, seriously, 10 klocs is too much? On second reflection, that has a mild troll odor to it. At least as far as I nose.

    But even if I am, I think I'm making valid points that not everybody knows about or would have though about.

    1. Re:Was I feeding a troll? by giminy · · Score: 1

      I should add to myself (sorry for the self-reply): I hope I'm also not feeding the trolls. I mean, seriously, 10 klocs is too much? On second reflection, that has a mild troll odor to it. At least as far as I nose.

      Yeah, you were probably feeding the troll. Allow me to entertain in the style of Nina Totenberg.

      Question: what editor do you think the emacs maintainers use?

      Answer: they eat their own dog food.

      Question: and how many lines of code is emacs?

      Answer: over one million lines (of lisp!)

      Question: is RMS insane?

      Answer: possibly, but emacs is still a nice editor (even if you don't use it and you hate it, you have to acknowledge that a lot of people do use it and like it).

      Question: what about the linux kernel?

      Answer: well, it's gargantuan...

      Question: okay, how big was it in 1995 [when linus was still doing a lot of work himself]

      Answer: still pretty large, at least hundreds of thousands of lines

      Question: what fancy IDEs existed back then?

      Answer: let's see, 1) vi + make 2) emacs + make ... 3) ... I can't think of a third that ran under linux

      --
      The Right Reverend K. Reid Wightman,
  61. I use..... by ZirconCode · · Score: 1

    Mostly Eclipse. Some Notepad++.

  62. PHP needs by mcrbids · · Score: 1

    ... my favorite free IDE, Dev C++, yesterday and noticed that it had not been updated since 2005!

    Me? I've been using Dev PHP for a long time, so long that I just now noticed it hasn't been updated since 2007!

    Likes? Fast, simple, doesn't-get-in-the-way, good syntax highlighting.

    Dislikes? Just one: Search is weak. Search is regex by default, which requires an extra step to search for a particular codeblock. Worse, it doesn't wrap by default, so I have to scroll to the top before I search for something near the top.

    It's a project that was developed for a while, dropped,picked up again, dropped, etc. so there are multiple "versions" of it floating around as of a year or two ago. I linked to one of them.

    --
    I have no problem with your religion until you decide it's reason to deprive others of the truth.
    1. Re:PHP needs by thorne51 · · Score: 1

      You might be interested to try out NetBeans 6.5 then. It has built-in support for PHP (at last) and its a very nice IDE to have when you decide to expand on your skills.

    2. Re:PHP needs by jalefkowit · · Score: 1

      For PHP work, Eclipse with the PHP Development Tools (PDT) package is quite nice. Though from what I hear Netbeans may be a bit ahead for PHP these days -- the latest version has complete PHP support built in.

  63. Emacs actually could qualify by Qbertino · · Score: 5, Insightful

    If anyone says Emacs or Vi they are insane and have never done 10k lines of code in a modern environment.

    While the handling of Vi or Emacs actually *is* breathtakingly bizar and unwieldy, what you're saying is not correct. If someone actually takes the time to learn to use Emacs and the extensions it offers for developement - which can take a few years - it can be the most powerfull and fast IDE out there. And it opens files upwards of 40 MB (that's Megabyte) in half a minute and then you can navigate around them with no delay at all. That league of performance is the reason I started using it. In terms of performance Emacs is the most powerfull IDE on the planet.

    Then again, I started using Emacs 3 years ago - after briefly considering the purchase of Macsperts new darling child TextMate, basically a modern Emacs rip - and I still can't bear it for longer than 10 minutes - mostly because it so totally doesn't comply with CUAS (Common User Access Standard). Yet then again, Emacs was created when CUAS didn't even exist, so that's no fault on behalf of Emacs.

    Bottom line:
    If you are willing to invest months (!) of time actively learning an IDE, the cli version of Emacs will be with you until the day you die, as it runs well on everything that uses electricity. Up from the most powerfull supercomputer using the most bizar unix variant right down to a 10-year old handheld PC.

    --
    We suffer more in our imagination than in reality. - Seneca
    1. Re:Emacs actually could qualify by nxtw · · Score: 1

      It takes Emacs 30 seconds to open a 40 MB file?!

      With an editor using memory mapped file access, any file should open instantly (as long as it fits in the address space).

      In Visual Studio 2008, I can open a 40 MB file in well under half a second - and it's loading the entire file into RAM!

    2. Re:Emacs actually could qualify by Anonymous Coward · · Score: 0

      That's the problem. Learning an IDE shouldn't take longer than learning the language you'll use within the program.

    3. Re:Emacs actually could qualify by heffrey · · Score: 1

      30s for a 40MB file! What a pile of crap! Or perhaps you were having a joke.....

    4. Re:Emacs actually could qualify by Anonymous Coward · · Score: 0

      come on guys

      vim and emacs are wonderful text editors, but they are crappy IDEs

      now it may be that vim plus some other stuff can work as your development environment for a given project, but you are delusional (or just a boring fanboy) if you think vim/emacs compete with eclipse/netbeans as being products in the same category.

      -AC

    5. Re:Emacs actually could qualify by Anonymous Coward · · Score: 0

      well said

    6. Re:Emacs actually could qualify by Qzukk · · Score: 1

      Depends on how much preprocessing the IDE has to do. It certainly sounds like he had lazy syntax hilighting turned off (so it would hilight the entire file before displaying it, even the parts that weren't on the screen). Could have also been running the file through ctags and indent and a few other programs before it even opened the file.

      --
      If I have been able to see further than others, it is because I bought a pair of binoculars.
    7. Re:Emacs actually could qualify by PeterBrett · · Score: 1

      It takes Emacs 30 seconds to open a 40 MB file?!

      Subtle troll is subtle. Emacs opens 40 MB files instantly, at least on Linux.

    8. Re:Emacs actually could qualify by glwtta · · Score: 1

      And it opens files upwards of 40 MB (that's Megabyte)

      Holy shit! Well, I certainly defer to the opinion of anyone working with 40MB source files - now that is programming.

      Text editors make crappy IDEs, and IDEs make crappy text editors; there's just no need to have the same app do both, the overlap in functionality is not that great. Personally I prefer UltraEdit circa version 11.0, but whatever your preference, you need some dedicated text editor alongside your IDE.

      --
      sic transit gloria mundi
    9. Re:Emacs actually could qualify by iztaru · · Score: 1

      While the handling of Vi or Emacs actually *is* breathtakingly bizar and unwieldy, what you're saying is not correct. If someone actually takes the time to learn to use Emacs and the extensions it offers for developement - which can take a few years - it can be the most powerfull and fast IDE out there

      Well, you hit it! No reasonable developer (not to mention company) want's to spend a few years mastering a tool. In the case of coding for fun, I would like to start working on what I am interested in, not spending ages trying to figure out the editor.

      In the case of companies, they just want to hire a developer and turn him into a productive contributor as soon as possible (usually a month or less)

      I once work with one of them (don't remember if it was Vi or Emacs) and I couldn't figure out how to get out of it or how to open the help, so I had to restart the machine :-(

    10. Re:Emacs actually could qualify by hazydave · · Score: 2

      If anyone says Emacs or Vi they are insane and have never done 10k lines of code in a modern environment.

      Anyone who thinks 10K lines is a big project hasn't the experience to judge Emacs vs. IDE. I've been using Emacs since 1979... started out on CMU's version of RMS/MIT's TECO Emacs. The thing about Emacs is that it's lead in virtually every kind of integration imaginable. Before any good thing shows up in anyone IDE, it's been proven useful in Emacs for several years already. And none of the drek survives... including the crazy notion that I could need 2GB of RAM just to run an editor and compiler.

      Hell, in '88 we were running Emacs and compilers in 1MB of RAM... and we liked it! A year later, I was editing in Emacs on SVr4.1 in 4MB of RAM... and liked that one too.

      As for large projects, back in the 90s, I was working on a several-hundred-thousand-line compiler+database project (a three year thing, all my code) that started out in an IDE (ok, they have improved some since those days), but became workable in the IDE. Fortunately, there was an Emacs available (under OS/2 at the time). And that use of Emacs is precisely why I retain fair amnounts of my sanity to this day (and the IDE issues might help explain why I went back to primarily hardware design in my next company).

      Then again, I started using Emacs 3 years ago - after briefly considering the purchase of Macsperts new darling child TextMate, basically a modern Emacs rip - and I still can't bear it for longer than 10 minutes - mostly because it so totally doesn't comply with CUAS (Common User Access Standard). Yet then again, Emacs was created when CUAS didn't even exist, so that's no fault on behalf of Emacs.

      Well, there you go... you certainly can fault those weenies at IBM for ignoring the established standard (CUAS came at least 10 years after Emacs) when they set forth inflicting their inferior ideas on the world of computing as we know it. But what do you expect from the brainaics that brought us the Microchannel Bus, the "fixed" drive, the freakishly large and pointless CAPS-LOCK key (the DEC keyboard layout was far superior) and CPU buses with backwards bit order and negative addresses (A2, A1, A0, A-1, ...), etc.

      --
      -Dave Haynie
    11. Re:Emacs actually could qualify by jeremyp · · Score: 1

      So I could spend years learning Emacs and its extensions, or I could spend a week or two learning a real IDE and then have a head start of years (minus a week or two) over the Emacs user for writing the actual code.

      Hmmmm let me see.... ...I'll go with the real IDE.

      --
      All I want is a secure system where it's easy to do anything I want. Is that too much to ask ~~ Randall Munroe
    12. Re:Emacs actually could qualify by T.E.D. · · Score: 1

      I don't know what build he was using, but it isn't mine. I have the latest official gnu NT emacs build. I just tried dragging a 11MB file into it (closest I could find easily), and after the "it's big, are you sure?" dialog was clicked away, it loaded the file instantly.

    13. Re:Emacs actually could qualify by glasserc · · Score: 2, Insightful

      Have you heard about CUA mode?

      Ethan

  64. Emacs couldn't handle it, they were too long? by BattyMan · · Score: 1

    On what planet?

    I've yet to choke emacs, on gigabyte files. (data & logs.... NOT code!)
    To be sure, it can take a while to load a real monster, but if you're patient, have enough swap space, and take the time to reminisce about the '386 days, it _will_ work.

    --
    Exceeding the recommended torque is not recommended.
    1. Re:Emacs couldn't handle it, they were too long? by phantomfive · · Score: 1

      In Windows. Maybe you were using Linux? Or maybe our versions were compiled differently?

      --
      Qxe4
  65. Codeblocks by Anonymous Coward · · Score: 1, Informative

    I have used Codeblocks for the last 3 years now. It was pretty good when I first started using it and their latest update to version 8.02 was just icing on the cake. Plus it uses the GNU compiler for windows which make the code pretty cross platform if you aren't using OS specific calls.

    I've written console apps, graphical apps, compute games, to libraries that are being used at my university with this thing. Its basically everything nice about Visual Studio without all the bloat.

  66. Code::Blocks by evil+mr.+paws · · Score: 1

    A while back I toyed around with Eclipse (with the C++ add-ons); I eventually gave up on it since its behaviour was really erratic while attempting to debug programs, making it nearly impossible to do so. I'm sure I was doing something wrong, but nonetheless sometimes a configuration would successfully manage to get a debug session going, while at other times the same cfg would balk. I didn't care too much for the interface to the debugger as well. Dev-C++/Bloodshed is still good, even if it's a bit dated; my current favourite is Code::Blocks. It has a few bugs in it which need ironing out, but still it's a great IDE (cross-platform too). Note to the 1st /.er: I had a few problems with Code::Blocks crashing when I first installed it too. It would freeze on startup; I investigated with Process Explorer and found that I was accumulating instances of the MinGW compiler which would linger after the last failed start, and that if there were such the program would freeze again. I deleted them all and some of the freezes cleared up, but not all. Finally I moved the C::B init file into the same directory, dumped the registry entries into a file and then wiped them, re-installed them only for the current user (not sure if this was the cause)-- I haven't had any problems since. (?)

    1. Re:Code::Blocks by CyrusOmega · · Score: 1

      I use Code::Blocks quit a bit on Linux and Windows and love it. Just don't get the "stable" package and opt for compiling it from svn or grabbing a nightly build from the forum since the official package builds are years behind the trunk (or was last time I checked).

  67. Geany! by R3dL3d · · Score: 4, Interesting

    Geany http://www.geany.org/ is small, fast, and has the basic features I need. It has syntax highlighting for everything from Assembly to Latex, Java, C, C++, HTML, you name it. And (very important) it stays the hell out of my face and just lets me do the job. I love it.

    1. Re:Geany! by Anonymous Coward · · Score: 0

      The crap thing about anything GTK is the file requestor interface sucks compared to the file requestor in KDE.

    2. Re:Geany! by VoltageX · · Score: 1

      Looks like it's Scintilla based, which means it will be very solid If for some reason you can't get this working on Windows, there's a Scintilla editor called Scite, also Notepad++ uses it.

      --
      "Anonymous could not immediately be reached for further comment." - International Business Times
  68. Screen, Vim in a VM by wilsoniya · · Score: 1

    At the moment I'm developing a Python based web app. I started using PyDev/Eclipse but found the environment more hindrance than aid.

    I then got the idea to package up my development environment into a Virtualbox VM. I modeled the VM as closely as possible to the production environment. I run a screen session with several Vim instances (using windows and tabs). I then ssh to the VM. I find this convenient for a number of reasons:

    • my development env is as close as possible to the production env
    • I don't need any unnecessary daemons running on my physical OS (e.g. Apache, MySQL, etc)
    • the VM can be versioned (via snapshots)
    • I can suspend the VM and restore it to the exact state it was previously in (same screen/vim sessions, same daemon states)
    • the VM is only has 256MB RAM allocated to it; I can start VirtualBox and restore my VM in less time than it takes to open Eclipse

    In my experience, having your development environment behave exactly the same *every* time you use it is not to be overlooked.

    --
    I can't remember the last time I forgot anything.
  69. Qt Creator by Capt.+Beyond · · Score: 2, Insightful

    I use Qt Creator, xemacs and vim. On all platforms.

    --
    -- "Perceptions create reality. By changing your perceptions you change your reality."
    1. Re:Qt Creator by JoeMerchant · · Score: 1

      I use Qt Creator, xemacs and vim. On all platforms.

      And there's the beauty, all are available on all platforms. I carried a MacBookPro for a couple of years and I really appreciate being able to learn one tool that works there, on my 64bit Linux desktop at home, my Vista box at work, and anywhere else I want to sit down and take 10 minutes to download and install it.

      If they would integrate svn into the Creator packaging, I could go from zero to running my compiled code in:

      1. download
      2. install
      3. checkout
      4. build and run

      four steps. On any (major) platform. If that's not damn cool to you, you weren't a geek in 1999.

  70. Comment removed by account_deleted · · Score: 1

    Comment removed based on user account deletion

  71. emacs? specialized? by BattyMan · · Score: 1

    Oh, stop, please. I can't take it.

    --
    Exceeding the recommended torque is not recommended.
  72. three of them by djurban · · Score: 1

    - MS Visual Studio, really, don't look for an alternative on windows if you don't have to, it is the best IDE available.

    - Qt Creator for Qt on linux/Windows as Qt is missing msvc integration from the free version, waiting for kdevelop4 to get a little more stable

    - netbeans + c++ plugin for interplatform projects that cannot be done with qt.

  73. Code::Blocks by apharmdq · · Score: 3, Informative

    I used DevC++ for quite some time until I found out that it was out of date as well. Since then I've used Code::Blocks, and I find it to be quite an improvement. Since it's cross platform, working on different operating systems is pretty easy too.

    KDevelop is my alternative choice. For all intents and purposes, KDevelop is my favorite IDE, but since it's only on Linux at the moment, Code::Blocks is my best choice for now. (Still, KDevelop is quite powerful, and I'm eagerly awaiting the cross-platform release.)

    Eclipse is also a great choice, though I haven't used it nearly as much. I feel it's a little more focused on Java development, but many /.ers swear by it, so it's probably worth a try.

    And on a final note, I've been using Vim a lot more often lately, and with the IDE plugins detailed in the Ars Technica article, I may make that my IDE of choice in the near future. (For others, there's Emacs. Both are great, take your pick.)

  74. Not an IDE but VI by Anonymous Coward · · Score: 0

    I'm stuck with GVIM + csope + ctags + a few other plugins... Can't get used with anything else. This combination works just fine.

  75. Re:KDevelop by macson_g · · Score: 2, Informative

    I find KDevelop to be excellent IDE for C/C++ development. IT has few rough edges, but tons of features makes it simply the best choice. Integrated debugger, valgrind and cachegrind support, integrated documentation viewer, doxygen generator, ctags, version control etc.

    Most professional Linux developer I know are using KDevelop. Others are using Vim and Emacs. I have Emacs guy here who - when exposed to some nasty KDevelop's feature - always claims that "Emacs supports it too, I only have to find and install proper extension". He usually fails or forgets to do so.

  76. None. by coaxial · · Score: 2, Insightful

    Seriously. Why bother? IDEs are so hard to simply so hard to setup. Whenever I try to use one, I always end up fighting with trying to add nonstandard libraries, or hooking it into the code repository. It's horrible. Seriously, a three line makefile is all you need. It is so much easier just being able to say, "You! Compile this, with this option." It's 50 thousand clicks and it still doesn't work.

    God, IDEs suck.

    1. Re:None. by Anonymous Coward · · Score: 0

      So hard to setup??? Maybe you should find a different line of work.

    2. Re:None. by JoeMerchant · · Score: 1

      Seriously. Why bother? IDEs are so hard to simply so hard to setup. Whenever I try to use one, I always end up fighting with trying to add nonstandard libraries, or hooking it into the code repository. It's horrible. Seriously, a three line makefile is all you need. It is so much easier just being able to say, "You! Compile this, with this option." It's 50 thousand clicks and it still doesn't work.

      God, IDEs suck.

      I agree, mostly, except..

      1. clicking on a compiler error or warning to jump to the code in the editor
      2. Find text in project... about 10x more efficient than CL grep
      3. debugger, which I only seem to need to pull out when fixing other people's problems, but that's part of the job too...
      4. Qt Creator's help that pulls up the Qt documentation on the variable or function I'm pointing to is pretty slick, I use it about once a day - which is twice as much as I would look up the docs without the IDE feature, and reading the most recent documentation can sometimes be a very valuable thing to do.
  77. This will probably cost me some karma... by sardaukar_siet · · Score: 3, Informative

    ... but Visual Studio Express is actually quite good. I'm a Linux guy, and I use Komodo Edit (I do mostly "dynamic language" development now) and before that I used Eclipse for C/C++ and Java, and although Eclipse gets a lot of things right, it can't beat Visual Studio's breadth of features and simplified work-flow. Of all the things MS has done over the years, VS is hands down (IMHO) the best. They don't give it away with all the features so as to not kill the 3rd party market, but it's clear nothing out there in Win[32/64] land comes close (especially for C++ and C#).

    1. Re:This will probably cost me some karma... by Anonymous Coward · · Score: 0

      What gripes me about Visual Studio isn't the hand holding, the proprietary "project" files, or the achingly slow load times. It's the MS bafflegab that gets in the way of understanding what's needed to accomplish something. There are no "bugs", instead there are "issues". Similar for "Solution Explorer", searching for items in Help, on and on and on...

  78. Unix by uassholes · · Score: 1

    It was necessary to develop monolithic graphical development "environment" programs for windows because it lacks even the basics for developement. Thus, windows "IDE"s are an environment within an environment. Unix was designed by programmers, for programmers. Unix IS and IDE.

    1. Re:Unix by mario_grgic · · Score: 1

      Yes, but it seems most people here don't get that.

      --
      As the island of our knowledge grows, so does the shore of our ignorance.
    2. Re:Unix by cptnapalm · · Score: 1

      "Unix IS an IDE."

      I remember reading this same comment here on slashdot a few years ago. It was like finally seeing the forest.

  79. Eclipse CDT by Etylowy · · Score: 1

    The first thing that comes to my mind is Eclipse CDT: http://www.eclipse.org/cdt/
      It has been around for quite a while, it's mature, frequently updateted, build on top of Eclipse.. definitely worth a try, unless you want to work on a pc with little memory - it's java, so it will need lots of it.

  80. Quite by Viol8 · · Score: 0, Troll

    On Windows you don't really get much choice about using an IDE but I'm suspicious of unix coders who use them. If they need to be hand held to that extent while developing perhaps their skills arn't quite up to the job. Vi, gdb/dbx and strace should be all any unix/linux coder needs.

    No I'm not trolling, those are just my old fashioned get-orf-my-lawn views. YMMV.

    1. Re:Quite by Nutria · · Score: 4, Insightful

      Vi, gdb/dbx and strace should be all any unix/linux coder needs.

      Which means that you don't use vim, make, a sccs, a profiler, ctags, or one of a dozen other tools.

      --
      "I don't know, therefore Aliens" Wafflebox1
    2. Re:Quite by ThePhilips · · Score: 2, Insightful

      Frankly, I would put /bin/bash as first on the list.

      My toolchain (ranked by degree of my dependency on the tool) is: bash, vim, exuberant ctags, GNU make, GNU diff, GNU grep, GNU find, GCC, man, git, perl, gdb, objdump.

      The chain covers about 95% of projects I do. (To GNU moniker: I'm no GNU nazi, but just to highlight the fact that - flame me all you want - I find the BSD variants of the tools mostly useless in everyday use.)

      VIM is powerful indeed. But one should never forget that sizable chunk of its utilities depend on good shell and system file/text tools. Otherwise you probably want to pick Emacs instead.

      P.S. For Qt/KDE development one also has to include qmake and FireFox (on-line documentation browser).

      --
      All hope abandon ye who enter here.
    3. Re:Quite by malcomreynolds · · Score: 4, Funny

      # cat > program.c
      # !cc
      What else do you need?

    4. Re:Quite by dov_0 · · Score: 1

      Definitely VIM or with extensions, gedit.

      --
      sudo mount --milk --sugar /cup/tea /mouth /etc/init.d/relax start
    5. Re:Quite by dimeglio · · Score: 1

      Why two lines when one will do
      C:\>copy con: quake.exe

      Got all those ATL-keypad codes memorized?

      --
      Views expressed do not necessarily reflect those of the author.
    6. Re:Quite by Eivind+Eklund · · Score: 1

      Frankly, I would put /bin/bash as first on the list.

      My toolchain (ranked by degree of my dependency on the tool) is: bash, vim, exuberant ctags, GNU make, GNU diff, GNU grep, GNU find, GCC, man, git, perl, gdb, objdump.

      The chain covers about 95% of projects I do. (To GNU moniker: I'm no GNU nazi, but just to highlight the fact that - flame me all you want - I find the BSD variants of the tools mostly useless in everyday use.)

      Curious - I suspect this must have more to do with background than I thought. I find GNU make a total pain, even though I've worked 5 years on maintaining projects with a GNU build system (and been the person that did the build system maintenance); and I find BSD make (as in FreeBSD/NetBSD/OpenBSD) nice, with similar amounts of experience on that. I thought people preferring GNU make did so due purely due to availability or having all their experience with that - but if I read you right, you say you actually have deep experience with both and still prefer the GNU variant?

      For diff, GNU is the only game in town; it used to be for grep, too; I'm not sure of current status.

      Eivind.

      --
      Doubting the existence of evolution is like doubting the existence of China: It just shows that you're uninformed.
    7. Re:Quite by ThePhilips · · Score: 5, Informative

      I thought people preferring GNU make did so due purely due to availability or having all their experience with that - but if I read you right, you say you actually have deep experience with both and still prefer the GNU variant?

      I used BSD make ~10 years ago and only very shortly. So I can't really opine on it.

      GNU make is often pain, but with careful planning it's getting the job done. But from my experience I would admit that GNU make has enormous capacity to confuse and freak out people. Lazy evaluation isn't for everybody. I probably should be considered GNU make profi, as I have read through its documentation numerous times already. That further precludes me from commenting on BSD make.

      I personally prefer (and use for all my pet projects) GNU cons. It's simple and perl based. (N.B. There is also SCons which is Python based. At times slower than cons, but has more features and more portable.) Cons is pretty much only known to me solution to retain sanity on large projects: built-in dep checker, built-in installation support, proper dependency handling for static libraries, built-in object caching, support for commands having multiple products, etc. But the main goal of cons (and what I love it for most) is to guarantee consistent builds: unlike make(s), cons uses MD5 to check whether the source have changed. (Though can be reconfigured to use timestamps). Takes time to get used to, but is really worth it.

      --
      All hope abandon ye who enter here.
    8. Re:Quite by Jane_Dozey · · Score: 5, Insightful

      Sounds like you've never found an IDE that suits you. I've tried using the vim + gdb + strace type of development and gotten along just fine, but when you find a decent IDE with a good debugger, stack trace, good search facility, debug probe and a ton of other helpful tools it's hard to go back to messing around with lots of separate ones. I think it's important to be able to use the separate utilities to get a project done, and understand what you're doing with them, but why make life more difficult if you can get something that's integrated and does everything you need in one place?

      Try to stop being so suspicious of people who like to work differently to you. It's likely they know how to use the tools you use but prefer an integrated environment to get their work done. Not everyone using an IDE is using it because they want their hands held. Those that do won't be using their IDE properly anyway.

      --
      Silly rabbit
    9. Re:Quite by orzetto · · Score: 1

      For Qt/KDE development [...] FireFox (on-line documentation browser).

      Use Qt assistant instead. The class index function is much faster than navigating through the links with the browser.

      --
      Victims of 9/11: <3000. Traffic in the US: >30,000/y
    10. Re:Quite by Antique+Geekmeister · · Score: 2, Interesting

      I like and use muck of your toolchain. However, I like Emacs for helping keep my code layout legible, its support of displaying closing parentheses, and its support for running shell commands in one window and viewing the code in the other. I also find the Emacs shell helpful for recording all the input and output of a test sequence, rather than having it scroll entirely off the normal text display, and occasionally I find handy that it displays passwords as I type them so I can remember what the heck I did at the login ptompts of a test setup.

      gcc is my friend. It actually works, follows standards, and can support writing portable code in ways that most commercial compilers have never even thought about trying.

      autoconf is handy, but has proven problematic for compatibility reasons as different OS's update different components of that toolchain at different times.

      And, oh dear, yes, git. I've worked extensively with many open source and some closed source source control systems, and the darned thing Just Works(tm). Being able to branch and record and merge changes from your branches, locally, and then merge them to the primary upstream repository gracefully, and actually caring more than a fig about security, is what Subversion _should_ have done. I'm delighted to have recently added it to my toolkit.

    11. Re:Quite by Baki · · Score: 1

      Even for a 1 million lines of code large scale C++ project? With a complex and deep class hierarchy?

      Well, probably one should use C++ for such products nowadays anyway.

    12. Re:Quite by FictionPimp · · Score: 4, Interesting

      I was a vim guy for a long time. I used it for everything from scripting, to full on applications, and even website development.

      Then I bought my mac and discovered XCode. It blew my mind. If I ever go back to linux I will be finding myself a good IDE.

      Speaking of which XCode + Interface Builder + applescript makes some of the most powerful graphical applications that any idiot could write. It's really quite amazing how easy stupid it can be. Of course real apps on a mac require ruby, python, or Obj-C.

    13. Re:Quite by mario_grgic · · Score: 1

      Yes, indeed. Personally I would not hire a UNIX developer if they didn't work (or know or prefer to) this way. Specialized IDE is of course always an option, esp. if you are developing in say Java, but I would seriously question someone's ability if they eschewed the shell tool chain.

      Now, a lot of people are working like that on Windows too, using either cygwin or MKS Toolkit.

      --
      As the island of our knowledge grows, so does the shore of our ignorance.
    14. Re:Quite by Anonymous Coward · · Score: 0

      Vi, gdb/dbx and strace should be all any unix/linux coder needs.

      Wouldn't uh, a compiler help too?

      No I'm not trolling. Just being a smartass.

    15. Re:Quite by Anonymous Coward · · Score: 0

      Even for a 1 million lines of code large scale C++ project? With a complex and deep class hierarchy?

      Well, probably one should use C++ for such products nowadays anyway

      No. Handcoded assembly languange. keyed-in via front-panel switches. The way God intended.

    16. Re:Quite by rrohbeck · · Score: 1

      Amen Amen Amen.
      Add a file server with a really fast disk subsystem, a fast multicore build system, and a couple of separate targets.
      Although I have to admit that I sometimes relapse to TextPad on Windows for editing.

    17. Re:Quite by PeeShootr · · Score: 2, Informative

      Yes! And when you build a house, you should only use hand tools!! A real car has no electronics either!!! Give me a break. You should use the right tools for the job. If someone wants to use an IDE becuase it has code completion, built in docs, etc. So be it!!

    18. Re:Quite by vikstar · · Score: 2, Insightful

      Do you also use a second terminal for typing in the "make" command? What about other terminals for viewing documentation or file structure? Vim is only a small part of the entire interactive development environment that you actually use. I code mostly in Java and use Netbeans. It contains not only the middle bit for actually writing the code, but I also get windows for debugging and viewing the directory structure. Although this could mostly be achieved by a few terminal windows and Vim, I prefer to use Netbeans because I get nice context boxes showing me the structure of a particular method/function with a little documentation on it.

      --
      The question of whether a computer can think is no more interesting than the question of whether a submarine can swim.
    19. Re:Quite by ThePhilips · · Score: 2, Interesting

      This is plain discrimination.

      Few people can - and want - to go into details of how tool-chain really works. I too prefer to view some things as black box with few buttons. By virtue of being system developer, I often have too look into the details of how tool chain really works. And I like to dissect it til understand it completely. But I am rather an exception than a norm.

      I know many good developer who know about e.g. make only how to invoke it - "make all". Not more. Rest they do in e.g. Emacs. For Windows (or GUI development in general) it is very hard (if possible at all) to keep a track of all the details tool-chain does for you. And many people prefer to ignore the details - to concentrate on job at hand instead.

      [ After all, the concentration is a limited resource: more things people have to keep in their heads constantly, less concentration they can direct to any one of them. ]

      The holywar "Emacs v. vi" from its inception revolved around precisely the nature of developer. Some developers like to know the details. Some developers prefer to ignore them and just press a button to achieve desired result. On side of "vi", one has to deal with more information. On side of "Emacs" one has to accept that some workflows would be impossible, since there might be no ready button for it. Side of "vi" is flexibility. Side of "Emacs" is conservatism. Different people - different views of a system - different approach to development. And for a good team one needs a healthy mix of both, because looking at system from two different view points allows the team to cover wider range of solutions.

      --
      All hope abandon ye who enter here.
    20. Re:Quite by delire · · Score: 5, Informative

      Sounds like you've never found an IDE that suits you. I've tried using the vim + gdb + strace type of development and gotten along just fine, but when you find a decent IDE with a good debugger, stack trace, good search facility, debug probe and a ton of other helpful tools it's hard to go back to messing around with lots of separate ones.

      Vim with Exuberant CTags, GNU tools and a little self-education comprises a fully featured IDE.

      The reason so many use and keep using Vim as an IDE, even for large projects is that they can roll together the toolchain - including debugger, profiler, code browser - and builders that suit them, in the way that suit them. Much of the time the people that complain that Vim cannot function as a full featured IDE seem unaware of Vim's shell interface (:!<program> <args> && <program2> <args> [..]) or its 'plugin' architecture, let alone tabs, split modes, keyword completion, folding or numerous other features typical of other IDEs.

      A single terminal hosting Vim is enough to comfortably develop large projects in almost any popular language, covering coding, compiling, debugging and execution. Having worked a lot with the awfully bloated and manifold XCode, the sprawling and mysterious Visual Studio and a little with the rather nice Code::Blocks it's clear that I have no reason to consider changing IDE, for the time being.

    21. Re:Quite by mario_grgic · · Score: 1

      UNIX world is slightly different. Advanced UNIX users live in the shell. They navigate their file system there, they manage their files there, they search for things, they edit their files there, and some even choose to browse internet there.

      This already involves pretty much all a developer does too (except the knowledge of programming and writing actual code).

      A developer might know in detail a few more commands and their more esoteric options, and of course be more proficient in writing a regular expression to find that source file that contains some line of code. But advanced UNIX users do that too anyway. And of course developer will know the language they develop in and libraries unlike plain user.

      So demanding that someone knows UNIX and bash, is not an impossible requirement if you develop on UNIX. That is, we assume if you develop on UNIX that you know how to use UNIX.

      It would be the same as saying that a Windows developer has to know how to use Windows.

      As far as magic buttons go, there are no magic buttons. That magic button does something to automate in less general way something you could do yourself easily in more general way. And if you have 3000 UNIX command line utilities available to you that do simple specialized tasks really well, it's not hard to combine them to do pretty much anything.

      UNIX users (let alone developers) are creative and know how to do this already, and will script away complex repetitive tasks.

      Building your source code is one of those tasks, and make is used to script the build process, etc.

      So, I don't really understand the objection.

      --
      As the island of our knowledge grows, so does the shore of our ignorance.
    22. Re:Quite by PopeRatzo · · Score: 4, Funny

      Vi, gdb/dbx and strace should be all any unix/linux coder needs.

      You guys are such weenies.

      Did you read the author's question? He's doing this for his own personal interest. He doesn't want to have to kill and dress a buffalo with his bear hands just to eat a hotdog.

      --
      You are welcome on my lawn.
    23. Re:Quite by mdarksbane · · Score: 1

      If you still consider Code::Blocks to be "rather nice" you haven't worked with it long enough :) But that is my general opinion on most IDE's - the longer you've used a given one the more you hate it.

    24. Re:Quite by Anonymous Coward · · Score: 0

      I'm not even old-fashioned; I'm a young whipper-snapper, and I wholeheartedly agree with you. I spent months (yeah) learning to use gdb/vim/gcc/make/sed/awk/etc, and it was well worth the effort. I can understand why someone might like a different paradigm than vim (like emacs), but in the end you should choose a powerful tool and spend the time learning to use it.

      Oh, and for what it's worth, cygwin + mrxvt does a nice job of putting the Linux environment in Windows.

    25. Re:Quite by ping_me · · Score: 1

      um edlin works for me!

      --


      I'm against being for anything.
    26. Re:Quite by pauljlucas · · Score: 1

      ... GNU make['s] ... [l]azy evaluation isn't for everybody.

      That's why GNU make has :=.

      --
      If you reply, do so only to what I explicitly wrote. If I didn't write it, don't assume or infer it.
    27. Re:Quite by Anonymous Coward · · Score: 0

      Not everyone using an IDE is using it because they want their hands held.

      I highly agree. As a Java programmer I've found that after you learn how the java build process works in the command line you need the speed a good IDE gives you when it comes to writing code. Additionally if you just jump straight in to an IDE you will not understand what is happening half the time when the IDE has a build issue. So cutting your teeth on the command line first is a must.

      The desire of an IDE for me is not the hand holding but the code coloring, code formatting, quick jumping to method code, and catching when I have spelling errors. I don't NEED any of these things to write code but it makes things much faster for me.

    28. Re:Quite by 3p1ph4ny · · Score: 1

      I'm 22, so a fairly young *nix user, and I do all of my coding in Vim. However, I do most of my debugging in a visual debugger. How anyone could do anything else, I have no idea. Using a CLI debugger is insanity. For example, when I 'step', I can see every value that changed, without having to query every variable again. It may be easy for small programs, but for large programs with lots of objects it makes things a lot easier.

    29. Re:Quite by Alinabi · · Score: 1

      No, he is not being a smart ass. I tried Eclipse, KDevelop and XCode (oh, the horror) just to find that productivity was halved compared to vim+cscope. So I am back good old vim now.

      --
      "You can't allow somebody to commit the crime before you detain them." [Condoleezza Rice]
    30. Re:Quite by tenco · · Score: 4, Insightful

      I coded both with Vim and IDEs like Eclipse or KDevelop, but I never found the GNU equivalents for graphical UML modelling and class/objects trees. Or easy ways to integrate gdb with vim like so many IDEs integrate their debugger. When working with gdb I always have to search the right line in the backtrace and then jump to the line in the source code manually. That's a typical repetetive task that gets strenous after a while. Or when editing LaTeX: IDEs like Kile have a list for inserting special symbols for math mode; with vim I always start to search my little LaTeX book or the web because I can't (and won't) remember all special symbols that there are.

    31. Re:Quite by Viol8 · · Score: 1

      "Even for a 1 million lines of code large scale C++ project? With a complex and deep class hierarchy?"

      Yes, why? You not heard of grep?

    32. Re:Quite by marcosdumay · · Score: 1

      "VIM is powerful indeed. But one should never forget that sizable chunk of its utilities depend on good shell and system file/text tools. Otherwise you probably want to pick Emacs instead. "

      As a heavy emacs user, I'd disagree on your assumption that emacs isn't dependent on the shell. Of course, theoreticaly, it is, but why would you reimplement make, grep, find, etc in lisp if they are already there? Emacs can do near everything, even leting bash do the work.

    33. Re:Quite by marcosdumay · · Score: 1

      Gdb is even usable inside emacs... I mean, you can scroll, and read other files... Just don't forget to kill it before you save!

    34. Re:Quite by ThePhilips · · Score: 1

      So demanding that someone knows UNIX and bash, is not an impossible requirement if you develop on UNIX. That is, we assume if you develop on UNIX that you know how to use UNIX.

      So, I don't really understand the objection.

      Objection withdrawn. This is common sense.

      I generally am not that demanding and rarely have the choice of people with whom I work. I try to put everyone into position where they can do their best. Even in UNIX programming, there are lots of task which do not involve shell. Though, yes, being able to learn scripting is a great advantage.

      As I put it: if people are not able to create their own working environment, then I simply write one for them.

      Though, frankly, people who have decade(s) of UNIX programming experience struggling to write working 5-line shell script is still freaking me out. And I meet a lot of such folks - especially coming from commercial UNIX variants.

      P.S. BTW, note how that correlate with old UNIX truth: real programmers do not write programs, they write programs which write programs for them.

      --
      All hope abandon ye who enter here.
    35. Re:Quite by ThePhilips · · Score: 1

      Yes. But try once to explain the difference to normal folks the declarative nature of Makefiles.

      We had a case when some developers proclaimed a war on "=" and replaced it with ":=" in all their Makefiles. Since, you know, everybody understands better how ":=" works. You can imagine the disaster which followed during preparations of next release. Worst part was that I had to explain the difference between "=" and ":=" to the brainless developer who understand very little of how make works at all.

      --
      All hope abandon ye who enter here.
    36. Re:Quite by Abcd1234 · · Score: 2, Insightful

      Then I bought my mac and discovered XCode. It blew my mind. If I ever go back to linux I will be finding myself a good IDE.

      How so? I mean, my major IDE experience comes with VS2k5, though VS is generally considered one of the better IDEs out there, and while I've found it useful, about the only things I find truly excellent is it's code completion features, and the ability to easily jump to a symbol definition with F12... but I'd hardly call those a "blew my mind"-type features (and they can certainly be done in Vim or Emacs).

      So what else does XCode do that's so impressive?

    37. Re:Quite by ebuck · · Score: 1

      Dude, move on to paper tape!

    38. Re:Quite by Abcd1234 · · Score: 1

      Even for a 1 million lines of code large scale C++ project?

      What does line count have to do with anything?

      With a complex and deep class hierarchy?

      If that's true, you're doing something wrong. Inheritance should be used *sparingly*. Only an amateur thinks inheritance is the magical solution to all code reuse problems.

    39. Re:Quite by Creepy · · Score: 1

      I've worked with one of the key developers of Code::Blocks, but never actually used the IDE he develops, but everything I've seen him write was very well polished. I agree with you on IDEs - every one I've ever worked with has odd quirks.

      Visual Studio is a decent IDE for Windows, but has Microsoft quirks like libraries that need a .lib and a .dll, the property manager that has odd usability issues that never get fixed like having to click on a line to see a ... to add paths (unintuitive), and its oddities like insisting the C library is deprecated and you should use *_s functions (Microsoft's secure replacement for standard C functions).

      Bloodshed's DevC++ worked well for me for a while, but I found binaries compiled with it were slower than Visual Studio's (due to using the gcc compiler rather than the Microsoft or Intel compiler). I haven't used DevC++ in about 2 years, so I'm not sure where it's at today.

      I have used XCode extensively and agree with you on bloated - between X.2 and X.4 (I skipped X.3) it tripled its memory footprint on one of my projects (and God forbid I start the debugger). I also hate how XCode prefers System paths over local files (violating the C spec, and making it near impossible to override broken functions). Every 6 months or so the .Spotlight-V100 file gets corrupted and needs to be deleted, as well (XCode ties into Spotlight and some headers become unreadable - this problem has existed since X.0). The one feature I love is being able to see which files are not included in a project, which helps when I need to manually update the project, though I'd love this to be automatic or have a batch add capability.

      Eclipse I can't say I like much - it is extensible, yes, but any IDE that requires a tutorial to get started with is more work than it's worth, IMO. I did get past understanding Perspectives and loading and compiling a project with it, but I personally found it a lot like my experience with Blender - when you know something else (and I know a lot of pro-CAD packages), everything with it seems backwards.

      I've tried Anjuta and KDE Studio on Linux, but I wasn't fond of either one, though I can't remember why (that is more like 3 years ago). I admit, I have a tendency to just use vim for coding most of the time on Linux and debug with Insight (a gdb front end).

      Also a long time ago I worked with Borland, CodeWarrior, and a few other IDEs, but most of those are dead now.

    40. Re:Quite by Abcd1234 · · Score: 1

      Do you also use a second terminal for typing in the "make" command?

      Why would you do that when you could just type ":make"?

      What about other terminals for viewing documentation or file structure?

      That's why GNU Screen was invented. :)

    41. Re:Quite by eiMichael · · Score: 1

      I would make the argument that a good developer must understand the tool-chain because otherwise the moment something goes wrong, they're shit out of luck. Is it so much to ask that developers understand how their source code turns into something their choice of CPU can execute?

    42. Re:Quite by ari_j · · Score: 1

      Other notable tools missing from that list: A compiler, assembler, and linker.

    43. Re:Quite by Anonymous Coward · · Score: 0

      Of course real apps on a mac require ruby, python, or Obj-C.

      As opposed to the fake apps that use qbasic?

    44. Re:Quite by db32 · · Score: 1

      It is shiney.
      Honestly, I feel the same way about XCode as the GP. Personally I just think the layout and UI is better with XCode. I am not a frequent coder and I was able to get up and moving MUCH faster with XCode than I was able to with VS2k5. That isn't to say that VS is bad. The major appeal of most things Mac is that they tend to have much cleaner and standardized UIs. I have found in most things that you can have all the advanced features in the world, but if the tool is too complicated to use it won't be used well or at all. (HP OpenView or MS SMS comes to mind, very powerful, very complicated foul beasts)

      --
      The only change I can believe in is what I find in my couch cushions.
    45. Re:Quite by Abcd1234 · · Score: 1

      Personally I just think the layout and UI is better with XCode. I am not a frequent coder and I was able to get up and moving MUCH faster with XCode than I was able to with VS2k5. That isn't to say that VS is bad.

      I'm actually more interested in what XCode offers over, say, a Vim or Emacs-type environment. The GP said that, after years working with Vim, XCode "blew" his mind... but my experience with IDEs is that, while they provide some handy features, there's nothing in them that I truly couldn't live without. So either I'm missing something in these IDEs, or the GP was missing something in Vim (or he/she's easily impressed :) ).

    46. Re:Quite by Chad+Birch · · Score: 4, Funny

      Well at least having bear hands will make it easier to kill the buffalo. Where do I get a set of those?

      --
      Sturgeon was an optimist.
    47. Re:Quite by Anonymous Coward · · Score: 0

      CMake I think is better. Cross-platform support for any build system you choose to use (Make, Visual Studio, Kdevelop etc). Built-in dependancy checker (which is actually a feature of any such system for a while now), built-in installation support, documentation support, dependancy handling between projects, support for static, dynamic libraries, feature capability support checking (like autoconf) etc. And it's really fast too boot (in terms of creating your makefiles or whatever).

      In other words, with minimum additional work for platform specific stuff, you can create something that creates your Visual Studio projects for your Windows developers & Makefiles for your *NIX developers.

      And you can extend it as needed I believe

    48. Re:Quite by mdarksbane · · Score: 1

      Most of my Code::Blocks stumbling blocks were performance and stability related. I've never had an IDE crash and freeze on me so much. The debugger felt very primitive as well, at least in terms of usability of its interface. Maybe they've fixed it by now, or maybe we were just doing some things it wasn't expecting us to.

    49. Re:Quite by thePowerOfGrayskull · · Score: 1

      I know the system interfaces for a couple of different OS's inside and out. This doesn't mean that there's a compelling reason for me to type them over and over again or not to allow the arguments to be autopopulated.

      It's important to know the systems you work with, I agree. Once you know them, there's no benefit to continuing to prove it in every line of code.

    50. Re:Quite by pauljlucas · · Score: 1

      I had to explain the difference between "=" and ":=" to the brainless developer ...

      Brainless developers should be fired.

      --
      If you reply, do so only to what I explicitly wrote. If I didn't write it, don't assume or infer it.
    51. Re:Quite by ckaminski · · Score: 1

      Though I love Eclipse (especially the debugger), give me Maven, git and subversion/svk and vi anyday.

    52. Re:Quite by WinterSolstice · · Score: 1

      XCode (oh, the horror)

      I second that. Maybe I just don't get it, but XCode is worst, ugliest, most cumbersome IDE I've used in 20 years.
      That includes years of using Borland and Microsoft environments.

      The "Best Ever" is still LSE on VMS... followed by edit /tpu, then Vim.

      --
      An operating system should be like a light switch... simple, effective, easy to use, and designed for everyone.
    53. Re:Quite by Anonymous Coward · · Score: 0

      Wait till you try Visual Studio. I went from Visual Studio + Visual Assist (a neat little plugin to replace Intellisense) to Xcode for iPhone development. Compare to Visual Studio, Xcode blows donkey balls. It's buggy, it's unintuitive, and does things differently from the rest of the world just for the sake of being different with no actual benefit, and more! Add to that a Mac keyboard that was made for people who never type, and you've got a perfect recipe for smashing the monitor with your fists. Note that I'm allowing for different shortcuts, etc. since it is understandable that each application has its own.

      The point is, try Visual Studio with Visual Assist before forming a complete opinion about Xcode.

    54. Re:Quite by ThePhilips · · Score: 1

      CMake is a huge thing to accommodate huge projects.

      Cons is a small thing which also can huge projects. But probably doesn't have all the bells and whistles. (CMake IIRC also has facilities a-la autoconf.)

      This two are out of different leagues.

      Needless to mention, it is rather pointless to have Windows v. UNIX portability, as Windows tends to break trivial things on way too many levels, often requiring in the end source code modifications. (And that is actual experience of my colleagues who tried once to port (unsuccessfully) their Qt4.x project to Linux.) IOW, build system is least of concerns.

      --
      All hope abandon ye who enter here.
    55. Re:Quite by wayLateToTheGame · · Score: 1

      Actually killing a buffalo with bear hands (claws?) must be a bit easier than with human hands :)

    56. Re:Quite by WinterSolstice · · Score: 2, Interesting

      Having had XCode also blow my mind, but in a bad way, I'm really curious what these features are too.

      MS VS2k5/2k8 really is pretty good. Now, as I've stated elsewhere in these comments, I'm more of a Vim/Eclipse guy - but I still like any editor that does the following:

      1) Improves my workflow
      2) Improves my speed
      3) Reduces my bug count (bugs due to human input error... like an unmatched ' or a missing ; or something)
      4) Simplifies hunting for methods/subs (I LOVE auto-complete when doing java or .NET code)
      5) If it involves a compiler, supports stack trace, debug, and walking through the compiler output (in, say, assembler)

      I would argue these are the hallmarks of an IDE, actually. Otherwise, we wouldn't need them.

      Apparently for you guys, XCode totally nailed these. For me, I spent hours trying to get even basic Carbon/C++/C type stuff to compile. Trying to design interfaces with interface builder made me long for even the Visual Basic 4 interface.

      I'm glad it worked... and I'd love to hear what these features are, so that I can re-evaluate them and learn something.

      --
      An operating system should be like a light switch... simple, effective, easy to use, and designed for everyone.
    57. Re:Quite by Kozz · · Score: 2, Funny

      Well at least having bear hands will make it easier to kill the buffalo. Where do I get a set of those?

      Uhm, I'm pretty sure it's part of emacs, but I forget the keystroke.

      --
      I only post comments when someone on the internet is wrong.
    58. Re:Quite by Anonymous Coward · · Score: 0

      http://www.thefind.com/family/info-bear-glove-puppet

      Not sure how much easier these would make eating a hotdog...

    59. Re:Quite by Anonymous Coward · · Score: 0

      Of course, bear hands would make it much easier to kill a buffalo with your bare hands.

    60. Re:Quite by MillionthMonkey · · Score: 2, Funny

      He should have Googled = and :=.

    61. Re:Quite by CarpetShark · · Score: 2, Interesting

      Specialized IDE is of course always an option, esp. if you are developing in say Java, but I would seriously question someone's ability if they eschewed the shell tool chain.

      That would be a mistake. I learned on the command line, and in many ways, it's still the way I'm most comfortable with and use more often, but if someone comes and asks me whether I "prefer" farting about at a command line over a decent modern IDE with RAD GUI tools, built in debugger, built in version control, click-to-edit error log handling, build configuration support etc., I'm liable to think they're living in the stone age.

    62. Re:Quite by g-san · · Score: 1

      Everyone forgets it because you only type it once. Then you can't type worth a darn anymore and you just join the circus.

    63. Re:Quite by Cornflake917 · · Score: 1

      From a bear, I believe... preferably a dead one.

    64. Re:Quite by Gr8Apes · · Score: 1

      Well at least having bear hands will make it easier to kill the buffalo. Where do I get a set of those?

      Ask Me About LOOM

      Probably here

      --
      The cesspool just got a check and balance.
    65. Re:Quite by molarmass192 · · Score: 2, Interesting

      I see you haven't used NetBeans. XCode isn't bad, it's far better then the MS IDEs. I think my fave is Eclipse, not because it's a great editor, but because the plugin ecosystem is very good. I give XCode props because the code completion and refactoring are some of the best I've come across. However, most "hard" programmers still fall back to the terminal for building / testing.

      --

      Good people do not need laws to tell them to act responsibly, while bad people will find a way around the laws-Plato
    66. Re:Quite by Sheafification · · Score: 1

      He doesn't want to have to kill and dress a buffalo with his bear hands just to eat a hotdog.

      Well, if he's got bear hands then I don't see the problem. I think they'd be a lot more useful for killing a buffalo than typing in code.

    67. Re:Quite by Xtifr · · Score: 1

      What about other terminals for viewing documentation or file structure?

      That's why GNU Screen was invented. :)

      GNU Screen provides other terminals. Not physical terminals perhaps, but then xterm isn't exactly a physical terminal either, and the only real difference with screen is that all the terminals are multiplexed though a single (physical or virtual) terminal.

      Face it, you don't use an IDE because IDEs are the equivalent of those crappy all-in-one stereos they sell at Wallmart with a crappy radio, crappy CD player, crappy cassette player and crappy speakers all integrated into one craptacular package, so you can't replace any component. :)

      (Frameworks with plug-in support are a little better, but most of them seem to be based around a crappy gooey editor that isn't 1/10th as good as vim or emacs! When the only non-replaceable part is the one part I most want to replace, I find it hard to become enthusiastic about the tool.)

    68. Re:Quite by Anonymous Coward · · Score: 0

      ...that any idiot could write

      Is that why you use it?

      -anonymous coward#1312335

    69. Re:Quite by Thinboy00 · · Score: 1

      typing ":!command" will give you a shell escape in vim. So you don't need two terms.

      --
      $ make available
    70. Re:Quite by plague3106 · · Score: 2, Informative

      Hmm... I'd go as far as to say, why the hell is any modern developer having to worry about = or := in makefiles anyway? Christ, there's a reason modern IDEs handle all this for you... its tedioius, error prone, and saps your time from the REAL issue, which is building the application.

      To the Ask poster, use VS Express, and ignore the retards complaining about "handholding." I assume you want to program to get something done, not spend time on tasks barely related to programming and which modern tools have solved nicely.

    71. Re:Quite by jgrahn · · Score: 1

      Few people can - and want - to go into details of how tool-chain really works. [...] I know many good developer who know about e.g. make only how to invoke it - "make all". Not more. Rest they do in e.g. Emacs. For Windows (or GUI development in general) it is very hard (if possible at all) to keep a track of all the details tool-chain does for you. And many people prefer to ignore the details - to concentrate on job at hand instead.

      Those people aren't good developers. The Makefile is part of the source code, just as the C (or whatever) sources. There are no more justifications to ignore it than to ignore some random foo.c file. (Of course, often it makes sense to avoid understanding all the source code, but the Makefile is one of the key files.)

      Actually, I don't really get your concept of tool-chain. It's so old-fashioned. It's not something you study for a year and then become The Toolchain Expert. You need to do something, you ask someone how, and then learn how to do it. No need to learn things you don't have a use for!

      The holywar "Emacs v. vi" from its inception revolved around precisely the nature of developer. Some developers like to know the details. Some developers prefer to ignore them and just press a button to achieve desired result. On side of "vi", one has to deal with more information. On side of "Emacs" one has to accept that some workflows would be impossible, since there might be no ready button for it. Side of "vi" is flexibility. Side of "Emacs" is conservatism.

      I almost hope you are making this up as a trolling exercise. I see no real difference betweeen Emacs and vi users these days, and no flexibility/conservatism dichotomy either. It's also the first time I've seen someone accusing Emacs of not being extensible ...

    72. Re:Quite by bonefry · · Score: 2, Informative

      Emacs has good GDB integration (it also integrates with the debuggers of Python and Perl, and can be integrated with any command-line debugger). It's basically what Eclipse CDT does (which also integrates with GDB).
      Emacs also has a good LaTex editing mode.

      That's the biggest advantage of Emacs over Vim. In Emacs you can integrate external tools without blocking the main thread, making it possible to execute those tools in the background. Emacs is a lot more IDE-like.

      Why would you need UML modeling? Surely UML diagrams are good for documenting the code, but not for development.

    73. Re:Quite by FictionPimp · · Score: 1

      It's not so much that it has features that vim does not have (with or without other shell tools). Ti's that everything I wanted is basically there out of the box.

      I didn't have to configure my code completion or color scheme, I didn't have to mess around getting debugging and output to work the way I wanted. I just open it up and write code. When I want to build an interface I find the interface builder dead simple to use and it's drag and drop messaging interface fool proof.

      Other things that are nice are the total integration with the OS. The command + something buttons do what they should and sadly the more I use OSX the more my hands start to naturally want to use the command + something shortcuts. So instead of k I find myself pressing command-x. Other buttons like command shortcuts to pop up symbols, macros, etc. The type ahead really fills out a lot of code for you quickly. Type @imp and get a very nice implementation skeleton. Or whi and get a very complete while loop example. It knows about your variables, functions, and methods (messages, etc). So it auto completes them as well. I'm also a big fan of the design of the interface. Everything is there and easily broken out or removed if you don't need it.

      By large my favorite feature is the snapshot. No need to commit to my repository until I ready. If I want to try a major risky change I can just snapshot with a single click and roll back if it really gets screwed up. I also enjoy how the editor points out errors quickly and simply. It makes it easy to find my problems.

      I also enjoy textmate and use it for a lot of my web work. It is very powerful and for a good while I even considered using it as a external editor for xcode. Now I use it for quick scripts where opening a full IDE is foolish, and as my everyday text editor.

    74. Re:Quite by jgrahn · · Score: 1

      Frankly, I would put /bin/bash as first on the list. My toolchain (ranked by degree of my dependency on the tool) is: bash, vim, exuberant ctags, GNU make, GNU diff, GNU grep, GNU find, GCC, man, git, perl, gdb, objdump.

      nm(1) is pretty high on my list, otherwise they are pretty similar (s/vim/emacs/ though).

      What's more interesting is that such lists are open-ended. There's no IDE designer deciding what tools we should have and not have. Also, the tools on *my* list do not conflict with yours. You can use your tools and I can use mine, and we can build a piece of software together. (Except we must agree on the building and version control parts.)

      No doubt that annoys small-minded people ...

    75. Re:Quite by ThePhilips · · Score: 1

      It's also the first time I've seen someone accusing Emacs of not being extensible ...

      Then code to make Emacs in cc-mode upon press of the Tab to insert a Tab in studio.

      I have searched for that little crap for two weeks - before giving up. Even exchanged e-mails with cc-mode authors. Nobody f***ing knows how to do anything in Emacs. Because everybody lost track of the things in Emacs very very long time ago.

      So, yeah, as a matter of fact I state that Emacs is not extensible.

      I see no real difference betweeen Emacs and vi users these days ...

      VI users know precisely what every key press does. And know how to change that to achieve different effect if desired. Emacs users - do not. They just hope that Emacs by default does something sensible. And most of the time it does. Not always. But most of the time. Not always what user actually wants or needs - but since one can't change that anyway, they learn to love it. It's not that they have a choice. Isn't it?

      I'm in 100% control over my VIM and what it does to files I edit. I can also change every however tiny aspect of VIM's behavior at any given time. With Emacs you can never ever achieve that.
      Feel the difference.

      --
      All hope abandon ye who enter here.
    76. Re:Quite by jeremyp · · Score: 1

      I'm suspicious of unix coders who use them. If they need to be hand held to that extent while developing perhaps their skills arn't quite up to the job. Vi, gdb/dbx and strace should be all any unix/linux coder needs.

      I honestly don't understand that attitude.

      You can build a boat using only hand tools and I'm sure people who can are better craftsmen than people who can't. However, even the best boat builder will build boats faster if they have an electric drill.

      Likewise, a well designed IDE will improve a coder's productivity. I like writing code but why should I have to handcraft the build rules for my application when a good IDE will do it for me?

      --
      All I want is a secure system where it's easy to do anything I want. Is that too much to ask ~~ Randall Munroe
    77. Re:Quite by Chabo · · Score: 1

      Advanced UNIX users live in the shell.

      I saw this, and read it as "Unix users live in a shell", and I thought you were calling them hermits. :)

      --
      Convert FLACs to a portable format with FlacSquisher
    78. Re:Quite by msclrhd · · Score: 1

      Code completion is one of the first things I turn off in Visual Studio. Ever try adding a link tag around some text and have VS helpfully add the closing tag immediately afterward. I also turn off the pretty formatting. Keeping the same indentation level that I am at (and no, replacing the spaces with tabs does not count) is useful.

      I do turn on the view visible whitespace, as this is useful to identify where whitespace is inconsistent. Sometimes though, I wonder if I'm better off not knowing -- having 3 spaces followed by a tab, or "inti;" make me want to throw VS out of the window (it oh so helpfully adds the tab when you start typing from having moved the cursor in virtual whitespace mode).

      I want an editor to preserve what I am typing and get out of the way.

    79. Re:Quite by Abcd1234 · · Score: 1

      Thanks for the response! Sounds like what I expected... it ties a lot of tools together in a nice package, and adds a lot of convenience features (like code completion)... nothing that can't be done with Vim/Emacs and related tools, of course, but probably better tied up in a single package (which matches pretty well my experiences with VS).

      On this particular point, though:

      By large my favorite feature is the snapshot. No need to commit to my repository until I ready. If I want to try a major risky change I can just snapshot with a single click and roll back if it really gets screwed up.

      Now, obviously if you're in a corporate setting, your toolset is more or less dictated for you, but if you're working on person projects, or if your company is uses SVN and you have the flexibility to use your own tools, I'd strongly suggest you check out git (assuming you haven't already done so). Forget snapshotting, imagine being able to arbitrarily, at will, create new temporary branches for experimenting with new work. Bug comes along that you need to fix? No biggie, commit to your working tree, switch back to the primary, fix the bug, commit, then go back to what you're doing. It puts the full power of branching and merging right at your fingertips, and makes those operations *cheap*.

      If your company uses SVN, you can even use Git as a front-end to SVN (this is how I work... VS2k5 + Git for Windows development). You can do all your work in your local repo, and when you're ready to publish your work to the corporate SCM, you just push your changes upstream. It really is a revelation after working with SVN/CVS for years.

      Of course, you do sacrifice SCM integration with your IDE. But, IMHO, it's a worthwhile tradeoff.

    80. Re:Quite by msclrhd · · Score: 1

      What, so you are not hand-crafting the machine code using Vi??? What is wrong with you man ;)!

    81. Re:Quite by Anonymous Coward · · Score: 0

      Agreed. I used to program soley in C in linux using either vim or KDevelop. However, after switching to OS X (and I am thankful for doing that) I started using Xcode and I love it. Using XCode + Interface Builder you can do so much with little effort, making development (at least for me) more enjoyable. I look forward to integrating python into my applications!

    82. Re:Quite by Anonymous Coward · · Score: 0

      http://www.lfgcomic.com/page/134

    83. Re:Quite by Flodis · · Score: 1

      I'm curious, is there any mode or plugin except the "It's open source, make it yourself"-plugin to make Vi/Vim/Emacs support 'intelligent search/replace' or other quick refactorings? By that, I don't mean regexps, I mean that the editor actually has deeper knowledge of the language you're editing, and can help you change the name of a type in a specific namespace, without touching any methods or variables or other strings in the code that happen to have the same name as the type. Or change the method name on this particular type, but not the methods with the same names on other types, etc. Over an entire project with multiple sub-projects.

      To me, (and probably anyone who refactors code), this is a huge time-saver compared to standard search/replace. Also, I imagine this would be hard to implement as a plugin to Vi/Vim/emacs if you let the tool chain be totally replaceable links - e.g. how do you determine which files are part of the project and need to be looked through, if you can use any one of a pretty large number of tools that can do the work of 'make'?

      (I may be wrong. I used emacs/make etc. on SunOS until the early 90s, then moved on to Windows in mid/late 90's, and am now moving back to the *nix-world again, so I've been out of the loop for quite some time. Maybe this type of functionality is now standard in Vi/Vim/emacs too...)

      Basically, an IDE sets a standard that makes it possible to ignore some of the most basic problems and instead concentrate on solving higher-level problems. I think this is a good thing (tm). I also don't value 'understanding the build process' that highly. I've been around enough that I happen to understand it (should probably qualify that with a 'most of the time'), but I'm not sure that it's been all that useful since I started using IDEs. Most of the time the build broke before, it was because I did something stupid in the makefile. An IDE typically handles all that for you. I do not miss editing makefiles.

    84. Re:Quite by boster · · Score: 1

      It's frankly made worse by the fact that (at least when I used complied languages, which was ages ago), it was hard to find a good reference. The old O'Reilly book was terrible. It was actually the K&P "The UNIX Programming Environment" that had the best intro to make.

      --
      Madness takes its toll. Exact change please.
    85. Re:Quite by FictionPimp · · Score: 1

      Yea XCode supports SVN and CVS. We use SVN, so I like the built in integration. However I like your method as well. Our team only has 4 developers and we have talked about moving to git for some time now. I could live without built in support if it improved my workflow.

    86. Re:Quite by dcam · · Score: 1

      Of course, you do sacrifice SCM integration with your IDE. But, IMHO, it's a worthwhile tradeoff.

      Speaking as someone who has moved from a tortoise svn + VS.Net 2K5 to TFS + VS.Net 2K5, it ain't just a worthwhile trade off, it is a good thing. TFS has some issues, but even if it weren't broken in a number of areas, the problem is SCMs are oriented towards managing files and IDEs are oriented towards managing projects. They don't always co-incide. For example, adding a new file to project does not mean it needs to be added to SCM. Equally some files might often be managed by something other than the IDE.

      --
      meh
    87. Re:Quite by mario_grgic · · Score: 1

      No, I don't think there is such a thing. In vi/vim you usually either search for what you want to rename, make one replacement, then do n to move to the next match, . to do last edit or n again to skip it. Alternatively you do :%s/for_string/replace_string/gc
      so it will ask you each time if you want to replace. It still requires you to know if the replacement should happen or not. The plain text editor does not have insight into code like say Eclipse does for Java (or technically any language that supports reflection).

      Yes, for certain things (like find me all callers of this method) or for refactoring good IDE for certain languages (like Eclipse for Java) will do certain things a lot better. But the shear speed of editing is still much slower in each of these IDEs.

      Now, if the two could be combined (with a good VI/VIM plugin) then you could have best of both worlds. And Netbeans has an excellent vim plugin which is almost 99% VIM. Eclipse unfortunately does not.

      --
      As the island of our knowledge grows, so does the shore of our ignorance.
  81. LOL! 10K?? Big deal! by Viol8 · · Score: 0, Flamebait

    I've did a 60K C project back in the day using vi, gcc and dbx. Never had any issues. Perhaps you're just not up to being a developer and would be happier doing web design or other pointy clicky type IT roles?

  82. VS gets the basics wrong = I'm less productive by jonaskoelker · · Score: 1

    Visual Studio is actually very good.

    Really?

    Last time I checked, you had to move your hands all the way over to the arrow keys just to move around in your text.

    Sure, you can cheat and get Ergo Elan keyboard from Kinesis, which puts the arrow keys in what's essential the Fn/Ctrl/Alt/Space "sub-bottom" row (and it puts Ctrl, Alt, Space, Enter, PgUp, PgDn, Home, End, Delete and Backspace under your thumb; go look at keyboard pr0n to see how it makes sense). But that's still in the sub-bottom row. Way harder to reach than the home or top row.

    I don't think it's "actually very good". I think it gets the very basics wrong. It may have great features that are easier to use than in emacs and vi, but if I'm constantly pissed of by having gross inefficiency or discomfort imposed on me by poor design decisions, I'm not going to be happy and (thus) I'm not going to be as productive.

    And it's not like Microsoft doesn't have the resources to fix the editor: they have many in-house coders who prefer to use emacs (more than they like to admit, in any case). Why don't they ask them why they prefer emacs, and think about how they can make VS provide what emacs users want?

    (How do I insert 78 '#'es? How do I move forward five words? How do I select for copy-pasting the current function? How do I go to the next preprocessor directive? How do I jump to the matching parenthesis? How do I navigate the sexp tree? How do I look up in three seconds what a key does, or which keys a function is bound to? How do I jump to a function/struct/union/enum definition? All without a mouse, of course)

    1. Re:VS gets the basics wrong = I'm less productive by giuseppemag · · Score: 0

      I apologize if it is not the case, but this (http://msdn.microsoft.com/en-us/library/ms165528(VS.80).aspx) looks like a nice enough list. I suppose any other desired behavior can be added.

      --
      My book: Friendly F#, fun with game development and XNA; my game: Galaxy Wars by VSTeam; my gamedev language: Casanova.
    2. Re:VS gets the basics wrong = I'm less productive by Anonymous Coward · · Score: 0

      If you weren't too busy bitching to notice, VS has an emacs mode that emulates virtually all of the things you want.

    3. Re:VS gets the basics wrong = I'm less productive by Anonymous Coward · · Score: 0

      How do I cling to a bygone era in which nobody used mice?

    4. Re:VS gets the basics wrong = I'm less productive by Anonymous Coward · · Score: 0

      Last time I checked, you had to move your hands all the way over to the arrow keys just to move around in your text.

      Honestly, when you code and you spend more time typing than thinking you are doing it wrong.

    5. Re:VS gets the basics wrong = I'm less productive by Anonymous Coward · · Score: 0

      wow! if i slapped an oss ide down for saying that it didn't have a function that it did i'd have 12 fanbois on my butt screaming at me and get modded -324342 troll.

      come on mods, where's the fairness?

    6. Re:VS gets the basics wrong = I'm less productive by Anonymous Coward · · Score: 0

      Oh yeah, without mouse of course... it wouldn't be a fair competition if you don't cripple the opponent until he is on your level.

    7. Re:VS gets the basics wrong = I'm less productive by Mr2001 · · Score: 1

      And it's not like Microsoft doesn't have the resources to fix the editor: they have many in-house coders who prefer to use emacs (more than they like to admit, in any case). Why don't they ask them why they prefer emacs, and think about how they can make VS provide what emacs users want?

      VS actually has a lot of Emacs editor features, they're just not enabled by default. Look under Tools|Options|Environment|Keyboard.

      How do I move forward five words? [...] How do I jump to the matching parenthesis? [...] How do I look up in three seconds what a key does, or which keys a function is bound to? How do I jump to a function/struct/union/enum definition?

      1. Ctrl+Right Arrow, five times. ;)
      2. Ctrl+]
      3. Alt+T, O, then use the keyboard to select Environment|Keyboard (if you really use this all the time, it'll still be selected from before).
      4. F12

      For the others, you might need to write a macro. Surely no problem for a hardcore hacker like yourself, right? ;)

      --
      Visual IRC: Fast. Powerful. Free.
  83. wxDevC++ by Anonymous Coward · · Score: 0

    wxDevC++ is the successor and still actively maintained. Laurent.

  84. GVIM is an IDE. by Anonymous Coward · · Score: 0

    VIM is an IDE by all means. What do think does something need to be called IDE that vim has not?

    Just because most people using vim are not using most of those bloated features does not mean they are not there.

    1. Re:GVIM is an IDE. by xouumalperxe · · Score: 0

      Integration. The "integrated" part comes from the tools working well together. If the compiler spits out a syntax error, the editor highlights the relevant line. If you tag the line in the editor, it tells the debugger that's a breakpoint. If you double click a function name, it navigates to the function definition, or perhaps the documentation for it.

      Now, Vim might be customizable to provide those features (in fact, I recall it working well with gcc errors), but its not anywhere near as integrated as, e.g., Visual Studio is. Vim is a very good text editor, not an IDE. And that's ok. IDEs aren't the be-all, end-all of software development -- I personally dislike the bloat, and am in fact a Vim user. But to pretend that Vim has the same degree of integration an IDE does is asinine.

  85. Does it get the basics wrong like VS? by jonaskoelker · · Score: 1

    Can you only move around in your text with arrow keys, page up/down and home/end? That's a deal breaker for me. I've given VS some flak for that at http://tech.slashdot.org/comments.pl?sid=1245985&cid=28106773 but it applies to most editors except emacs and vi.

    1. Re:Does it get the basics wrong like VS? by EsbenMoseHansen · · Score: 1

      Can you only move around in your text with arrow keys, page up/down and home/end? That's a deal breaker for me. I've given VS some flak for that at http://tech.slashdot.org/comments.pl?sid=1245985&cid=28106773 but it applies to most editors except emacs and vi.

      I believe both IDEs have a vi-mode, and KDevelop makes it possible to extensively reconfigure the keyboard bindings, so I would think yes. Personally, I think it makes sense to use the arrow keys, and compared to playing the piano, moving your hand a few cm to the arrow keys hardly matter.

      --
      Religion is regarded by the common people as true, by the wise as false, and by rulers as useful.
    2. Re:Does it get the basics wrong like VS? by Late+Adopter · · Score: 1

      If you read GP's link, he's referring more to the fact that Emacs runs on a full LISP interpreter, so you can make key-bindings to any Turing-complete operation you can think of, with plenty of hooks available back into the text-editing capabilities. I haven't seen a graphical text editor that powerful yet.

      But I *do* second the recommendation of Qt Creator, despite that loss. For me, having the integrated API reference is a lifesaver, and the UI designer is really slick too. Also some textual things are just plain impressive (I'll get autocomplete suggestions for things that aren't even part of Qt or my project, just because of a header include line!)

    3. Re:Does it get the basics wrong like VS? by fyanardi · · Score: 1

      Can you only move around in your text with arrow keys, page up/down and home/end? That's a deal breaker for me. I've given VS some flak for that at http://tech.slashdot.org/comments.pl?sid=1245985&cid=28106773 but it applies to most editors except emacs and vi.

      Yes, KDevelop 4 has a "Vi", even though still not yet complete (e.g: I can't use :> to indent - or maybe I miss something?) In fact, KDevelop's vi capability comes from KatePart, the ultra-advanced text-editing component from KDE. (And yeah, I use h, j, k, l to navigate because my down and right arrows are broken)

    4. Re:Does it get the basics wrong like VS? by EsbenMoseHansen · · Score: 1

      If you read GP's link, he's referring more to the fact that Emacs runs on a full LISP interpreter, so you can make key-bindings to any Turing-complete operation you can think of, with plenty of hooks available back into the text-editing capabilities. I haven't seen a graphical text editor that powerful yet.

      I did read it. And reading it again, I still do not see this. But, at least for KDevelop, you can write plugins in (I believe) either QtScript or C++ that can do anything you like. I believe Eclipse works in the same way.

      But I *do* second the recommendation of Qt Creator, despite that loss. For me, having the integrated API reference is a lifesaver, and the UI designer is really slick too. Also some textual things are just plain impressive (I'll get autocomplete suggestions for things that aren't even part of Qt or my project, just because of a header include line!)

      Yeah, same with KDevelop. Really wonderful, and saves a lot of time. Same with rename functionality and so on.

      --
      Religion is regarded by the common people as true, by the wise as false, and by rulers as useful.
    5. Re:Does it get the basics wrong like VS? by Anonymous Coward · · Score: 0

      Do you still type QWERTY or have you converted to something more sensible like Dvorak? If you're still using QWERTY (assuming you're an English-speaker) then complaining about the problem of moving to the arrow keys should be pretty low on your priority list compared with the strain and extra motions you're going through for a comfortable, sensible keyboard layout for all of the actual *typing* that you do.

  86. gedit + terminal by selven · · Score: 1

    Do you really need anything else?

  87. Anjuta by SlashV · · Score: 1

    I'm surprised no one has mentioned Anjuta yet. I've tried it a couple of years back and found it quite usable. It may not be as sophisticated as MSVS or Eclipse, but is somewhat like dev-cpp, which has been mentioned. The latter being for Windows, I wonder what platform /. posters actually use/develop for !

  88. notepad.. by davygrvy · · Score: 2, Funny

    and nmake. Who needs fancy syntax coloring. Step debuggers are for weenies who can't manage to use printf()

    --
    -=[ place .sig here ]=-
  89. Anonymous Coward by Anonymous Coward · · Score: 0

    Try Ultimate++: http://www.ultimatepp.org/

    From the site:
    Ultimate++ is a C++ cross-platform rapid application development suite focused on programmers productivity. It includes a set of libraries (GUI, SQL, etc..), and an integrated development environment.

    Rapid development is achieved by the smart and aggressive use of C++ rather than through fancy code generators. In this respect, U++ competes with popular scripting languages while preserving C/C++ runtime characteristics.

    The U++ integrated development environment, TheIDE, introduces modular concepts to C++ programming. It features BLITZ-build technology to speedup C++ rebuilds up to 4 times, Visual designers for U++ libraries, Topic++ system for documenting code and creating rich text resources for applications (like help and code documentation) and Assist++ - a powerful C++ code analyzer that provides features like code completion, navigation and transformation.

    TheIDE can work with GCC, MinGW and Visual C++ 7.1 or 8.0 compilers (including free Visual C++ Toolkit 2003 and Visual C++ 2005 Express Edition) and contains a full featured debugger. TheIDE can also be used to develop non-U++ applications.

    U++ distributions combine U++ with 3rd party tools like MinGW compiler or SDL library to provide an instant development platform.

  90. In Windows by BattyMan · · Score: 1

    I'm strongly tempted to label this another 'bloze problem. I'll admit I've never tried a huge file on Winbloze. I've loaded and worked with dozen-megabyte files in Linux, and emacs on Solaris can handle a gigabyte file from halfway across the continent via nfs.

    --
    Exceeding the recommended torque is not recommended.
    1. Re:In Windows by BitZtream · · Score: 1

      And that would make you an ignorant idiot.

      The problem isn't Windows, the problem is the application that wasn't ported to Windows properly.

      Instead of opening the file as a memory mapped file using the proper API it tries to fall back to fopen and reading chunks into memory.

      Fix it to use the right API and it will behave properly. Blame the dipshit porter who was too lazy to find the matching API for Windows. Don't blame Windows, it has plenty of other, valid, things you can blame it for.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
  91. Re:KDevelop by sqldr · · Score: 2, Informative

    Tip of the week: Even if you're not writing QT code, the integrated qmake builder works WAY better than the autoconf stuff.. then again, anything works better than autoconf ;-)

    --
    I wrote my first program at the age of six, and I still can't work out how this website works.
  92. What? by Unoriginal_Nickname · · Score: 1

    And it's not like Microsoft doesn't have the resources to fix the editor: they have many in-house coders who prefer to use emacs (more than they like to admit, in any case).

    I demand a citation from a credible source. If they don't like to admit using emacs I fail to see how you were possibly able to come by this information.

  93. Sun Studio is great by Anonymous Coward · · Score: 0

    is free for Solaris and Linux.
    I've only tried it on Solaris but it's amazing on there. Every bit as good as Visual Studio on Windows, with some features that VS does not have.

  94. for web development by Anonymous Coward · · Score: 0

    geany, http://validator.w3.org/ http://jigsaw.w3.org/css-validator/, and firefox' console2

    so, actually this is not _integrated_ since there is no one thing but 4 things. well. i have not found truly useful IDEs for my needs yet.

  95. In the beginning was the command line by argent · · Score: 1

    The only IDE I use is XCode, and that only when I'm working on some Mac-only open source package that doesn't include a Makefile.

    I guess there might be some IDE somewhere that works cleanly with Make, but they all seem to have a thing about replacing a common portable cross-platform tool with their own proprietary project files... and I've seen where that leads all too often.

  96. I didn't see anyone mention Codeview by someyob · · Score: 1

    I've just rebooted my "hobby" after many years of absence (having generally been accustomed to using Borland products), and I'm using Codeview under ubuntu. It works for me, but the lack of mention suggests it's not that well liked. Am I wrong?

  97. Visual C++ Express 2008 by abjbhat · · Score: 1

    Visual C++ Express 2008. Its free. You get a good help (msdn) system. If you install Windows SDK (also free) you can 1. Create Console Apps - ANSI C/C++ and Win32 2. Create Win32 based windows/GUI apps 3. Create DirectX/Direct3D/Open GL apps.

  98. viplugin for Eclipse by SuurMyy · · Score: 1

    Find it here. It does cost 15 euros, however. When I last tried it and the free alternative it was well worth the money.

    Then again, I wonder what would happen to Eclipse, if I opened a 255 Meg file w/it. I have done this w/Vim and edited it w/o a problem.

    --
    The lyf so short, the craft so long to lerne
  99. Use different tools by Anonymous Coward · · Score: 0

    IDE has a rather strange notation to it, because it intents to do anything which it never can.

    To really code I use a combination of various editors (based on mood and complexity of the task at hand) and to analyze source code there is nothing like Source Navigator. It builds various cross-referencing, symbol and function tables and has a very basic, but still functional and coloring editor window, too.
    It can even launch your favourite editor for the current file right with 1 right mouse click.
    It's not overly fancy, but everybody tells me: it really gets the jobs done without trying to get into your way (OK, the GUI is rather old-school and has certain quirks).

    Cheers.

  100. wrong month... by prettything · · Score: 1

    march is the month for ides! ther's precedents and all that

    --
    bring bak the ponies!!
  101. RTFA by DaveDerrick · · Score: 2

    So many comments about VI, Emacs, Ubuntu etc. Did anyone notice the original post said he works on WINDOWS ?

    1. Re:RTFA by petrus4 · · Score: 1

      gVim and Emacs both have Windows ports. Xemacs presumably does as well.

      Although I don't use Emacs, application launching could work just as well within Emacs in Windows, as well; you could use it to spawn WinZip, a C compiler, cvs client etc, just like in Linux. The Lisp VM almost certainly works more or less the same, too.

  102. vi support by SuurMyy · · Score: 1

    The vi support doesn't work too well. I've tried it. However, as it is easy to edit the files straight from the directories w/vim, you can just use the QT Creator as a debugger, for example.

    Apart from the shoddy vi support I really liked QT Creator.

    --
    The lyf so short, the craft so long to lerne
    1. Re:vi support by pherthyl · · Score: 1

      Well it is just the first release with vi support. It will likely improve (and it's open source).

  103. At least three alternatives w/vi+eclipse by SuurMyy · · Score: 1

    Viplugin (commercial, 15 euros) and then there are the two other ones that did not work as well when I tried them 6 months ago.

    --
    The lyf so short, the craft so long to lerne
  104. Visual Studio 2008 is the best IDE by Anonymous Coward · · Score: 1, Insightful

    There are good free IDE's

    But the best is Still Visual Studio 2008, specially when you work with .Net

    I have used Eclipse to develop Java, but compared to VS2008 it sucks major!

  105. Here's my list of candidates by Qbertino · · Score: 1

    In order of interest according to your requirements:

    Code::Blocks
    Anjuta
    KDevelop
    JEdit
    Emacs
    NetBeans
    Eclipse

    Anjuta and KDevelop only run under OSS Unix (Linux) but you can run them in an emulated enviroment - there is a no-hassle installation for such an enviroment from Ubuntu.

    JEdit and Emacs are both editors that can be extended to IDEs and beyond. You may want to look into that approach.

    --
    We suffer more in our imagination than in reality. - Seneca
  106. IDEs are rubbish by miketheanimal · · Score: 1

    Actually, IDEs are fantastic, until you need to step outside what the IDE will do, then they are rubbish. Which is about 5 minutes into any non-trivial program.

  107. CMake by jfbilodeau · · Score: 1

    To add my own opinion, start with CMake. I switched from GCC Autotools to CMake last year, and I'm not looking back. The great part about it is that it's much easier to setup than Autotools, and generates project files for Code::Blocks, Eclipse, KDevelop and Visual Studio. That makes your project trully portable across your favourite OS.

    To answer the actual question, I strongly recommend Eclipse with CDT. I've also used jEdit and KDevelop quite a bit.

    J-F

    --
    Goodbye Slashdot. You've changed.
    1. Re:CMake by Agent+ME · · Score: 1

      I was going to post CMake had no one else done so. It's a build system, not an IDE, so not completely on topic yet still a very important aspect of programming.

  108. Doing it the old school way by Anonymous Coward · · Score: 0

    I'm ashamed to admit, that I am old fashioned. For me my "IDE" is joe + jbrownie (http://www.onyxbits.de/jbrownie) when it comes to Java and joe + Makefile, when it comes to C(++).

    1. Re:Doing it the old school way by bstreiff · · Score: 1

      Yep. joe + GNU make is the way I do it too.

      Though using joe is kind of unpleasant on Windows (I have a hunch I am one of a small handful of people who actually do use it on Windows via cygwin). Using Console helps to make it bearable (at least then you can resize it to larger than 80chars).

  109. Unix is my IDE by Anonymous Coward · · Score: 0

    Unix
    Live free of IDE

  110. Turbo C++ Explorer by Anonymous Coward · · Score: 0

    Turbo C++ Explorer is also free but has not been updated since its initial release.

    (The same applies to Turbo Delphi Explorer and Turbo Delphi for dotNET Explorer.)

    I was using the Turbo Delphi version for a while before upgrading to Delphi 2007 and it worked quite well.

  111. An IDE by Anonymous Coward · · Score: 0

    The key word here is an IDE, not a text editor...

    Netbeans & Eclipse are both good. Netbeans fairs better with c++ in my experience. Both have their quirks... namely that space (particularly on a single-monitor setup) is at a real premium. I prefer Notepad++ for the windows world if you're going to go the text-editor route... it's more intuitive than the rest of the mix to me.

  112. XCode by terminal.dk · · Score: 1

    I use XCode, combined with Textmate (commercial), but XCode alone is pretty good, and I actually like it.
    Nothing better for coding for your phone and desktop in the same IDE.

  113. Some of us build more than just Windows apps by BattyMan · · Score: 0, Flamebait

    and if you think that emacs, and all those vi variants for that matter, aren't usable and productive just because _you_ can't work them, that sounds quite ignorant to me. Several of us here find emacs (and vi*) highly productive. IMNSHO emacs, gcc and Perl are the "killer apps" of *nix (even if they are ported to the monopoly platform - they lose something in the move).

    If you think that the software monopolist is morally acceptable, I suggest you go read this, and this, and this. And then go develop yer Micro$oft apps on V$ (if you can still stomach them). See if I care.

    The application I'm presently working on is actually targeted for Winbloze XP (against _my_ will). That doesn't keep me from writing it in Perl/Tk with emacs. When it's done, I expect it to run equally well in any environment (that supports Perl & Tk, which is A LOT). Try that with Visual Studio. I bet you can't, because V$ was deliberately engineered to make it as difficult as possible to develop for any non-Imperial target.

    When I abandoned the Evil Empire, V$, VC++, MFC, and all of that rot in favor of Free software, I was overjoyed not only by the ideology but by the quality of the tools. I've never looked back.

    And since when did astroturfers get mod points?

    --
    Exceeding the recommended torque is not recommended.
    1. Re:Some of us build more than just Windows apps by Xest · · Score: 1

      "and if you think that emacs, and all those vi variants for that matter, aren't usable and productive just because _you_ can't work them"

      And therein lies the problem, you apparently don't even understand what the term usability actually means.

    2. Re:Some of us build more than just Windows apps by Anonymous Coward · · Score: 0

      Ever heard of the expression "right tool for the job"?

      VS isn't the right tool for all jobs. News at 11.

    3. Re:Some of us build more than just Windows apps by Anonymous Coward · · Score: 0

      What the fuck is V$ you freetard

    4. Re:Some of us build more than just Windows apps by dslbrian · · Score: 1

      When it's done, I expect it to run equally well in any environment (that supports Perl & Tk, which is A LOT). Try that with Visual Studio. I bet you can't, because V$ was deliberately engineered to make it as difficult as possible to develop for any non-Imperial target.

      Not true. VS is just an IDE, although it is of course strongly geared toward Windows apps, you can do cross platform development in it if you use the right kit. I used to do a lot of Perl/Tk, but now I've completely switched to using the cross platform wxWidgets for all my apps needing a GUI. For using VC with it I highly recommend using wxPack to install (it bundles in the very awesome wxFormBuilder). Now the only time I use Perl/Tk is for those 5-liner type perl programs where I want to throw something into a messagebox.

  114. Good recommendations for Drupal? by Man+Eating+Duck · · Score: 1

    I've recently become responsible for a Drupal site. I have some PHP experience, but not with Drupal specifically.

    I'm currently using NetBeans - it feels a bit heavy, it's not very good at following the spaghetti includes of Drupal, and it lacks line wrap. Hey, it's not originally my code :)

    Are there any IDEs that are better suited for Drupal hacking? I'm making a lot of changes to the PHP code itself, so PHP is the primary focus. A big bonus would be if it was good at tracing execution of Drupal code, but I suspect this is impossible. Any suggestions are welcome!

    --
    Are you a grammar Nazi? I'm trying to improve my English; please correct my errors! :)
    1. Re:Good recommendations for Drupal? by JamesIArmes · · Score: 1

      I use NetBeans for all of my Drupal coding. Granted it doesn't have word wrap, but there is a Drupal plugin that may help with your situation. Check it out at http://plugins.netbeans.org/PluginPortal/faces/PluginDetailPage.jsp?pluginid=10859. I also keep all of my lines below 80 chars so that it doesn't go past the print margin, even if it means having to separate part of a string with the concat operator (.). This makes it easier for me to read and maintain, and gets rid of the word wrapping issue.

  115. My favorite by Anonymous Coward · · Score: 0

    ISPF

  116. bash, ssh, vim? by mw13068 · · Score: 1

    I'm a Web developer, not an "actual" programmer, but I love BASH, ssh, and vim. I find GUI tools get in my way. Like using boxing gloves to play cards.

  117. anonymous by Anonymous Coward · · Score: 0

    Try Komodo it's good and stable and runs on windows and Linux environment

  118. I can't be alone on this... by Anonymous Coward · · Score: 0

    anyone else share my favorite free, lightweight IDE, which is no IDE -- and no saved file either -- and happens whenever I build up a long one-line Perl script bit by bit, starting from what was supposed to just be a quick and dirty loop-around-a-regex -- the compile-test routine is a simple enter, the up arrow lets me make further changes, and versioning consists of pressing the up arrow twice whenever I fuck up!

  119. QtCreator by Anonymous Coward · · Score: 1

    QtCreator is coming along nicely. It uses gdb, which is a bit slow on windows, but I'm finding it very useful for switching back and forth between windows and ubuntu.

    1. Re:QTCreator by paugq · · Score: 1

      Support for debugging with VC++ debugger is already in git master branch.

  120. SharpDevelop by RobinH · · Score: 1

    I would have to say I'm very impressed with SharpDevelop for .NET development. Plus they even wrote a book ("Dissecting a C# Application") about how they wrote it. On top of that it's open source and has an interesting add-on architecture.

    --
    "I have never let my schooling interfere with my education." - Mark Twain
  121. NetBeans by imnes · · Score: 1

    NetBeans. It's had good support for C/C++ development for a long time. We use Eclipse and NetBeans at work and NetBeans is actually the more well behaved / light weight of the two. I have had netbeans running for about 3 days without closing it, working on a J2EE project and the IDE is consuming all of about 87mb of ram.

  122. Lazarus by cpt_koloth · · Score: 2, Interesting

    Lazarus is excellent for everyone familiar with Pascal or Delphi... Plus it can compile windows CE apps...

  123. gambas by oloron · · Score: 1

    i was very happy to see this when i made my transition from windows world of visual studio over to linux, this ide is awesome, seems very powerfull

  124. VS + Emacs by Anonymous Coward · · Score: 0

    I use Visual Studio for C++ and Emacs for Python. Both environments have their strengths and weaknesses.

    When in Emacs, I miss the "find regexp in entire solution" from VS and in VS I miss the speed, kbd macros and simplicity of emacs. At first I thought the "hippie-expand" of Emacs was useless compared to VS "intellisense" but after some tweaking, I prefer it. etc

    I would not do C++ in Emacs (I do not want to waste time on make files, compiler switches, strange debug tools) and I would not use an IDE for Python (yet) since the ones I've seen are too clumsy and focused on the write/compile/run cycle. Simple tools like the command line, ipython, nosetests etc make up a great environment.

    Conclusion, VS or Emacs: It depends...

  125. I use two by C_Kode · · Score: 1

    I'm not a programmer, but I am a systems engineer. I write mostly small tools or automation. For Windows I use ConText, for Unix/Linux I use Vim

  126. vi by dazedNconfuzed · · Score: 1

    You can't spell evil without vi.

    --
    Can we get a "-1 Wrong" moderation option?
  127. notepad! by Anonymous Coward · · Score: 0

    well, !notepad.

    I had to tutor a new developer once. He'd obviously received the wisdom that using any IDE was a sign of weakness. I gently tried to modify this wisdom. After watching him robotically switch between Notepad (yes, Windows Notepad), without syntax checking or any other modern facility, and command line windows to execute his programs, I had to give up on him (oh, he wasn't a great coder either, I had to tell him that ignoring exceptions wasn't a great idea in a medical app).

    I'm adept at vim and shell, and all my projects are based on ant builds for full command line support, but machismo is costing a lot of people a lot of time, and while I can understand not liking the extra weight of an IDE, I think many people are not giving them a chance.

  128. NJ Developer by Anonymous Coward · · Score: 0

    If you are developing C++ in a Windows environment, Visual C++ 2008 Express is probably the best free IDE for you. Microsoft has a lot of problems, but one thing they do better than just about anyone is give you solid development tools. Install it and you can start coding immediately. You don't need to install and configure umpteen plug-ins like Eclipse. Also The user-interface is fast and incredibly easy to work with.

    It's a different story if you need to develop for MAC/Linux. But if you just need to code for Windows, its far and away the best way to go.

  129. And here you still are with your buzzwords by BattyMan · · Score: 1

    Well then why don't you just explain it to us?

    Your blanket statement that Free software somehow simply, automagically loses out to V$ in the areas of "usability & productivity" is an unsubstanstiated crock. Emacs is a mature, highly polished, extremely flexible/customizable IDE and the product of twenty-five years of user-driven development. It was probably the _first_ IDE. Vi is more tightly focused, but also an efficient, highly usable tool. Both have large, experienced, and fanatically loyal user bases.

    Having used both, and Visual Studio, I _strongly_ prefer emacs and vi. You can't simply tell me that "they aren't usable". I find them more logical, efficient, productive (as in: faster) and _portable_ as well. I want you to explain just what you think makes V$ _soooo_ much more "usable and productive".

    With the wealth of alternatives available (let's not leave out Eclipse, since it seems pretty popular too, as well as Free), I can see no reason to tolerate the moral bankruptcy of the factors of Visual Studio. But you don't want to talk about _that_.

    So, enlighten us. What's so all-fired "usable" about V$? What makes it so superior to, say, emacs? What does it have going for it besides its Imperial market monopoly, with the accompanying shills, "analysts", and astroturfers?

    And bear in mind that I place a great distinction between "User Friendly" and "Beginner Friendly". For "Beginner Friendly", I'll agree that the Imperial "Tools" are da bomb. Not being a beginner, however, "Beginner Friendly" is not what I want.

    --
    Exceeding the recommended torque is not recommended.
    1. Re:And here you still are with your buzzwords by Unoriginal_Nickname · · Score: 1

      Emacs is a mature, highly polished, extremely flexible/customizable IDE and the product of twenty-five years of user-driven development. It was probably the _first_ IDE.

      Emacs began development in 1976 as a set of macros designed to make TECO usable. The Free Software Emacs did not exist until RMS picked it off of his foot and ate it in front of a crowded amphitheater in 1984, which also saw the addition of Lisp as an extension language. All of the features that allow you to call Emacs an IDE without also being a liar are due to Emacs extensions.

      The earliest real IDE I could think of off the top of my head was PWB/UNIX, which was released at version 1.0 in 1977. This was one year after Richard Stallman began writing TECO macros and about a year before Emacs was different enough to be considered its own editor. PWB/UNIX is the inspiration for Visual C++.

      Wikipedia says the first IDE was Dartmouth BASIC, released in 1964.

    2. Re:And here you still are with your buzzwords by Unoriginal_Nickname · · Score: 0, Troll

      For "Beginner Friendly", I'll agree that the Imperial "Tools" are da bomb. Not being a beginner, however, "Beginner Friendly" is not what I want.

      Heh. "Tools."

      Every time you deliberately misspell a word with a dollar sign it means your IQ score is 1 point lower. I don't mean it subjectively; I mean, literally, it is an empirical indication of your intelligence approaching the point at which your central nervous system is no longer able to sustain respiration without mechanical intervention.

      I know you might find this concept difficult to imagine but it is, in fact, possible to engage your peers in discourse about a Microsoft without making thousands of brazen observations of the fact that Microsoft asks for money in exchange for goods and/or services. I'm sure you sat there in your office chair, drumming your fingers together or stroking your neckbeard, positive that you were being exceptionally witty and creative by replacing the letter 'S' with a similar-looking dollar sign, but you weren't, it's infantile and it hasn't been funny, witty or poignant in about 8 years.

    3. Re:And here you still are with your buzzwords by Xest · · Score: 2, Insightful

      "Well then why don't you just explain it to us?"

      You suggest that vi is usable, and then suggest that just because I can't use it doesn't mean it isn't usable. Truly usable software does not require any amount of training, prior knowledge or particularly high levels of skill, realistically you shouldn't even need documentation. If you truly believe vi can be used by someone who has never used it before without any reference, help or anything like that then you're lost so deeply in your zealotry that you're undoubtedly doing more harm than good to the free software movement because your view of software is so far removed from the view of software which people expect that you are no help whatsoever in getting the word out there for FOSS.

      A good way to understand usability is that with usable software it should be clear how to perform a specific task through nothing more than seeing the interface. If your application is entirely keyboard shortcut driven then, it fails badly at usability, unless there is clear information on screen at which point it is somewhat usable, but there is almost certainly a better way of doing it. I am not against keyboard shortcuts, they are great for power users and help productivity when you know what they are, but in something as complex as a high end IDE you cannot keyboard shortcut everything without keyboard shortcuts simply getting out of hand.

      In terms of general productivity, the most obvious factor is that VS has the best intellisense implementation out there and it only gets better when you're using the likes of C# with inline XML documentation. But really, from the debugger through to libraries and language features such as LINQ, Microsoft's development suite has so much to offer in terms of productivity. Rather than try and run through every individual productivity feature in VS though wasting my time reiterating what's already out there if you bother to look for yourself, I'll assume you can use Google and move on.

      "With the wealth of alternatives available (let's not leave out Eclipse, since it seems pretty popular too, as well as Free), I can see no reason to tolerate the moral bankruptcy of the factors of Visual Studio. But you don't want to talk about _that_."

      Again, no one really cares how corrupt Microsoft is when it comes to making money themselves. The moral aspect of using Microsoft software is no big deal for most people when you compare to the moral aspect of other every day vendors from your fuel vendors for your car, to your sweat shop made iPods and clothes, Microsoft is in the grand scheme of things, guilty of far less evils than many other companies whose products we consume every single day. Presumably then, if immoral companies are such a big issue for you you've never fuelled your car, never bought branded clothing or gadgets and have never eaten at a fast food chain? If you cannot honestly answer yes to that, then you're a hypocrit.

      "I'll agree that the Imperial "Tools" are da bomb. Not being a beginner, however, "Beginner Friendly" is not what I want."

      Not being a beginner at what exactly? Certainly a lack of understanding about software usability suggests you're severely lacking in some of the more important concepts of software development. Perhaps you mean you're just good at churning out code which is only a small part of software development? In the real world, companies need to do more than just churn out code though, they need full product life cycle from requirements gathering, to design, to implementation, to testing, to deployment and of course maintenance. Microsoft offers a full blown tool chain to handle all of that in a single package, that's quite attractive and it's something the FOSS world needs to work seriously hard towards to offer an alternative. Eclipse is certainly the best attempt at this so far, but it's still not quite there.

    4. Re:And here you still are with your buzzwords by Bat+Country · · Score: 0, Troll

      Truly usable software does not require any amount of training, prior knowledge or particularly high levels of skill, realistically you shouldn't even need documentation.

      A good way to understand usability is that with usable software it should be clear how to perform a specific task through nothing more than seeing the interface. If your application is entirely keyboard shortcut driven then, it fails badly at usability, unless there is clear information on screen at which point it is somewhat usable, but there is almost certainly a better way of doing it.

      You, sir or madam, are correct.

      I'd also like to add that a usable interface should build upon the skills that the user already has acquired and should behave in a fashion consistent with other tools in the same environment.

      In other words, if you have a windows code environment, it should behave like Windows applications viz similar hotkeys, window behavior, etc.

      To that extent, the value of software like vim or emacs holds up, as the user expects them to be as arcane and hard to learn because everything else on the commandline is. Holding them up as examples about how free software is not only equal in quality but also morally imperative, as the original troll claimed, is totally absurd however from a usability standpoint.

      --
      The land shall stone them with the bread of his son.
  130. IDE by Corson · · Score: 2, Interesting

    Delphi and Lazarus/FPC.

  131. Codelite by Anonymous Coward · · Score: 0

    http://www.codelite.org/

  132. LabView by Anonymous Coward · · Score: 0

    Just had to throw LabView into this discussion. Been using it since version 5, available for a lot of platforms. Drawing you programs never gets old... :-) Optimum for routines less than 1000x1000 *pixels*.

  133. Aptana by Brian+Kendig · · Score: 1

    When I'm doing web development (HTML, JavaScript, XSLT), I use the free version of Aptana Studio Professional, which essentially is a bundle of the Eclipse editor plus the Aptana plugins. I add the free AnyEdit Tools plugin so that it tabifies and deletes trailing spaces for me.

  134. QTCreator by lenKite · · Score: 2, Informative

    I am really surprised no-one mentioned QtCreator which runs on Windows too. You can use Mingw or the visual c++ compiler with QtCreator. Unfortunately you can debug only using Mingw.

  135. Re: Python IDE by rwa2 · · Score: 1

    I am wondering, though, what do others use for coding (and for Python coding in particular). Text editors are fine for many tasks, but perhaps there are more complex projects with lots of files which require something like Eclipse, etc. What's your experience w. that?

    The Eric Python IDE is pretty amazing, with completion, and breakpoints with variable viewers, etc. First IDE to wean me away from emacs. Check it out:
    http://eric-ide.python-projects.org/eric4-screenshots.html

  136. Dreamspark by Tigerworks · · Score: 1

    If you're a student, you can also get Visual Studio 2008 Professional (and a few other things) for free under a student license at http://www.dreamspark.com/

  137. Code::Blocks by Anonymous Coward · · Score: 0

    I found out about Code::Blocks this year, and it's been working wonders for me. Simple, fast, has everything I need, project templates for SDL / Ogre3D / whatever, and works well in both Linux and Windows. That said, I've only used it for C++ on gnu compilers.

    Previously I used Visual Studio (because that was better than anything else I'd tried), but I'm not looking back.

  138. Newsflash: The 1980's are over. by Joce640k · · Score: 3, Informative

    It's not about "not having a choice". Windows programmers aren't stupid, they figured out IDEs are far more productive.

    To answer the question: Visual C++ Express is the one. Lightweight IDE, best compiler, most standards compliant, best debugger ... it's a free download so don't waste time looking at anything else.

    --
    No sig today...
    1. Re:Newsflash: The 1980's are over. by Murpster · · Score: 0, Flamebait

      No, no... Windows programmers actually ARE quite stupid.

    2. Re:Newsflash: The 1980's are over. by hansede · · Score: 1, Interesting

      It's not about "not having a choice". Windows programmers aren't stupid, they figured out IDEs are far more productive.

      To answer the question: Visual C++ Express is the one. Lightweight IDE, best compiler, most standards compliant, best debugger ... it's a free download so don't waste time looking at anything else.

      I agree with everything you have said, as I also use Visual C++ Express and find it to be highly useful. However, be warned that in my experience it will occasionally crash, losing any unsaved data. Save often!

    3. Re:Newsflash: The 1980's are over. by wed128 · · Score: 1

      Most standards compliant...if you want to spend a lot of time reading about ATL and what icon you need to click to implement a damn callback...

    4. Re:Newsflash: The 1980's are over. by Anonymous Coward · · Score: 0

      Visual C++ Express is not the most standards compliant at all. That's pretty retarded.

    5. Re:Newsflash: The 1980's are over. by f16c · · Score: 1

      MonoDevelop is getting close. I do lots of C# at work, use suse Linux at home so it's a natural. The IDE and code editor and debugger are very well integrated and the code editor does not suck. This is not Visual Studio and requires a bit of explanation to use but the Mono C# bits are a bit nicer than their Windows counterparts in some ways. This is a usable IDE. I started with Visual Studio and ended up trying it out.

      --
      bob@Osprey:~>
    6. Re:Newsflash: The 1980's are over. by ausekilis · · Score: 1

      To answer the question: Visual C++ Express is the one. Lightweight IDE, best compiler, most standards compliant, best debugger ... it's a free download so don't waste time looking at anything else.

      Since when did MS make anything that was standards compliant? Did you not see the numerous articles about them ripping apart ANSI/ISO C? (memcpy among others).

      I'm not going to argue about the lightweight IDE, the code completion is handy, and it does have a nice debugger.... but Code::Blocks is also pretty lightweight, and (at least in linux) has a comparable debugger in it's integration with gdb.

    7. Re:Newsflash: The 1980's are over. by adisakp · · Score: 4, Interesting

      To answer the question: Visual C++ Express is the one. Lightweight IDE, best compiler, most standards compliant, best debugger ... it's a free download so don't waste time looking at anything else.

      Lightweight IDE - it may only be a 3MB installer, but it downloads a lot more to install on the fly and it can chew up plenty of resources for any non-trivial code bases. It often stalls out updating Intellisense on a project of any appreciable size. Part of the reason it's a smaller install is all the help and docs are online which makes doing work without an active internet connection a PIA (i.e. laptop on an airplane).

      best compiler - Nope. Not even close. Intel compiler is generally 10-20% faster code than MSVC++.

      most standards compliant - I don't even know how to answer this other than to say I'm hoping you are joking. MSVC++ doesn't even handle empty-struct inheritance according to the C++ standards. Oh, and how about variables defined in a for-statement leaking out of their scope? For an idea of just how non-standards compliant MSVC++ is, take a look at the Boost source code and then check out how much of the code is actually work-arounds for bugs / non-standard features in MSVC++. Both GCC and Intel compilers come much closer to the C++ standard than MSVC++.

      best debugger - You got me there. Visual Studio (Express) does have a pretty well polished and easy-to-use debugger. I guess I can give you one out of four.

    8. Re:Newsflash: The 1980's are over. by ianto · · Score: 1

      You're joking right? MS Visual Studio being standards compliant? The last time that I checked it was not, bearing in mind this was a few years ago but can someone link me to say that they have otherwise improved upon their compliance?

    9. Re:Newsflash: The 1980's are over. by malevolentjelly · · Score: 1

      Lightweight IDE - it may only be a 3MB installer, but it downloads a lot more to install on the fly and it can chew up plenty of resources for any non-trivial code bases. It often stalls out updating Intellisense on a project of any appreciable size. Part of the reason it's a smaller install is all the help and docs are online which makes doing work without an active internet connection a PIA (i.e. laptop on an airplane).

      If you want to install the documentation, you can. It takes up a bit more space, but it's there if you're after it. Perhaps he should have mentioned that they have the best freely available documentation, also.

      best compiler - Nope. Not even close. Intel compiler is generally 10-20% faster code than MSVC++.

      Do we really want to bring for-pay commercial compilers into this debate? Do we want to compare the Intel Compiler to like the Green Hills Compiler or something? I thought the root of the issue was that he was looking for a lightweight free IDE? MSVC++ generates the fastest code of any freely available compiler- and you can even use that compiler for free in a professional setting.

    10. Re:Newsflash: The 1980's are over. by Anonymous Coward · · Score: 0

      Windows programmers aren't stupid, they figured out IDEs are far more productive.

      Mhmm ;)

    11. Re:Newsflash: The 1980's are over. by Rycross · · Score: 1

      Oh, and how about variables defined in a for-statement leaking out of their scope?

      I can't comment on some of the other C++ standards issues that you mentioned (as I haven't done C++ on Windows in a long time), but I know that this hasn't been the case since VC++ 6.0. Newer versions of VC++ do have a compatibility flag that you can flip on if you need 6.0-style scoping, but current VC++ default to standards-complient scoping.

      Which version of VC++ are you commenting about anyway? Its certainly true that 6.0 was horrible in terms of standards-compliance, but newer versions have improved dramatically. Last time I checked, it was in the upper-90's percent of standards compliance (which, admittedly, was years ago; what little C++ work I do these days is usually done on Linux).

    12. Re:Newsflash: The 1980's are over. by immcintosh · · Score: 1

      Standard library != Compiler

      They have a very standards compliant compiler. It's true, ever since 2003 or so.

    13. Re:Newsflash: The 1980's are over. by Anonymous Coward · · Score: 0

      Most standards-compliant? Microsoft hasn't even managed to implement stdint.h in the nine years since C99 was formalized!

    14. Re:Newsflash: The 1980's are over. by mebrahim · · Score: 1

      Problems with Visual C++ Express: not FOSS (means a bunch of serious problems if you don't mind thinking about it) and Windows-only

    15. Re:Newsflash: The 1980's are over. by Anonymous Coward · · Score: 0

      Errr.... Much as I actually quite like Visual studio - and do agree the debugger is very good (Although I have used an embedded debugger in the past that beat them to the punch on *some* of the features) but I can't let you pretend that it's standards compliant.

      I seem to remember Visual C++ 6 was about 60% compliant. I don't know how they have a nerve to call what's included in Express as C++. For instance, Visual studio C++ .Net 2005 express edition generates this code for the definition of main:

      int main(array<System::String ^> ^args)

    16. Re:Newsflash: The 1980's are over. by adisakp · · Score: 1

      I've worked on VC++6 through VC++2008. I've run into a very large number of non-compliance issues. In a lot of cases MSVC++ has non-compliance that is more "relaxed" than the standard and lets you write sloppier code.

      In other cases, it just does things wrong. For example, the standard on empty struct inheritance specifies that separate structs of the same type should yield unique addresses. In the following code, the two addresses printed should be different in a standards compliant compiler (Intel or GCC). MSVC++ ends up printing the same number twice.

      class a { public: void awork() {} };
      class b : public a { public: int bdata; };
      class c : public a { public: b cdata; };
      c test;
      a *pca=&(test);
      a *pcb=&(test.cdata);
      printf("Offset of c::a %d\n",size_t(pca));
      printf("Offset of c.b::a %d\n",size_t(pcb));

    17. Re:Newsflash: The 1980's are over. by msclrhd · · Score: 1

      That main declaration should only be for C++/CLI code (it is using C++/CLI syntax). Check the options that you have specified and the project type (is it a C++ Win32/Console application?).

      As far as standard support goes, VC2003 and upward are very good. The only things that they don't support are export (which isn't used anyway and is generally agreed that it is broken anyway), throw specifications for anything but throw() (it will parse them, just not interpret them) and two-phase template instantiation. Also, the VC2010 compiler is adding support for quite a few new C++0x features.

    18. Re:Newsflash: The 1980's are over. by Lehk228 · · Score: 1

      of course it has a good debugger, but i'm not going to buy a toilet because it comes with the best plunger.

      --
      Snowden and Manning are heroes.
    19. Re:Newsflash: The 1980's are over. by morgan_greywolf · · Score: 1

      Lightweight IDE - it may only be a 3MB installer, but it downloads a lot more to install on the fly and it can chew up plenty of resources for any non-trivial code bases. It often stalls out updating Intellisense on a project of any appreciable size. Part of the reason it's a smaller install is all the help and docs are online which makes doing work without an active internet connection a PIA (i.e. laptop on an airplane).

      Agreed. Microsoft's IDEs, VC++ Express included, are anything but lightweight. They eat gobs of memory and take a long time to launch, unless you happen to 8GB of RAM and a quad core. Intellisense is horrible with large code bases.

      best compiler - Nope. Not even close. Intel compiler is generally 10-20% faster code than MSVC++.

      Well, I'd just like to point out that "best" doesn't always mean that the resulting code runs the fastest. It all depends on your criteria. If you're developing embedded systems, you want to cram things into less memory more than you want absolute speed. Other times you may want the compiler with the most supported language features and standard. I believe gcc and gcc-derived compilers like MinGW win on this count for C++ compilers, but Intel's compiler is also very good in this respect.

      I do think that the general consensus I see around the Net and in the industry is that the Intel compiler is both faster and produces faster code than any others, though, at least on x86 and x86_64 processors. For all-around capability on any processor, gcc still wins hands down.

    20. Re:Newsflash: The 1980's are over. by peawee03 · · Score: 1

      MSVC++ generates the fastest code of any freely available compiler

      MSVC++ code runs pretty damn slow on my UltraSPARC running OpenBSD.

      --
      I wish I could write clever and witty sigs.
    21. Re:Newsflash: The 1980's are over. by malevolentjelly · · Score: 0, Troll

      MSVC++ code runs pretty damn slow on my UltraSPARC running OpenBSD.

      Yeah, but you do all your development on an x86 machine. Ass.

    22. Re:Newsflash: The 1980's are over. by peawee03 · · Score: 1

      I do all my development on IA-64! Donkey.

      --
      I wish I could write clever and witty sigs.
    23. Re:Newsflash: The 1980's are over. by malevolentjelly · · Score: 1

      I do all my development on IA-64! Donkey.

      I don't remember the original comment being something like "HEY GUYS I NEED TO FIND A GOOD COMMERCIAL COMPILER TO USE FOR MY ACADEMIC CLUSTER."

      Honkey.

  139. Visual Studio / Code::Blocks / Eclipse / Emacs by blaisethom · · Score: 2, Informative

    I've tried a few IDEs and this is what I found for C++ development:

    *Visual Studio*
          - Best debugging
                  - Handles stl strings, etc
                  - Easy to change variable values while debugging
                  - Not very good with stl iterators
                  - Nice GUI for debugging
          - Best interface
                  - Code completion, etc is all great
          - Have to use project files: a pain
          - A bit bloated (though not as slow as Eclipse)

    *Code::Blocks*
          - Debugging is pretty good
                  - Sometimes a bit buggy (Sometimes can't change variables and stl templates a bit weird)
                  - In theory does lots of good stuff
          - Interface is nice
                  - Not quite as clean as VS but getting there.
                  - Allows plugins... could make it better than VS in future
          - A lot less bloated then VS
          - Project files are better than VS
          - Allows for normal Unix makefiles
          - Multi platform

    *Eclipse/C++*
          - Debugging not implemented in the C++ plugin
          - Nice interface
          - Really bloated, way too slow for me

    *Emacs/make*
          - I don't know how to use the debugging extensions and I don't feel like spending months to learn them
          - Great when running things over ssh, no other method really works

    Overall, I find that the debugging capabilities are by far the most important to me. So I use VS for almost all of my development. In fact, it's the only reason I still use Windows.

  140. Eclipse by immersion by epine · · Score: 1

    I generally force myself to use vi to edit smaller Unix configuration files. It's a good skill to have for when the pandemic comes. I visit many different Linux, BSD, and Cygwin hosts. The crap default version of vi on these boxes (or the crap termcap config) seems to have different rules about breaking insert mode. The worst of all are the ones that break edit mode if you press enter to create a blank line to follow your insertion, then cursor up to the line where you wish to edit. Beep! Ah, f.......k the mother of all stupid interactions. Every installer-default vi with a different rule for which keystrokes break insert mode should be forced to have a different name. vi66579 would be the default on OpenBSD. On the worst systems I break down and upgrade vi to vim if possible. I just don't like vi enough to invest in making it bearable. Sorry, potentially you're my one true love, but I just can't get past the mole on your nose.

    For a long time xemacs was my primary editor. I sometimes hate, sometimes like, sometimes love emacs. I was willing to invest in it: two or three times a year for half a day of power tweaking. Enough to become proficient in psgml mode when I needed to use that. But I was never willing to invest on a minute by minute basis, so I never achieved full orgasmic enlightenment.

    On an untangent, the same is true of my relationship to Lisp. A belief in Lisp is a lot like the faith of economists in rational agents: let's just throw away everything the cognitive scientists have learned about human limitations. When Kurweil finally delivers the neurobot to enable me to paren count like the Rainman, I'll jettison 30 years of blood, sweat, and tears learning all these other languages in a heartbeat. Until then, I rest my shift key.

    For my current work in embedded development, I dove head-first cold-turkey into Eclipse 3.4 (Ganymede) last summer. It was a lot to cope with all at once.

    I can't say that CDT was a painless transition. I went the fully integrated subversion/JIRA route from day one. I tied to work with the managed build system on some simpler projects. The limitations of the MBS tend to be inscrutable and obscure. The Eclipse documentation (mostly with IBM's thumbprint on it) consists of a masterful job of telling you what you could have guessed already in giant swaths of enterprise-ready declarative text, without ever telling you anything you need to know or can actually use. With one exception: if you intend to acquire your Eclipse skillz by hacking on Eclipse itself, there's a lot of value in what IBM provides.

    Hacking Eclipse for me is not an option. I'm using Eclipse mostly for the CDT, so I don't even know Java (which doesn't mean I can't write it, just that I can't correctly set up a classpath in under half a day). I ended up having to write an error parser for a non-standard embedded compiler, which required some Java. Considering my profound ignorance of all things Java, the process was actually pretty slick. Except for diagnosing the classpath problem, which took more time than the multiple ascents on missing skillsets combined.

    I don't recommend the Ganymede CDT as an instant-gratification experience. You need some tenacity to get over the learning curve, discover the necessary work-arounds, and train your eyeballs to parse context menus 1000 pixels deep, where most of the selections are the expanding variety. I have a wiki to taking notes on any new technology I'm learning. I nearly melted my wiki server coming to terms with Eclipse.

    Having said that, a year later I now have half a dozen major language plug-ins that I use on a regular basis, including some math languages, scripting languages, and simulation environments. Compared to my xemacs days, I love the ability to group a set of projects across multiple languages into a workspace and treat the workspace as a whole.

    The current CDT C/C++ parser is not half bad. Having read the history, I would have screamed to have tried Eclipse for C++ development pr

  141. One Word by lluBdeR · · Score: 1

    Eclipse. I mostly use the usual Java plugins, Flex Builder, PHP development kit, EPIC, PyDEV and it handles the little bit of C/C++ I do without any complaints. If the RIM JDE plugin worked in Linux it'd never get closed.

  142. Re:Quite Luddite by Anonymous Coward · · Score: 0

    On Windows you don't really get much choice about using an IDE but I'm suspicious of unix coders who use them. If they need to be hand held to that extent while developing perhaps their skills arn't quite up to the job. Vi, gdb/dbx and strace should be all any unix/linux coder needs.

    That's really cool grandpa. And how did you keep the punch cards from sticking in the reader?

    Microsoft is the devil --and they make programming so easy, it's the equivalent of giving hand grenades to children. But while you're congratulating yourself for writing code in binary, those who understand modern IDEs are writing functional software in a few hours that could take you weeks.

  143. Does it really require update? by DutchUncle · · Score: 3, Interesting

    >>I went to update my favorite free IDE, Dev C++, yesterday and noticed that it had not been updated since 2005!

    Is this necessarily a bad thing?

    For every "it doesn't have snazzy new feature x" there's a "it hasn't broken/lost feature y". And you're comfortable and familiar with it. Stability has its advantages. Plus you *can* update the underlying programs if you really need to; they just haven't been rolled into an updated single package.

    I'm an embedded systems programmer; we use IAR's ARM IDE at work (definitely NOT free). I used Eclipse briefly on a contract project, and I use DevC++ for my own little home stuff since using it for a course a few years ago. There's a balance point between staying on the bleeding edge, and working with existing fielded non-changing hardware that needs very stable updates from a stable development environment.

  144. Death to Eclipse and VS ! by Anonymous Coward · · Score: 0

    No seriously, Eclipse IDE sucks... Last time I tried to do autocompletion, I typed "std::" and waited for the list to show up... It took about 15 seconds and froze everything in the IDE. You could say it was because it was the first time and it had to cache, but no, it did it again and again ! I gave up before finishing my hello world. I don't care if this was improved, when you see that a software can allow a so poor level of quality you don't want to trust it. Moreover, it is overconsuming my memory and takes ages to respond !

    I daily use Netbeans instead for web and java, and it works very well. C++ mode seems also to be good, but for C++ I prefer to use Qt Creator. Honestly, it is the most suited IDE for C++ that I ever tested, it is lightweight, has most of features I want and does everything I need (autocompletion, autoindentation, svn, debug, ...). Moreover, I know that it's not exactly the debate here, but if you want to make an application quickly and simply, just forget about VS : with Qt you can almost do a complete web browser by doing only drag & drop, and it compile on Windows and Linux very well (I use Linux, and I did some projects with a Windows user : we hadn't the slightest problem to compile and run our app on our respective platforms). Oh and by the way, it automaticaly takes the look & feel of your platform :)

  145. Eric, or vim by Anonymous Coward · · Score: 0

    I typically use vim for everything, except refactoring... which is when I boot up Eric4; a very decent IDE originally designed for python, but it looks like it supports other languages just fine now too.

    The big problem I have with IDE's is that they're so bulky, and take up huge amounts of screen real-estate; annoying on a laptop. On a multi-monitor setup, an IDE is tolerable.

    With vim running full screen, I get much more code on my screen in one go. ;-)

  146. IDE? by Anonymous Coward · · Score: 0

    I use SATA now..

    thats the best I got right now..coffee hasnt kicked in yet

  147. It's all about productivity. by Spy+der+Mann · · Score: 1

    The parent post may have been terribly rude, but I agree with the parent. I'll assume he was being sarcastic.

    Anyway, I'm going to speak to those of you who want to indoctrinate people into using vim or emacs as if it was some kind of holy crusade.

    The other day I began to read a science & technology magazine in the college I went to. There were a lot of things like instrumentation for earth sciences, translator software, and you know what? Most of them were built in Visual Basic.

    Have you wondered why? Not because the language is good, but because the development environment allows you to create applications quickly without having to read a thousand manuals on how to compile.

    And people busy with real problems don't have the time to "configure and set up these environment variables whatever". They want something that works FAST.

    As for developer experience, here's something that happened in my last job: There were a bunch of vim/emacs fanatics out there. And there was this C/C++ project with a lot of buffer overrun problems.

    So I did a recursive directory regex search using Code::Blocks. I copied and pasted the search results (all it took was a right click) and wrote a report. Why didn't they do that? Well, to do this the traditional "without IDE training wheels" way, they required to do a lot of command line stuff. And they were too busy "fixing bugs" using their l337 c0d3r 5k1llz so nobody even bothered.

    IT'S ALL ABOUT PRODUCTIVITY, PEOPLE! It's not how "powerful" and "customizable" an editor can be (provided you have the time to learn over 9 thousand scripting commands and options), but how much time it can save you so you can do ACTUAL CODING. Same goes for the (insert your favorite linux image editor) fanatics. If you need to learn script-fu so you can do something that a commercial product does with just a right click, you're losing productivity time.

    Not all development teams are scripting / shell experts. When a team needs to finish a project fast, standarizing the development tools is generally a good idea. Do you really want to standarize people into learning whatever macros and scripts you need to do a simple regex over all the project files? Are you INSANE???

    The article poster did NOT ask for an editor, he asked for an IDE. Sheesh. You people act like if using an IDE would drain IQ points from you. Get over it!

    1. Re:It's all about productivity. by DeafZombie · · Score: 1

      It seems most people in here really are in a crusade to prove how great their primitive ways really are... or merely want to show off. I love Linux and there are plenty of things that I can accomplish a lot faster by going to shell than going through all of the menus and options.
      However I do believe that unless you are just writing small scripts, for serious development environment, and IDE will greatly increase your productivity, specially if you understand what the IDE is doing for you. A good IDE (IDE != Editor) will improve your abilities to write readable code, test, find bugs, refactor, ..... and yes that can all be accomplished through the shell/by writing your own scripts, but why? Do you really have something to prove?

      --
      The Binary Anti-Pattern [http://beyondboolean.blogspot.com/]
    2. Re:It's all about productivity. by Mybrid · · Score: 1

      As a contractor/consultant I work in a multitude of environments. When management asks me about IDEs here's what I have to say.

      1.) The ideal IDE user works on a stand-alone program, on the same platform as deployment. Productivity problems multiply manifold with IDEs when, for example, Java development is on Windows but production deployment is on Linux.
      2.) The ideal IDE user works on homogeneous code with no heterogeneous requirements for legacy run-time integration. I've seen companies spend lots of productivity resources pulling third-party packages of a different language into the IDE. Usually the only ones capable of pulling this off are the most senior of engineers. Their productivity gets wasted doing build integration work on behalf of the IDE.
      3.) The ideal IDE user works on a project slice only. Too many companies require, in effect, the entire source tree to be compiled because dependencies spun out of control and everything depends on everything else. Again, senior engineers are the only ones capable of solving the IDE failures and their productivity gets wasted.
      4.) The ideal IDE user works on small code bases.
      5.) The ideal IDE user is not required to run build scripts to build a project.

      As a contractor, by the nature of the work, I cannot depend on any particular IDE to be installed at any site. Also it is incumbent on me to use VI and Emacs in production. Good luck finding any production box with Visual Studio installed.

      I rarely work on stand-alone programs, I work on distributed software. As a systems program my code runs on multiple machines. While it is possible to attach to foreign processes on 10-20 machines, IDEs are very poor in doing so. Emacs, on the other hand, can fork as my shells as quickly as you like.

      As a contractor I work on legacy code nobody else wants to touch as full-time help. I have to integrate legacy and new code.

      As a contractor I have written Perl scripts that cobble together the legacy code and new code to create the entire production environment. This is not uncommon. An IDE is not a an ideal environment for complicated build script required to get the run-time working. They are very hostile to the work spaces that need to be checked in and swapped with other developers.

      I've seen senior developers waste days on why code compiles and runs in production, but doesn't run in the IDE environment. I've seen tons of productivity wasted by each developer trying to integrate legacy code with each build.

      As a contractor I have to say that as a lowest common denominator, Emacs and VI are always productive since they are found everywhere. In an Ideal setting, perhaps someone using an IDE is more productive than myself, but I'm a senior engineer and I doubt if I'm the target for any productivity debate about an IDE. IDEs, as has been noted here, best serve the less than senior developer who is working on code that is ideally completely written and maintained by them. Most Fortune 500 companies do use IDEs, but arguing that an IDE is always more productive is flat out false. In fact, I think if you wanted to pin the notion of a "religion" on the camps, the IDE camp is for more zealous than the Emacs and VI camp: I can use an IDE easy enough and that zealotry has killed productivity as it is not based on reason, but emotionally attachment to the bells and whistles that are not required. When it comes to refactoring, etc. I have personal Perl scripts that make any IDEs capabilities look like child's play. Perl is the ultimate refactoring and reporting tool in the right hands.

      Finally, as you may have noticed, much of the productivity that gets lost by the use of an IDE is that of senior developers fixing the nasty integration issues. The trade off of lost senior development productivity due to IDE maintenance vs. the gain of productivity of the more numbered typical developer by use of said IDE is a management call. I have to say though, as a senior developer, I do not relish being brought in to fix IDE bugs on behalf of those who claim superior productivity because the lost productivity is not their time.

  148. My choice by palmerj3 · · Score: 0

    Textmate... downloaded from Demonoid

  149. Why ? by El+Cabri · · Score: 1

    Why "don't you get much choice about using an IDE" on Windows ?
    There's nothing you can do on Unix-style boxes that you cannot do on Windows.
    Just download the Windows SDK for free from the Microsoft Download website, it comes with the command line VC++ compiler, and then install VIM or EMACS and ther you go, you can feel right at home.

  150. Anonymous Coward by Anonymous Coward · · Score: 0

    The Ultimate++ library comes with a very decent IDE called (humbly enough) "TheIDE". Although it was designed to work with their library it's a very good general use IDE for C/C++, supports debugging, code browsing, is portable, etc.

    As for the the library itself, it's quite good and I've used it on a couple projects of mine.

  151. You keep using that word... by Anonymous Coward · · Score: 4, Insightful

    I do not think it means what you think it means.

    An IDE is an Integrated Development Environment. That means all the necessary development steps for at least coding and compiling and debugging are part of the same interface.

    That doesn't mean swap out to a different terminal session and type "make."

    I've never understood the sad devotion to vi and vim and other obfuscated tools that UNIX elitists have. Sure I can use vi, but why in god's name would anyone want to unless they're forced to work over ssh for all of their development?

    If you're comfortable with it, that's one thing. Recommending somebody else cripple themselves with obsolete technology that completely ignores how people actually work because it should be enough for anybody reeks of that famous Bill Gates quote.

    1. Re:You keep using that word... by hr.wien · · Score: 2, Informative

      I've never understood the sad devotion to vi and vim and other obfuscated tools that UNIX elitists have.

      It's because if any part of the toolchain doesn't work for you, it can easily be exchanged for something else without having to exchange the entire toolchain.

      Don't like vi? Use emacs instead. The shell and all the other tools you're using won't care. Don' like the Visual Studio editor? Tough!

    2. Re:You keep using that word... by joss · · Score: 1

      ffs.. in vi or emacs, anything you do frequently can be turned into a single keypress easily.. that integrated enough for you ?

      "why in god's name would anyone want to..."
      the fact that you've used vi a bit does not give you much insight into what a power user can get out of it, your ignorance as to why people use it is not a powerful argument against it.

      --
      http://rareformnewmedia.com/
    3. Re:You keep using that word... by RangerElf · · Score: 1

      ...

      I've never understood the sad devotion to vi and vim and other obfuscated tools that UNIX elitists have. Sure I can use vi, but why in god's name would anyone want to unless they're forced to work over ssh for all of their development?

      If you're comfortable with it, that's one thing. Recommending somebody else cripple themselves with obsolete technology that completely ignores how people actually work because it should be enough for anybody reeks of that famous Bill Gates quote.

      Your ignorance about the reasons why others might want to choose a tool, it's uses and customizations, together with your patronizing attitude towards other peoples choices, does not make a compelling argument.

      If vim is not the right tool for you, it's not the right tool for you, and that's the end of it. Currently, it's the right tool for many thousands of developers using ssh, windows, X11, text consoles, MSDOS (still!), and many other mediums not mentioned.

      And I'm not a vim zealot, I know emacs is the right tool for thousands others; and it's an awesome tool, just not the right one for me (and many others).

    4. Re:You keep using that word... by CarpetShark · · Score: 1

      I've never understood the sad devotion to vi and vim and other obfuscated tools that UNIX elitists have. Sure I can use vi, but why in god's name would anyone want to unless they're forced to work over ssh for all of their development?

      Agreed. I only learned vi because I had to, for admin'ing remote machines in a consistent way, when some which didn't necessarily have nicer editors installed. Yes, vi is fast for some basic things, but in many ways, I think it's all a poor substitute people have settled with, in place of proper unix support for editing remote files from whatever local app you choose.

    5. Re:You keep using that word... by Anonymous Coward · · Score: 1, Insightful

      You are kidding, right?

      Shortcuts may be the E part of IDE. The I part is something like setting breakpoints while seeing the code. Or seeing the code while you step through it with the debugger.

      And what do you do when you have to rename some function? There is absolutely no way to automize that when all that glues your code files together is the Makefile.

    6. Re:You keep using that word... by Anonymous Coward · · Score: 0

      An IDE is an Integrated Development Environment. That means all the necessary development steps for at least coding and compiling and debugging are part of the same interface. That doesn't mean swap out to a different terminal session and type "make."

      There is no need to swap out to a different terminal session. You must be one of those people who used vim to edit a crontab once and now thinks he knows vim. It *is* an IDE. You just have to know how to use it as such.

    7. Re:You keep using that word... by Anonymous Coward · · Score: 0

      Uh, you don't have to swap to a terminal to run make from vim or emacs, as it is INTEGRATED. Durrrr.

    8. Re:You keep using that word... by Anonymous Coward · · Score: 0

      I've never understood the sad devotion to vi and vim...

      An interesting choice of words... as if you subconsciously recognize that the alternatives are not stronger, but are quicker, easier, more seductive....

    9. Re:You keep using that word... by MikeBabcock · · Score: 2, Insightful

      I type, I hit ":make" and it builds the project, and returns me to the first line that caused an error if any, showing the error in the bottom of the screen.

      How is that not integrated for you? As someone else said, most people critical of such an environment don't know how to use it.

      --
      - Michael T. Babcock (Yes, I blog)
    10. Re:You keep using that word... by Anonymous Coward · · Score: 0

      Or you could just find out what :r does and never leave vi.

    11. Re:You keep using that word... by Anonymous Coward · · Score: 0

      why would you use it over ssh? I only ever do stuff in vim/emacs/nano if it is a very small change.

      If it requires some real work I open the files through some form of sftp system

    12. Re:You keep using that word... by vivian · · Score: 1

      vi or emacs is great if you are writing a small application, or making a few small changes, but time is money, and programmers time is not cheap.

      A good IDE can save heaps of time, and in my opinion, automatic code completion is essential in any good programming environment, as it substantially reduces the time it takes looking up exactly what that object's field name was, or what the parameters are for a particular function. It is also extremely useful if there is a way to jump straight to the line of code where a particular variable or class is defined.

      Code::blocks is a fairly good IDE that can do this, and has a nice clean interface, and is my IDE of choice when I am working on C++ projects on Linux ( I tried kdevelop, eclipse, and a few others before settling on code::blocks) , but unfortunately it is still not quite as good as Visual Studio on windows, and even though you have to shell out about 1200 bucks for the professional edition here in Aus, if you are getting paid to write software, then that cost is well worth the investment considering the thousands of hours a large project takes to write. I write programs for a living, and really don't want to be spending all my time just trying to navigate around my code, or trying to use a command line based build environment and debugger which is not tightly integrated with the IDE.

      If you are just writing stuff on the side, and it is not your day job, then check out code::blocks.

      If you are getting paid for your time, then do your client a favour and get the right tools for the job, and spend the money on a tool which allows you to make the most efficient use of your time. Claim the cost of the tool on your tax.

    13. Re:You keep using that word... by Homburg · · Score: 1

      The GP mentioned vim, ctags and the GNU toolchain, which allow you to do both of the things you mention. Vim and GDB can work together to show you the code while you step through it in the debugger, and vim and ctags can work together to do (context sensitive) function renaming. Vim/emacs + gcc + gdb _is_ an integrated development environment.

    14. Re:You keep using that word... by CarpetShark · · Score: 1

      Nothing about a GUI tool prevents componentised use. In fact, most modern GUIs support some sort of component system. Windows has COM/DCOM,OLE, KDE has DCOP/DBUS, GNOME has CORBA/DBUS, etc.

      As for your claim that Visual Studio forces you to use one editor:

      http://vim.wikia.com/wiki/Integrate_gvim_with_Visual_Studio

  152. source navigator anybody ? by tizan · · Score: 1

    i use source navigator http://sourcenav.sourceforge.net/ Not fully functional but very good for large classes Development somewhat stopped though

  153. Emacs is my IDE by yotam · · Score: 1

    IDE ? I live in Emacs!
    There I can edit, compile, grep, open-shells, and run gdb that utilizes emacs buffers.

  154. NetBeans! by Anonymous Coward · · Score: 0

    It does Java, Python, PHP, Scala, Erlang, JavaScript, HTML, CSS, LaTeX, C, C++ and Fortran. Open source with an active development community. I used Eclipse until a few years ago, but NetBeans has come a *long* way in the past two years.

  155. I previously used edit.exe by Nadaka · · Score: 1

    Then I used notepad.exe

    Now I use notepad++

  156. A few by beef623 · · Score: 1

    Eclipse, SQL Developer, Notepad++, Aptana Studio and Visual Studio Express C++/C#.

  157. Re:Quite Luddite by Viol8 · · Score: 1

    "Microsoft is the devil --and they make programming so easy,"

    If you think an IDE makes writing the code any easier then I doubt you progressed much beyond "hello world"

    "those who understand modern IDEs are writing functional software in a few hours that could take you weeks."

    Not from what i've seen. They just spend more time pointing and clicking but don't solve problems or find bugs any faster.

  158. != IDE but K.I.S.S applies by Kirrilian · · Score: 1

    Why not just use a good text editor that allows you to build directly from your editor? It will run on multiple operating systems, has a powerful find/replace function, syntax highlighting, tabs, folding, highly customizable, free, open source, yadda yadda yadda

    Just go check it out, I've been using it for about 10 years at work and home and love it.

    SciTE
    http://www.scintilla.org/SciTE.html

  159. Why not give QtCreator a try? by Anonymous Coward · · Score: 0

    I have been searching for a cross platform IDE with code completion, integrated help, search, projects, visual form editor, debugger, etc. I have found QtCreator to meet all of these qualifications. Give it a try:

    http://www.qtsoftware.com/products/developer-tools

  160. Codewright, SlickEdit, and Visual Assist X by Anonymous Coward · · Score: 0

    I've used Codewright for the last 10 years. It is a GREAT C editor. It's C++ understanding is a little lacking. I am trying to switch over to SlickEdit which is the best editor I've found.

    I'm currently playing with Visual Assist X plugin for Visual Studio. It makes Visual Studio a great editor, but the brief keyboard emulation sucks.

    Bottom line, get Visual SlickEdit!!!

  161. I use Eclipse by javy_tahu · · Score: 1

    Because it is best for Java and Web.

  162. Visual Studio by s6135 · · Score: 0

    I use Visual Studio at work as they pay for it. At home I use Visual Studio Express as it is free.

  163. Programmers Notepad 2 by korbin_dallas · · Score: 1

    for windows:

    Programmers Notepad 2
    http://www.pnotepad.org/

    and MinGw
    http://www.mingw.org/

    PN2 has tons of features, add your own code clips, tools, etc. It seems to be actively developed. Supports all languages with code completes and syntax highlighting. Its very nice.

    Its also included in winARM toolkit as well if you want to dev arm7/9 embedded systems.

    --
    They Live, We Sleep
  164. Turbo C++ by fiftysixfifty · · Score: 1
  165. Boa Constructor by raguirre · · Score: 1

    My favorite IDE is the combination of Python + wxPython + Boa Constructor. I tried to make the switch to IronPython, but it seems that it still lacks all the functionality of wxPython. Maybe in the future there will be a Visual Python Express Edition, only not yet.

  166. Which Grammar Checker Do You Use? by afabbro · · Score: 1

    "Editors", that's "Which Free IDE". We covered that in third grade.

    --
    Advice: on VPS providers
  167. CodeLite by cs96and · · Score: 1

    http://www.codelite.org/ Its the only IDE I've ever found comfortable to use on Linux. Eclipse isn't designed for C++ and feels clunky as a result. Code::Blocks was OK, but seemed to have too many bugs to make it usable. CodeLite on the other hand is designed for C++ and I haven't encountered any major bugs preventing me from using it productively.

  168. Grammar Nazi is here by Anonymous Coward · · Score: 0

    "Which free IDE do you use?"

  169. Lotta help slashdot is today by mmaniaci · · Score: 3, Interesting

    Neigh everyone mentioned either vi or emacs (I know they can run on Windows, but they are not acceptable as an IDE and all ya'll need to get with the times), a few said Eclipse (wtf Java?? yeah it has plugins, but it isn't a C++ IDE dammit!), and DevC++ is just dead.

    I recently tried out the Qt Creator and I love it. It feels new and snappy, works well, and emulates Visual Studio's dialog creator (in my opinion, being Qt and not MFC, kicks Visual Studio's bug-laden ass). I haven't been able to really squeeze the useful juices out of Qt yet, but the potential is evident.

    Visual Studio Express is great, and if you want to do MFC than thats definitely the way to go, but if you're just programming as a hobby or for personal projects then I suggest giving Qt Creator a try

    1. Re:Lotta help slashdot is today by JoeMerchant · · Score: 1

      I "returned" to Windows programming in 2006 and it took me quite a while to wrap my head around the whole "VSE doesn't include MFC" thing - really annoying that no one would just come out and say it.

    2. Re:Lotta help slashdot is today by petrus4 · · Score: 1

      Neigh everyone mentioned either vi or emacs (I know they can run on Windows, but they are not acceptable as an IDE and all ya'll need to get with the times)

      Yep. I've heard this song about a million times before. It's always the same snot-nosed, arrogant punks who are singing it, too.

      Vi/Emacs are primitive, old, outmoded, and "unacceptable."
      The command line is primitive, old, outmoded, and "unacceptable."
      UNIX philosophy more or less in general is primitive, old, outmoded, and "unacceptable."

      Meanwhile, guess what countless millions of people are still using when they want to get serious work done?

      Being blunt, I'm guessing that all of the above have probably been around since before you were born, scrub, and a very large amount of money could very comfortably be bet on the assertion that they'll be around long after you've been buried in the ground, too; along with whatever flavour of the month proprietary junk you happen to be advocating this week.

      Seriously, I'm getting really sick of hearing this assertion being made about just about anything remotely associated with UNIX, and it is, again, nearly always made by arrogant, demanding ex-Windows brats who think they know everything when in reality they don't have a clue.

      If you think Windows and what it offers is so much better, then go back to Windows, and leave the rest of us alone.

  170. DrJava has an awesome Interactions Pane! by NaijaGuy · · Score: 1

    After a quick download from http://www.drjava.org/ you can start using the super lightweight IDE that I frequently turn to, partly because you can evaluate Java statements on-the-fly with the interpreter behind its handy Interactions Pane. You can interact with code in a compiled class or just start interacting with any lines of code you type immediately. It's really easy to get some code going without the bulk of something like Eclipse (which I generally use for all larger projects). I may be a bit biased since Dr. Java was created by folks from Rice University, my alma mater, but I genuinely find it more useful than other lightweight IDEs specifically because of the Interactions Pane. It's been around for nearly a decade and the latest release was earlier this month!

  171. Polish up on your Vim-fu by Sir_Lewk · · Score: 1

    map <F9> :make

    Bam, 1 keypress to build.

    Add this to the increase efficiency gained by editing your text with a real text editor and there is no way in hell an IDE is more efficient.

    --
    "linux is just DOS with a UNIX like syntax" -- Galactic Dominator (944134)
    1. Re:Polish up on your Vim-fu by bar-agent · · Score: 1

      Add this to the increase efficiency gained by editing your text with a real text editor...

      I don't know what you mean by "real" text editor, but it better include the following:

      • Transpose arguments: Swap the word to the left with the word to the right, and leave the comment and space in the middle intact. I haven't seen this anywhere.
      • Jump through or select parts of a word: SkipToEachWordInThisName.
      • Column select/copy/paste.
      • Reformat to fix indentation, etc.
      • Comment-aware word-wrap. Like, if I do a series of "//" comments and word-wrap or begin each line of a block comment with "*", it had better keep those things in place when I rewrap the comment.

      Most other convenient text editing features are common to about every IDE and programmer's editor I've seen:

      • Bookmarks. Mark several lines and jump between them.
      • Swap between two files.
      • Highlight matching braces, parens, etc., and/or select everything between them.
      • Multi-file search/replace.
      • Regex search/replace.
      • Join, select, or split lines with a keystroke.

      And here are conveniences that you only get in an IDE:

      • Refactoring and syntax-aware search/replace.
      • Good auto-completion.
      • Built-in documentation lookup, preview, or quick-reference.
      • API-aware spell-checking in comments, and regular spell-checking in strings.
      --
      i'd hit it so hard, if you pulled me out you'd be the king of britain [bash.org]
    2. Re:Polish up on your Vim-fu by Anonymous Coward · · Score: 0

      You should really learn what Vim can do before you attempt to imply what it can't. Really, you're just making yourself look foolish.

    3. Re:Polish up on your Vim-fu by bar-agent · · Score: 1

      I was not trying to imply that Vim does not do those things. I myself have not done any more with it than I can with Vi.

      But many of the features touted by Vim fans in these comments are things that are available elsewhere. Consequently, I think of Vim as a fast but otherwise typical text editor. If it supports those things I have listed, I will revise my opinion upward.

      --
      i'd hit it so hard, if you pulled me out you'd be the king of britain [bash.org]
  172. LOL by Anonymous Coward · · Score: 0

    I don't often feel compelled to reply in this manor, but you deserve it. So here it goes:

    LOL

  173. Re:KDevelop by Albert+Sandberg · · Score: 1

    What I really like about kdevelop is that it can let me write my own makefiles and just carry on with editing etc.. still the debugger works just great etc.. kdevelop keeps from being in my way which I find very nice..

  174. Visual Studio Professional by rliden · · Score: 1

    If you're working and serious about it there is only one solution for programming on, and for, a Windows system and that is Visual Studio Professional. Let's go back to the car analogy world. If you're a mechanic, and you make your living from that trade, you don't buy tools at the dollar store. You buy them from the Snap-On or other professional tool guy. The same goes for development. Don't be cheap. Buy Visual Studio Pro. VS2010 is coming out soon. I would recommend using VS2008 express until VS2010 is released.

    If you really want to use free, then use a VS Express Edition or Code::Blocks.

    --
    Don't think of it as a flame, more like an argument that does 3d6 fire damage.
  175. FlashDevelop by Tronster · · Score: 1

    When coding for Flash, I've found FlashDevelop ( http://flashdevelop.org/ ) to be the best IDE out there for doing AS2 (Actionscript 2) or AS3 (Actionscript 3) based work. Our UI team used it on the last AAA title we shipped and my current UI team is using it in our pipeline for the current games we're tackling.

    The fact it's free and open source is great. The fact I can make an entire game in it without Adobe's Flash IDE, bringing in raw assets (mp3, graphics, etc..) and tie into compiled Flash assets (swcs) make it indispensable. I'm hoping the community efforts to get it working on Linux and Mac OS succeed as it's the only reason I start up Parallels on my Mac (other than to play a game or two of "Plants vs. Zombies.").

  176. Emacs vs vi by tjwhaynes · · Score: 1

    On side of "Emacs" one has to accept that some workflows would be impossible, since there might be no ready button for it. Side of "vi" is flexibility. Side of "Emacs" is conservatism.

    I'm in danger of fanning the flames here but I really think you are way off target on the above statement.

    If you lift the lid on what Emacs can do (as in, you grok Emacs lisp), then Emacs offers a level of flexibility that can't be matched by vi. I've written utilities built into Emacs to crawl through custom traces looking for specific patterns and summarizing them on the fly as you move through files. View-linkage routines to allow you to navigate two related files (not two similar files - we're not talking about ediff-buffers here) in lock-step. Idle timers allow you to keep internal structures reasonably current without causing the interactive performance of Emacs to suffer. The list goes on.

    Vi is extensible. Emacs is more extensible.

    Cheers,
    Toby Haynes

    --
    Anything I post is strictly my own thoughts and doesn't necessarily have anything to do with the opinions of IBM.
    1. Re:Emacs vs vi by ThePhilips · · Score: 1

      ... we haven't "vi v. Emacs" flames for a while ...

      If you lift the lid on what Emacs can do (as in, you grok Emacs lisp), then Emacs offers a level of flexibility that can't be matched by vi.

      Very true. And every VIM and Emacs user knows that well.

      Emacs is more extensible.

      The problem is that Emacs is *too* extensible.

      I once tried to find a way to override Tab in one of its modes (during my last Emacs trial). After two day when I reached 7th level of Tab hook overload I stopped abruptly and swore to never ever try to learn Emacs again.

      It is *too* extensible.

      And it is already out-of-box extended too much, up to the point where 99% of its users do not understand how Emacs actually works. During my trial I have tried also to locate whoever does understand that, only to find out that most Internet populace (and all of my Emacs user friends) have absolutely no idea on how to configure anything in Emacs. Instead, everybody simply copy-paste parts of .emacs.el files they find on Internet.

      I went VIM way for a simple reason: I can learn it on my own, gradually and deeply. Learning Emacs in a timely fashion proved to be nearly impossible (unless of course one has lots of spare time to reverse engineers the decades of CL hacks which went into it already).

      That's why I earlier drew the parallel between Emacs and IDE. The actual difference isn't that big, as Emacs offers more functions than some commercial IDEs. Many IDEs are black boxes due to proprietary nature. Emacs is a black box due to steep learning curve one encounters when s/he tries to "lift the lid". And I know that for a fact: I have tried twice (2 times 2 weeks; before I finally settled on the VIM) to do it.

      --
      All hope abandon ye who enter here.
    2. Re:Emacs vs vi by tjwhaynes · · Score: 1

      The problem is that Emacs is *too* extensible.

      ...snip...

      And it is already out-of-box extended too much, up to the point where 99% of its users do not understand how Emacs actually works.

      Nothing is too extensible .. that's like saying that a language can only have so many features. However, Emacs can be hard to configure for someone who is new to the platform (and yes I use the term platform for the emacs environment). If you are lucky enough to have a Emacs Guru around when you have questions, then you stand a better chance of surviving first contact with the Emacs underbelly. It also helps if you are comfortable with lisp and the hook concept that Emacs makes extensive use of.

      Assembling your environment by accreting bits of configuration is a highway to Problemville. You probably just needed to add a local-set-key sexp for the appropriate major or minor mode hook to override TAB. Knowing which key map is current is the trick.

      Cheers,
      Toby Haynes

      --
      Anything I post is strictly my own thoughts and doesn't necessarily have anything to do with the opinions of IBM.
    3. Re:Emacs vs vi by mario_grgic · · Score: 1

      vi can't be compared to emacs at all. Emacs has way more functionality and it extensible.

      VIM however is something else. VIM has its own Turing complete language that you can pretty much do anything in. It may not be the easiest or most intuitive language, but you can do a lot of things to extend VIM.

      --
      As the island of our knowledge grows, so does the shore of our ignorance.
    4. Re:Emacs vs vi by ThePhilips · · Score: 1

      Assembling your environment by accreting bits of configuration is a highway to Problemville. You probably just needed to add a local-set-key sexp for the appropriate major or minor mode hook to override TAB. Knowing which key map is current is the trick.

      And in VIM it takes less than a minute. Without any tricks. And is well described in its near-perfect documentation.

      Yet, imagine me of ~15 years ago: fresh Linux user who had to pick an editor for a life. I spent two weeks in Emacs and two weeks in VIM. Most problems in VIM I have solved by end of the first week and second week I could already work. With Emacs, by the end of the second week, I was simply frustrated that even its developers have problems grasping all the details. I attempted similar reevaluation of Emacs few years later when I was more versed in the ways of *nix. Time after time I need something feature-laden like Emacs and my new colleague had worked in Emacs 20+ years, what gave me short lived hope that I will finally manage to tame Emacs. But it ended with much the same results as before. And answers I got were also the same as before: "oh. dunno. just copy my .emacs.el. it should be OK."

      --
      All hope abandon ye who enter here.
  177. Visual IDEs ranked for Windows and Linux by Anonymous Coward · · Score: 0

    My choices for Visual IDEs:
    Windows Platform (Ranked as numbered)
    1. Visual Studio (free edition for C++)
          (fastest C++ compiler, standard compliant, the best debugger on earth)
    2. Netbeans with C/C++ plugins
          (closest competitor to Visual Studio, save debugger front-end all other features equally good, simple project and solution management (as compared to Eclipse, very good for Java too, other language support, available both on Linux and Windows)
    3. QtCreator
          (I rate this below Netbeans only because it came later, unique feture is its bundles Qt SDK (the GUI library of future) available both on Linux and Windows)
    4. Eclipse

    Linux Platform

    1. Netbeans (the best on Linux)
    2. QtCreator (could have ranked it 1.5)
    3. Eclipse

  178. Qt Creator is working for me by tricky317 · · Score: 1

    I spent some time playing with Qt Creator last weekend at the recommendation of a friend, and I'm definitely liking it so far. Code completion, code folding, and the integrated debugger seems to work pretty well. And it's cross platform Windows and *nix, with a drag and drop GUI WYSIWYG editor. I believe it's C++ only, but it sounded like that's type of coding you were doing.

  179. My $0.20 by Anonymous Coward · · Score: 0

    I use emacs when i do some small codes. I really like the intendation and highlighting feature of emacs.
    For large stuff i use netbeans. Both netbeans and eclispe are extremely large apps, but i feel that netbeans is lighter than eclipse.

    As far as tha original questioners question goes, it seems he just wants a light weight ide to do some occasional coding on "windows". So emacs and vim are out. VS, eclipse and netbeans are not lightweight. That leaves him with Dev-C++ and CodeBlocks. The 2 are really good but its sad to see that Dev-C++ hasnt been updated in quite sometime.

  180. Seriously, invest in one of the big two. by Lally+Singh · · Score: 1

    The reason the big two (Vim, emacs) are so popular is that they honestly are better tools than you're getting with a normal IDE. The stuff you traditionally get with IDEs: code browsing, graphical debugging, etc. become less and less valuable the better you get as a programmer (the better programmers usually end up with specialized tools for that stuff, which are more powerful than IDEs). However, the advanced text editing you get in these tools only gets more valuable over time.

    To each their own on their selection between the two, but I"ll describe my work in Emacs:

    I use it on mac, and windows, and a few big-iron unixes.. I share most of my .emacs between them, with my own customizations. I use org-mode to make checklists and plans for my work (e.g. which code has testcases done, which ones have testcases to write?). I use yasnippet for a template/snippet library, which lets me embed lisp code that evaluates at snippet insertion time (like generating proper INCLUDE_FOO_BAR #defines, documentation blocks, or namespace declarations). ido-mode means I only ever have to specify a filename by substring (with tab-completion). CTags support means I hit Alt-. to lookup a symbol name in an arbitrarily-large project, without caring about how my project is built or the platform it's on. On windows Visual studio is my build tool, and debugger, and emacs handles the text itself. The difference is quite substantial, and worth the setup. The only thing I wish it had was a way to tell an external editor which line to highlight while debugging (I use the built-in editor to list code while debugging).

    --
    Care about electronic freedom? Consider donating to the EFF!
  181. project size by Anonymous Coward · · Score: 0

    small projects I use vi, notepad++, etc. larger projects i use an IDE (usually netbeans).

    netbeans for just about everything
    IDLE for small python projects (netbeans otherwise)
    visual studio express for c#
    vi for console work

  182. APL by AliasMarlowe · · Score: 1

    APL is the IDE, editor, debugger, interpreter, compiler, help center, etc. It is the one true IDE which I have used for more than 35 years.

    Singing:
    "Rho rho rho of X
    always equals one.
    Rho is dimension,
    rho rho rank,
    APL is fun!.

    --
    Those who can make you believe absurdities can make you commit atrocities. - Voltaire
  183. It's programmability I think by Anonymous Coward · · Score: 0

    I'm surprised nobody's mentioned it yet. My favorite thing about vim / bash / make / gcc is programmability. I'm a programmer, right? So I know how to program things. So if my editor, compiler, and debugger are all programmable (ie they're command-line tools that can be tied together with my shell, ie bash, or with screen), then it makes me happy. The real reason emacs keeps catching up to IDEs (oh and can read your email and news and surf the web) is because it's really, as I understand it (not an emacs expert) not so much an editor but a scripting engine for a dialect of lisp that happens to have a bunch of convenient editor-like features.

    I don't use IDEs much myself; are they as programmable as the suite of command-line tools I use? I think they're not so much programmable as they are configurable, but that's just a guess.

  184. What I use by EkriirkE · · Score: 1

    Visual Studio is what I started on so I am biased to that, though I still am on v6 ('98).
    I've been migrating to Code::Blocks which seems comparable, but with more compiler options. It recognizes gcc from a CygWin install and compiles native windows apps w/o needing cygwin1.dll. I even got it working with BorlandC++ 5 (free). Debugging is decent on it as well.

    ...I'm going to have to discount any Java-based IDE as they will consume all your resources eventually.

    --
    from 09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
    to 45 2F 6E 40 3C DF 10 71 4E 41 DF AA 25 7D 31 3F
  185. Ultimate++ by mofag · · Score: 1

    not only a very nice free IDE but an open-source cross-platform class library. My code compiles and runs on Windows (32 &64) Ubuntu (32 & 64) Red Hat Enterprise, FreeBSD - thats all thats been tested so far but no reason to think the list doesn't continue.

  186. Borland's CodeWright by shahn2 · · Score: 1

    Anyone still use Borland's CodeWright tool?? Very good tool for editing C or C++ code/projects on Windows. Have some good functions to outline functions/procedures and a "Brief" mode as well. For the Unix/Linux folks, you can set the editing mode to "vi" and you can use the same commands for vi in this environment. Sadly, they dont support it anymore but it IS a good tool.

  187. QtCreator by xenoterracide · · Score: 0

    This is the only IDE that's getting my vote atm. since it has a 'fakevim' mode plus a lot of other IDE features. being primarily a vim user having a vim mode is essential (even though it's not perfect). It seems to be pretty good in general, but I haven't used a lot of IDE's, I like it better than VS, Eclipse, and Netbeans, all of which I stopped using after an hour or so of not accomplishing anything.

  188. Dreamspark by Anonymous Coward · · Score: 0

    If your a student you can get VS 08 and 05 for free via microsoft dreamspark program at dreamspark.com. As well as a bunch of other awesome stuff that I like cause Im a windows guy. Posted AC because I dont want to get flamed for saying that

  189. Features in EMACS / VIM by Anonymous Coward · · Score: 0

    Can emacs/vim for example organize java imports or do some other useful automation, like create constructor (with proper arguments) that will initiate all instance fields in a class? Things like that greatly increase efficiency.

  190. jEdit by Anonymous Coward · · Score: 0

    jEdit is a superb text editor. It is written in java so I can easily run it on Linux, Winblows and Craple. I mainly develop C++/Python on Ubuntu 64.

    jEdit has a macro recorder and editor, and all kinds of plugins. One can easily browse for a plugin using the plugin manager and install new plugins.

    jEdit allows one to customize nearly everything, syntax highlighting, code folding, hot keys.

    I don't use any auto intent scheme. With jEdit, I can highlight several lines and simply hold down the ALT key and press Arrow Left or Arrow Right to shift the lines left or right.

    jEdit also allows block selection, copy and paste. This is a real powerful feature.

    Check it out! www.jedit.org

  191. Vimaniac by Anonymous Coward · · Score: 0

    vim supports any language, since binary to natural languages -- just whisper in front of screen and it will writes what you are telling.

  192. CodeLite? by stonewolf · · Score: 2, Informative

    Take a look at http://www.codelite.org/. I occasionally teach C++ and I have the problem that not all students have a C++ dev platform installed. If they have one, I let them use it. If not, I recommend CodeLite. I spent a lot of time looking for an cross platform free IDE that I could recommend to students. I needed something that worked. Something that was pretty simple to get people up on running on. And, because students come from many backgrounds and have different ability to pay I really wanted something that was free. I used to use Dev-C++, but support for that project is over and wxDev-C++ is to closely tied to wxWidgets.

    CodeLite works, is reasonable easy to learn, and it is free.

    Stonewolf

  193. JDeveloper from Oracle by Anonymous Coward · · Score: 0

    Free, excellent!

  194. A very personal choice.... by stonewolf · · Score: 1

    I feel that I am older than the IDE, if you don't count the line number editor in BASIC. I learned to program using punched cards... Yes, I am that old and I am only 56. I have seen a lot of IDEs come and go and I have used several. (I was really in love with the original TurboPascal IDE on DOS. :-) I've used several others including different generations of MS VisualStudio. I think I have learned a lot about how programmers program.

    What I have learned is that everyone has their own style that fits the way their minds work. If allowed to programmers will eventually find a set of tools that works for them. Once they have found that set of tools they should be allowed to continue to use them.

    I learned to program during a time when it felt like every new project was on a computer with a different architecture with a unique operating system. Even machines with the same architecture might have different operating systems. (How many OSes were there for the PDP 11 anyway?). I got to the point where I would invest no (zero) time in learning the new OS. All I wanted to know was how to invoke the editor, call the compiler/assembler, run a batch file (if the OS was that sophisticated) and some basic file handling.

    As the chaos settled it became worthwhile to learn some more sophisticated tools. I spent several years on a DEC 20 and learned emacs. (My brain and vi do not get a long. :-). About that time I ran into MG (also known as MicroGNU) a small subset of emacs written in highly portable C. I carried it along with me for many years and used it for all my DOS C and asm programming. I used gemacs on VMS. I have been using variants of emacs for around 28 years now. I am too the point where I do not remember the key strokes to perform a task, my fingers just do the right thing.

    Emacs + make works for me. But, I do not recommend it to new programmers or casual programmers. If emacs works for you, you will find it, love it, and use it. If vim works for you, then you will find it, love it and use it. If VisualStudio works for you then... actually I would never recommend proprietary tools to anyone. Tomorrow you might find yourself working on a different OS and all your investment in learning VS will be lost. FLOSS tools can be taken with you. And, you can continue to learn them for ever because they can never be taken away from you. I still have a copy of mg in a .zip file somewhere. If I have to, I can make it work on any machine and OS that has a text based display.

    Stonewolf

  195. VS GCC based IDEs on windows by Anonymous Coward · · Score: 0

    Microsoft's compiler creates much smaller and faster executables when developing for windows than GCC would (and most of IDEs I've tried use GCC in the background).

    I find Dev-C++ clunky and buggy, and its integration with GDB is so poor that I find GDB to be of better use from command line. By contrast, the best debugging utility I've used on windows is Visual Studio's.

    So all in all, for Windows, VS reigns supreme. (IMO)

  196. Eclipse by Anonymous Coward · · Score: 0

    Get smart. Make the switch to Java and start using Eclipse.

  197. Eclipse or Vim by zukinux · · Score: 1

    Eclipse is very nice IDE and very useful, though competitor to Visual Studio (which isn't free and very CPU/memory consuming)
    Vim is great if you get to know most shortcuts and download (/create/modify) a nice .vimrc file (http://dotfiles.org/.vimrc).

    Check them out and configure whatever you want :) Goodluck.

  198. GNAT Programming Studio (GPS) by FBSoftware · · Score: 1

    I use GPS available in the GNAT GPL packages at http://libre.adacore.com/libre/. It supports Ada, C, C++, Python, SPARK, etc. Its probably the best free IDE for Ada and SPARK, especially for use on large projects.

  199. geany by Anonymous Coward · · Score: 0

    www.geany.org nuff said.

  200. Netbeans by irishfury · · Score: 1

    Netbeans is free and easy to install and works great. It supports multiple languages. Great online community e.g. support, documentation, tutorials, etc. It freakin' works. Everything about getting Eclipse up and running sucks. Installation, getting plugins, documentation, etc. If you can get Eclipse up and running it's pretty good, but I still like Netbeans better.

  201. Depends on what you're trying to do by shutdown+-p+now · · Score: 1

    On Windows, two prime candidates would be Visual Studio (Express if you want it free), and Qt Creator. Each has its own strengths.

    Visual Studio has two things really going for it as far as C++ development is concerned: code completion, and debugging. Let me explain what's so special.

    Code completion is a damn tricky beast for C++. I've yet to see an IDE that does it 100% correct (which isn't surprising, since dealing with templates requires a full-features C++ parser and template instantiator just to get completion lists). However, of all C++ IDEs that I know, VS deals with C++ templates best. Some trivial examples to test it:

    #include <string>
    #include <vector>
    int main() {
      std::vector<std::string> ss;
      ss. // at this point, you should _not_ see method "flip" in the completion list
      ss.begin()-> // at this point, IDE should list all members of std::string
     
      std::vector<bool> bs;
      bs. // at this point, you _should_ see method "flip" in the completion list
    }

    If the above behaves as comments describe, then your IDE understands operator overloading, templates in general, and template specializations in particular. VS (2008, at least) does it right.

    Second is debugging. One real nice thing that VS has going for it there is type visualizers for the watch windows. Basically, when you have a std::list or std::string, normally, since it's a class, the watch window will just show all its members, and you'll have to navigate to the underlying data yourself (and, in case of list, actually go through the chain of linked nodes until you get to the one you want). In VS2005+, however, there is an ability to define custom visualizers for types, that represent an instance of that type in some more convenient way. For example, for all STL containers, it will display the count of elements, and list the elements themselves (as if it was an array); for std::string, it will show the string; and so on. Of course this can be disabled for individual watch expressions when you actually need to see the real members (but frankly, unless you're debugging STL containers themselves, how often would you want to do that)? That feature is even customizable, albeit in a limited way (but still enough to cover all STL, ATL and MFC containers).

    Now Qt Creator shines in a different area - it's a very, very nice RAD UI tool. Qt itself is simply the best C++ toolkit for that sort of thing today, on any platform, and Qt Creator is decent IDE with integrated visual designer, debugger, and other nifties. Note that you don't get MFC with Visual C++ Express (and even if you would, it's much more ugly and low-level than Qt). You can of course still use something like wxWidgets with Express, but arguably it's still worse (too MFC'ish for my taste), and you don't get any integrated designers.

    1. Re:Depends on what you're trying to do by dslbrian · · Score: 1

      You can of course still use something like wxWidgets with Express, but arguably it's still worse (too MFC'ish for my taste), and you don't get any integrated designers.

      For wxWidgets, although not completely integrated but very well done IMO, installing wxPack on a VS install will give you wxFormBuilder (a GUI designer which is also usable/installable standalone). In practice I've found it to be as good as being integrated, and I've done several complex GUIs in a fraction of the time hand coding would have required (and it has a more consistent code style than I do when I manually code the GUI elements).

  202. Dev 10 by Anonymous Coward · · Score: 0

    Visual Studio 2010 beta 1 - but you wouldnt hear about that on /.

  203. Turbo C++ For DOS by Anonymous Coward · · Score: 0

    I wish I still used Turbo C++ for DOS, more accurately. Back in the day, that was one hell of a compiler/IDE system - or at least, it was when I was a teenager. Of course, "the day" was 14 or so years ago, but still. I admit to secretly lusting after Borland C++ 3.x, but really, so far as I know, Turbo C++ 3.x had most of the same tricks of whatever version you picked up (DOS or Windows), and as I was a game programmer diddling around with hardware stuff on DOS, that was all I needed.

    Which actually brings up another question - does anyone know of a GOOD knock-off of the Turbo C++ DOS IDE for Linux and/or Windows? I'm talking the text-based graphics here. The closest I found was some text editor for Linux I saw years ago that only bore a vague resemblance and ultimately didn't work well, and RHIDE (which was an IDE for DJGPP that started out great but the maintainer, so far as I know, vanished).

  204. The debugger is the problem by cowdung · · Score: 1

    I've been looking for an IDE for quite some time for my students to use in class.

    The requirements are:
    1. It should be fast
    2. Easy to download and not require an online connection to use/activate
    3. It should have the usual editing features
    4. IT SHOULD HAVE A GREAT DEBUGGER

    I'm trying to encourage my students to use a proper debugger.
    Here's what I know:

    Eclipse: weird installation process... compiler/debugger need to be configured separately.. lousy debugger
    Netbeans: also weird installation process.. compiler/debugger need to be configured separately.. lousy debugger
    DevCpp: good installation.. ok use.. buggy debugger
    Visual C++ Express: last time i tried you need internet to install.. hard to configure projects to use pure C.. good debugger.

    For now we mostly use DevCpp. Maybe I'll learn Delphi and fix it up a bit.

  205. Xcode by dynamo · · Score: 1

    XCode is the best I've used, and I use it every day.

  206. ECLIPSE by molex333 · · Score: 1

    I use Eclipse (For Java) but I know that they do make a C/C++ version. There is a real nice community surrounding the project as well.

    --
    Somewhere in a dark place you will find:
    www.m1
  207. Netbeans! by omission9 · · Score: 1

    Netbeans is the best IDE I have ever used. Netbeans is written in java so it will run on multiple platforms. While it has lost some
    "street cred" to Eclipse it is still wildly popular and attracts developers to volunteer their time to add support for many languages.
    Plus, Netbeans in and of itself is a development platform which can help you create some very nice apps.

  208. Visual Studio Express by Anonymous Coward · · Score: 0

    If your primary development goal is to target Windows, you just can't beat Visual Studio Express.

    It just has so many productivity enhancing features. IntelliSense is a godsend. Debugging tools are powerful; the editor is really pretty good... I don't think anything comes close. (For developing on Windows, anyway.)

  209. VIM by Anonymous Coward · · Score: 0

    I have tried NetBeans and Eclipse but I still find VIM easier

  210. jEdit + Ant by Anonymous Coward · · Score: 0

    jEdit + Ant is the best I've ever used. I hate bloated IDE's that try to do too much and cram too much on one screen. Having to wait for my code to be typed in or trying to clean up IDE-created code is a waste of time. I just need syntax-coloring and indenting (along with building/compiling/coding from Ant). Code aid is OK too, but not necessary. I son't like Eclipse, Netbeans or Visual Studio. Beasts every one of them.

  211. Eclipse? by Anonymous Coward · · Score: 0

    I've been using Eclipse for a few years now, as my employer decided to standardize on that platform (in the IBM "RAD" incarnation) for Java development (but I also have Ganymede for another development effort). A few gripes, yes...

    - Different parts of the IDE behave differently. That is, one part looks as if the interface was designed by one committee, while another part seems to have been designed by a completely different committee with different evangelical tendencies. So many completely different approaches to interfaces, combined into a single IDE.

    - I have yet to experience the editor doing very much that I actually wanted to happen. It indents the way it wants, and not the way I want. Configuring each new project's preferences can partially help, if you have the time to do that. Context highlighting and mouse over help? Good for 30 second system freezes. Sure... I can yank out the editor and replace it with something else. Not sure why I should have to, but yes, it can be done.

    - Rebuilding projects after the IDE has eaten them can be quite tedious, involving days. Doesn't happen often, but you'll be (horribly) impressed when it does.

    - The integrated debugging often seems to require Task Manager be running so you can kill the IDE and restart. Never fails to impress me...

    Generally, I consider Eclipse "not ready for prime time." I remember better IDEs 10-15 years ago, but hey, they weren't free. Eclipse in one form or another is also mandated here at the office, so it's not going away. Oh, wait... There's SlickEdit/Textpad and the command line. Many here do seem to prefer that approach...

  212. What more? by cbhacking · · Score: 1

    You ask what more I could want. There's actually lots of answers to that, but probably the biggest and most relevant is automatic documentation and syntax assistance. When you're using an API that you've used many times before, this is of course unecessary, but often you need to work with APIs that are at least a little unfamiliar. In this case, even something as simple as a listing of a function's parameter types and names, and preferably its return type, can help a lot (moreso if it has the Windows API IN/OUT/OPTIONAL tags). Ideally, the IDE would also display the documentation for the function (doxygen-style or even just a single-line comment) - this is especially helpful with macros since they are much less self-documenting. Most IDEs have these features.

    Automatic completion of variable names and such is nice, but often you need more than that. The core C/C++ libraries aren't so bad, but many third-party libraries are rich with overly-long class, type, function, or macro names. Remembering these can be a bitch, and most editors will only auto-complete names that you have already used in the "document" (code). By comparison, most IDEs will build up symbol tables from your libraries, etc. which makes it possible to find the name you want even if you've not used it before. Visual Studio's "Intellisense" will even determine, based on context and previous usage, which auto-complete options you're most likely looking for and will place them at the top.

    Background syntax check/compile. Rather than writing a bunch of code, running make, waiting while it recompiles *everything* because somebody touched a high-level header, and eventually getting to your code only to have some 157 lines of mostly incomprehensible error referencing things that don't even appear to be on the line for which the line number is given, you can get a nice red underline exactly under the incorrect tokens, with an explanation of why it is incorrect and often even a simple way to fix the problem (yes, I meant to put "using SomeRandomNamespace;" at the top, thank you for the reminder). This is also an easy well to tell if you've fixed a large number of those 157 errors, or only one, or you fixed a bunch but you create 37 new ones... you get the idea. IDEs do this kind of check, and it is a lot more helpful than slogging through a bunch of build errors.

    --
    There's no place I could be, since I've found Serenity...
  213. Re: OP by d3jake · · Score: 1

    I like Code::Blocks a lot, it lacks features of Visual Studio, but it is has plenty for developing applications.

  214. I feel old... by pjr.cc · · Score: 1

    When i started coding there was no such thing as an idea, really. I think my first IDE was turbo c++ (a dos application).

    The one constant in my life has been VI(m) and i've come to rely on it quite heavily.

    When I got into visual studio, there was even a plugin back then to make vi work as the editor for visual studio.

    But I've also used alot of IDE's, they are "handy" for a number of reasons. Most of it comes from hitting compile and getting links direct to the place in your code when your code failed to compile.

    In my more recent time i've used (and not hated) the following IDE's.

    Code::blocks
    KDE Kdevelop
    Visual Studio
    Eclipse
    Netbeans (v5 was good - version 6 felt like i was coding over vnc via a 14.4k modem it was sooo slow and laggy).
    PHPEdit (err, commercial now i think and only php)
    Anjuta - fairly simple but binary and fast
    Gleany - probably starting to stretch the meaning of "ide" a bit here
    Monodevelop and sharpdevelop.

    Theres more in there worth mentioning - I just cant remember them all. The thing I really prized in an IDE thought was its ability not to tie me to it (eclipse is great for this, mostly). Like VS and Kdevelop have massive code writing bits that do alot of work for you and when you decide "ahh, i need to use a different IDE" you spend alot of work moving away from them - thats frustration personified.

    Eclipse is a beast of a tool, anything you can ever want to do you can find a plugin for (or modify settings to do it for you - like getting it to ssh into another box to actually execute the compile). The sheer bredth of whats available for eclipse is what sets it apart from everything else.

    Kdevelop was/is absolutely brilliant at handling coding for unix/qt (it has a "manager" for the automake process which is just awesome).

    And the rest all work quite well.

    However, my last word is simply this - nothing (imho) can replace a good editor (such as VI). The IDE can provide briliant little extended functionality but nothing is anywhere near as important as what the editor does, this is where you type your code and ultimately the most important part of the process. The generic editors in most IDE's (including visual studio) do have some functionality that can be quite broad, but when you get to know an editor as well as you can know VI there's really nothing that compares. (by the way, im a VI boy, but coders i know who use emacs can do anything i can just as efficiently - so choose emacs or VI you cant go wrong).

    The problem is learning an editor like VI (or emacs) takes patience and often its not until someone shows you some little trick they did in VI without even taking their hand off the keyboard that makes people go "wow, thats some pretty useful functionality" and you start wanting to learn more. But being able to do almost anything from the : menu in VI with a few choice commands is something that truely becomes invaluable in terms of efficiency (i.e. not reaching for the mouse). No one really seems to appreciate that until they actually see it in use though.

  215. Watcom by gridsleep · · Score: 0

    Open Watcom and Euphoria. Any Forth is fun to noodle around in, too. But the first two are about the easiest, fastest, and most portable (sorry, Visual-whatever people, but chaining myself to Microsoft is not an option.)

  216. Scala under Netbeans by WamBamBoozle · · Score: 1

    Frankly I'd rather wear a cowboy hat and drink out of a toilet than program in C++. Scala under Netbeans -- now that is the good stuff!

  217. code::blocks by zero_himself · · Score: 1

    So far, I have used VS, VIM, EDIT, notepad, gedit, etc..and my favorite choice after VS is Code::blocks. It can be configured to create makefiles, projects, and can create them for VC and GCC. IMHO it is the next best thing to VS(and runs on linux)

  218. Ultimate++ (TheIDE) by C.Jota · · Score: 1

    Ultimate++ is a project as an IDE with a GUI Creator and a library (faster replacement for much of STL) with many additional helpful libraries that make C++ development so much smoother. http://ultimatepp.org/ Check out their forums as they are very active. I would download the latest SVN build from here: http://code.google.com/p/upp-mirror/downloads/list

  219. Eclipse SDK or jEdit by Anonymous Coward · · Score: 0

    Eclipse SDK or jEdit

  220. I use Code::Blocks with great success by code-dweller · · Score: 1

    I have used many IDEs over the years from Borland, M$oft, Metrowerks, IBM - but now I use Code::Blocks.

    I write primarily cross-platform command line and server apps.

    What I like about C::B is that it doesn't get in my way and I can easily switch back and forth between my Windows and Linux machines without skipping a beat. Using MinGW under the covers and watching my coding I am able to truly "write once & run everywhere".

    C::B gives me the basic things I need and then gets out of the way... What's not to love?

    I could use anything -- but C::B is consistently getting the job done for me.

    I also poke at things from time to time with Visual Slick Edit and of course VIM ... but I wouldn't classify either of those as IDEs (not the way I use them anyway)

  221. Re:KDevelop by aminorex · · Score: 1

    Stalinism works better than autoconf.

    --
    -I like my women like I like my tea: green-
  222. VC++ or Qt Creator by agentk · · Score: 1

    VC++ 9 is OK. You just have to ignore/disable what you don't need, and realize that it really wants you to write C# or "Managed C++", rather than pure C++ so watch out for that.

    But I'd also check out Qt Creator: http://www.qtsoftware.com/products/appdev/developer-tools/developer-tools (download at the bottom of http://www.qtsoftware.com/downloads). It's intended to be used to use Qt to make GUI applications but you don't have to use Qt. It's a nice simple interface, no feature bloat (yet?).

    --

    VOS/Interreality project: www.interreality.org

  223. VC++ EE by Delmania · · Score: 1

    I'll chime in here with another plug for Visual C++ Express Edition. You don't get either MFC or ATL, but for what you want, you don't need those. Also, VC++EE can process makefiles. Augment it with Boost and the platofrm SDK, and you'll have a solid IDE for developing Windows application.

  224. VSE by pnetz · · Score: 1

    This might not be popular on this board, but for C++ on Windows with varying target applications there is only Visual Studio in some flavour. Preferably with the VI plugin. Nothing comes close...

  225. Source Insight by masmullin · · Score: 0

    I love source insight... but it's not free.

    Are there any free IDEs that can match the power of source insight (Kdevelop is pretty darn close, any on mac/windows?)

  226. Visual Studio by alexo · · Score: 1

    I churn C++ code under VS2005 at work.
    All in all, I like the IDE, although free-floating edit windows would be nice.

    That said, I find Visual Assist indispensable.
    It is expensive but if you can get your employer to pay for it, I highly recommend it.

    I also use Artistic style (free) to reformat code, and PC-Lint ($$$) to find lurking problems.

  227. Ide by cavedweller96 · · Score: 1

    I have used Several IDEs in a seach for a perfect one. Plain text like vi or gedit is fine, but at the moment I am likeing Code:Blocks