Swift Playgrounds Homepage

Swift Playgrounds Makes Learning to Code Fun

Apple introduced Swift Playgrounds, an app designed to teach the Swift programming language, at WWDC 2016. We’ve had a chance to experiment with it since then, and can say without reservation that their first foray into teaching kids how to code deserves top marks. They have enabled learning to code to be fun and addictive, even for those who aren’t the “coding type.”

The app feels like a puzzle-solving game, reeling you into the challenge while introducing coding concepts and building skills step-by-step. After completing a challenge and receiving encouraging praise from the app, we found we were motivated and eager to move on to the next one. One tester expected to finish two or three challenges to get a feel for the app, but ended up finishing over fifteen lessons because she was so engaged with it. The pace, lesson structure, and challenges all prove to be well-designed from an instructional standpoint. This app will likely teach many future programmers how to code. Read More

Always Inspiring: #WERUNDC

Our team members regularly inspire with the apps we make in the office – but our out-of-office projects can be pretty inspiring, too. Recently, part-time IA software engineer Eric Miller developed and helped produce interactive set pieces at the Nike Women’s Half Marathon in DC.

Can you provide some background on you and your work?

Like a lot of people, I’ve always felt torn between technical and creative worlds, never feeling entirely at home in just one. Maybe that’s because at some level it’s all “techne“, if you will, but in our culture it seems hard to find a way to do both—particularly the purely creative side—and make a living.

Lately I’ve been drawn to what seems like an intersection of worlds and I suppose the name for it is “interactive installation”. It can incorporate so many creative, human, and basically architectural concerns by means of technology. And it’s fun: the suprise and delight factor can be really high with these things since you don’t see this stuff happening everywhere yet and the possibilities are so vast. In urban contexts I think this kind of work could really change the experience of a space, a commute, or even a city. I think we’ll be seeing more ambient computing and “activated spaces” and so on in the coming years.

So anyway, I’ve put together or helped with a handful of interactive art installations. As a part-time freelance developer and creative coder, I’d really like to do more of it. The Nike project obviously wasn’t about changing anyone’s life but it was the largest-scale project I’ve done so far.

nikesign

How about some background on the project? How did you get involved, and what you were hoping to accomplish?

The idea was to take the RFID sensors used to track a runner’s time and trigger personalized, animated messages on great big screens. There were two places this would happen: right after folks picked up their bibs in an “expotique” tent, and towards the end of the race itself, around mile 12. I was approached by a Boulder creative/ad agency called School, which had been hired to produce the experience.

Aside from delivering the app in a robust and non-crashing way, I wanted to improve my chops with a couple of “newer” technologies. That’s newer, of course, only for someone who originally learned C++ and graphics in the late 90s!

thesetup

Did you use C++? What other technologies did you use?

I built the app with Cinder, which is a lovely framework for working with OpenGL in C++. The RFID sensors output a protocol called ChronoTrack, and we had to talk to them over direct socket TCP. We were running on OSX, so I used some Obj-C networking classes for that, and for fetching the name/bib database over HTTP, which was being updated in real-time as people registered.

And did you learn any “new” tricks?

It turns out that C++ has grown a lot since the old days and I’m still trying to catch up. Ha! I feel old now. And I’ve been dying to become more facile with GLSL—the “shader” language used to program the graphics pipline on modern hardware. I managed to sneak in some nice realtime glow and motion blur effects using GLSL. It was a very basic accomplishment in terms of what’s possible, but I was happy to make it work.

Anything else to add?

I think that historically we’ve often used technology to sever our minds from our bodies, if you will. We seem to habitually seek distraction from our immediate, physical, and feeling situation and we build technology to enable it. In my opinion this is really bad news for everyone. I don’t know if interactive installation can turn this trend around and use technology to instead “re-embody” our urban and personal experiences—maybe for just a few minutes, for a few people—but I’m really interested in asking that question in particular.

Interested in industry news and trends?

Sign up for our monthly email to get the highlights on technologies and innovations impacting mobile strategy.