Monday, September 9, 2013

Thanks for clearing that up

Thanks for clearing that up

Article headline:

Why the Vita TV and other “microconsoles” are destined to fail

First sentence of final paragraph in said article:

This isn’t to say the Vita TV (or other microconsoles based on low-cost portable technology) will be a total bomb.

Okay.

Saturday, August 17, 2013

Don’t Trust iTunes Movies in the Cloud

Don’t Trust iTunes Movies in the Cloud

I wondered about the hypothetical situation described in this article at one point, but I thought, nah, that couldn’t possibly be how it works.

It is.

Saturday, August 3, 2013

Working in the Shed — Matt Gemmell

Working in the Shed — Matt Gemmell

Whilst I of course still had my phone and could readily have tethered a laptop to it, I chose not to. I did check email and twitter on the phone, but the simple act of it being on a separate (and small) device relegated those tasks to the background, in a way they hadn’t been for years.

I’ve been doing something similar for years: For work, I use a separate OS X user account that only has work stuff in it–no Twitterrific, no RSS, no personal IM or email, not even any saved passwords in Safari. Combined with an office with a door I can close (I work from home, mostly). Nothing fancy, and no special software needed. The iPhone is nearby for personal stuff if I really need it for some reason, but on a good day, I forget it’s even there. It’s amazing what a difference it makes just to not have stuff in your immediate field of vision.

Thursday, July 18, 2013

ParcelKit — Seamlessly integrate Core Data with Dropbox

ParcelKit — Seamlessly integrate Core Data with Dropbox

After thinking about it some more, I’m no longer as convinced as I was a few days ago of Dropbox’s inevitable dominance in the realm of third-party iOS app database syncing, for several reasons:

  1. Dropbox’s conflict resolution looks not great. I see what they’re going for: it’s fully automatic, so the user never has to make any choices. But there’s an obvious problem with that: sometimes, the algorithm is going to choose wrong. What then? The correct answer is, ‘the old version of the data can still be retrieved’. But as far as I can tell, the real answer is, ‘the data is gone forever’. Hmm.
  2. It’s a completely different pattern than Core Data, which is refreshingly simple. However… I happen to like Core Data, and I would miss a lot of the features that Core Data provides for me.
  3. I finally found time to watch some of the WWDC ‘13 videos, and I’m tentatively willing to believe that the iCloud improvements in iOS 7 are a step in the right direction.

However, ParcelKit, if it works, just removed reason #2.

Wednesday, July 10, 2013

Dropbox adds support for synchronised databases

Dropbox adds support for synchronised databases

First thought: iCloud is over. Dropbox is now a complete iCloud replacement for developers, and with a much better chance of it actually, y’know, working. The only apps using iCloud will be Apple’s own apps.

Second thought: If Apple had succeeded in buying Dropbox, this is what iCloud could have been. Alas.

Tuesday, July 9, 2013

iOS 7 displays Retina versions of iPhone apps on non-Retina iPads

iOS 7 displays Retina versions of iPhone apps on non-Retina iPads

The comments attached to this article1 express bemusement on why such a seemingly simple thing wasn’t done sooner. The answer, of course, is that it’s not simple.

Here’s the problem domain: A non-Retina iPad has a screen that’s physically about twice as big (by single dimension) as an iPhone, yet has half the pixel density as a Retina device, for an overall total of roughly the same number of pixels of a Retina iPhone. Therefore, you want to be able to show Retina graphics when an iPhone app is running in 2x mode, but not when it’s in 1x mode.

There is no way to do this. iOS apps rely heavily on bitmap graphics, which are are loaded when a view first appears, and then not again, unless the app specifically wants to. You have to start the app either in Retina mode, or non-Retina mode, and then stay in that mode as long as the app is running; you can’t change midway, because the signals to tell an app that this kind of a change has occurred don’t even exist2. The reason they don’t exist is because in the context of an iPhone, it makes no sense: Retina status is an aspect of the physical hardware, and is therefore immutable. And it wouldn’t be worth the engineering resources to add this kind of Retina-mode-change-signal into the frameworks now, nor would it be worth the developer outreach efforts and compatibility frustrations to get every single App Store developer on-board with the change–look how many apps still don’t even support iPhone 5!3. Would that many developers rush to support such an iPad-specific edge case, especially considering these are developers who apparently haven’t bothered to support the iPad within the past three years?

In theory, you could always start in Retina mode, and then shrink everything by 50% for ‘1x’ mode (in reality, it would be an 0.5x-of-Retina mode). But the entire point of having Retina graphics is that you can optimise all of the artwork for the actual pixels of the screen. Remember, this is iOS, where everything is bitmaps! A good icon designer will not simply draw an icon once at the highest resolution and then scale it down; they will actually manually draw from scratch–or at least heavily tweak–each and every one of the different sizes, so that they look ideal at every possible resolution. And now you want to destroy their carefully crafted work by turning all of those one-pixel lines into a blurry, anti-aliased mess? Not on Apple’s watch.4

