Things what I writ

I sometimes write nonsense about things to try and sound clever

Rolling Over & Dying

We just recently resolved an implementation issue that had been going back and forth between GregAndrew and me for a good few weeks. It wasn’t a big thing, but sometimes the simplest things push the boundaries when I try to do it myself.

For a long time, we’ve had invitations to talk directly with sales advisors on, whether you want to chat, call, email or even have sun call you back directly. These invitations have been reasonably prominent in the right-hand navigation of specific pages. More recently, we’ve been able to embed these invitations by deploying inline rollovers, at the point where customers commit to a call-to-action, making the invitation much more relevant and immediate. You can see the current deployment on some of our promotions, like the Uniboard Upgrade Promotion (until April 1st, which happens to be my birthday, by the way). As you rollover the ‘Start Saving Now’ call-to-action, our rollover appears, with all the options you might need.

Nice as this is, its actually a pretty cumbersome implementation. When I say cumbersome, I mean, its elegant code (as all our web components are), but the way in which we had to deploy it in the short term left a bit to be desired. Our ever-patient publishing team reluctantly agreed to hard-code the components into specific pages, knowing that that was a huge backwards step, and a potential maintenance disaster – they know we’ll change our mind about what’s in the component and expect them to find and update it in all the places we asked them to deploy it but never actually kept a record of ourselves. What we all really wanted was a separate source file for the component itself, which could be referenced by a standard piece of code that would be provided to content owners to use as they require.

This, unfortunately, is where I, as usual, said “I can do that, don’t worry”.

I do know my way around html, CSS, javascript and most other basic web technologies (I expect someone will now point out that it should be HTML, as its an acronym, and JavaScript, or something, just to prove, before I even get to where I’m going, that once being a developer, doesn’t mean always being a developer, and in terms of knowledge assimilation once you gravitate to marketing, all your code is belong to us), but sometimes, when you put them all together, and then call it ‘Ajax’, then I start to lose the plot. What I actually needed to accomplish was quite simple, from an abstract view. I have a self-contained web component (snippet of source), that exists in 1 source file, say, source.html, and I have a parent page, say, parent.html that contains a reference to that source file as part of an Ajax call which renders the component code so that it can then be referenced by a CSS-implemented rollover and magic fairy dust scatters over the page and the share price goes up or something. If you’re still with me, and super-interested, I was actually trying to include a K02v1 DHTML Popup Component, saved as source.html), by calling it from a G32v0 Onload Ajax Include (in parent.html) and then invoke the Popup by using the Popup div id as a class attribute of the invoking anchor in parent.html.

Needless to say, despite my best efforts, I simply could not arrange 10 lines of code and a couple of hash references in the correct order, and ultimately I prostrate myself at the altar of the web design church for forgiveness. Happily, for me, they couldn’t either (for about 10 seconds), but eventually resolved the issue with a flourish of staged content, and I took their code and stuck it into my development site. Of course, it didn’t work when I tried it, but another couple of hours (and a few gin and tonics by now) later, everything was as we wanted it to be.

The trouble is, it took me so long that Neal probably doesn’t even want the rollover any more, but, you know, its useful to ‘keep your hand in’ with this stuff (not for the developers and publishers who have to clean your mess up, naturally, before they point that out).

Listening Post: Outlaw: Nothing Else To Say