Some wager that the upcoming iPad 2 will pixel double both axis, similar to what the iPhone 4 did relative to its predecessor, while others believe that it will keep the resolution of the current generation.
Doubling both axis is a formidable technical challenge and would be a unique, likely expensive display. Continuing with the current resolution would represent a significant competitive disadvantage. As people acclimate to high density smartphones, such as the iPhone 4, the iPad's low density is really starting to stand out.
Few believe it will do anything in between. It won’t, the common wisdom goes, go to say 1536 x 1152 or 1280 x 860, or any other fractional improvement less than an outright doubling or quadrupling. The logic is that pixel scaling issues eliminate the possibility of such a half measure.
This harkens to discussions that occurred over 20 years ago.
It should be an embarrassment that such a discussion is occurring in 2011.
In the TiPb article linked above the author leads off with a slur towards Android, saying “Either iPad 2 will have a standard 1024×768 display or a doubled 2048×1538 Retina Display, or developers and users will be in for the type of frustration usually ascribed to Android.”
That makes for an odd, if not outright ignorant, statement: I can’t recall ever reading anyone complain about the density independent pixel of Android, or its awareness and accommodation of a wide variety of profiles. That’s a problem that it has solved very well, and a large ecosystem of sizes and resolutions of displays exist in remarkable harmony.
Consumers like being able to choose between 3” – 15”+ devices with a wide variety of densities. Choice is good.
Because of course the DPI issue has long been solved. Otherwise you would be lamenting that your 72dpi word processor isn’t compatible with your 300dpi printer: “Everything prints out all tiny-like”. Is that the case?
Vector fonts with pixel independent abstractions have been around for a long time (in TrueType and Postscript form), with Apple as one of the primary inventors. Most GUI frameworks, including iOS, have the ability to scale UI rudiments to virtually any resolution and pixel density with ease.
That is an ancient problem, long solved.
But what about icons? What about bitmap graphic artifacts?
In an ideal world icons would come in vector graphic form. That isn’t the case on Android (the platform doesn’t support SVG, including in the browser, which is a huge deficiency), but it is still shocking that Apple, which usually takes the lead on such innovations, doesn’t use them for iOS, as had been widely speculated as a given before the iPhone OS was first released.
With a vector graphic the rendered image is always perfect for the target, ideally with hints that suppress decorations at very low sizes.
Even with bitmap graphics, however, while it’s easy to contrive ridiculous examples to demonstrate the worst of scaling, the reality is that given that text should always be UI generated from vector fonts, perfect for the target, and graphics are usually just supplementary decorations, where scaling up or down by partial multiples is often perfectly adequate.
For your consideration below are some iOS icons (used for fair use purposes but owned by Apple) at their original pixel size, and then scaled to 125% and 150%. Scaling was done using Sinc (Lanczos3), which is a good algorithm to use when scaling up and you want to maintain fine detail.



