The Art of Builds
Builds and Buildsystems have been treated for many years not with the conceptual depth and principles they deserve and require. The lack of this is even more painful today as modern builds form a crucial part of a modern continuous delivery pipeline far away from the simple copy, compile and archive of the past. When builds and build systems are discussed and argued about often a lot of terminology is thrown in like imperative, declarative, standardization and directed acyclic graph without having a clear definition and in-depth concept. In this session we will shed a lot of light into the dark with surprising results that are crucial to understand which build system serves your purpose.
You will learn in this session :
- What are declarative and imperative build and build systems? Followed by an in-depth discussion about advantages and dangers of both approaches.
- Why Maven is more imperative than you might think
- Gradle’s state of the art declarative approach shown by example of the new Gradle based Android build system.
- Why and what it means that builds should focus as much on developer productivity as on enforcing the software factory.
- The sweet spot in between standardization, declarativeness and necessary flexibility.
- Why also smaller projects should care about build system concepts (the larger ones don’t really have a choice.)
This talk is driven by many examples from Gradle, Maven or Ant builds.
About Hans Dockter
Hans Dockter is the founder of Gradle Inc., a company whose purpose is to empower software development teams to reach their full potential for joy, creativity, and productivity. To address his own personal frustrations as a developer, Hans co-founded the Gradle Build Tool project which was named by TechCrunch as one of the top 20 most popular OSS projects. Gradle Build Tool is now downloaded more than 23 million times a month. He then led the development of Gradle Enterprise which today is the leading enabling solution for the practice of Developer Productivity Engineering.
Previous to Gradle, Inc, Hans successfully led numerous large-scale enterprise builds and emerged as a thought leader in project automation. He is an advocate of Domain Driven Design, having taught classes and delivered presentations on this topic together with Eric Evans. Hans was also a committer for the JBoss project and founded the JBoss-IDE.
More About Hans »