iPad coding – useful?

A while back I joined the Mechanical Mooc with a two fold intention, one to further explore MOOCs in a practical way and two, to learn a bit of python. I am afraid I only managed to stay the course for two full weeks. This was in part due to my underestimate of the time involved. I probably spent five or six hours a week over the first two weeks and would have been better taking seven. I don’t consider the time wasted, I learnt a minuscule bit of python and had a fair number of interesting (to me) thoughts about my approach to learning and online learning in general. I also began to pay a little attention to posts about python that turned up in my browsing and reading on the web.

Recently I’ve seen a few posts about a iPad app Pythonista

Create interactive experiments and prototypes using multi-touch, animations, and sound – or just use the interactive prompt as a powerful calculator.

I read a few of these but didn’t plunk down my £2.99 until I saw this, Automating iOS: How Pythonista Changed My Workflow and The Power of Pythonista 1.2, both blog posts show how to use pythonista, on the iPad, to get things done as opposed to playing or learning. I found I learn how to do things better as part of a ‘real’ task rather than playing. This is not to say my learning is not playful. Often there will be simpler or better ways to do things but I learn something for taking a DIY approach. For example most of my recent posts tagged dropbox are about ways I’ve figured out how to do something that could be done in many other ways.

One of these Dropbox posts is about Blogging via Dropbox, which I am doing with this post. At the time I posted that I had no way to upload images. I do now thanks to macdrifter whose post has code for pythonista to take an image copied to the clipboard, resize it, upload the resized image via FTP and finally copy the URL of the uploaded image to the clipboard.

It was simple enough, even without understanding python to alter the script with my FTP details, change the size and produce jpg files rather than pngs.

To produce upload this image and show it I had to:

Switch to the photos app

Find a photo, press on it and copy.

Switch to pythonista chose the script and press the run button

Switch back to nebulous lite and paste in the image link.

This seems as a simple as uploading a file through the blogs web interface.

In School?

There seems to be a few schools using python in computing. I wonder if this app would be useful. Some of the examples involve games or graphics, which I found off-putting and difficult, these may be just the thing to engage pupils (who possible have less interest in resizing and uploading graphics).

Recently I was discussing the various mobile projects running in Scotland with a friend, they mentioned that they though that iPad projects relied too much on Apps that make things to easy for the learner, iMovie trailers being one example, and compare this to a ‘richer’ learning environment provided by scratch. There is a whole other discussion waiting there but I see several interesting and powerful ways of coding developing on the iPad, Pythonista being one. Codea – iPad and ScriptKit – Drag and Drop Programming for iPad. another two. These two use The Programming Language Lua.
ScripKit looks interesting because:

ScriptKit is a touchable programming environment for building simple mobile prototypes on iPad using native iOS UI components and social media APIs, available via an intuitive drag and drop interface.

The social media APIs is exciting cause it means access to Dropbox, Facebook and Instagram. ScriptKit comes with some nice example but needs an in app purchase at £7.99 to edit the scripts. I am not ready to use it so have not bought it yet.
And Codea

Codea for iPad lets you create games and simulations — or just about any visual idea you have. Turn your thoughts into interactive creations that make use of iPad features like Multi-Touch and the accelerometer.

Back to Pythonista

For me it is early days I just bought the app yesterday, I already appreciate its design and have had hints of its power. It might just keep my python learning curve moving ever so gently upwards.
It is also becoming more apparent that iPads are not only good for creation as well as consumption they are good for tinkering too. As someone who like tinkering this is a positive turn compared to the idea that Apple, and others, are making tools that are increasingly locked down.