Refresh Teesside April 2013 and Middlesbrough’s Captain James Cook

I’ve been meaning to get down to Refresh Teesside for a while, partly because it’s always sounded interesting, and partly as an excuse to actually see Middlesbrough. Last Thursday I finally made it.


My query about what was worth seeing in Middlebrough got some, er, interesting responses (one included “nothing”). However, I did get pointed towards the Captain Cook Birthplace Museum, which I got to via a rickety train ride. Brits may not realise that Cook is an important name in the Pacific. He was the first person to chart New Zealand (which aside from a few mistakes such as thinking Banks Peninsula was an island is incredibly accurate) and his ship Endeavour is on the New Zealand 50 cent coin. And my father is a Cook Islander, named after … well, you can guess. I hadn’t been aware that he was from Middlebrough.

Old New Zealand 50 cent coins featuring the Endeavour

Old New Zealand 50 cent coins featuring the Endeavour. The newer smaller version does too.

The museum has been recently upgraded with lots of new exhibits. While as a designer there are some bits I’m not entirely sure about, I was intrigued by the Middlesbrough haka, and impressed with their video of differing opinions of Cook across the Pacific (which are usually: impressed by him; hate the diseases he bought; or that someone was going to invade us, better it was the English rather than the French or Spanish).

Refresh Teeside

There was a buzzing atmopshere at Sassari. The free first drink didn’t hurt, of course.

Refresh Teesside April 2013

I got snapped juggling devices.

Vicky Teinaki at Refresh Teesside April 2013

The night was made up of flash talks, with speakers kept to their 5 minutes via dramatic alarms.

  • Adam Parkin debuted as a public speaker with a discussion of his photography practice, and his upcoming photography exhibition for charity.
  • Matt Kirwan discussed the good, bad and ugly of working at home as a developer. It can be a huge timesaver and the lure of flexible work can be motivating, but it can get lonely. More dangerously, you can risk burnout from working too much.
  • Bobby Robertson spoke about the startup inclubator Searchcamp that it about to open in Teessdie.
  • Jay Moussa reflected on her work as a filmmaker: is a music video she was paid to do, doesn’t like but got some traction in the media classify as being more successful than one she didn’t get paid for but had complete creative control?
  • Finally Paul Smith shared how his startup Appysnap started, failed, and is now rising from the ashes based on what his team learned. He stressed that press is a bad thing when you have a minimum viable product, to test and release, and to above all GIFRO:

For more on the talks, check out the storify of the night.



Open Design: Mozilla London

On Wednesday night Mozilla London hosted an event on Open Design. I wasn’t there, but thankfully they live-streamed the entire event, which was fun for me as I got to confuse people as to whether I was in the room! The videos will be up shortly, but in the interim here are my notes (also check out the detailed twitter conversation from the evening).

Over the course of the night, a number of recurring themes (and a couple of dichotomies!) emerged:

Not open or closed, but ajar: Tom Hulme, OpenIDEO

Perhaps my favourite phrase of the evening came from Tom Hulme of IDEO (if anyone can nail a good phrase, it’s them). He talked about designing to be ‘ajar’: most projects cannot be entirely open, but they shoudn’t be entirely closed either. I also liked his phrase of allowing ‘time and oxygen’ to incorporate serendipitous ideas.

While discussing Convergence and the Ubuntu community, Ivanka echoed Hulme in stressing that secrets, while necessary, are an overhead and can undermine goodwill (for example if you can’t explain to the community why the brand looks the way it does because of strategies in the process of being implemented).

Desire paths and (real life) community building: Drew Smith, Tobias & Tobias

