About Nicholas C. Zakas

Recent Posts

Working with bidirectional (bidi) text and RTL languages on the web

While a lot of focus in the web development world has shifted to mobile development, there’s still a subject within desktop development for which that hasn’t been much written: dealing with bidirectional (bidi) text and right-to-left (RTL) languages. The two languages that people frequently discuss when the topic of RTL comes up are Hebrew and... […]

Determining if an object property exists

One of the most basic tests developers perform in JavaScript is whether or not a particular property exists on an object. Since feature detection is the preferred method of code forking, developers are encouraged to test for the existence of properties before using them. There is a lot of buggy JavaScript code out there as... […]

Empty string URLs – browser update

Frequent readers will remember my mission to stop browsers from making automatic requests when an empty string URL is reference in script. My mission began with a post entitled, Empty image src can destroy your site, in which I explained just how devastating this browser quirk can be to an enterprise system. After that point,... […]

Data URIs make CSS sprites obsolete

I was sitting in a talk given by Facebook’s Jason Sobel at Velocity this year, when I was a bit surprised by an impassioned plea that he made at the tail end of the talk. To paraphrase, Jason said that CSS sprites require too much work for average web developers and that we should be... […]

Cross-domain Ajax with Cross-Origin Resource Sharing

A couple of years ago, web developers were banging their head against the first wall in Ajax: the same-origin policy. While we marveled at the giant step forward enabled by cross-browser support for the XMLHttpRequest object, we quickly bemoaned the fact that there was no way to make a request to a different domain from... […]

Understanding IE8′s site compatibility view list

Not too long ago, I wrote about Internet Explorer 8′s browser mode and document mode settings. The goal of the post was to familiarize everyone with the various modes that IE8 can run your document in. Since that time, I’ve had ample opportunity to play with the browser and figure out a bunch of quirks... […]

The basics of web advertisement tracking

There is little debate over how important advertising is to the web. Web ads have made Google a powerhouse and everyone else envious. Their Adsense product made ads ubiquitous on even the smallest of web sites and yet people still don’t have a good understanding of ads are tracked, and therefore, how they make money.... […]

Towards more secure client-side data storage

Last year, I started digging into the various client-side data storage alternatives that had popped up as a result of HTML5. These included sessionStorage, localStorage, and client-side databases. Though I was glad to see movement in this direction, I was unhappy with some of the results. I started my exploration around sessionStorage, and even though... […]

iPad web development tips

By now you, or someone you know, has an iPad. Of course, Apple has been preparing people on how to design their web sites for optimal use with the iPad (see Preparing your Web Content for iPad). Of course, the biggest thing is the lack of Flash support on the iPad. Apple is instead pushing... […]

CSUN Conference 2010

I’ve just returned back from the 2010 CSUN International Technology & Persons with Disabilities Conference in San Diego. This was the conference’s 25th year, which easily makes it the oldest conference I’ve ever attended or presented at. My colleague Victor Tsaran and I were presenting a talk entitled, The New Yahoo! Homepage: Challenging the Challenge... […]