Droid Doesn’t: It’s Not Ready For Prime Time
alsop-louie.com
alsop-louie.com
(I've never had my iPhone reach a state where I couldn't make or answer a call immediately, but I might just be lucky).
I'm using my Android phone loaded with some sector-specific application that's, let's say, not written so well. Occasionally, when I go scan something at the factory with it, it takes a while to process because there's more data than the author thought there would be (or something like that), and the application hangs for a few seconds before returning an answer that I need to do my job.
I'm just playing devil's advocate though, I have no idea how common that sort of thing is or if it should be the default behavior. Just that in an open environment, there might be some less than stellar applications that the user should be able to control, rather than the phone.
No application should be so busy that is consuming all the resources.
Because big companies never, ever get by on annoying, but functional software?
One of the reasons I like Android is that I got more control over stuff and I know I'm not alone. Some people don't like the Apple "we know what's right for you" mentality. My point is, people are different, there's no "average phone user". This is not a question of technical skill as there's really nothing technical in "wait" and "force quit". Some people like to be in charge, some people don't, personally I do.
even if iPhone didn't allow multiple apps to run at once, it would still have to deal with crashes. it handles them by unceremoniously quitting the dead app and sending you back to the home screen.
claiming that an average user should be able to know what to do with a dialog box that gives the options 'wait' or 'force quit' ... man, that sort of thinking by competitors is exactly why apple keeps winning all the time, isn't it.
About the other issue: I think Apple "keeps winning all the time" because of the combination of the consistent experience they deliver bundled with a competitive line of auxiliary services (such as iTunes or the App Store) and very strong branding. There's nothing wrong with that, but I don't think that artificially limiting the choices available to the user is a huge contributing factor.
This is the correct way to do it.
I gonna take a wild guess that it's because Apple folks don't want to hear Steve Jobs say those magic words.
What am I missing here?
[EDITED ~1m after posting to add: Perhaps what you mean is that the reason why Apple has been able to do it is that everyone there is scared of having Jobs tell them their user interface isn't good enough. But the previous poster's question wasn't "how come Apple were able to do this astonishingly difficult thing?" but "how come other companies haven't bothered to do this apparently easy thing that would make the user experience so much better?". Jobs's perfectionism can hardly explain that.]
Mostly because it seems like it's almost too horrible to believe. Also (though fanboys will never truly accept the problems) it's just too easy for them to respond with 'you're doing it wrong!'
This account does speak to some specific points, but I'd be nice to see some clear examples that all can see and discuss, instead of just describing general experiences. Shouldn't be too hard to collect, either, if the phone is consistently this bad.
The only applications that I have had to "force quit" have been a couple buggy apps from the market, which I subsequently uninstalled. Yes, buggy software is allowed into the market. That's fine by me; sometimes a buggy beta app is better than no app at all.
And about the shutter button: why would I want it to launch the camera app? On my standalone digital camera I sure don't expect the shutter button to turn it on...
Seriously, how we use phones hasn't change much in a hundred years. The damn thing should be bulletproof at this point. In a smartphone the dialer should be absolutely simple and absolutely work 100%. And the markets don't think like you or I do. They'll put up with something for so long, but if your competitor gets it and you don't you become branded as a failure. It's very hard to recover from that. Ask GM.
I have an HTC magic, never had issues with the dialer. Rogers in canada is pretty good, no dropped calls after 4 months of use. Only app that seems to hang my phone is twidgit. Great app, horrible performance.
I certainly hope Apple disconnects themself from that deathstar and chain called AT&T. Because everywhere else (except maybe the UK where O2 had the exclusive) the iPhone works just fine.
I do not remember ever having a network issue when using a phone. However I do not use a phone in the US. I own a smartphone and primarily use it for its multimedia abilities and not the web.Most of the times I would use the web is to play a song/clip from youtube. Maybe my usage patterns explain why I am a Nokia fanboy.
<BEGIN RANT>
I'm sick of people going on about how programmer productivity is more important than performance. I seriously don't give a fuck about programmer productivity. I only care about the end product. You have a 600MHz processor with about 128megs of RAM on your mobile device, and you still can't make it perform well? There was a time when desktop computers were slower than that, and programmers optimized the hell out of their software to make it perform acceptably on the limited hardware. I can't believe that a company like Google can't make Android perform at least acceptably, if not blazing, fast.
<END RANT>
I consider performance a feature. If it's not fast, I'm not using it. This is how I choose my desktop software, and this is how I choose my mobile devices. Currently, I'm looking at some Symbian devices. Symbian might not be the best mobile OS, but it's extremely responsive even on my mum's ancient Nokia 6600.
EDIT: removed offending "bring on the downvotes" comment.
Performance is something I feel strongly about. At this point, people who know me are sick of my rants on how product X is too slow.
C devs read way, way, way too much into performance issues with managed environments. I'm currently running a large system on an embedded device using a managed environment and its FINE. However we have been careful about our implementation.
The problem is when less "able" teams are able to use managed code to create software on an embedded device. They can be utterly careless with the resources on the device as they are commonly used to playing with desktop where you can get away with a lot. They then create something that doesn't work very well and the C hackers point and laugh and state that managed software and embedded devices is a no-no.
If anything managed teams just need to appreciate the limitations of the device and be more careful when assessing what toys to use. Do that and the managed world is full of win.
Update: "Idiot" is probably a bit harsh. "Naive" is probably a more apt description.
I can buy that game programming will push the limits because many games handle large userland models and need to display much onscreen, but for MOST APPS the biggest problems that lead to perceived sluggishness don't come from using Java but instead from lazy programming where devs assume optimal response to indeterminate-time actions and don't get the optimal case ... e.g., freezing a UI while calling a web service w/ a 30-second timeout.