Categories
Work

Back to the client services game

Friday, work published the post announcing I’ve joined Human Made.

In a relatively short time at the new gig, I’ve started feeling quite at home, in no small part helped by the fact I already knew the Australian humans from within the Australian WordPress community. A lot of the Human Made staff globally contribute back to the WordPress, many of them I had met through Slack channels, at WordCamps or otherwise.

Two years ago I wrote about moving from client services into product development at Exari. I’m incredibly proud of the work I did at Exari, working with the team there helped produce some of the best code I’ve written over the course of my career.

Categories
Quick Notes

Is it necessary to label the hamburger icon?

There has been some discussion as to the usability of the hamburger symbol. Jeremy Keith has a brief summary in his journal.

The question becomes, is it necessary to label the hamburger icon. I bought a new PVR recently, I think the remote control answers this question nicely.

PVR remote with all buttons labelled, including well known symbols.

Categories
General

2015 in review

2015 was a good year, a lot of things going on professionally and personally.

In crib note form, here are some of the highlights:

Categories
Code

A fitVids do-over

FitVids.js is a jQuery plugin used to create fluid videos. It helps makes video embeds from YouTube, Vimeo and a number of other sources display nicely on responsive sites.

FitVids calculates the ratio of a video, wraps it in a div and sets the padding to enforce a ratio. A typical 4:3 YouTube embed starts as:

<iframe 
  width="420" height="315" 
  src="//www.youtube.com/embed/btPJPFnesV4" 
  frameborder="0" allowfullscreen></iframe>
Categories
Code

Five common WordPress patterns I avoid

I write quite opinionated front-end code. It’s one of the advantages of working in the industry for around twenty years, I know what does and doesn’t work. Working in a rapidly developing industry long term has taught me to be open-minded too, to listen to new ideas and to be prepared to adapt them. I’ve learnt the only constant is change.

That said, despite my opinions I dislike declaring something an anti-pattern or is considered harmful. If there was one function in WordPress I could rename, it would be doing_it_wrong.

The five common WordPress patterns that follow are five patterns I avoid when developing themes and plugins. Below I explain why I avoid them, I’d love to know which of these ideas work for others.

Categories
Talks

WordPress Melbourne: Contributing code to core

Last night I spoke at WordPress Melbourne about contributing code to the WordPress core. The slide deck is below.

Categories
Code

Preparing for WordPress 4.4 comment form changes

As detailed on the Make WordPress blog, the order of comment fields will change in WordPress 4.4, scheduled for a December 2015 release.

This may affect your theme if the comment form doesn’t use the typical layout of one field above the other.

Preparing your theme for the release of WordPress 4.4 will require your CSS allow for two version of the comment form: comment field last (current) and comment form first (future).

Categories
Code

Responsive Web Design MVP

This is not another responsive web design equals web design post. That particular debate is largely answered every time an m-dot link is shared on Twitter or Facebook.

Ethan Marcotte’s landmark A List Apart article defined responsive web design as having three technical ingredients:

  • fluid grids
  • flexible media
  • media-queries.

It’s often argued that modern responsive web design requires more than these three ingredients.

Categories
Code

WordPress 4.2.3 and the benefit of time

WordPress 4.2.3 has reminded me why being conservative with enhancements is a good thing. If a bug is committed, you lose the benefit of time to fix it.

WordPress 4.2.3 has broken some sites using shortcodes in HTML tag attributes. As part of a security fix, certain ways of doing this are no longer possible.

Categories
Quick Notes

Live objects in Chrome’s console.log

It’s quite well known that passing an object in JavaScript passes a memory reference.

It turns out when logging nested objects to the console in Chrome, Chrome logs the reference to any nested objects rather than taking a deep snapshot. Which can make debugging more difficult, to say the least.

console-log-odd