Slashdot Mirror


What Tools Do FLOSS Developers Need?

An anonymous reader writes "I am a free software developer; I maintain one relatively simple project written in C, targeted at end users, but I feel that I could contribute something more to the FLOSS community than my project. Instead of focusing on another project targeted at end users, I thought that I could spend my time working on something FLOSS developers need ('Developers, developers, developers, developers!'). The question is: what more do FLOSS developers need from existing development tools? What would attract new developers to existing FLOSS development tools? Which existing development tools need more attention? I can contribute code in C, Python and bash, but I can also write documentation, do testing and translate to my native language. Any hints?"

310 comments

  1. Visual Studio replacement on Linux by sopssa · · Score: 4, Informative

    Visual Studio is the favorite IDE for lots of programmers and without a doubt still the one thats considered best there is.

    However I've started doing some Linux programming along with other languages that could be developed on Linux (PHP, Delphi/Kylix). However the IDE's I've tested dont seem to compare with Visual Studio or even Delphi's IDE. In most cases they're mostly somewhat advanced text editors and building and debugging is more inconvenient. They just dont feel like complete IDE's where you can do your work. Is there such professional suites available on Linux and if not, what could be done to improve the existing IDE's and tools to that level?

    1. Re:Visual Studio replacement on Linux by Akido37 · · Score: 3, Informative

      Eclipse doesn't work for you?

    2. Re:Visual Studio replacement on Linux by phyr · · Score: 1

      Definitely not the best there is. Try the community edition of IntelliJ IDEA and you'll see what really helpful tools can do for you. Code with pleasure.

    3. Re:Visual Studio replacement on Linux by swanriversean · · Score: 2, Interesting

      Eclipse is a fairly good ide, it could use help with C/C++ development tooling.
      gdb could stand some love, especially so that it can better be hidden behind a UI.

      --
      Be who you are and say what you feel, because those who mind don't matter and those who matter don't mind. - Dr. Seus
    4. Re:Visual Studio replacement on Linux by SSpade · · Score: 4, Insightful

      I'll take Qt Creator over Visual Studio for C++ development any day.

    5. Re:Visual Studio replacement on Linux by oracle_of_power · · Score: 1

      Eclipse and Netbeans are extremely good IDE's. I use Eclipse for PHP and BlackBerry Development and use Netbeans for some java development, however they still do not compare to Visual Studio.

      --
      Arctic Turtle
    6. Re:Visual Studio replacement on Linux by Microlith · · Score: 2, Insightful

      Between Redhat's Insight tool and DDD, it's already well hidden behind UIs. Sure they aren't shiny and glossy with anti-aliased type, but they do the exact same job that the VS debugger does with allowing you to step through the code.

      In fact, there's nothing special I've seen in Visual Studio's debugging that couldn't be done with DDD.

    7. Re:Visual Studio replacement on Linux by WillAdams · · Score: 2, Interesting

      Try an Interface / Project Builder replacement instead:

      http://www.gnustep.org/

      InterfaceBuilder.app clone:

      http://www.gnustep.org/experience/Gorm.html

      ProjectBuilder.app clone:

      http://www.gnustep.org/experience/ProjectCenter.html

      NeXT used to charge $4,995 / developer seat for such tools --- now one can get them for free (even w/ a Mac, one can get a free on-line membership in the Developer's Connection and download the latest version)

      William

      --
      Sphinx of black quartz, judge my vow.
    8. Re:Visual Studio replacement on Linux by Anonymous Coward · · Score: 0

      Yes worked with both, unfortunately it still does not hold up to visual studio. I sense you have never used visual studio.

    9. Re:Visual Studio replacement on Linux by nacturation · · Score: 1

      Speaking of which, are there any of the original videos floating around demonstrating building an app using InterfaceBuilder? I seem to recall one where Jobs developed a contact management app from scratch using point and click... but it may not have been Jobs.

      --
      Want to improve your Karma? Instead of "Post Anonymously", try the "Post Humously" option.
    10. Re:Visual Studio replacement on Linux by xTantrum · · Score: 1

      I have to second this. I absolutley abhor the IDE's on Linux. They are either way to feature rich (read bloated) like Eclipse, too annoying to configure, like Anjuta. The only decent one is Geany....minimally. I'd love to see a decent IDE like DevC++ on linux. I like the CLI as much as the next one, but when i'm coding a major project its hard enough doing that, i don't have time to be worrying about make, running gdb again etc... i just want it to work. I was actually thinking of even a little plugin to gedit that calls GCC and GDB on the back end. Again, i have to stress DevC++ was amazing. too bad its not on nix nor is it being maintained.

      --
      $action = empty(PHP) ? backToC() : unset(PHP) ; "when the concrete cases are understood, the abstractions are readily
    11. Re:Visual Studio replacement on Linux by teeks99 · · Score: 2, Informative

      I tried this out for the first time a couple weeks ago (after several years of Visual Studio usage) and was very hopeful...however I left feeling that it wasn't quite finished all the way. I got the impression that it was just a bunch of tools glued together with a rapid-development type GUI framework.

      That said, I was quite pleased with it overall. I definitely will strongly consider using it next time I start a project. For my two cents, I think this is a great example of what the author is looking for, a tool that will help FLOSS developers that could use a bit more help :-)

    12. Re:Visual Studio replacement on Linux by cjcela · · Score: 4, Insightful

      I agree. Visual Studio is by far the best out there, and it is painful not to have something comparable available in other platforms (I currently use OSX/Linux). I've been steadily moving away from proprietary tools and frameworks for the last 3 or 4 years, and it is a painful process. Eclipse is mostly good (excellent for Java), but when developing in C++, its debugger is not great. Same goes for Netbeans. They are 90% there, but the remaining 10% is so frustrating that makes large projects a pain. I am considered moving to Codelite instead, which feels to me a bit more like Visual Studio 6, and has much better debugger support for C++. On the down side, Codelite tends to be quirky on OSX.

    13. Re:Visual Studio replacement on Linux by Anonymous Coward · · Score: 0

      I use VS for C# since 5 years and about the same time with PHP and Eclipse and I like far more Visual Studio. You should try both for few weeks and you will be surprise how Visual Studio is a strong IDE for development.

    14. Re:Visual Studio replacement on Linux by Anonymous Coward · · Score: 0

      While I may compile my code with Microsoft Visual C++, I do all the editing with Bram Molenaar's Vim (on Cygwin) and compile by typing 'nmake' at the bash prompt.. I tried Eclipse for Java on Linux, but there the GUI also takes a long time learn just the basics and then still only slows your work down. Kdevelop was even worse. I had more success with Turbo C and Pascal on DOS.

    15. Re:Visual Studio replacement on Linux by sbeckstead · · Score: 3, Interesting

      There's nothing special I've seen in Visual Studio's debugging that couldn't be done with DDD
      This must be some new meaning for the word "done" that I have previously been unfamiliar with.
      Can you edit and continue when working with C++ or C#?
      Making changes on the fly is one of the premium features of Visual Studio and I have never seen it in any other IDE. True I haven't used all of them yet but I've been thru netbeans, eclipse and a few others. The integration of the IDE with the debugger is far more important than the utility of the debugger. I have seen this with python, lua and several interpreted basics but not with C++ or C#.

    16. Re:Visual Studio replacement on Linux by epiphani · · Score: 1

      gdb could stand some love, especially so that it can better be hidden behind a UI.

      THIS.

      Except for the second part of that.

      I want debugging tools. My personal favorite would be a heap explorer - something that maps a core dump to pointers, so I can map out the entire content of memory in my core dump visually and walk through it sanely. For example - I could look through a core dump and say hey, the buffer overrun that appears to have caused this belongs to this piece of memory - which follows this peice of memory over here which makes me think that my block allocator chewed up stuff it shouldn't have...

      Also - BETTER THREAD SUPPORT IN GDB. Debugging a threaded application is pure and absolute hell in gdb.

      --
      .
    17. Re:Visual Studio replacement on Linux by Kjella · · Score: 1

      At least if you're doing C++/Qt, then nothing beats Qt Creator... I had hope for KDevelop 4 for a while, but it seems to take forever and meanwhile Qt Creator has fixed most of the things I missed. I haven't done any really big scale development but at least for cranking out smaller tools it's fast and easy with graphic drag & drop ui designer, autocompletion and such that I expect and Qt is near a complete platform with IO, network, databases, xml, whatever. I generally don't have any other deps except the C++ standard, and not much of those either. I pretty much suck at debugging though so can't tell you much about that, I try to put in as many error and sanity checks as I can and qDebug() (the fancier versions of printf() ) my way out of trouble.

      --
      Live today, because you never know what tomorrow brings
    18. Re:Visual Studio replacement on Linux by Microlith · · Score: 3, Informative

      Can you edit and continue when working with C++ or C#?

      While it is an interesting feature, changing code at runtime always seemed suspect to me. I don't know if it's possible at all in Linux, and I know it's not possible in Windows if you're targeting a 64-bit platform.

    19. Re:Visual Studio replacement on Linux by Rysc · · Score: 1

      It was Jobs and (IIRC) he was doing a NeXT 4.0 promotional video.

      Something more recent which uses the actual GNUStep IB would be nice.

      --
      I want my Cowboyneal
    20. Re:Visual Studio replacement on Linux by oldhack · · Score: 1

      Haven't mucked with GDB for a long time. Are you still SOA when it comes to threading? Maybe GDB can use some work on that?

      --
      Fuck systemd. Fuck Redhat. Fuck Soylent, too. Wait, scratch the last one.
    21. Re:Visual Studio replacement on Linux by nametaken · · Score: 1

      I'd agree with this statement. I think the closest thing I've found to a slick IDE in Linux is QT Creator, which has their fantastic designer, a great editor, etc. all in one package. Obviously this is only good for certain things. NetBeans is also quite good, and considerably more flexible. At a distant third is eclipse, which is most flexible of all, but terribly clunky.

    22. Re:Visual Studio replacement on Linux by Stratoukos · · Score: 1

      Here it is. He is demoing NeXTSTEP release 3. The part where he builds the app starts at 23:09.

      --
      It may be 7 digits, but at least it's a semiprime
    23. Re:Visual Studio replacement on Linux by HeadSoft · · Score: 2, Informative

      Code::Blocks is a good one for Linux, it's not quite Visual Studio but it has most of the same features, the ones you actually use on a regular basis. I haven't tried the Windows version, but I know one exists as well.

    24. Re:Visual Studio replacement on Linux by Dadoo · · Score: 1

      I hear this about VS a lot. As someone who has never used it, let me ask, what is it, specifically, about VS that's so great?

      --
      Sit, Ubuntu, sit. Good dog.
    25. Re:Visual Studio replacement on Linux by EsbenMoseHansen · · Score: 2, Interesting

      KDevelop 4 is shaping up to be a very good IDE. Probably worth to try out a beta if you're into FLOSS. Does PHP (I hear) and C++ (I know) quite well. A few stupid corner that are not quite there yet, but most of the hard stuff seems to be working.

      --
      Religion is regarded by the common people as true, by the wise as false, and by rulers as useful.
    26. Re:Visual Studio replacement on Linux by sopssa · · Score: 0, Troll

      It's irrelevant to try to tell the good sides of using it. If you are doing application development, you have most likely used VS, and can see why its so much better than the other tools available. I could try to argue with technical points, but that would be pointless.

    27. Re:Visual Studio replacement on Linux by Anonymous Coward · · Score: 0

      Nothing. Having worked in Visual Basic 6/C++, then Java and now back in Visual Studio I was surprised how stagnant VS was. If you don't like know how your software is made, then VB is nice. It hides a lot from you.

    28. Re:Visual Studio replacement on Linux by bami · · Score: 1

      Things that I think it's great at is Intellisense (sort-of autocompletion), its code formatter (although that can get in the way sometimes) and its debug tools.
      Currently doing some development in C# under Visual Studio 2008, but my java work is done in Netbeans.

      You really feel that Netbeans is developed in java and is slow and everything, and it's just refreshing to work in VS again.

    29. Re:Visual Studio replacement on Linux by Lonewolf666 · · Score: 1

      I agree with regard to putting GUIs together. Typing the code for placement and properties of your standard widgets by hand is so much more tedious than just dropping them on the form by Drag&Drop. Also, itegrated debuggers are nice.
      But Visual Studio is by no means the only IDE to offer that functionality. Borland Delphi, which was released roughly at the same time, provides the same benefits. So you could as well ask for a Delphi replacement ;-)

      Fast forward to today:
      Visual Studio is admittedly quite good, while there seems to be not as much choice on Linux. Eclipse does AFAIK not have the GUI editor (somewhat understandable due to the huge variety of widget sets, and which to support?). So helping to create one for eclipse might be a worthwhile project for the thread starter.
      Or maybe supporting Lazarus development if he likes Pascal. Lazarus is so far the closest thing to a complete IDE I have seen in the Open Source scene.

      --
      C - the footgun of programming languages
    30. Re:Visual Studio replacement on Linux by jgrahn · · Score: 1

      Also - BETTER THREAD SUPPORT IN GDB. Debugging a threaded application is pure and absolute hell in gdb.

      s/ in gdb//

    31. Re:Visual Studio replacement on Linux by shutdown+-p+now · · Score: 2, Interesting

      Qt Creator has very good visual design tools, but the editor is lacking in things like code completion compared to VS. Even more so if you compare latest development versions of both rather than stable releases - VC++2010 can do code completion correctly on the template metaprogramming mess that is Boost.Lambda, for example; the only C++ IDE that can match this, from what I've been told, is KDevelop 4.

    32. Re:Visual Studio replacement on Linux by onionman · · Score: 1

      Wow, I must be getting old. I still use emacs for all my coding and memory dumps for my debugging. When I started using emacs, the vi guys in the group would mock me for being a wimp.

    33. Re:Visual Studio replacement on Linux by V!NCENT · · Score: 2, Informative

      Code::Blocks is what you are looking for. http://www.codeblocks.org/

      --
      Here be signatures
    34. Re:Visual Studio replacement on Linux by V!NCENT · · Score: 1

      Code::Blocks is what you are looking for ;). http://www.codeblocks.org/

      --
      Here be signatures
    35. Re:Visual Studio replacement on Linux by gbjbaanb · · Score: 2, Interesting

      Its not so suspect, its just convenient. When you're running your app through the debugger, and find a piece of code that doesn't work, quite like you expected, you can change your current statement position, change the offending code and run through it. Its no more suspect than altering a variable value whilst debugging.

      Of course, once you're done you recompile and run through again to make sure.

      I think it works by re-compiling and linking your changes at the end of the image, and then adding a jump to the relevant section (and then back again). Edit&continue doesn't work unless you have 'incremental linking' turned on, so I'm guessing its built on the ability to add code to the linked image rather than re-create it.

      I find that 64-bit E&C support is strange, I was going to criticise MS for not supporting it in C++, but then it doesn't work in VB.NET or C# either.

    36. Re:Visual Studio replacement on Linux by bit9 · · Score: 1

      I can't help wondering if maybe the reason there are so few decent IDEs for UNIX/Linux environments is that doing plain, old fashioned command-line builds is so much easier and more pleasant than on Windows. Could it be that Windows IDEs are so much more advanced precisely because the Windows command line facilities are so cumbersome and annoying? I'm guessing so.

    37. Re:Visual Studio replacement on Linux by Mongoose+Disciple · · Score: 4, Interesting

      IMHO, Eclipse is a great example of what's wrong with Open Source software from a usability perspective -- to be reasonably productive with Eclipse, you probably need a bunch of plug-ins, a bunch of time tweaking the preferences, someone who's spent years using it, and probably all of the above. Possibly you also need twice the memory (or more) of just about any other option to run at a reasonable speed for no apparent reason.

      I'm interested in coding; I'm not interested in spending a bunch of time fighting my IDE to do it, and when I think about the years I spent using Eclipse, that's basically what I remember. Other people have a different experience with it and I won't say they're wrong, but that's what it was like for me.

    38. Re:Visual Studio replacement on Linux by dunkelfalke · · Score: 1

      Code::blocks is okay but not nearly as comfortable (I use both the Linux and the Windows version).

      --
      "It's such a fine line between stupid and clever" -- David St. Hubbins, Spinal Tap
    39. Re:Visual Studio replacement on Linux by FictionPimp · · Score: 1

      I'm actually an xcode fan. I hated it at first, but now I love it.

    40. Re:Visual Studio replacement on Linux by FictionPimp · · Score: 1

      I do application development for osx. Should I be using visual studio?

      I mean, I do application development, so I should have used VS... right?

    41. Re:Visual Studio replacement on Linux by Anonymous Coward · · Score: 0

      >> Visual Studio is by far the best out there, and it is painful not to have something comparable available in other platforms

      I dunno. For C# I agree that there's nothing like VS. However for C++ visual studio is crap. As soon as you're using 3rd party libraries the intellisense takes a huge dump and never works properly again. I heard that this is supposed to be improved in VS 2010, but so far it is awful. Since that is about the single most useful feature in an IDE, it torpedos VS as a viable alternative. Qt Creator works much better here. Or if you want to spend a lot of money you can use VS with Visual Assist X from WholeTomato, but that is getting really pricey.

    42. Re:Visual Studio replacement on Linux by DeadDecoy · · Score: 1

      Can you give some examples of how you use it and how it fails? I use eclipse for smallish projects and haven't really run into any problems aside from a moderately chaotic config environment.

    43. Re:Visual Studio replacement on Linux by number6x · · Score: 1

      I have been doing application development for decades and do not use VS.

      It does not support punch cards.

      On a more serious note, you have to put in a lot of time with the very complex IDE's in order for them to be truly useful. You can spend many years churning out stuff that runs, but writing code is a small part of development. In the business world maintaining, fixing and enhancing code is the consumer of your time.

      A good version control system, testing methodology and deployment methodology is much more important than the IDE. (good IDE's integrate these things well and make your work more seamless).

      Testing suite integration (not debugging tools) is probably the area most IDE's fall short in.

    44. Re:Visual Studio replacement on Linux by http · · Score: 1

      Whenever I see this construct:

      something something yada yoda yeda

      THIS.

      I have to ask myself, did the poster think that after quoting and highlighting a particular thing from the original post, we still wouldn't understannd that they thought it was an important part?

      Seriously, the "THIS" meme has to die, and I don't care how ugly it gets or how loud it wails, as long as I get to say "I am thankful for its end." Next time, I'm using mod points.

      --
      If opportunity came disguised as temptation, one knock would be enough.
      3^2 * 67^1 * 977^1
    45. Re:Visual Studio replacement on Linux by cyberthanasis12 · · Score: 0
      Well, here it goes.

      If visual studio is the IDE that Compaq Visual Fortran uses, then IMO it sucks. It is too complicated. The error messages are unintuitive and hidden (they don't fit in a line, and the line does not wrap). It is a PITA to learn how to compile multiple files and include non-default libraries (never mind the "shortcuts"). Lots of windows clutter the desktop. It is difficult to keep track what file is open, if it is modified or if it has been modified by external process. It dies often. It uses up the computer resources, rather than the program beeing written. To me, and to a lot of students where I work, it is unnecessary complexity.
      By the way, does it (or can it) support compilers, like g77, gfortran, to produce non-x86 code? or non-windows code? Thought so.

    46. Re:Visual Studio replacement on Linux by EvanED · · Score: 2, Insightful

      I suspect it's more that both hold because of the different mindset that each platform engenders. The Windows command line is mostly crap because the attitude in the Windows world is mostly that it's unimportant, because GUIs can accomplish the same thing. And that attitude leads people to make advanced GUIs.

      In other words, it's the same thinking of "we should do this in a GUI" that leads to both situations, not someone sitting down and thinking "I want to write this as a command line tool, but that'll make it a pain to use, so I'll write a GUI instead."

    47. Re:Visual Studio replacement on Linux by david_thornley · · Score: 1

      I use Visual Studio for C++, and I'm not all that impressed. Compared to my usual batch of xterms, I will admit that the debugger is nice, as is its integration with the editor. Intellisense would be very nice, if it were reliable (which it isn't on C++). There's a lot more neat and reliable features for C# and .NET, and it's very likely I'd like VS a lot if I developed C# on .NET for a living.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    48. Re:Visual Studio replacement on Linux by phantomfive · · Score: 1

      It's a language dependent feature. GCC will do it for Objective C but (last time I checked) not for C++. I never found it to be a particularly useful capability, though. More just a cool thing. Re-compiling doesn't take THAT long.

      The first time I used Visual Studio (and by that I mean Visual Studio 2005....some of the earlier versions were crap), I liked it and the capabilities it has. But when I compared the actual time spent debugging with VS and with GDB, it's about the same. GDB has a steeper learning curve, but that's about it. Where VS really loses is in the project files......I will take a makefile over the VS project file any day. Makefiles do have an initial steep learning curve though, but on any project of significant complexity they are a lot more flexible. Sometimes I wonder if people who say how better VS is are really just people who have failed to climb the learning curve.

      The language you are using matters too, though. If you're coding in C, Linux wins hands-down, if only for the existence of Valgrind. On the other hand, I wouldn't code in C# on any platform other than Windows with Visual Studio.

      --
      Qxe4
    49. Re:Visual Studio replacement on Linux by fredrik70 · · Score: 1

      IntelliJ not hold up to VS???? I worked extensively with IntelliJ and now with VS2008, IntelliJ beats the crap out of VS any day when it comes to refactoring and nice shortcuts in the editor, up to the point I paid for Jetbrains Resharper with my own money in order get VS behave more like intelliJ.
      Don't get me wrong VS is good, but it aint that good

      --
      if (!signature) { throw std::runtime_error("No sig!"); }
    50. Re:Visual Studio replacement on Linux by Anonymous Coward · · Score: 0

      Making changes on the fly in Visual Studio has always seemed more a hack for lack of support for evaluating expressions in their debugger than a truly useful tool. When working with developers who do their development on Windows, I've often observed code littered with assignments to dummy variables that are never used latter (e.g int i = foo(a,b,c))because someone wanted evaluate a function while debugging. Other debuggers that I've used allow one to do something like "print foo(a,b,c)" w/out needing to make any changes to the code.

      Anyway, making changes on the fly is much more than just an IDE feature. It requires support throughout the tool chain (compiler, linker, debugger, OS kernel, etc.)

    51. Re:Visual Studio replacement on Linux by Anonymous Coward · · Score: 0

      As a die hard supporter of you statement, I would say that Netbeans has caught up. I used to lament the other IDE's when I switch away from .NET languages but after the release of Netbeans 6.7 I no longer feel like I am missing out on a good IDE.

    52. Re:Visual Studio replacement on Linux by sbeckstead · · Score: 1

      Hey give that man a cookie, he tweaked to the trick of making your whole tool chain useful.

    53. Re:Visual Studio replacement on Linux by Splab · · Score: 3, Funny

      I have to ask myself, did the poster think that after quoting and highlighting a particular thing from the original post, we still wouldn't understannd that they thought it was an important part?

      Seriously, the "THIS" meme has to die, and I don't care how ugly it gets or how loud it wails, as long as I get to say "I am thankful for its end." Next time, I'm using mod points.

      This!

    54. Re:Visual Studio replacement on Linux by Mongoose+Disciple · · Score: 2, Interesting

      I can try; to be fair, it's now been a while since I've used Eclipse.

      I remember things like:

      - Needing to choose/install/configure plugins for things I generally consider to be standard IDE features, such as user interface (Swing, etc.) design or decent debugging
      - Views switching for no reason I could discern
      - Eclipse taking a long time to start up, which is tolerable except that it also crashed a few times a day
      - Problems building/deploying, such as the infamous "Eclipse Dance" and
      - Generally, spending more time dicking around with Eclipse and its plugins' config files than I have for any other piece of software, possibly more time than every other piece of software I've used put together.

      Most of the Java work I did was web development on fairly large projects; I know many people, even those doing similar kinds of work, have had a better experience with it.

    55. Re:Visual Studio replacement on Linux by Mongoose+Disciple · · Score: 2

      Out of curiousity, why do you prefer makefiles over a VS project file?

      It's almost certainly true that I never did enough with makefiles to get particularly good with them, but they mostly seemed like a pain in the ass to me -- a side chore to be completed so I could get to actually solving the problem at hand. I'm interested to know what I'm missing.

    56. Re:Visual Studio replacement on Linux by matfud · · Score: 1

      For Java dev it has to be Idea. It costs but is it does what you expect and none of that views/perspectives stuff.

    57. Re:Visual Studio replacement on Linux by Anonymous Coward · · Score: 0

      This works quite well with Eclipse and Tomcat. You can connect the eclipse plugin to tomcat. You can
      modify java code and it will be chaned in the tomcat webapplication. It works with small things as you
      don't change functions signatures too big.

      Cheers
      suvi.org

    58. Re:Visual Studio replacement on Linux by cmsjr · · Score: 1

      I work in Visual Studio every day during the week, and use Eclipse to pursue non-MS interests when I can. Without having investigated many other open source IDE's, I will say that I think Eclipse is fantastic. (that being why I didn't really investigate further) VS might be more polished and focused in many ways, but Eclipse has amazing breadth and functionality. Sure some of the quirks are irritating, but that is true of any complicated tool.

    59. Re:Visual Studio replacement on Linux by cheesybagel · · Score: 1

      Eclipse is great for Java (even if slow and a memory hog), but not that great for C or C++ development. Most refactoring patterns are either broken or have bugged implementations for example.

    60. Re:Visual Studio replacement on Linux by mmclean · · Score: 2, Funny

      This +1

    61. Re:Visual Studio replacement on Linux by cheesybagel · · Score: 1

      I just download one of the Eclipse "distros" which fit the kind of development I do. Only remaining egregious usually non-preinstalled plugin is Subversive. Cannot get why SVN is not bundled when CVS is.

    62. Re:Visual Studio replacement on Linux by HeronBlademaster · · Score: 2, Interesting

      Visual Studio's C++ Intellisense gets better with every release (try out the 2010 Express Edition). 2008 in particular made Intellisense faster and more reliable and more user-friendly. It tends to not play nicely with anonymous namespaces, though, so if you use those a lot that could be a problem.

      In any case, I've found Visual Studio's Intellisense to be better than (e.g.) NetBeans' equivalent. Purely anecdotal, of course, YMMV.

      The debugger is what keeps bringing me back to Visual Studio, at least when it comes to C++ development. I never did get NetBeans' gdb integration to work. Eclipse CDT is... clunky, and I never got debugging to work with it either. ddd is not exactly friendly, and its integration with source code doesn't always work right (or: I can't figure out how to get it to work right). gdb *works*, but it's even less friendly, and doesn't have user-friendly source code integration in the same way that Visual Studio does. I've tried a few programs which claim to be alternatives, and I've been unable to get them to work as advertised.

      No, Visual Studio is not perfect, and maybe I'm just too dumb to make the other alternatives work properly. But shouldn't an IDE just work? TBH that's what I think Linux needs before more "mainstream" companies will write Linux software - an IDE for C and C++ development that just works.

      (Yes, I know C and C++ aren't the only options for application development. Responses like "companies should use $LANGUAGE instead" are not relevant to my comments.)

    63. Re:Visual Studio replacement on Linux by phantomfive · · Score: 1

      Yeah, Makefiles can be a pain for simple projects, but once you understand them, it only takes a few lines to automatically read every .c file in a directory (or whatever they are for your preferred language) and compile it, setting up dependencies and everything. Visual studio makes the simple case easier, when all you want to do is just compile everything.

      But if you want something a little more complex, like conditional compilation, or interesting directory structures, or automatically downloading dependencies....you can do anything with a makefile.

      The biggest problems I had with visual studio was on this project that was multi-platform (windows, linux, nucleus, VX-Works, winCE). It was modular, so we didn't always want to compile all the pieces in, but there were a lot of dependencies. Getting the defines set up correctly and the dependencies between projects was a real pain in Visual Studio, and more so because it wasn't always clear what was going on. In a makefile I can look and see what is happening (I can even put in debug statements if I really feel like it), but in Visual Studio it's hard to know if there is some setting somewhere that you accidentally broke or something.

      Setting up build systems is my least favorite thing to do in programming. It feels like such a waste of time: sometimes it can take days and at the end you haven't accomplished anything. Nucleus has the worst system for that, as far as I'm concerned. But now that I've gotten over the learning curve for Makefiles, I think they are the easiest way.

      --
      Qxe4
    64. Re:Visual Studio replacement on Linux by HeronBlademaster · · Score: 1

      I don't know about your parent post, but in my case I never got Eclipse's CDT package to cooperate with me long enough to start a C++ project. NetBeans at least let me get as far as compiling and running a C++ project (but debugging was something I never got to work right).

    65. Re:Visual Studio replacement on Linux by phantomfive · · Score: 1

      Oh, another thing that I've never had to deal with but I imagine would be easier in Makefiles are mixed code projects, or generated code projects (if you're using something like YACC). You can always build the YACC step into one of the pre-build phases with Visual Studio, but YACC fits in naturally in a makefile.

      --
      Qxe4
    66. Re:Visual Studio replacement on Linux by HeronBlademaster · · Score: 1

      Does IntelliJ support languages besides Java (their website, at first glance, gives no indication that it does)? If so, how do its other features compare with Visual Studio's (integrated debugging, intellisense, etc) for C or C++ development? If not, how do those features compare with competing Java IDEs?

      I'm not saying IntelliJ isn't better for Java development, but personally I don't believe any particular IDE can be unilaterally better than every other. I think you should pick your IDE by comparing its strengths with your needs for the project.

    67. Re:Visual Studio replacement on Linux by HeronBlademaster · · Score: 1

      Replying to myself, but I read more of IntelliJ's website. IntelliJ appears to support non-Java languages to some degree, but the lack of C/C++ support is sort of a dealbreaker in my case. Obviously, IntelliJ is not better at C++ than Visual Studio, because IntelliJ doesn't do C++ ;)

      I'm not in any way saying IntelliJ is a bad thing or whatever. It just won't work for me.

    68. Re:Visual Studio replacement on Linux by HeronBlademaster · · Score: 1

      Sometimes I wonder if people who say how better VS is are really just people who have failed to climb the learning curve.

      I don't think "it has a steep learning curve" is necessarily a good thing. If we want more mainstream developers (i.e. game developers) to start supporting Linux, then it's definitely a bad thing.

      Yes, there is some value in a steep learning curve - if you're more familiar with a tool, you'll be better able to make it do what you want - but that doesn't mean we should force everyone to climb it.

    69. Re:Visual Studio replacement on Linux by HeronBlademaster · · Score: 2, Informative

      What third party libraries in particular make Intellisense die? I know Boost can sometimes make Intellisense bog down, but my experience is that the only thing that never worked *properly* has been anonymous namespaces. Even pointer accesses on boost::smart_ptr worked right. I worked for a year or so on a million-plus-line-of-code MFC C++ application using VS 2003 and then VS 2005 (before 2008 came out), and I never had a problem with third-party libraries (of which we used several), as long as you let Intellisense finish loading when you open the project. There's a progress bar and everything, it's not hard to see.

    70. Re:Visual Studio replacement on Linux by phantomfive · · Score: 1

      Agreed. A steep learning curve is definitely a bad thing. My point was that you can't really judge whether a tool is good or not unless you've actually climbed the curve and learned to use it. A lot of times I feel like people who think VS is the greatest tool every haven't actually learned to use the other tools.

      --
      Qxe4
    71. Re:Visual Studio replacement on Linux by TheFranz · · Score: 2, Informative

      I'd like to claim the exact oposite of what you are claiming. The Intellisense (intellinonsense / intellisenseless) get worse for C++ with every release of Visual Studio. For 2005 it was workable but 2008 is completely backwards. I fear what they did with it in VS2010.
      If I use boost for instance VS doesn't know how to begin with providing me the first bit of information in intellisense relating to boost. even worse: it stops "intellisensing" for other code i've written completely!

      To make intellisense work for us with C++ we use the Visual Assistant plugin. And for C# we also use resharper: this adds all the eclipse niceness to Visual Studio except the "find types". That great feature is still missing, or I haven't located it yet. However this make Visual Studio need 2 plugins to work well.

      Perhaps if you check out a recent version of CDT all the proplems you mentioned are gone: CDT seems to be a very active project. I had no problems with debugging in eclipse CDT with GDB (after spending countless hours getting it to work with KDevelop)

      So for now I can only recommend Eclipse CDT as IDE for Linux C++ app development (having only checked out Kdevelop and Eclipse CDT)

    72. Re:Visual Studio replacement on Linux by c0d3g33k · · Score: 1

      Would "+1", "mod parent up", "Word", "I agree wholeheartedly", "Hear, hear!", "Preach brother, preach" or "The honorable swaniriversean makes a most compelling point" be stylistically more to your liking? A snippet framing the agreement in the proper context is an added bonus since it clearly indicates the subject of the agreement. Annoying as it may be to you personally, such utterances are useful in providing clarity when following along with the debate and trying to get a clear sense of where the points of consensus and disagreement lie. I personally find this to be a nice little communication technique.

    73. Re:Visual Studio replacement on Linux by c0d3g33k · · Score: 1

      I must humbly and most respectfully disagree with the honorable gentle persons commenting on the subject broached earlier by "http" regarding the use of the "THIS!" meme during the course of a discussion.

      Or, if I may be so brash: !THIS

    74. Re:Visual Studio replacement on Linux by HeronBlademaster · · Score: 1

      Agreed.

      I wrote another post somewhere about how the biggest problem with the Linux "equivalents" is that they don't just work out of the box - or, I couldn't figure out how to make them work out of the box, but for mainstream developers, there's essentially no difference.

      In my case, it doesn't really matter whether NetBeans' debugger is superior to Visual Studio's debugger; since I can't figure out how to get it to work right, NetBeans' debugger may as well not exist.

      From that point of view, I can claim that Visual Studio's debugger is better - because it actually works, where NetBeans' doesn't. Perhaps the fault is mine, but shouldn't it just work out of the box? Should I really have to learn how to make the debugger work, instead of just clicking "Run Debug"?

    75. Re:Visual Studio replacement on Linux by harry666t · · Score: 1

      Hm, can you tell me. Does any serious real-world project actually use GNUStep? Is the whole environment a viable alternative to KDE/Gnome/rest of the crowd? Where does it fit anyway, is it a widget library like Qt or Gtk+, or something more high-level, like KDE or Gnome? All I have ever seen is WindowMaker and a few toy apps on screenshots that looked like 1989. I've heard a lot of good words about GNUStep, dunno. Maybe I am missing something.

    76. Re:Visual Studio replacement on Linux by bit9 · · Score: 1

      Good point. You're probably right that mindset has a lot to do with it, at least for the relatively small percentage of developers who are actually involved in tool chain development. For the rest of us, though, I think the GUI/command line choice basically boils down to "Which one is the lesser pain in the ass?"

    77. Re:Visual Studio replacement on Linux by HeronBlademaster · · Score: 1

      Last time I tried CDT was about two months ago. How recently were the problems solved?

      I'm told VS 2010's Intellisense plays much better with Boost, and I know from experience (working on a million-plus-lines-of-code project) that 2008's Intellisense was orders of magnitude better than 2005's.

      FWIW, I noticed that Intellisense doesn't usually work properly unless I let it finish loading when first opening the project (there's a progress bar in the status bar for it). This is especially true of large projects. Perhaps this is the problem you're having?

    78. Re:Visual Studio replacement on Linux by phantomfive · · Score: 1

      I have never used NetBeans, and have no idea why you can't get the debugger to work (kind of sucks to be in that kind of development environment), but how can you really say if it is better or worse if you've never used it? Certainly the learning curve is one part of a system, but it is only a part. Maya has a steeper learning curve than Paint, but no one would deny that Maya is a more powerful piece of software.

      If you want to argue that software should be made easier to use, I will agree with you.

      --
      Qxe4
    79. Re:Visual Studio replacement on Linux by Anonymous Coward · · Score: 0

      I can't second this. In my opinion (coming from delphi and having done one project with visual studio) you'll always have to get accustomed to any IDE. I had to learn Delphi for quite some time to know how to use it. And the same with C++ IDEs (which seem even more complicated, because C++ and it's header files are more difficult to reason about for the IDE than the clear interface/implementation model of pascal units).

      I think what's lacking is a neat component model for really easy source code sharing (that's where FLOSS is excellent). There ought to be a kind of Haskell for effective workflows and effective component sharing. Probably you'd have to think about new meanings of authority and/or identity, to make diverse knowledge and code interact.

      Functional programming points in that direction, it allows components to be really really orthogonal to each other.

    80. Re:Visual Studio replacement on Linux by HeronBlademaster · · Score: 1

      If you want to argue that software should be made easier to use, I will agree with you.

      That's certainly half of my argument.

      The other half is just this: a working feature is better than a non-working feature; this is true whether "non-working" is my fault or the fault of the application developers. If you can't make one of the two programs work, their relative power is irrelevant ;)

      (Sure, having someone tell me how to make NetBeans work properly would certainly change the situation, but until such a time, I'm left with the impression that NetBeans' debugger simply doesn't work, and since Visual Studio's *does*, it's "better".)

    81. Re:Visual Studio replacement on Linux by HunterD · · Score: 0

      The entire UNIX operating system is an IDE. Almost every element of the design of UNIX is based around being able to make developing software easier and more productive. Just like the end user tools, the difference between the UNIX design and other designs is that you have lots of small, tight tools that are good at a limited number of things, and scripts or applications to tie those tools together. Tools from vim to grep to gdb to glade are all single purpose tools that are pretty darn bullet proof.

      I'll take VIM + the command line (or EMACS) over Visual Studio any day. (or Eclipse, or QT Creator)

      --
      - The unexamined life is not worth leading -
    82. Re:Visual Studio replacement on Linux by nacturation · · Score: 1

      You rock! Thanks.

      --
      Want to improve your Karma? Instead of "Post Anonymously", try the "Post Humously" option.
    83. Re:Visual Studio replacement on Linux by Anonymous Coward · · Score: 2, Interesting

      IntelliJ IDEA is going Open Source starting with version 9.0

    84. Re:Visual Studio replacement on Linux by Anonymous Coward · · Score: 0

      I hate Microsoft as much as the next guy on slashdot and resort to using windows products only when absolutely required, but having spent about an equal amount of time coding in Eclipse and Visual Studio over the last 5 years. I hate to admit it, Visual Studio is light years ahead of the Eclipse IDE in terms of actual productivity. I find Eclipse to be slow and unwieldy, have a look at how the refactoring tools or the 'intellisense' works in eclipse and visual studio and you'll quickly see that visual studio is the superior product.

      Microsoft may not get much right when it comes to OS design and business practices, but they sure do make it very easy to develop for the windows platform at least since the .NET framework came about.

    85. Re:Visual Studio replacement on Linux by ray-auch · · Score: 1

      >> I suspect it's more that both hold because of the different mindset that each platform engenders. The Windows command line is mostly crap because the attitude in the Windows world

      Except that the Windows command line, and MS focus on it, has improved massively (out of all recognition really) in the last 2 or 3 years.

      - Used to recommend Ant / Nant from CruiseControl even for .Net projects, but now MSBuild (the command line behind visual studio) has appeared and improved and does all you need.
      - SharePoint looks like it is all GUI point-click admin and config... until you realise the power MS have now put in stsadm on the command line.
      - And then there is powershell.

      For years ( maybe decades...) I cursed the crap that was batch files and/or left cygwin install droppings everywhere I wrote any scripts on Windows, but now it is Bash that suddenly looks and feels 20+ years old. Major MS products (Exchange, SQL server... others I've forgotten) are moving all admin to be commandline (powershell) driven with a GUI on top. MS had a commandline epiphany somewhere in the last few years. They were so far behind Unix in that area - but now they are ahead. They've copied / learnt a lot from Unix, but have now taken it much further. Powershell is where the Unix shell should and could have been ten years ago - but instead we have dozens of different shells to choose from (age old Unix story of stagnation through fragmentation ).

      >> In other words, it's the same thinking of "we should do this in a GUI" that leads to both situations, not someone sitting down and thinking "I want to write this as a command line tool, but that'll make it a pain to use, so I'll write a GUI instead."

      It could also be the other way round - on Unix you have the command line heritage, but also it's much more of a pain to create a GUI, so even if you start out thinking "this tool should have/be a GUI", you may end up with command line.

        - You have to bolt your GUI onto the command line tool because a) this is Unix and b) one of your users _will_ only have a vt100.
        - Then you have to choose your widget set / toolkit, and hope in vain that you might find one with a decent visual designer.
              - Oops, now your app looks all wrong for at least half your users
              - and then you find it won't play nice with certain window managers
              - and/or X Servers
        - And eventually you give up and just maintain the command line, since _you_ know exactly how to use that anyway (and if users want a GUI they can go write their own)
        - Or you decide it's less trouble to stick a web based front end on it
              - and now you have an equally poor GUI on all platforms

      On Windows, all your users have a GUI environment, they all have the same environment, you have one set of standard widgets / controls etc. etc. Maybe building maintaining and supporting a GUI app on Windows is just so much easier (despite the Windows APIs) than Unix / Linux, that people are prepared to do one but not the other.

    86. Re:Visual Studio replacement on Linux by Hurricane78 · · Score: 1

      That is not the fault of the community per se.

      It’s a simple problem: Sure, it’s great to have this extension system, like Firefox.
      But you have to offer presets! Ready-made bundled packages for specific target groups.

      VI would be as easy to use a Notepad, given the right preset. But you would still get all the freedom.
      The same thing is true with the Miranda IM. Took me a whole week of work, to get it customized to what I want.

      Good defaults and presets, are crucial!

      --
      Any sufficiently advanced intelligence is indistinguishable from stupidity.
    87. Re:Visual Studio replacement on Linux by EvanED · · Score: 1

      Except that the Windows command line, and MS focus on it, has improved massively (out of all recognition really) in the last 2 or 3 years.

      You're definitely true. I'll be the first to say that, for instance, the PowerShell object-piping thing is a really neat and useful idea.

      But, IMO, it's still far from what you see on a Unix-like platform in terms of actual usability. I mean, even the terminal emulator that hosts both CMD and PowerShell is still a huge turd. I mean, even in Win7, you can't even resize the damn window (in ways that matter) without going into a dialog box and changing the width field. Then there's a bug through XP (seems to be fixed in Windows 7) that causes it to ignore (most of the time) my keyboard layout changes.)

      Then you get to things with the shell itself. For instance, the fact that the tab completion behaves differently from Unix isn't a problem on it's face, but having used both variants extensively (I don't usually use Cygwin shells when in Windows; I take a pretty strong "when in Rome" approach to that), I much prefer the Unix-shell version. (The CMD/PowerShell tab completion method, while sometimes handy, has two significant problems: unless you know your directory contents really well, it's not very predictable. Second, the worst-case behavior is terrible. There are some other minor issues like not being able to tab complete something in the middle of a command without it wiping out everything that follows, and not tab completing through a forward slash despite most commands and programs accepting them. PowerShell doesn't have that very last problem.) Another thing I miss a ton is ctrl-R, for reverse incremental search. F8 does something similar in CMD, but... it doesn't seem to work very well for some reason. It doesn't seem to work at all in PowerShell.

      Disclaimer: I've played with PowerShell a little bit, but only a little bit. It looks like you can do things like customize the tab completion behavior, so it's possible that some of my concerns could be alleviated.

      (Finally, believe me, I'm no "rah rah Unix/Linux" person; I've been called a MS shill on a couple of occasions. You say "age old Unix story of stagnation through fragmentation", which I don't quite agree with, but I do feel that there are a lot of people out there who believe that almost everything Unix does it does right, that the autotools really aren't that bad, that it's actually a reasonable decision to use 'make' for a C project, etc. is a big problem, and that they can be as prominent as they are is holding back Linux. I'm very sympathetic to parts this presentation (now a decade old) by Rob Pike, where he says that systems research is hurting because people get set in an orthodoxy. (See pp. 14, 16, 17.) (And if you look at his credentials, he's not exactly a MS shill either.) In my opinion, Windows actually serves a very very valuable purpose -- it's the only OS in even moderately wide use that isn't backed by Unix. The fact that they do things differently is, in and of itself, valuable -- even if they don't always get it right. (Because, IMO, they do get right in ways that Linux/Unix doesn't as much as they get it wrong.) I take the position of disliking every OS out there pretty strongly, just in different ways.)

      It could also be the other way round - on Unix you have the command line heritage, but also it's much more of a pain to create a GUI, so even if you start out thinking "this tool should have/be a GUI", you may end up with command line.

      It's possible, though I would still say that, in most cases, it probably more has something to do with the mindset.

    88. Re:Visual Studio replacement on Linux by Anonymous Coward · · Score: 0

      What an idiotic comment. Most of the best developers at Microsoft don't even use Visual Studio.

    89. Re:Visual Studio replacement on Linux by TheSunborn · · Score: 1

      Have you ever tried to use Eclipse to do c or c++ development? All you need to do is to download the "eclipse for c++ developers" on the download page and then unzip it. Then you will have c++ support, and they also include cvs support and integration with the gdb debugger and mylar(Issue tracking which can integrate with bug trackers such as Trac directly with eclipse so you can answer bug repports in Eclipse and directly note in swich cvs/svn commit each bug were fixed. Really cool stuff.

      And It's not as if installing plugins are difficult. If you for example need svn support, all you need to do is start Eclipse, click "Install updates" type svn in the filter field and click the install button. If installing a plugin takes you more then 5 minutes you are doing something really really wrong.

      Oh and to answer the original question. One thing I would really like, were better support for C++0X in eclipse/cdt.

    90. Re:Visual Studio replacement on Linux by ajlisows · · Score: 2, Interesting

      I'm not a real developer. I'll readily admit that. I'm mostly a Network guy that happens to have written some stuff in C++, C#, VB, pHp, VBscript, Javascript, and Java. In the last four years, I've worked mainly in Windows environments and have been mostly using C++ or C#.

      My foray into using eclipse came when I needed to develop an application on an Embedded board my company wanted to use in its project. The boards that were decided on supported only Java so I grabbed Eclipse and went to work on it. I wasn't very good at Java in the first place so when I found that the IDE had a far steeper learning curve than Visual Studio...I knew I had my work cut out for me.

      There were plenty of forums and such with people giving offering advice on using Eclipse but a lot of it was "Use this plugin", "No, use this plugin instead" to the point where I had so many different plugins Eclipse became slow and I was just confused at times.

      Somehow, I kept managing to blow up the built in web servers that are there for testing, to the point where I couldn't test my applications. I had to do a bunch of crazy stuff to get it to work again.

      The Application I was developing relied on creating a GUI that allowed you to get and put information over a network from a serial port. I expected that dealing with the serial port commands to take a lot of time and effort. What I didn't expect was how difficult it was to lay out the damn GUI compared to how it is in Visual Studio.

      Again, this was a first attempt at using Eclipse, I was using a language I wasn't terribly familiar with, and I was writing an application of a sort that I had never really written before. All that probably figured into my not so great experience with Eclipse. The project turned out great in the end though. It just took waaay more time than I expected.

    91. Re:Visual Studio replacement on Linux by ELProphet · · Score: 1

      Haven't seen anyone mention IntelliJ Idea yet. It's Java-centric (which may be why no one's mentioned it, but people have been whining about Eclipse), it integrates more tightly between code and debugger than VisualStudio. It has a set of refactorings out-of-the box that I miss terribly when working in VS. When I can put only the properties of a class in, then generate working stubs for *all* the getters and setters in one keyboard command, I call that win. With version 9, there's an open source community edition. Pretty much the best IDE ever. Plugins galore... IntelliJ Idea is done right.

    92. Re:Visual Studio replacement on Linux by rdnetto · · Score: 1

      So would I, but that's only cause the Qt libraries are superior. For C# I still prefer VS.

      --
      Most human behaviour can be explained in terms of identity.
    93. Re:Visual Studio replacement on Linux by Anonymous Coward · · Score: 0

      Visual Studio is what has put me of learning to code any language.... it's probably great for people who know coding from before, but for a beginner like me it very daunting and confusing.

      Personally, I'ld like an IDE where you could select the things you want/need to be shown, rather than a screenfull of stuff you don't understand what is for.

      Sure, I've tried VS2005, 2008 and I'll be trying the new 2010beta, but..... no matter how I look at the Visual stuff, I can't figure out why I need everything that is on the default screen just to make the "Hello, World" programme.

      One of my main reasons for getting Linux, was to learn how to code some small simple stubs just for myself.... however, I entered the computer world via Amiga, and I'm always looking for something like CygnusEd, GoldEd, or even Blacks Editor.All of these editors can be extended (via ARexx) to do just about anything a C/C++/Assembler/HTML/PHP/Python/ coder would want and need todo. Running the debugger, (re)compiling the project, stepping through and execute the project line by line...... I seriously want an editor like that for Linux, preferably generic so it doesn't matter what WM you run, whether XFCE, KDE, GNOME, BlackBox, FVWM, FVWM95.....

      And if you can (either via plugins or a "partselector" type thingie, ie builtin to the editor) make it look as basic or advanced or VS-like you want, then I could learn in a "semi-familiar" environment and go more advanced as and when I need it....

      If any of this made sense, then feel free to refer me to any and all editors that have a semi-CED-ish feel to it/them already, and I can work from there (and learn to code at the same time ;) )

    94. Re:Visual Studio replacement on Linux by fredrik70 · · Score: 1

      Alas, IntelliJ does not support c/c++ AFAIK. community edition only supports JAva and groovy and their pay version supports these languages.

      When it comes to c/c++ I only worked with various Borland IDEs, gcc + emacs and VS and I found VS being the best of these tools for c/c++, however, this is most likly because that has been the most modern toolset of them all.

      IMHO, IntelliJ beats all other Java IDEs I tried, including eclipse (maybe not featurewise, but ease of use, just less in your way).

      if you look in the link above you can see a full list of all their coding features. lots of shortcuts and navigation keystrokes that makes your everyday coding live easier.

      --
      if (!signature) { throw std::runtime_error("No sig!"); }
    95. Re:Visual Studio replacement on Linux by Xest · · Score: 1

      Eclipse certainly isn't a Visual Studio replacement, it doesn't even come close.

      In fact, I found Netbeans even nicer to work with than Eclipse which is certainly saying something.

      Issues with Eclipse are far and wide, but it doesn't help that even from the get go it's not promising, the Windows install basically involves just copying the Eclipse folder and making your own shortcuts. The plugin system seems to create countless conflicts such that your best bet is to have multiple copies of Eclipse for different environments. Both these two things are not too big a deal, but they're such 1990s problems, they're problems that most companies solved with their products over 10 years ago. So you get all that done, it's all installed, you load it up and it takes a minute or two to load, it's slow as hell. Once you do get going though you find the toolbars lacking, where are my block increase and decrease indent buttons? Sure you can tab to increase, but what's the shortcut to decrease? Oh it's there, but you have to Google and jump through hoops to find it. Why? You continue anyway, but autocomplete just doesn't flow well, you spend as much time fighting it as you do getting benefit out of it, Visual Studio's autocomplete just flows amazingly in comparison, it's far more "intelligent". Even many of the plugins aren't great, hell I had the misfortune of having to use Zend Studio the other week- talk about horrifically bad.

      Now, I can't fault Eclipse because it's free, what they're trying to do with Eclipse is most certainly commendable, but the idea that it's even close to Visual Studio is a joke. It's not all the fault of Eclipse of course, for example ASP.NET MVC is so amazingly quick and easy to work with when used with the Visual Studio tools for it compared to any other MVC framework out there, but being such a young framework lacks features of many of the older ones, plus you're stuck with the Windows platform to host it which in itself is a problem sometimes. I would love nothing more than a Visual Studio quality IDE to work with the likes of Zend, Spring, Android and so forth and I really do hope that Eclipse gets there some day, it's just not there yet.

    96. Re:Visual Studio replacement on Linux by Edam · · Score: 1

      Yes, but does Visual Studio recognise ".cc" files yet?

      --
      "Beware of he who would deny you access to information, for in his heart he dreams himself your master." -Pravin Lal
    97. Re:Visual Studio replacement on Linux by Rysc · · Score: 1

      I really don't know. It's an implementation of OpenStep, so it's a 'complete' desktop API and includes widgets and everything. I say complete, but it really is complete inasmuch as NeXT was complete when it was last released. Since then many things have been invented and I don't know how much GNUStep actually has evolved over time and tracked modern developments.

      If instead of starting GNOME people had gotten behind GNUStep then the Linux desktop world would be a very different (and much better) place today. But, nobody wanted to write in Objective-C.

      If you want to see GNUStep being used seriously, and not looking like it's 1989, you should take a look at Etoile. This goes to show that the framework is very capable if only people would use it.

      --
      I want my Cowboyneal
    98. Re:Visual Studio replacement on Linux by EagleEye101 · · Score: 1

      This is very true for earlier versions of eclipse. It was slow, crashed all the time, and hung up for no apparent reason. On top of that its their plugin manager was beyond subpar. But recent releases seem to fix most (if not all) of the serious problems I saw and its very usable now. But as always the more ram you through at a java program the better it runs and im using 4 gigs which I think probably makes a big difference too.

    99. Re:Visual Studio replacement on Linux by HeronBlademaster · · Score: 1

      I just added a .cc file to an existing project, and yes, VC++ appears to recognize it (by which I mean, it's in the solution explorer with a "C++" icon). Is that what you mean, or was there some specific functionality you want me to test?

      You could just go grab Visual C++ Express and test it yourself, though. It's free ;)

    100. Re:Visual Studio replacement on Linux by sbeckstead · · Score: 1

      Visual Studio has provisions for multiple independent external steps in compilations/builds so that's not really an issue. I've used a YACC like step in a few cases during a build and it works quite nicely.

    101. Re:Visual Studio replacement on Linux by sbeckstead · · Score: 1

      once you understand them, it only takes a few lines
      Yeah this is the bane of all development systems in the end isn't it. The learning curve for VS is fairly shallow and the functionality is pretty deep if you need to get more sophisticated. I'm tired of trying to debug my build process while debugging the code. Make files are a whole other language to deal with. Very useful because once you understand them, it only takes a few lines to accomplish what you want, the trick is finding those few lines.

    102. Re:Visual Studio replacement on Linux by CptPicard · · Score: 1

      This is why I use Netbeans. It just works out of the box most of the time.

      --
      I want to play Free Market with a drowning Libertarian.
    103. Re:Visual Studio replacement on Linux by Anonymous Coward · · Score: 0

      vi doesn't work for you?

      I code in C, PHP, MySQL, HTML, Javascript and I write up the occasional piece of glue code in bash, and I'm yet to find something that helps me work faster than I do with vi (and I mean "vi", and not stinking "vim"). I'm not a command line zealot - I use an HTML email solution for example - but I find these "IDE"s just kill my code productivity.

    104. Re:Visual Studio replacement on Linux by musicmaker · · Score: 1

      Not really - all the good shit is in the closed source version AFAIK.

      --
      Everyone is living in a personal delusion, just some are more delusional than others.
    105. Re:Visual Studio replacement on Linux by musicmaker · · Score: 1

      Try Netbeans or IntelliJ. Their webapp support is years ahead of Eclipse. Also - you might want to look at the Stripes framework. It's an MVC framework that makes building small to medium webapps pretty darn easy. It also integrates with Spring and JPA.

      --
      Everyone is living in a personal delusion, just some are more delusional than others.
    106. Re:Visual Studio replacement on Linux by Xest · · Score: 1

      Yeah, Netbeans is my first choice of Java IDE, I do like it a lot.

      I was reading about Stripes the other day but haven't had time to look into it much in depth yet.

    107. Re:Visual Studio replacement on Linux by TheFranz · · Score: 1

      That's odd: because that is around the same time I gave it a shot too. I did not have trouble with any debugging or getting info from the code at runtime. I even found the watch expression to be working well!.

      funny that we have the exact opposite experience with Eclipse CDT and VS2008. Btw: when you switched from 2005 to 2008 weren't you unpleasantly surprised with the compile time of the C++ Code? ours increased by a factor.
      luckily the /MP switch can help as long as you don't use COM :-/

    108. Re:Visual Studio replacement on Linux by HeronBlademaster · · Score: 1

      The /MP switch is the only thing that kept our compile times "reasonable", but that was a problem even in VS2005, so I doubt I would have noticed increased compile times. But then, those apps were giant messes of OpenGL and MFC and third-party libraries, so... blargh.

      Yeah, it is weird that our experiences with the two IDEs are so opposite... I think that says something about the state of IDE usability in general. (Even if it's just that IDEs are trying to be too generally useful. Maybe more specialization would help.)

    109. Re:Visual Studio replacement on Linux by Anonymous Coward · · Score: 0

      Eclipse has the GIMP problem. Some useful features, weighed down with a terrible UI and bugs making it annoying for amateurs, and inferior for professions.

    110. Re:Visual Studio replacement on Linux by Anonymous Coward · · Score: 0

      Because being able to build my software without having to install my choice of IDE is a very good feature.

    111. Re:Visual Studio replacement on Linux by Myen · · Score: 1

      (Caveat: I'm a C++ programmer, working on code that has lots of macros.)

      The debugger. You can mouseover variables in the source view, and it shows the data (reliably, and points to concrete classes). It lets you switch between threads easily, and shows backtraces you double click on to get to the relevant source code. It uses a normal GUI file browser to let you choose symbols to load, if you haven't set it up beforehand (also via a GUI), and warns when it's out of date. With lots of annoying config file hacking, it can let you display structures in a custom manner.

      The closest I've seen on Linux was insight, and that was quite a few years ago (maybe it's improved since?). GDB has a huge barrier to entry, and being line-input based means there's no organization (I don't want my code to be displayed in the same place as my backtrace or my local variables). DDD doesn't reliably display my data, and when it does manage to do so visualizes anything C++ horribly.

      I've tried KDevelop (3 and 4) a while back; it absolutely hated dealing with things that has an external build system (i.e. it doesn't work as a pure debugger). Debugging C++ in Eclipse was a joke when I tried it (the one time I did have to work on Java, though, it was pretty nice).

      As a reference, I code in Komodo/Eclipse/vim (all on the same code base, depends on what I feel like), on a project that uses autoconf/gmake. That applies to both win32 (via msys+msvc) and Linux. I use MSVC as a pure debugger, not as a code editor.

    112. Re:Visual Studio replacement on Linux by Lodragandraoidh · · Score: 1

      You can have my Emacs when you pry it from my cold, dead fingers.

      --

      Lodragan Draoidh
      The more you explain it, the more I don't understand it. - Mark Twain
    113. Re:Visual Studio replacement on Linux by Anonymous Coward · · Score: 0

      Can I debug XSLT with DDD? You know, the world shifted away from C and C++ being mainstream a few years ago...

  2. hmmm by Anonymous Coward · · Score: 4, Funny

    A dentists chair and some teeth?

    (bad joke i know)

    1. Re:hmmm by Gilmoure · · Score: 1

      Cute tushes (butts, rear ends, etc.)?

      --
      I drank what? -- Socrates
  3. They need a set of fake teeth... by Anonymous Coward · · Score: 0

    They need a set of fake teeth and simulated plaque

  4. FLOSS developers need -- by dwiget001 · · Score: 0, Offtopic

    -- major power tools, man! Oh, and to get laid! Plus, a lifetime supply of Cheetos and Jolt Cola! (Disclaimer: The order of the above items is subject to the preferences of the individual FLOSS developer. However, getting laid Cheetos dunked in Jolt Cola is not recommended).

  5. Code what you know best by bramp · · Score: 5, Insightful

    You should code whatever you need. If you code something others need, you will either do it wrong, or get bored. Do what you know best.

    1. Re:Code what you know best by truthsearch · · Score: 1

      I agree. If you're going to volunteer code, then program what you need or enjoy.

      Documentation is another area where you can contribute whatever you know best.

    2. Re:Code what you know best by richlv · · Score: 1

      this is the best first advice. but maybe the submitter needs some hints on possible areas :)

      one thing that i find missing is a decent manpage editor. several standalone projects have died, so maybe creating one as a plugin for an existing software would be best (maybe export plugin for oo.org or so).

      as submitter mentioned documentation and translating, helping out with projects that are meant for documentation writing and localisation is a decent choice - for example, i've heard that pootle web translation gui is too slow to be used for some projects, maybe improving that could be helpful.
      as wikis are often used for documentation, improving some aspects for those also might be an option (like allowing to branch documentation etc).

      but still, submitter should keep in mind the original suggestion and start by solving whatever issues he has encountered himself.

      --
      Rich
    3. Re:Code what you know best by b4dc0d3r · · Score: 1

      This is terrible advice. Lots of times I've been looking for something to try, but had nothing specific in mind. Getting a suggestion means that someone might actually use what you produce. As opposed to working on something to find out you're halfway done when Debian includes some obscure app that does the same thing, and no one uses what you did and has no use for it.

      This is the best place to ask, because as soon as someone puts an idea up, someone else will probably reply with "you mean like..." and link to something that already does that. Wait a few days and the redundant suggestions will get knocked down.

      If I had time on my hands, I'd be reading through this thread looking for something to do myself. I don't have any burning needs, but I have skills and a large personal code base to draw from, so I could turn around something quickly, or at least get a good start on a prototype to attract others to help build the next killer app.

  6. A debugger for C++ by Anonymous Coward · · Score: 1, Insightful

    GDB is a nice debugger for C programs and sometimes it is even tolerable as a C++ debugger. Nonetheless, it is only tolerable to the extent you avoid using the STL and you don't happen to rely on any external library. So I have to say that a C++ debugger is almost desperately needed in the FLOSS world.

    1. Re:A debugger for C++ by gerddie · · Score: 0

      You should probably learn how to write good unit tests makes a debugger a lot less important.

      You are right in one thing, however, with the STL and BOOST a lot of things get inlined when compiling with optimization. Often this makes it really difficult to locate the real location of a problem and usually the only solution is to re-compile without any optimization. Somehow I doubt that the debugger can help there though.

       

    2. Re:A debugger for C++ by Elbows · · Score: 1

      Is there any debugger that works well with STL? Visual Studio seems to be equally useless. I can sometimes guess at what's going on by staring at the cryptically-named private variables of STL containers, but to get good information you need to call methods on the containers. I've never had that work reliably in any debugger -- if anything, GDB seems to do a slightly better job of it.

      We're using VS 2005 at work, maybe 2008 is better?

  7. FLOSS Developers need... by svendsen · · Score: 0, Redundant

    crest? colgate? Mouthwash?

  8. FLOSS developers? by Un+pobre+guey · · Score: 1, Redundant

    Several sets of dentures and a floss waxing machine, for starters. And can we please have some flavors besides "minty fresh?"

    1. Re:FLOSS developers? by Anonymous Coward · · Score: 0

      Well, I've used cinnamon and grape flavoured floss before. (And of course they make unflavoured floss, but why bother?) I definitely agree on the waxed thing, though. Unwaxed floss shreds and gets caught between my teeth.

  9. Submitter, You are a Free Software Developer by Anonymous Coward · · Score: 0

    What do you use, and how could it be better? FLOSS development works best when you scratch an itch, then - when you learn that others have the same itch, you come up with an ointment.

    (am I the new Bad Analogy Guy?)

  10. Suggestion by UTF-8 · · Score: 1

    It depends on what itch you want to scratch. Improve the tools that you want to use. If all else fails, you could look at Eclipse and cppcheck.

  11. Editors and Debuggers by MerlynEmrys67 · · Score: 0, Flamebait
    Anyone that claims either vi or emacs is a useful editor hasn't used a modern Windows IDE. Just the amount of context aware help that is available about the platform is amazing.

    Get a real kernel debugger INTO the linux kernel. DO it now - I hate having to patch the heck out of my kernel just to see what some module that I am unfamiliar with works. I know I know - Linus doesn't like debuggers. Well, hate to say it but he is wrong. There is no substitute for watching your code run on the platform in real time.

    For that matter dbg could use a little update - it is what 30 years old now, getting closer to 40. There are a lot of new things that need to be included.

    --
    I have mod points and I am not afraid to use them
    1. Re:Editors and Debuggers by Microlith · · Score: 4, Insightful

      Anyone that claims they aren't hasn't bothered to use the tools available to them. It's entirely possible to get equivalent context-awareness going in VIM/Emacs, but since they aren't packaged as a whole people write them off as being "obsolete" or somesuch nonsense.

      Get a real kernel debugger INTO the linux kernel. DO it now

      Last I looked KGDB worked quite well, and it behaves in a very similar fashion to Windows when being debugged.

      For that matter dbg could use a little update

      You mean GDB? What "new things" could be added?

    2. Re:Editors and Debuggers by selven · · Score: 0

      I've used Visual Studio 2007. Yes, autocompleting variable names is awesome. Yes, vim and emacs are, aside from that, far more productive for code editing. Vim has context aware help too - it does syntax highlighting and matching bracket highlighting in dozens of different languages.

    3. Re:Editors and Debuggers by arevos · · Score: 2, Interesting

      Anyone that claims either vi or emacs is a useful editor hasn't used a modern Windows IDE.

      Anyone that claims Visual Studio is a useful IDE hasn't used Emacs SLIME :)

    4. Re:Editors and Debuggers by MrMr · · Score: 4, Funny

      Clippy

    5. Re:Editors and Debuggers by Anonymous Coward · · Score: 1, Interesting

      Anyone that claims either vi or emacs is a useful editor hasn't used a modern Windows IDE.

      Umm, I've used a modern Windows IDE and I still always go back to vim to do my Linux or cross-platform development. Contextual awareness is great, but the baggage dragged over with it is not worth the cost in terms of execution speed (it shouldn't take THAT fucking long to compile a program with half a dozen modules) and corrolary features such as build and integration control. In this regard, the Unix approach of having independent tools that do a small number of things well is still better than having a single tool that does a lot of things half-assedly.

    6. Re:Editors and Debuggers by sbeckstead · · Score: 1

      SLIME does not hold a candle to VS sorry.

    7. Re:Editors and Debuggers by gujo-odori · · Score: 1

      Say what you want about emacs but vim is a quite useful editor. Jeany is pretty good, too, if you like GUI editors. I actually don't like IDEs for editing. Sure, they bring a lot of other things to the table that may be compelling enough to hold my nose and use the IDE's editor, but to say that vi or emacs are not useful editors when compared with a modern Windows IDE seems a stunning statement to me. I find that when what needs to be done is to write and edit, a standalone editor is a better tool for that the embedded editor in an IDE. In fact, all of the best programmers I know use either vim or emacs rather than an IDE. I find it very disturbing that most of them use emacs rather than vim, but that's another story :)

    8. Re:Editors and Debuggers by Anonymous Coward · · Score: 0

      There's nothing that devs use more than editors. The reason we have emacs and vim is that they work great.

      Or, to put it another way, all the folks that might have the ability to write a better IDE won't do it, because they prefer emacs or vim. The people who prefer IDEs aren't the top-tier programmers, at least on linux.

    9. Re:Editors and Debuggers by vampiro369 · · Score: 1

      What if I use Netbeans on Linux? Is that better than vim or emacs? Does it count if I use Xcode? Or are claiming that Windows is the best programming platform? Or are you drunk? Or are you not really a programmer? What about patching the kernel? Why would you need to patch *any* kernel if you so obviously think that a "modern Wndows IDE" is better than good old vim and emacs?

      You are very confused sir. You also communicate as newbies often do: generalization, lots of unrelated subjects, etc, etc. After all, I have used lots of different IDEs and I keep coming back to my faithful vim because, guess what, it does what I need and more. For the things it doesn't do, well, that's why you need lots of the GNU tools out there, right? How do you awk on your beloved Windows IDEs? How do you grep? How do you head or tail or even cron your way on your Windows IDEs?

      Again, why was it you had to patch your Linux kernel?

    10. Re:Editors and Debuggers by sbeckstead · · Score: 1

      If you want to spend more time configuring the tools than developing then KGDB and GDB are the tools for you! GDB is so arcane that setting a breakpoint is nigh impossible without the manual in your hand but then you have only one left to type with, and oh wait, you will have two hands after all as there is no manual for GDB sorry my bad. Oops I stand corrected I found the manual. It does assume you know quite a bit though and these are the instructions for "running a program under GDB"

      When you run a program under gdb, you must first generate debugging information when you compile it.

      You may start gdb with its arguments, if any, in an environment of your choice. If you are doing native debugging, you may redirect your program's input and output, debug an already running process, or kill a child process.


      to compile a program to run inder GDB you are assumed to be using C/C++ and the GCC compiler from the command line ie.
      To request debugging information, specify the `-g' option when you run the compiler.
      There is more but it also assumes the command line is in use or you are somehow a guru at configuring the IDE of your choice. Sorry. For utility and ease of development Visual Studio is still tops.
      Surely someone somewhere has made GDB and their IDE of choice easier to use? I will plead ignorance of it despite quite a bit of research and the research delivered some very confusing results at that.

    11. Re:Editors and Debuggers by arevos · · Score: 2, Informative

      SLIME does not hold a candle to VS sorry.

      I can think of plenty of features that SLIME has, but VS does not. However, I can't think of any feature in VS that is not matched by either Emacs itself, SLIME or some other extension.

      Could you explain why you think VS is better?

    12. Re:Editors and Debuggers by castoridae · · Score: 1

      Anyone that claims Visual Studio is a useful IDE hasn't used Emacs SLIME :)

      Props to that!

    13. Re:Editors and Debuggers by Lunix+Nutcase · · Score: 1

      (it shouldn't take THAT fucking long to compile a program with half a dozen modules)

      Unless you have some piece of shit computer, I just compiled a solution in VS with 50 projects in 1 minutes. The machine has a rather low spec core2duo and 3 gigs of RAM.

    14. Re:Editors and Debuggers by Anonymous Coward · · Score: 0

      Anyone that claims either vi or emacs is a useful editor hasn't used a modern Windows IDE.

      Umm, I've used a modern Windows IDE and I still always go back to vim to do my Linux or cross-platform development. Contextual awareness is great, but the baggage dragged over with it is not worth the cost in terms of execution speed (it shouldn't take THAT fucking long to compile a program with half a dozen modules)

      To be fair to Visual Studio, most of that delay is because the Microsoft compilers are bizarrely slow, rather than because of any problem with the IDE itself. Last time I checked (which was admittedly a couple of years ago) MSVC run from a command prompt took ran about three times as slowly as cygwin gcc, which was another factor of two behind gcc on Linux. If you configure VS to use a different compiler then builds go a lot faster (although you lose a lot of the clever features like modifying a program without restarting it)

      (Having said that, I agree with you that VS just isn't worth it. I used to write Windows device drivers for a living, and the only vaguely tolerable workflow I ever found was to do the actual editing in emacs on a Linux box and then smbmount it into a Windows machine to do the compile step.)

    15. Re:Editors and Debuggers by ae1294 · · Score: 3, Funny

      I see you are programing a privilege escalation exploit, would you like help with that?

    16. Re:Editors and Debuggers by Anonymous Coward · · Score: 0

      since when was a core2duo considered "low spec"?
      Not everyone has the need to buy a new CPU and MOBO when their existing system works just fine.

    17. Re:Editors and Debuggers by Ixan · · Score: 1

      Clippy

      Da! Is brilliant idea! Already done though.

      http://vigor.sourceforge.net/

      --
      Nothing to see here, move along
    18. Re:Editors and Debuggers by Charan · · Score: 1

      SLIME looks very useful, so long as the only thing I need to debug is Emacs itself. I can't find the part in the SLIME manual where it helps me write and debug programs written in any of the languages supported in Visual Studio. The one I care about is C.

      If SLIME really can help me, I'd love to use it. It does look quite nice.

      As an aside, if you believe that open source developers write tools to scratch their own itches, does this mean that more people need to debug Emacs than need to debug any other program? ;)

    19. Re:Editors and Debuggers by marcosdumay · · Score: 1

      "You mean GDB? What "new things" could be added?"

      It's probably not what the GP was talking about, but if somebody improved the support for C++ templates, that would be great. Sometimes it gets lost.

      Anyway, it is not as if what a debuger does changed on those 30 years. What is happening is that there is a generation of developers afraid to use the command line, as amusing as it may sound. May I add that I doubt about the competence of those ones that are afraid of the command line, but they are cheap, sometimes it is hard to make a point about hiring good people.

      About IDEs, enterprize languages (Java, .Net) come with lots and lots of redundancy. You don't want to get ride of the redundancy, since that is what makes those languages resilient to bad programers passin through a team, so the good programmers automatize things through IDEs, and everybody is happy. The problem is that people see how much productivity they gain with a IDE on such languages, and start expecting the same gain when working on less redundant ones.

    20. Re:Editors and Debuggers by gbjbaanb · · Score: 1

      he wasn't trying to compile, just bring up the intellisense parameter list :)

    21. Re:Editors and Debuggers by Anonymous Coward · · Score: 0

      Sorry. For utility and ease of development Visual Studio is still turnip tops.

      Fixed that for you.

    22. Re:Editors and Debuggers by Anonymous Coward · · Score: 0

      C++ support?

    23. Re:Editors and Debuggers by Microlith · · Score: 1

      I had KGDB going in less than a day, and the total debugging time has by far eclipsed the setup time. And I don't use GDB directly, I use DDD, which is a graphical frontend to GDB that makes setting breakpoints trivial.

      to compile a program to run inder GDB you are assumed to be using C/C++ and the GCC compiler from the command line ie.

      As if Visual Studio can debug GCC generated binaries.

      There is more but it also assumes the command line is in use or you are somehow a guru at configuring the IDE of your choice.

      So setting compiler options in your GUI (assuming you have one) makes you a guru? Hell, knowing how to use your compiler makes you a guru?

      For utility and ease of development Visual Studio is still tops.

      Sounds more like a crutch for people who don't know or refuse to learn. I can understand wrapping up features in a nice GUI, but to claim that knowing what those nice GUI options actually translate to shouldn't be "guru level" knowledge.

      It makes me wonder if you've ever explored the development tools available on Linux, or if the concept of a console scares you.

    24. Re:Editors and Debuggers by Microlith · · Score: 1

      to compile a program to run inder GDB you are assumed to be using C/C++ and the GCC compiler from the command line ie.

      As if Visual Studio can debug GCC generated binaries.

      Sorry, misinterpreted that. You are assumed to be using a GCC generated binary, which means you'll be using a language that is available via the GNU Compiler Collection. If you're using C#, Java, Python or Ruby you'll use the debugging facilities supplied by those languages. You seem to mistake the unified UI of VS for using the same debugger on multiple languages.

    25. Re:Editors and Debuggers by P-Nuts · · Score: 1

      SLIME is for developing in Common Lisp. Emacs is written in its own Lisp dialect (called Emacs Lisp).

      If you want a more IDE-like environment in Emacs, have a look at CEDET and ECB.

    26. Re:Editors and Debuggers by sbeckstead · · Score: 1

      Tool chain integration that actually works, not having to code in lisp to make macros work? I could go on but that will do for a start,

    27. Re:Editors and Debuggers by Anonymous Coward · · Score: 0

      If you want to spend more time configuring the tools than developing then KGDB and GDB are the tools for you! GDB is so arcane that setting a breakpoint is nigh impossible without the manual in your hand but then you have only one left to type with, and oh wait, you will have two hands after all as there is no manual for GDB sorry my bad. Oops I stand corrected I found the manual. It does assume you know quite a bit though and these are the instructions for "running a program under GDB"
      .
      . .

      It is exactly this type of thinking that has created the ridiculous number of software failures, exploits and other such shenanigans in the world of computing as a whole, open-source and closed-source alike.

      There is nothing wrong with gdb, emacs, vim, make etc as a full development environment all on their own. The real problem is not a lack of tools, the problem is not knowing how to use them productively. It may be difficult for some people here to relate to, but I have written non-trivial applications with nothing more than a plain text editor (without hilighting) and a compiler. From the command-line. Sometimes in plain, unadorned C, sometimes even in assembly language.

      Some will argue that I would have been more "productive" using a more "modern" or "advanced" environment that spit out boilerplate code for me, or allowed me to see some kind of visualizations of what I was writing, but I reject this idea in it's totality. Writing some code may be pretty easy with some platforms, but being a good programmer is hard work. The microprocessor is a machine, and a dumb one at that. It is not a mathematical abstraction or nebulous concept of computation, it is just a machine with certain capabilities and limitations. A programmer should *always* understand what the *machine* is doing under the covers when he/she is writing code, not only at the level of objects and garbage collection but at the level of register transfers and memory activity.

      Programming concepts like flow control, modularization, good algorithm implementations and user interfaces are abstractions that do not require flash-bang tools to do correctly or efficiently. They require an imagination, technical knowledge and sound planning. I certainly do not have a problem with using the latest gadget, but please, don't use it as a crutch that keeps you from understanding what you are really doing. How many crappy MFC programs have been written because the programmer dosn't know what the messge-cracking macros are doing for them, or even how the bare Windows API works? How many crappy multi-threaded applications deadlock and bail because the programmer was just using whatever threading abstraction their tool/language has without understanding how it actually works?

      And it is not elitist to expect that someone who comes into an open forum complaining about a lack of "proper" development tools should be expected to at least understand how to use the tools that are already there. The enormous software stacks that are relied upon every day, such as Unix, TCP/IP, various SQL servers, Apache, hell even DEC VMS were all written long before things like Visual Studio were more than an idea in someone's imagination. These large applications were written by people with a sound understanding of the platform and tools available to them, and they used them to good effect. Could they have done better with different tools? Not necessarily, the examples I have given are all things that are not dragged-n-dropped onto a design surface, they are things which required a good design and planning ahead of time. They required that the programmers who wrote them knew both what they were writing, and how they would go about writing it.

      My father used to write programs by hand, then waited his turn at a terminal to type the program into the computer and run it through the assembler. His design tools were a pad and paper, his brain and his imagination. When he typed programs in, he needed them to work, the f

    28. Re:Editors and Debuggers by GreyWolf3000 · · Score: 1

      "There is no substitute for watching your code run on the platform in real time."

      Well, yeah.. but debuggers often alter what goes on in real time. Especially when lots of hardware interrupts are involved. I've seen first hand the damage a kernel level debugger can do. It can lead you chasing down ghosts, misidentifying problems, mask problems making them impossible to see when the debugger is running, etc.

      To be fair, I've also seen printk() screw things up. Especially when prink() is stuck running inside interrupt context and is spewing data out a serial port :)

      I found that the best way to debug the really nitty gritty hard-to-debug stuff is to bit bang wires that are connected to a logic analyzer of some sort.

      --
      Slashdot: Where people pretend to be twice as smart as they really are by behaving like children.
    29. Re:Editors and Debuggers by sbeckstead · · Score: 1

      Sonny you just need to get the hell off of my lawn!
      Yeah we made all that stuff and we were proud of what we accomplished with the stone knives and bear skins. But this is the 21st century.

    30. Re:Editors and Debuggers by rastos1 · · Score: 2, Interesting

      You mean GDB? What "new things" could be added?

      For sure I can imagine a few things:

      • GUI where I can drag and drop an expression from source code to watch window, or easily expand a structure in watch window, or switch between threads, or set commands on breakpoints, ...
      • edit&continue
      • remembering display expressions when going into the same functions twice, automatically save/load breakpoints on exit/startup
      • ...

      Yeah, GDB can do a lot. But GDB alone is not enough for efficient debugging.

    31. Re:Editors and Debuggers by cheesybagel · · Score: 1

      Try programming in Java in Vim, then in an IDE with refactoring support. It actually makes Java *gasp* useable.

    32. Re:Editors and Debuggers by bit01 · · Score: 1

      But this is the 21st century.

      And in the 21st century there's quite a lot of programmers who are so incompetent that they think that a command line is scary. It's just another programming/scripting language, and a useful one at that.

      GUI's have their place. But so do command lines.

      ---

      DRM is the #1 cause of software failure today.

    33. Re:Editors and Debuggers by arevos · · Score: 1

      Tool chain integration that actually works

      What doesn't work?

      not having to code in lisp to make macros work

      Visual Studio doesn't support any programming language with macros, unless someone has made a Boo plugin whilst I wasn't looking.

      Or did you mean keyboard macros? Because you don't need to write any code for that, either. Now, I don't think Emacs is as quite good as Vim for defining keyboard macros, but it's certainly better than Visual Studio.

    34. Re:Editors and Debuggers by arevos · · Score: 1

      I can't find the part in the SLIME manual where it helps me write and debug programs written in any of the languages supported in Visual Studio. The one I care about is C.

      C is a statically compiled language, so you can't really build a system like SLIME for it. SLIME needs to be connected to a running VM that it can push code to dynamically. C wasn't designed with that capability in mind.

    35. Re:Editors and Debuggers by sbeckstead · · Score: 1

      Yes command lines have their place, in the closet with the rest of the tools that hardly need to get used. Get over this command line thing guys, actually JOIN the 21st century. There is plenty of typing to do without having to resort to arcane paroxysms of too short commands because the Unix weenies that made them up wanted them to be as short as possible to dispense with excess typing and didn't care how obscure the references were. There that was a whole run on sentence with way too many characters.

    36. Re:Editors and Debuggers by emurphy42 · · Score: 1

      See, you think you're being funny, and then somebody goes and calls your bluff. (The author was an old college buddy of mine. Had a server in his dorm room, so we had some fun one time redirecting stuff to its /dev/audio in the middle of the night...)

    37. Re:Editors and Debuggers by Anonymous Coward · · Score: 0

      "May I recommend IE6?"

    38. Re:Editors and Debuggers by b4dc0d3r · · Score: 1

      Someone says they prefer stepping through their user-land code, and you reply by saying that kernel level debugging is hard? Most software is userland, most debugging is userland.

      Truly, there is no substitute for watching each branch happen to understand exactly why the application behaves a certain way. Static analysis is even harder when multiple classes and inheritance are involved, polymorphism makes it a whole different thing. It's easier for me to learn source code by putting a breakpoint on whtever I'm looking at, and running to that, then stepping out to see how I got there.

      I don't care what happens to the kernel during that time, most people don't.

    39. Re:Editors and Debuggers by Anonymous Coward · · Score: 0

      Too bad there is no such thing as Visual Studio 2007.

    40. Re:Editors and Debuggers by Anonymous Coward · · Score: 0

      The poster I was responding to seemed to be claiming that he wanted a debugger integrated into the kernel. He said "Get a real kernel debugger INTO the linux kernel. DO it now - I hate having to patch the heck out of my kernel just to see what some module that I am unfamiliar with works."

      And I wasn't saying that it was hard to debug the kernel, just that there were problems with debugging kernel level code that don't exist when debugging user land code. I also agree that debuggers can teach you how code works in a way that is orders of magnitude quicker than visually auditing or using statistical analysis.

      I just don't see why you have a problem with what I posted.

    41. Re:Editors and Debuggers by ae1294 · · Score: 1

      Humm well, I run linux so if I wanted to test it properly I'd have to use the IE6 emacs plugin....

  12. Add Emacs Lisp to your skills by sznupi · · Score: 3, Funny

    Because we need someone to finally give us proper editor on top of the OS we use.

    --
    One that hath name thou can not otter
    1. Re:Add Emacs Lisp to your skills by jstults · · Score: 1

      What tools? Well, I'm not sure, but I've narrowed it down to two: it's either Emacs or Vi...

    2. Re:Add Emacs Lisp to your skills by marcosdumay · · Score: 1

      So, the only optin is rewriting VI in Emacs-Lisp?

    3. Re:Add Emacs Lisp to your skills by Anonymous Coward · · Score: 0

      Because we need someone to finally give us proper editor on top of the OS we use.

      They already have, you can run vi in emacs.

    4. Re:Add Emacs Lisp to your skills by DMUTPeregrine · · Score: 1

      It's been done, and comes with EMACS. Try "M-x viper-mode" in level 1.

      --
      Not a sentence!
    5. Re:Add Emacs Lisp to your skills by aldld · · Score: 1

      Of course. I'm pretty sure there's Vi for Emacs.

  13. Let's Remember by tjstork · · Score: 0

    Unlike "RTFM" and "Fork it if you don't like it", which are synonyms for "F--- Off".

    Remember that 99% of the time, this is better than what closed source gives you.

    Have a look at accounting systems - what do they do? No one knows. Want to program them? Have to pay for licensing. Want to switch? Costly complex, and more difficult because of baked in rules.

    Like, look at how much DOS based stuff there is out there, that people STILL use to run businesses with, in a command window, because, well, the vendor is locked in, and they know they don't have to spend a dime to change.

    --
    This is my sig.
    1. Re:Let's Remember by nine-times · · Score: 3, Interesting

      That's fair, but it's also worth keeping in mind that "Fork it if you don't like it" is only better than a closed source product if you have the resources and expertise to fork it. Otherwise, you're just as helpless.

      Beyond that, the software that will eventually replace the old DOS-based crap you're talking about will be whatever meets the businesses'/users' needs. If you'd like to see that be your FOSS project rather than a proprietary solution, then paying attention to user requests might be helpful.

      If you don't care whether your project gets used... well I guess users have no leverage unless they want to pay you, and maybe not even then.

    2. Re:Let's Remember by Zero__Kelvin · · Score: 0

      "That's fair, but it's also worth keeping in mind that "Fork it if you don't like it" is only better than a closed source product if you have the resources and expertise to fork it, and you are the only one who doesn't like it. Otherwise, you're just ass hapless. " - (fixed that for you)

      I don't think you get this whole Open Source thing. If you don't like it for a good reason, then many others won't either. Among them will likely be some people who do have the resources and actually do it. If that doesn't happen, then your complaints are suspect, or you are the extremely rare hapless guy who has valid complaints when nobody else willing to do something about it does. Compare and contrast that to Windows, where everyone with a clue has complaints and those same complaints haven't changed in a decade because they have all the resources they need to fix it but the source. Still, fix it they did. The fix is called Linux.

      --
      Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
    3. Re:Let's Remember by nine-times · · Score: 1

      I don't think you get this whole Open Source thing. If you don't like it for a good reason, then many others won't either.

      That's not necessarily the case. I might have different needs the "most people". No, a closed source vendor won't necessarily support my niche needs either, but my only point was that the ability to make my own patches or fork a project is only an advantage if I have the resources to do that.

      But there are lots of common complaints about open source projects that don't get fixed. Claim they're not "valid" if you like, but users still won't use your project if you don't address their "invalid" complaints and closed source products do.

    4. Re:Let's Remember by Anonymous Coward · · Score: 0

      Fuck that!
      With FOSS you have the option to fork it, with a closed source product you don't, period.
      FOSS creates a free market for software enhancements / maintenance, with a closed source product you're often dealing with monopolies.

    5. Re:Let's Remember by Zero__Kelvin · · Score: 1

      "but my only point was that the ability to make my own patches or fork a project is only an advantage if I have the resources to do that."

      Yes. I saw that. That is why I posted. To point out that your only point was quite off base.

      "But there are lots of common complaints about open source projects that don't get fixed.

      Most of the time those complaints are made on Slashdot rather than to the developer. In other cases the person who has no ability or intent to help in any way (including donations) is a jerk the way they go about it. Here is a quiz for you:

      How many issues have you brought to the appropriate forum (appropriate developers e-mail / mailing list), and how has that been handled?

      --
      Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
    6. Re:Let's Remember by nine-times · · Score: 1

      So wait, just for clarification, you're suggesting that every valid request made to open source projects gets addressed quickly and thoroughly to the satisfaction of the requestor?

      I'm trying to work out just what it is that you're claiming, but that seems to be it. You don't seem to even be willing to entertain the possibility that some valid and polite requests, made under appropriate circumstances, ever go unanswered.

      Anyway, it doesn't really matter to my point. Even if you ignore requests to spite the "jerks" who make their requests improperly, you're still probably losing users. And as I said, I think that's perfectly fine... unless you want lots of people to use your software. On the other hand, if FLOSS developers really want to steal users from their proprietary counterparts, then they may want to listen to the jerks' requests, too.

    7. Re:Let's Remember by Zero__Kelvin · · Score: 1

      "So wait, just for clarification, you're suggesting that every valid request made to open source projects gets addressed quickly and thoroughly to the satisfaction of the requestor? "

      No. What I am saying is simple. If you use FOSS you win. The ability to fork works in your favor even if you never write a lick of code or contribute in any way , because even if you don't fork others can and often do.

      You can contribute without paying money or writing code, simply by feeding back and understanding that your feedback is valued, but is not an edict.

      You don't win every time but you win fairly often, as opposed to the proprietarty scenario where you win almost never. When do you think Microsoft ever listened to its users beyond the point where they determined they could make money regardless if they listened ot not? Why do you think they don't listen about security? When is the last time you saw a FOSS project announce that the next version would support X only to discover that it was just marketing and they lied again?

      "On the other hand, if FLOSS developers really want to steal users from their proprietary counterparts, then they may want to listen to the jerks' requests, too.

      As I said, you really don't get FOSS at all. We have no desire to "steal users" from proprietary vendors. That statement makes absolutely no sense in a FOSS context. When we encourage people to adopt FOSS it is because we are looking out for their best interest. We would like to share. Sometimes the typical user is like a child who won't try guacamole because it looks "yucky" and is different. Occaisonally , the person doesn't like the guacamole after a sincere effort and trying different restaraunts, and that is fine. Most times though, they don't like the first bite at the first restaraunt and announce to the world that guacamole isn't that great and people who like it need to learn from a shit-vendor how to make guacamole ;-)

      I'm certainly not saying FOSS is perfect, or that people are there to solve your every desire at your whim. Microsoft doesn't do that after getting paid shitloads of money from their user base. We do it much more often, usually without expecting or receiving much - if any -money at all.

      Finally, I note that you didn't share your first hand experience even after I requested it. Should I infer that you have none?

      --
      Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
    8. Re:Let's Remember by nine-times · · Score: 1

      Finally, I note that you didn't share your first hand experience even after I requested it. Should I infer that you have none?

      You should infer that I'm trying to avoid arguing pointlessly with people who won't listen.

    9. Re:Let's Remember by Zero__Kelvin · · Score: 1

      "You should infer that I'm trying to avoid arguing pointlessly with people who won't listen."

      Right. I won't listen to you claim that forking only helps if you have resources and time to code. I won't listen to that because the entire FOSS world is based on that ability, and many, many, many people have leveraged that ability for you. You didn't have to do a thing except recognize that, choose from the thousands of free solutions out there, and take advantage of that. There is nothing to listen to, because what you claimed is absurd. Here is just one of thousands of places you will see direct evidence of the advantage of that for all people who are smart enough to recognize the advantage.

      Furthermore, even if you continue to use Windows you still get the advantage, because Microsoft has recognized that they can't get away with as much with Linux in the picture. Your claim is ridiculous bullshit that ignores the obvious.

      Here is a hint for future reference: If you want people to listen, actually have something valid to say. ;-)

      --
      Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
    10. Re:Let's Remember by Anonymous Coward · · Score: 0

      You might wanna read this (http://linux.oneandoneis2.org/LNW.htm) before your next comment on FOSS.

  14. Money by sunking2 · · Score: 1

    Seems to work in the real world when you want to attract talent.

  15. Documentation by TopSpin · · Score: 3, Insightful

    API references aren't enough. Need rational, best practices, meaningful examples and references. Tutorials aren't terribly useful because they are inherently limited to cases that are easily teachable. OpenSSL is a fine specimen; crucial parts of the API are omitted from the current, maintained documentation. These can only be found in the archived SSLeay documentation, and that amounts to a spotty collection of notes.

    (yes, I've paid for the books, too)

    --
    Lurking at the bottom of the gravity well, getting old
    1. Re:Documentation by truthsearch · · Score: 1

      Agreed! We need more contributions to documentation.

    2. Re:Documentation by Anonymous Coward · · Score: 0

      Totally! I've been doing some work with open source APIs lately and its a nightmare. You want to help developers, more and better documentation.

    3. Re:Documentation by jgrahn · · Score: 1

      My biggest problem with much of OSS is that the documentation is terrible. Try figuring out what the *right* way to do a "poll" type call on Linux is

      You mean poll(2)? It's not Linux's job to provide free tutorials for programming against the POSIX APIs. That's what you buy "Advanced programming in the Unix environment" for.

      If you're referring to the poll(2) man page, don't expect it to be a tutorial. (There is a select_tut(2) man page, but that's a rare exception.)

    4. Re:Documentation by shutdown+-p+now · · Score: 1

      It's not just documentation, it's specifically the "how to do X" kind of documentation, as opposed to reference-style "what function F does". For many FOSS libraries and frameworks out there, the only thing they have is Doxygen-generated class/function reference. Occasionally, you also get a very brief introductory tutorial. The result is that one often has to sift through the list of classes and functions, trying to guess which one is relevant to the task at hand from its name - not a very productive way to spend time.

      If you want to see good, proper documentation for a FOSS library, look no further than Qt. At that point, you can either decide that Qt is it, and anyone using any other framework does so at his own peril (which is a very tempting POV), or you could e.g. help Gtk guys to bring their docs to the same level.

    5. Re:Documentation by gbjbaanb · · Score: 1

      I think he means whether to use poll, epoll, select or umm... the other one.

      oh yes - kqueue. so which one's the right one to use? Now I've remembered them, I can can google for examples/tutorials/commentary and so forth. Sure, its the user's responsibility to educate himself enough as to which example code he'll find is good and which is poor.... but that's time that could be better spent on the next problem. If the documentation provided such an example itself everyone would be more productive and there'd be better quality code in Linux (he said hopefully).

      Microsoft does something right, and its pander to developers. MSDN is (well, was) a truly magnificent beast. Every API call nicely laid out, formatted with examples and little code snippets. Man needs to be given a bit of a re-branding and made to be the primary source of all Linux-related documentation. (eg only C calls are in man, python - you have to consult the python web site. That's probably why its not so well-known to all Linux developers)

    6. Re:Documentation by b4dc0d3r · · Score: 1

      Even better, a truly useful "quick start" program example for each library.

      For example, I want to know how to use zlib. The library is there, there is a zip and unzip executable, and you can have the make process run a self-test to ensure it can round-trip data without loss. All I have to do is look at how zip and unzip run, and I can use it just like that. Every library needs something like this.

      How about a basic OpenSSL project that showcases one or two aspects of OpenSSL in a very short, one-screen, one-file executable? I've never used it so I don't know what to suggest.

      Last time I tried to use fftw library I couldn't figure out where to even start - is there an initialization you have to call (like some crc32 code requires pre-computing an array before using it, but it's not clear by the docs) or something else? I couldn't find a simple program that takes a wav file (or other non-encoded data points) and outputs FFT results. I'd even take plain-text output that I could parse some other way... I can't figure out how to get the sample data in and get something useful out. The "demo" apps I've seen are way too complicated and do too much on their own to understand how they really use fftw. I've been trying to figure it out for maybe 8 years now, off and on. I know music theory, the related physics and acoustics, and have lots of experience with calculus, so you'd think it would be a no-brainer. I even understand how to implement FFT. I could have written my own library if I hadn't been distracted by trying to get this library working.

  16. Documentation by Anonymous Coward · · Score: 5, Insightful

    My biggest problem with much of OSS is that the documentation is terrible. Try figuring out what the *right* way to do a "poll" type call on Linux is, or how to configure clustering with Geronimo and you will quickly realize that outside of reading the code there is almost NO good documentation on how to do more advanced things with open source software.

  17. FLOSS by Anonymous Coward · · Score: 3, Informative

    FLOSS stands for "Free/Libre Open Source Software". I have not seen it with the "Libre" added in there before, so I'm sure others have not as well. Great job spelling it out the first time you use it, Slashdot.

    1. Re:FLOSS by Randle_Revar · · Score: 1

      This is the first time you have seen FLOSS instead of FOSS? How long have you been here, a week?

    2. Re:FLOSS by BlortHorc · · Score: 1

      FLOSS stands for "Free/Libre Open Source Software". I have not seen it with the "Libre" added in there before, so I'm sure others have not as well. Great job spelling it out the first time you use it, Slashdot.

      This is the first time you have seen FLOSS instead of FOSS? How long have you been here, a week?

      To be fair, though there is no FA to R, it has taken the time to read an unrelated FA and tell us all something we already knew. Which is clearly naff, but as far as ACs go, this one is clearly trying. I vote we all tinkle on its head, and see if it works the same for ACs as it does for citrus.

    3. Re:FLOSS by broken_chaos · · Score: 1

      Half the time my mind decodes it as "Free/Lossless Open So--" before screeching to a halt and restarting the acronym reading...

    4. Re:FLOSS by Anonymous Coward · · Score: 0

      No. First weekers haven't learned to AC their post yet. 2nd week for sure.

  18. we need... by al3k · · Score: 1

    a text editor with a web browser, email client, irc, calculator and tetris......oh wait

  19. Interoperability among SCMs by andy753421 · · Score: 3, Insightful

    Git, mercurial, monotone, etc. are all ready nice, and do pretty much the same thing, but it's annoying to have to use the one that the project leader decides on. It would be nice (if it's possible) to be able to pick which one you want to use as a client, and have it work with whatever the project manager wants to use for the upstream repository. I'm not sure what all this would encompass, probably some common distribution (push/pull) protocol would need to be implemented by all the different SCMs..

    1. Re:Interoperability among SCMs by Microlith · · Score: 1

      Why would interoperability between SCMs be useful?

      it's annoying to have to use the one that the project leader decides on

      But they're the project leader. They're calling the shots so you use what they specify. If you want to use something else, it's on you.

    2. Re:Interoperability among SCMs by dvice_null · · Score: 1

      > would need to be implemented by all the different SCMs

      You could implement a proxy which would translate the commands and answers from one system to the other. You use what ever client you like and connect to the proxy and proxy would connect to the real server.

      [client you want to use] --- [proxy] --- [server your project manager wants]

      But be prepared to find problems I couldn't think of.

    3. Re:Interoperability among SCMs by andy753421 · · Score: 1

      But they're the project leader. They're calling the shots so you use what they specify.

      Most projects let you pick your editor, filesystem, distribution, etc. It would be nice to add version control to that list. That doesn't seem like it would be all that hard to do. There are already tools to migrate a repository between different version control systems and they mostly use similar concepts.

    4. Re:Interoperability among SCMs by EsbenMoseHansen · · Score: 1

      You can actually use a lot of them against the others repository. E.g, hg works fine against a git repository. So just use git on the server (seems to be the one with most features there) and let people use whatever client they like.

      Not that there is any good reason to prefer git except for one thing, which brings me back on subject: We really need a libgit(2). Development has essentially halted on this.

      --
      Religion is regarded by the common people as true, by the wise as false, and by rulers as useful.
    5. Re:Interoperability among SCMs by Timothy+Brownawell · · Score: 1

      Git, mercurial, monotone, etc. are all ready nice, and do pretty much the same thing, but it's annoying to have to use the one that the project leader decides on. It would be nice (if it's possible) to be able to pick which one you want to use as a client, and have it work with whatever the project manager wants to use for the upstream repository. I'm not sure what all this would encompass, probably some common distribution (push/pull) protocol would need to be implemented by all the different SCMs..

      You can't have a common network protocol because of some fairly fundamental differences (rename tracking, use of crypto, concept of what a "branch" is, etc). What you can do, is have a common minimal-info dump format (for example, there's work to make monotone read/write git-fast-import data) that allows for one-shot, one-way data migration...you could probably extend this to allow for repeated pulls or maybe even bi-directional use, but you'd need code specific to each pair of systems and the people on both sides would likely need to avoid certain features.

    6. Re:Interoperability among SCMs by andy753421 · · Score: 1

      I've noticed this as well, at least using git against other repos (git-svn, git-cvsimport), but it's always seemed like a kludge to me. I haven't looked into it, but I've always assumed that git-svn/git-cvsimport/git-* were specific to git, which means they would need to be reimplemented in hg, mtn, etc. A common format for pulling changes would mean you'd only have to implement one other protocol besides the native protocol.

    7. Re:Interoperability among SCMs by jgrahn · · Score: 1

      Git, mercurial, monotone, etc. are all ready nice, and do pretty much the same thing, but it's annoying to have to use the one that the project leader decides on.

      I can't help reading that as "Git, mercurial, monotone, etc. are all ready nice, and do pretty much the same thing, but I want to use a different one which I think is much better and which noone actually *working* in the project wants to use". If you think they all do the same thing, why not use the one other's are using?

    8. Re:Interoperability among SCMs by andy753421 · · Score: 1

      Actually, you're pretty close there. Most of the projects I've checked out I only look though, or only make very small changes or bug fixes. In the past I've used cvs, svn, git, hg, and mtn. There's a bit of learning curve with each of these. Conceptually it's not too hard, but I have a hard time keeping track of whether it's `foo checkout --head' or `foo revert', `foo log --max-count' or `foo log --limit', etc. If you can keep track of all of these, then good for you, but I can't and would rather not try.

    9. Re:Interoperability among SCMs by Anonymous Coward · · Score: 0

      Except, the reason most people tries to stay clear of the conversions is that things tends to "get lost in translation". Different SCM:s usually work slightly differently on some points.

      The chosen SCM of a project is much like the code-formatting guide of the project. A matter of taste, and you may break out of it, but it get's messy for the project to accept your changes back.

      Examples:
        * Different renaming/merging strategies of BZR and GIT.
        * Revision per-file or globals revisions in CVS vs. almost everything else
        * Branch-tracking between VCS:s with different branch and revision-naming
        * Approaches to endianess-problems in VCS:es. (Don't care, convert on checkout, etc.) ...

    10. Re:Interoperability among SCMs by greg1104 · · Score: 2, Interesting

      The fundamental unit of all SCMs is the changeset. It's possible to convert between the various changeset formats using a tool like Tailor. So you could build a useful prototype of something like this by running incoming and outgoing changesets through that sort of tool to convert to the native format of the server SCM. You can convert them to the native format on the server, so no need to invent a new distribution protocol. People end up building one-offs for this sort of thing out of simple shell scripts sometimes while doing a VCS migration, like attaching an exporter to the post-commit hook on the master to handle the distribution side. I think part of the reason there's been little uptake on a more universal approach is because it's not that hard to hack together something that handles any two of the options here.

      As you can see on the Tailor documentation page, there's already other projects building in the direction of more universal changesets too. One major issues with aiming for really broad support here is testing to make sure every possible operation works, and in cases where they don't figuring out how to limit the subset of work to the common denominator.

    11. Re:Interoperability among SCMs by jetxee · · Score: 1

      hg-git is OK (to use hg as a client for remote git repositories).
      hg-subversion interoperation is told to be less reliable (people say bazaar-subversion integration is better).

      bzr clients seem to be more or less interoperable with all major VCSes via plugins (bzr-svn, bzr-hg, bzr-git).

      darcs and git are not interoperable with anything.

    12. Re:Interoperability among SCMs by xiong.chiamiov · · Score: 1

      I don't know about the other VCSs, but for git at least, there are a shit-ton of interopability scripts.

  20. Documentation by Anonymous Coward · · Score: 3, Interesting

    If there is one thing FLOSS regularly needs help with, it's documentation.

    I give you OpenSSL: One of the most well known libraries, and the documentation is very lacking. How about some better examples? How do I use PSK? How about a quick start guide?

    So many projects have this problem: They have "API documentation" which is nothing but a list of what the individual functions do with no indication how they get used together. Or they document functions but not data structures, etc. So if you really want to help, write documentation.

  21. Python - Vala/Genie by snadrus · · Score: 1

    Get some good examples written in Vala/Genie before the whole world goes Python. Most apps don't need Python. Just a few examples and some finding & documentation from someone who knows Python may be enough to get this off the ground. That would end "bindings" and "interpreter startup" issues from desktop Linux OSes.

    --
    Science & open-source build trust from peer review. Learn systems you can trust.
  22. API Finder by Pro923 · · Score: 1

    If I had the time I'd work on a tool that was geared towards helping developers find APIs to accomplish some idea. Often, I have a task to perform, but it's difficult to find the right functions or objects to use to do the job - or if one even exists. Generally, I google or use MSDN search, but I find it's difficult to find keywords that will lead me to APIs instead of generic discussions or procedures. If there were a tool that contained a database of every export from every DLL with instructions on how to use it, and some intelligent way to drill down and help find what you're looking for - I think that would be amazingly helpful.

  23. Easy web-based database form developer by XB-70 · · Score: 1

    I'd like a RAD tool as easy and secure (comparatively) as ORACLE's Designer product to build web app front ends to databases. This functionality should allow for nested queries, PL/SQL, triggers, printing, lookups, commits, rollbacks etc. etc. without all the hassles of having to get deep into the programming to make it happen. It should also allow database roles to be easily implemented with a full suite of tabbed forms and reports. Think MS ACCESS for the RAD part with the power and quality of PostgreSQL behind it - now make it produce Java forms and easily connect to remote data sources while not requiring a third tier app server. There's probably something like that out there. If so, I'd LOVE to hear about it.

    --
    *** Don't be dull.***
    1. Re:Easy web-based database form developer by BlortHorc · · Score: 1

      Plus a gin and tonic. Oh, and do you have any of those little biscuits, you know, the cheesy ones?

    2. Re:Easy web-based database form developer by beat.bolli · · Score: 1

      It exists and it's called Django. Design your tables in Python, and it generates a web-based CRUD interface for you.

      --
      Karma: none (due to not believing in reincarnation)
    3. Re:Easy web-based database form developer by ducomputergeek · · Score: 1

      You might want to take a look at PHPRunner from Xlinesoft. We've used it build web-based CRUD forms for our control panels in hours instead of weeks. There are some limitations, but it supports Oracle, PostgreSQL, MySQL and ODBC. Version 5.2 now supports DB2 as well. There are some limitations that are annoying. You can't just get a "blank" page that is password protected, but you can write custom code in while maintaining the look and feel. But we've found ways around some of the limitations. In fact, I rebuilt the entire backend for one of our products in about 6 hours from a clean start a couple weeks ago. I know the software extremely well, so take someone that's never used it before and it will probably take 2 - 3 days the first time.

      For the first year we were in business, the software allowed us to get stuff done easily and effectively without having to hire several coders to create our administrative backend.

      --
      "The problem with socialism is eventually you run out of other people's money" - Thatcher.
  24. Re: OP by Anonymous Coward · · Score: 0

    You would attract more developers by writing at least one sentence without "FLOSS".

    Now you sound like you're just some PR dude... and no self-respecting developer takes you serious.

  25. There's enough already, but... by Angst+Badger · · Score: 1

    I think we're pretty well covered as far as development tools go. The problem is that a lot of them aren't terribly well polished and the documentation -- if it exists at all -- is often terrible.

    Find a project you like but that needs work and help bring it to maturity. Or go looking through the plethora of abandoned projects out there for something that looks promising and bring it back to life.

    --
    Proud member of the Weirdo-American community.
  26. BOOTSTRAP by vlm · · Score: 1

    I can ... translate to my native language.

    Bootstrap... translate docs and error messages for developer tools, so your fellow native developers can work in a native language.

    And when you find stuff thats too icky to translate, rewrite and feed it back upstream.

    --
    "Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
  27. Anonymous Coward by Anonymous Coward · · Score: 0

    FLOSS developers need: some idea about how to write software for non-developers, non-developers, non-developers...

  28. What FLOSS developers need ... by Anonymous Coward · · Score: 0

    I for one need a way to generate income. Because, unfortunately, my: health and auto insurance companies, mortgage company, mechanic, grocery store, electric utility, water company, gas company, doctor, dentist, clothes store (Target for me), phone company, internet - they take only cash: they don't take code as payment.

    Support services? Every goddman laid-off techie is now offering computer support services - the market is saturated.

    I'd go work at McDonald's but they have plenty of old people working to compensate for the losses on their retirement and the ones that are looking for help only want Spanish speakers.

  29. FLOSS? by sbeckstead · · Score: 1

    I think all you really need is a good wax applicator and some really good string. Maybe a way to apply flavor would be nice too.

    1. Re:FLOSS? by BlortHorc · · Score: 1

      Mmmmm, waxy applicator

    2. Re:FLOSS? by macintard · · Score: 1

      How about another cool acronym? FLOSS? Really?

  30. demands != suggestions by Rix · · Score: 2, Insightful

    People who whine and bitch, saying things like "FOSS will never take off if it doesn't conform to me and only me" is why developers say fork it or fuck off. You're not contributing anything, you're just being a nuisance.

    Developers get all sorts of random demands from petulant users. If we patiently explained to each and every one of them why their suggestion either isn't a priority (or even would be detrimental to the project) we wouldn't be developers because that would take up all our time.

    You won't get anything different from closed source developers, except that you wouldn't manage to talk to them at all. They have a bureaucracy to intercept you, and tell you, politely, to fuck off.

  31. Hear, hear1 by Anonymous Coward · · Score: 0

    Anyone that claims either vi or emacs is a useful editor hasn't used a modern Windows IDE [...]
    I know I know - Linus doesn't like debuggers. Well, hate to say it but he is wrong.

    I'll believe this Linus guy when he not only shows that he is just able to write code, but also to manage a multi-million LOC project.

    Oh, wait...

  32. Re:Pay attention to USERS? by osgeek · · Score: 1

    As a developer: if I'm not being paid and my pet project isn't being helped along by someone willing/able to code, write documentation, etc... why should I care again?

  33. Teeth by Anonymous Coward · · Score: 0

    As a floss developer, I've found that teeth are a great place to start when developing new floss.

  34. FLOSS developers need Projects... aparently. by VortexCortex · · Score: 1

    Find an existing project that interests you and work on it.
    Developers need projects to collaborate on. Fortunately, many projects already exist.

    To find a project just browse open source projects on sites like SourceForge, Google Code, CodePlex, etc. Don't waste your time (and life) working on projects that don't get you excited. If you're not interested in a project it will feel more like work than it has to.

    Twenty heads are better than two.

  35. Superior IDE? by apharmdq · · Score: 1

    I used Visual Studio quite a bit, and I'm not sure why everyone seems to think it's so great. I've used Codeblocks and Kdevelop since then, and find that I much prefer those IDEs. Lately I've been working on using Vim as an IDE, and after a bit of adjustment, I'm pretty sure it will end up being my IDE of choice. As for debugging, gdb does an excellent job. (And those complaining about setting breakpoints . . . have you even used gdb?)

    I'm rather curious though. What features does VS have that make it so "superior?"

    1. Re:Superior IDE? by shutdown+-p+now · · Score: 1

      I'm rather curious though. What features does VS have that make it so "superior?"

      C++ code completion, and data visualizers for debugger watch windows - the kind of stuff that e.g. shows std::map or std::list instances as actual lists of values, and not their internal structure.

    2. Re:Superior IDE? by apharmdq · · Score: 1

      All of these things I've seen in the other IDEs I've used. C++ code completion is in all of them, and viewing the data in complex structures (including STL) is in most of the modern ones.

    3. Re:Superior IDE? by shutdown+-p+now · · Score: 1

      C++ code completion is in all of them

      The question is the quality. When I last tried Eclipse CDT, it struggled on pretty much any code with templates (i.e. std::vector or std::string). Qt Creator is noticeably better, but still can't handle things like std::tr1::bind or Boost.Lambda; ditto for VS2008. KDevelop4 and VS2010 can handle pretty much anything you throw at them.

      viewing the data in complex structures (including STL) is in most of the modern ones.

      Didn't see it in CDT. Sure glad it's in Qt Creator, though.

    4. Re:Superior IDE? by apharmdq · · Score: 1

      I've never tried Eclipse, so I wouldn't know how it handles in that area. I am quite happy with KDevelop though, and I only use Codeblocks because it has a Windows version (back when KDevelop was Linux only). In any case, it seems to me that in the end it's more a matter of people being used to VS, rather than other IDEs lacking in capability.

    5. Re:Superior IDE? by Xest · · Score: 1

      It's not that they like capability, it's that the capability is often half-arsed in other IDEs.

      Yes a lot of IDEs have code completion for example, but they're nearly all hopeless at jumping to the item you want, so slow at doing so that you've typed it before the suggestions come up, or fail to even suggest anything at all.

      Visual Studio jumps to exactly what you want in the drop down list 99% of the time so you can just type the first couple of characters and hit enter, then do the same with the next block- basically you can code so much faster.

      This is further boosted by the refactoring tools of Visual Studio, they both exist, and work, two points which many IDEs fail to implement.

      But it goes on and on like this, whilst other IDEs have these features, it's pretty much the case that other IDEs don't have ALL the features, and those they do have just aren't as good as the implementations in Visual Studio.

      Simply put, Visual Studio lets you be far more productive, particularly if you use all the tools in it.

  36. QtCreator by scorp1us · · Score: 3, Interesting

    Yes, I'm a Qt Fanboi, but hear me out:
    Qt is free (LGPL), multiplatform (support all users), fill-featured and clean.
    QtCreator (new) is the Qt IDE, with tons of support and integrated help, including an integrated gdb (or other) debugger.
    If you're on Python, then wait a bit for PySide or get PyQt now.

    I feel I can move mountains with just one download the sdk

    --
    Slashdot's rate-of-post filter: Preventing you from posting too many great ideas at once.
  37. Online Translation Tool by Anonymous Coward · · Score: 0

    It would be nice to have an easy to use online translation tool for gettext that would allow users to easily add translation sentences. Launchpad has something like this built-in but a standalone app would be much better IMO.

  38. A better acronym. by Doug52392 · · Score: 1

    "FLOSS" sounds like what I use to clean my teeth.

    1. Re:A better acronym. by maxume · · Score: 1

      I was going to suggest dropping the "Free", but I decided people wouldn't go for it.

      --
      Nerd rage is the funniest rage.
    2. Re:A better acronym. by Katatsumuri · · Score: 1

      Yes, I wish we could use a simple term like "freeware" to mean "software that is truly free" (I know, it's already taken for "free as in beer"). All these OSS / FOSS / FLOSS / SCHMOSS acronyms are getting really tiresome. Unfortunately, we have to use them in our current situation, to avoid confusion.

      Hmm, maybe "freedomware"? Sounds stupid enough to stick with the blogosphere. Just a thought.

  39. Give me UltraEdit for *nix by haplo21112 · · Score: 1

    I love that tool for my windows editing, if something that replicated its functionality that was as easy to use and learn existed for *nix world...I'd be in heaven.

    Yes there are lots of editor tools, but I have yet to find one that works as easily (and intuitively at least for me) as UltraEdit. I have never had to access the help for this tool its that easy, but at the same time hugely powerful!

    Clone that! Make it work native in KDE! Yeah that would help immensely.

    --
    Power Corrupts,Absolute Power Corrupts Absolutely, leaving one person(group)in charge is absolutely corrupt.
    1. Re:Give me UltraEdit for *nix by Chad+Birch · · Score: 1

      Uh, is there a reason you don't just use UltraEdit for Linux?

      (UltraEdit used to be my favorite editor as well, but I finally got around to learning to use vim properly and now I'm no longer able to stand "normal" editors.)

      --
      Sturgeon was an optimist.
  40. Static code analysis by Gerald · · Score: 1

    A working static analyzer. Clang is almost there but generates way too much cruft to wade through.

    More mature fuzzing tools would be handy too.

    1. Re:Static code analysis by cheesybagel · · Score: 1
      "gcc -Wall".

      Splint used to be pretty good but AFAIK development has mostly stalled.

      There is a larger list here.

  41. You heard it wrong by Anonymous Coward · · Score: 0

    He was really saying "Documenters, Documenters, Documenters, Documenters".

    Give some thought to doing excellent documentation.

    grumpy

  42. Integration by shutdown+-p+now · · Score: 1

    Linux development seems to still be stuck to shell+Vim/Emacs+gdb for many. It's actually kinda interesting, given that decent IDEs have been available for a long time - Eclipse CDT, NetBeans, KDevelop, and recently Qt Creator. Of those, Qt Creator seems to be the easiest to just start using (even more so for people with past Visual Studio experience, as it uses many familiar shortcuts and layout), and also best-integrated - UI designer, debugger, documentation etc. This part is good.

    FOSS IDEs also tend to have decent (and easily extensible) integration with various SCMs - also good.

    What's missing is the last part of development cycle - integration with issue trackers, and something akin to document libraries. To give an example from TFS: in Visual Studio with TFS as a SCM/tracker, I can browse the source code tree, view history of a particular file, and see all changesets (versions) - nothing unusual so far. However, for any changeset, I can then open the ticket with which it was associated (if any), navigate any further references (e.g. other associated commits and files in them), and so on. On the other hand, when making a commit, I get a list of tickets assigned to me (with filters etc), and can quickly associate the commit with appropriate ticket. This kind of thing is actually very handy, and after using it for a while, it's hard to return back to separate trackers which aren't integrated with IDE.

    1. Re:Integration by cheesybagel · · Score: 1

      You can do that management using a web based solution like Trac. AFAIK there are Eclipse/Trac integration plugins. Eclipse Mylyn for example.

    2. Re:Integration by shutdown+-p+now · · Score: 1

      I know about web-based trackers, and that's precisely the problem I was writing about: there's no integration between them and the IDE (which is otherwise good at editing code), when you want to go back and forward.

      To oversimplify a bit for the sake of clarity, there is a relation chain:

      [source code] --has--> [version history] --associated-with--> [issue tracker ticket]

      The second step here means that any change in the source code, as reflected by its version history, must be aligned with some ticket in the issue tracker - a bug, a feature request, etc.

      Now, simple IDEs with no SCM/tracker integration whatsoever let you only explore the source code. More advanced ones let you explore version history as well (view various versions of the file right inside IDE using the same handy color highlighting and symbolic look features, annotated viewed code with information about when and by whom it was added, etc) - this is where most FOSS IDEs are today. Even more advanced is when you can navigate from version history to associated tickets and back without leaving your IDE - i.e. you open a ticket, then open some ticket linked from it - e.g. a dupe, or a related problem, or a meta-ticket, then explore code version history associated with that other ticket in your IDE's source code editor.

      After all, that's why we call it "Integrated Development Environment" - it's something that should, ideally, cover the whole process as seen from developer's perspective.

  43. Dont be all up in my Vim by tempest69 · · Score: 1
    I'll give the modern IDE some credit.. context help, collapse, and breakpoints are nice. But command mode in vim makes some things awesome. searching with a regex t find something that your not sure is there... like search for a for loop with a x=? instead of x==? for your control statement where you dont know the x or the ?.
    Now I'm not sure how I would do that in a "modern IDE" but I'm not convinced that it's missing either.. Ive just burned too many neurons to quit vim..

    Storm
    :wq

  44. SCons by SilentTristero · · Score: 1

    Come help work on SCons!

    SCons is an Open Source software construction tool—that is, a next-generation build tool. Think of SCons as an improved, cross-platform substitute for the classic Make utility with integrated functionality similar to autoconf/automake and compiler caches such as ccache. In short, SCons is an easier, more reliable and faster way to build software.

    It's under active development, and it's the best way to build C, C++, LaTeX, and lots of other types of projects. Build scripts are 100% python so you have the full power of a real language in your build. And... we need new developers to get to the next level! We have lots of ideas for ways to improve it. Come and take a few Easy-tagged tickets and implement them, you'll be amazed how easy it is to contribute. Plus we're friendly.

  45. Code::Blocks? by Anonymous Coward · · Score: 0

    Am I the only one who uses Code::Blocks as an open source, cross platform C++ IDE? Maybe people are looking for an IDE that handles more than C++, but I like it as much if not more than VisualC++!

  46. Good Code Analysis Tools by SwashbucklingCowboy · · Score: 1

    I'd love to see a static code analysis tool for C/C++ that was as good as FindBugs.

    1. Re:Good Code Analysis Tools by dvice_null · · Score: 1
  47. Re:Pay attention to USERS? by V!NCENT · · Score: 2, Insightful

    Foss never takes off? How about:

    Your TV

    Your DVB reciever?
    The internet that you are on, with your supscription to you ISP servers that probably run FOSS?

    How about the global economy? The servers that are keeping trading alive, may they not be run by FOSS for the majority of them?

    How about you webapps?

    Game servers that you play your games on?

    The computer in your car?

    You phone maybe?

    Your radio?

    Webkit, GNU tools and whatever Apple uses in Mac OS X, "The most friendly computers"

    Etc, etc, etc...

    In other words: You don't have a clue...

    --
    Here be signatures
  48. Probably not much by slimjim8094 · · Score: 1

    I doubt there's a person alive who can substantially change FLOSS development - the tools have been there for nigh on 40 years. If there's a problem I can almost guarantee that someone would've fixed it already.

    I suspect documentation and translation would be the biggest help - if you're looking for "bang for your buck^Wtime", go with this.

    If it's code you're looking to contribute, I don't think you (or any one person) can really do anything more than incremental improvements. Don't get me wrong, incremental improvements are great - but I imagine they'd get a little demoralizing.

    If I were looking to contribute code, I'd try to come up with a reasonably minor but very useful improvement, such as bash's completion - the one that doesn't just list commands or directories, but for example listing emacs when you do "apt-get install ema" (along with supporting a whole host of other commands, like sysctl, tar, ping, and ssh). That's something that makes a big difference and is extremely useful, but it's very possible that one person could do it in a reasonable amount of time.

    --
    I have developed a truly marvelous proof of this comment, which this signature is too narrow to contain.
    1. Re:Probably not much by polymeris · · Score: 1

      Bash does that already, see bash manual: programable completion. It just works out of the box on Ubuntu's console (and many others, probably).

    2. Re:Probably not much by slimjim8094 · · Score: 1

      Yes, that's why I used it as example of scope (do something like bash's completion).

      --
      I have developed a truly marvelous proof of this comment, which this signature is too narrow to contain.
  49. What Tools Do FLOSS Developers Need? by Anonymous Coward · · Score: 0

    Uhmm... a girlfriend?

  50. Debugging back in time... by smartr · · Score: 1

    Being able to step backwards through code while debugging would be nice...
    Here are some google tech talks / presentations...
    http://www.youtube.com/watch?v=LpfmKIxusZY
    http://video.google.com/videoplay?docid=3897010229726822034#
    And there's a debugger here (which I should try out sometime...):
    http://www.lambdacs.com/debugger/debugger.html

    Still, I haven't seen this being available with many different platforms.

  51. Screw 'Em by Fantom42 · · Score: 1

    Yeah, I'll probably get modded down for this, but ah well.*

    Screw 'em. There is already enough navel-gazing occurring in the FLOSS developer community. And if you try to do something nice for FLOSS developers, you are likely going to get flamed and generally abused for trying. Some folks have suggested writing a Visual Studio replacement. Heh, have you seen how many of these projects have started and failed? How many times do you think developers for these projects hear things like, "That's stupid, use vi." or "gdb can do anything your bloated software can." Most of them just don't see the value in it, because what they use works for them, and they are too narcissitic to consider what other people might need, or to even consider that the way they are doing something isn't automatically the best way.

    So, yeah, if you want to write something for developers, I guess write something for yourself. At least then one person will use your project. Maybe you will even find some like-minded individuals that see the value in it also. But I think you will find it more rewarding working with people who actually want to use your product and are thankful for your time developing it.

    Now, if you really want to make a developer tool that will catch on, my advice is to put a diamond in that navel. Pick a flavor of the week language and write a tool in that language that replicates the functionality of another commonly used tool, preferably written in a 'competing' language. Like, oh I don't know, a software code repository written in... let's say Ruby. Or maybe a package manager. Extra points for making a distro based on it.

    * Do I seem bitter? Sorry about that, but after years in the community, I grow weary of some of the self-important attitudes I see in the FLOSS community. Most contributions I have attempted has either been flat out stolen (straight-up name replacement), mimicked by someone in a better strategic position (e.g., Ingo/Con style), flat-out ignored (ever submitted a bug report with a patch?), or flamed for it (ever submitted a bug report?). I've actually only found one project that I contribute to regularly that isn't like this and they tend to get most/all of my time. After all, why bother contributing bug reports, documentation, bug fixes, or feature patches to a project if all you get out of it is a fruitless time-sink?

    1. Re:Screw 'Em by cheesybagel · · Score: 2, Insightful

      Most developers of FLOSS applications code in C or C++. The Visual Studio tools are not as appealing for those languages as for, say, C#. Try reading what Microsoft uses for their internal Windows C/C++ system level programming. It is not Visual Studio, nor is it Team Foundation Server.

    2. Re:Screw 'Em by Anonymous Coward · · Score: 0

      I honestly agree with you about FLOSS developers. They're too big-headed to think that there might possibly be a better way to do something. And I'm saying this as someone who loves the concepts and ideas of open source software. I just don't generally like the people behind the software. And out of curiousity, what's the one project that you contribute to regularly?

    3. Re:Screw 'Em by Anonymous Coward · · Score: 0

      Link?

  52. Data Modelling Tool by sgrover · · Score: 2, Insightful

    I've yet to find a decent tool for data modelling. Something akin to CA's ERWin. The best I've fond thus far is pgDesigner, but even that is a kludgy GTK interface and only works with PostgreSQL. I find using DIA for pretty much anything is an exercise in self inflicted torture. To be able to build a database design visually, see the relationships at a glance, automate the generation of the create/alter scripts, etc. This would make business coding SOOO much easier and faster. And it even helps to communicate the application design to new coders to the project who do not understand where data is and why. (Good documentation is one thing, but a picture speaks a thousand words....)

  53. Ideas from a Mozilla contributor by jesser · · Score: 1

    Pick a large, active open-source project and try to help with the problems its developers have. You will be loved.

    Here are some of the problems I'm aware of within the Mozilla project.

    Speed of development

    'make' doesn't scale. An incremental build, even with no changes, takes at least a minute. (In contrast, just checking whether any files have changed takes 'hg' less than 10 seconds.) Maybe help us move to 'scons', or help improve 'pymake', or just help us get our dependency generation right.

    'ld' is slow. Once a developer makes a change to any c++ file, the incremental build is going to take several minutes while the linker uses up all her RAM. Maybe help us move to another linker such as 'gold', and contribute any necessary changes back to the 'gold' project.

    'hg' merges are confusing. hg's developer-facing user interface could be improved, both while doing a merge and after doing a merge.

    Automated testing

    We've built an interesting interface around hg-pushlog (which is itself a Mozilla extension to hg) and buildbot that lets us see which tests failed after each change. I'd love to see these tools generalized to the point where other open-source projects can use it and contribute back to it.

    As we require unit and integration tests for more and more components of Firefox, we're finding that a small number of tests failing intermittently can make it difficult to move quickly. We could use better tools for tracking test failures, and for record-and-replay debugging to help us figure out the intermittent failures, and probably for other things we haven't thought of.

    Programming languages

    We need a decent low-level programming language. Something that lets programmers implement sneaky fast algorithms, but lets programmers do it without constantly shooting themselves in the foot with security holes. Something you'd want to write (difficult parts of) a web browser or OS in.

    I don't know if the answer is adding more and more to the type system (like in Cyclone), or integration of assertions with static analysis (like in D), or simply making it easy to integrate low-level code with high-level code (like in C#, or with ctypes or jsctypes).

    Mozilla is doing interesting things with custom static analysis of C++ code.

    Making collaboration tools support workflow and GTD

    We have a crash analysis system and a bug-tracking system with lots of information, but the workflow is poor, so much of the information is not acted upon.

    It's hard to come up with a good workflow (and make the tools support that workflow) in a large project where many of the contributors are volunteers who decide themselves what to work on, but I think we can do better.

    --
    The shareholder is always right.
    1. Re:Ideas from a Mozilla contributor by cheesybagel · · Score: 1

      'make' doesn't scale: use ccache and distcc.

  54. OpenGL Tools by Anonymous Coward · · Score: 1, Insightful

    I've seen it written in many places that that the Microsoft-centric DirectX/Direct3D have "better" tools for development of professional-level games than OpenGL. Or perhaps not necessarily "better", but things where MS has released some auxiliary tool that has no open-source / OpenGL equivalent. Or are much easier for a budding developer to just get in and play with. I wish I could recall details off the top of my head, but http://tech.slashdot.org/story/10/01/08/1830222/Why-You-Should-Use-OpenGL-and-Not-DirectX and the related reading may provide a little more insight.

  55. ONE thing is needed for gtk/qt/monodevelop ide's!! by Anonymous Coward · · Score: 0

    That one thing will bring in lots of new students and wanna be
    newbies because they need an easy starting place.

    That is, draw a windows form, place in some controls,
    and have the CODE text editor for the control or window appear when
    it is CLICKED !!
    Just like VS.

    And vice versa: if in the code text for a control, click and pop into the
    drawn control so you can change it's properties.

  56. Documentation by hendrikboom · · Score: 1

    There's nothing that's needed more than good documentation. Document your own libraries well -- not just a list of every entry point into your library and a sentence or two what it does, but a description of the concepts and facilities the library provides -- including what the programmer that uses your library will need to understand before he even decides whether it's suitable for his application.

  57. Stop chasing Microsoft! Need for a new direction. by John+Sokol · · Score: 1

      I see many people talking about Visual Studios and IDE's . I think there are many good IDE's in Linux.

      What I think is needed is something new that can take Linux to the next level.

      Maybe some collaborative tools to help with development of SOA and cloud based systems.

      Or something that will help automate the location, rating and selection of libraries.

    --
    I am always doing that which I can not do, in order that I may learn how to do it. - Pablo Picasso
  58. Game development wishes from the Braid author by Anonymous Coward · · Score: 1, Interesting

    Well the author of Braid (the game) seems to have a few wishes for game development. Perhaps help him out?
    Source: http://braid-game.com/news/?p=364

  59. Quanta Plus by rastos1 · · Score: 1

    Quanta Plus is widely recognized as the most advanced free software web development environment.

    But it did not survive very well the move from KDE3 to KDE4. The project had 1 or 2 developers, I think, and they did amazing work. However currently the project web pages are outdated, point to each other in circles and the project does not move (or so it seems from my perspective). IMHO, Quanta Plus is in the top position in badly-needed-FOSS-apps-list.

  60. Project templates by bartok · · Score: 1

    I have recently installed K-Develop and there was a total lack of project templates for different kinds of applications. By templates, I means a project file, make file and boilerplate skeleton code to start with.

    I have font memories of Visual Studio giving me project templates for all manners of COM libraries, GUI apps, NT services, etc. Likewise, I would like to have templates for K-Parts, for whatever the KDE COM equivalent is, for Plasma widgets and full flegged GUI apps.

  61. Tools? by frank_adrian314159 · · Score: 1

    A good set of teeth and strain meters for use on the fibers...

    You know... FLOSS! Get it?

    Thanks, folks! I'll be here all week! Try the veal!

    --
    That is all.
  62. Delphi IDE? by codepunk · · Score: 1

    Give lazarus a whirl!

    http://lazarus.freepascal.org/

    Is someone going to build a delphi clone better? Not likely this one has been in development
    nearly 10 years and it is as close as you are going to get.

    --


    Got Code?
  63. No mention of C::B? by TravisBy · · Score: 1

    Why have we NOT mentioned Code::Blocks, a full C/++ editor? Exactly what the poster is asking for. Also includes support for wxwidgets (gui making stuff, cross platform, can be statically compiled). Plenty of plugins. I've used it, and it works great! http://www.codeblocks.org/

  64. two things by Anonymous Coward · · Score: 0

    A good GUI toolkit. Not /another/ GUI toolkit. A /good/ GUI toolkit.

    Microsoft Access-like tool for building rich internet applications on top of a real database.

    Thanks.

  65. Re:Hallelujah! by phantomfive · · Score: 0

    lol yeah, that VS multiple windows thing drives me crazy. To me it is a perfect example of Microsoft.

    They always do a huge complicated thing to solve a simple problem (and they can, because they have the man power). You can't look at two windows of code at the same time? Solve the problem by making intellisense! Really, intellisense wouldn't even be needed if you could have free floating windows in Visual Studio (and you can't do that because of an earlier design mistake in Windows).

    By the way, I think you can build stuff from the command line on windows using devenv.exe, although I've never tried it. You might find that useful if you're only using VS for build.

    --
    Qxe4
  66. Komodo Edit / Openkomodo by sergiol · · Score: 1

    Komodo Edit is a free editor you can use, and you can contribute to Openkomodo - it is a blend of Mozilla platform, Python and some other technologies.
    I use it with the Morekomodo plugin, but even without plugins it has lots of functionality, specially for python.
    Unless its heavy weight, I prefer everything of this editor over the Notepad++.

  67. Re:Why not just google it? by Johnny+Loves+Linux · · Score: 1

    Isn't that the method every one uses when they don't know the answer to a question? Just google it and you'll find out what other people have to say. Or, if you like, just go to stackoverflow.com and ask your question there. It's not like someone's holding a gun to your head forbidding you from just asking?

  68. Documentation by BhaKi · · Score: 1

    Javadoc is the best example.

    --
    The largest prime factor of my UID is 263267.
  69. Yeah but you are comparing markets by tjstork · · Score: 1

    On the other hand, if FLOSS developers really want to steal users from their proprietary counterparts, then they may want to listen to the jerks' requests, too.

    See, I don't think you can make blanket statements like that for either FLOSS or Closed developers. Some FLOSS folks are very good at listening to and understanding their audiences. Apache, FireFox, come to mind, and there's success with that. A tier down, you have folks that essentially use the FLOSS as a way to build a consultancy, indeed, FLOSS is essentially consultants sharing common work product to save everyone money.

    --
    This is my sig.
    1. Re:Yeah but you are comparing markets by nine-times · · Score: 1

      On the other hand, if FLOSS developers really want to steal users from their proprietary counterparts, then they may want to listen to the jerks' requests, too.

      See, I don't think you can make blanket statements like that for either FLOSS or Closed developers.

      What blanket statement? That they may want to listen to users if they wish to increase their user base, even in cases where those users are jerks? It's a very conditional statement, saying, "if your goal is X, you may want to do Y." It's far from a strong statement, and I think it's pretty reasonable.

      Some FLOSS folks are very good at listening to and understanding their audiences...

      Nowhere did I say that FLOSS developers never listened to their users, nor did I say that they generally don't. I don't think I even implied that they didn't. I was just suggesting a different perspective on what you were saying, and I don't think it was a very offensive or controversial one.

  70. Library pain by bzipitidoo · · Score: 1

    I keep running into library choice paralysis, and lots of troubles trying to hook to them. Which libraries are "best" for a GUI app? KDE (Qt), Gnome, FLTK, Fox, Motif or LessTif, OpenGL, DirectX, OGRE, or $DIETY forbid, xlib? What do all these libraries do, what are their specialties, why should I choose one over another? Merely documenting the functions may not be enough. I hate the nagging feeling that I missed a whole category of specialized libraries better suited to what I want. For instance, there are many mathematical libraries written in Fortran. Wikipedia is not bad for getting a general idea of what's out there and what they are, but it doesn't help for avoiding difficulties of this sort: I wondered how smart OpenGL was about painting scenes. Could you just tell it to draw everything and it would skip all the pieces hidden behind others? As it turns out, no! It will draw the scene correctly, but very slowly because it isn't smart about wasting time on hidden parts. You have to hack up an algorithm yourself, not lean on OpenGL, or hunt around for another library to handle scenes, something like this OGRE. And OGRE is quite large and complicated, forcing you to learn a lot of preliminaries before you can try it out. Hacking up your own algorithm is all very well, but having seen the layer upon layer of improvements that go into a good library implementation, I have to conclude that anymore, you shouldn't go down that route if there's another choice. Don't write your own Quicksort, use the library one. Your little hastily coded implementation is not going to have such improvements as the hybrid sort where it switches to Bubblesort at 6 or fewer items because on that small a number Bubblesort is faster, the picking out of 3 random items and taking the middle one for the pivot or perhaps an even better selection method, handling of equality with dispatch (textbook implementations of Quicksort simpify the explanation by arbitrarily throwing equality in with one of the other groups of greater than or less than), and I don't know what else.

    So having seen the wisdom of reusing code, you run straight into a big problem: linking. Too many libraries are too tightly tied to a language. Thanks to UNIX being created in C, we've evolved a defacto standard around the C way of linking, but it has a lot of limitations. Yes, there's ELF, but ELF isn't enough. For instance, if for some reason you don't have the header files, it can be extremely difficult to figure out how to link to a library. Have to reverse engineer it, or more like, forget it. Tools like nm and ar help, but they can only tell you what is there, and there's a whole lot of information that gets tossed. Well, you wouldn't want to bloat libraries up even more with debugging symbols and the like either. Even with the header files, things aren't easy. Can have lots of fun trying to use a 32bit library on a 64bit system. Then there's C++ and the nasty name mangling they introduced to support function overloading.

    If you determine something like that the best libraries for your purposes are a few C libraries, but the best language is something like Perl or Haskell or Scheme (LISP), you may spend more time trying to link them than use them. Many Perl libraries are just wrappers around C libraries, and if the particular C library you want doesn't have a wrapper, you can spend (more like waste) lots of time figuring out how to make the wrapper yourself, and who wants to do that when what you really want to do is concentrate on your cool idea? Or you can try the very painful process of linking Perl code directly to C functions. Perl 6, whenever it is ready, is supposed to alleviate this problem for Perl. Or, you could go the route of using C, and lean on yet more libraries like PCRE to do 4th generation things available natively in a language like Perl, or haul out the STL of C++. For many languages, this problem has been worked around somewhat by making C the lowest common denominator. Older languages such as Fortran can

    --
    Intellectual Property is a monopolistic, selfish, and defective concept. It is "tyranny over the mind of man"
  71. IDA Pro by jrincayc · · Score: 1

    IDA Pro which is a interactive disassembler has no FLOSS equivalent. objdump -xd just isn't the same.

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

  72. since you are taking requests by portscan · · Score: 1

    multi-threaded python, please, with a real garbage collector. (no, not jython or ironpython--too many C modules)

    kthxbye

  73. Aptana by Anonymous Coward · · Score: 0

    I love it 95% of the time, and passionately hate it the other 5%.

  74. What more? by jandersen · · Score: 1

    what more do FLOSS developers need from existing development tools?

    Nothing, IMO. I have for years worked with only: xterm, vi, compiler, make. I am surrounded by good programmers, who use IDEs, mostly Visual Studio, but also Eclipse; I am still at least as productive as everybody else, and don't even spend as much time debugging. Am I genius? Of course not. The truth is that using an IDE doesn't actually make that much of a difference; whether people use it is no more than a matter of personal taste.

  75. Re:Hallelujah! by Mongoose+Disciple · · Score: 1

    I finally gave in when after ages trying I finally discovered that you *can't* use our version of VS over multiple monitors.

    I haven't had any problem using the last few versions of VS on multiple monitors, FWIW.

  76. What I need? by mix77 · · Score: 1

    * An editor - vim
    * A build tool : make
    * A Compiler : gcc
    Is there anything else I really should be using?

  77. DTrace by Anonymous Coward · · Score: 0

    Speaking as a UNIX admin - Having DTrace on linux would be really, really nice for those hard to debug performance issues

  78. Emacs circa 21st century by tjwhaynes · · Score: 1

    Anyone that claims either vi or emacs is a useful editor hasn't used a modern Windows IDE. Just the amount of context aware help that is available about the platform is amazing.

    That just shows that you haven't used a version of Emacs since the GNU - Lucid split. Lets see - I have language aware parsing (including context-aware tooltips) and completion (ala intellisense), automatic indexes into each file, class browser, helper wizards, version control awareness and integration, fully programmable interaction with the editing buffer to cope with work-specific stuff, electric expansion (and fully modifiable expansion tables), dynamic completion and the ability to work seamlessly with remote files.

    And that doesn't touch on all the other features that I use day-to-day, like highlighting, source code comparison and patching, recursive directory comparison and debugger integration.

    Anyway who claims that Emacs isn't a useful editor hasn't learned how to use it.

    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 circa 21st century by TheSunborn · · Score: 1

      Where the hell did you get language aware parsing for c++ in emacs?

    2. Re:Emacs circa 21st century by tjwhaynes · · Score: 1
      --
      Anything I post is strictly my own thoughts and doesn't necessarily have anything to do with the opinions of IBM.
  79. "emacs" and "make" by Ross+Finlayson · · Score: 1

    Seriously. You don't need anything more.

  80. "emacs" and "make" by Ross+Finlayson · · Score: 1

    You don't need anything more.

  81. Pencil and paper are the most important by ishmalius · · Score: 1

    Use these -first- to get the design at least partially congealed in your mind. Only when you have a clear idea what it's supposed to do, and what it's supposed to look like, should you move ahead into code.

  82. Documentation for Codelite by Anonymous Coward · · Score: 0

    Documentation for Codelite - it could be a great little IDE but it lacks proper documentation. Bonus points for newbie friendly documentation even, e.g. explaing the use of Ctrl-Space.