Live data from Hacker News

Standing Up For Android

shiftyjelly.wordpress.com

41–50 of 74 posts

Re: Standing Up For Android

#41
post #4

I'm still curious about the details of his conversations with his users about why they choose Android. Are any of them choosing an Android phone because of the Android OS or app ecosystem? Aside from some hackers that might like the hackability and extensibility of the Android OS, or people that reject Apple because of their business practices or philosophies, I strongly suspect most users that buy Android phones "be…

Android has one killer feature for me: widgets.

Having my upcoming calendar on screen at the same time as the phone/sms/mail/web buttons just works well for me. I imagine others would get similar value out of a music and facebook widget combo.

Re: Standing Up For Android

#42
post #29

This article is obviously written from a developer's perspective but as an end user my problem with Android is simply that I have yet to find any device I enjoy using. I enjoyed WebOS, unfortunately it was limited by subpar hardware, and I've enjoyed my brief encounters with WP7. The two Android devices I've owned just felt seriously half-baked and perpetually in a state of flux. I feel like Google applies their mind…

It's a question of preferences I guess. I have both an iPhone 3GS and a Galaxy S. Surely, the 3GS is a little old now, however it is upgraded and I like its design more than iPhone 4. I sometimes have days when I switch between them depending on my mood. In general I prefer my Galaxy S over my iPhone. The iPhone does have better 3D games. Maybe that's because Android upgrades are so slow to reach customers, so the sa…

Oh, no, it's on an entirely different level. You not only have to deal with elastic screen size, you also can't tweak to pixel-perfection nearly so easily as you can with iOS. If this were all that was wrong, Android would be better. However, due to fragmentation, any app with nontrivial data parsing/caching/display requirements that wants to be both widely usable as well as robust and stable needs to (in my experience):

1) Use the compatibility library for lazy-loading and easy reloading of data via CursorLoaders and SimpleCursorAdapter. This means mostly abandoning ArrayAdapter (it can easily cause eternal garbage collection if your dataset is slightly too object-heavy), assuming your data is mostly expressed in rows in the SQLite database.

2) Use Content Providers, as this is the only simple way to make the CursorLoaders work. Lots of boilerplate and semantics to accidentally get wrong, and URI overhead that you really don't give a damn about.

3) Either use a service or something resembling one that's initialized in Application#onCreate() to make API calls that store into the database (having them run inside an activity can cause nasty bugs if you're not careful as AsyncTasks are unceremoniously killed when rotation causes the activity to be killed and recreated)

I'd have to say as a developer of both iOS and Android, iOS is way, way more flexible, and gives you better APIs, and frees your mind to work on interesting problems. Android has too many development dead-ends that are easy to waste time on, and an irritatingly slow build process, if you want to ensure your build doesn't have any bad information from dirty caches that failed to clean. I can't say how many times I switched git branches only to find images and color resources still stuck on old values, even when I was exporting to deploy the apk.

tl;dr: Even if Android is worth developing for, it's still a time suck because a lot of little things cause problems. Nowhere is it made more clear that simplicity requires complexity than in the comparison between iOS and Android, because Android shoves all of that complexity in your face with not a whole lot in terms of guidance to guide the way. Meanwhile, Apple's documentation is world-class.

EDIT: not to mention different devices appearing differently because of stupid default themes, the lack of a stable image loader service that doesn't cause memory and application response issues at volume, crashing inexplicably because some bitmap refused to decode, random devices with non-compliant h.264 decoders failing on perfectly valid videos - randomly during successful playback, too! - vocal commenters/raters using extremely old devices complaining about the lack of support, occasionally nondeterministic state preservation when paging out views/activities, and a fuckton of other shit that's annoying as hell.

Re: Standing Up For Android

#43

Ask TeleNav's revenue split between iOS and Android. iTunes is the mothership of all podcasts, while on iOS podcast lacks serious features still it works and that's most people need.

iOS doesn't really have specific podcast support at all (just a category in the Music app and that's it) -- the magic is all baked into iTunes. Unfortunately, as Apple are making iOS devices less and less reliant on iTunes, the entire eco-system's podcast support falls by the wayside.

