microbit-animation

A lot of micro:bits from the BBC arrived in the centre where I work, ready to be distributed to North Lanarkshire schools. I’ve taken the opportunity to break one out and have a wee play.

The devices are aimed at secondary so outside my wheelhouse, but I could not resist a wee play.

The microbic works by creating code for it on a computer and flashing it to the device via USB (you can also use bluetooth from a mobile app). There are several different ways to create code. You can do in in the browser with severe different editors, Code Kingdom’s JavaScript, The Microsoft Block Editor, Microsoft Touch Develop or Python. I’ve had a quick try of most of these. You can also use the MU python editor that runs on Windows, OSX, Linux and Raspberry Pi.

Although I don’t really know any python I’ve found that the MU editor the most reliable. The browser based ones have been occasionally flaky, causing me to switch browsers a few times. I also like to have anything stored locally (the browser editor stores in local storage, but that means you need to either get an account sorted out or use the same browser on the same box all the time.)

There are already a nice set of resource building up, I found the Raspberry Pi and micro:bit Playground both useful.

When I was looking at the Tilty Game from the micro:bit Playground I though I might be able to make a ‘paint’ editor. This is the result. (click to start the movie, I’ve just found you can use a gif as a poster frame)

The code allows you to draw on the microbes LEDs, the left and right buttons move the cursor in a horizontal and vertical  directions and a double press toggle the lights.

And here is the code, I used hilite.me to make it look nicer. Not exactly rocket science. I expect there are better ways of doing this.

from microbit import *

Matrix = [[0 for x in range(5)] for x in range(5)]

#set initial position
x = 2
y = 2

def printmatrix():
    for x in range(5):
        for y in range(5):
            if (Matrix[x][y]):
                display.set_pixel(x, y, 6)
            else:
                display.set_pixel(x, y, 0)
    return;
            
#show cursor
display.set_pixel(x, y, 9)
 
while True:
    if button_a.is_pressed() and button_b.is_pressed():
        if (Matrix[x][y]==0):
            Matrix[x][y]=1
        else:
            Matrix[x][y]=0
        printmatrix()
        sleep(1000)
        continue
                 
    elif button_a.is_pressed():
        x = x + 1
        if (x>4):
            x=0
        printmatrix()
        display.set_pixel(x, y, 9)
    elif button_b.is_pressed():
        y = y + 1
        if (y>4):
            y=0
        printmatrix()
        display.set_pixel(x, y, 9)
    sleep(200)

The idea is we store a matrix of which lights are on. The ones turned on are shown by the printmatrix function. They are displayed at a brightness of 6 to distinguish them from the cursor, which is full beam.

The cursor is moved with the left and right buttons. it loops (I wonder if it would be better to bounce it?) Clicking the left and right buttons toggles the light on or of in the matrix. The reset button clears the screen.

I had quite a lot of fun getting this to work, the formatting of the script caught me out a few times. I wonder, if I was smarter, could I take the same approach and make a noughts and crosses app?

Featured image on this post a gif made from BBC micro:bit by Gareth Halfacree used under a Creative Commons — Attribution-ShareAlike 2.0 Generic — CC BY-SA 2.0 License.

IMG_4905

Last week I took the edutalk mic to #OER16: Open Culture The 7th Open Educational Resources Conference.

The idea was to broadcast & podcast the keynote and also get some conversations between various participants.

Broadcasting the keynotes worked well. Getting folk lined up for a chat proved more of a challenge. It seems that most of the attendees wanted to be in sessions! I think this was the most engaged conference I’ve ever been at.

Lucky for me folk were happier to give up their lunch than skip a workshop and I managed to record some fascinating conversations.

I’ve cleaned up some of the recordings and posting them to oer16 | EDUtalk.

It is amazing the privilege that having a microphone gives you. You get to listen to a lot of clever stuff.

In higher education the idea of open education is now well enough established that the discussions have become quite nuanced. There are a wide range of definitions and directions on the open road. Some look at practical issues around, licensing and searching of resources others social or technical ideas.

I’ve not seen much evidence that these ideas are penetrating primary or secondary education in Scotland. I do think that open ideas are equally valid here. A good place for school based colleagues to start might be the Scottish Open Education Declaration.

 

IMG_0049

Me in the Booth, photo Martin Hawksey, lifted from twitter.

Meetings and greetings

It was a privilege to met and chat to folk who I had met before and those I knew only online. Even though I spent a fair bit of time in the booth I managed to catch up with far to many folk to mention.

OER Messages

I’ve not got a wide ranging knowledge of the OER world, but it was pretty obvious there are different interpretations of open, many speakers alluded to that. The First Keynote Catherine Cronin spoke about the social justice aspects.

