Just in time for me to do it all over again tonight at the Boston JavaScript Meetup. Well, not completely all over again as it’s a new presentation tonight, but it’ll still be two times at NERD this week.
Here are the numbers for DrunkenFist.com in the year 2009. There were 614,333 visits to that domain last year and the top browsers broke down like this:
Rob Larsen will lead an interactive session outlining the basic steps to getting started with using JavaScript using modern techniques. For the beginner it will serve as a road map to using JavaScript with confidence. For the more advanced user it will serve and a forum to discuss fundamental best practices as Rob will be soliciting feedback and discussion throughout.
It’ll be basically a step by step on getting JavaScript onto a page, in a modern, “best practices” way. Starting with attaching the script to the page using the script tag all the way through writing a function and attaching it to an element. Each step will be split into three levels of discussion:
For the beginners each will simply be presented as “this is how you do it”
For the intermediate user it will be “this is why we do it this way”
For the advanced user it will be a question- “where does this fall apart and how can we make it better”
Yes, I’m still helping out with screening candidates. I haven’t yet interviewed someone to replace me, but there’s still a week to go.
Anyway, we’ve had a couple of technical questions that candidates universally failed to answer. Why share them here? For starters I just want to know if we’re crazy to expect people to know these. I also like the idea of a kind of “easter egg” for candidates. If someone does enough research to find my blog and read this post, they’ve shown me something, even if it’s not the answer to one of the questions posed below.
The two that have surprisingly turned into stumpers (at least for the last five or six folks I’ve interviewed)
What is hasLayout?
What’s the significance of setting the body text to .625em?
And the bonus question that I want to ask, but don’t, because it’s kind of goofy to say out loud
Or, more simply: If we use Google’s JavaScript Library CDN, we are asking the majority of our website visitors (who don’t have jQuery already cached) to take a 1/3 of a second penalty (the time to connection to Google’s CDN) to potentially save a minority of our website visitors (those who do have a cached copy of jQuery) 1/3 of a second (the length of time to download jQuery 1.3.2 over a 768kps connection).
That does not make sense. It makes even less sense as the download speed of your visitors increases. Try to avoid serving 20 or 30 kilobytes of content at the cost of using a 3rd party just doesn’t make sense.
We’ve used the Google CDN to serve jQuery at Cramer with no obvious complaints and I heartily recommend using the configurator/CDN option that Yahoo offers (for the unitiated, it builds a “just what you need” package to grab from their CDN, so you don’t have to serve every YUI Module just to do x), but Billy Hoffman’s article definitely makes me rethink the former.
If you didn’t live through it (and I didn’t live through the whole thing), now you can revisit the strange history of the user-agent string in just a few, well-written, minutes.
We spent about 45 minutes running variations of the one-liners above in the console during a code-review last week. Fun times.
It sounded like this a couple of times:
“Wait, what?”
…
And finally… are you enjoying the jQuery advent calendar? I’m interested in running jQuery 1.4 against the demo code I build for my library presentation. I expect to be bowled over.
WordCamp Boston is less than a week away, and as part of my presentation I wanted to show the new elements in an environment that basically everyone that works on WordPress sites will recognize- the default theme. To that end, I mocked up a functioning HTML5ized version of the home page to use as an example. That was both easy and fun. Read the rest of this entry »
Simple. It serves a new style sheet to various versions of IE as needed. The bad thing is the extra HTTP request added onto the Microsoft browsers. I’m not even there yet, but during one of my interviews for the new gig an alternative was suggested- using conditional comments to append a different class to the html element and letting the cascade sort it out.