Gradle is extremely powerful and is probably an amazing tool for people who know how to use it, but I just don’t like it, however hard I try.

There is so much that you should implicitly know. For someone completely new to it, there is just a bunch of magic going on. Task dependencies, configuration, plugins,… Unless you spend a whole lot of time reading documentation, it’s super complicated to understand even a relatively basic build script.

Another problem is the combination of Kotlin and Groovy. This makes it so that half the information you find online requires additional mental burden to understand. Finding information is already hard enough, let alone having to put a reasonable amount of effort into interpreting that information when you happen to find it in another language than what you are using. And for some reason, you’ll always find it in the wrong language.

Even when you are more experienced and start getting into more advanced topics such as implementing a custom plugin, it doesn’t become better or easier. There is a huge lack of documentation. Toy examples can be found in the documentation, but once you start doing it, you are left with so many questions to which you can’t find any answers. Such a lack of documentation and useful information is astonishing for such a widespread tool.

I hope Gradle is going to ‘click’ for me at some point in time, but the fact that it still hasn’t clicked raises a couple of questions about the amount of effort they put into usability.