Melissa Highton @honeybhighton talked about these different kinds of open, saying it doesn’t matter which one you choose as much as that you know the affordances and limitations of each (my interpretation).

There was a general feeling that the more open a resource the more sustainable it is. The more clauses in a license the more likely it is that it could be unusable if the owner could not be connected.

 

Personal learning

For the keynotes I had a very good feed from the microphones in the room. There was a little hiss from the rack. Recoding conversations in the booth was a bit more problematic as the rack were giving off a fair rumble. Usually with hiss I’d move out of audacity and go to GarageBand, this time I stayed in Audacity and used the equaliser. For the rumble I did manage to improve the audio a little with a combination of the equaliser and noise reduction effects.

The audio is not great but I’ve been happily listening to the results while commuting. It is surprising what you miss when you are broadcasting a second listen has been valuable to me. I do hope that the content of the presentations and conversations are widely listened to they messages are worth thinking about..  You can find the audio at  #OER16 AUDIO

 

It was delightful to spend time with people who are gathered, not because they want to sell something, but with a shared idea that is aimed at doing good in the world. It was a privilege to do so, I owe  thanks to the conference for giving me the opportunity. I am particularly aware that my position over the last few years has allowed me to take holidays to be able to attend events like this during term time, an opportunity not many class teachers have and one I’ll miss next session.

Image credits: Featured image, Jim Groom Keynote where he mentioned Edutalk, my own from the booth at the back.. Me with folk, lifted from twitter.

IMG_0044.jpeg

It’s doesn’t seem that long since I posted about leaving the classroom and now it looks like it is time to go back!

In the latest round of council savings my post has been deleted. In fact the whole team I work has been too (posts not people).

The council’s policy is to redeploy staff and it looks like I’ll be redeployed to a school in August.

Although I’ve just written that it does not seem my current post has lasted long, it does feels like a long time since I was organising learning for a primary class.

A lot has happened in that time. I suspect I need a fair bit of re-skilling, apart from changes in curriculum and practise, I’ve not written more than a few words by hand in the last eight years. Perhaps I should stop blogging and start a notebook to get in some handwriting practise.

I am now regretting the abandoning of resources, notes, lesson plans and the like!

I’ll need to think hard about my use of technology. In my previous school I added a lot to my workload by following personal interests and ideas with a bit too much enthusiasm.

I hope this time round I’ll be able to step back a bit and resist the tendency to spend my evenings preparing experimental tech. It may be a good idea to step as far from the keyboard as I can for a while to concentrate on the many other aspects of classroom practise I need to catch up on.

I do want to use technology for now to ask if there is any tips for going back to school after a break of this length. What have been the challenges? Were there any advantages in having a break?

the photo is my own. Chosen as I found it on searching ‘return’, I am not sure if it is appropriate to this post or not but I reckon that a mix of clouds and rainbows probably hints at my feelings.

dangerzone

TL:DR: Cut to the puppies.

When I was working on Glow full-time Ian Stuart talked a lot about the Zone of proximal development . Wikipedia says that the ZPD is The zone of proximal development is an area of learning that occurs when a person is assisted by a teacher or peer with a skill set higher than that of the subject..

This week I’ve had a personal revelation about this zone.

Most of my personal learning over the past few has not been directly related to my profession. A lot has been in the sphere of computers and computing driven by fascination and fun. I frequently take a shallow dip into coding and web development. On of the areas I’ve occasionally tried to understand is Git and GitHub.

Git is a widely used source code management system for software development. It is a distributed revision control system with an emphasis on speed, data integrity, and support for distributed, non-linear workflows.

Quite a mouthful and well above my pay grade. My simple understanding is that git can be used to develop code (or writing) allowing one to experiment without breaking a working system. It can also be used to collaborate with others. It has some educational uses 1.

Git is also difficult, or I’ve found it so. I’ve dipped in and out several times over the last few years but taken away very little. I’ve used GitHub to download software and played about with both the command line and GUI application, but never got further than following instructions.

Over the last couple of weeks I’ve been dippping in and out of Ry’s Git Tutorial – RyPress this really makes sense, and I am making some slow progress but not quite in the zone.

Last week I read couple of posts on Alan’s blog Fork on the Range: Getting Over the Fear of GitHub Forking and Forking Your Way into the Flickr CC Attribution Helper. These offered the opportunity to fork a couple of Alan’s repos (fork = make copies), change some things and submit pull requests (pull request = offer Alan the chance to pull in your changes).

Both examples were very simple to join in with. Nether needed any coding skills. What they did do was offer the opportunity to see the collaborative functionality of gitHub in action. This was enough to take me into the zone.

A few years ago I got a badge: Try Git this feels quite different, a couple of comments from a known friend is on a different level. The step into the zone was serendipitous rather planned by the teacher in this case so I guess this might not be a great example of ZPD, but it feels like it.