Fortunately, there are a couple of excellent $2 apps to plug the hole.

Re: Standing Up For Android

#45
post #25

I am 100% for holding a mirror up to the weird industry of Apple bloggers constantly patting each other on the back for being brave enough to support a giant company while throwing schoolyard insults at any one who dares compete with Apple (though I honestly just file them in the same department as sports writers now: rarely insightful, yet a highly amusing sideshow), but let's have some honesty here. The only reason…

This may be true, but most Android devices ship with some kind of weather widget built in (often on the home screen) in a much more visible way than the iOS weather app. You'd think that would mean there would be more demand for the iOS app. The 51/49% split there is interesting.

The visibility on iOS might depend on how often normal users access the status tray. I have the weather widget in it, so even when not interested I get to see the forcasts five or six times a day at least. I wouldn't imagine buying a app for basic weather checking.

Re: Standing Up For Android

#46

As odd as it may seem, I cringe every time I think about developing on Android. It's not the development that gets me. Honestly, I can't stand the emulator. It takes so long to boot up, and is such a resource hog when running. The iPhone emulator is also a resource hog, but I can close it without anticipating a 2 minute bootup when I build my application.

Get the x86 emulator installed. It boots in a second and is damn, damn fast. The reason the standard emulator sucks is because its emulating an ARM device - the x86 emulator has no such restraint. Its a HUGE difference in flow.

Re: Standing Up For Android

#47
post #45
post #25

Earlier quoted context omitted.

This may be true, but most Android devices ship with some kind of weather widget built in (often on the home screen) in a much more visible way than the iOS weather app. You'd think that would mean there would be more demand for the iOS app. The 51/49% split there is interesting.

The visibility on iOS might depend on how often normal users access the status tray. I have the weather widget in it, so even when not interested I get to see the forcasts five or six times a day at least. I wouldn't imagine buying a app for basic weather checking.

On Android it is usually even more in-your-face - here's a screenshot from the default setup for HTC Sense: http://smartphoneblogging.com/wp-content/gallery/htcsense/ht... (that's just an example - Samsung, Motorola, Sony, LG are all similar)

Every time you unlock your phone you see the weather.

Re: Standing Up For Android

#48

As odd as it may seem, I cringe every time I think about developing on Android. It's not the development that gets me. Honestly, I can't stand the emulator. It takes so long to boot up, and is such a resource hog when running. The iPhone emulator is also a resource hog, but I can close it without anticipating a 2 minute bootup when I build my application.

  1) enable USB debugging on your Android device
  2) connect it to your computer with the USB cable
  3) deploy your app from Eclipse
Took me one minute and I could test the app instantly on the device.

Re: Standing Up For Android

#49
post #16
post #6

Marco's reply: http://www.marco.org/2011/12/07/standing-up-for-android

"I can’t afford to invest months of development time into learning the platform and making an Android app, then supporting and maintaining it in parallel with my iOS app indefinitely, with so many other data points telling me that it almost certainly won’t be worth the investment." I wish he'd elaborate on these data points. Not doing so, I'd still believe that Marco just hates Android.

His take on android is spread in myriads of little bits in the past posts, like this one http://www.marco.org/2011/11/21/appleinsider-android-paid-ap...

Now, looking for all of this bits is a hassle. I you are really interested, looking for his podcasts on 5by5 could be a alternative way.

Re: Standing Up For Android

#50

I certainly don't speak for anyone other than myself, but I buy Android devices purposefully and pretty much for 2 reasons: #1 The Google ecosystem. I'm already committed to gmail, google voice and google calendar via multiple google apps accounts (my own personal gmail, plus a google apps work account). Being able to log into my google apps accounts once on the phone and have everything (contacts, events, voicemail…

Maybe Nokia might be interesting for you. I suppose they still ship free offline navigation with their newer phones. (Google Maps requires an online connection, although by now you can apparently cache some small parts of the map in advance).
Post reply on HN