Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I lol'd at the title. Just having a Gruntfile is the first smell I notice when looking at a project. Seriously, why take two simple tools and layer a unnecessary "task runner" on top of them?


What does your build process look like? What's the tooling, and how do you invoke it? Just curious about alternatives.


I use make. You can see my typical setup for Node packages on GitHub, for example: https://github.com/jaredhanson/locomotive


I use make.


I generally prefer Make as well and I even made the case for Make when Grunt.js was first announced [1]. That said, I did use Grunt on a recent project and it worked out reasonably well. For myself, I'd prefer to keep using Make, but for many teams, Grunt is a reasonable choice.

I chose Grunt because Make generally requires a lot more background knowledge and ongoing discipline. Most Grunt tasks are configured by relatively constrained JSON data, so it's pretty hard for non-experts to muck it up unless they need to write a custom task. A Makefile would have created much greater education burden for me. That's particularly a concern when the team's Make/shell expert has time-limited involvement with the project.

[1]: https://news.ycombinator.com/item?id=3777393


I find having a "standard" way to run tasks enormously beneficial especially when working with developers cross-platform. Whatever OS you are running, just grunt and all is well. :)


It makes sense when you use it with grunt-contrib-watch. Then you just keep it running as you are developing and listen for the error "ding" after a save.


Actually, no. It's very easy to run a watcher which executes any command (like say jshint itself).




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: