Some Simple Aggregation

A couple of weeks ago I kicked of a blogging bootcamp as part of my day job. The idea is to help folk through getting started with class blogging. Each week for 10 weeks there are, technical tasks, discussions and blogging challenges which participating classes (or teachers) can choose to do.

My thinking is based on my own experience in a few online classes/MOOCs and, of course ds106. The bit I really wanted to do was aggregate the participants blogs back to the bootcamp blog. Hopefully this would lead to some connections and community.

I had hoped as part of the progress with glow blogs we would by now have had a plugin in place that would help with this. Unfortunately this has not happened yet.

My next though was to set up a blog outside glow, install the necessary plugin (FeedWordPress probably) and aggregate the posts there. This aggregation could be brought back to the bootcamp blog as an RSS feed.

I ended up going for much less work. I use Inoreader as my RSS reader. It has the rather nice feature when you can get an RSS feed for any of your folders of feeds. This is how it works.

After participants make their first post, they send me a link. We are asking them to categorize their posts bootcamp so I use the feed for that. For example Wemyss Bay Primary P6, their bootcamp category is:

So the RSS feed will be

I add that to my Inoreader and put it in the BootCamp folder:

inoreader screeshot

From the Folder Settings menu I can then get a link to the aggregated RSS feed and a page that aggregates all the posts too.

Back on the bootcamp blog I’ve added a RSS widget to the sidebar using this feed. This displays the last 20 posts from participants on the blog.

rss widget on bootcamp blog

I’d prefer to show more of the participants post on the main section of the blog but I believe this is a further wee story that shows how nice this sort of technique could be. If we get a suitable plugin in glow blogs, we could run all sots of ‘events’ and learning experiences by just aggregating participating class or school blogs through a ‘mothership’ blog.

One Bug’s Life


I’ve not blogged much about work recently, but this story is a good one if somewhat tangled.

We are working, in the Glow blogs team, on the next release. This is mainly to address any problems with the upgrade to WordPress 4.0.1 that came out in January.

My work includes: watching reports come through the help desk; passing on problems that come directly to me (twitter, email and phone) through to the RM. I do a wee bit of tyre kicking and talking to the test team on the way.

On Tuesday I got a mail from a teacher, to the effect that the link to My Sites from the Local Authority home pages didn’t work. Talking to Grant, one of the test team, I found out he was chasing the same problem. We kicked it around a bit and found that if a new users creates a blog on their LA before accessing My Sites, the link did not work, it leads to a list of blogs that the user has a role on.

This is not a show stopper as the user can click on any of the blogs and then the My Site link in the Admin Bar as a work around.

While testing this out we noticed that although the Admin Bar is visible on any Glow blog in your Local Authority, the My Sites link on it leads to the same error (with a list of your sites page).

Thinking these were linked I raised a call to the RM help desk. This got passed through to the team at Automattic. They have quickly fixed the first issue and recorded the fix in our system (JIRA) for following development. The code will be in the next release, hopefully in tow or three weeks.

At this point we asked about the second bug, we were told that is was in WordPress core and the team had not only reported it but proposed an initial fix. It is worth pointing out that this was put into the WordPress tracking system at quarter to eleven on Thursday night:

#31314 (My Sites admin bar link broken when on blogs you have no role on) – WordPress Trac

You can see from the linked page, that the ticked was closed at 6:29 on Friday morning. The fix and some improvements are currently attracting the attention and input from three other developers who are completely unconnected from Glow.

So What?

The people that helped with this one included:

  • The teacher who reported the problem
  • The Testers contracted to the Scottish Government
  • The RM Help Desk who are the first point of contact for Glow fault
  • The Developers from Automattic working for Glow
  • WordPress developers who have nothing to do with and likely no knowledge of Glow

Which quite a complex system, but it seems to be working. Most of these people are on the hook and doing their job, but I wonder if a bug in a commercial system would be fixed so quickly? We don’t have the bug fixed in our system but it looks good for being sorted out in a subsequent upgrade.

For me this was pretty exciting. It feels pretty good for those of us who think that Open Source and Openness in general is a good idea in Education.

10 Years Blogging


Ten years ago today I made my first post on this blog. 882 post (plus this one) for a total of over a quarter of a million words. I’d posted to blogs before this one, but this one stuck.

You would think, by this time, I’d have some sort of plan going, but no, this blog continues to be pretty haphazard without a real sense of audience or single purpose.

It does provide me with a thinking tool and scrapbook which I continue to enjoy and that is still enough for me.

The blog has been the starting point for all sort of online and offline experiences. I’ve dallied with other online spaces and playgrounds, but keep coming back here.

