This site was originally managed using Blogger and hosted at a
blogspot.com domain. In August 2014, I converted it
to a static site generated
using Jekyll hosted on GitHub Pages at a custom domain
registered at Hover. Images continue to be stored on Flickr, and
video content on YouTube.
Since January 2015, all photos have been taken on my Sony Xperia
Z3 smartphone. If I have time and care enough, I mount it on a
GorillaPod. Prior to that, I used various Canon point and
shoots, e.g. PowerShot S110, PowerShot S90, PowerShot A520. Most
of the time, I take photos of food near a window or outside, because
I don’t have a lightbox or bother with any sort of controlled
lighting. One of these days, I’ll build a lightbox.
If the photos need post-processing, I fix simple stuff like white balance
or exposure using Mac OS X’s Preview. ImageMagick is what I use for
I write posts in Markdown, generate the site locally on my MacBook,
then push it up to GitHub. Flickr has Twitter integration to send out a
tweet, so I include a link back to the blog entry in the photo
description. I tried using the Socialize feature of FeedBurner but
it didn’t allow customization of the tweet.
Migration from Blogger
Here is a very detailed list of things I did to move my content out of
- Purchased a domain name (from Hover).
- Created a repository on GitHub, and set up GitHub Pages to use Jekyll
and a custom domain
- Installed Jekyll locally so that I could make use of plugins, which
GitHub Pages doesn’t support
- Copied and customized the Hyde theme
- Installed some Jekyll plugins
- Forked blogger2jekyll, a tool
written in Node.js to ease migrating from Blogger to Jekyll. I extended
the tool to include a few more things in the YAML front matter:
- Generate array of tags from labels
- Generate post excerpt
- Extract Flickr thumbnail from first image
- Added a
redirect_from to handle domain migration (see below)
- There were a number of existing HTML problems I had to fix in the
- A few links were absolute, pointing to a hosting provider I’ve long
- Some of the embedded Flickr images were using a very old URL path
that has since changed.
- Most of the internal links were absolute, rather than relative.
These were cleaned up after importing the posts into Jekyll.
- Created a Disqus account for comments
- Included the Universal Code in my post template
- Imported my old Blogger comments into Disqus
- Created a Google Custom Search Engine to provide site search
- To redirect users from the old pages hosted at Blogger to the new
site, I had to jump through some hoops.
- These two pages were of immense help:
- Blogger does not provide the ability to automatically set up a
301 redirect. Nor does it provide a template variable that has just the
permalink path, only the complete URL. Otherwise, redirection would have
been easy, as the pages migrated over to Jekyll use the same permalink
- To workaround this, I first modified the migration tool to
redirect_from key and a relative path value containing the
Blogger post ID (UUID).
- Next, I added
<meta> entries in my Blogger classic template to
redirect users to the new domain, as well as redirect individual posts
to the path containing the post ID.
- This approach isn’t perfect, as search pages (
and archives (
/2014/08/) can’t be redirected.
- Even though the classic template is required to add the
fields and to provide redirection, the mobile version in the upgraded
template interferes with redirection. That is, Blogger
?m=1 query when the user agent is detected to
be mobile. To disable this, you need to switch to the upgraded template,
disable the mobile version, then switch back to classic.
- Once I verified the redirection was working in desktop and mobile
browsers, I deleted the sidebar, post body and footer in the classic
Blogger template which should speed load times.