About Me

I’m a full stack web developer with a passion for usability and data transparency. I help make the audience more informed, productive, engaged, & entertained.

Any software user interface worth its salt is an iceberg. The user sees only the tip, while engineering has masked any underlying complexities with simplicity. My expertise is delivering that end-to-end.

If it weren’t for this iceberg problem, my programming might be a little more focused. It’s great to implement low-level algorithms. A Computer Science degree gave me that. But I can’t stand pigeonholing myself there, because of the human factor. What does my invisible machine framework matter if nobody uses it?

Or I might’ve been a designer. It’s great to directly resonate with consumers. But software needs to work & it needs to be maintainable.

Self-reliance. If a job’s worth doing, it’s worth doing yourself. I could suffer being blocked by different teams. They’re deep in their own work & responsibilities though. They don’t have the time and memory for all my requests. Play nice as you can, there are always communication breakdowns. So, why not figure things out myself, cut the red tape, and get things done? Who accomplishes more: engineers always at the mercy of others, or ones who can feed themselves anywhere?

This is my personal outlook. As with any extreme though, it’s not always the right answer. In others, I’ve seen the benefits of their code & project ownership. They are determined to stay focused, not leave their area of specialization, and make it the best damn module of the application. With someone like me, you might get design-by-committee, as opposed to design by a domain expert.

I say I’m a UX Engineer but I have a hand in it all. A jack of all trades.

Usability Focus

I say UX specifically because it’s my personal mission to make human-computer interfaces more usable and informative. I grew up in the Internet age, thrilled by what a computer could do for me. A familiar story for most techies.

However I’m scarred from being unable to share that thrill. In contrast to me, for all my family and peers, computers did nothing but get in their way. Computers are too difficult, and it’s no wonder most people remain illiterate.

The design of everyday things is often irresponsible and insulting. The software industry can do better. Wherever I’m involved as a software engineer, I aim to bring sensitivity to this.

Read my other overarching themes in Credo.


The source is pretty traditional HTML5, CSS3 (Sass), and JavaScript. Most written content is in kramdown instead of lower-level HTML. They are all coded by hand in MacVim, with a lot of prodding in Chrome DevTools.

For a site this small with content unchanging, there is no CMS. No database. The content is static, versioned in Git, generated into a site by Jekyll. It is hosted by GitHub Pages. The source code is available on GitHub as well.

This site’s template is a modification of Jekyll’s stock one. The preferred font is the humanist sans-serif Optima, widely installed on Mac OS X. On Windows, this site will degrade to either humanist Segoe or Helvetica. Rouge highlights code snippets in a Solarized color scheme. Photos edited in Pixelmator.

For some of the layouts, behaviors, and animations that are tricky in CSS, I use the JavaScript libraries AngularJS and jQuery. The former for more maintainable JavaScript components & organization, and the latter for lower-level DOM manipulation.