The blog itself has moved and changes: starting as a sub weblog of my school/class site using pivot; it moved to this domain and got a change of name when I left school; got upgraded to pivotx; and then moved to WordPress. I still think of it as the same place.

Along the way, I’ve broken links, lost images and comments, but still have a reasonable portfolio of my ramblings and technological roaming.

The image with this post is to remind me to try and reflect rather than ramble;-)

Blogging Bootcamp #GlowBlogs

Now we have moved Glow Blogs into the 21st century we are going have some fun.

The idea of the bootcamp is a place were folk can get help in starting or improving their class blogs.

The bootcamp will take you through creating a blog, adding features and a range of blogging activities. Classes will have the opportunity to link up with other glow blogs and the world wide blogging community.

Each week there will be ‘technical’ tips, blogging challenges and discussion points that can be carried out in your classroom and on your blog.

What you need: A Class, somewhere to blog (glow for example). No technical knowledge needed.

While most of the technical support will be aimed at glow users the bootcamp is open to any classroom.

Details of how to sign up are on the Blogging Bootcamp blog

Making a Curation

Some great reading on the train this morning. I’ve tended to swallow whole the idea of making being one of the best ways of learning. As usually with things that you hold dearly but perhaps without a lot of analysis it is nice to read some different opinions.

The bloggers here are thinking at a much deeper level that I venture, and I recommend following the links.

I started on Hapgood.

What would happen if we got over our love affair with creators? What would happen if we collapsed the distinction between maker and taker, consumer and producer, not by “moving people from consumption to production”, but by eliminating the distinction? What if we saw careful curation of material as better than unconsidered personal expression?
“Users” | Hapgood

Which linked to this:

You see critiquing isn’t a review where you let fly with your opinion, no the purpose of the critique is to make the work stronger, better, and more fitting.
Critique & Creation | Heart | Soul | Machine


Walk through a museum. Look around a city. Almost all the artifacts that we value as a society were made by or at the the order of men. But behind every one is an invisible infrastructure of labour—primarily caregiving, in its various aspects—that is mostly performed by women.
Metafoundry 15: Scribbled Leatherjackets


A quote often attributed to Gloria Steinem says: “We’ve begun to raise daughters more like sons… but few have the courage to raise our sons more like our daughters.” Maker culture, with its goal to get everyone access to the traditionally male domain of making, has focused on the first. But its success means that it further devalues the traditionally female domain of caregiving, by continuing to enforce the idea that only making things is valuable. Rather, I want to see us recognize the work of the educators, those that analyze and characterize and critique, everyone who fixes things, all the other people who do valuable work with and for others—above all, the caregivers—whose work isn’t about something you can put in a box and sell.
Why I Am Not a Maker – Atlantic Mobile


I’m always fascinated to see how my work in ed-tech is deemed “emotional” or dismissed as merely “cultural analysis” – gendered descriptions of what I do (subtly, overtly) perhaps.
Re-Building the Blog

I’ve not come to any conclusions here but it makes me think.

I got up this morning and didn’t make the bed, made some breakfast and just caught the earlier train. This let me make the walk from Waverley down to work rather than catch a bus.

Watching the scaffolders run scaffolding up a new building, helping complete the Architect’s vision, hoping to get to work in time for the barista to make me some coffee before the first meeting.

As I walked I am making this list; Wondering if a found poem is made, our national poet is called the Scots Makar; If I write a poem from the names of boats in a harbour am I a maker or curator; Artists, it seems to me, depend on other artists, critics, curators and caregivers for their making.

Finally I am thinking about DS106 Art on the couch my friend Mariana’s thoughts about learning thro critique.


Glow Blogs WordPress 4


Yesterday at 4 O’Clock the glow blogs system was upgraded to WordPress 4. The site was down for around 4 minutes.

Glow blog are now running on WordPress 4, not much a a big deal as most other WordPress blogging site are doing the same. But we just upgraded >140000 blog for WordPress 2.9.2 to WordPress 4.0.1 a pretty amazing effort. Setting up from scratch would be simple enough, looking after all of the foibles of a creaky system a bit more complex.

It has been a pleasure working with the Blogs Team for this release, including:

Sonali Nakhate Project Manager; Turnbull and John MacLeod from the technical team at Scottish Government; Grant Hutton and David Orr of the test department at Scottish Government and Code For The People, now part of Automattic who managed to get aquihired by the company behind during the project!

We also got a ton of support in all sorts of ways from the extended glow team at the Scottish Government and Education Scotland and from many in the wider Scottish Education community.

A First Step

Although this is the second phase of the blogs project it is really just the precursor to the next phase. We are starting to discuss the plans for phase three now. This is, I hope, the really exciting bit…

