Uh oh. If you can see this, something has gone wrong with the CSS. Bugger.

Normal service will resume shortly. Feel free to read on, things may just look a bit odd. It's probably related to a sudden change in Blogger's features, requiring some strange back end migration trickery.

adventures in blogger's openid support

Webjam 8 is announced. Awesome!

Need to register with OpenID. OK, well I signed up for one of the OpenID services a couple of years ago, but it was the least memorable URL in history and well, I can't even remember which service it was.

I do have a Blogger account though, which I can remember and should work for OpenID now: Blogger in Draft: New feature: Blogger as OpenID provider.

Awesome! My blog already has OpenID meta tags, so I bang in the URL.

Your blog is not supported for use as an OpenID URL. Please check the following: Is your blog externally hosted? OpenID is only supported for blogs hosted on Blogger...

Not awesome. I host my blog on my own domain. But wait! I can delegate to any blogspot-hosted blog: Blogger in Draft: Using Blogger’s OpenID with any URL

OK, so I need to make an extra blog on blogspot just for open ID. Not awesome, but hey it's their infrastructure. Hopefully they'll sort out the problem later anyway and I can delete it.

Add delegation meta tag to my real blog. Republish. Now my real blog is my OpenID URL.

Awesome.

Labels: ,

blogger tips for web developers

