3 ms·
I have used IntelliJ IDEA since the early 2000's and used it for Android development since Android first came out. It used to be an amazing experience, and whe
by lokedhs 8y ago
I have used IntelliJ IDEA since the early 2000's and used it for Android development since Android first came out.
It used to be an amazing experience, and when the news came out that Google was going to switch to IDEA for their official tools instead of going with that Eclipse I was thrilled. Finally everybody was going to able to know just how fast and efficient Android development can be.
How wrong I was. When Android Studio came out, it was incredible slow. Even today, after years of improvement to the developer experience it still isn't as efficient as plain IDEA was before Google created Android Studio.
I actually lay most of the blame on Gradle, which became mandatory around the same time. I never thought that someone would create a buid tool I dislike more than Maven, but it seems they succeeded.
- russellbeattie 8y agoGradle is pure insanity. Take a JVM-based scripting language that no one uses, and base an entire build-tool around it - complete with a custom DSL - that is so slow it needs to be run in the background as a service to be even somewhat performant, and make sure that each new version somehow breaks older build scripts so that you're constantly being prompted to update, and then being prompted to fix whatever the update broke... It's honestly just pure, unadulterated, crap.
- jrs95 8y agoMaven is very unintuitive though, at least Gradle does a better job on the CLI interface. Hopefully we'll get better options on the JVM in the future.
- lokedhs 8y agoBut you need to edit the Gradle configuration files. Most people simply cargo-cult that, and while that works most of the time, it's incredibly non-intuitive to solve problems.
- jrs95 8y ago99% of the time this is just pasting one dependency line into a file, and a Gradle file reads more intuitively than a Maven pom file. IMO performance aside Maven really only excels in edge cases. Most projects would never see any advantages from using Maven instead.
- vorg 8y agoYou can use Kotlin instead of Apache Groovy as the build language for Gradle, but virtually no-one uses it there.
- dikei 8y agoHonestly, I find Maven more intuitive. Gradle is too flexible, you can have dozens of way to perform one task. With maven, you often search for one plugin that does what you want and stick with that. Of course, if there's no existing plugin that fit you, then it gets much more complicated, but that case is usually rare due to maven's massive number of plugins.
- vorg 8y agoYou might need to wait for Flutter to mature. I presume they'll use a custom build tool instead of Gradle, and Dart as their build language instead of Apache Groovy.
- zmmmmm 8y ago> I actually lay most of the blame on Gradle, which became mandatory around the same time. I never thought that someone would create a build tool I dislike more than Maven, but it seems they succeeded Indeed ... most people don't know Groovy and hate Gradle whenever they have to fight with the build file. What's fascinating is that I really like Groovy and know it extremely well - but even I hate Gradle. It's amazing how shiny the documentation looks for how little it explains the underlying principles of what is going on. Most people are two steps removed from any hope of understanding it (first learn Groovy, then realize that Gradle is actually a DSL layered on top of Groovy, so you still have no clue what is going on until you learn that as well ...)