The Glow Help Blog is being updated and I am listing some of the main changes here: Blogs Update Phase 2 WordPress 4 – Glow Blog Help.

Life in Links 2015-01-11

Some links I’ve Pinboarded this week:

2014 Look Back in Number

My last post was review of my 2014 on Flickr, this is a quick list of some of my other online lives in 2014:

John’s World Wide Wall Display, this blog

57 blog post here this year. My favourite is probably RSS Serendipity. 57 compares to about a 87 post average over the last 10 years.

  • 2005 - 91
  • 2006 - 205
  • 2007 - 135
  • 2008 - 55
  • 2009 - 45
  • 2010 - 49
  • 2011 - 83
  • 2012 - 92
  • 2013 - 63
  • 2014 - 57

106 drop in

Another 20 blog posts on my DS106 blog. Can’t choose a favourite there, my 106 posts have an even smaller potential audience than here, but I love them more for that!

I also knitted a few webpages linked to DS106, DS106 GiF TV is by far the most interesting and fun (if somewhat incomprehensible ).

Ds 106 gif tv Skull

Pinboard, link collection

1561 pinboard links Pinboard: bookmarks for johnjohnston my delicious replacement, a lovely service.


103 gifs posted to tumblr jjgifs, March with 22 gifs was the busiest, not sure what I was thinking of…

Two of my gifs were featured on the Tumblr radar, skewing my stats somewhat and making my tumblr output the most popular of my online publications by a long way. It was quite amusing watching the likes pile on, as far as I can see the radar is pretty random but this many likes cheered me up at the start of 2014.

Tumblr Stats 26 010 2014


17 Youtube videos posted: YouTube John Johnston the most popular with 340 views was Journey into DS106 tdc762 most of the rest were ds106 inspired too.


6 Videos posted to vimeo, I think of vimeo as a bit more seriously than youtube. 4 out of 6 of these were for the day job.


We produced a fair number of podcasts over on Edutalk this year, it is a great experience, we have had some lovely conversations and learnt a lot talking to all sorts of folk. Lots of interesting plans and possibilities for 2015.

New Spaces and Places

I’ve used a few new services in 2014: Known, What do I Know?; Fargo (I started playing with Fargo in 2013, and have blogged about it a few times); other software from Dave Winer and Smallest Federated Wiki, which I am only just beginning to get a clue about.

I also set up home in a ~tilde club: where I’ve also set up a River4, another RSS application from Davie Winer.

All of these places are really interesting and I hope to be digging into them more later on. I’ll post some basic information soon.

Twitter, Instagram and places I might have forgotten

I’ve not gather stats for these places, but I tweeted a far bit and posted quite a few pictures to instagram. I am sure I’ve posted other things in other places too….


This will bring the 10th birthday of this blog in February, as usually I post an unstructured pile of stuff lacking overall focus or any hope of a plan. This might not make this a great blog, but I continue to enjoy the process.

Previous Years

I’ve just added a page to the blog that lists All Posts, made it easy to find other end of year reviews, not a lot of consistency of approach:

Flickr 2014 and DIY pummelvision

A few years back I used pummelvision to make a video of all of my flickr photos. Pummelvision was an online service where you pointed it to your flickr stream and it built a video for you and posted to vimeo. It could also take input from tumblr and facebook.

I though it might be interesting to make a similar video for my photos this year. However going to look for pummelvision drew a blank, the company had closed. I then though It might be interesting to try to create a similar video. From my memory and looking at my old video, pummelvision made a video with no transitions and very fast. As far as I remember it just used one tune. I downloaded my old video from vimeo and extracted the audio file using QuickTime pro. I took a guess that the frame rate was about 6 photos per second.

Grabbing the images

I guess there a few ways to grab all your photos from flickr, but this is how I did it. If I was doing it frequently I’d look into automating it, but this was a once off, or once a year if I do it again.

Flickr’s api would allow you to do this, but it seemed a bit excessive to try and write a pile of code. The Flickr API has a section to test all of the command so I headed to: Flickr Api Explorer – There I put my own user ID in, set the min_date_taken and max_date_taken, increased the per_page to 500 and added the large photo url to the extras field.

This produced an xml file will all the information:

Flickr xml

I then extracted the 397 urls from the text. There will be many ways to do this, but I am experimenting with the Sublime Text application at the moment, it found & selected all of the https: occurrences and the with cmd-shift-right arrow expanded the selection to the quotes. One copy got all of the files!

Once I had a list of urls I edit those so that each line was:

curl "" > image_183.jpg

With the numbers out the image sequential and padded to 3 characters, eg image_001.jpg, image 002.jpg etc. I also numbered then in reverse so the oldest photo would be first.

