search and fetch

Over the years I’ve been very keen on Creative Commons and using CC material in blog posts by pupils.
Pupils (and adults too) find attribution difficult.

Back in around 2008-2009 I made A flickr CC search toy aimed at pupils, to help them attribute. Later I added a feature that stamped the image with the attribution, which hopefully was easier than embed code. Later again, in 2010 I made FlickrStampr the same sort of search but squarely aimed at users of iPod Touches. At the time I believed that iPod Touches would be big in schools (Lot of ipodtouch posts here).

Both of these webpages were knocked up fairly quickly and had various modifications over the years. A couple of years back I made the iPod size one a bit more responsive so that it displayed a little better on an iPad or computer. I’ve now taken this and worked on it a bit more with the intention of replacing both of the above pages.

Earlier this year Jo Badge pointed me towards Photos For Class which is a very similar beast, except that it is built by professionals. I wonder if I inspired them?

So over the last couple of weeks I’ve been updating a new version: FlickrCC Stampr combining and improving (I hope) the two pages.

This new one will search flickr for cc images and then give you a stamped version or embed code. If this new page works out I’ll redirect the old pages to is soon.

I got boost to my interest in this playing with Alan’s flickr attribution helper: Now Three Flavors of Flickr CC Attribution Helper. I found out how to and added the code that gets all available sizes from flickr and lets you embed or stamp any particular size.

fcc

 

If you have an interest in this sort of thing, please give  FlickrCC Stampr a try. I’d be interested in any feedback.

31314

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 two 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.

There is obviously a lot of deep thinking to be done here, my initial though holds, I don’t think the internet is unique. we have managed to mismanage a lot of other things collectively, ozone layer, environment, health the net is no different. Except it might be easier to sort out internet economy and culture than the environment.

As for artists, the internet can at leat give creative types the chance of bypassing the hegemonies that control publication and access to audience?


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

blogs_glow_v3.3

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 WordPress.com 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.

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 – flickr.photos.search. 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 "https://farm4.staticflickr.com/3897/14598292323_ae6462fa07_b.jpg" > 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, dl.sh and moved into the terminal:

cd path/to/thefolder
chmod +x dl.sh
./dl.sh

This code set the dl.sh 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

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.

Sharesheet

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:

Actions

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: