About Nicholas C. Zakas

Recent Posts

On joining Box

I left Yahoo a year and half ago in search of new challenges. I left to chase the dream of startup life with some friends while consulting to pay my bills. I had a lot of fun doing both, starting a new company completely from scratch and getting to work with some awesome companies as... […]

Making an accessible dialog box

In today’s web applications, dialog boxes are about as common place as they are in desktop applications. It’s pretty easy to show or hide an element that is overlayed on the page using a little JavaScript and CSS but few take into account how this affects accessibility. In most cases, it’s an accessibility disaster. The... […]

What technical recruiters can learn from online dating

I’m on LinkedIn just like most people in the tech industry. If you’re like me, you probably get random messages through LinkedIn from technical recruiters several times a week. Their tactics run the gamut of deliberately ignorant to over-the-top obnoxious and rarely do I feel like I’m being treated as a human being. After watching... […]

You can’t create a button

One of the most important aspects of accessibility is managing focus and user interaction. By default, all links and form controls can get focus. That allows you to use the tab key to navigate between them and, when one of the elements has focus, activate it by pressing the enter key. This paradigm works amazingly... […]

What the NFL can teach us about diversity in technology

One of the issues that kept popping up in 2012 was that of diversity in technology. A lot of the discussion was centered around the Brit Ruby conference that was cancelled1. The conference had posted a lineup of all white male speakers and this didn’t go unnoticed by the tech community. This was followed up... […]

Fixing “Skip to content” links

**Update (15-Jan-2013): ** After a few tweets about this and some re-testing, it appears the issue discussed in this post only affects Internet Explorer and Chrome. The post has been updated to reflect this. If you’ve been doing web development for any amount of time, you have probably come across the recommendation to create a... […]

Advice for new and aspiring technical speakers

In a previous post I described the Front End Summit New Speaker Program that I organized while I was still at Yahoo. Since that time, I’ve received several e-mails and questions from people about how to get started speaking without the benefit of such a program. Obviously, it’s possible to become a really good speaker... […]

Being right doesn’t matter

Software engineers are an interesting bunch. On the plus side, many are willing to work for free on projects that they believe are worthwhile. I’ve found software engineers to be incredibly charitable not only in donating their time and knowledge but also in donating their money. On the other side, software engineers tend to be... […]

Now available: Principles of Object-Oriented Programming in JavaScript (beta)

Ever since I put together my Principles of Object-Oriented Programming in JavaScript class, I’ve been wanting to put together a resource that people who took the class could take home with them. I go through a lot of topics in the class and I didn’t think the slides would be enough to help people remember... […]

Are your mixins ECMAScript 5 compatible?

I was working with a client recently on a project that could make full use of ECMAScript 5 when I came across an interesting problem. The issue stemmed from the use of mixins, a very common pattern in JavaScript where one object is assigned properties (including methods) from another. Most mixin functions look something like... […]