Friday, September 19, 2014

CSS performance tools

https://speakerdeck.com/addyosmani/css-performance-tooling


https://github.com/JohnCashmore/grunt-cssshrink
CSS minifier

https://github.com/addyosmani/grunt-uncss
A grunt task for removing unused CSS from your projects with UnCSS. Works across multiple files and supports dynamically injected CSS via PhantomJS.

https://github.com/katiefenn/parker
Parker is a stylesheet analysis tool. It runs metrics on your stylesheets and will report on their complexity.

http://www.stylestats.org/
StyleStats is a Node.js library to collect CSS statistics!

Monday, September 8, 2014

Upgrade grunt

sudo npm uninstall -g grunt-cli
sudo npm install -g grunt-cli@0.1.13

update package.json for grunt version, then execute
sudo npm update grunt

Saturday, September 6, 2014

Background check online

https://www.instantcheckmate.com (monthly fee $22.99)

Maintainable Javascript

Key takeaways from Maintainable Javascript.
  1. Borrow the book is better than buy the book. I finally finished reading this book in past 3 weeks' limited spare time.
  2. Programs are meant to be read by humans and only incidentally for computers to execute. - Donald Knuth
  3. Need consistent Javascript code styles for Basic formatting, comments, statements and expressions, variables, functions and operators.
  4. Need good programming practices
    1. Loose coupling of UI layers (MVC)
    2. Avoid globals
    3. Throw your own errors (throw new Error('name is required'))
    4. Don't modify objects you don't own
  5. Documentation - JSDoc tooltik
  6. Automated Testing - Jasmine, PhantomJS, Selenium
  7. Continous Integration (CI system) -  Jenkins, Continuum, BuildBot, Cruise Control, Gradle