Recent Posts

On the politics, cargo-culting, and maintainability of JavaScript

There has recently been a renewed focus on what I’ve come to call the anti-convention movement in JavaScript. It seems like once or twice a year, someone either does a talk or writes an article saying that all of the things so-called JavaScript experts tell you are wrong and you should do whatever you want.... […]

GitHub workflows inside of a company

Recently I asked engineers to share their experiences working with GitHub at companies. I’ve always used GitHub for open source projects, but I was interested in learning more about using it professionally and how one’s development workflow might change given all of GitHub’s capabilities. I set up a gist1 so people could leave the answers... […]

Blink and the end of vendor prefixes

When Google announced that it was forking WebKit into Blink, there was a lot of discussion around what this would mean for web developers, and if the WebKit monoculture was truly breaking or not. Amongst the consternation and hypotheticizing was a detail that went overlooked by many: Blink’s plan to stop creating new vendor prefixes.... […]

Getting the URL of an iframe’s parent

Dealing with iframes is always a double-edged sword. On the one hand, you get sandboxing of content within another page, ensuring that JavaScript and CSS from one page won’t affect another. If the iframe is displayed a page from a different origin then you can also be assured that the page can’t do anything nefarious... […]

Making accessible icon buttons

Last week, Pamela Fox tweeted a question to me: @slicknet Do you know the best way to make a that just has an icon accessible? title, aria-label, hidden text? — Pamela Fox (@pamelafox) March 26, 2013   As tends to happen on Twitter, we fruitlessly exchanged 140 character messages trying to get some resolution before... […]

Internet Explorer 11′s user-agent string: What does it mean?

Over the past few days, people have been going a little crazy over the announcement of the Internet Explorer 11 user-agent string. User-agent string announcements are typically met with a keen eye as we are still horribly tied to user-agent sniffing on servers around the world. And so when some beta testers leaked an Internet... […]

What kind of a software engineer do you want to be known as?

Around this time every year, companies start doing their annual reviews. Coincidentally, software engineers start wondering what their peers and managers will be saying about them. Throughout my career I’ve always watched as colleagues worried about the results of their annual review. Will they get that promotion? Will they get that raise? Or will they... […]

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... […]

Copyright © 2004-2016 Nicholas C. Zakas. All Rights Reserved. All code examples on all pages, unless otherwise indicated, are BSD licensed. Blog Feed