The horrors! Just to be clear (as it's hard to imagine what the larger images would look like when shown in the same physical space), we're comparing this to simply pixel-doubling, which would look like the following (cropped to avoid exceeding most reader's screen bounds).

There is no universe where a straight pixel-doubled image looks better than an interpolated image, unless you have fine detail in the image (like text) which shouldn't be in the image to begin with.
Not only do they still look great, but remember that in such a case the actual viewed sizes would also decrease proportionally, so the marginal artifacts would be rendered completely irrelevant. Reading some of the blog entries on scaling you would think you’d end up with some sort of blob.
Not to mention that most iPad apps would be fixed up to handle the new platform shortly after the SDK were released.
I find it incredibly hard to believe that Apple will maintain the same resolution. The device was already considered under-pixeled when first released, and has succeeded despite that deficiency. With the appearance of actual competition over the coming months it would put the successor at a serious disadvantage out of the gate. Apple has always emphasized and often led in the spec department (the thinnest, lightest, brightest screen, widest viewing angle, highest pixel density, etc), so I don’t believe that Apple would allow such a scenario.
At the same time, doubling the pixels is a big expense because such a panel doesn’t yet exist, and that sort of density is rare in larger displays.
Then again, Apple, in talking about their blockbuster quarter yesterday, spoke about a mysterious $3.9 billion dollar supply chain investment. It would not surprise me in the least if they managed to get the volumes and process in place for such a display given how critical the iPad has become to their bottom line, and Apple's tendency to set new benchmarks.
If I had to place a wager, however, I would bet that Apple neither keeps their current resolution, nor will they double the resolution. I would guess that they will go to 1536 x 1152, or more likely 1280 x 960.
Some are hoping that Google gives away nothing at Google I/O 2011.
I strongly agree.
It's possible that I'm motivated by sour grapes after trying to register for Google I/O mere minutes after registration opened, to be met with a sold out notice.
The quick sellout is partly a reflection of the astonishing success of Android, coupled with the setup that last year's attendees were given first dibs over the preceding week: They knew with close to certainty that they'll leave with $1000+ in freebies, so it's a pretty easy choice.
Now that I'm not in the running for what will likely include a free Motorola Xoom and Nexus S, maybe I'm just trying to urinate in the waters.
But really, such giveaways do provide the wrong motivations. Trade shows are notorious for this, with herds of incredibly cheap attendees — hotel and flight paid for by their employer, if not simply locals — motivated primarily by free pens, t-shirts, and so on.
Such a spectacle is an embarrassment. It was, I suspect, one of the things that killed COMDEX: When most of the floor is occupied by people just looking to enter draws and score swag, the value of the show is seriously undermined.
"Yeah, great demo. Where's my freebie?"
I refuse to believe that it enables development for Android. Is there really a credible Android developer who couldn't accommodate that minimal capital expense themselves? Does Apple need to give out free iPads and iPhones?
Worse still, it devalues the entire ecosystem because it makes you a sucker if you paid real money for something. It makes buying that Xoom for development even more painful because you know that so many got it for free, courtesy of Google, quickly flipping it on Ebay.
I'm a big fan of Android's permission model. To recap, it's a system where you're told, in advance, the rights that an application requires to run. A simple calculator, such as the excellent RealCalc Scientific Calculator, should demand no permissions at all.
It can't send or receive data on the internet. Nor can it read my phone number, SMS messages, make calls, etc. I know, by the rights system, the "surface area" exposed to it.
Other applications, such as the ZXing Team's Barcode Scanner, have a much broader rights demand (click on the permissions tab). I originally put off installing that application after seeing that it demanded the right to read and write contact data. I later learned that it uses that to turn contacts into barcodes, and to import contact barcodes.
As ideal as the Android security model is, it was widely panned as being too complex for an average user. That users would simply click past the warnings, as they tend to do when it comes to security matters.
This past week Angry Birds pushed an update that added a new right request: the ability to read and send SMSs on your device. Such a right change disables auto-update for the application, forcing the user to approve or deny the new version. Many users denied the update, many taking to the comments to raise the warning bell about this disturbing change in permissions.
People were paying attention. Rovio quickly attributed it to human error (?) and pushed out a new version that retracted that permission escalation.
It was an excellent example of the permission system working brilliantly, and perhaps an example of a small subset of users acting as the sheepdogs, looking out for wolves.
Aside from the third-party curation of the market that I described previously, whereby a third party could validate appropriate permission sets relative to the functionality of the application, one huge improvement would be the addition of optional permissions.
In the case of Barcode Scanner, it has access to a large surface area despite the fact that I have no intention of ever using that functionality of the application. Ideally I should have been able to deselect contact access, for instance, and the application simply, through discovery, disables that aspect of the application.
Optional permissions would stop the "kitchen sink" element of permissions that is growingly common.
I recently decided that it would be a fun experience to make a mobile game with my children (aged 7, 5, 3, and 0, each contributing per their age), drawing on their unbounded creativity and openmindedness, while making it an educational experience about the technology, the code, and the commercial process after publishing to the market.
I've tried to casually make games for Android before, to discover that the Java-platform SDK just doesn't foster a love for code: the APIs are unelegant and obtuse, and the Eclipse IDE, while very powerful in its own way, just never feels like home.
It makes it something that I don't really look forward to, which is weird because I love coding.
What really hurts my motiviation, however, is the absolutely brutal experience that is the Android emulator.
I recently upgraded to a beefy new machine purely to try to run that thing at a tolerable speed, to find that it's just as slow (I haven't even attempted the Honeycomb emulator, as it's purportedly beyond unusable). Compared to developing for the iPhone, this puts Android at a serious disadvantage. I suspect it's the reason why many Android applications just aren't as polished.
There are some very real technical reasons why it's such an abomination (namely that it's a full ARM emulator, whereas the iPhone "emulator" is an x86 instance running x86 code), but the fact remains that it seriously hinders productivity.
I still believe in the compile seldom model of productivity, but such a process is only possible when the platform is well known, well documented, and proven. Unfortunately that isn't entirely the case with Android, where often you're simply mixing things up and running it to see if it adapts as expected.
With the increased availability of the OpenGL ES API in the NDK, however, I've now found a beautiful medium where I develop in Windows — with Windows x86 binaries against an OpenGL ES emulator (a thin layer ontop of OpenGL) — simply reusing much of the same code in the Android project.
My productivity and enjoyment has absolutely blossomed. Better still, much of the same code is immediately portable to iOS, which is an important consideration.
Of course I need to consider the limits of the platform — smartphones are getting pretty powerful, but they are weaklings compared to a modern desktop — especially the upcoming dominant platform (tegra2), so I signed up for an nvidia tegra2 development kit. I'm fully willing to pay the cash, but it turns out that you need to be approved and I still haven't been, two weeks after applying. I guess I'll have to sign up again with some fantastical account of my great success as an EA-sized gaming house.
That's kind of annoying. Other Tegra2 platforms, such the gTablet, aren't even available in Canada.
I wrote about the London Stock Exchange's move from a consultant-built, .NET, SQL Server solution to an acquired, Linux-based, Oracle solution a year and a half ago. At the time I dismissed the "magic sauce" proclamations so many were preemptively making.
Magic sauce isn't so magical. The London Stock Exchange continues to have embarrassing, very public technology problems with shocking regularity. What is it about that exchange that this happens so frequently while so many other exchanges operate without the drama?
The LSE recently bid to essentially take over the TSX (they call it a merger, but that is a farce). For a wide variety of reasons that shouldn't be allowed to happen, this being yet another factor why it shouldn't come to pass.
The Android 2.2-based ViewSonic gTablet has been disappointing consumers for a couple of months now. The most common complaint being that the custom overlay it hosts is a software abomination.
So I just knew I just had to have one, after finally finding a seller willing to ship it to Canada (sending it from their US warehouse).
The device is a very powerful piece of hardware. It is Tegra2-based (dual-core ARM Cortex-A9 running at 1Ghz with the ULP GeForce GPU), providing the same platform that a number of top-tier tablets (the Xoom, Galaxy Tab 10.1, among others) will be based upon. As mentioned in a prior entry, I'd been trying fruitlessly to order a Tegra2 development kit, so having an actual T2 device is welcome.
The higher-end tablets are obviously the superior option, but it will be months before they're available in Canada.
The gTablet only has 512MB, versus the 1GB in the development kit. It is actually a superior development choice given that it has an actual display and touchscreen (where I would be simulating the same with the nvidia kit).
My expectations were very low, and my use is not typical. Nonetheless I thought it worthwhile helping out prospective purchasers by posting a quick review of the unit.
Firstly note that I only saw the default interface for mere minutes. It is so widely and viciously panned that the first step after unpacking the unit was to install one of the alternative ROMs.
Installing an alternative ROM is a brainless, low risk process. It is not an advanced operation by any measure of the imagination. Tutorials such as this one take an absurdly simple process and make it seem complex by decorating it with font sizes, weights, colors, and asides (why do so many tutorial pages go to such a headache inducing format? The hodge podge of attention grabbers make it impossible to focus attention on anything).
So I tried TnT Lite. I was disappointed. Frequent crashing. Flash never worked properly. Quirks abound. Still that crappy replacement browser with the bookmarks that didn't work half the time. I applaud the authors, but the results were not pleasant.
I swapped out to VEGAn-Tab 5.1. What a delightful change! VEGAn-Tab seems to be surprisingly solid, it's the stock (excellent) browser, and everything (including the market) just works. It actually makes for a very, very good software experience. There has been one quirk with audio, but aside from that it has been flawless.
From a software perspective, VEGAn-Tab makes this is an excellent Android platform. It is actually far more enjoyable and usable than I imagined.
I quickly loaded it up with some purchases and some freebies: Fruit Ninja, Angry Birds, Kongregate, IMDB and Flixster, and Raging Thunder 2. Everything runs brilliantly, and of course because Android has long been resolution independent, they all make use of the extra screen real estate.
Which actually leads to a related segue. In a number of Xoom discussions there are rampant claims that there is "no software" for the Xoom (meaning no software that takes advantage of the tablet form). That betrays a basic misunderstanding of Android, and of the use of tablets. From an apps perspective, there are a huge number of apps that alter their display based upon the aspect ratio, size, and resolution of the display. In no way is the Android ecosystem in the state that the iPhone ecosystem was when the iPad was first released, where hack solutions like pixel-doubling had to be performed. Varying profiles have been a native part of Android for some time.
Further, one of the most common uses of tablets is as an internet appliance, browsing the rich, open web. With this much computational horsepower you don't need to dumb down the web through a simplified app (the days of apps as surrogates for web sites will thankfully be short lived) or mobile interface, and of course the web is the ultimate user of rich displays. The stock Android 2.2 browser is superb and in VEGA-n-Tab form actually identifies itself as a desktop browser to avoid the curse of crappified mobile sites.
Back to the gTablet, the speed of the device is shockingly good. In the browser it quite literally is the full web experience (with Flash set to ondemand instead of always on enabling cycle-robbing ads). I quickly found it much more enjoyable using the full web site instead of the mobile versions. Sites like TechCrunch work better on this device than they do in Firefox on the desktop. The Flash implementation is close to perfect.
Gaming on the device is superb. Browsing the web is amazing. Playing MP4 videos is, well, flawless, and fit well on the 16:9 screen.
With VEGAn-Tab installed, I'm actually delighted by this device. My young children took minutes to master it (children are remarkably capable of understanding new technology), and my tech critic wife has already been asking if it's available for some casual gaming.
Didn't expect it to be a lifestyle thing. Just a development thing.
But it has a critical hardware flaw that leads me to very strongly discourage its purchase for tablet buyers (those who might see it as a much faster, more capable, open variant of the iPad): The screen is terrible.
It actually has a slightly lower resolution than the iPad, owing to it's lower pixel density (115ppi versus the 132ppi on the iPad. The Xoom, for comparison, features 158ppi), and its somewhat smaller screen. That might sound wrong, given that the iPad is a "9.7" screen" while the gTablet is offered up at 10.1", however that's the lie of the diagonal: The iPad is 45.19 square inches, while the gTablet is 43.56 square inches, and the diagonals reflect the aspect ratios (4:3 for the iPad versus 16:9 for the gTablet).
The resolution on the gTablet is simply too low for something held relatively close to the user. The same number of pixels on a 7" screen would be much more palatable.
Far worse, however, is the incredibly poor viewing angle of the screen. It harkens back to very cheap laptops from a decade ago. This surprised me the most given that Viewsonic is largely a monitor company, so it's strange to see them bungle this so badly.
Held in a landscape position the viewing angle from left to right is decent. Up and down, on the other hand, is terrible, with just a few degrees leading to a complete inversion in the screen. Just trying to hold the device to play a game or view a video and you have to be extremely still or there are massive variations in the visibility of the screen. The sweet spot is actually at an awkward angle in most sitting positions.
Held in a portrait perspective and its worse, with slight variations to the left or right leading to washout or inversion.
I've seen plenty of TN monitors with close-to-IPS qualities. The gTablet display is not one of those. Instead it has the worst viewing angles I've ever seen (on a device where varying viewing angles is inevitable), and significant onscreen dithering and posterization.
I consider this a deadly defect of the device. I'm still over the moon with it as a development target (and marvel at the effortless speed of the unit), but in searching for replacement ROMs I encountered a lot of commentators who are, shall we say, overselling the device, claiming that with a better ROM it is a perfect tablet. It would be if the display wasn't absolute garbage.
If Viewsonic replaced the stock software with VEGan-Tab or a simile, and replaced the horrifically bad display panel with something less unbearable, this would be a killer discount device. As is, however, I would definitely discourage its purchase outside of development uses.
For me, however, it's a delightful holdover until I can get my hands on a Galaxy Tab 10.1 or Motorola Xoom (both of which offer an almost 40% DPI density improvement, not to mention dramatically better viewing angles, colour reproduction, contrast ratio, and so on. Basically a dramatically better screen).
Apple unveiled the iPad2 last week, the device representing a pretty impressive bump in specifications and functionality.
Dual-core processor, significantly better GPU, dual cameras, gyroscope. All of that in a smaller, lighter package than before.
Apple delivers. While companies like RIM are busy showing untouchable prototypes, Apple just slams iteration after iteration out of the ballpark. Not some prototype, but an actual shipping product that hits retail mere days later.
They're shipping the very cost-effective WiFi version at the outset, avoiding the massive blunder that competitors such as Samsung and Motorola made when they brought out 3G-only versions at outrageous prices. immediately losing many prospecitve customers and champions.
And of course Apple executes for volume, confidently ordering counts that allow them to price economically. Aside from perhaps Samsung (the dark horse of the electronics world), most other competitors approach the market tepidly and in an exploratory fashion, expecting to succeed regardless. That is a recipe for failure.
Apple executes in a way that no one has been able to match. It should embarrass competitors like RIM that they can't pull it together in the same way.