Wednesday, October 19, 2011

You think you got what it takes?

My evolution in Tridion knowledge is a repeating (and repeatable) pattern:
  1. Looks cool, and pretty easy
  2. God what the hell is that?
  3. I hate you Tridion
  4. Why on earth is it working now?
  5. Hmm. That actually makes perfect sense
  6. WOW, look at all the shiny stuff I can do. Seriously, this is sooo coool!
Enjoy the glory for a few months, go back to square one.
    • It was like this with Infrastructure knowledge and deployer configuration and broker xml files and Tomcat and IIS 6.5 years ago.
    • It was like this with VBScript and Component Templates and XSLT and Metadata and Dynamic XSLT templates 6 years ago.
    • It was like this with c# and Event Systems with Interops and marshalling and unmarshalling of COM and multithreading TDSE objects 5.5 years ago (hey Robert, remember this one?)
    • It was like this with Compound Templating when it came out in February 2008.
    • It was like this with complex Taxonomies when it came out in mid 2009.

    So why would it be any different with the new Anguilla Framework introduced in 2011?

    I think I'm on the transition between steps 3 and 4, where I do get things to work but in many cases I am not really sure why. It has first and foremost to do with my lack of knowledge and any practical experience on _proper_ JavaScript development. Heck, other than simple carousels and show/hide stuff I don't think I had ever written more than 10 lines of JavaScript in one go.

    Here's a few tips on some of the things I've done so far too keep me somewhat sane, I hope this will help others:

    DISABLE CACHE ON YOUR BROWSER. Seriously, get the Firefox Web Developer extension, and turn the cache off while developing.

    Get used to a javascript console. I use Firebug mostly, and the messages it logs are priceless! Some people prefer Chrome, others IE. I don't really care. Just use one.

    Backtrack what the CME is doing when it fails. When your extension breaks Tridion completely (believe me, it will happen a LOT of times) Tridion will gracefully half-load and not show you any error. Luckily you had your Javascript console when the CME was loading, and you can clearly see what request broke it. Copy the url that it tried to load (it will look more or less like this: http://localhost/WebUI/Editors/CME/Views/Dashboard/Dashboard_v6.0.0.39607.6_.aspx?mode=js) and now you'll probably get a very useful ASP.NET error message instead (typically along the lines of "File X does not exist") which will point you in the right direction.

    And, most important, keep believing you CAN do it. You'll get there.


    Inma said...

    So you're saying there is hope after all... :)
    (still in step 3)

    Nuno said...


    Believe me, there is hope. The first time you're stuck in step 3 is the hardest (and longest), but eventually you'll get out of it.

    And then you move on to do something a bit more complex and you're back on step 1 ;)


    Frank said...

    With the new Anguilla GUI framework in Tridion 2011 step 3 is especially a long one. And one that I still repeatedly fall back to after some 16 odd months of experience with it.

    It's not as much hate for Tridion as it is hate directed at "whoever came up with this piece of crap".

    Which a little/long while later turns into an understanding or acceptance of how to do things (phase 5).

    It's like the old saying: with great power, comes great pain in learning to use it. :-)

    Jaime Santos Alcón said...

    Great thoughts Nuno, I agree with you, always the same pattern. I like you sharing your feelings, it took me a month to get a view working... I hear ya!

    Nivlong said...

    Hehe, I just blogged a "hate software?" post this week that addresses point 3, but for end-users.

    Hate's good... means we're making progress! :-)

    What other profession do you both get to pick what cool, interesting projects and technology you work with (while simultaneously not have any power on what uncool, boring projects and technology you work with)?

    Ah, Tridion paradoxes.

    Dylan said...

    Very try article indeed Nuno...

    Just spent the best part of a week breaking and fixing it and now ascertaining why it DOES work!!!

    Debug tools being a godsend! - I also like to use Fiddler with resource (file) replacing so I can amend JS files (etc.) locally on the go just for speed!

    Chris Summers said...

    Aahhhhhhhhhh hope. I passed through a town in Pennsylvania last night call New Hope. Hope I can get to grips with these extensions given I started this whole mess.

    jw said...

    Hi Nuno,

    Great post, this really hit the nail on the head for me. I actually like the 3rd stage, as I know the reward and sense of achievement of passing through stages 4 to 6 make it all worth while.

    I thought I was an average javascripter but Anquilla has blown me away (hats off to the guys that wrote it!). I spend half the day scratching my head trying to understand the code, then the other celebrating I've got something working... and I 'soft of' understand what I've done.

    It's a really interesting and rewarding time to be a Tridion techy.

    Nivlong said...

    Let's "Prezi" the stages...

    Nivlong said...

    Oops, here's the link to the Prezi.

    Nick Roussakov said...

    It's now 3.5 years into the future (since this post was made). And yep, it's still like that. Storage Extensions, Core Service, XPM. :)

    Nivlong said...

    Topology Manager!