4 ms·
What language are you developing in? I think that some languages (like Java and C#) really require an IDE to be effective, whereas others (like Ruby and Python)
by aeden 16y ago
What language are you developing in? I think that some languages (like Java and C#) really require an IDE to be effective, whereas others (like Ruby and Python) do not require an IDE.
Personally I do mostly Ruby development, so I use VIM plus a host of plugins that are Ruby-specific. If you develop in another language then there are probably a host of plugins that make that language easier to work with.
In general though you are correct that you will have to tweak more to get VIM or Emacs to work for you - an IDE is essentially an environment that has already been tweaked for you.
- djhworld 16y agoI think this is where the problem lies, a persons Vim configuration is personal to them and their needs, there's so much disparate information out there I'm finding it difficult to say "this is a good configuration for Ruby, this is a good configuration for Python" It would be good if there was some sort of package you could download that sets up your development environment (Vim + plugins + configuration file) for a particular language. At the moment it's just a personal preference and I'm finding it difficult to find what's useful or not
- dasil003 16y agoThere's not too much of a problem here actally. All these plugins are supplemental functionality. Vim is an amazing editor by itself. Master that and then enhance it with a few plugins here and there for the particulars of your workflow.
- points 16y ago> "I think that some languages (like Java and C#) really require an IDE to be effective" I've never understood that statement (I've programmed Java for 10 years, using a text editor). I think I'm effective.
- Someone 16y agoJava and C# are easy to parse. That makes them tooling-friendly. That, in turn enables the development of reliable, fast tools for refactorings. For better or for worse, most of that tooling is implemented as an IDE command/plugin. Command-line refactoring tools are way rarer. For example, <http://stackoverflow.com/questions/704062/are-there-any-open-source-command-line-tools-to-refactor-java-code> http://stackoverflow.com/questions/704062/are-there-any-open...; was asked a year ago, but the top answer lists software that, according to it's website, was Last released seven years ago. So, IMO, that 'require' may not be absolute, but it certainly is pragmatic. What makes you think you are effective in Java? Do you know what you are missing?
- points 16y agoMost languages are easy to parse. The argument I've heard many times before is that you must use an IDE with Java because Java is overly verbose. I'm effective in Java in that I achieve what I want to achieve. The bottleneck has never been speed of typing/refactoring etc.
- Someone 16y agoThat depends on your definition of 'easy to parse'. For C and C++, you have the #include problem, macros whose definition isn't known until one calls the compiler. perl cannot be parses at all; there are cases where you must run a program to find out whether x is an identifier or a fiction name. For Java, you can take a function in isolation, search its source file for import statements, and tell me what the variables, statements and expressions are. C# was in the same boat, but with LinQ, I think it gave up that idea. Now,
- chromatic 16y agoperl cannot be parses at all; there are cases where you must run a program to find out whether x is an identifier or a [function] name. Nonsense. A very small category of behavior exists where static parsing of Perl 5 cannot determine whether a given program is valid. That's all. It's possible to write a pathological program which has two valid and working parses, but I've never seen it and it's an intellectual game, not a trap waiting to snare an unwary programmer. (I have no idea what "an identifier or a function name" means, as Perl uses sigils to distinguish between variables and function names.) See http://www.modernperlbooks.com/mt/2009/08/on-parsing-perl-5.html http://www.modernperlbooks.com/mt/2009/08/on-parsing-perl-5.... for details.
- bmj 16y agoI've done stacks of Java programming in gVim, and, yes, I had to look up some of the APIs, but for the most part, it was just fine. Using Ant allowed my just use the shell to build. For C#, I don't mind VS2010. My laptop handles it just fine, though, yes, it's a bit slow on start-up, but once it starts, I can just leave it open for days and days. I do, however, use the VIM extension. For all other stuff (Perl, ColdFusion (really), Javascript), I use gVim.
- RodgerTheGreat 16y agoWhen I'm coding in Java, I generally just use TextWrangler (on OSX) or kate (on linux) as my editor, and commandline tools like ant and git to manage everything else. I think C# needs an IDE like VS more than Java, if only because it doesn't have a standardized high-quality documentation tool equivalent to javadoc. For many .Net libraries, intellisense is the only source of documentation, and MSDN docs are rarely very helpful.
- evo_9 16y agoNot necessarily - monodevelop is an excellent IDE for use with C#/mono.
- RodgerTheGreat 16y agoNice to know about monodevelop, but I don't see how that refutes my point about C# needing an IDE.
- barrkel 16y agoI find msdn docs far better than javadocs. YMMV.