Best "Visual Studio" Alternative On Linux 82
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?
ISV (Score:1)
I assume an ISV is providing some sort of add on, plug in, control or whatever that is integrated into a Windows app using the MS IDE ?
So really you're asking what should we target ?
Well target everything. Build libraries. Use the prominent GUI libraries, Motif, QT, Gimp
Maybe this is not your question and you're developing an application in which case I don't see why you need a linux IDE. All you need is a framework that facilitates cross platform development. In this case look at WxWindows or fltk (fast light tool kit). For an example of FLTK see the Palm OS Emulator.
Re:ISV (Score:2, Informative)
vi (Score:3, Funny)
Re:vi (Score:1)
Re:vi (Score:1)
Code Completion (Score:1)
Re:Code Completion (Score:1)
for the other ones, yes it does
(this is all about xemacs not vi)
Does (X)Emacs support Code Completion, Class Browser or jump_to_declaration? (not talking about tag-creation beforehand) Is there a possiblity to use this comfortably? I think this are the really comfortable features of VC and Delphi/Kylix. For everything else (GUI aside) gcc is doing the job.
Eclipse (Score:2, Informative)
XEmacs (Score:4, Interesting)
Re:XEmacs (Score:1)
I used to use XEmacs religiously until my workstation switched from solaris to windows (work change in 96). Since then, XEmacs has been released for the Win32 platform but it doesn't really interoperate well there, and my fingers have forgotten most of the command sequences.
look out people who use ISV answers (Score:2, Informative)
here is some of my advice(do a google search
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 [sourceforge.net] is a nice IDE that will help out visual studio freaks it has a GTK interface
http://www.kdevelop.org" [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 [sun.com]
http://www.netbsd.org [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
oh and the people who brought you IDE have (Score:1)
have released Borland [borland.com]'s Kylix [borland.com] which happens to be very nice if your a pascal/delphi man and want cross dev
regards
john jones
p.s. I put in a few to many BR in the last tinking plain text did not do tags (-;
Re:look out people who use ISV answers (Score:1, Insightful)
you need a spell-checker, not vi (Score:1)
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 love vi, but it obviously doesn't help you spell, eh? It's too bad, because an otherwise useful post like this is practically unintelligible when you have to figure out the true meaning of every other word.
vi - was: Re:look out people who use ISV answers (Score:2)
I'm not flaming
so my favorite editor is joe now
Re:vi - was: Re:look out people who use ISV answer (Score:1)
Re:vi - was: Re:look out people who use ISV answer (Score:1)
Re:vi - was: Re:look out people who use ISV answer (Score:2)
BSD and LSD. This is not a coincidence...
//rdj
Re:vi - was: Re:look out people who use ISV answer (Score:2, Insightful)
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
Re:vi - was: Re:look out people who use ISV answer (Score:2)
The escape key must be positioned more convieniently on the keyboard you use.
Re:vi - was: Re:look out people who use ISV answer (Score:1)
And you hit the escape key with your nose?
The escape key must be positioned more convieniently on the keyboard you use.
Yep. In the same way that Emacs users remap a PC keyboard to make Caps Lock be a CTRL key, I (and other vi users) remap Caps Lock to ESC. Even without that, Ctrl-[ is ESC anyway.
I started with Emacs and switched to vi because it's so much less wear and tear on the wrists and it's faster for me.
Sumner
Re:vi - was: Re:look out people who use ISV answer (Score:1)
Sounds damn useful...
Re:vi - was: Re:look out people who use ISV answer (Score:2)
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".
Re:vi - was: Re:look out people who use ISV answer (Score:2)
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.
Re:vi - was: Re:look out people who use ISV answer (Score:1)
We just said its superior to use ONCE you know it.
Summary:
- Steep learning curve
- Very quick to use, and huge amount of functionality, once you know it.
Yes it will take some learning but its worth it, for those of us that do a lot of text editing.
Re:vi - was: Re:look out people who use ISV answer (Score:1)
Just because it is a pain to learn, it does not mean that you accomplish anything once yo do it. I am yet to find an experienced vi user as fast as I am (not a fast typist, nor an experienced joe user) at editing text.
It is just painful to see them struggle through complicated keystrokes, and modes.
Re:vi - was: Re:look out people who use ISV answer (Score:1)
But seriously. I can't say I'm the most experienced VI user, as I've seen many people faster than myself, but I am faster than anyone else I've seen using another editor.
That said you must use the editor thats right for you. You may be the fastest when using editor X. Then use editor X until you find a reason to do other wise. I only suggest people learn vi because it works for me, and many others.
You be you, I'll use vi.
Re:vi - was: Re:look out people who use ISV answer (Score:1)
Even experienced people using vi are far less eficient than joe & I are at simple task as editing a config file. vi does look as a nice try, but others have succeded in making a fast, powerful editor, yet much easier to learn. WordStar-like editors, like TP4, beat vi all the way, and joe's shortcuts are really useful and easy to learn.
Let's face it, nobody wants to spend more than 10 minutes learning how to use a text editor, time must be spent thinking about your code, not the tool you use.
I think the only reason why vi is still used is that old timers promote its use by not installing a good editor in their systems, while vi is found on every system.
I think you'll enjoy Anjuta :-) (Score:2, Informative)
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.
Are you asking the right question? (Score:2, Insightful)
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
Sounds like you need Kylix (Score:1, Insightful)
gah... point and drool (Score:3, Funny)
"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)
Re:gah... point and drool (Score:1)
Code Crusader (Score:2)
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).
What language are you currently developing with? (Score:4, Informative)
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.
Re:What language are you currently developing with (Score:2)
Glade (Score:2)
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++.
Re:What language are you currently developing with (Score:1)
Having the version control tightly integrated and finely grained is sooooo nice.
Disclaimer: I am employeed by IBM.
Language is just another tool (Score:2)
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?
Re:What language are you currently developing with (Score:2)
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?
some non-traditional possibilities (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.
Go with Delphi/Kylix (Score:3, Insightful)
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.....
Metrowerks CodeWarrior (Score:4, Informative)
Re:Metrowerks CodeWarrior (Score:4, Informative)
very bad hope it improves but I dont hold my breath
regards
john jones
Visual SlickEdit (Score:3, Informative)
Mod me redundant (Score:2)
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.
Re:Visual SlickEdit (Score:2, Informative)
Re:Visual SlickEdit (Score:1)
Re:Visual SlickEdit (Score:3, Informative)
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.
Komodo (Score:4, Informative)
Komodo [activestate.com] from Activestate is very "Visual Studio"-ish and supports PERL, Python, PHP, and a lot more.
You might look at Sun's Forte [sun.com] as well.
Re:Forte (Score:2, Informative)
Re:Forte (Score:2)
Netbeans is the open source version of Forte (Score:2, Informative)
Their FAQ [netbeans.org] has the following [netbeans.org] 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
KDevelop (Score:1)
The next generation of KDevelop will make you forget Studio.
Serious question... (Score:1)
Anyway, ignoring that question, as far as Integrated Development Environments go, do they really get any better than Borland [borland.com]'s Kylix [borland.com]?
Re:Serious question... (Score:4, Informative)
To answer the question, I may not be a developer, but I have heard good things about KDevelop [kdevelop.org].
Re:Serious question... (Score:5, Informative)
On the commercial side, KDE Studio Gold [thekompany.com] 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 [borland.com]), 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
Re:Serious question... (Score:1)
Re:Serious question... (Score:2)
jEdit is nice (Score:2, Informative)
It's kind of nice to have one IDE for C,Java, and PHP.
I can be found at http://www.jedit.org/ [jedit.org]
Some Suggestions (Score:1)
Kylix already has an IDE (a good one), and KDevelop is also good (especially for QT development).
Another choice is Vim.
Don't Knock 'Till Ya ... (Score:1)
Over time your Emacs becomes your version of Emacs tailored to your preferences. And speed and convenience are the result.
Try it, you'll like it. Mikie did.