Level 5 is supposed to be standard unobtrusive JavaScript. Level 6 is the next level and involves objects and behavioral extensions. Rahul is right. There is a big jump between level 5 and 6. Maybe that’s why there are so few good JavaScript programmers?

Well, I’m glad I’m at level 5 at leastBut still, the jump to 6 is huge. I’d like to learn more but I’m really only working on double-AA accessible sites at the moment which doesn’t leave a lot of room for advanced Javascript, when you have to ensure the site works fine without.

Perhaps this should be levels of DHTML knowledge? Levels of *JavaScript* knowledge would surely have to include tidbits spanning from variables that begin with $ to recursive anonymous functions with closures.

6 is still rather mundane. the fact that many javascript programmers aren’t comfortable with (strained) object declarations like the one given isn’t really a test of javascript per se — indeed, i know many “procedural fans” that are better javascript programmers than most. I would think interesting use of ::factory type code generation techniques (functions as datatypes and such) would separate the men from the boys more effectively. perhaps a level `$`?

You’re lucky I didn’t just write up that post where I was going to make fun of the next person who made a “Levels of” post. Seeing as how JavaScript was the most logical one to come up next, it was going to happen sooner or later.

I refuse to answer my level. This is just a ridiculous way for developers to show off. So do we get badges for certain levels?

Level 6 is just bad, very bad, it’s absolutely insane, you don’t add a bind method to a host object, as you have no idea if a host object can be extended in that way (it’s not even a given in IE, let alone rare browsers – and nor is there any standard that requires it.)

Equally the rest makes little obvious sense, just more obfuscation for the hell of it.

Dean, I take back anything I ever said. I for one also didn’t see the tag on this post for humor. That just proves our case as JavaScripters. Indeed, who needs a “Levels of” for JavaScript. As if any of us really cares. This post ’tis most definitely a true reflection of who we areIt makes me feel much better knowing this was done in humor

Woohoo, looks like I will be comment number 40. A nice round number. I hereby claim my prize. (I’ll have JavaScript for Dummies, please.)

Joking apart though, I’m disappointed not to see anyone (yet) trying to sneak that self.close – or whatever it is – thingy that causes the window to shut (and totally dumbfounds the unsuspecting reader) into their comment. That would have to be JavaScript level -1 (used by smartass types who haven’t got a clue about scripting and think it’s a really clever joke.) Maybe it should be reserved for last comment of all eh?

My own level of JS knowledge? Strictly cut and paste, although I do try to use only reputable sources on the rare occasions when I do use scripting.

Quick Link: Levels of JavaScript Knowledge
Levels of JavaScript Knowledge by Dean Edwards. I don’t mean to brag but I’m already a level 3. I think I need 500 more experience points to make it to level 4….

Here comes the nasty comment. I was forced to come with JavaScript disabled, to avoid killing again the Firefox process after a total UI freeze. There are not many sites in the web that cannibalize there visitors CPU and RAM so wildly. There are not many level 6 JavaScripters either. I wonder if there is a connection between these two statistics.

Comment by: Theodor Zoulias

Posted: 2006/06/06 12:42 am

Comment: #62

[…] nowledge. You can click into each one to see what your level might be, but here are mine: Levels of JavaScript Knowledge: I’m almost to Level 5. Level 5 uses a little DOM scripting […]

@Theodor – I scanned my referrals logs to find out what browser you were using – Firefox 1.0.7. So I uninstalled my version of Firefox and downloaded FF1.0.7. And… I can’t recreate your problem. If you want to give me more information then that would help.

Firefox 1.0.7 with six trusty extensions and some hand-made greasemonkey scripts. Disabling greasemonkey doesn’t stop the issue reproducing itself. Disabling JavaScript does. Quite hastly I concluded that some sort of heavy scripting triggers this behaviour, but looking afterwards the source I can’t find a single script tag to blame. Mysterious. A 3-4 seconds UI freeze is normal and expected phenomenon in this site for me. Total browser hanging is not.

No problems here but i’m using ff1.5 However, you make a good point about the site using js. I liked the way that the code samples were color when i showed up with js enabled. That effect doesn’t occur with js disabled. But for the life of me i can’t figure out 1) what is triggering the js and 2) where it is located?

@Dean — can you fill me in on how you’re running the js on enabled browsers to color your code samples?

There shouldn’t be DOM stuff here.Level 7 should see some inheritance code using prototype or at least some multidimensional array stuff. I’m Level 6. Took a long time to understand prototype. I got up to speed by doing lots of reading and practice coding using Flash ActionScript and reading up on abstraction, encapsulation etc (all the OOP stuff) written by Grady Booch’s “Object-Oriented Analysis and Design with Applications (2nd Edition)” (got a copy from my Uni library). Praise God! Wish you guys and gals all the best in understanding code. I also want to point you guys and gals in http://www.joelonsoftware.com (read the archivesgood stuff). God Bless y’all and remember that Jesus Christ is the Way, the Truth and the Life.

I’m level 4 and I didn’t even say a word. I realized I’ve got a lot of work to do. I’ve just started learning DOM☻

Comment by: esigchas

Posted: 2006/08/02 11:24 pm

Comment: #85

[…] I’m stealing this idea straight from these three guys (1, 2, 3) and adapting it to the world of SEO/M. Here’s my take on what the various levels of knowledge are in the search microcosm – I’ve tried to provide examples as well: […]

[…] I’m stealing this idea straight from these three guys (1, 2, 3) and adapting it to the world of SEO/M. Here’s my take on what the various levels of knowledge are in the search microcosm – I’ve tried to provide examples as well: […]

I personally prefer level 3, but I don’t use js very often at all. I don’t quite understand level 6, but that’s ok, because even if I did, I would probably never use it

I also had Firefox lockup issues on this page. I received it two or three times in a row when trying to open the page in a background tab, but it worked ok when I opened it up in the current tab. I don’t usually use Firefox, so not sure what to tell you.

[…] I have posted a bit on RSS and while I am not a “super” expert on RSS but I am a big fan and I have posted a bit on this topic in the past so when I saw the following link: “Levels of JavaScript Knowledge” which was based on “Levels of HTML Knowledge” which was in turn based on “Levels of CSS Knowledge” I thought – what better way to describe what I have seen lately as we hire for PaperThin. […]

[…] Jenny posted about an interesting article over at Particletree called Levels of Web Development Knowledge. My favorite article, which I was cracking up over, was Dean Edwards’ Levels of JavaScript Knowledge, which actually has 6 variants of JavaScript Hello World code to demonstrate 6 levels of JavaScript developer expertise. I love it! […]

[…] I found this page on Behavior Driven Development really interesting. This reminds me of posts such as the Levels of JavaScript Knowledge, Levels of HTML knowledge and the Levels of Accessibility Knowledge. […]