Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "gradle build running..."
-
I have been a mobile developer working with Android for about 6 years now. In that time, I have endured countless annoyances in the Android development space. I will endure them no more.
My complaints are:
1. Ridiculous build times. In what universe is it acceptable for us to wait 30 seconds for a build to complete. Yes, I've done all the optimisations mentioned on this page and then some. Don't even mention hot reload as it doesn't work fast enough or just does not work at all. Also, buying better hardware should not be a requirement to build a simple Android app, Xcode builds in 2 seconds with a 8GB Macbook Air. A Macbook Air!
2. IDE. Android Studio is a memory hog even if you throw 32GB of RAM at it. The visual editors are janky as hell. If you use Eclipse, you may as well just chop off your fingers right now because you will have no use for them after you try and build an app from afresh. I mean, just look at some of the posts in this subreddit where the common response is to invalidate caches and restart. That should only be used as a last resort, but it's thrown about like as if it solves everything. Truth be told, it's Gradle's fault. Gradle is so annoying I've dedicated the next point to it.
3. Gradle. I am convinced that Gradle causes 50% of an Android developer's pain. From the build times to the integration into various IDEs to its insane package management system. Why do I need to manually exclude dependencies from other dependencies, the build tool should just handle it for me. C'mon it's 2019. Gradle is so bad that it requires approx 54GB of RAM to work out that I have removed a dependency from the list of dependencies. Also I cannot work out what properties I need to put in what block.
4. API. Android API is over-bloated and hellish. How do I schedule a recurring notification? Oh use an AlarmManager. Yes you heard right, an AlarmManager... Not a NotificationManager because that would be too easy. Also has anyone ever tried running a long running task? Or done an asynchronous task? Or dealt with closing/opening a keyboard? Or handling clicks from a RecyclerView? Yes, I know Android Jetpack aims to solve these issues but over the years I have become so jaded by things that have meant to solve other broken things, that there isn't much hope for Jetpack in my mind 😤
5. API 2. A non-insignificant number of Android users are still on Jelly Bean or KitKat! That means we, as developers, have to support some of your shitty API decisions (Fragments, Activities, ListView) from all the way back then!
6. Not reactive enough. Android has support for Databinding recently but this kind of stuff should have been introduced from the very start. Look at React or Flutter as to how easy it is to make shit happen without any effort.
7. Layouts. What the actual hell is going on here. MDPI, XHDPI, XXHDPI, mipmap, drawable. Fuck it, just chuck it all in the drawable folder. Seriously, Android should handle this for me. If I am designing for a larger screen then it should be responsive. I don't want to deal with 50 different layouts spread over 6 different folders.
8. Permission system. Why was this not included from the very start? Rogue apps have abused this and abused your user's privacy and security. Yet you ban us and not them from the Play Store. What's going on? We need answers.
9. In Android, building an app took me 3 months and I had a lot of work left to do but I got so sick of Android dev I dropped it in favour of Flutter. I built the same app in Flutter and it took me around a month and I completed it all.
10. XML.
If you're a new dev, for the love of all that is good in this world, do NOT get into Android development. Start with Flutter or even iOS. On Flutter and build times are insanely fast and the hot reload is under 500ms constantly. It's a breath of fresh air and will save you a lot of headaches AND it builds for iOS flawlessly.
To the people who build Android, advocate it and work on it, sorry to swear, but fuck you! You have created a mess that we have to work with on a day-to-day basis only for us to get banned from the app store! You have sold us a lie that Android development is amazing with all the sweet treat names and conferences that look bubbly and fun. You have allowed to get it so bad that we can't target an API higher than 18 because some Android users are still using devices that support that!
End this misery. End our pain. End our suffering. Throw this abomination away like you do with some of your other projects and migrate your efforts over to Flutter. Please!
#NoToGoogleIO #AndroidSummitBoycott #FlutterDev #ReactNative16 -
Dear Gradle,
I just modified a single attribute value in an XML. Please!!
You just built the whole thing a few minutes ago.. Why do you wanna... Oh well...
Gradle build running....7 -
That moment when you try showing an issue to your senior developer and gradle takes forever to build.
Clicks build...
Goes to get coffee.
Takes a sip.
*1500 sips later*
Gradle build still running...2 -
The advantage of programming in Android studio is that you can read a chapter of your favorite book, watch a series or do a little exercise... Thank you gradle2
-
Fuck android studio in the ass with cactus.
*starts learning Android*
*Builds simple application with 1 Button, 1 TextView and 1 EditText*
At this point, I haven't implied any logic or code in MainActivity.java.
*Hit Run*
*Gradle Build*
*Meanwhile, eat lunch*
*Still Gradle Build*
*After 2 Eternity, Build finished*
Fucking, slow peice of shit. I'm rebuiliding the App, because the AVD timedout while running.18 -
Who the fuck thought java development is okay on a VDI ! Eclipse runs shit even on local environment and running it on a vm located in a different country with 3gb of vram?
You want to do a file search? Wait for 5mins
You want to. Build via gradle. Wait for 15 min
Fucking idiots.1 -
Co-worker put up a pull-request for his work, with no build file, no readme, no gitignore, and shell scripts for running the app (but not compiling it). O_o
The guy has been using atom editor even though we have license for Intellij for everyone, which .. whatever .. if it works for you...
In our daily stand, people offered to help him add the build files and he was like, "No, I know how to do it, I was just trying to avoid using Gradle until I had to."
It just made me think, "Yea I know you have all these nice screw drivers and hammers, but I'm going to keep using my hands and this stick so I can avoid using tools until I have to." -
gradle is infuriating.
firstly there are so limited resources to understand how it's building a java/android code. everything happens by magic and hit+trial
secondly the plugins and the tasks works in mysterious ways. sometime they work when applied in the project root's gradle file, other times they work when applied in module's gradle file, nd other times they need configuration at both levels.
then there are gradle tasks like build ,test, assemble , clean etc. these are less of an action and more of an alias to run a bundle of actions.
then we have 3rd party plugins which attach themselves to these "fat-actions" and run before/after them
and finally we have the fuckup from the java world where the only available code coverage plugin is jacoco and IT FUCKING SUCKS!!! it is a test environment plugin, it should impact test tasks , but somehow it's fucking with the assemble taskin such a manner, that the jars ans aar files generated via plugin are giving runtime errrors. yes , runtime! as if we are back in the messed up js world of "everything is good unless running live"
even if it was a compile time eeror, i would have considered. but runtime?!! fucking runtime error?! i barely understand this shit, there is absolutely no info available as to which classes are being used to create a build and how, and i am supposed to fix this? wtf?!4 -
I fucking hate spring boot. I can go unwind and nobody would hear this but boy, does it suck. Every single thing about it is a pita. I spend 98% of time I should have used for feature implementation in JAVA, struggling and battling MUNDANE functionality of the framework that ought to be nobrainers
Today started out with a project I inherited. I don't even know whether to blame its original author but he installed a couple of funny libraries for logging. The spring app doesn't build yet gradle build completes successfully. No errors are logged to the terminal, just reams and bundles of json. WHY IS THE APP NOT BUILDING??? You want me wrangling json through that pinhole console window?
I struggle with the yml settings, none works. Eventually get rid of the package (hint, it wasn't the slf4j one). I'm able to debug app not starting now, but now live reload doesn't work
I copy configs from a previous project where it worked into this. Nope, doesn't budge. Eventually enable an ide setting but now server restarts twice after file changes. The implication is that request argument annotation no longer works! So the server just restarts and has amnesia about argument type resolution
I've been sitting here for hours, without implementing a single new feature. Everything is a painstaking, avoidable aggravation VS the "framework". Never seen anything as horrendous. No line of java code yet. I just want to send a request, retrieve parameters and verify live reload is "up and running". You'd think something as low level as this shouldn't take more than two minutes. Alas, welcome to the incredible world of spring development5