Programming in binary code

Love languages? Try programming!

Programming languages have a lot in common with human languages. For a start, they all have a very particular vocabulary and syntax. You need to learn the rules to assemble meaning. And both machine and human languages are tools for of turning concepts in our heads into action in the real world.

My love of languages blossomed around the same time as my fascination with computers. I’d tinker around in BASIC on my Commodore VIC-20 as a little kid, getting that early PC to just do things. (I know, that really dates me!) And today, I’m lucky enough to have made a career combining those two strands together as an educational software developer.

Works in progress

That said, it’s a career that never stands still. And, just as with human languages, it’s important to maintain and improve your skills all the time. In the same way that ‘fluency’ is an ill-defined and unhelpful ‘completion’ goal, you never really stop learning in the tech industry. There’s no end-point where you down tools, show your certificate, and say “I know it all now!“.

A fantastic source of development training for me of late has been the peer-tutorial site Udemy. I like the nature of the platform, allowing ordinary folk the chance to share their skills (and earn a bit of money from it, too). I also like the pick-and-choose nature of it, where you pay per course, rather than an all-in subscription. That’s one reason I always felt I wasn’t getting enough usage from the industry training giant,

In fact the only downside to Udemy is its odd pricing model. Courses are listed under a ‘normal’, inflated price, but are almost always available at a discount. This discount varies, meaning that users end up course-watching until the price is lowered. Then they pounce, usually at a very reasonable rate of around £10 or so. I realise that the commercial psychology behind it is to increase the sense of bargain, but it does seem a little convoluted.

What I’m working on

In any case – there are some gems of courses on there. That goes especially for those who fancy learning some programming for educational applications. For a brief overview, here are some of the fantastic resources I’ve found useful:

Swift 4 and iOS

Apple introduced the Swift language as a successor to the clunky Objective-C language in recent years. It’s much easier to learn, in my opinion, and is more cross-skill compatible with other programming languages. Instructors have embraced the new language on Udemy, and amongst the best courses are the ones from tutorial guru Ray Wenderlich, and London-based developer Angela Yu. I intended to use their courses as refreshers, but have learnt a huge amount from both of them.

Android and Kotlin

Kotlin has a similar story to Swift, as a new language positioned to supersede and older one. That old one is Java, which is arguably a lot more useful and widespread than Objective-C. However, Kotlin is remarkably similar to Swift in syntax and usage. As such, it’s a pretty good choice to add to your collection if you are aiming for both iOS and Android development.

There is an old-school Android developer on Udemy, Tim Buchalka, who really knows his stuff. He’s my go-to for all my Android courses, and his Kotlin course is probably the most accessible and practical out there.

Not all hard work!

It’s not all hard work, of course. I take a couple of courses just out of interest or curiosity. As a programmer, I’ve always felt a little inferior about my design and illustration skills. Not only that, but I’m often a little jealous of how in the zone and mindful digital artists can get when working. To that end, I’ve been following a great course on creating digital art on the iPad with the Procreate app. Because not everything has to be about languages, programming or otherwise!


Amazon Echo Dot - Alexa for Language Learning

Alexa: Your Personal, Digital Native Speaker

It’s a language learning ‘secret’ that isn’t so secret any more: changing the language setting on your smart devices is a brilliant way to create a personalised immersion environment without going abroad. And the recent explosion of artificially intelligent digital assistant devices is taking this one step further. Voice-activated gadgets, like Amazon’s Alexa, place a (robotic) native speaker right in the centre of your home.

Swayed by the temptingly low price on the entry-level Amazon Dot, I’ve been getting to know Alexa for the past few months. First off, it’s a cliché, but this is definitely the kind of gadget you ‘never knew you needed’. After eyeing the unit with some cynicism for the first few weeks, soon I was constantly asking it to play music, convert currencies and measurements, tell me the weather forecast or simply the time. It’s both easy and fun, and gives you that sense of the future is now!

You digital language assistant

But it’s not just about voice-activating mundane, daily tasks. Ever alert to new learning opportunities, changing Alexa’s language settings was top of the list of experiments to try. And it works a treat, especially for pronunciation; suddenly, I was having to focus intently on expressing my commands in a nice, clear German accent so that Alexa could understand. (Incidentally, I’ve also found switching the language of Apple’s assistant Siri has these great pronunciation drill benefits!)

Interacting is as simple as asking a question like “”Alexa, was sind die Nachrichten?” (Alexa, what’s the news?) or “Alexa, wie ist das Wetter heute?” (Alexa, what’s the weather like today?). For more capabilities – including lots of silly (but briefly entertaining) games – there are hundreds of extra installable skills on Amazon. A useful hit list of the most useful can be found here.

The only snag with Alexa is that it is currently only available in English or German. Great news for Germanists, who won’t feel underrepresented in the language learning world for a change; but a pretty large black hole for everyone else.

Skilling up Alexa as language tutor

However, all is not lost. Users can still download Alexa Skills from Amazon, which augment the device’s capabilities. Already there are a good number of language learning skills, although they vary greatly in quality. It’s clearly early days for the device in terms of educational skills, but the start is promising.

A simple search on Learn Spanish or similar will yield plenty of results for you to try out. Here are a couple of links for the more mainstream languages:

Feedback ranges from decent right down to downright terrible on some of the skills available. However, the facility to give feedback on Amazon is a route for users to shape and improve Alexa as a language learning tool. Try new skills out, and write an honest review for each one – your thoughts will help developers to tweak and adapt Alexa skills for an incrementally better experience.

Watch this space

In summary, Alexa is an excellent investment for Germanists, but hit and miss for students of other languages – at least for the time being. There is a sizeable clamour around Spanish support on Amazon’s developer space, with pressure for other languages too. It would only seem a matter of time before she becomes more than just bilingual.