I've been using Blogger since 2001, so I'm pretty familiar with how it works (or doesn't, in some cases). I thought I'd share a few tips for anyone who might be using Blogger for the first time.

initial configuration

There are couple of key things to be aware of when you start:

  • You definitely need to go through [Settings → Formatting] thoroughly.
    • It sets the timezone and timestamp format, for a start.
    • It also lets you set up a "post template", some preset markup to appear when you start a new post.
  • Blogger has two templating systems: the newer "layouts" and the older "classic templates". Layouts are only available if you host on blog*spot, either with a blogspot.com URL or by using a custom domain name. If you host your site on your own server, you cannot use layouts - you can only use templates. Since I host my own sites, all the following instructions relate to templates.

    NOTE: in 2010, Blogger abruptly announced the end of publish-by-FTP support. This means you can no longer host a Blogger-powered blog on your own server, you can only delegate your domain or subdomain to Google to host it for you. It does mean that you can use layouts as well as templates, though.


  • The blog design is controlled by one single template (HTML with some "blogger tags"), with conditional code for different page types.
  • Get to know the conditional Blogger tags.
    • They let you change display for the homepage, post pages and archive pages.
    • Note that label index pages (tag pages) get the homepage template.
  • Change or disable the Blogger NavBar in the Template tab.
    • You can choose a suitable colour or turn it off.
    • You can only turn it off if you are hosting on your own site.
  • Some tags only work inside the <blogger></blogger> tags, others work anywhere.

better titles

Blogger's default <title> choices aren't to everyone's taste:

Main/index page
Name of blog
Post/item page
Name of blog: title of post
Archive page
Name of blog: Month YYYY

The homepage isn't really an issue, but for post pages I prefer the post title first and then the blog name. That is, put the most specific information first - it's more readable and better for SEO. I'd prefer to follow that scheme for archive pages too, but the date is only available in the preset format. The best you can do is add the word "archive" to clarify things a bit. This solution is adapted from Blogger Meta Tags:

<mainpage><title><$BlogTitle$></title></mainpage>
<ArchivePage><title><$BlogPageTitle$> Archive</title></ArchivePage>
<itempage><title><blogger><$BlogItemTitle$></blogger> | <$BlogTitle$></title></itempage>

This will produce:

Main/index page
Name of blog
Post/item page
Title of post | Name of blog
Archive page
Name of blog: Month YYYY Archive

You can use the same solution to control the contents of meta tags.

avoid indexing of duplicate content

Blogger's archive pages include the entire post. What that tends to do in Google is return sometimes-bizzare combinations of keywords, or your archive page will rank more highly than the specific relevant post.

I do two things to try to stop this. First, I use rel="bookmark" in links to posts; and I include relevant robots instructions on archive pages:

<ArchivePage><!-- Don't index duplicate content --><meta name="robots" content="noindex,follow" /></ArchivePage>

This seems to work, but YMMV.

control inserted code

Out of the box, Blogger will top and tail your posts with <div style="clear:both;"></div> and <div style="clear:both; padding-bottom:0.25em">. This is primarily to enable float-based positioning of uploaded images, without forcing your average blogger to learn float layouts. For similar reasons, line breaks are converted into <br /> tags.

To disable these settings, go into [Settings → Formatting]. The options are "enable float alignment" and "convert line breaks" respectively. If you disable the line breaks option, note that you will have to add paragraphs yourself. This doesn't bother me as I generally don't use the inline editor to write long posts anyway.

whitespace

Whitespace isn't ideal - Blogger does mess around with it a little. One thing to be aware of is that conditional code will leave whitespace. So if you have three options on three lines, you will always get three lines in your source code. Only the relevant lines will render anything. If this bugs you, put all the options onto one single line.

Also, only the first line of your post body will be indented correctly. All following lines will be flush left. This doesn't happen to comments so I assume the whitespace rules expect one big div or paragraph with break tags. I don't think this one can be fixed.

annoying things you can't change

There are some things I've not yet found a way to change.

  • Tags are called "labels" and are appended to your post in their own paragraph: <p class="blogger-labels">Labels: <a rel='tag' href="URL">tagname</a></p>
  • Label index pages show the full text of every single post. So, if you publish a lot with that label, that page is massive. It needs pagination, or an option for summary view.
  • Line breaks in comments are converted to uppercase breaks - <BR/>
  • Comment attribution comes with a hard-coded icon indicating the commenter's authentication method and their supplied name (or "anonymous") as in this example: <span style="line-height:16px" class="comment-icon anon-comment-icon"><img src="http://www.blogger.com/img/anon16-rounded.gif" alt="Anonymous" style="display:inline;" /></span>&nbsp;<span class="anon-comment-author">Anonymous</span> ... well ok, you can "change" this by using display: none; and inserting your own chosen code. But, the original will still be in the markup.
  • If you upload an image through Blogger's interface, it displays at 400px wide and links to the larger image. Of course, if you want your images to be 400px wide this is a brilliant feature! ;) Personally when this is an issue I just upload images manually, or use Flickr.

If any of those are deal-breakers for you, Blogger might not be the right tool. Personally I've decided I can live with them - although yes, that does mean I had to accept my post pages won't validate when comments have line breaks. That's an annoying validation error, but not one which causes actual problems. So I've decided that yes I can live with it.

a gripe about support

Blogger is massively popular. While that's cool and all, it does mean that the support system is basically designed to avoid tens of thousands of low-expertise users spamming their inbox. It's all done by volume, near as I can tell - you vote for features and you effectively vote on bug priority. It's understandable, but you still feel a bit like you are shouting into a void when you try to send feedback.

conclusion

I've never claimed Blogger is a perfect tool. There are plenty of things I'd change, but overall it's pretty good and you can produce a good quality site - break tags in comments aside :)

In a way, the thing to accept with Blogger is that - like most popular blog tools - it's aimed more at the mass market than professional web development. That does introduce a few limitations, but overall it's still a well-featured tool that's really easy to use.

Labels:

fixing blogger archive links

A couple of weeks ago, Mike Schinkel was kind enough to let me know that all the archive links on this page were broken (note to self: check error logs more often). Why they broke now is beyond me, although the rollout of the new Blogger might have something to do with it (lots of changes going on).

At any rate the problem was that the first character in the archive path was being dropped, resulting in links to "rchive/" instead of "archive/". The settings panel happened to match Blogger's help page exactly, yet things were still broken.

Blogger support don't really respond personally, they just let you know when a round of fixes go in. However all current work is focussed on the new version of Blogger. That's understandable but it leaves me stranded with an 'old Blogger' site with problems. I can't migrate yet since one of my blogs is "too big" - I guess they're waiting for server load to reduce before they process blogs with 3000+ posts.

Tired of waiting, I tried a few things and found that you now have to include the opening slash as well as the trailing slash: "/archive/". Why? Well someone at Blogger probably knows, but personally I don't really care so long as it works :)

So anyway, the archive links are back in business; and if you are having the same problem try adding the opening slash.

...and before people tell me to migrate to some other blog tool, I still don't want to maintain the blog tool - just the blog!

Labels: , ,

why blogger?

I've had some passing comments and discussions lately about why I'm not running Wordpress (or Textpattern, or Movable Type, or something). Some people find it a bit odd that despite having my own domain and the opportunity to install whatever I want, I am still running with Blogger. Well, I do have reasons and I think they highlight some of the issues with choosing a blogging tool.

I will admit that I periodically think about switching to something else; particularly due to things like the poor feed handling and lack of category/tagging features. That said, I really don't have the time to maintain an application. I'm not interested in maintaining an application even if I did have the time :) So realistically before I'll switch I'll have to get really annoyed with Blogger, or really impressed with something else.

