About Nicholas C. Zakas

Recent Posts

I love my job

Just thought I’d reassure everyone that I still love my job at Yahoo!. Why am I saying this? Because it seems like everytime I turn around, someone is asking if I regret choosing Yahoo! over Google. Yes, the Yahoo! stock has taken a beating lately and Google successfully bought YouTube, but does that make working... […]

Debunking object()

One of Crockford’s latest creations is the object() function, which he puts forth as a better way of doing prototypical inheritance in JavaScript. The function is as follows: function object(o) { function F() {} F.prototype = o; return new F(); } The basic idea is sound: you assign an object to be the prototype of... […]

Pain with inline-block

Today I found myself wanting to format a link to look like a button. If I only needed one button, I could just set the link’s display to block and be done with it, but I needed two. Further, they needed to be side-by-side. I figured it wouldn’t be a problem because I could use... […]

Writing again

So here I am, writing another book. It’s always really exciting writing a book, planning it, knowing that I’m writing something that will help people do their jobs. Sometimes I get bored writing about the same topic for 30 or so pages in a row, but every once in a while, I start a chapter... […]

Small zXml Update

I’ve justed posted a small update to the zXml library in Downloads. It turns out that there was a small bug in the XPath code that caused issues when using namespaces. Thanks to co-author Joe Fawcett for letting me know about it (yes, you’re now listed as a contributor in the README). […]

Yahoo! Hack Day

For the first time ever, Yahoo! is opening up its campus to outside developers for a series of seminars and activities called Hack Day, which takes place next Friday and Saturday, September 29 and 30. Yahoo! has had internal hack days for a while, but this is your opportunity to be on the campus (legally)... […]

Closures considered harmful

Before you start throwing things this way, hear me out. A few years ago, no one ever talked about closures in JavaScript. They were a footnote to JavaScript, mostly discussed by people like Douglas Crockford on the Web. Since Ajax has become the focus of everyone’s life, closures have been talked about more and more,... […]

Don’t allow overriden methods

This is a little technique I’ve been working on for ensuring that objects don’t get used with overridden methods that shouldn’t be. To put it bluntly: if you’ve ever worried about someone overriding one of your methods through inheritance in JavaScript, here’s the solution. Basically, the idea is very simple. In the object constructor, just... […]

Safari Development Tools

It seems like all the cool development tools are for Firefox these days. Anyone who has tried to develop for Safari knows the pain of debugging due to lack of good development tools. It appears that this is just about to change. My buddy Keith hit me up with a link to Xyle Scope, a... […]

RSS and Syndication Roadblocks

A while back, I wrote about how confusing web syndication is. Things have improved somewhat since then, with the adoption of the feed icon by many sites, things have gotten better. Yet, confusion remains. I now go to sites where I see the feed icon followed by two or three choices: RSS 1.0, RSS 2.0,... […]