dcarpent said:
I would hate to lose out on the next insanely great feature because it requires, for instance and hypothetically, the faster CPU of the iPhone 5 to run. Michael, can you say anything about what you have in mind for the next couple of years, as it relates to hardware requirements and what we might expect from Apple? I realize this is VERY hypothetical.
My guess is that the iPhone 5's CPU will be dual-core, but that each core will be only marginally faster than the one in the iPhone 4, and that the available RAM will remain the same - Apple's
very careful about battery life, and more RAM or a higher-clocked processor is likely to represent an unacceptable tradeoff for them. (the iPhone 4's processor appears to be deliberately underclocked to save battery life) So performance-wise, I don't expect the gains for single-threaded tasks to be that great. I can't think of any other amazing hardware enhancements that are likely to show up - they already added a gyroscope in the iPhone 4, and the limitations of its camera vis-a-vis OCR have more to do with optics than anything else (and hence aren't going to be easy to fix)... maybe a really amazing antenna or a dual-mode CDMA/GSM communications chip or something in that vein, but aside from that I'd pretty much expect it to be an iPhone 4 with a dual-core processor and a faster GPU in a nifty new case.
That being said, OCR could run considerably better on a dual-core processor - we may be able to do some cool new things with it like more advanced real-time image analysis (no more need to resize the box, say), but even if we don't change a single thing in our code, if the system is intelligent enough to run the video preview rendering on one core and our engine on the other core (right now we get maybe 40%-50% of the CPU during live OCR, the rest of it's going to keeping the preview video playing nice and smoothly) there'd be a huge performance boost from dual-core.
I don't think there are likely to be any new features as processor-intensive OCR in the next two years - the only other thing in that category that comes to mind is voice recognition, but most of the options for that for mobile devices seem to be server-based rather than offline - not many companies out there licensing out offline Chinese speech recognition systems. If we did find / license an offline Chinese voice recognizer, though (not in our immediate plans, but you never know...), my guess is that anything we could license in the next two years would be designed for single-core processors and hence not get much of a performance boost from the iPhone 5. Going in the opposite direction, text-to-speech seems to work well even on an iPhone 3G so I certainly wouldn't think you'd need an iPhone 5 for that.
But this is indeed very hypothetical, and you never know what the next few years might bring... FWIW, though, OCR is something people were asking for for
years - pretty much since the first camera-equipped Clies appeared - so now that we've got that I'm not quite sure what else is really left that would have the same impact. The main focus now is on overhauling the user interface, adding lots of new dictionaries, and some not-particularly-CPU-intensive new features like better flashcard stats / flashcard sync / annotations / more flexible searches (and a few other such things I'm not talking about yet) - UI refinements, smaller-scale new features, and Android / desktops are going to be our main focus between now and the release of the iPhone 6