The Seven Stages of Learning Dojo

 

So, yah I’m learning Dojo, though from what I’ve heard this could easily apply to ExtJS.  It’s a different mindset to get accustomed to an enterprise Javascript framework, and comes with a bit of a steep learning curve.

And, so it begins….

“Ooooooh look at all these awesome features on http://dojotoolkit.org!  They have a hot themetesterfull documentation for like every single part of their toolkit.  And GLORIOUS quickstarts!

1. Shock and Denial

“WTF, I’ve copied this code EXACTLY, but it spews tons of errors, and doesn’t even come close to working.”

“I’ve looked up all these error messages, but I can’t find a straightforward answer.  Everyone references concepts I’m not familiar with….and they keep telling me to hop on an IRC channel to talk to the developers.  Is IRC still a thing?  Do they have a BBS as well?  Maybe I can learn the language of my 14.4 kilo-baud modem and ask IT how to do stuff in Dojo by chriping and clicking at it”

“It’s gotta be me….I’m an idiot, it can’t be this difficult to get basic stuff working”

2. Pain and Guilt

“Screw, it – let’s man up and just read massive quantities of documents and tutorials.  Hell, I’m going to buy a book from 2008 even thought it’s horribly out of date.  I’m just going to sit through this initial pain to get a better understanding of the whole system.”

“Am I really this dumb?”

3. Anger and Bargaining

“Dojo SUCKS, I hate it!  It doesn’t work. I need to be a freakin rocket scientist to understand this system”

“jQuery, will you take me back?  Please?  I just want some data stores, and some binding, and some well written and documented plugins.”

4. Depression, Reflection, and Loneliness

“So lonely….the only materials I see online are from 2008, and from SitePen who charges for training, why would they help and give it all away for free?”

“Maybe if I had studied harder in school, this wouldn’t be a problem”

5. The Upward Turn

“Going back to the beginning and reading a bunch of stuff seems to have paid off, I think I’m beginning to understand now”

“Where in the hell did they tell you about this parseOnLoad attribute in the script tag?  It’s not in any of the quickstart examples, but it’s freaking mandatory to get anything to work”

“Well, no WONDER, this example didn’t work, it was written in Dojo 1.6 before the AMD Loader, and I’m mixing and matching my code between 1.6 and 1.7 – and 1.7 has REALLY changed the game”

“Ahhhhhh…..I need to nest the requires, cause my require doesn’t know what the ready object is before it loads the core stuff”

6. Acceptance and Hope

“Now that I understand the basics, I really like Dojo.  It rocks pretty hard!”

“There are things I don’t yet understand, but now that I have the big picture, I can roll with anything Dojo can throw at me, but all in all, I’m very psyched about all these new toys!”

7. Reconstruction and Working Through

“Dude, did I really just wire up a data store to a div which I made into a repeater, all inside a freaking accordion?  Damn….awesome”

“I made a build system, and moved all my layers somewhere else, so I’m completely relying on my own custom build….I only get like 2 errors, and none of them block functionality.  This will get better, but for now, it’s awesome enough”

Fin

And here I am.  Though, I think I cycled through steps 3, 4, and 5 a few times.