Announcing jQuery Fundamentals: An Open-Source jQuery Training Curriculum

I've been leading jQuery trainings for more than a year now, from tiny gatherings that I organized myself at the local coworking space, to intensive two-day sessions at local web companies, to whirlwind one-day classes at governmental agencies. Over the course of those trainings, I've developed what I'd like to think is a decent curriculum -- training material that's the size of a small book, exercises that demonstrate core concepts, and solutions to those exercises that students can peek at later or when they get stuck. I decided recently that it was time for all of this material to see the light of day, so I spent the last several days converting it all to DocBook files that allow for easy publication to HTML and PDF (and other formats, if I'm later so inclined). I also fleshed out some topics that I'd given short shrift, and started planning sections covering advanced topics such as plugin authoring, code organization, best practices, and more. There's more to come in the next few days, but I think what I've done so far is worth sharing. I hope you'll agree.



My goals in releasing this are several. First and foremost, I want to see people writing better jQuery. The free resources for learning jQuery are scattered across the internets, and my personal experience of learning the library was haphazard — it was a long time before I learned some things I wish I'd known from the get-go. In addition, I want people who are writing jQuery to understand JavaScript. To that end, the book begins with a survey of JavaScript itself before jumping into jQuery. Finally, I want to enlist the bright minds of the jQuery community to help developing a robust, authoritative, in-depth jQuery curriculum, and in exchange it only seemed fair to make it available to everyone. I should mention that the goal of this material is to serve as a companion to a human instructor. That said, individuals may find it useful for self-study, especially if they're diligent about doing the exercises at the end of each chapter. If you're inclined to help -- by adding a chapter, a section, a paragraph, an exercise, or even just a correction -- fork the repo and send me a pull request. I look forward to seeing how this project might evolve with the community's help. Note: If you comment on this post pointing out an issue with the material, I will do my best to tend to the issue, but I probably won't publish your comment, as this post isn't the right place for reporting issues in the code. You can report issues at the repository, but if it's important to you, please fork the repository, make the change, and send me a pull request.

Loading mentions Retweet

Posted 2 months ago

35 comments

Jun 17, 2010
Bob said...
Thanks for releasing this, I'm looking forward to checking it out! I attended one of the two day classes you taught at the local coworking space (I was the guy who drove up from Florida) and it helped me out a bunch.
Jun 17, 2010
Sean Wood said...
Huge thanks for releasing this. I'll be sure to credit you and this page when spouting my new found knowledge.
Jun 17, 2010
Juan Pablo Buritica said...
I would say "Great post, thanks" but this is worth way much more than that, and I want my comment approved. I'll have to get some time to read through it, but just wanted to thank you for all the resources you provide. I have found many of them very helpful.
Jun 17, 2010
Shea Frederick (VinylFox) said...
What an awesome resource, and very generous of you to release all of this, I know how time consuming training material is to develop. Great job.
Jun 17, 2010
Alicia Weller said...
Wow. This is awesome.
Jun 17, 2010
Tan Shiaw Uen said...
Thanks for giving out your good work out!
Have a quick glance and all seem useful to me =)
Will definitely introduce to my friends that just get into Javascript and jQuery.

Good job!

Jun 17, 2010
Manmohanjit Singh said...
Excellent. Just excellent.
I'm definitely going to read it.

Great effort and good job.

Jun 17, 2010
sqlbelle said...
This is excellent Rebecca, thanks for pioneering this.
Jun 17, 2010
AHW said...
This seems awesome so far, a sure add to Instapaper. Made my day!
Keep it up!
Jun 17, 2010
Wingnutart said...
Beautiful resource - and a great compliment to yayQuery & JQuery for Designers podcasts. Thanks for sharing your hard work!
Jun 17, 2010
AgileDude said...
Wonderful - very generous of you. Looking forward to learning a lot - Thanks again!
Jun 17, 2010
Kai Chan Vong said...
This is brilliant. I cant help but think we need one for HTML and CSS also... as separate entities which re-enforce how we should be marking up and styling down our pages.

The reason I say this is because I've seen all too many people apply HTML in such dire ways which I'm sure could be done better with a clearer understanding of browsers and how the layers interact with one another.

What do you think? Is it something worth investing time in to try and develop some sort of standards?

Jun 17, 2010
Remy Sharp said...
Randomly I was thinking just a couple of hours ago there needs to/should be some kind of document to allow companies to help train their internal teams on using jQuery - i.e. that someone can evangelise within the company, and wham - you've done most, if not, all of the work here.

Great work!

Jun 17, 2010
Orion Engleton said...
Very Generous! I hope that your blessed in many ways for taking your time to do this.
Jun 17, 2010
Roger Raymond said...
Well, it looks like I have the beginnings of some good material to aid in my own internal company workshops. Thanks for sharing, I'll put it to good use and hopefully be able to contribute something back.

