NCZOnline

Recent Posts

Fixing “Skip to content” links

Tags: ,

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 “skip […]

Advice for new and aspiring technical speakers

Tags:

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

Tags: ,

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)

Tags: ,

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?

Tags: ,

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

Adventures in pointerless computing

Tags: ,

A few people know that I’ve been battling a repetitive stress injury (RSI) in both of my elbows. I’m hit on all sides of the elbow: tennis elbow, golfer’s elbow, and triceps tendinitis. I’m sure the stress has been building in these tendons for most of my career, but they really got bad last year […]

Computer science in JavaScript: Quicksort

Tags: , , ,

Most discussions about sorting algorithms tend to end up discussing quicksort because of its speed. Formal computer science programs also tend to cover quicksort[1] last because of its excellent average complexity of O(n log n) and relative performance improvement over other, less efficient sorting algorithms such as bubble sort and insertion sort for large data […]

The Front End Summit new speaker program

Tags: ,

One of the last things I did before leaving Yahoo! was to help organize the Front End Summit along with James Long and David Calhoun. This is (was?) a yearly internal front end conference that brought together engineers from all over the world. While not the same as planning a public conference, we faced many […]

JavaScript APIs you’ve never heard of (and some you have)

Tags: , , , ,

This week I was scheduled to give a brand new talk at YUIConf entitled, JavaScript APIs you’ve never heard of (and some you have). Unfortunately, a scheduling conflict means that I won’t be able to attend. So instead of letting the work of putting together a brand-= new talk go to waste (or otherwise be […]

ECMAScript 6 collections, Part 3: WeakMaps

Tags: , ,

Weakmaps are similar to regular maps in that they map a value to a unique key. That key can later be used to retrieve the value it identifies. Weakmaps are different because the key must be an object and cannot be a primitive value. This may seem like a strange constraint but it’s actually the […]

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