Build Tools and Automation
The day-to-day workflow for web developers has remained largely unchanged for a number of years, and is largely a manual process of managing assets, writing code, and then testing that code in multiple browsers. Tools have existed for checking code quality and simplifying certain tasks, but these have been run manually and, as such, tend to get forgotten or run inconsistently, making it easy to ignore the results that such checks produce. Similarly, the management of third-party libraries has often been a case of copy-and-paste from project to project with little in the way of version control and management. Finally, the setting up of new projects often involves starting completely from scratch each time, despite the potential for reuse of code from other projects. In this chapter, I will look at the tools available to allow you to automate your development workflow and code release process, manage your third-party dependencies, and set up your projects with a reliable foundation each and every time.