So anyway, why am I using Blogger?

why blogger?

I'm not claiming any of this is unique to Blogger, but here are the reasons.

  • Free (albeit with the blogger bar if you host on Blogspot)
  • 100% template control with simple tags.
  • There is some evidence of standards buy-in for the default template options (although Blogger is still far from perfect in terms of standards/accessibility).
  • The application is remote hosted:
    • I don't have to maintain it or worry about security patches.
    • The output can still be hosted on my own domain

    • NOTE: in 2010, Blogger abruptly announced the end of publish-by-FTP support. This means you can no longer host a Blogger-powered blog on your own server, you can only delegate your domain or subdomain to Google to host it for you.


  • Habit - I'll be honest, I've been using Blogger since 2001 and habit plays a fair part in these things.
  • Now owned by Google, so relatively unlikely to disappear overnight.
  • Pretty good uptime and performance - outages are fairly rare and speed is usually fine.
  • Can update with a bookmarklet.

All told, I have a pretty good level of control over the site; it's mostly the finer details that start showing up the limitations of the system.

the downsides to Blogger

  • Free, so you get what you pay for in terms of feature additions and support. That said, I've rarely needed support.
  • The comment system is a little bit clunky and some people think they have to have a Blogger account to leave a comment.
  • Syndication/feed handling is rudimentary and "configured" by other choices/settings. I currently work around some of the issues with a little PHP/XSLT.
  • Feature addition and bugfixes take a long time.
  • They don't support Opera all that well, most bug fixes for Opera are "use Firefox".
  • I suspect Blogger just doesn't have enough geek cool factor, particularly for standardistas. I've often had the impression people think it's one step removed from LiveJournal, which is a journal/social network system and not a blog tool per se. Geek status is an odd beast ;)

Blogger also tend to do some braindead things like release a new feature without writing the support pages for it. For example, the new linkback feature: A Consuming Experience: Blogger: backlinks feature (not quite trackback). If they'd released the details of the blogger tags, I'd probably be running linkback already.

other tools

I've looked at other tools and plenty of them look good. Some have problems with their hosting setups; eg. Wordpress seems to have a lot of maintenance downtime and Textdrive-hosted Textpattern sites seem plagued with availability issues (apparently attributed to 'growing pains'). Obviously these issues aren't really about the blog tool. Plenty of tools have a high "nifty feature" count, even if that does increase the "nifty undocumented feature" count as well.

As yet, however, I can't find any alternatives which are free, remote host the application but publish the content to my own domain... and that's before we even consider standards compliance and the actual application features. Plus I haven't even touched the problem of converting between systems, which is one of those things where I do not believe the vendor hype - I expect the process would be painful and/or produce less-than-desirable results, much like converting between email clients.

So for now I'm sticking with Blogger.

PS. Feel free to comment with your thoughts on what you run and why you chose it!

Labels: ,

about

Web development and standards, as seen by Ben Buchanan.

subscribe

elsewhere

[More bookmarks]

No Clean Feed - Stop Internet Censorship in Australia