The Quest for the Perfect Workflow
By Andi Smith - Friday, May 16 2014
Today I spoke at jQuery UK on my quest to find the Perfect Workflow.
Unfortunately, we couldn’t fit everyone who wanted to come to the talk in the room. If you missed the talk, I’ve recorded this screencast. There’s more information below the video.
Part of my job as a Technical Architect is to make sure that projects start with the right set of base tools and the right workflow. But during my quest I realised that there is no such thing as a perfect workflow for everybody, because everyone’s requirements are different. We all use different tools and have different coding styles. And a workflow that enforces any rules that conflict with these requirements is going to get cursed from start to finish.
So my quest morphed in to looking in to ways how we can improve our workflow.
I started by splitting our workflow in to three sections to make sure that we are using the right tasks for the right part of project:
Setup, Develop and Build
- The Setup stage should focus on the foundations of our project
- The Develop stage should focus on performance, so that you can make changes to your site and see the results immediately.
- The Build stage should focus on file size optimisations, concatenation, minification .etc.
The tasks and tools I covered were:
Setup
- GruntJS
- GulpJS
- Yeoman
- Auto load tasks
- Start a local server
- Workflow Performance
- Make Grunt Faster -
npm install grunt-concurrent
Develop
- Use Autoprefixer
- Watch & LiveReload
- Compile Changed Files
- Live Editing Our Files
Build
- Compile CSS/JS and replace references in HTML.
- Combine Media Queries
- UnCSS
- Streamline Modernizr
- Minify Images
- Compress Files
- Compress Files with Zopfli
- Shrinkwrap -
npm shrinkwrap
Thanks to everyone who came along to the talk today, I hope you found it useful! Please let me know your thoughts in the comments below, or @andismith on Twitter.
Andi Smith is a web developer from London, United Kingdom. He likes to build highly performant websites which innovate with genuine value.