Drew Smith of Tobias & Tobias talked about open design with communities. Continuing with the list theme of the night, he suggested the following points:

  1. Choose one problem and solve it. Finding an easy win helps build good will. One example was a Tadcaster community lamenting no events for elder people. As it turned out, they still happened, it was just that no one knew about them as there were no more community papers. Easy win: create an events web page to list them all. Easy, and able to be slowly scaled up (see #4)
  2. Reflect the swagger of the community and avoid identikit solutions
  3. Be inclusive (consider digital literacy, availability)
  4. Allow people to self-assemble. Rather than build a big solution (a big website etc), build little bits that can be built on.

It’s not a bug, it’s an idea!: Tony Santos, Mozilla

Tony Santos discussed the Mozilla advocacy system, such as how they attempt to embed designers in the dev community to both help with understanding and gather feedback. However, more interesting was how they use Bugzilla to not only track reports but get ideas, namely by mining the conversations. As one audience member pointed out, it seems a long-winded way to get inspiration, but it’s still an interesting concept for repurposing existing data (much as Tom “I’m embarrassed to admit that I’d never done a search terms dump” Hulme used search results as a means of checking for areas the Open IDEO site needed to cover).

Being a Designer in an Open Source Community: Ivanka Majic, Canonical and Leisa Reichelt

Both Ivanka and Reichelt were brought in to help design in a tech-oriented open source communities (Ivanka works at Canonical who is the main proponent of Ubuntu, and Reichelt was brought in with Mark Boulton as a consultant for Drupal 7).

Both espoused similar points:

  • You need to be able to explain and advocate why a design is done in a specific way (and ensure developers have the right language to be able to question its feasiblity)
  • It will affect the way you work for the better. Reichelt has adopted a lot of the strategies
  • Let people do what they’re good at (be it designers doing high fidelity details or developers implementing features)

However, their experiences have been markedly different. While Ivanka has had reaonable success with having pretty much whatever was necessary developed, Leisa grappled with getting the right level of detail for communicating (what she presented was too abstract) and not getting the right information back either (namely if a feature was so problematic that it might be better canned).

One thing that perhaps wasn’t made explicit (though Leisa mentioned it later) was that how designers are brought into an open source system can have a huge impact. While Ivanja is a paid and evangelised part of the Ubuntu system, Reichelt (and her design collaborator Mark Boulton) were brought in as contractors/consultants, and arguably were in less of a leadership role. (As someone who follows the Drupal community, Drupal 7 was also something of a turning of a large ship in that not everything succeeded, and in fact some major failings of the CMS as it stands—weird hardcoded elements, bad media handling etc—are being addressed in the upcoming Drupal 8).

Jen Simmons has spoken of similar issues with the Drupal community in a recent podcast.

A taxonomy of openness? Kwantecorp

Over the night, it was repeated that openness is not the same, be it as a consultancy considering open design, doing open design as a company behind open source software, or a consultant working for an open source community.

Lison-based Kwante continued this thread. His company is not only attempting to engage with openness on a number of levels, but also try to communicate these different levels. They were as shown:

Taxonomy of Openness

Taxonomy of Openness

Opening up the Open Design Space through Case Studies

As someone who is sometimes critical of the lack of actual examples shown at conferences and meetups, I was heartened at how the stories from Open Design came from the coalface of successes and failures. Thanks to Mozilla for hosting the event and opening up the livestream for those further afield than London (open design and open access!).

Making The Fastcodesign Title Generator ‘The Co.designinator’

Like many people, I couldn’t help but get annoyed at those “what X can teach you about Y” blog posts in the design and UX industry. While quite a few of them do it, in my eyes the worst offender was Fast Company’s CoDesign.

I’ve also been a fan of how Jessica Hische quickly knocks up websites whenever she has a message she wants to get across e.g. and So, in a post-supervision meeting lull (at Northumbria we meet with our supervisors every two weeks, for me it’s a Tuesday), I decided to embrace what she calls ‘procrasti-working’ and make a Fastcodesign-style “What X can teach us about Y” generator.

Lean Validation, right?

Basic research

Of course, the first thing I did was googled. To my relief (and suprise), no one had done it yet. There were other generators in a similar vein though. My favourite is the Daily-Mail-oMatic which creates Daily Mail scaremongering titles.

The comments on the Greasemonkey script for that generator are also the funniest thing I’d seen on the internet for ages (though admittedly hilarity does circle around the Daily Mail like vultures to carrion).

Greasemonkey Script for Daily Mail o Matic

Greasemonkey Script for Daily Mail o Matic

The main other one of interest was the UX job generator, but I wasn’t so keen on showing all the options in this instance.

Setting it up

While the Dailymail-o-matic has a script that I could use, I decided to go with PHP, partly to avoid client side load, and mainly in case the javascript conflicted with any other scripts.

The text

I decided that truth was stranger than fiction, and that I should start with the existing articles. There were 27 that came up on the search (and another one that got added when I had already done it.

For the purists, here they are:

  1. 5 Things Toddlers Can Teach You About Marketing
  2. What Astronauts And Toddlers Can Teach You About Consumers
  3. What Film Crews Can Teach You About Running A Business
  4. What Fashion Can Teach You About Innovation
  5. What Smart Politicians Can Teach You About Crafting A Message
  6. What The Red Baron Can Teach You About Hiring Creative Talent
  7. 4 Things That Ninth-Graders Can Teach You About Risk-Taking Design
  8. What “Jack And The Beanstalk” Can Teach You About Pitching Clients
  9. What The Wacky Sport Of Chessboxing Teaches You About Creativity
  10. What A Toaster Teaches You About The Future Of User Interfaces
  11. What The 3 Stages Of Love Teach You About Crafting Great Experiences
  12. The Jawbone UP Fails, But Teaches 3 Golden Rules For Experience Design
  13. What Google’s Cafeterias Can Teach Us About School Lunches
  14. What Any Parent Can Teach A CMO
  15. What Bluegrass Musicians Can Teach Business About Innovation
  16. What the Atlanta Beltline Can Teach Us About Urban Revitalisation
  17. What Wayne Gretzky Can Teach Us About Fixing Our Health-Care System
  18. What Oompa Loompas Can Teach Us About Color
  19. Eight Things Stand-Up Comedy Teaches Us About Innovation
  20. What Starbucks Taught Us About Redesigning College Campuses
  21. Method: 4 Things Video Games Teach Us About Motivating People
  22. 3 Things Wile E. Coyote Teaches Us About Creative Intelligence
  23. Five Things IDEO Taught The Feds About Design Thinking
  24. What Designing The New Girl Scouts Innovation Badges Taught Us About Raising Leaders
  25. Five Things Hollywood Teaches Us About Product Design
  26. What “Jack And The Beanstalk” Can Teach You About Pitching Clients
  27. What Schools Can Learn From Google, IDEO, and Pixar
  28. What Digital Designers Can Learn From A Master Motorcycle Builder
  29. What Gandhi (Yes, Gandhi) Taught Me About Design, Leadership, And Technology

So, now, what to do with them?

Just getting it to work

I’d messed around with side projects like this before (like a Kiwi Generator—which probably should have been on Tumblr—which got no traffic so I abandoned). Still, as I didn’t know how this was going to work I wanted to keep it as light as possible. Given I’d have to do matching up of two variables, a CMS like WordPress or Drupal seemed too onerous. So, I decided to hardcode it on

HTML Theming

I’d recently done a hard-coded responsive site so started from the Initializer HTML Boilerplate (though this time used Bootstrap to begin). The actual Co.Design site has a very specific look. While I’m not attempting to replicate the site, I did bring over:

  • the large images that crop at larger sizes,
  • the striped background
  • an open-source approximation of the slab serif headlines with the Google Font Josefin Slab

Good front-end developer, crappy back-end developer

While I’d done pretty well up to this point, when it came to the PHP, I realised something … I’m a pretty crap PHP developer. While I’m happy working with the frameworks in WordPress and Drupal, they have established frameworks to work within. Going from nothing was an entirely different matter.

After making the HTML accept PHP, I created a set of arrays to pull information from.

Each level of the array holds the following data:

  • What random thing will be inspiration e.g. “5 Things Toddlers”
  • The subject e.g. “Marketing
  • The URL of a related article
  • The title of the original article (in some cases I’d had to change the wording to make it fit the “X Can Teach You About Y” format
  • The image URL (I sourced and cropped them)
  • The image Creative Commons (CC) details from Flickr where necessary (as a former editor I’m careful about using images legally)

Once I had the array sorted (it took a bit of checking to remember how array keys worked, I had an array:

$fastco = array(
        "first" => "5 Things Toddlers", 
        "second" => "Marketing " , 
        "reference" => "", 
        "original" => "5 Things Toddlers Can Teach You About Marketing", 
        "image" => "img/toddler.jpg", 
        "imagecredit" => 
        "Image NC-BY-CC by <a href=''>Mike Bard</a>"),
    array("first" => "What Astronauts And Toddlers", 
        "second" => "Consumers", 
        "reference" => "", 
        "original" => "What Astronauts And Toddlers Can Teach You About Consumers", 
        "image" => "img/astronaut.jpg", 
        "imagecredit" => "Image NC-BY-CC by <a href=''>dolmansaxlil</a>")

etc etc.

Using two variables, I then set up random generators for every page refresh. (For those who are curious, there are if conditions for the related articles based on whether the story is an actual headline, a composite, or completely made up).

Ready to Launch

I added a specialist javascript function to make the button reload the page, but apart from that, after about 8 hours of work the title generator was ready to go!

Top Gun Generator

Top Gun Generator. Also, all the clicks before I lost them by moving the domain.

Addendum: Going (semi)viral

On the Wednesday, having got most of it working, I shared it amongst a private group on Facebook (who picked up one bug) and on Twitter. Not much happened. After spending a couple more hours fixing up the bugs and adding a few fake profiles on Friday, I then tweeted about it again on early Friday afternoon UK time.

Then it took off.

I do have a suspicion that I hit the best time to publicise a semi-snarky joke site, as UK people got it at lunch while US people saw it at the start of their Friday workday. Certainly it was fun at the end of the day to see over 500 people had viewed the site. While I know that’s nothing for a number of tech people, for me it’s huge.

Next stages

I’ve already begun moving the site to its own domain (partly as it doesn’t come up on google for any useful search terms at the minute) and will keep adding extra entries. At some point if I have too many entries to easily managed I may dip my feet into moving the arrays into a database

I’m also moving the site to its own domain (I had it on my own site mostly as I couldn’t think of a good name, but thanks to Louise Taylor’s suggestion of Fauxcodesign, it’ll now live at Though I’ve now lost all my clicks from the share bar. Social media fail.)

I’d like to point out that this wasn’t a massive project. I’ve probably spent about 12 hours on it (or about a day and a half) actually working on it, and then a bit of time getting distracted by the social media. If I knew more about plain PHP it would have probably been a bit faster.

If anyone has suggestions as to what I should do with it next, please let me know.

(Oh, and if anyone at Fastcodesign does read this, imitation is the highest form of flattery, right? Please don’t send me a takedown notice!)

EDIT JUNE 2013: Nothing like tweaking away at a site! I decided to create permalinks for the posts so that it was possible to share specific combinations (at present there are over 1100 of them and counting). This required setting a $_GET PHP post. As the values were being calculated using PHP variable anyway, that was a fairly easy task to accomplish after investigating Stack Overflow:

$query = array();
parse_str( $url, $query );
$preset = FALSE; /*Used for testing whether there are variables, to be used for title and meta tags */

if (array_key_exists('first', $query)) {
$preset = TRUE; /*Pre-set from URL*/
$random1 = $query['first'];
} else {
$random1 = floor(rand(0,count($fastco)-1));
if (array_key_exists('second', $query)) {
$random2 =  $query['second'];
} else {
$random2 = floor(rand(0,count($fastco)-1)); 

I could have had the option of pulling in the actual variables e.g. “Tony Soprano” and “Schools” but decided (for better or for worse) that it was more interesting to keep the variable out of the URL so it wasn’t obvious.

The one thing I noticed attempting to share the site on different media was that the title and description tags (which come up on FB links) were generic, which wasn’t of much use. So I also amended the header tags to show the specific results should it be coming from a prepended URL.

<title><?php if ($preset==TRUE){ echo $fastco[$random1]["first"] . " Can Teach Us About " . $fastco[$random2]["second"] . " | " ;}?> The Co.DESIGNinator | Make your own Co.DESIGN titles</title>
<meta name="description"content="
<?php if ($preset==TRUE){ echo $fastco[$random2]["second"] . " is hard. That's why you should be inspired by " . $fastco[$random1]["first"] . " can teach you.";
} else { 
echo "Uninspired for a design or business blog post? Try the Fastcodesign title generator, for an easy 'What X can teach us about Y'. (Though occasionally the articles might already exist).";}?>">

Editorially: First Look

There’s been a recent upsurge in apps and services for writing and document authoring.

So far, we have

  • solo writing environments: be they hard-core systems such as Scrivener, or ‘just-write’ programs like IA Writer or Omwriter
  • collaborative authoring tools such as Basecamp, Google Docs, and Evernote. They’re useful but horrid to write in, do referencing, or anything particularly writerly, and
  • Microsoft Word, which for all of its issues is great for reviewing and sharing.

(Thanks Mike Press for putting it so clearly!)

But what about actually doing proper online writing and collaboration? For a lot of us that work a lot writing online, documents often end up with a lot of roundtripping. It might start in Google Docs, then WordPress or Word. Or be an Evernote collection moved into Scrivener.

The new Beta Editorially is explictly aimed at filling this niche. As the site is in beta and invitation only, for many people this is pretty much behind a curtain. What was there?

Trying it out

Given that Editorially is meant to be collaborative (and that a number of people I know do a lot of writing both on and offline), I asked on twitter for people interested to try collaborating on a document. (The invite for Editorially allows you to add three others, which is just enough to get a
feel for what would happen). Christian Perfect and Mike Press offered to try it out.

The reviewing team

The reviewing team

Incidentally, they were able to come at it from different angles as well, as Christian is involved with a number of online magazines and educational resources, and Mike has written a number of co-authored books (and even has a section on his own website dedicated to working tools).

How we currently work

I’ve been involved with both editing articles for an online magazine, and writing academic papers jumping between a laptop and a desktop at home. I therefore try to keep as much as possible online rather than deal with versioning issues. My standard system with co-authored online articles involves starting on Google Docs before moving to WordPress. When it comes to writing, I start in IA Writer and then move to Word or Scrivener.

Mike Press’s system for writing similarly involves lots of different modes:

Currently I use IAWriter and Evernote to pull notes together and to gather ideas. These I pull into Scrivener, along with other more detailed research material. The draft gets puts together there. Working with a co-author, I’ll import the draft into Word and send it the document to them. They will review and edit in Word. Then I’ll pull it back into Scrivener. It’s a damned clunky system. But it works.

Look and Feel: Lovely

One of the team behind Editorially is legendary designer Jason Santa Maria, so it’s not surprising that the interface is as beautiful to write with as IA writer.

Responsive Set

The interface, working on a number of devices

However …

A Lost in Space Interface

If there’s one issue with the site at present, it’s that it’s a little too clean and tidy. It’s taken a few hours of investigation to find a lot of features, and this process was repeated when I invited others to collaborate.
Here are some examples:

  • Word count: appears at first to be missing. This was quite rightly a deal breaker for Mike: “like caring about the craft of quality tailoring, but not providing your tailors with measuring tapes.” However, it turns out that if you click on the title at the top of the page you get the word (and character) count. That’s great once you know it, but I doubt that anyone would click there unless you were trying to change the document title. Speaking of which….
    Word Count

    Where’s the word count? Oh, there, when you click on the title.

    [EDIT 6 APRIL: this has been fixed, as the word count is now available on the right and side of the page under a Google account-like cog icon]

  • Changing titles is hidden on the dashboard under options.

    Renaming is under the Dashboard

    Renaming is under the Dashboard

  • Posts don’t always lead to the edit page (though clicking on the pencil edit button will get you there). This is probably because of its focus on editing and collaborating rather than just writing.

There are also a few other hidden features that aren’t immediately obvious:

  • Saving is automatic, but there is an option to save with a comment (save with note under the clock icon, or Ctrl+Alt+S).
  • Under this is also a version view (see below).

Formatting: Markdown or Bust

Editorially uses a stripped down version of Markdown. And no other options. I’ve got into using Markdown as of late as I get involved with Wikipedia (and I’d argue that their version of formatting is even weirder). However, as Mike pointed out, a lot of writers don’t necessarily want to use Markdown:

Markdown Come on? Are you serious? This takes me WAY back to the days of Wordstar (yes, really I’m that old). With all that clunky formatting, typewriters were still giving Wordstar a run for its money. This is 2013: I don’t want, need or will use a markdown cheatsheet. The company tries to sell me the idea that “markdown matters”. Sorry. I’m a writer; it matters not one iota to me.

Editorially formatting options

Editorial formatting options. The only other option is ** for a line rule (and I found that the ordered list didn’t work!)

Conversely, for those that really use Markdown or other HTML based writing, the formatting is pretty stripped back. Christian tested the various options available (it turns out the only markdown that works that isn’t on the cheatsheet is the *** for a hr tag). While some of those tags are arguably presentation formatting only, it’d be nice to be able to do things like tables.

[ADDENDUM: one thing that a lot of bloggers will attest to his how annoying it is to add interesting links and check they’re correct. In adding all the links for this piece I realised how useful the Editorially system was as it’s easy to both add and check links. Once you get the syntax correct.]

Versioning: Think WordPress, not Google Docs

While Editorially ‘just saves’ like Google Docs and other cloud based systems, it also allows you to save with version notes. (Admittedly, you do have to make a little bit of effort to do this, but it’s no big thing). One nice feature of the site is a visual timeline of changes (something that has always been a bit of a pain with Mediawiki, WordPress, and Google Docs).

Timeline View

Timeline View

Immediately a few issues came up:

  • As it turns out, when you collaborate with others, only one person can edit at a time. This makes it more like WordPress than Google Docs, and is a bit of a pain as you have to ask for permission when it comes to editing a document. Basically, at present, this is more like passing around a Word document than using an online one.

    Editing with others

    Editing with others

  • We all noticed that there was no option for inline comments (certainly if you’re working remotely it’s useful to be able to at least query various parts of writing without actually changing them). It also seems at present that any person given a reviewing role is given read-only rights, and can’t even leave save comments.
Comments are available, but not inline

Comments are available, but not inline

Import and Export

Both Christian and Mike picked up on the lack of export options (right now it’s only Markdown and HTML). As Mike wrote: “That simply doesn’t work for me – and I can’t think of any serious writer for whom it would work. The text is trapped.”. Christian conversely noted that for people working online (e.g. wanting to copy the text over to a website CMS) there’s no copy option as you have to download and then upload. Import is pretty similar as well, markdown or HTML.

Importing options
Importing options

I also found in the process of moving the text over with HTML that not all the formatting works: namely, I had to redo all of my list items in HTML, which isn’t a deal breaker but a bit of a pain.

HTML output

HTML output

An Alternative: Draft

The closest comparison to Editorially at present is the free-to-use Draft. This site’s strategy for editing is like programs such as Git or Mercurial: when given a link, you work on your own version, then request the owner to merge the changes. It still has more friction than Google Docs, but is less painful than Editorially. It also allows for more options in regards to exporting (including for WordPress). At present, if you’re working on an online article to a deadline, it might be worth looking at Draft (or Google Docs) rather than Editorially.

Final Thoughts

Editorially has clearly identified a niche that has yet to be filled: collaborative online authoring for serious articles.


The status system looks interesting, though it doesn’t change functionality as of yet.

However, it is still most certainly early days (as their team notes, they’re still very much in progress , and as the quick try out from Mike, Christian and I showed that it’s not there yet for either book writing or online articles. From our informal review, I’d suggest three things that Editorially needs in order to start being more useful:

  • Better findability for the available tools (particularly word count)
  • Better commenting systems, particularly inline comments
  • Wider options for getting the text out of the site, both for book writing and online writing.
  • Depending on the market they choose to aim at, it’ll also be interesting to see whether they enforce Markdown only formatting.

Personally, as someone who does like Markdown, the convenience of writing online and pure joy of the interface means that I’ll probably try and write a fair bit of my thesis in it (and use it instead of IA Writer). When it comes to collaboration, Google Docs is still probably my go-to,  but I’ll be keeping a close eye on how the product develops .

Thanks to Christian and Mike for their input.

Moving from Drupal to WordPress

This website began as a blog. And probably a badly made one as well. Hey, it was 2008, and I was trying to get my head around Drupal 6! Since then, I’ve moved half-way across the world, become a better Drupal and WordPress developer, and generally got into the habit of blogging a lot more.

Which is why it was time to move away from blogging on Drupal. After some consideration, I decided to migrate from Drupal to WordPress.

Why the Move?

Drupal is great for many things. Blogging isn’t one of them. I got sick of the extra time it took to upload images (WSYWIG and IMCE, sigh) and the horrible options for formatting in general. Ever since I’d been using WordPress as part of Johnny Holland, I’d been jealous. The final straw was setting up another domain on WP and live-blogging an event on it as the thought of doing it in Drupal terrified me.

Why WordPress?

There are a lot of options out there these days for writing. A lot of devs like file based systems such as Jekyll and Octopress. However, for me, the importance was ease of writing and adding media. WordPress is obviously streets ahead in this respect. While I’m really getting into Markdown, I can do without it for now as a payoff for easy media integration.

Migrating from Drupal to WordPress

A few points on the setup. I’m on Drupal 7 and migrating to WordPress 3.6.


Not surprisingly, there’s a lot of ways to move content from WordPress to Drupal, but not much the other way around. After getting freaked out reading a number of posts which involved editing databases, I realised the easiest option was just to suck in the content on RSS.

I created a RSS file using the Feed view on Drupal. I then used the Multi-importer to link this to a post.

Note: in hindsight, I’d try to download the file, run bulk changes on image locations etc, and then upload it using the importer.


Images involved a bit of cleaning up on the Drupal server, as imagecache created multiple versions. To play it safe, I copied all the original size files into one folder which I then moved into WordPress. I then used the Add from Server plugin to make them all be picked up in the Media Library.

But there’s a problem! Of course, the old images have the wrong links. I went into PHPMyAdmin and search replaced all old links.


As this was a slow transition, I moved the blog site from a folder to a subdomain. Once the site was working I used .htaccess redirects to match all old urls with the new ones (the mapping is pretty close anyhow).


I’d got annoyed with spam a while back on the Drupal blog so had already moved my comments to Disqus. Luckily, there are fairly easy ways to migrate the content over. Once I installed the Disqus plugin, it was a matter of choosing the best means to migrate. As my top level mapping system had changed slightly (from to, I could use auto-mapping, but as I’d attempted to map all old URLs to new ones, I could use the option of letting Disqus sniff out the 301 redirects.


URL mapping

I assumed that my simple naming system would mean that the URLs would easily map. I didn’t account for one thing. Drupal’s auto-naming URL system strips out a number of small words (‘the’, ‘of’), which WordPress leaves in. This unfortunately meant that I had to go through all of the posts and check for changes. I suspect that for a large amount of posts you would just have to do bulk changes or accept a drop in SEO.

Cleaning up the WSYWIG cruft

The only real disadvantage of pulling from RSS is that you get all the formatting that comes with it. For me that was the original Disqus scripts, and numerous divs from the original feed (though this probably could have been avoided if I checked my Drupal templates).

Linking it all Back

My original all-in-Drupal site included the latest blog posts on the home page as a View. How to do that now? Again, RSS. The Drupal 7 core Aggregator module includes a block for showing feeds (though I had to add a template extra, and suspect I’ll need to make a new view so as not to end up with content duplication/SEO issues).