Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I'm torn which IDE to use. The power of eclipse or the simplicity of TextMate. I'm wondering which one has specific advantages over the other, productivity wise.

share|improve this question
1  
Why not have both? Sure, you'll use one by default most of the time, but that habit can just arise naturally. Personally, I've lost track of how many editors and IDEs I have on my system. I mostly use Notepad++ by default on Windows and KWrite on Linux, but that doesn't mean I avoid using IDEs, and there's at least three or four other editors that I'll sometimes use for some particular job. –  Steve314 Jun 13 '11 at 23:05
    
It's worth keeping in mind that there's a non-negligible chance that TextMate will have problems with Lion (after all, there are still plenty of open Snow Leopard issues). –  Dori Jun 14 '11 at 4:37

6 Answers 6

One doesn't take up 4 GB of RAM and take a minute to start up. One does.

In addition, Eclipse likes to lock you in. If theres an eclipse project, you need eclipse to build it. Text editors don't care. You can use whatever you want - some people will use emacs, others vim, others textmate. Granted, you can set up a Maven or Ant based project so its not all that bad.

share|improve this answer
4  
How is memory usage & speed a "useless comparison"? –  alternative Jun 13 '11 at 22:33
1  
Because RAM is cheap and most of us will wait a minute to enjoy all of the benefits that a nice IDE gives us (not that I think Eclipse is a "nice" IDE, but anyway...). I don't have a fast CPU and a bunch of RAM so that it can sit there and never be used. Talk about workflow, features, efficiency, etc. Yours is simply a snide remark that doesn't help the OP in any way. –  Ed S. Jun 13 '11 at 22:46
    
You apparently failed to even read the question - "I'm wondering which one has specific advantages over the other, productivity wise." The OP says nothing of system requirements, and I don't think waiting a minute for startup hurts productivity. –  Ed S. Jun 13 '11 at 22:47
    
Maybe @Ed has some really nice hardware. No pun intended. –  Marcelo Jun 13 '11 at 22:47
1  
+1 To the point. The fact is that whatever your own values of productivity is not the one of most of the developers out there that just want fast, responsive tools and that suggest that they are "small", because in a computer : small is fast. Eclipse might have interesting features, if they make the developer feel it's a 3seconds lag exchange between him and the computer, using a simple and fast text editor will always makes him feel more powerful, for writing at least. The main values in Eclipse are tools that rely on code analysis. Without that, it's a slow and big text editor. –  Klaim Jun 13 '11 at 23:00

I see two advantages with TextMate or a similar plain texteditor:

  1. You will be coding closer to java and will be forced to write everything by hand, no fancy wizards or automatically generated code to rely on. It may sound sarcastic, but if you are learning the language, being forced to handwrite everything is a small advantage.

  2. No risk getting stuck on figuring out how to do something or what all the cool things in the menus are.

Advantages for Eclipse:

Everything else...

It takes some time to learn all the nice features like refactoring or code generation, but once you learn them they are a huge productivity boost. Also, there are alot of plugins you can download for free that will help you with whatever you work with.

Eclipse is the most used Java programming environment so it makes alot of sense to get to know it well.

share|improve this answer
    
The advantage of Eclipse is not "code wizards", but things like code completion and refactoring tools. –  quant_dev Jun 14 '11 at 5:53
    
That too. I'm working alot with Plugins and Eclipse RCP and to be able to use the wizards there to quickly get a sample app/plugin done and then modify it to my liking is a huge timesaver. –  Fredrik Jun 14 '11 at 8:18

For Java development most of the in vogue IDE's are pretty solid (Eclipse, IntelliJ, Netbeans), but all with various wrinkles that may make one or the other more productive for you.

I'm a recent IntelliJ convert. I found the eclipse plugin framework too hard to debug and manage, and it's maven support was not good.

For XML querying and development it's hard to get past XML Spy.

For opening ad hoc text files for inspection Notepad++ is damned good.

I guess what I'm saying is that depending on what you're doing, various tools will come into play. Don't expect "one ring to rule them all".

share|improve this answer

If you're going to use libraries, I think Eclipse would be a better choice.

I've heard a lot of good things about TextMate, and I even like to code in VIM, but setting the classpath manually can be quite a pain, specially if you develop apps that require multiple libraries.

If you're just starting out with Java and need to figure out how everything works regarding compilation and execution, I think you should go with TextMate for the time being.

share|improve this answer
    
I use vim and never set the classpath. Because I just do 'mvn clean package' at the shell. –  Kevin Jun 13 '11 at 22:01
    
@Kevin although mvn is supposedly superior to ant, I prefer ant because it works faster for me, and it's easier to use with IDEs like Eclipse and Netbeans. –  Mahmoud Hossam Jun 13 '11 at 22:04
    
@Kevin Does vim add the imports automagically for you? –  quant_dev Jun 14 '11 at 5:53

wow, it really depends on you...

Text Mate I have never used but it seems to compare feature wise to other editors such as JEdit for example.

Eclipse will provide a lot more power for your money (money as in your own time you will have to put in rather than purchase cost). It provides many nice features especially so for Java. You can keep the bloat to a minimum by only including the plugins you really need. The auto-format, refactoring and code templates for me are killer features. It is possible to set this up on other lighter editors but the defaults are already pretty good and setup is more focused on Java meaning less setup time to be productive.

On the other hand the lighter editor will allow you to bring your development environment everywhere provided you took extra care in how your software builds and deploys. It's small footprint both in memory and CPU will leave more available for the actual developing or other tasks you might want to run on your system.

Looking at the productivity curve vs time I expect you would be slower at the beginning with TextMate as you would need to setup all the build environment for your project. Maven, Ivy, Ant etc can help a lot here. With Eclipse you can start working almost right away.

After a short while you start to be at ease in both environment and time comes where you need to execute your app outside your dev environment. Usually newbies with Eclipse will start looking at external build tools such as Maven etc. With TextMate you've already gone through this so this is non issue.

At this point you would be about as efficient with either of them. From here Eclipse will start to have an edge as you learn to use it's java centric features, most of which you would need to script yourself in a smaller more generic editor. Provided you are the type to scratch an itch when it comes it will take a bit longer usually with TextMate than eclipse to get what you want scripted, automated or macroed.

Frankly I do not think it matters much, it is really a question of personal preferences. Try them both !

Do take the time to ensure your project is independently buildable, it does eat-up a bit of time but regardless of the environment you choose you can always have this lowest common denominator. From this point migrating to any-other environment will be very easy.

share|improve this answer

I've never been a Java developer but I have used Eclipse, Netbeans, Aptana, etc. as well as TextMate, Notepad++ and Submlime_Text 2 for various code and projects and languages ranging from C#, PHP, Ruby, Javascript and a few others.

My preference is Textmate and the like because they lack bloat. They do what I want, when I want it and nothing else. They generally run smooth and quick.

The IDE's do give you a lot of tools to work with, but I find they also disconnect you from truly learning why things are happening. You find yourself spending more time trying to your Gems attached to your project in RubyMine when you could just be coding your application.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.