- Internet Trends 2015 (PDF) — Mary Meeker’s preso. Messaging + Notifications = Key Layers of Every Meaningful Mobile App, Messaging Leaders Aiming to Create Cross-Platform Operating Systems That Are Context-Persistent Communications Hubs for More & More Services. This year’s deck feels more superficial, less surprising than in years past.
- When the Land Goes Under the Sea — As it turns out: People really despise being told to not replay the game. Almost universally, the reaction to that was a kernel of unhappiness amidst mostly positive reviews. In retrospect, including that note was a mistake for a number of reasons. My favorite part of game postmortems is what the designers learned about how people approach experiences.
- Damage Recovery Algorithm for Robots (IEEE) — This illustrates how it’s possible to endow just about any robot with resiliency via this algorithm, as long as it’s got enough degrees of freedom to enable adaptive movement. Because otherwise the Terminators will just stop when we shoot them.
- The Counselor — short fiction with ethics, AI, and how good things become questionable.
Enhance the user experience with the thoughtful use of sound.
It’s definitely a fun toy to play with, but most of us probably couldn’t think of how this might be relevant to our jobs. When I presented 8-bit game music with the Web Audio API at last year’s Fluent Conference, I readily admitted that it was intended to be purely fun rather than practical.
Recently I explored the idea of adding audio to web apps, but I think the big problem isn’t that web developers were unsure how to add audio to their app, but that they don’t think they should add audio to web apps. In this article, I’d like to make the case that you should be considering audio when designing your web application user interface.
A brief introduction to Swift optionals.
Swift is becoming the language of choice for more and more developers on iOS and OS X. It’s fast, simple, clean, and has a number of features that simply aren’t available to Objective-C programmers.
While it isn’t a hard requirement to do so, several projects are being ported from Objective-C to Swift — especially those in their early stages — in order to take advantage of the speed, power, and safety of Swift. One of those projects isn’t actually a software project — it’s the upcoming Swift edition of iOS Games Programming Cookbook. When we began updating the book for Swift, the first thing that we had to do was to rewrite all of the book’s code in the new language. However, a straight re-write from one language into another isn’t enough. Swift behaves differently than Objective-C in very important ways, and that means that your ported Swift code needs to be aware of how Swift does things.