Archive for Technology

Sparkleponies for all

IEEE’s prediction that 85% of the tasks in our daily life will include game elements by 2020 sounds to me like a prediction that requires thinking about game elements broadly enough, it might already be true. Considering this quote in particular, “by 2020, however many points you have at work will help determine the kind of raise you get or which office you sit in”, if you’ve ever had a performance review rating you on a number scale for different job functions, congratulations, your job is gamified! Does grocery shopping get you gas points? Your errands are gamified! Students, grades aren’t a drag, they’re a gamification of your learning!

I’m not trashing on gamification – I’m intrigued by it and always love when my games students experiment with it in their projects. But, I’m dubious of the 85% number cited in the article. Even if we all start getting Sparkleponies.

Most fun you’ll have debugging all day

Weird Bug starts off for the first, say, 30 seconds looking like your standard puzzle-maze game, until you realize the first maze isn’t beatable, and that the real puzzle is how to go into the source code for the maze and fix it so the maze can be beat. The mazes are implemented in PuzzleScript, and the bulk of the game you’re in an IDE interface, changing the code, rebuilding, and playing your fixed level to get on to the next, broken level.

If you’ve ever coded before, you’ll be able to figure out PuzzleScript in just a minute or two of scanning the code, but there’s some tutorial information embedded in the game for those just getting started looking at code. Once you figure out the structure, you can really choose how you want to beat the mazes – I haven’t played it all the way through but I suspect you can always take the easy way out and place the goal right next to the player and move on. Which also makes the game a nice platform for thinking about level design.

Don’t leave the panopticon

I’m pretty blown away by Nothing To Hide, a currently free, browser-based puzzle game with a great premise and one of the most interesting introductory “scenes” I’ve come across. You play a character who must ensure that they are being surveilled at all times while moving around the world (for reasons the opening will make clear). The web-version is actually a demo being used to raise funds for a full version, but it’s as polished and fleshed out as any number of full online games I’ve played. Even in its handful of levels, you get a taste of the variety of elegant little puzzles you can create with the game’s premise and small set of game resources. Well worth a play, and an eye out for the extended version!

Math, Music, Ciphers

I hadn’t run into the unsolved Dorabella cipher before (that I remember). If you enjoy such things I highly recommend this account of it, with its many proposed decryptions that make clear why one of the conditions for a verified solution is that it “be self-evident”. It’s an excellent example of why decyphering without context is hard (maybe impossible?). And I enjoy the proposed solution that takes encryptions errors into account as a possibility, considering that it was done by hand, and by someone considered prone to such errors.

How It Works: Bitcoin Edition

Nothing like avoiding end-of-the-year physical cleanup with end-of-the-year virtual cleanup! I finally got around to reading this detailed description of how Bitcoin works, recommended by Schneier on his weblog, and I need to hang on to this for next time I’m teaching security. From a teaching perspective, it does a nice job of showing how all of the various types of cryptography come together in an interesting way in this protocol. This is the part that always seems sort of wild to me:

The idea is to make it so everyone (collectively) is the bank. In particular, we’ll assume that everyone using Infocoin keeps a complete record of which infocoins belong to which person. You can think of this as a shared public ledger showing all Infocoin transactions. We’ll call this ledger the block chain, since that’s what the complete record will be called in Bitcoin, once we get to it.

The article does assume you have some cryptographic background, but I suspect that reading along as far as you can through the article would at least explain what some of the problems that Bitcoin has to solve are. A nice read with a cup of tea on a snowy day, especially if you’re a student getting your brain back into gear for school in another day or two!

Stabby Robot Less Stabby

First, and most important obviously, this is pretty neat research into training robot motion with online, and non-optimal, feedback. It’s a nice consideration of the type of feedback one is likely to get, or to get easily. And the illustrative video on their page is pretty great (I found the moment when they showed the robot how to point the knife towards itself, not someone else, adorable…)

