I'm a pretty proficient Groovy developer, but what helped me a lot was actually browsing the API doc starting with the Project object. After that it was magic ✨
I had the same realisation after being android developer for 2 years, not really understanding gradle, life changing. It made me actually realise that all new tech frameworks at the end of the day boil down to "programs" and "code" just different way of implementing it
Awesome video! Another reason why gradle is so hard is gradle's documentation. It is AWFUL. It is both prolific and completely useless, only serving to make the reader feel confused and stupid. Your 5 min video is all a gradle newbie needs because, as you point out, we ARE developers. Thank you again!
even makefile may be easier for me, or even the notoriously difficult assembly I can understand. But not the horrible way of building an apk form gradle and I was searching it from past 2 years. There is no support added for android apk (it says applicaton and never output to apk) while doing gradle init There is no easy way to add a damn function in build.gradle file or I don't know how to add new task that builds an apk or it just impossible to build apk using gradle or some crappy tools like android studio must be used that is just a big bloat for me
You have to wonder at the benefit of Gradle using hipster syntax. Yes, in Groovy you can pass function parameters without parentheses. But how many more devs are confused rather than helped by that syntax?
God tier video. I'm quite used to Gradle at this point, but I only actually understood what I was doing after trying to build a Plug-in. I encourage you all to try, it's pretty fun and you end up knowing a lot about Gradle in general. Including the Project object.
being a perfectionist i was not really satisfied by copy and pasting the different lines in build script. i just used to be so confused. you made life easy thank you!
Thanks Tom. Very nicely done. I am old enough to remember the first version of Gradle. At the time, with Maven (and Ant before that) it generated a lot of hope and promise as a replacement to the latter. Unfortunately, that promise never got realized...as the authors mindest imo was/is? convoluted...imagine our disappointment in _actually wishing for Maven back! However, never say never, and your video is a stepping stone to proving myself as being an old fuddy duddy ;=)
I'm 1 min into the video and the moment you mention that gradle build script is just code is the insight, it also made me feel confident. For some reason it doesn't feel like so at first sight but you're right. Thank you Tom for helping out this newbie. Subscribed! ❤
As someone (relative) new to java and I just saw a bunch of gradle-scripts I never created one by my own. Seeing a gradle-script as code and not as a config file, was the missing link for me. Until today I always tried to see the syntax like a kind of YML file. Thanks for making this short video.
This video is great! Would've loved this 2 years ago when I dived head first into java at work and had to deal with gradle all the time. Eventually, I found my way around this, not without having to read a bit of gradle code.
I was using intelj templates, until i wanted to have an gradle task to show me updates, that's how i started learning gradle, as an kotlin user, it was kinda easy to learn gradle, cause i'm using gradle kotlin dsl
Such wonderful acting 😄 But seriously, great job editing and making an easy-to-understand video! Title's super click-batey, but I guess if it works why not use it :shrug:
Yeah thinking about in a "it's just code written declaratively with a bunch of callbacks" does open my "third eye" kinda lol. Btw, anyone else on Android Studio notice that Groovy DSL gradle doesn't actually show any documentation when you hover over its method? My jaw dropped when I saw the docs in the youtube video, that never appeared to me, not sure if it's an Android Studio bug or maybe I misconfigured the IDE somehow.
If only the IDE integration actually worked most of the time... In reality you usually get countless warnings that can't be solved and method references that can't be CTRL+Clicked, because they come from a plugin, and the plugin often isn't on the recognized classpath.
TL;DR.. Gradle is code (duh) and read the Gradle docs. How about mabybe explaning why this might be useful, like making reusable helper functions in your script.
Get started with Gradle by building a real Java project the right way with my FREE Quick-Start Guide 👉 tomgregory.com/gradlequickstart
"gradle build scripts are just code, and you know code", this is the best thing to hear
I'm a pretty proficient Groovy developer, but what helped me a lot was actually browsing the API doc starting with the Project object. After that it was magic ✨
kotlin dsl is superior
@@masterflitzerit's lazier that's about all.
Great video. I will be recommending it whenever someone have issues understanding the groovy syntax in a Gradle project
I had the same realisation after being android developer for 2 years, not really understanding gradle, life changing. It made me actually realise that all new tech frameworks at the end of the day boil down to "programs" and "code" just different way of implementing it
Coming from .NET, Gradle was pretty intimidating, but this video greatly diminished that. Thank you!
Awesome video!
Another reason why gradle is so hard is gradle's documentation. It is AWFUL. It is both prolific and completely useless, only serving to make the reader feel confused and stupid.
Your 5 min video is all a gradle newbie needs because, as you point out, we ARE developers.
Thank you again!
I had so much difficulty with gradle's inflexibility that I went back to using "make". I use "make" for my C++ projects anyway so it was a no-brainer.
even makefile may be easier for me, or even the notoriously difficult assembly I can understand.
But not the horrible way of building an apk form gradle and I was searching it from past 2 years.
There is no support added for android apk (it says applicaton and never output to apk) while doing gradle init
There is no easy way to add a damn function in build.gradle file or I don't know how to add new task that builds an apk or it just impossible to build apk using gradle or some crappy tools like android studio must be used that is just a big bloat for me
Not gonna lie, what I first thought would be a clickbait video, actually turned out to be a crucial piece of wisdom I lacked. Thank you so much!
You have to wonder at the benefit of Gradle using hipster syntax.
Yes, in Groovy you can pass function parameters without parentheses. But how many more devs are confused rather than helped by that syntax?
God tier video. I'm quite used to Gradle at this point, but I only actually understood what I was doing after trying to build a Plug-in. I encourage you all to try, it's pretty fun and you end up knowing a lot about Gradle in general. Including the Project object.
Simple, concise and well explained. You definitely changed my view on Gradle, thank you!
Finally, I can say I know how to write build gradle
Pong animation was fire 🔥
being a perfectionist i was not really satisfied by copy and pasting the different lines in build script. i just used to be so confused. you made life easy thank you!
Thanks Tom. Very nicely done. I am old enough to remember the first version of Gradle. At the time, with Maven (and Ant before that) it generated a lot of hope and promise as a replacement to the latter. Unfortunately, that promise never got realized...as the authors mindest imo was/is? convoluted...imagine our disappointment in _actually wishing for Maven back! However, never say never, and your video is a stepping stone to proving myself as being an old fuddy duddy ;=)
I'm 1 min into the video and the moment you mention that gradle build script is just code is the insight, it also made me feel confident. For some reason it doesn't feel like so at first sight but you're right. Thank you Tom for helping out this newbie. Subscribed! ❤
please make video on Android Gradle
i just discovered a gem on youtube.. thanks tom for such insightful video on gradle
Wow, considering it as code indeed changes a lot. Thank you!
As someone (relative) new to java and I just saw a bunch of gradle-scripts I never created one by my own.
Seeing a gradle-script as code and not as a config file, was the missing link for me.
Until today I always tried to see the syntax like a kind of YML file.
Thanks for making this short video.
Great content, you describe things in such a concise and understandable way. Appreciate you.
Thank you ... this hit some nails on the head for me!
simply a must watch gradle tutorial video
Solid framing, thank you.
This video is from developer for developers. Love it !
Thank you for making this video.
Great content hope you continue to help gradle learning from developer perspective
That IS insightful! Thanks!
At last!! Great explanation - I know code, I can handle Gradle. As simple as that!
This video is great!
Would've loved this 2 years ago when I dived head first into java at work and had to deal with gradle all the time.
Eventually, I found my way around this, not without having to read a bit of gradle code.
Great content! Congratulations!
Thanks for the insight! It opens up my eyes!
Thanks! That actually makes a lot of sense...
Thanks great place to start!
That was great. Thanks.
Picking up a Gradle upgrade ticket gives me jitters
You're a life saver!
Super helpful
Why is this not told Day one?
Android has an immense learning curve
Very well done!
Video starts at 01:48
Deserves more likes and views !
The heart beat moment is like deja vu
thank you
3:48 was my same reaction looking at {} syntax for Groovy or Kotlin for the first time hahaha, it's was weird because I only know Java
Amazing video🔥🔥🔥
thanks sir
I was using intelj templates, until i wanted to have an gradle task to show me updates, that's how i started learning gradle, as an kotlin user, it was kinda easy to learn gradle, cause i'm using gradle kotlin dsl
Such wonderful acting 😄 But seriously, great job editing and making an easy-to-understand video! Title's super click-batey, but I guess if it works why not use it :shrug:
I don't know about you, but even if I didn't know that simple secret, I'd still love Gradle.... BECAUSE IT'S NOT XML! ;)
I searched "Gradle sucks" and the result showed your video.
Yeah thinking about in a "it's just code written declaratively with a bunch of callbacks" does open my "third eye" kinda lol.
Btw, anyone else on Android Studio notice that Groovy DSL gradle doesn't actually show any documentation when you hover over its method? My jaw dropped when I saw the docs in the youtube video, that never appeared to me, not sure if it's an Android Studio bug or maybe I misconfigured the IDE somehow.
Thanks bhai 😊
If only the IDE integration actually worked most of the time... In reality you usually get countless warnings that can't be solved and method references that can't be CTRL+Clicked, because they come from a plugin, and the plugin often isn't on the recognized classpath.
I like this video. I hope you have more videos about Gradle because I really need to learn more for my power-user development antics.
kotlin dsl is the way
Well Maven is even worse in my opinion
Oh yes! Code is made out of code!
Insightful video. I still think gradle has possibly the worst documentation iv ever tried to read though
Awesome video +++++++++++++++++ 😀
Can I place my .java file within /src/main/java
Perdona, pero no me entero de nada, flatDir no me funciona y tampoco tu explicación, gracias
Groovy gradle? Huh.
i know code.
571st...Thanks Tom
damn it is a language... a very wierd one.. I never ever thought thought implementation, id and etc are function calls... 😂😂😂😂
lol if you think gradle is hard, have a look at sbt.
TL;DR.. Gradle is code (duh) and read the Gradle docs. How about mabybe explaning why this might be useful, like making reusable helper functions in your script.
it obviously is DSL (Domain specific lanfuage) and the language must be a turing complete one
i dont know code, gradle is garbage
nice one thanks
Great.
You could also explain the "configuration { myNewConfig }" magic. (NamedDomain..., create, getAt, getByName)
thanks sir
You're very welcome!