Hello World

Blogging at last. Thanks for stopping by.

Updated 2013-08-14: I've switched from Octopress to Hexo, a Node.js alternative. Check the documentation to learn how to use.

Who Am I

I'm a JavaScript developer mainly on the front-end of web applications.

I Like Test-Driven Development

I really like test-driven development. TDD helps me keep things simpler, flatter, readable, and explainable. If I don't understand where the tests are going or how to get there, then it's time to stop and get help or re-think the problem – mainly to avoid checking something in that will harm others' understanding and productivity.

The list of TDD advantages below is copied from a comment on Cedric Beust's blog:

  • Interruptability
  • Less fragility
  • Refactoring
  • Less time wasted

Things I Don't Like

As a front-end developer, there are just some things about development I don't like:

  • tag soup
  • the culture of hacking and rushing (to borrow a tweet from Alan Cooper))
  • JavaScript's lack of global management (namespacing by object trees doesn't count)
  • JavaScript's lack of import management (CommonJS doesn't count in the browser; AMD doesn't count on Node.JS)
  • CSS's lack of variables
  • CSS's lack of modules
  • reliance on pre-processors to solve these issues
  • the in-fill rushing of experts solving these lacunae
  • expert opinions on performance
  • opinions in general

On the Fence

I'm Not Sure About Pre-processors:

  • JS pre-processors (CoffeeScript) (although CS does some interesting things)
  • HTML pre-processors (jade, haml, markdown) (although hexo uses markdown)
  • CSS pre-processors (Sass, LESS, Stylus) (although hexo uses stylus)
  • ANY pre-processors and source transformation steps (browserify, uglify, closure, compressor)

Code should work with as little modification as possible.

Disclaimer, of course

Being opinionated myself, and occasionally correct, I reserve the right to change my mind on these topics.