Regards,
Roger

Jun 17, 2010
Craig said...
Thanks for the awesome resource, but the title attributes on all the divs is *really* annoying. Can't leave the mouse cursor anywhere without a tooltip getting in the way and being distracting.
Jun 17, 2010
Rebecca said...
@craig The output is the default DocBook xhtml output. There's a lot about it that I'd like to make better, but for the time being I'm staying focused on the content. If you're interested, by all means fork the repo and dig into the XSL :)
Jun 17, 2010
cancel bubble said...
I see you changed your plugin code per my post but deleted my post explaining why your original plugin code was flawed (IMO). You should include that info in your plugin section so people will understand the jQuery/$ scoping issue.
Jun 17, 2010
jQuery Fundamentals Book | Upthrust said...
[...] Open sourced training materials and the book from Rebecca Murphey will help you a lot to get the jQuery fundamentals right. [...]
Jun 18, 2010
Fabio said...
Wow! It's great! Thanks!
Jun 18, 2010
Yoosuf said...
Such an amaizing contribution and much appriciate your work Rebecca
Jun 18, 2010
heather said...
This is a great resource!

If anyone was interested it would be using as a basis for a course in peer 2 peer university.

P2PU is like a bookclub for open educational resources. People can form study groups and get course credits.

The Mozilla Drumbeat team is calling for courses, so someone who want to learn this could propose a course.

Looking forward to checking this out!

Jun 18, 2010
Pol Moneys said...
I have no words.
A tear pops.
thanks for sharing
Jun 18, 2010
Webdev: „jQuery Fundamentals“ – Umfangreiches Online-Handbuch zu jQuery » t3n News said...
[...] Hedemann) Die Web-Entwicklerin, Buch-Autorin und jQuery-Expertin Rebecca Murphy hat unter dem Titel „jQuery Fundamentals“ ein umfangreiches Online-Handbuch zu jQuery veröffentlicht. Das Werk steht unter einer Creative [...]
Jun 18, 2010
My daily readings 06/18/2010 « Strange Kite said...
[...] Announcing jQuery Fundamentals: An Open-Source jQuery Training Curriculum | blog.rebeccamurphey.com [...]
Jun 18, 2010
Dew Drop – June 18, 2010 | Alvin Ashcraft's Morning Dew said...
[...] Announcing jQuery Fundamentals: An Open-Source jQuery Training Curriculum (Rebecca Murphey) [...]
Jun 18, 2010
links for 2010-06-18 « BarelyBlogging said...
[...] Announcing jQuery Fundamentals: An Open-Source jQuery Training Curriculum | blog.rebeccamurphey.com (tags: javascript training) [...]
Jun 19, 2010
Lese-Empfehlung: “jQuery Fundamentals” : Frapelos Fundstücke said...
[...] von Webseiten Programmierung mit jQuery einsteigen möchten, hat Rebecca Murphey [en] ihre Schulungsunterlagen zum Thema [en] veröffentlicht. Gerade die Anmerkungen im Text helfen, die eine oder andere Klippe zu [...]
Jun 20, 2010
Eric Blue’s Blog » Weekly Lifestream for June 20th said...
[...] Shared Announcing jQuery Fundamentals: An Open-Source jQuery Training Curriculum | blog.rebeccamurphey.com. [...]
Jun 27, 2010
Aaron Mc Adam said...
Hey Rebecca, thanks so much for releasing this. I've noticed some encoding error characters such as Â. Usually a problem with XSL and escaping characters.
Jun 29, 2010
Gabs said...
Thanks a lot for sharing this!. It is a great resource.
Jul 06, 2010
jQuery Fundamentals – kostenloses jQuery eBook - javascript,jquery,training,ebook - Webworking said...
[...] angekündigtes kostenloses jQuery eBook könnte durchaus sinnvoll sein – auch wenn es auf Englisch ist (um dem einen oder anderen [...]
Jul 08, 2010
Graham Reeds said...
Can you publish the epub version for those of us who solely live within Windows but still want to read the book on their Android based phones?
Jul 22, 2010
Willabee said...
Great work Rebecca. Is there a DS solution for the exercise questions? such as:

1.
Select all of the div elements that have a class of "module".

$('div.module') is faster than $('.module')

What was your source for learning DocBook?

Jul 30, 2010
steen said...
I just wanted to get in on the ground floor praising you for starting what will undoubtedly become what K+R was to the C community years ago. I'm working through the material now, and not only am I learning a lot about jQuery, but I'm also learning important things about more fundamental platform-independent patterns that will be even more useful in the long run, which I feel is the mark of the most effective programming texts. Thank you.

(I found you through yayQuery, which btw is also awesomely useful. I like coding while watching, it makes me feel like I'm working with my drinking buddies on skype)

Leave a comment...