This is why the solution that Apple went with in iOS 7 completely removes the 1x/2x toggle button on non-Retina iPads–you either get Retina mode always, or never. In iOS 6, it was never; in iOS 7, it’s always. There is no middle ground.

For Retina iPads, I surmise, the behaviour is unchanged from iOS 6–they’ll show Retina graphics at 1x, because why wouldn’t they?–but at 2x, you’ll see pixel-doubled Retina graphics, because there just isn’t any bigger ‘x’.

Arguably, the way it was in iOS 6 and earlier was simpler for users to understand: All iPads, Retina or not, had a toggle button that displayed an app at the device’s native resolution at 1x, and pixel-doubled at 2x. This change allows non-Retina iPad users to see better graphics, at the expense of making the overall situation more confusing for everyone. I’m not saying the decision was wrong, only that both solutions have downsides and there is no clear winner.

Not a simple as you thought, is it, dear user? Welcome to my world. Please remember this the next time you’re thinking of beginning a sentence, ‘why can’t you just…’

I haven’t personally tried any of this on iOS 7, so all of the above info is either gleaned from the MacRumors article or from my personal experience developing for iOS 6, which, in either case, may be wrong.

Edit: It later occurred to me that this change allows developers to make Retina-only apps for the very first time, but only under the following conditions:

  1. The app has no native iPad support (iPhone only)
  2. The app requires iOS 7

Under these two conditions, a developer can safely remove any and all non-Retina assets or code, and go Retina-only for their iPhone apps, because as of iOS 7, it is guaranteed that iPhone apps will never ever run in non-Retina mode, regardless of device. The same is not true of iPad apps.

This is almost certainly the reason why Apple made this change.


  1. Side note about the original, unnecessarily obtuse MacRumors headline: Almost anywhere you see the words ‘leverage’ or ‘utilise’, you can substitute the much simpler word ‘use’, for a sentence that has the exact same meaning yet is much faster for readers (or listeners) to understand. The purpose of language is to communicate, not to make yourself look smart. ↩︎

  2. In theory, you could just wait for the view to change as a result of a user action (e.g., the user navigate somewhere else within the app) before changing the mode from or to Retina. But in the meantime, the app would look awful until the user just happened to do something to cause a different view to appear, and they likely wouldn’t understand what was going on at all. Not a good experience. ↩︎

  3. Yours truly being only one such egregiously guilty party. ↩︎

  4. See what I did there? ↩︎

Wednesday, June 26, 2013

Can Apple read your iMessages?

Can Apple read your iMessages?

Remember, ‘won’t’ is different than ‘can’t’.

The difference is that ‘won’t’ is equivalent to ‘can be forced to do it in secret by our government’.

I still think Apple is trying to do the right thing here and that it is a net positive for the majority of users who have no knowledge or expectation of encryption. Maybe it can stop some eavesdropping, maybe not–it’s better than not even trying. But that doesn’t mean that you should trust it with your secrets. Trust nothing that you can’t verify yourself.

Also: Hacker News discussion.

Wednesday, June 19, 2013

iMessage and FaceTime are end-to-end encrypted

[…] conversations which take place over iMessage and FaceTime are protected by end-to-end encryption so no one but the sender and receiver can see or read them. Apple cannot decrypt that data.

Interesting to hear this from the horse’s mouth. iMessage and FaceTime have long been suspected to work this way, but as far as I know, this is the first time Apple itself has confirmed this.

Of course, the fact that we needed Apple to inform us of this precludes it from being useful to people who have a serious need for this kind of security–they must be able to directly observe for themselves that it works that way.

However, that doesn’t diminish the benefits to users who don’t know or care about encryption–those people are (if the quoted statement is accurate) protected from eavesdropping, whether they know it or not–and that makes it worth doing. This includes both innocent people who might be wrongly monitored, as well as criminals who will be that much harder to convict. But that is the price of living in a free society: everyone has privacy, or no-one does. There is no middle ground.

I would love to know more technical details about how this is accomplished.

Saturday, June 15, 2013

Thoughts on WWDC 2013

Polarising

…is the word that Gruber has been using to describe the new iOS 7 design, even before WWDC began, to an extent that I wonder if Apple PR discreetly suggested it to him as means of damage control. As if to say: ‘If you hate it, that’s OK. A lot of people will hate it, but a lot of people will love it, too. That being the case, it must have some merit, right?’

I was wowed at first by its first appearance in the video introduction at the keynote, but my opinion of it has steadily fallen since then. I would describe my overall feeling on it as ‘sinking’. I don’t hate it; it hasn’t polarised me. But it makes me worry.

Since Tim Cook took over, I haven’t doubted that he’s the person for the job or that Apple would continue being Apple. I found people’s claims of lack of innovation to be ridiculous–nothing more than trying to scare up some controversy for the sake of page views and drama. But this is the first thing that’s starting to chip away at my confidence.

I’ve seen so many quick mockups on Twitter in the past week that look so much better than what Apple is actually putting out. And that shouldn’t happen. Just add a little more depth, some better colour choices, some shadows, and it makes a huge difference. Why are some random people on the internet able to do this, when Apple apparently can’t? This is not supposed to happen. I don’t understand why it’s happening.

Yes, it’s a beta, but more than that, it’s also a huge marketing push–much more than it is a beta, considering most people hearing about this aren’t developers. Just go look at apple.com right now if you don’t think Apple is 100% committed to this design at this point.

In a word: it looks unfinished. It looks like not enough time was spent thinking this through, and looking at it every day. Maybe I’ll get used to it, and change my mind after I stare at it long enough. Maybe not.

My hope is that this isn’t anywhere near the final design, and that it will get a lot better before the final release this fall. My fear is that it won’t change much between now and then.

Automatic photo organisation

Yes. I need this.

Siri

From what they’ve shown, it seems barely improved at all. Not good. Siri is so far behind what Google provides. Apple isn’t taking this seriously. Very frustrating.

Game Center

No more green felt. I’ll take it.

Made-For-iOS Game Controllers

Barely mentioned, but I’m excited about this. It could totally change gaming on iOS and bring console-style games to the platform. A lot of games simply do not work without physical buttons, and I like to play those types of games. I’d love to play them on my iDevices.

And it’s only one logical step away from playing games directly on Apple TV: If you can play a game with a separate bluetooth controller on your iPhone, which is sending the picture (16:9) and sound to your Apple TV via AirPlay–why even involve the iPhone in this at all?

Of course, the App Store Games section is currently dominated by cheap, exploitative in-app-purchase junk. This precludes the type of games I’m hoping for just as much as the current lack of physical buttons. We’ll see, I guess.

iOS In The Car

I use my iPhone in the car. Can I use this car-optimised UI without buying a new car?

…Well, why the hell not?

iTunes Radio

Pandora’s algorithm is really good. Rdio and Spotify don’t come close. I’ll give this a try–why not?–I’m already paying for iTunes Match.

It has Song History, a feature Pandora has desperately needed since forever. Pandora doesn’t seem interested in improving their product lately.

iCloud Keychain

Could Apple really have just solved The Password Problem? It’s too early to say for sure, but… it seems like they might have.

Even if I somehow lose access to iCloud or the Keychain breaks in some way, as long as I still have access to my email (which isn’t iCloud, for me), I’m never more than a password reset away from access to most sites, so there seems to be no real risk, and everything to gain. Never having to think about passwords again… that’s quite the dream.

OS X McCain

I was expecting less than what we got, so I was happy.

I’m most excited about the improved dictation, which works offline and shows words as you speak them (doesn’t iOS need this, too?). I have Dragon Dictate, but I never use it because the UI is so horrible. The dictation built-in to Mountain Lion is pretty good and works everywhere, with the exception of these two issues.

I have never been comfortable using multiple monitors–on any operating system, and I’ve tried them all–but the new support for it in this looks good enough that I may actually give it another try.

The name certainly isn’t as fun as the cats. I don’t hate it; it just doesn’t really do anything for me.

iWork for the web

During the presentation, I kept waiting for them to acknowledge that the possibility exists that someone, somewhere, might actually want to work on a document IN COLLABORATION WITH OTHER HUMAN BEINGS. …It didn’t happen. Nope, we’ll all continue to be stuck emailing files back and forth forever, apparently!

It seems like such a frustratingly obvious step away from being a viable Google Docs competitor.

But after thinking about it for a few minutes, what it’s really designed to compete with is Microsoft Office. Yes, iWork for iOS reads Office formats, but nobody really wants to switch back and forth between it and Office all day. iWork for the web is for people who own a Windows PC and an iPhone, but no Mac. These people might only be willing to buy iWork on iOS if they can also use it on their computer. Smart.

Did you happen to notice that the long-rumoured Office for iPhone was suddenly released mere days after this announcement, on a Friday? Huh.

Craig Federighi

This guy was awesome. I would call him equal to Steve Jobs in presenting ability. Just thought that bore mentioning.

Designed by Apple Ad Campaign

I was hoping this would just be a one-off video for the keynote, but it appears not. They’re really going to be pushing this hard. I don’t like it.

I always thought of ‘Designed by Apple in California’ as a nuance, a finishing touch, a small delight for you to find, hidden away where you least expected it; in the same way as the not-quite-circular rounded corners, or the feel of the metal and glass against your fingertips, or the solidity, balance and perfect distribution of weight, or any other of a thousand tiny details that most people would never notice but were just waiting there for you to discover over the time you spend with the product. In a word, it was: subtle.

An ad campaign–any ad campaign, no matter how tastefully executed–is not.

Friday, May 24, 2013

AT&T's GoPhone Prepaid Brand to Gain iPhone and LTE/HSPA+ Support

AT&T’s GoPhone Prepaid Brand to Gain iPhone and LTE/HSPA+ Support

I’m glad to see T-Mobile is forcing some changes at the other carriers. Maybe if AT&T ever starts being proactive instead of reactive, then we’ll talk again.

5 of 47