Another piece fell into place on Thursday: #tdc1550 Oh No! We missed #NationalPuppyDay Do a Puppy Video 2 This had nothing to do with git, but I decided I could approach the challenge by making a website rather than making a video. I could host that website on GitHub and develop it with some version control to practise the stuff I’d been learning on Ry’s Git Tutorial.

The site: Puppies is pretty silly, but it took a while to put together. And it gave me an chance to repeatedly practise the git commands I’d been learning. I could also easily backtrack through the development:

johnj:puppies john$ git log --oneline
14ed184 Adding credit links for gif and sound
df2914a Fixing title on single.html
0a22006 more explaination & info
d63de49 linking to single.html
e7ffc2e Started on single gif sound combo
a57e6d7 simplfying the starting of audio, adding sound ids t oquery
d99dfc7 commenting out console logging
31adc22 Added # for loading and linking
7612182 fixing the position of mobile button
07678ae moving mobile button
c06acd0 adding button to start sounds on ios
ac233e6 Create README.md
bf7a3f6 added info button and text
2760bb5 add gitignore file
25ba5ab Adding example buttons
cd503e0 Adding a search box
403b1c9 fix credits on first sound
0a80883 Adding credits fro sounds
02b5e24 meta description
18dfa21 fixing height css properly
f0dbc3b fixing height
6d8084b Remving some cruft
8de4425 first commit

I can see that my spelling and typos could be improved. I’ve left them in place here, I don’t know how to fix them in the git log (more to learn).

I am not sure I would choose this process for a similar (or even a slightly more sensible task). Each time I wanted to update the live page I had to go through a dance of several commands. But if I ever got to to something in collaboration with other folk it would be invaluable.

What helped my learning, was two things: Alan’s teaching, arriving at the right time, encouraging me that this was worthwhile; The Daily Create challenge which gave me a playground and a small but friendly audience.

This is probably enough git learning for me for now (unless Alan issues more challenges) but I am in a much better place to move on if I need or want to.

Featured image, one of my own that has zone for a tag on flickr. Filtered to mono as the colours were terrible.

1. For example:

Get started with Git in the classroom | Opensource.com or education/teachers: a place to share ideas around using GitHub for learning

2. The Daily Create provides a space for regular practice of spontaneous creativity through challenges published every day.
Each assignment should take no more than 15-20 minutes. There are no registrations, no prizes, just a community of people producing art daily. Developed as part of the ds106 open course on digital storytelling, TDC is open to anyone who wants a regular dose of creative exercises (and it more fun than jumping jacks, pushups, and P90X).

screen_shotglowing-posts

I’ve started a new blog Glowing Posts | Collecting interesting #GlowBlogs Posts.

The title says it all. The purpose of this new blog is to collect some examples of interesting ways that Glow Blogs are being used. I’ve found some good ones already.

The idea is to highlight posts rather than whole blogs. If you know of any you can let me know via a form on the site, twitter or any other way you can thing of.

I’ve got a few IFTTT recipes on the go. IFTT is a useful service from linking up and pushing information around online services.

In the last week or so I’ve seen a couple of posts about the service, received an email and had an interesting incident so though it worth a post.

First I read this:

Kin Lane mentioned that IFTTT, a service entirely built on APIs, doesn’t have an API. That bothered Kin and the more I thought about it it bothered me. So I figured I’d start disentangling myself from IFTTT.

from: Shifting out of IFTTT – Bionic Teaching

I then had the problem illustrated by the screenshot at the side of the post. I have a recipe that posts my instagram photos to a blog. The blog then tweets them out and another recipe posts the images on to Flickr. This seemed to go a bit off the wall posted multiple times for a couple of photos and therefore my twitter timeline was filled with repeats.

I would rather this did not happen.

Next this:

Imagine if your sewer pipe started demanding that you make major changes in your diet.

Now imagine that it got a lawyer and started asking you to sign things.

from: My Heroic and Lazy Stand Against IFTTT (Pinboard Blog).

Pinboard is one of my favourite online services. I got an email from IFTTT saying that they would no longer be supporting pinboard unless pinboard made changes to their service.

All this got me thinking that there might be a way to do this without IFTTT. Most of my recipes are for pinboard, but I though to start with something that might be simpler.

Photo Flow

A while back I blogged Make you own SPLOT about a flow powered by IFTTT from instagram to blog to flickr. I like the system, but wonderd if I could DIY without IFTTT.

A while back I’d made a page to grab my instagram photos so I thought I could reuse that to create an RSS feed and then pull that into the photo blog using the FeedWordPress plugin. It was not too hard.

The feed is produced with php file and basically is this( I’ve taken out some caching code):

