Datasheet
Chapter 1: Introduction to JavaScript
3
Instead of throwing more energy behind a process that wasn ’ t working, a second group was formed,
primarily consisting of Microsoft and Yahoo! members, that worked in parallel to come up with a more
modest revision to the standard addressing some immediate needs that were not as contentious. This
standard would be known as ES3.1 (Edition 3.1) and then later renamed to ES5. This was initially
intended to be a halfway marker between what was appearing in the ES4 document and what was
already implemented in ES3. This has been described by some as more of a bugfix than a major update
to the standard.
These two groups attempted to coordinate their efforts such that changes made in ES3.1 would be
carried forward to ES4. However, as a result of fundamental differences of opinion, it became clear
that this was not going to happen and that there was too little common ground. Again, progress
was at a standstill. Already, Adobe had adopted ES4 in the latest version of their engine for Flash and
Flex development (ActionScript 3). Now it looked as though there was no future for ES4 as it was
currently described.
Finally, it was decided that the two groups had to come together with more modest ambitions so that
everyone could move forward. This new and completely separate project would be known as
ECMAScript Harmony and would retain little of what was originally planned for ES4. Although a
published draft became available in early 2009, it will probably be years before developers can rely on
the features of ES5 in most browsers.
Stages of a JavaScript Developer
Despite the current popularity of JavaScript in the browser, it ’ s actually very difficult to find developers
who understand it well. This is true in any job market, whether it be the Bay Area, the deeply digital tech
sector of Vancouver, or even the highly professional New York developer community. This is
fundamentally because the interconnectedness between JavaScript and related technologies (CSS,
HTML, and the browser) creates deep complexities that only an enthusiast can fully master. It ’ s also
because a thorough understanding of server technologies and transport formats like XML, JSON, and
SOAP is often required. Rarely will you see a job posting for a “ JavaScript ” expert but instead for a
multi - discipline developer experienced in JavaScript as well as many other technologies. As a result,
some developers are choosing to become adept at one or more of the popular JavaScript frameworks such
as jQuery , Dojo , Prototype , or Mootools . These are very practical ways to approach browser scripting, and
I highly recommend learning one, but these frameworks are by nature minimalistic. They are not
particularly forgiving if you lack an understanding of CSS, Object Orientation, or interacting with the
document object model.
If you ’ re new to the language, you ’ re probably overwhelmed with the number of resources available for
learning it. You may have read some other books or even tried your hand at some basic scripting. It ’ s
possible to rapidly accelerate your mastery of both JavaScript and browser scripting in general by
familiarizing yourself with the fundamentals. If you already know another programming language and
can become proficient with the four or so basic concepts in the language, you can say goodbye to months
of gradual discovery and terrible code and jump right into the really fun stuff. John Resig of jQuery and
Mozilla fame was one of the first to describe a common development path for new coders when learning
CH001.indd 3CH001.indd 3 6/25/09 7:53:15 PM6/25/09 7:53:15 PM