What's the difference between saying, "To do anything you have to know everything", as Eckel wrote, and " the learning curve of Gradle is higher than with other build tools (say, Maven for example). I always said that the learning curve of Gradle is difficult, but once you get it, the benefit is just amazing" as the author here writes? The claim of the benefit being amazing has to be taken contextually. Maybe all that learning curve doesn't bring enough of a benefit to me, my team, my project, or my company, to be worth it.
The rest of the article seems to be a long, roundabout, way of saying that if it seems hard then you don't understand it correctly and you're doing it wrong. Great, blame the user. Say that if the user would just understand correctly and do it the right way is a classic geek response. The one area I see the author briefly acknowledge but then move on is the documentation. He says 1. it's huge, 2. can be better for beginners, 3. outdated in places, 4. hard to navigate ("I’m quite mad about this, is that our docs layout is terrible"), and 5. not use-case centered.
Finally, the author repeatedly states that developers shouldn't write build logic, they should write plugins. But then he notes elsewhere that "some plugin authors just don’t realize that the way they configure builds, reach to other projects or perform cross-configuration has a significant impact on build performance, and therefore user experience" and again, points the finger at users.
I'll repeat here what I said in another comment: trying to learn Gradle by reading the documentation is like trying to learn to drive by reading a car's owners manual. But learning what all the knobs, buttons, levers, pedals, and handles do is not the same as being able to safely and efficiently travel from point A to point B.
The rest of the article seems to be a long, roundabout, way of saying that if it seems hard then you don't understand it correctly and you're doing it wrong. Great, blame the user. Say that if the user would just understand correctly and do it the right way is a classic geek response. The one area I see the author briefly acknowledge but then move on is the documentation. He says 1. it's huge, 2. can be better for beginners, 3. outdated in places, 4. hard to navigate ("I’m quite mad about this, is that our docs layout is terrible"), and 5. not use-case centered.
Finally, the author repeatedly states that developers shouldn't write build logic, they should write plugins. But then he notes elsewhere that "some plugin authors just don’t realize that the way they configure builds, reach to other projects or perform cross-configuration has a significant impact on build performance, and therefore user experience" and again, points the finger at users.
I'll repeat here what I said in another comment: trying to learn Gradle by reading the documentation is like trying to learn to drive by reading a car's owners manual. But learning what all the knobs, buttons, levers, pedals, and handles do is not the same as being able to safely and efficiently travel from point A to point B.