Hacker News new | past | comments | ask | show | jobs | submit login

This is huge. I've held out on Android development for many reasons, but my visceral hate for Eclipse is one of them. I know I've been able to use IntelliJ before now, but Eclipse was Google's example in tutorials, etc.

Now I'm very excited to make an Android app.




IntelliJ 12's Android support is vastly superior to Eclipse, in addition to being just a better Java IDE overall. I'm now very curious to know just how different Android Studio will be from IntelliJ.

I'd guess it's going to something akin to the difference between JetBrains' RubyMine and Ruby/Rails plugin support inside IntelliJ -- same overall functionality with better UX integration for the domain.


Even the community edition[1] supports android development. Just point IntelliJ at your android sdk installation folder, and you're off to the races!

[1]: http://www.jetbrains.com/idea/features/android.html


But I think this version is not the same as Android Studio community edition.


You're right, it isn't.

This post[1] from JetBrains helped clear the situation up for me.

[1]: http://blog.jetbrains.com/blog/2013/05/15/intellij-idea-is-t...


If you switch the preview released today[1], it's nearly the same as Intellij (even the build numbers almost line up at 130.xx). I just prefer the Intellij preview for some of the features one cannot get in the Android focused IDE Google previewed.

[1] http://blogs.jetbrains.com/idea/2013/05/intellij-idea-13-ear...


Obviously, IntelliJ Ultimate edition is a superset of most JetBrain products.


It looks like there's some pretty deep integration with the Resource system in Android, and some cool layout tools.


Earlier this year I wrote my first Android app using Eclipse. After finishing the project, I decided I hated Eclipse enough to not waste any more time on the platform. I don't really like the Java language either, it somehow feels 'old'. But recently discovered Xamarin[1] and later this year will try to write an Android app again, but this time in C# using Xamarin Studio. I think it's a great alternative for Eclipse, though I will definitely check out Android Studio as well, if it's going to be free.

[1]: http://xamarin.com


It is going to be free since it is based on IntelliJ Community Edition.

