Books and tutorial links
Will probably come to regret this, but checking in all node_modules
do not ignore node_modules...
updating modules...

Stephens-MacBook-Air:satoyma si$ npm-check-updates
npm WARN unmet dependency /training/subjects/programming/web/satoyma/node_modules/grunt-contrib-uglify/node_modules/maxmin requires chalk@'^0.4.0' but will load
npm WARN unmet dependency /training/subjects/programming/web/satoyma/node_modules/grunt-contrib-uglify/node_modules/chalk,
npm WARN unmet dependency which is version 0.5.1

"body-parser" can be updated from ^1.6.5 to ^1.6.6 (Installed: 1.6.5, Latest: 1.6.6)
"express" can be updated from ^4.8.5 to ^4.8.6 (Installed: 4.8.5, Latest: 4.8.6)
"grunt-contrib-compress" can be updated from ^0.10.0 to ^0.11.0 (Installed: 0.10.0, Latest: 0.11.0)

Run 'npm-check-updates -u' to upgrade your package.json automatically
Stephens-MacBook-Air:satoyma si$ npm-check-updates  -u
npm WARN unmet dependency /training/subjects/programming/web/satoyma/node_modules/grunt-contrib-uglify/node_modules/maxmin requires chalk@'^0.4.0' but will load
npm WARN unmet dependency /training/subjects/programming/web/satoyma/node_modules/grunt-contrib-uglify/node_modules/chalk,
npm WARN unmet dependency which is version 0.5.1

"body-parser" can be updated from ^1.6.5 to ^1.6.6 (Installed: 1.6.5, Latest: 1.6.6)
"express" can be updated from ^4.8.5 to ^4.8.6 (Installed: 4.8.5, Latest: 4.8.6)
"grunt-contrib-compress" can be updated from ^0.10.0 to ^0.11.0 (Installed: 0.10.0, Latest: 0.11.0)

package.json upgraded
Stephens-MacBook-Air:satoyma si$ git diff
diff --git a/package.json b/package.json
index b915a89..dfaed11 100644
--- a/package.json
+++ b/package.json
@@ -32,10 +32,10 @@
     "mongodb"
   ],
   "dependencies": {
-    "body-parser": "^1.6.5",
+    "body-parser": "^1.6.6",
     "cookie-parser": "^1.3.2",
     "debug": "~1.0.4",
-    "express": "^4.8.5",
+    "express": "^4.8.6",
     "jade": "^1.5.0",
     "mongodb": "^1.4.9",
     "morgan": "^1.2.3",
@@ -46,7 +46,7 @@
     "grunt": "^0.4.5",
     "grunt-check-modules": "^0.2.0",
     "grunt-contrib-clean": "^0.6.0",
-    "grunt-contrib-compress": "^0.10.0",
+    "grunt-contrib-compress": "^0.11.0",
     "grunt-contrib-concat": "^0.5.0",
     "grunt-contrib-copy": "^0.5.0",
     "grunt-contrib-jasmine": "^0.7.0",
Stephens-MacBook-Air:satoyma si$ npm install
npm WARN unmet dependency /training/subjects/programming/web/satoyma/node_modules/grunt-contrib-uglify/node_modules/maxmin requires chalk@'^0.4.0' but will load
npm WARN unmet dependency /training/subjects/programming/web/satoyma/node_modules/grunt-contrib-uglify/node_modules/chalk,
npm WARN unmet dependency which is version 0.5.1
body-parser@1.6.6 node_modules/body-parser
├── media-typer@0.2.0
├── bytes@1.0.0
├── raw-body@1.3.0
├── depd@0.4.4
├── qs@2.2.0
├── on-finished@2.1.0 (ee-first@1.0.5)
├── type-is@1.3.2 (mime-types@1.0.2)
└── iconv-lite@0.4.4

express@4.8.6 node_modules/express
├── utils-merge@1.0.0
├── merge-descriptors@0.0.2
├── cookie@0.1.2
├── escape-html@1.0.1
├── cookie-signature@1.0.4
├── finalhandler@0.1.0
├── range-parser@1.0.0
├── vary@0.1.0
├── fresh@0.2.2
├── media-typer@0.2.0
├── parseurl@1.3.0
├── methods@1.1.0
├── serve-static@1.5.3
├── buffer-crc32@0.2.3
├── depd@0.4.4
├── path-to-regexp@0.1.3
├── qs@2.2.0
├── send@0.8.3 (destroy@1.0.3, ms@0.6.2, on-finished@2.1.0, mime@1.2.11)
├── proxy-addr@1.0.1 (ipaddr.js@0.1.2)
├── accepts@1.0.7 (negotiator@0.4.7, mime-types@1.0.2)
└── type-is@1.3.2 (mime-types@1.0.2)

grunt-contrib-compress@0.11.0 node_modules/grunt-contrib-compress
├── prettysize@0.0.3
└── archiver@0.11.0 (buffer-crc32@0.2.3, lazystream@0.1.0, async@0.9.0, readable-stream@1.0.31, lodash@2.4.1, glob@3.2.11, tar-stream@0.4.5, zip-stream@0.4.1)
from npm-check-updates
added precommit-hook... we'll see how that works out
Links for me to work through