I saved this text as a file, and moved into the terminal:

cd path/to/thefolder
chmod +x

This code set the file to executable and then ran it, the terminal filled with text and the folder with images. Curl is the command-line tool for downloading files.

Sizing images

Downloading the large size gave a folder full of images but some where landscape and some portrait, ie 1024 × 768 or 768 x1024 I need the images to all be the same size. So i used the sips utility to first resize them, sips --resampleHeight 768 *.jpg, then to pad the portrait ones: sips --padToHeightWidth 786 1024 *.jpg

Which gives me pictures like this for the portrait ones:

Img 076 toad

Making the movie

I discounted using iMove, moviemaker or the like as I wanted something quick (not necessary quick this time…) and that could be automated. I am also not sure in iMovie can show as fast as 6 per second. (Update, a quick look shows iMove can set speed to fractions of a second per frame.)

I though of a couple of ways to make the move, using Quicktime pro or ffmpeg. Quicktime pro proved the easiest option, opened the app and File -> Open Image sequence…, choose 6 frames per second, then all I had to do was save the movie.

Unfortunately Quicktime pro has been replace by Quicktime and it is a bit of a bother to get your old QT pro working if you had paid for a license. So I though I’d figure out ffmpeg too.

With great power comes great complexity

FFmpeg is A complete, cross-platform solution to record, convert and stream audio and video. It is a command line application and has a lot of variables. I can usually find out the right command with a bit of google. This one took quite a lot of google and failures. Most of these failures came from me trying to set a framerate, which lead to skipped frames. Eventually I dropped the idea of using the framerate options and got a very (too) fast video with this:

ffmpeg -f image2 -i IMG_%03d.jpg -c:v libx264 -pix_fmt yuv420p out.mp4

Note to self, in the -i, iput option IMG_%03d.jpg means all the images with 3 numerals, eg 001, 002… 375

I then slowed it down a little with this:

ffmpeg -i out.mp4 -filter:v "setpts=4.0*PTS" 2014-flickr-show.mp4

And added the audio:

ffmpeg -i 2014-flickr-show.mp4 -i pum.mp3 -map 0 -map 1 -codec copy -codec:a aac -strict experimental -b:a 192k -shortest 2014-flickr-show-audio.mp4

It took a fair bit of google to get the audio right too, the -codec:a option seems to sort things out.

Whys and Wherefores

As noted above, I could have done most of this with iMovie. But by using ffmpeg or QT pro, I’ve the opportunity to play, learn and possibly end up with an automated system. It would seem well within the realms of possibility to have a script that used the flickr api to download a bunch of images, perhaps for a year or with a tag and make a movie from them.

I’ve now figured out how to do most of this by piecing together the above fragments and finding out a bit about loops and renaming files, but I’ve no idea of how to create a bash script that will replace my hard coded tags, usernames ect with input, more to learn.

Once you have a lot of jpgs

You might as well do other things with them: Flickr 2014

iOS Workflow

I quite enjoy scripts and things that make my computing life a we bit easier. I’ve blogged a few times about AppleScript which I find very handy on my mac. On my iPhone I’ve never really found a way of automating things that stuck with me. I’ve downloaded and played with a few apps, but mostly they have felt a bit too convoluted for me.

I do regularly combine application to get a result, the so called app smashing, although I prefer the less destructive sounding playflow (I think I am the only person who does).

Workflow Icon

I’ve now found an application which looks like making this sort of thing on iOS a bit simpler: Workflow.

Workflow is more like Automator than AppleScript as it uses the same sort of block steps. You can combine any of the actions to create workflows. These steps or rather actions can deal with images, text, maps in all sorts of ways.

The think that makes this application stand out is that it has arrived hot on the heels of the iOS 8 improvements to inter application communication. You can set the application to the a Action Extension, this means it can be run from the share sheet in other applications. As you can set the input for a workflow to accept different things you can control the sheets where it will show.

In the screenshot below I’ve selected 2 photos and then hit the share button. When I click the Run Workflow button I can choose a workflow from the next screen(shown on the right) . In this case one choice is a simple workflow I made to downsize image an save it to the camera roll.


These workflows are made by dragging and dropping action blocks onto a workflow. Workflows can be set to be run from a icon added to your home screen, the Launch Center app or from share sheets in other apps. The latter can be set to accept different types of data and will then show up in the appropriate apps.

So far I’ve only made a few very simple workflows with two or three block, but there is potential to loop and have if-then type decision making.

Some Workflows

There are over 150 actions you can use to build a workflow:


I’ve only scratched the surface of workflow over the last week or so, but it looks like it could make iOS more fun and effective.

A few links: