Importance of Build Tools

Akshit Jain
Jul 10, 2017 · 2 min read

As I started with build tools like ant in java and rake in ruby, many of my colleagues questioned me about the usage of build tools. The questions that i came across were “Why they are required?”, “why command line building is not enough for building?”, “Is building tools like ant only meant for building the project?”. These questions are very normal and do affect people’s mind when they start playing with these tools.

This basically get me onto automation of things for easing out things handled manually by us and removing the complexity when the things starts becoming unmanageable. Lets say , i start with a base project with single code base. Now, i start adding more and more code bases onto it such that the codebases need to be built independently but parallels(for eg. Microservices). Or sometimes i need to build the codebases in some order to to maintain the dependence among codebases. And consider the different code bases on the order of 50’s, 100’s. So at this point, what will one do.Left with three options:

  1. Starts manually building the code and messing up the task of building while building so many codebases parallely.
  2. In case of having dependent codebase that needs to be built serially, one would keep in mind the order of build and then manually do it.
  3. Alternatively, he/she should write a build file that comprises of these various builds(no matter in order or out of order) and just run that file by a single command and Bang!!! our work is done.

Following the third option makes our life easier than anything while handling with the build.

Another use case is the running of the tests and calculating coverage of the tests.Lets say one writes a code and publishes in the open source for further development or just for playing purpose. He/she has again two points.

  1. Manually writing the test command and run tests and calculates test coverage.
  2. Another option being , use build tool for automating the tasks end to end starting from building code, running tests, taking out coverage and running the program in just one go.

In simple words, Build Tools are making our life very easier in real life problems and if programmers need to be pragmatic, they must respect them and use them to their full capabilites.

@gojektech @golangenthusiast

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade