Why you should use bake
Whether you should use bake is entirely up to you, just take 2 minutes and have a look at our design goals and see if they fit what you are looking for.
bake design goals
Goal |
Reasoning |
---|---|
It must be only a build tool |
We want to focus your energy in providing a good and fast build tool. |
It must be a command line tool |
Sticking to the unix and single purpose philosophy, we think proving a command line tool is the easiest way to be easily used and integrated with other tools. IDE independence! |
It must be easy to configure |
We want the developer to be able to focus on coding and testing, not on reading and searching hours through the build tool documentation. A build tool should be easy to use and not hard to maintain! |
The configuration must not be a meta language |
We want our configurations to be WYSIWYG (What You See Is What You Get). We don’t want developers to spend hours in searching for a configuration error where multiple other config and script generation steps are in between. |
The configurations of large projects must be easy to understand |
In large projects, build configurations usually get pretty complex and big, therefore generally just a few people understand the build process. This makes the maintenance dependent on those people. This is a single point of failure and it should be avoided, in our opinion. |
It must be fast |
We personally aren’t fans of waiting for the build. We rather build, test and then do a kicker break! |
It should be lightweight |
Lightweight here means: less dependencies, because dependencies can hinder people from getting their setup up and running. |
It must be easy to use different versions of the build tool |
Sometimes it is necessary to break compatibility to embrace progress, even though it should be easy to switch between different versions of the tool. |