O'Reilly just pinpointed all that is wrong with JavaScript.