But it’s also worth noting that the TechCrunch story on the research is pretty hysterical: “Cornell Researchers Help Robot Unlearn Stabby Motions With A Human Trainer”.

Building the right community for community editing

There’s something unavoidable about Wikipedia, even when you acknowledge its flaws, which makes it a constantly interested phenomenon to investigate and analyze. As the article notes, its rankings in search results and use in question answering systems like Siri only make it more interesting to understand what’s going on with it. Looking at the effect of the editorial structure and automated tools for handling edits is particularly interesting; I hadn’t really thought about the effect of bots on participation in this way:

In their paper on those findings, the researchers suggest updating Wikipedia’s motto, “The encyclopedia that anyone can edit.” Their version reads: “The encyclopedia that anyone who understands the norms, socializes him or herself, dodges the impersonal wall of semi-automated rejection and still wants to voluntarily contribute his or her time and energy can edit.”

The solution, the addition of a “thank” button instead of only negative feedback options, is pretty elegant.

Watch where you put that phone

This is awesome – I’ve long been in love with intrusions that rely on listening in on the sound of keystrokes, or the wiggle of a laptop screen, or what have you to learn and then reproduce what has been typed. This variation where a smartphone on your desk can pick up typing vibrations and from there learn to recognize what you are typing. It’s proof of concept, not found out in the wild at this point, but still very cool.

Traveling Happy Truck Drivers

Starting out as an explanation of the traveling salesman problem, this article goes on to also be an excellent, and I think understandable, explanation of what an algorithm is and computational complexity. If you want to get a quick sense of what computer science is concerned about that goes beyond just “how to program”, and is more the “how to solve problems” side of things, this is a good read.

In 2006, for example, an optimal tour was produced by a team led by Cook for a 85,900-city tour. It did not, of course, given the computing constraints mentioned above, involve checking each route individually. “There is no hope to actually list all the road trips between New York and Los Angeles,” he says. Instead, almost all of the computation went into proving that there is no tour shorter than the one his team found. In essence, there is an answer, but there is not a solution. “By solution,” writes Cook, “we mean an algorithm, that is a step-by-step recipe for producing an optimal tour for any example we may now throw at it.”

The second half of the article also has some nice details about how the messy ways that people behave make the route planning problem for a company like UPS a lot more complicated than the pure traveling salesman problem:

People are also emotional, and it turns out an unhappy truck driver can be trouble. Modern routing models incorporate whether a truck driver is happy or not—something he may not know about himself. For example, one major trucking company that declined to be named does “predictive analysis” on when drivers are at greater risk of being involved in a crash. Not only does the company have information on how the truck is being driven—speeding, hard-braking events, rapid lane changes—but on the life of the driver.

This loops back to talking about (informally again) algorithms, solutions, optimization, and the idea of a heuristic approach. I’m wondering if this would also be a nice way to illustrate the idea of modeling – I’ve found that it’s a phrase we use a lot that it’s easy to nod and say “sure, a model”, but things can get confusing as you start to slip between our informal, day-to-day usage of the word model and a more technical or formal meaning. This might help bridge the gap, particularly as it starts to touch on the idea of good versus bad models.

Of course they put E.T. in New Mexico

The news that the landfill of Atari’s E.T. games is going to be excavated swept through the internet. This makes me doubly excited that I still have my copy and I’m considering using it an an anchor point for a “play bad games” day in my intro game design course in the fall. Particularly having also found this really cool review of the games flaws and fixes for them. It starts from the position that the game is actually fairly good, and even groundbreaking, except for a few flaws or misunderstandings about the game (such as, that it is an easy kids game to pick up, as compared to a highly challenging quest-based game) that need to be addressed. Plus you get a nice detailed explanation of why E.T. keeps falling in the darn wells all the time, and an inside look at the problem of modifying space-restricted code (there is lots of talk of finding 12 bytes here and 9 bytes there to sneak in the desired changes).