Android Honeycomb Designer HATES Task Killers

February 3, 2011
29

As Mobilized's Ina Fried adds another interview with Google executive and lead designer on Android Honeycomb Matias Duarte to her impressive body of work, she gets out of him what he believes to be the truth: "Humans shouldn't have to do work computers are good at." He expands by saying that it's silly to think that a human should have to click a button to save their work in order for it to be saved, and that Advanced Task Killer basically flat out shouldn't exist.

Duarte lets Fried know that he "takes issue" with the fact that Advanced Task Killer is used by so very many people, saying that Android does a good job of managing memory without the "help" of the user, adding that he's never had the app installed on any of his devices. Duarte continued by noting the failings of the human brain, “Managing the computing resources, deciding what takes up resident RAM, what takes up resident cycles - this is not a task we should ask humans to do, because, first of all, humans don’t do a very good job of it. They don’t have enough information and enough context.”

Duarte notes that another bit having to do with this topic is the idea that the user should be the one to decide if he or she is interrupted in any of his or her tasks. To accomplish this goal in Honeycomb, he notes, they've basically pushed all notifications to one spot [notifications bar, lower left of the screen] and have added "do not disturb" options that allow the user to be bothered by no note.

[Via Mobilized]


Recent Stories

  • String

    News flash: most Android devs HATE task killers. Speaking for myself, they’re the single biggest cause of problems for my users. The task killer kills my app’s process, the app’s background functionality stops working (big surprise there) and then the users complain to me that MY app’s broken. Idiots.

    I’ve put a lot of time and effort into ensuring that my app’s background jobs don’t use any more system resources than they need to. They run when they’re supposed to, they finish, and then the OS cleans up after them. Just as it’s designed to.

    Task killers are a blight on the Android ecosystem.

    • Hiatusjosh

      Then perhaps the users should be given an easy way to CLOSE tasks, then they would not be forced to kill them.

      It seems to me, in my finite knowledge, that having apps merely stack on top of each other would suck down CPU, RAM, and battery. And they do.

      Personally, its caused several freezes on my honeycomb tablet, and I’m more than a tad bit pissed off.

      Now I can’t blame developers, in this case I point the finger squarely at google.
      Why do I blame google? Because this should have been solved long ago with two buttons.

      Minimize and Close.

      With those two buttons, users could easily choose which apps to gracefully shutdown, and which ones to keep running. It’s not difficult to implement, and its certainly not a patent issue, since FreeBSD and linux both have public free licenses on it.

      It all boils down to OS design flaw, and the jaw droppingly disdainful way google has treated devs and end users by ignoring it.

  • 10% Warning

    Then give the devices larger or better batteries!

    • http://twitter.com/lgtspecb Stewart Gateley

      If you are using a task killer in an attempt to extend your battery life, you completely missed the point.

  • Jpetz2001

    To put this argument into better perspective.. there are a good majority of apps out there that have a lot of buggy issues (for many reasons: bad programming, beta testing, early development, plain neglect, etc..) that sometimes require a way to end the draining of battery life or to stop weird situations. Agreed that if the apps are written well they do not have any need for a task killer. Just remember that not all apps are the same and not every developer tends to the maintenance of their apps as well as others. For the majority Android apps are also usually trial and error when you choose to download them. Personally, a task killer is useful to me for these reasons.

    • Ed

      Then ditch those apps and find good replacements. Why use a TK to restart them over and over again?

  • http://twitter.com/lgtspecb Stewart Gateley

    Being an app developer, I can confirm that task killers are the biggest pain on the Android platform. I completely agree that they should not exist, or at least not be the most popular apps. The real problem is that these are installed by wireless shops when activating the phone, or when a user complains about battery life, performance, or whatever, and they set them to run aggressively in the background thus taking more resources, killing the battery faster and additionally creating all sorts of issues with the OS and apps. When someone says they have issues with Android, it is almost always as a result of task killers.

    That said however, I do use one myself. First thing every morning when I unplug my phone, I kill off anything that is running. By that time any processes should have finished their work, and are simply sitting dormant and unneeded, just Android hasn’t killed them yet because it does not need to free up any resources for other tasks yet. I do realize that the RAM they take does not matter since each process runs in its own jvm with its own memory pool, and an idle process is not causing any harm. Android will kill them off when it needs to, I just like to start my day fresh.

    What it does do though is let me easily keep an eye on processes. If I frequently see an application running that should not be, it helps alert me which apps need more work. They get uninstalled and a comment and email to the developer, because as Jpetz2001 says, not all devs write proper apps and follow best practice guidelines.

    • http://androidcommunity.com/ Chris Burns

      Would you say they’re a “pain in your Android?”

  • http://pulse.yahoo.com/_JYKAWICZTHSAJK6FFFGGVYXR74 c

    this is all Verizons fault… i worked as an in-store tech when android was first launched @ verizon. they required us to install it and push ppl to use it. i tried to explain to them why they didn’t need it but had no luck, every phone had to have this installed before it left the store. the main reason they pushed it is the blackberry storm… they took such a hit on that device because it doesn’t handle running processes. ppl didn’t understand that you have to go into the options of every program and close it manually, otherwise it would run out of memory and then would freeze and not answer calls etc.

    • Ed

      last time I was in a VZW store I saw them installing it on some ladies new Droid X I walked right up to them and told the point blank its unneeded and does more harm that good right in front for the customer. I don’t think they were too happy with me.

  • Anonymous

    So doesn’t get it. Task killers are essential because I don’t have an unlimited data package from my operator, few people outside the USA do. Task killers stop me haemoraging money each month from the apps constantly checking for updates, maps updating, Google spyware (sorry advertising services). I need SOME connectivity for email, and connectivity when I want to browse, update Facebook etc. BUT I need a way of controlling the badly behaved apps and system components that hog data. Without task killers (and an unlimited data contract) Android is far too expensive for anybody to use.

    • Warden Chinbach

      This is what he means. You have no clue. Task Killers are about system resources, not you internet bandwidth. the Market app is the only one that checks for updates, and that uses basicaly nothing. Maps updating? what are you even talking about here? if you aren’t in the mapps app then it won’t download maps. and even if you are, it caches them offline so you don’t need to use any internet at all. Google spyware? they don’t spy on anything except internet usage when you’re signed into your account in the browser. we know this because it’s open source and can see the code. people who think they know something are the real danger to android.

      • Anonymous

        Care to explain how I can minimise my monthly phone bill without using a task killer? (without uninstalling Facebook, RSS reader, any ad supported 3rd party app)

      • Warden Chinbach

        Easy: http://www.appbrain.com/app/3g-watchdog/net.rgruet.android.g3watchdog

        And what I’m saying is that task kilers are doing more harm to your system than good for your internet. Metaphorically, your system start to pain a really nice picture and right in the middle of it, ATK comes in and rips it up and throws it in the fire. It’s mentally devastating. So it just starts again and again and again. Using an ATK for 3g usage makes no sense. It wrecks your system, will cause force closes, and drain your battery. Use an app that is meant for internet monitoring and not for task killing. They’re completely different.

        Also, let me know what you think of 3G Watchdog after you try it out.

      • http://androidcommunity.com/ Chris Burns

        Turn the phone off. lols

      • Ed

        turn off background updating. and if you don’t want to use internet resources why in the hell do you have a RSS feed and a 3g phone?

    • Bp

      Learn your phone settings and you won’t need a TK which is only restarting your apps anyways. EVERY thing you mentioned can be turned off in the settings. You are the perfect example of someone that doesn’t know shezzzz not believe someone that does.

  • Anonymous

    (oops, double post)

  • Rudyy50

    matias duarte now joins bill gates and steve jobs in thinking the consumer is stoopid, when all the consumer wants is to run the apps we want to run, and those we do not want to run or do not want on our phones, do not run or are removable from our phones; we don’t even want them launching. they’re our phones.
    make it happen duarte

    • Warden Chinbach

      you don’t understand, which is exactly what duarte is saying. up until 2.2 task killers were useful. with 2.2 and greater, it may look like apps are running, but they aren’t. they are shown in the active apps screen, but they are being controlled by the system. something shown there basically means it has the capability to do something when the app is closed. it is barely using any extra power at all (most of the time). task killers close them for no reason, then android 2.2 or greater reopens it to allow it to do what it needs to, then it’s closed again and then it’s opened again, etc. THAT eats up power, and that’s why ATK should not exist.

      • Ed

        2.2 has nothing to do with it 2.1 and earlier all worked the same way.
        And BTW full RAM doesn’t take any more power to run that empty RAM it has to be refreshed no matter what. Once you leave an app via the back button it is suspended and sits in memory incase you want it again but if you exit with the home button you left it running. So if you don’t want to multitask make sure to use the back button to exit.

        Google removed task killing API’s in 2.2 and that should tell you something. All you do now when you kill a task is restart it. So if for those that think a TK is needed, have at it as it does nothing now but restart the app and that my friends does takes power and resources

        You don’t have to believe me but at least Google “why task killers are bad” and “Why Task killers are good” If that doesn’t educate you nothing will.

      • Warden Chinbach

        did you mean to respond to the guy i responded to? you’re basically agreeing with almost everything i said. and 2.2 did add better automated task management

    • Warden Chinbach

      you don’t understand, which is exactly what duarte is saying. up until 2.2 task killers were useful. with 2.2 and greater, it may look like apps are running, but they aren’t. they are shown in the active apps screen, but they are being controlled by the system. something shown there basically means it has the capability to do something when the app is closed. it is barely using any extra power at all (most of the time). task killers close them for no reason, then android 2.2 or greater reopens it to allow it to do what it needs to, then it’s closed again and then it’s opened again, etc. THAT eats up power, and that’s why ATK should not exist.

    • Anonymous

      consumers are stupid and that is a truism

    • Bill

      And you join the ranks of those that think they know something they don’t.

  • Anonymous

    In theory, I agree with Duarte’s points, but in Android 1.6-2.1 it’s not the reality. Yes, Android as an OS should know how to properly allocate/release resources. Unfortunately though, in earlier Android iterations, it was a bit too generic in order to translate into actual benefit. This was further exacerbated by the crapware loaded by carriers and OEMs (mostly carriers).

    For example, since the AOSP doesn’t have any garbage pre-loaded, there’s very little that isn’t accounted for in system resource management. But on my EVO, where NASCAR, SprintTV, HTC Sense and all sorts of other bloated, obligatory software runs at startup and eats system resources either without my prompting, or even in many cases without my knowledge – a 3rd party ‘Task Killer’ is absolutely necessary.

    Otherwise, what often happens is that the crapware loads itself in the background, takes up resources from the stuff I want to do in the foreground and then as I need some of those background resources, the garbage collector runs in the same thread as other CPU requests (like drawing the display) and causes a noticeable hiccup in the process.

    That said, since 2.2 I’ve not needed any other 3rd party solution – though I’m also running a custom ROM (Myn’s Warm Two Point Two RLS5). Hopefully with Honeycomb, and the new Garbage Collection combined with a GPU driven UI, Duarte’s points will be more relevant and we truly won’t need a 3rd party resource manager.

    • Bill

      You are dead ass wrong. Just because an app preloads doesn’t mean its running and the resourses you refer to will be freed if needed. Also FYI 2.2 preloads apps just like all the other version before it.
      I just don’t understand how so many people that don’t know anything about the OS try to decredit those that do. Makes no sense.

      Google and EVERY dev that works on an Android will tell you TK’s is bad but there is always some “know it all” that doesn’t know anything telling you its not true. Amazing!

      • Anonymous

        Actually no, I’m not. I did however make one mistake… The improved ‘concurrent’ Garbage collector came in 2.3 (Gingerbread)

        “The Dalivik VM introduces a new, concurrent garbage collector that minimizes application pauses, helping to ensure smoother animation and increased responsiveness in games and similar applications.”

        I’ll see if I can put this in a way that even someone like you can understand. When carriers pre-load a phone with stuff like ‘Sprint TV’ which can’t be removed by end-users (without rooting)it not only occupies system memory, but also runs updates and other threads in the background. While Android does automatically free and reallocate resources, the garbage collector has (until Gingerbread+) been a single-threaded operation. This means that the UI has to wait for the garbage collector and in the process shows a noticeable hiccup or even hanging in more memory intensive apps. Running ATK after a reboot removes crap from memory that shouldn’t even be installed, let alone running.

        BTW – I am a dev, so obviously YOUR statement is incorrect. If you’re not a dev yourself (which clearly you aren’t), you should avoid inflammatory comments before you make yourself look like an ass. Too late this time, but better luck next.

      • Anonymous

        Actually no, I’m not. I did however make one mistake… The improved ‘concurrent’ Garbage collector came in 2.3 (Gingerbread)

        “The Dalivik VM introduces a new, concurrent garbage collector that minimizes application pauses, helping to ensure smoother animation and increased responsiveness in games and similar applications.”

        I’ll see if I can put this in a way that even someone like you can understand. When carriers pre-load a phone with stuff like ‘Sprint TV’ which can’t be removed by end-users (without rooting)it not only occupies system memory, but also runs updates and other threads in the background. While Android does automatically free and reallocate resources, the garbage collector has (until Gingerbread+) been a single-threaded operation. This means that the UI has to wait for the garbage collector and in the process shows a noticeable hiccup or even hanging in more memory intensive apps. Running ATK after a reboot removes crap from memory that shouldn’t even be installed, let alone running.

        BTW – I am a dev, so obviously YOUR statement is incorrect. If you’re not a dev yourself (which clearly you aren’t), you should avoid inflammatory comments before you make yourself look like an ass. Too late this time, but better luck next.