echo '<?xml version="1.0" encoding="UTF-8" ?> <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"> <channel>  <title>Insta john</title>  <description>some instagrams</description>  <link>https://www.instagram.com/troutcolor/</link> <atom:link href="http://johnjohnston.info/oddsandends/instarss/" rel="self" type="application/rss+xml" />';    
$url="https://api.instagram.com/v1/users/7835090/media/recent/?client_id_=CLIENT-ID-HERE&count=2"
$json =file_get_contents($url);
$jsonA=json_decode($json, TRUE);
foreach ($jsonA['data'] as $post) {
 echo '<item>';
    echo '<title>'.($post['caption']['text']).'</title>';
    echo'<description><![CDATA[ <img src="'.($post['images']['standard_resolution']['url']).'"> from <a href="'.$post['link'].'">instagram</a> ]]> </description>';
    echo '<link>'.$post['link'].'</link> <guid>'.$post['link'].'</guid>  </item>';
}
echo ' </channel> </rss>';

I’d guess this is not the prettiest piece of code but it produces a short (2 items) RSS feed that FeedWordPress can use.

I’ve also installed the FeedWordPress Advanced FiltersPlugin after reading about it here: Field Botany WordPress Site Breakdown – Bionic Teaching. This allows me to copy the image onto the WordPress site as opposed to keeping it in instagram. It also lets me add it as the featured image which works well with the theme on that blog. Until I am sure it is all working I am posting the photos as pending review, but if it all looks good after a few more pictures I’ll flick the switch and let it run.

There may be trouble ahead

I had just grabbed the code from my old page, including the info needed to connect to instagram’s api which I had set up before. So I checked out the Instagram API page where I read:

Any app created before Nov 17, 2015 will continue to function until June 2016. After June 2016, the app will automatically be moved to Sandbox Mode if it wasn’t approved through the review process.

from: Instagram Developer Documentation

Which sort of sounds like the API will be for more professional sorts than myself. I guess I’ll find out in June.

The other news was that IFTTT has backtracked allowing users to continue to use pinboard recipes without asking pinboard change its system. Hello Pinboard Customers, From Linden Tibbets, the CEO of IFTTT a blog post by Kin Lane, has the details. The post also repeats the waring that IFTTT, by not having an API itself IFTTT might not be something to depend on.

All of this change reminds me of how shaky a foundation we are building our online worlds on. This makes IndieWeb idea even more attractive.

figlet

‘Points & grunt’ or ‘eloquently instruct’

A couple of weeks ago Oliver Quinlan was a guest on Radio EDUtalk. The thing that stuck in my mind the most from the episode was this idea. Oliver has now written a bit more about it on his blog.

The command prompt allows you to use the power of language to interact with a computer. In comparison, clicking around in a  desktop environment is akin to pointing and grunting. Getting people to do things by pointing and grunting is OK at first, but as children we naturally put in the effort to learn how to move beyond this to get things done quicker, more precisely and more elegantly.

‘Points & grunt’ or ‘eloquently instruct’ – Language & computers – Oliver Quinlan

I’ve often struggled to explain, even to myself, why I enjoy using the terminal application. This is the best elevator pitch I’ve heard.

I am no command line expert, but I end up using it for small things or interesting experiments most days. I guess my first exposure was on the introduction of Mac OS X in 2001. Af first it was something to use occasionally for system settings that could not be done in other ways. Slowly over the last 15 (eek!) years I’ve used it a bit more and slowly learned. It is not something you need to be an expert to get use from. For example Batch Processing MP3 files is probably not eloquent but it saved me a huge amount of time.

For most of the time I’ve been using the terminal I though of it as a somewhat old fashioned process. It is now fairly obvious that it will be in use for some time yet. This week the news that Microsoft is bringing the Bash shell to Windows 10 brought that home.

It is worth mentioning that there is an amazing amount of information on using the command line on the web. I can’t remember when a search has failed to help me learn.

Elsewhere Oliver recommended Conquer the Command Line as a good resource to getting started. From the MagPi Magazine available as a few PDF.

 

Featured image: my own, grabbed with LICEcap.

hc-handbook-crop

Linked from several mac blogs and news sites is the HyperCard episode of Simple Beep (Simple Beep is a podcast looking back at the history of Apple and the Mac community).

HyperCard is a pice of software that certainly changed my life, turning me from someone who had no interest in computers at all to someone who spent 10 years typing HyperTalk. I’ve blogged about it occasionally. The podcast is great. And there are great set of links in the shownotes including:

This reminds me that you can Run a Hypercard stack on a modern Mac (A quick test and I am excited again) and that I have a Color Classic that I should boot up sometime.

The featured Image of this post is one of my, many times read, HyperCard Handbook.