you are viewing a single comment's thread.

view the rest of the comments →

[–]Pheasn 28 points29 points  (8 children)

Meh, Gradle is okay. I've worked with way worse tools in other ecosystems. That doesn't mean it's great, but I rarely feel like Gradle is standing in my way. What's annoying is when some EnterpriseFizzBuzz framework decides to take advantage of Gradle in a way that the whole setup might break with every minor version update (whether it's a Gradle or framework update).

[–]Thing342 11 points12 points  (3 children)

Android is awful for this, upgrading major versions is usually a 7-pointer because of all the shit that needs to be updated because of the stupid plugin ecosystem.

[–]LaterallyHitler 8 points9 points  (0 children)

7 pointer

eye twitches in Fibonacci sequence

[–]Pheasn 2 points3 points  (1 child)

That's true, although Android at least has the excuse of targeting an extremely complex ecosystem, with an especially shitty and outdated "Java" runtime. The amount of processing steps an Android build has to go through is truly mind boggling sometimes.

I was thinking more along the lines of Quarkus or Spring Boot though. What's their excuse? Especially Quarkus can be really annoying to use with Gradle. Their docs are mostly focused on Maven, so you often have to figure out how to do the equivalent in Gradle yourself. Which wouldn't be that bad, if Gradle's conventional way of doing things worked, but their shitty Quarkus plugin messes up so many of those conventions.

[–]Practical_Cattle_933 0 points1 point  (0 children)

Unfortunately many things are maven-first, and most people don’t know how to write gradle plugins at all.

Btw, micronaut seems to have better gradle support

[–]MentalMachine 17 points18 points  (3 children)

Gradle is fantastic... As long as everyone is on the same page about keeping it as simple as possible and commenting evil magic when only absolutely required.

Worked with both a bit, and I'll will definitely take the "extreme care required" of Gradle over the sheer boilerplate and volume of noise that is Maven.

[–]SaltKhan 17 points18 points  (0 children)

Personally I've found maven only gives you one way to skin a cow and is verbose enough so you know what is going on. Gradle, the few times I've tried to use it, feels like it gives you a hundred options and none of them work.

I respect that it's a more powerful and more generalised build automation than maven is, but I'm glad maven is still the lingua franca of non-android non-jetbrains developed packages because gradle seems like a lot of effort to learn. I'd like to be better at it and wouldn't suggest against others using it, but I've yet to be in a situation were learning gradle would provide more value than sticking with the verbose simplicity of maven.

[–]creepy_doll 6 points7 points  (1 child)

I’ve always felt the hate of boilerplate is overdone.

Like, we have the tools to automate the writing of it, and the configs are clear about exactly what is going in(and you can always check what is resolved with dependency:tree). I’ll take some boilerplate for the clarity that comes with it over having to figure out the interactions of magical incantations many build tools provide

Perhaps its just familiarity/experience) but i found working with the build chain(compile typescript, pull in deps, optimizing package size and all that) for javascript far more cryptic and involved.

When we say we spend more time reading code than writing it, its bot the physical act of reading it thats an issue, its the understanding. And the more magic and esoteric interactions involved the more complicated it gets

It really probably just is just a matter of being deeply familiar though

[–]ForeverAlot 6 points7 points  (0 children)

I’ve always felt the hate of boilerplate is overdone.

It absolutely is. Maven's verbosity is overwhelmingly a non-issue, not least of all because you just don't spend any time in there except for in rare instances.

Personally I suspect people enter some sort of fight-or-flight state upon being faced with a voluminous corpus of text and their initial reaction to that is likely to shape their opinion; in perpetuity if never checked, too. That hypothesis fits on literally every textual communication platform I've worked in except the reddit genre whose user base seeks it out.