Ed Bilodeau

<< Back to Home

This weblog had moved: http://www.coolweblog.com/bilodeau/

# Notice (Oct 19/05): So ends my stay here on Blogger. This morning Google implemented an anti-spam 'feature' that forces me to answer a challenge phrase when I want to post to my own blog. No notice of the change, nothing. Worse is that it doesn't even work! I type the phrase, submit, "An error occured", post deleted. Damn you, Google. Chances are I will revive my blog somewhere else, sometime soon. I'll post the new coordinates here as soon as they become available. (BTW, I'm unable to post anything to my RSS stream, so I'd appreciate it if readers could spread the word and ask people to take a look at this notice)

Update (Oct 19/05, ~noon): After a frustrating few hours (and not just trying out alternatives to Blogger), I've decided that this is a good time to take a break from all this. A day? A week? Who knows. But I need to step away from it before I pass a heavy magnet over the whole mess.

Update 2: According to this post, the reason I'm seeing the CAPTCHA (challenge phrase) is that Blogger has classified my blog as spam. Thanks. User for five years and now I'm spam. I searched the Blogger site, but there is no mention of how to get the spam flag turned off. There is also no way of contacting anyone at Blogger. Wow. Spam they say I am, so spam I must be. Maybe it is time to take a break.

Wednesday, June 29, 2005

Thoughts on Blogger wonkiness: I came across a post on the Blogger help site acknowledging that changes made to the system to support Blogger Images (whatever) are causing layout problems.

The root of the problem, IMHO, is that their new functionality breaks Blogger's tag model. Up to now, anything that was inserted into a template was marked with a tag like this:
<$Blogger$>
and it was pretty clear what would be inserted when the pages were rendered. It was a system that worked well (and one that is pretty standard across all template systems).

Now, they've gone and broke it. Before I would insert the text of a post using the tag
<$BlogItemBody$>
which would insert my post text as is. Now, my post text is wrapped in additional tags which have a non-negligible effect on my layout, i.e.:
<$BlogItemBody$>
is rendered as
<div style="clear:both;"></div>
<$BlogItemBody$>
<div style="clear:both; padding-bottom: 0.25em;"></div>
Google's first mistake was implementing a new feature in a way that broke the exisitng code. Their developers clearly thought that a few empty div's wouldn't break anything, which indicates that they don't really appreciate how their software may be used.

Google's second mistake was releasing the change without properly testing it. Although they claim to have tested the change, they also note that many of the problems are with blogs that use one of the canned Blogger templates. Forget my apparently whackjob layout: their changes break their own plain-jane layouts. So what exactly did you test if not on the dozen or so canned templates?

Google's third mistake was doing this without documenting the change in functionality. Even now, all they are saying is that they've made some changes, but we (i.e. the users) don't know what they are or how our sites will be impacted. This indicates that they were not confident in their work and their testing to publish how the new functionality will work. Instead, their plan appears to be to put the changes into producion, see what breaks, and then go back and rework their code. Then, maybe someday, they will document the changes we need to make to our templates.

Google's fourth mistake was how they implemented the markup. Looking at the snippet above, the div's are not identified in any way (i.e. with a class or id). As a developer, if the system is going to autorender elements, I want to be able to get at them, either with CSS, Javascript, or whatever. I can't have any untouchable elements on my page. Something like this:
<div id="BloggerImageBegin" style="clear:both;"></div>
<$BlogItemBody$>
<div id="BloggerImageEnd" style="clear:both; padding-bottom: 0.25em;"></div>
Furthermore, what's with the inline styling? This is 2005, my friend. Those have to go. Into the <style> where they belong.

Google's fifth mistake was that they didn't allow me to opt in to their beta test. Or more importantly to me at this moment, there is no way for me to opt out. There is no "Please remove this busted functionality from my Blogger setup until you get the bugs worked out, although I'm very happy with Flickr so I doubt I would ever use it anyway, and besides aren't you a bit late to the image-upload game anyway, and no Hello doesn't count" button for me to click.

I don't really care if they ever fix this: it is really unimportant. But I think there are lessons here for anyone who is developing applications and is concerned about making sure that upgrades go smoothly.