Slashdot Mirror


Best "Visual Studio" Alternative On Linux

Microsoft ISV writes: "We are beginning the next major release of our product, and we have been a Microsoft ISV for many years. In a few months Microsoft will be entering our market, and we wish to hedge our bets by supporting Linux in this next new major release. Can you ask your readership what is the best 'Visual Studio' like IDE for Linux? Especially for an ISV who will be maintaining the same product on both Windows and Linux?" Or is there even such a thing?

36 of 82 comments (clear)

  1. Re:vi - was: Re:look out people who use ISV answer by seeken · · Score: 2

    And you hit the escape key with your nose?

    The escape key must be positioned more convieniently on the keyboard you use.

    --

    Surfing the net and other cliches...
    (Who Meta-Meta-Moderates the Meta-Moderators?)
  2. Re:Metrowerks CodeWarrior by johnjones · · Score: 4, Informative

    it sucks as a linux dev because the visual translation layer for X (so it looks the same on all platforms) is horribly broken for linux

    very bad hope it improves but I dont hold my breath

    regards

    john jones

  3. vi by SpanishInquisition · · Score: 3, Funny

    vi is a visual editor, isn't that what you're looking for?

    --
    Je t'aime Stéphanie
  4. Eclipse by Ratbert42 · · Score: 2, Informative

    IBM's Eclipse (www.eclipse.org is a possibility but it's more for Java than C++ and it's still fairly new.

  5. Mod me redundant by Wavicle · · Score: 2
    I agree and repeat all that.

    I've been using vslick for almost 3 years now and have been very satisfied with it. It is a bit pricey, but it is easy to customize and comes with a C-like language for writing custom macros. I've used it mostly for Java development, but it is also the best editor I've used for C and C++. One feature of vslick I have not heard mention is the diff utility. It has the best diff utility I've ever seen. It isn't just a nice GUI diff program - anytime I have to integrate code changes to different code lines or do a 3 way merge between multiple code lines, DIFFzilla is *the* tool to use.

    And as the VI pundits like to say, I never have to take my hands off the keyboard when coding in vslick.

    I think vslick costs about $200 but in a professional programming environment it pays for itself within a month or two from increased productivity.

    --
    Education is a better safeguard of liberty than a standing army.
    Edward Everett (1794 - 1865)
  6. Re:Visual SlickEdit by Whatever+Fits · · Score: 2, Informative

    Visual SlickEdit is a great gui based editor and it has multiple editor modes such as vi, emacs, windows, etc., but it is not a RAD environment as the poster might be wanting. However, VSE is incredibly easy to integrate into other programs and components as it has SlickC, a C like macro language that allows you to do pretty much anything you want to. I have personally used it to interface with an external GUI layout program (written by the company I worked for then), which then allowed the RAD like editing of code "behind the buttons" as well as syntax highlighting and project management for a language that isn't very common (Dibol). This could very easily be done for many different editors and the GUI layout tools giving the user a selection to mix and match their layout tool with their favorite editor. You can import your existing libraries into the autocompletion and construct handling routines. Oh, and tech support at SlickEdit is rather good, too.

    --
    My name fits again.
  7. XEmacs by Alex+Belits · · Score: 4, Interesting

    Other environments may be better looking or follow languages' syntax more closely, but XEmacs certainly is most flexible and gives least amount of distraction to the programmer.

    --
    Contrary to the popular belief, there indeed is no God.
  8. look out people who use ISV answers by johnjones · · Score: 2, Informative
    dont call yourself an ISV


    here is some of my advice(do a google search ;-)(bellow are sane answers)

    please try and use the gcc that fits you I recomend a dual gcc2.95 and a dev 3.1.xx or CVS version for intresting results (you will have to use redhats 2.96 if you plan to release to the 7.x as the ABI is differant but they plan 3.x for their 8.x release so it pays to be ahead of the game)


    http://anjuta.sourceforge.net is a nice IDE that will help out visual studio freaks it has a GTK interface


    http://www.kdevelop.org" is a KDE front end and is more mature and has a QT front end


    but seriosly learn vi


    this is because it is one of the more comman text editor and WHY because it is VERY good for seraching and writeing documents in plaintext (which I assume is what your C/C++/^*somethinglang%&^ is in)



    I have to say writeing to standards helps so try it on solaris and BSD when codeing (three boxs as build machines is not a drain plus people can use these at the same time) all of these are free and run on x86 hardware http://www.sun.com
    http://www.netbsd.org


    Am I the only one who is ammused by the fact that people think that M$ wont go to linux ?
    at the moment this is true but hey server side they have chillisoft doing ASP and the rest is comeing



    oh and try out GDB (-;


    regards

    john jones

  9. Re:Serious question... by JabberWokky · · Score: 5, Informative
    I am a developer. KDevelop is very good (the K means it runs under KDE, not that it is just for making KDE apps - it makes command-line, KDE and Gnome apps also). If you develop a Qt App, you can cross-compile for Windows as well. It's also Free in every sense of the word, if that matters to you.

    On the commercial side, KDE Studio Gold from the Kompany looks to be even better, and they also have Blackadder for Python and Ruby development if you need that. And language legends Borland are in the process of bringing over most of their modern packages including Delphi (confusingly renamed Kylix), Java and C++. Right now, Kylix is available, with C++ Builder and JBuilder coming in the next few months. Again, as long as you stay away from OS specific API calls (that does for Linux and Windows), you can reuse all objects and source with a simple recompile aimed at either Windows or Linux.

    --
    Evan

    --
    "$30 for the One True Ring. $10 each additional ring!" -- JRR "Bob" Tolkien
  10. Re:Forte by andyp · · Score: 2, Informative

    The problem with Forte is that it is slow as hell. Even on my P3 with a gig of RAM, it's painful.

  11. Re:vi - was: Re:look out people who use ISV answer by Wavicle · · Score: 2
    True. Just like any other UI.

    You pundits just crack me up. You aren't seriously implying that learning vi is as easy as learning Word because they both require some degree of memorization? Yeah, let's use your example... We'll put someone who has never used either VI or Word in front of each and see what happens...

    Let's see, person using Word types in "dear mom". Result "dear mom" appears.

    Using vi person does the same. Result "r mom" appears.

    Person using word eventually figures out to save/print from the file menu. How long does it take for them to figure this out? Depends on the user. But if we're expecting this person is intellectually competent enough that we expect they'd be able to be trained for vi, I'm going to bet learning to use the mouse isn't going to take very long at all.

    Person using vi never figures out to hit "ESC:w".

    After that, the person wants to make the letter out to dad instead.

    In word, they quickly figure out that using the arrow keys and backspace or delete remove the characters "mom" and they can quickly retype "dad".

    In vi, the arrow keys work, but they can't seem to delete the characters. Once someone deletes the characters for them, they can't seem to get into insert mode to type in "dad".

    How long is it going to be before our hypothetical person can spin out a well written term paper in Word? and vi? How learnable is word campared to vi? How long will it take before the word user figures out ctrl-s is a key shortcut for save because it shows that to you in the menu? If they have trouble making that connection, I find it impossible to believe they would ever learn vi. Perhaps I should have used "vi requires far more memorization" since the amount of "new things unrelated to the users model" in vi is far higher than word or pretty much any newer editor.

    --
    Education is a better safeguard of liberty than a standing army.
    Edward Everett (1794 - 1865)
  12. I think you'll enjoy Anjuta :-) by andyp · · Score: 2, Informative

    anjuta.sourceforge.net

    I'll admit that I'm biased (! - and who isn't?!) but it is coming along nicely now, and as someone who has to use Windows / Studio at work, I find it quite a comfortable transition. We're still working hard to improve it, it's not there yet (and as a few others have mentioned, KDevelop is probably slightly more "mature" right now, since it has been going longer and may have the larger development team), but the more people use it an propose improvements, the better we can make it.

  13. Re:What language are you currently developing with by jheinen · · Score: 2
    Don't forget Borland's JBuilder. Very nice if Java's your bag.

    --
    -Vercingetorix
    "Necessitas non habet legem." -St. Augustine
  14. Are you asking the right question? by Tom+Davies · · Score: 2, Insightful

    I think that you need to decide how to support a product on both Win32 and Linux before you start to worry about the IDE you'll use.

    Which languages are portable between the two (Java, Object Pascal, C++, perl,...) and do they suit your application (you need to tell us that too -- is it a desktop app, web based ...)

    If you need a UI, how will you do that? (Swing, QT, Tk...)

    Then you can look for the best IDE's for Win32 and Linux for the environment you have chosen.

    If it turns out to be vi and make for GNU/Linux, that's OK, as long as the combination of language and UI toolkit you've chosen is otherwise portable.

    Tom

    --
    I have discovered a wonderful .sig, but 120 characters is too small to contain it.
  15. Re:ISV by jeff4747 · · Score: 2, Informative

    Independent Software Vendor. Microsoft speak for a company that develops software for Windows.

  16. Re:Forte by cloudmaster · · Score: 2

    Time to shut off all of the daemons / helper programs you're running in the background. It's painful with 128 MB RAM (on a K6-3/400) under win98. Bumping that up to 256 and defragging the hard drive made it work pretty nicely. Not as fast as a native app, but pretty darned fast for a relly big java app. I developed several small projects with Forte recently, and, after the memory upgrade, didn't have a problem with it. With the same amoutn of memory in my dual celeron 500 linux box it starts and runs at about the same speed. Therefore, if it's painful on a P3 with 1GB RAM, it's time to fix the broken system, or maybe get lower expectations of a poop language (as far as speed is concerned) like Java. :)

  17. Glade by DrCode · · Score: 2
    Glade is a great choice if you want something lightweight that doesn't take over the whole project. It takes a little getting used to, as you have to learn something about GTK, which uses layouts rather than absolute coordinates for placing widgets (buttons, text fields, etc.)

    But you don't have to know anything about XML (I don't), and I've also found that GTK and Glade/Gladelib work nicely with C++.

  18. Re:vi - was: Re:look out people who use ISV answer by radja · · Score: 2

    2 important things come from Berkeley..

    BSD and LSD. This is not a coincidence...

    //rdj

    --

    No one can understand the truth until he drinks of coffee's frothy goodness.
    --Sheikh Abd-Al-Kadir, 1587
  19. gah... point and drool by Anonymous Coward · · Score: 3, Funny
    /usr/games/fortune:

    "I'd crawl over an acre of 'Visual This++' and 'Integrated Development That' to get to gcc, Emacs, and gdb. Thank you."

    (By Vance Petree, Virginia Power)

  20. Re:vi - was: Re:look out people who use ISV answer by Wavicle · · Score: 2
    In fairness, the comparison of notepad and vi, the vi key sequence should have been ESC-d-d-i, otherwise after the edit operation you are no longer in the same mode you were before.

    The non-beauty of VI is that the learning curve is steep. Read any UI design guide and you could probably write another book on what VI did wrong. VI is a hold over from a time when everybody worked on dumb terminal TTYs, and its now archaic interface reflects that.

    Why isn't ctrl-s mapped to save in vi? Well, that's because ctrl-s is the TTY suspend flow control character. Why isn't ctrl-z mapped to undo? ctrl-z is usually the process suspend control character. VI worked around the limitations of dumb terminals and met the needs of file editing by implementing its modal editing interface.

    How do you delete a word in vi? "dw". How do you delete a line in vi? "dd". I see the pattern, so to delete a character you type d... uh... oh wait, you type "x" with no "d". This is inconsistent interface but was done because deleting one character should not take two keystrokes. What if I want to turn two lines into one by deleting the new line character? That's only one character, can I hit x to delete it? If y means "yank" and d means "delete", what does "$" mean? It means "end of line" except sometimes it means "end of file".

    VI is full of issues like this. It is unlikely that any user will find that the interface makes sense. People keep saying "you should learn vi" as if reading a book on vi will solve your difficulties. You don't learn vi, you memorize it. Once you have developed the brain and muscle memory behind things like "yanking" instead of copying and ":8,$/foo/s//bar/g" then I'm sure that vi appears to be "easy".

    --
    Education is a better safeguard of liberty than a standing army.
    Edward Everett (1794 - 1865)
  21. Code Crusader by SirSlud · · Score: 2

    If you're speaking strictly from an editing standpoint, you can also check out Code Crusader.

    It's not quite a fully featured IDE (its an editor, with function/header/class browsing features and the ability to run/capture compile ouput), but the one upside is that if youre working in an environment with tons of C++ and lots of objects, it's got one of the most kickin' class browsers and method locators I've run into.

    If you're also talking about toolkits for GUI for linux/windows, QT is pretty elegant and cross-platform. The look'n'feel of QT's widget set is about as close as it gets to Windows (which, sigh, does have the best ui widget look'n'feel IMHO).

    --
    "Old man yells at systemd"
  22. What language are you currently developing with? by wrinkledshirt · · Score: 4, Informative
    Seems like that would be the most important question. Recommending Kylix to a group of people who know nothing about Pascal doesn't seem like such a hot idea, nor does recommending KDevelop to Visual Basic developers...

    If you like C++, go with KDevelop.
    If you prefer C and can do XML, go with a combination of a good editor, gcc and Glade.
    If you like Pascal, go with Kylix.
    If you like Java, there's Forte (don't know anything about it).
    If you like Visual Basic, get ready to buckle down and learn a new language...
    Also, consider giving Emacs a whirl. It's scary as all git, but it does just about everything short of fixing you a sandwhich.

    --

    --------
    Bleah! Heh heh heh... BLEAH BLEAH!!! Ha ha ha ha...

  23. Re:Serious question... by Raleel · · Score: 2

    C++ builder for linux? where might I see something semi official regarding this?

    --
    -- Who is the bigger fool? The fool or the fool who follows him? --
  24. some non-traditional possibilities by hding · · Score: 2

    If you're at all language agnostic, there are good offerings that will work on both Windows and Linux, for example Cincom VisualWorks (Smalltalk) and XAnalys Lispworks (Common Lisp), both of which have fine IDEs.

  25. vi - was: Re:look out people who use ISV answers by mbyte · · Score: 2

    Please someone enlighten me on vi .. for me its the most disturbing edtior i ever meet .. for example the 2 edit modes .. way too confusing. why can't i move curser around ? why del key is not working, etc ?

    I'm not flaming .. i want a honest answer. I did grew up with wordstar compatible editors (TurboPascal 3 on CP/M .. call me oldtimer ;),
    so my favorite editor is joe now ...

  26. Netbeans is the open source version of Forte by Walles · · Score: 2, Informative
    Netbeans is the (SPL) foundation of Forte.

    Their FAQ has the following to say about the relationship between Forte and Netbeans:

    The Forte for Java product line is based on NetBeans. Forte for Java Community Edition is a productized version of NetBeans and will continue to be free. The relationship between NetBeans and Forte for Java Community Edition is similar to that between Linux and companies such as Red Hat, Caldera, SuSE, Debian, etc. - a productized version of an open source project.

    Cheers //Johan

    --
    Installed the Bubblemon yet?
  27. Go with Delphi/Kylix by mikera · · Score: 3, Insightful

    If you haven't tried them already, I would seriously check out the Delphi/Kylix combination. The IDE and the Visual Development tools in particular are IMO a class apart from Visual Studio, and certainly far superior to any of the free tools available. Not to knock the others, but Borland know how to make development tools like nobody else.

    Also the fact that you get sub-second compiles for large projects is rather sweet :-)

    Code that you produce with the Borland CLX toolkit should be portable across Linux and Windows. Also, the forthcoming iterations of C++ Builder (essentially Delphi for C++) will be Delphi/Kylix compatible as well. For obvious reasons, Borland have always stayed very Microsoft-compatible and support for things like COM objects, creating DLLs and linking with C/C++ etc. is very good.

    The fact that Delphi/Kylix use Object Pascal is frequently raised as an objection which I appreciate may be a concern. However, Object Pascal is a very powerful Pascal derivative that is easy to learn and any competent coder should have no trouble making the transition. I find that I code better in Object Pascal if only because the compiler is much more smart at picking up dubious code.

    Even if you don't eventually use Kylix, I would strongly suggest downloading the free Open Edition just to give it a test drive. It's quite an experience that may change your views on how development ought to be done.....

  28. Re:vi - was: Re:look out people who use ISV answer by BlackSol · · Score: 2, Insightful

    The beauty of VI is your hands never leave the key board, and you never have to hit 2 keys at once (except maybe shift).

    Plus you then add in the power of regular expresion matching and you begin to see the value of vi.

    Once practiced in VI you can very rapidly make changes.

    Eg Windows Notepad to delete a line:
    "HOME" - "SHIFT" and "END" then "Delete"
    in VI
    "ESC"-"d"-"d"

    note that in Notepad you must move your right hand off the keyboard to get to the home,end, and delete keys. Where as VI your hands never leave typing position.

    Now add delete two lines:
    Notepad: add a down arrow after the delete
    vi: add a 2 before the first d.

    I really recommend visiting a VI tutorial such as http://www.eng.hawaii.edu/Tutor/vi.html.

    And Yes I use WinVi when I have to use Windows :)

    --
    $sig=$1 if($brain =~ /idea\s+(.*)/i);
  29. Re:Serious question... by DeeKayWon · · Score: 4, Informative
    I believe it stands for Independant Software Vendor.

    To answer the question, I may not be a developer, but I have heard good things about KDevelop.

  30. Metrowerks CodeWarrior by Smitty825 · · Score: 4, Informative

    Although I've never used their products for anything but Mac and Palm development, I've had lots of success with Metrowerks Codewarrior. They have Win32, Mac, Solaris and Linux versions available (...and versions for the PS2, Nintendo 64, etc).

    --

    Doh!
  31. Visual SlickEdit by netinlet · · Score: 3, Informative

    Very nice development environment. Runs on linux, solaris, windows, and about half a dozen other platforms. Was not ported to unix as an afterthought. Slickedit definitely helps my productivity. I use it on Linux and on Windows. I am not associated with Microedge, the manufacturer, in any way other than a very satisified customer. http://www.slickedit.com Doug

    1. Re:Visual SlickEdit by Howie · · Score: 3, Informative

      I downloaded the slickedit demo for windows after someone mentioned it on the dcdev mailing list. I had high hopes for it - the feature list is impressive! However it is the only editor I've used that I've mananged to crash within 20 minutes, doing ordinary tasks. So I switched back to EditPlus and XEmacs and gave it the heave-ho.

      Editors, like OSes and X servers shouldn't crash. Ever. Particularly when they cost at least ten times (or infinitely) more than the editor they replace.

      --
      "don't fall into the fallacy of believing that Perl can solve social problems. Maybe Perl 6 can, but that's a ways off"
  32. Komodo by winterstorm · · Score: 4, Informative

    Komodo from Activestate is very "Visual Studio"-ish and supports PERL, Python, PHP, and a lot more.

    You might look at Sun's Forte as well.

  33. Language is just another tool by fm6 · · Score: 2
    Recommending Kylix to a group of people who know nothing about Pascal doesn't seem like such a hot idea, nor does recommending KDevelop to Visual Basic developers...

    You speak as if learning a new programming language is a major life change, like changing a career. It can be a pain, and time consuming (which is why I groan whenever I read about a new language), and you wouldn't want to do more than, say, once ever two or three years. But it's not that big a deal. Especially if you have a good IDE to help generate boilerplate code.

    In particular, I don't see that much difficulty in shifting from VB to Object Pascal. Once your get past a few basic weirdnesses, things are just not that different. The biggest basic difference is that OP has all the missing OOP features, like inheritance and polymorphism. But that's not important unless you're building your own components.

    Your C++ --> KDevelop inference doesn't make any sense either. KDevelop uses the Qt API, which needs language features that C++ doesn't provide -- you have to use the moc preprocessor. Not a big deal, but if you're assuming that programmers are two lazy to learn new language features....

    It is true that "big" languages like C++ and Perl have tons of features that it takes years to learn. But how many programmers ever bother?

  34. jEdit is nice by Jack+Auf · · Score: 2, Informative

    We've been using jEdit at work for about a year now, and we really like it quite a bit. It's java based, so it can be a tad slow on an under powered box. Many, many languges supported, and a boat-load of plugins.

    It's kind of nice to have one IDE for C,Java, and PHP.

    I can be found at http://www.jedit.org/

    --
    "They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety" - BF
  35. Re:What language are you currently developing with by Surak · · Score: 2

    If you like Pascal, go with Kylix.

    Kylix will do more than Pascal...it will do C++ as well.

    If you like Java, there's Forte (don't know anything about it).

    Isn't there also a Forte C++ compiler/IDE? Or am I thinking of commercial Unix?