Jan 29 2015 | by TIM PURSLOW
Back in the day... all you needed was a text editor, an image editor and a browser if you wanted to build a standards compliant, semantically correct, cross browser compatible, fully accessible website. You could reach for a drag and drop, WYSIWYG wondertool but it was genuinely better if you didn't. They took away your control, they made assumptions about what you wanted to do, they bloated your code. They could also take some of the drudge out of some tasks and mean you didn't have to remember how to do some stuff (like the syntax of the doctype or a connection string or stuff). If you were a pro you wouldn't admit to using Dreamweaver. I guess the fewer tools you used the closer to enlightenment you were.
Nowadays it STILL isn't cool to use Dreamweaver but it is most definitely VERY cool to use a big pile of other stuff. Grunt, Gulp, Bower, SASS, LESS etc. There are lots of them and they sound cool and they divide opinion ("You're not using THAT are you?"). Some of them are totally awesome, do some great stuff, can speed up your development time through automation of tedious tasks (once you've researched, selected, downloaded and set them up). They can also take away some of your control, make assumptions about what you want to do and potentially bloat your code (nest your SASS too much and you get more CSS than you would have written in the first place… but it's OK because you've got another tool to automatically minfy it. WIN!).
All this stuff is great if you use it in a considered and consistent way. And you make sure that you document what you have done. And that the guy who may inherit your project (whether they are a colleague or competitor) can replicate your tool set and work on it without having a nervous breakdown. In fact if you came back to your own very fashionable set up in a year's time would it still make sense?
We tend to stick to a tried and tested development environment and introduce tools, or even new versions of existing tools, only when they have been proven to be robust, useful and have longevity. We do use frameworks for back and front end development but only if they actually help and don't compromise the control we have over a project. We don't choose tools that don't allow us to customise or fix their output. And we certainly won't integrate anything into a site which is likely to be cancelled or discontinued leaving it unusable.
So, to summarise:
Tools, all the way down...