This time around try use Kotlin(http://kotlin.jetbrains.org/) instead of Java. It offers 100% compatibility with Java and it works nicely with IntelliJ.

I wrote this fully fledge news app using Kotlin/Java https://github.com/dodyg/AndroidRivers


I thought Google was pretty heavily invested in the Eclipse ecosystem, I think they use it quite a bit internally (at least from what I can gather). Perhaps those efforts were more in the interest of supporting the community of developers which use their API's, though.

I also hate Eclipse, even though I've tried my hardest to overlook its shortcomings. I'll leave it at that so as not to delve too far off-topic.


I used to work on Google TV and IntelliJ seemed to be the preferred IDE to work with on that team at least.


I think they mainly use IntelliJ internally, too.


Why does everyone seem to hate Eclipse? I've been using for a while and I can't find reasons to dislike it.


The feature set is fine, and when it came out it was basically revolutionary.

But over the years the architecture has developed real instability. Frequent crashes, terrible and fundamentally broken package/dependency management. Difficult to find features, inconsistent UX and a vast amount of very low-quality plugins in the ecosystem.

Then there's the extremely varied and confusing set of packages. There's even a matrix of packages and features to help you decide! But even that grid barely scratches the surface:

http://www.eclipse.org/downloads/compare.php

Using Eclipse over a period of months creates an ongoing feeling of anxiety and fear of project file corruption. Updating a plugin is a crapshoot. Dead repository links abound, installs and upgrades have a high likelihood of failing. Upgrading Eclipse itself is like playing routlette with your project file.

Two years into using IntelliJ, I'll never look back. I used to be a huge Eclipse fan, used it for many years, but it just hasn't aged well at all -- it's a layered-over Frankenstein that barely resembles its former greatness.


Everything you wrote was true several years ago, but today it's no longer true. Eclipse is pretty stable now since it has OSGI under the hood. UX wise though it's still pretty crappy. I wouldn't be surprised if the new Android IDE is still Eclipse.


My last full-time experience with Eclipse was a year and a half ago, and it was worse than it has ever been. Plugins and package management are a nightmare, and that's a quagmire that you can't simply rewrite your way out of. Terrible plugin quality control has created an entire ecosystem of bad Eclipse UI/UX.

As to OSGI -- that has been the core of Eclipse for nearly a decade, and IMO also a big part of the problem. The promise of OSGI was to allow Eclipse to be treated as a radically-open MDI framework that you could write just any old software on -- not just IDEs, but gaming frameworks, spreadsheet editors, on and on. The reality is that the standards for Eclipse's OSGI "drop-in" architecture have not stabilized into a robust ecosystem, rather it has lead to wildly varying user experiences, odd menu/pane/window configurations that have little consistency from one plugin to the next and poor quality software across the board. I'd be very reluctant point to Eclipse as an example of OSGI's fulfilled promise.

Also -- not sure if you read the OP, but the new Android IDE is going to be IntelliJ, not Eclipse.


what plugins are you using? I've been installing plugin after plugin and I've never run into any problems for the past five years now.


Sorry, I cannot even take that comment seriously.


Why not? Do I sound insincere?


Because I have used eclipse and recently and I would not call it "stable".


Ok then if you don't mind what did you experience and what plugins did you use? I'm curious because there may be a common thread. Right now I only use it on Mac or Windows. I've rarely used it on Linux.


I suspect you are suffering from stockholm syndrome. I program Java daily, understand what Eclipse is doing, and I cannot use it for more than a week without shouting at it as it crashes and burns. Perhaps this is a Mac OS X quirk, but I don't really care.

And UX wise it isn't just "crappy." It take some serious doing to be less intuitive and newbie-friendly than emacs.


> I suspect you are suffering from stockholm syndrome.

I don't think so. If that were the case, I would have switched to IDEA a long time ago. Going off topic, I don't really like Java very much either. Anyways so what plugins did you have installed and when did you last you use it? What did you use it for - web development or something else like Android development? So far no one has been willing to list which plugins they're using so I'm suspecting that people haven't actually used Eclipse in years.


I've tried it for Android, Java, and Scala development.


Scala is the only plugin that I know of that's unstable and buggy. Not sure if it's still the case


> I wouldn't be surprised if the new Android IDE is still Eclipse.

The whole announcement is that it is based on IntelliJ.


No it really isn't. At least not for me. Slooooow as all get out even with every tweak I could find. I hate the interface too.


Actually from the screenshots at The Verge it looks like it's ... IntelliJ rebranded!


Eclipse is a parody of a GUI.

A GUI should offer you all and only the valid operations you can perform, depending on the selected object(s). Eclipse, far too often, offers to, e.g. deploy your Android app to a server. This kills discover-ability, especially for novices. It's like feeling around blindly in a box but every third thing is a hammer that bashes you on the knuckles. No. Fun.

Eclipse comes off as a GUI pasted on a CLI, where any command can be performed at any time, and you are only told if the arguments are wrong after an attempt to execute a command. You can blame this on plugin developers not fulfilling all the contracts of all the interfaces, but, still, that's how Eclipse is in practice.

Eclipse has gotten better, and I have Stockholm Syndrome by now. But it is far worse than XCode or Visual Studio for basic usability.


>A GUI should offer you all and only the valid operations you can perform

Visual Studio does this, mostly and it's way too annoying.


There's been several projects where external forces have practically forced me into Eclipse (Android development among them). I dislike it because it's huge and difficult. It won't let me work simply. It is slow to start and slow to use. If I want to import a project, I have to manually copy the .project file and manually edit it because Eclipse is too retarded to just import a simple folder from the filesystem in anything like a sane manner. I have to tweak a bunch of crap in the messy menus and dialogs before I get a functional debugger, different for each project context. The UI is slow, meaning it loads slowly, and switching from Debug->Code view lags horribly. Using the internal windowing and docking system for widgets is hard and sometimes I have to reset the whole thing to get it back to a manageable place.

Those are my main complaints. I haven't used IntelliJ so I don't know if it is much or any better. I kind of feel like Eclipse exhibits the primary pervasive cultural philosophy amongst Java developers; create something massive and unwieldy, embed some useful functionality somewhere beneath layers of tedious boilerplate, and bundle it all up and act confused when no one wants anything to do with it. This is further exhibited by Java's attachment to XML, its packaging mechanisms (wars and jars everywhere), and its general verbosity.

I appreciate the intention behind all of this, but I think it's totally non-functional from an outsider's perspective. I hope IntelliJ is better.


I've used JetBrains' products in various forms (IntelliJ IDEA, Resharper for Visual Studio, and PhpStorm) for a long time, but every couple of years I was also exposed to Eclipse (Aptana Studio, and one or two other installs that I forget what they were for).

Eclipse just feels clunky and not very well designed. Like they forgot to find someone to do UX work. Plus the workspaces concept is really stupid, and the versions I was using couldn't open a file if it wasn't inside a workspace.


Well said. I've used Eclipse for several years, and _never_ felt that it was lacking... except perhaps in the department of finding which permutation of pieces to install. Then, I installed PyCharm (a Python IDE from JetBrains which basically is IntelliJ for Python), and was BLOWN AWAY by the polish.

It's not that it's faster. That helps. The thought that was put into how you can make it your own -- search boxes on the settings menu are mindblowing -- and the overall polish makes it extremely awesome. I expect that IntelliJ is similarly awesome for Java, because Jetbrains makes good stuff.

The few things I can think of offhand that I like about Eclipse are that I can drag tabs of code windows around and it automatically will split however I want (PyCharm doesn't let me do that as easily, though it does support split windows Just Fine), and the fact that Eclipse is a de-facto (and FREE) standard IDE that nearly everyone has examples for.

PyCharm, and IntelliJ by extension, has been the first IDE I've ever used that I've felt was worth spending money on.


The search box on the settings was an eclipse feature before it was an intellij feature.


This is well-said. Something I say quite often when Eclipse/IntelliJ comes up: for a while, as an Eclipse and occasional NetBeans user, I thought that I really hated Java. After finding IntelliJ, I realized quite quickly that while I don't love Java (and I do have a laundry list of things-it-must-do-better), what I really hated were my IDEs. IntelliJ for Scala is also just straight-up brilliant.

My only complaint is that even with all the tweaking in the world it's basically impossible to make their Swing-based editor component not look terrible on Linux.


Hmm... other than some issues with disappearing completion windows (probably related to me running XMonad), I haven't really found it to be that ugly on linux... Maybe not very slick, but frankly speaking, for the benefits it's small price :D


Well, yeah, it's workable, but coming from IDEA on Mac it's really distractingly poor. Doesn't seem to matter what settings I tweak or fonts I use--Swing on Linux is just no fun.


It's slow and buggy in my experience. I work on a fairly large Android project and over time it just keeps getting slower and slower. Doing things like closing/opening files of any size can take > 5 seconds even with a good SDD and processor, and this time increases as you use it until you restart eclipse. Also it crashes more often than any other IDE I've used and lately has refused to use emacs keybindings for me.

Lately I've switched using emacs w/ JDEE to edit code and Eclipse mostly just for debugging and the Android XML layout tools, which feels much better. I'm really interested in this new IDE from google, it'd be better if I could do all my editing/debugging in one program.


I've done something similar with vim and builds on the cl with Ant. I use IntelliJ quite a bit for Java heavy-lifting, but with vim bindings (which are OK, but occasionally frustrating). I flatly refuse to maintain separate build configs for dev and production ever again. I do adb and ant on the command line, and use IntelliJ only as an editor.


I have neither used Eclipse or IntelliJ much. So from a new user point of view -

I dislike Eclipse primarily because of really bad UI. Big toolbars, tabs, everything takes up considerable amount of screen leaving very limited space for code. Looks ugly. Speed sucks too.

On other hand, IntelliJ not only has cleaner UI, but also better shortcuts and even show hints to remember them. Speed not great, but feels better than Eclipse.


Traditional Style Tabs are quite a bit less ugly.


Indeed, my first move after every install is to change to classic appearance. I really don't know what they were thinking.


I've thought the speed has increased considerably over the years, although to be honest I'm not a huge fan of any of the "full" IDEs out there.

Also, I know what you mean by the large amount of screen real estate all those toolbars and windows take up, but you do know you can close / turn all those off right? It's not too bad after that.


Have you tried visual studio or jetbrains? Even VS2005 runs circles around Eclipse Juno(2013).

Eclipse is slow, you have to manually edit memory-settings in eclipse.ini just to get bearable performance(-Xmx384m wtf??), it's buggy, plugins are confusing and often conflicting , the ui is bloated, intellisense is more in the way than it is helping, keyboard focus is all over the place when switching between panels(for example going between code/project/search). It's simply frustrating to work with it once you're used to something that actually works smoothly.


Have you tried Idea? :-)

Anyway as IDE developer for alternative languages (Scala, Kotlin) I dont like Eclipse because they refuse to integrate any sort of support for third party languages. This has been going on for nearly a decade. Vmware had to basically fork JDT to build decent Groovy IDE.


Are you talking about some core Eclipse features that needed for third party language support?

There are many amazing third language IDEs implemented as Eclipse plugins, not forks, like http://www.eclipse.org/koneki/ldt/.


I am talking about languages which can crosscompile with Java source-code level. So class in Scala can be extended by Java class and again extended by Scala class and so on... By my knowledge this is AspectJ, Kotlin, Scala, Groovy and probably Ceylon

This requires deep integration with Java Development Tools to make incremental compilation working. And JDT team refuses this sort of stuff for nearly a decade now (since AspectJ). There are various hacks (such as aspect hooks used by Scala IDE). Probably best solution is JDT fork made by Spring Source (VMware) : http://blog.springsource.org/2009/07/30/a-groovier-eclipse-e...

And to add insult to injury Eclipse Foundation created their own language called Xtend. It has cross-compilation as well, but it first compiles down to Java source code and result Java code is than compiled by javac. Basically Java Preprocessor. (dont get me wrong. I really like Xtend as language, I just wish their team would put some pressure on JDT folks).


> Why does everyone seem to hate Eclipse?

Echoing what others have said, you will notice if you've tried other IDE's. Since my main IDE is Visual Studio, I notice the lag / slowness / clunkiness immediately. YMMV. Maybe on a newer blazing fast CPU it's not so apparent. Definitely not OS dependent. I've tried Eclipse on both Windows and Linux, it's slow on both.


I try to love Eclipse, I really do. I've worked at places that make Eclipse plugins and I appreciate that it is completely FOSS. But as a full time Android developer, it just crashes too much. Multiple crashes per day, every day. It's just too distracting.


I use Eclipse extensively personally, but the one thing that drives me nuts about it is it's general speed. Conversely I'm so well versed it in I don't have a strong desire to replace it at the center of my work flow. Just been getting better/faster machines over the years.


Same here.

I was disappointed when I bought a brand new Macbook Air last year though only to find hitting cmd-s then switching to a different tab "loses" the save if you do it too quickly (among other general slowness). It's amazing how over so many years with massive hardware increases it doesn't seem any more responsive.


They took a step back with the CSS theming disaster which seemed to slow down the UI dramatically. Other than I have never hated Eclipse. It's very productive for Java development. That said I use SublimeText for every other language...


For quick edits I will turn to jEdit or vim. I've also been giving LightTable a try and enjoying the early stages.


From someone who admittedly prefers to use a text editor in a terminal: It's horrendously slow, especially to start. It's massively overcomplicated. It's laggy and unresponsive in ways that only java software tends to be.


eclipse is worse in every way outside of generally getting plugins/framework integration first. and though i'm sure i could configure eclipse to behave the same way...out of the box intellij was very predictive for me. not just on obvious auto completes either. it seems to know what you want to do as you're typing. similar to the way BMWs communicate what's happening on the road to you and you begin to feel like you're one with the car. that level of interaction between me and the IDE makes it much easier to get code from brain to file imo


Switching between tabs in the editor takes > 1s (on a core i7 with 12GB). That is enough to make it almost useless for me. IntelliJ community edition is much snappier.


This is been a new issue with Juno, Eclipse 4x branch. Before it Eclipse was very fast, now it has all these odd quirks the flash the gui and occasionally hang for a few seconds. Obviously with weighty plugins like ADT you will see the problem exacerbated.

I remember the Google team being shocked (as was the Eclipse community) when Juno came out since it was so awful ui-performance wise. They rushed to donate some machines to re-enable performance tests which had been commented out due to lack of resources, it was small like 10K commitment or so. With their help the Eclipse team was able to mitigate the problems, but its still very slow compared to the 3x branch. In a way they seem like they dont want to admit it and defend the 4x branch. I'm sure this Studio release will be a wakeup call.

I suspect we're seeing the result of Eclipses 4x failure. The only light at the end of the tunnel is that Eclipse releases every year along with its huge plugin ecosystem. They almost never miss a date which is amazing considering its usually millions of lines commited on everything from graphical modelers through c++ tools. Maybe the next major release will fix all this crap and restore order to the Force.

edit/tl;dr: 4x performance issue fixes hopefully done by June 2013: https://bugs.eclipse.org/bugs/show_bug.cgi?id=393429


I'm using Eclipse (Juno Service Release 2) for vanilla Java development and it doesn't even take a quarter of a second to switch between tabs and various perspectives. I'm using a first gen i3 with 4GB of RAM. Maybe there is something else wrong with your Eclipse setup?


retina support


This is pretty crazy considering the huge investment Google has made into Eclipse to create the SDK there. There is also a significant community investment in using Android with Eclipse. Eclipse once you get rolling is amazing, and most importantly its free which is a big deal especially to cash strapped individuals and businesses.

What will happen with the existing Eclipse SDK? Also what about GWT? Splitting the IDE communities is bold. So many questions though.


> This is pretty crazy considering the huge investment Google has made into Eclipse to create the SDK there.

What's pretty crazy is that they were insane enough to base it on Eclipse in the first place, seeing as it's probably the only IDE that so many people hate so intensely.

I'm a Linux user primarily, use OS X at work, and detest Windows, yet I'd pick Visual Studio ca. 1999 over Eclipse any day. I'm an Emacs user, yet I'd switch to Vim in a heartbeat if I had to pick between Vim and Eclipse.

I suspect you will find quite a lot of people with similarly strong hate for Eclipse. It's a trainwreck. Though in slow motion, as Eclipse never seems to do anything fast.


It's probably because the Community Edition of IntelliJ didn't exist when they started doing their Android tooling. Eclipse was more dominant back then. That's slowly been changing (thank goodness!)


> "I'm a Linux user primarily, use OS X at work, and detest Windows, yet I'd pick Visual Studio ca. 1999 over Eclipse any day. I'm an Emacs user, yet I'd switch to Vim in a heartbeat if I had to pick between Vim and Eclipse." - after hearing this from a fellow emacs user I am seriously considering a switch to Intellij from eclipse and see how it goes.


>Also what about GWT?

Is GWT still even a thing they care about? It seems like they're pushing people towards Dart and Angular at this point.

I/O last year was seriously thin on GWT, and it looks this year like there's only one session, which got misfiled in the schedule under "Google Wallet."

https://developers.google.com/events/io/sessions/331474237


that's sad to hear, i quite like gwt. but ATM gwt is quite feature complete, except for bugs.


I share your visceral hate for Eclipse, let's see if this IDE would solve that :)


Android apps are actually an extreme pleasure to code in vim/emacs and build from the commandline. The shell debugging tools are very nice, too. Eclipse doesn't really add that much to the experience other than setting up the initial required files.


Agreed! Not many people do this that I know of but it's a great option. I use a vim/tmux environment, but I use IntelliJ for a lot of the Java heavy-lifting. Let's face it, it's hard to match IntelliJ's autocompletion, auto-import, etc. inside of vim. I do use the vim bindings though.

Looking forward to porting my ant scripts to gradle.


I've gotten by with Emacs and the command line tools. Full disclosure, I'm the author of this game: https://play.google.com/store/apps/details?id=net.parodychec...

I'm hesitant to give up Emacs just to write for Android, but even so I might give this new gizmo a try.


Could you describe your workflow/emacs.d ?

I've been thinking of going with Emacs for Java coding for some time, but JDEE always seemed to be missing something (and some of the newer options tended to eat hilarious amounts of resources or required maven)


I really don't have anything special installed for Java. I code Java much like I code C, and don't have the advantage of IntelliSense or similar.

Android makes this sort of coding easy, because it supports a relatively "small and focused classes" coding style -- much like Java in the 1.0.x days. Compare to, say, J2EE, where you HAVE to have an elaborate IDE just to wrangle the complex classes and all their interrelationships.


Same here. Can't wait to give this a shot.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: