Thursday, February 6, 2014

Eurogamer rates Dungeon Keeper for iOS: 1 out of 10

Eurogamer rates Dungeon Keeper for iOS: 1 out of 10

I mention this not to suggest that all recent iOS games are this bad–clearly, this one has struck a chord with people–but because it shows the logical conclusion of the in-app-purchase trends that have become almost impossible to avoid in the games section of the App Store.

It’s particularly notable in that, in the video games press, the lowest score a game is likely to receive, even from a reviewer who found nothing redeeming about it and would not recommend it to anyone, is 5 or 6 out of 10. This author wasn’t just writing a review; he was driving a stake in the ground. It seems that there has been some collective pent-up frustration about the state of the App Store, and this game in particular has become the focal point for it.

So no, not all iOS games are this bad; but this is the one they will all be compared to from now on. EA will ease up a little bit, and be more cautious. They won’t really change–not EA, or any of the other developers–but they’ll make some small concessions. The same cynically exploitative mechanisms will still be there. Comments in reviews will say things like ‘it has all this stuff we hate, but at least it’s not as bad as Dungeon Keeper’, as if that’s somehow deserving of praise1. When you have nothing decent to compare it to, the least-bad thing starts to look pretty good. There was a time when games were evaluated based on how much fun you would have, rather than avoided based on how irritated they would make you.


Gruber likes to say that the best camera is the one you have with you–meaning, an iPhone is superior, in a way, to all other cameras, merely because you’re more likely to actually use it. A corollary, as every kid without rich parents knows implicitly, is that the best game system is the one that you own2. No matter how outdated or underpowered. You make do with what you’ve got, and find a way to squeeze as much enjoyment out of it as possible.

This is what I think a Sony executive might have been getting to when he recently said that the decline of Nintendo would be a bad thing for the entire industry. If certain parents, who know or care nothing about video games, buy their children iOS devices to the exclusion of consoles (or even PCs), then those kids may grow up never knowing what a real video game is, and eventually give up on the idea altogether.


  1. Or my favourite truism: ‘you don’t have to buy the IAPs’. Well no, but then you don’t have to play the game in the first place. What, exactly, are you hoping to get out of this experience? ↩︎

  2. If you’ll allow, this also explains the phenomenon of console fanpersons. ↩︎

Wednesday, February 5, 2014

Why Rene Ritchie is rage-quitting Skype

Why Rene Ritchie is rage-quitting Skype

Yep.

I wish FaceTime would support group calls. Even if only for audio.

Friday, November 1, 2013

Looking for a reason behind Nintendo's abrupt shutdown of the Swapnote service

Last night, Nintendo abruptly shut down the Internet component1 of Swapnote, a free app for the Nintendo 3DS system that allows users to exchange drawings they make themselves using the system’s touch screen and stylus; and, as of this past April, photos taken with the system’s cameras.

Nintendo’s explanation was that users (i.e., children) were using the service in ‘inappropriate’ ways, but the service has been running since the 3DS first launched, about two and a half years ago. Why now; what changed?

Games news sites have been collectively scratching their heads over this. But my friend pointed me to this comment by Ars Technica forum user ‘Ladnil’:

Not defending Nintendo here, but the timing of this makes sense, given the recent release of Pokemon X and Y.

Those games have a feature at the end called the ‘Friend Safari’ where there are lots of powerful and rare Pokemon available, and the varieties available are dependent on who’s on your friends list. As a result, message boards have popped up left and right where people are exchanging codes with total strangers just to get access to more kinds of pocket monsters.

This isn’t a case of a child already actively communicating online with someone, and they exchange friend codes after actually being friends, and continue their communication using the 3DS. It’s a case of the game design encouraging them to add as many random strangers as they possibly can to their friends list without any expectation of further communication beyond that 12 digit exchange.

Normally, you can only communicate with someone else on the 3DS if you each register each other’s friend code–a long, randomly-generated number which is unique to each 3DS system. One important facet is that the registration must be mutual; unless both users enter each other’s numbers, neither can talk to the other.

Previously, there was little or no motivation to exchange friend codes with someone you don’t actually know. In most games, you could still freely play with strangers on the internet without becoming friends with them–you just wouldn’t be able to communicate with them unless you were friends. However, Pokémon seems to have created a strong incentive for the users to use the system in a way it wasn’t intended for. It seems that the massive popularity of Pokémon, combined with the typically young age of its players, was enough to tip the scales and bring the entire platform down.

There is a lesson in here about creating incentives in software design…

Several other possibly relevant facts:

  • The earlier Nintendo DS, the first Nintendo system to have online connectivity, had a unique and separate friend code, not per hardware unit, but per software title. This would have prevented the current 3DS situation, since there was no cross-pollination at all between different software titles. However, this system was much more annoying, and people complained about it endlessly. (The Wii worked pretty much the same way as the DS.)
  • The Wii U, Nintendo’s newest platform, uses a system which is more like the 3DS, in which there is a single ID per person rather than per software title. However, the Wii U takes it one logical step further: instead of a randomly-generated code, users are allowed to pick their own usernames, for the first time on a Nintendo platform. Despite the fact that this particular convenience seems irrelevant to the 3DS incident, I can’t help but worry that it will cause all Nintendo platforms to regress. We’ll see.

  1. Technically, the app still retains some of its functionality, but now only if it is in close physical proximity with another 3DS unit, using the system’s non-Internet local wireless feature. ↩︎
Monday, October 21, 2013

Since we're on this topic

Since we’re on this topic

Then:

I guess those excited about a software refresh in a week are gonna be really excited when new Apple TV hardware is unveiled next month.

Now:

While I still haven’t heard anything concrete, the most recent whispers I have heard is that the Apple TV project has been delayed a bit.

Remember: rumours are never wrong, they’re only delayed.

Sunday, October 20, 2013

The hypothetical Apple non-console

I don’t know if Apple is going to introduce a gaming-capable Apple TV this week–in fact, I suspect probably not–but it makes sense to me that they could, if they wanted to.

Here’s what I imagine it might be like in terms of specs (look at me, I’m an ‘analyst’!):

Current Apple TV Hypothetical 2013 Apple TV 'Good’ Hypothetical 2013 Apple TV 'Better’
  • Single-core A5 SOC
  • 512 MB RAM
  • 4 GB flash storage
  • $99
  • Dual-core A7 SOC
  • 1 GB RAM
  • 16 GB flash storage
  • $99
  • Dual-core A7 SOC
  • 1 GB RAM
  • 32 GB flash storage
  • Game controller
  • $149

Here’s why I think so, by way of a point-by-point rebuttal of Andy Reitz’s arguments (via Gus Mueller).

In order to have graphics that compete with the upcoming PS4 and Xbox One, these games will need a strong GPU (for rendering graphics at 1080p), as well as tons of RAM (as Gus has speculated above). But these AAA games are also massive, requiring 8 - 30GB of storage per title.

Apple has never, in their whole existence, shown any interest in being part of what has traditionally been the gaming market, and I don’t expect that to change, notwithstanding their (apparently accidental) success with games on iOS. I don’t think Apple would ever try to compete directly with the PS4 or Xbone.

Instead, I think Apple would target their existing customers, who already own at least one Apple device, but are probably not very ‘serious’ about gaming, and may not even have any console at all currently hooked up to their TV (except perhaps an ageing first-generation Nintendo Wii). It’s arguably a much bigger market, and one that Apple already knows how to sell to. And, make no mistake, the emphasis for Apple TV will always be on movies and TV, with games as a distant and optional secondary feature. A ‘game console’ in the traditional sense, this is not.

If Apple were to produce such a box, paired with a game controller, I think that people would want to play AAA games, such as “Call of Duty”, “NBA2K14”, “Need For Speed”, etc.

Based on the above–no, they wouldn’t. The hypothetical market I’m referring to would want to play the same games they already enjoy on their iPhones and iPads, except now on their TV. Games like Infinity Blade 3, which by most accounts looks pretty good on existing iPhone/iPad hardware, despite the inherent constraints: apps can’t take up more than 2 GB of storage space, and in the best case (iPhone 5S), are limited to 1 GB of RAM and an A7 chip at resolutions similar to an HDTV1.

32 GB for the ‘gamer’ model would be enough to fit, at minimum, 15 or so games (probably more). And for people who aren’t interested in games (at first), they can save a little money on the cheaper model, and add a controller later if they change their minds.

The first is that Apple TV doesn’t run iOS 7, it appear to be running a custom fork of iOS 6.1. Of course Apple could upgrade this fork to include the relevant gaming bits of iOS 7, but this would be more work for an already taxed engineering team.

I don’t buy this. We have no idea what Apple does or doesn’t have working in their labs. It could be anything, or nothing. It doesn’t seem helpful to me to try to guess from the outside about how Apple allocates engineering resources.

In addition, according to the “Game Controller Programming Guide”, the controllers are optional … Now, I’m sure Apple could change their just-release specification for a hypothetical gaming-capable Apple TV. But how would game designers work with these constraints? Requiring games to be designed for both touch and gamepad controls, would be a huge limitation for games that run on the Apple TV.

This is a non-issue. In the same way that developers can currently target an iOS app to iPhone, iPad, or both (‘universal’)–Apple TV would simply be added as an additional target. If you want to target touch devices, then you must include touch controls. If you want to target Apple TV only, then you don’t. Simple.

Obviously, the current developer docs are based on currently announced products, which all have touch screens. And obviously, Apple would revise them if they decided to release a new product. If they were planning to release a new product, they certainly wouldn’t be so shortsighted as to tip their hand about it in developer docs six months beforehand.


My hypothesising is analogous to Apple’s choice of CPUs in iOS devices: Instead of trying to take powerful Intel x86 CPUs and scale them down to be more battery-efficient, they chose to take simpler but already highly battery-efficient ARM CPUs, and gradually grow them to become more powerful. In the same way, they could release an Apple TV that is not very powerful at first but ‘good enough’ for now, and comparable with the graphical output of current iOS devices; and then slowly grow it to become more powerful over the years, as they have always done with all of their other products.

This leads me to another point about traditional consoles: They have a very slow release cycle, so they often start out with incredibly overpowered specs in the beginning, because they are expected to last for about six years. Do you expect to be able to buy and run a brand new iOS game today on your original circa 2007 iPhone? No. But the PlayStation 3 debuted six months before that same iPhone, and new games for it are still coming out today (and planned for next year, at least!).

When has Apple ever entered a new market by trying to do things the same way that all of the existing incumbents do? If Apple made a games-capable Apple TV, they would do it in their own way, like they always do.


  1. An iPhone 5/5S screen is 1136x640, which is just under 720p (1280x720). An iPad ¾ screen is 2048x1536, which is considerably more pixels than 1080p (1920x1080). For that reason, I’m not sure it would be necessary to use a GPU from the iPad to drive an HDTV; perhaps one of the less-powerful ones from the iPhone would do fine. I don’t really know enough about GPUs to speculate with much confidence, though. And let’s not even get into 4K, for now–that’s a long way off. ↩︎
Friday, October 18, 2013

Apple statement about iMessage security

Apple statement about iMessage security

Apple’s Trudy Muller:

iMessage is not architected to allow Apple to read messages… . The research discussed theoretical vulnerabilities that would require Apple to re-engineer the iMessage system to exploit it, and Apple has no plans or intentions to do so.

It’s fascinating to me that Apple chose to respond to this.

Of course, both Apple and the researchers are correct. The researchers are (from what I can tell) correct in saying that Apple has the cryptographic capability to read messages if they so choose. Apple are (presumably) also correct in saying that their systems do not currently implement this functionality.

The AllThingsD article portrays this as a he-said-she-said ‘someone is lying’ kind of tale, but that’s facile and betrays a lack of interest of the underlying issue. The two parties do not directly contradict each other.

Clearly, Apple struck a balance when designing iMessage. The researchers correctly assert that the only way to verify to a certainty that the encryption is working properly is for the users to verify the public keys being used out-of-band1. The average user stopped listening at the phrase ‘public key’, if not ‘encryption’. It’s totally impractical for a company like Apple and a product like iMessage that is supposed to ‘just work’. Security is almost always at odds with usability. It doesn’t matter if someone designs a completely secure system that no-one can understand or is willing to bother using. Likewise, an easy-to-use product that’s full of holes won’t last very long.

So is iMessage secure? Only as much as you are willing to take Apple’s word for it. It is not secure in a way that you can verify yourself.2 I’m not trying to imply that that’s good or bad–it’s good enough for some people, and not for others. If this upsets you, take a step back and realise that not everyone has your exact needs.

To me, the more interesting ramifications of this design are in what Apple could be forced to do by the government. There is plenty of precedent for the government forcing a company to let them snoop on some or all of their traffic. However, from what both the researchers and Apple say, it sounds like snooping would not be effective in this case. It’s not enough to simply look at iMessage traffic; one would need to actively tamper with it, and although it would be possible with the right server software, that server software would have to live inside Apple and does not currently exist (according to Apple).

So what I’m getting to is that despite the clear precedent in favour of granting access to data , there is much less precedent (at least to my knowledge) in forcing a company like Apple, against their will, to create new software solely for the purpose of assisting the government. It would almost certainly be possible for Apple to do so in response to a government request, but Apple could legitimately claim that it would represent a considerable, perhaps unreasonable burden with direct monetary costs. What would the price tag be? What is the government’s budget for this sort of thing? Can the government control and direct a person or company’s creative efforts, or merely their existing digital assets?

I don’t know if this argument would hold up in a secret court, especially against judges who have a poor understanding of technology and are predisposed to accept any argument made by their own government. But, to my knowledge, it is a unique and novel approach that hasn’t been attempted before, at least not at this scale.

Again, it’s fascinating to me that Apple chose to design it this way, when they could have much more easily gone with the same trivial SSL implementation that most other companies use3, which holds up against most third-party attackers, but not government intervention. And they didn’t do it for marketing reasons: nowhere have Apple advertised or even mentioned the security of iMessage, except in direct response to public criticism. We’ll never really know why, of course.

Previously: [1], [2], [3]


  1. Crypto-speak meaning that you have to verify the other person’s identity (i.e., public key) using some method of communication other than the one that will use the public key (i.e., iMessage), because otherwise you don’t know for sure who that public key belongs to. The classic dilemma: How do you transmit the public key in a secure way? And if you did have an existing secure way of transmitting arbitrary information, wouldn’t you use that instead of this complicated public key stuff? The typical suggestion is to exchange public keys in a face-to-face meeting involving no electronics–highly secure, but not nearly as convenient to do frequently compared to using the internet. This may be a reasonable step to take if someone really is out to get you, but is much too high a burden for people who don’t know or care about any of this stuff. ↩︎

  2. Any kind of security is only good to the extent that you can either verify that it works yourself, or that you can trust others to tell you that it works. To someone who really does have people out to get them, it’s probably not a good idea to take Apple’s word for it. But even for those people, using strong, widely peer-reviewed, open-source secure communications software, they will still be forced to use components that they themselves do not have first-hand knowledge of their workings. Even if you read every line of source code of the encryption software and compiled it yourself: there’s still the compiler, and the operating system. Even if you read every line of source code (and assembly) for those two components, there’s still the hardware. Even if you use ‘open-source’ hardware designs, you still didn’t etch the circuits onto silicon yourself, nor did you build the factory robots that did the etching. And so on.

  3. You can be confident because it’s ‘the same technology used by your bank!’ ↩︎

Thursday, October 17, 2013

More on iMessage encryption

More on iMessage encryption

Previously.

Tuesday, October 8, 2013

Justin Williams on third-party alternatives to built-in apps

Justin Williams on third-party alternatives to built-in apps

It still drives me nuts to this day to see family and friends using the bundled Notes app over Elements, but it accomplishes 90% of what they want and is free. Hard to compete with that.

I use the bundled Notes app. I’ve tried many others, including Elements.

At least for me, price has little to do with it; many of these apps, I already own, and I’m still not using them. There is an additional benefit to choosing the bundled Apple version over any third-party version, which I think many developers underestimate: simplicity of choice.

Choosing to use Apple’s version is simple and requires almost no thought. Choosing something else makes me think about a lot of things that I otherwise wouldn’t have to:

  • I know Apple’s version is going to ‘just work’.
  • I know it’s going to look and feel like the other apps I already know how to use.
  • I know it’s not going to have problems during the next iOS update.
  • I know it’s not going to change unexpectedly on me one day.
  • I know I’m not going to need yet another username and password.
  • As unfair as it is to developers, Apple’s apps get priority access to private APIs, which means they can integrate better with the OS in ways that no other apps can.
  • I’ve been using Apple software for decades, and while they have disappointed me occasionally, overall the odds are in their favour.

To get me to use it, a third-party alternative doesn’t just have to offer one or two features that I wish for and don’t have; that’s not enough. As cliché as it has become to repeat these Steve Jobs quips floating around everywhere, here it is (paraphrased), and remember it well:

It’s not enough to be a little bit better. You have to be 10 times better.

Tuesday, October 8, 2013

Google's Schmidt: Android more secure than iPhone

Google’s Schmidt: Android more secure than iPhone

To an extent, this is an amusing anecdote about how out-of-touch Schmidt is. But to be fair, there may well be a genuine disconnect between what Schmidt thinks ‘secure’ means, versus what everyone else thinks it means.

Android’s security is based around blaming the user. ‘But you said it was okay for this malware to have root access, you clicked OK!’

To wit:

  1. When installing an app, Android requires the user to accept the app’s requested permissions before it even starts, as a precondition for installing the app. If the user declines those permissions, the app will not install. This dialog is an interruption–it is getting in the way of what the user wanted to do. The obvious result is that it trains users to click OK just to get past it to the thing that they wanted in the first place.

  2. Android requires the user to accept all of the permissions an app asks for, or none of them. There is no way to accept only the permissions the user wishes, while declining others. This allows developers to demand unreasonable permissions that they don’t actually need, because they’re holding the entire app hostage from the user. And so–surprise!–many developers on Google Play do exactly that.

  3. iOS simply forbids the most dangerous types of actions, like root access to the file system or access to phone call or SMS data. There is no permission dialog for these; they are simply disallowed, both in terms of the APIs not being available for use, and by Apple’s review policy.

Theoretically, Android may have the best security system in the world. But it all falls apart when you wrap it around a horrible UI that not only allows the users to shoot themselves in the foot by overriding the protections, but trains them to do it constantly as a matter of routine operation. It may as well not even exist.

This is why, in practice, Android has a malware problem. But it doesn’t surprise me that Eric Schmidt wouldn’t see it this way. It’s reflective of Google’s culture as a whole, which seems to champion engineering above all else.

But the more concerning thing should be that the company (or at least their effective spokesperson, Schmidt) doesn’t even acknowledge the existence of the problem. Yes, it was an antagonistic question and he had to answer in a way that paints his company in a positive light. But he could have given any number of placating non-answers to this question2 which would have resulted in it being a complete non-story that nobody would be talking about today.

Instead, he drew even more attention to the problem, and the fact that Google doesn’t seem to be fixing it. Because you can’t fix something if you don’t even realise that it’s broken.


  1. I know someone who uses Google Maps on iOS this way, because she doesn’t trust Google to know her location. It makes me crazy to watch her use it this way, but the point is that it’s her choice and that’s what works for her. The device should do what she wants, not the other way around. ↩︎

  2. The typical corporate P.R. handbook response is to ramble on with a whole bunch of fluff that means nothing, doesn’t address the question at all, and will make your audience fall asleep listening to it. But that’s not the only way. Consider Tim Cook’s response to Sen. John McCain’s off-the-cuff question about why he has to manually update the apps on his iPhone; Tim said, ‘We’re trying to make them better all the time.’ Simple and to the point. Keeping the message positive, while acknowledging room for improvement. Was that so hard? ↩︎

Sunday, September 15, 2013

Laundry Minder v1.1

Laundry Minder v1.1

I managed to ship my app’s iOS 7 update to the App Store just prior to the release of iOS 7, with thanks to the app review team for their quick turn-around.

Not much is different in functionality, but it’s got a nice visual refresh. Say what you want about iOS 7’s visual style, but the default UI elements look a whole lot better out-of-the-box than they ever have before on iOS. Which is good for me, since I’m not a designer by any means, so I mostly just use the built-in stuff unmodified. This time around, I stuck in a nice background pattern from subtlepatterns.com–I know, I know, patterns are supposed to be gone! But I’m quite pleased with the result.

There are a bunch of tiny, subtle improvements I’ve made over the past few years that I never got around to shipping until now. Of course, now that I’ve done those, I’ve found a half-dozen more little things that bother me about it. Sigh.

Also, I finally got around to fully supporting the iPhone 5 (despite having owned one myself since last year!) and the iPad.

I wish I had more time to dedicate to this little app. It’s by no means a big seller, but has a special place in my heart since it’s the app I made in order to learn Objective-C and Cocoa, nearly two (!) years ago, and helped me get a job doing what I really love to do. So, as much as I know it’s not worth spending time on, I can’t let it go just yet.

Plus, I still use it to time my laundry every week.

Thanks once again to my friend Andrew Wignall for the nice icon update, which he did without me even asking. Facing the alternative–my own terrible drawing skills–I would have probably been too embarrassed to ever release the app in the first place.

4 of 47