Perfect, SwiftyGPIO and Unique Uses for Swift

I’ve been spending a lot of time working with Swift lately. I’ll be teaching another class in January and likely others in coming months as well. As a result I’ve been putting a lot of effort into learning as much as I can in my spare time. To keep things interesting, I’ve been researching alternative uses for Swift beyond iOS and macOS.

My main project is a SpriteKit game for the AppleTV. ?Games on the Apple TV seems like an underserved market and I think a decent game can do really well there. Plus, I think it’d be really cool to see my game running in 4K on the 75″ Sony we bought a few years ago. We’ve just recently found an artists to work with, so hopefully I’ll have some sneak previews soon.

The second project, that I haven’t really put much effort into yet, is using Swift as a server side language and creating a RESTful API. I want to relaunch the NSCoderTO website and thought it’d be fun to write the back end in Swift using Perfect. There are quite a few contenders in the server side Swift space right now, including ones by IBM and Amazon, but Perfect’s parent company has been a sponsor for NSCoderTO in the past, so I thought it was only fitting that I use their framework.

Lastly, there is an open source project online focused on getting Swift running on ARM processors. Along with that there is a project called SwiftyGPIO?that provides a library for using the various interfaces on single board computers like the Raspberry Pi, Beagle Bone Black and Asus Tinkerboard. I’ve been experimenting with robotics with my daughter and I’d love to take the project I’ve built in Windows IOT/C# and port it to Linux/Swift. So far, I’ve managed to get Swift compiling on a Raspberry PI 3B+ running Ubuntu 16.4. This alone was no easy feat but my next step will be to get it controlling a motor driver board like the L298N