Carlton Banks
Legendary
Offline
Activity: 3430
Merit: 3080
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 22, 2013, 12:40:15 AM |
|
… it's like they're trying to indoctrinate people to expect a narrower range of choices, all for the sake of removing a single menu item. … Removing a menu item is very valuable, particularly if the menu item is superfluous. Android is for mobile phones, and mobile phones are for everybody, not just for technophiles. Here are some utterly negative examples from the advanced Wi-Fi settings: "Keep Wi-Fi on during sleep", "Scanning always available", "Avoid poor connections", "Wi-Fi frequency band", and in a sarcastic sense my personal favorite: "Wi-Fi optimization" - "Minimise battery usage when Wi-Fi is on". Next they will probably introduce: "Minimise battery usage when Wi-Fi is off". None of these settings should be there, as the phone can make a much better decision for each of them than any normal phone user. They are outstanding examples of the designed-by-engineers-for-engineers category. An app should never offer the user any choice that has no significant effect on the result for the ordinary end user. That's not a very meaningful response to my point. If there were an over-abundance of menu choices that action useless functions, then sure. But that was not the point I was making at all
|
Vires in numeris
|
|
|
Mike Hearn
Legendary
Offline
Activity: 1526
Merit: 1129
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 22, 2013, 10:13:02 AM |
|
At the moment the wallet app could tolerate a few more options, but the point hgmichna makes is a well known one in the software design industry. It always seems easier to just throw in another setting than make something work automatically for everyone, transparently. It's like boiling a frog. One day you wake up and realise your app is a bloated disaster zone of random switches and buttons that make no sense to anyone new.
It's so easy for this to happen that even Android - which hires entire teams of designers, does usability studies etc - in the dark corners it still suffers from this problem. The brilliant WiFi settings are a good example - what the fuck does "minimise battery when wifi is on" do and why would someone ever NOT want to have it enabled? This switch must do something, but what? Why does this setting even exist? Most likely it's the result of some kind of internal disagreement inside the Android wifi team ... they couldn't decide on whether a particular optimisation was worth the cost, so instead of making a clean decision they pushed it onto the user.
Making these tradeoffs is always difficult. Modern operating systems try to subtly push developers in the right direction by calling them "preferences" rather than "settings". A preference is something that is genuinely a matter of taste and will always differ between users, like a wallpaper or what sounds to play. A setting is something that controls how the software achieves its desired results and which has a correct value in almost all cases.
The hardest time to make the right call is when a feature that should work automatically for everyone isn't fully baked, and there are genuinely sound reasons why a power user might want to tweak the inner workings. Perhaps background sync is currently like that, although it feels like it's nearly there. Done properly it should never be noticed and have no impact, so why would you ever tweak it?
That's why Andreas is saying things like, if you see a lot of battery or data usage impact, let's fix that. Let's not just make background sync a toggle. Because otherwise we'll never make the feature work 100% and the setting will be stuck there forever, with the majority of users getting a worse default experience.
|
|
|
|
Carlton Banks
Legendary
Offline
Activity: 3430
Merit: 3080
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 22, 2013, 01:09:02 PM |
|
It's a strangely mellifluous argument being presented.
I say "why can't I control what the software does?"
And people reply (at somewhere above 500% verbosity) "but that's not what you want"
This sort of concept of user control would be totally unacceptable for software development suites, or image manipulation software, or CAD software (trying to convince people they don't need to be able to control what their software does)
Why can't I control what the software does?
|
Vires in numeris
|
|
|
Mike Hearn
Legendary
Offline
Activity: 1526
Merit: 1129
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 22, 2013, 02:22:57 PM |
|
The Android wallet app isn't a CAD suite or IDE. Those are power tools for professionals where you are expected to take a long time to learn how they work. We really don't want Bitcoin to come across as a pro-tool for specialists.
|
|
|
|
Andreas Schildbach (OP)
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 22, 2013, 03:57:10 PM |
|
Thanks, Mike.
Yes, Bitcoin Wallet is aimed mainly at non-technical people. Concepts like "synching" does not make any sense to them, so I want to remove them from the UI entirely.
If you are a power user and want full control, I suggest building your own version. It's open source.
|
|
|
|
Carlton Banks
Legendary
Offline
Activity: 3430
Merit: 3080
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 22, 2013, 04:46:10 PM |
|
I fail to see how "Close" is a power user feature. Not convincing, guys
|
Vires in numeris
|
|
|
Andreas Schildbach (OP)
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 22, 2013, 04:50:09 PM |
|
I fail to see how "Close" is a power user feature. Not convincing, guys
"Close program" is very power-userish and clearly a relict of the past. Most users just don't care what lies behind them, they just open the next program. Heck, even the concept of programs is obsolete. The only thing that counts is tasks. That's the main theme of Android, as it was designed from version 1.0 on.
|
|
|
|
Carlton Banks
Legendary
Offline
Activity: 3430
Merit: 3080
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 22, 2013, 06:40:51 PM |
|
Ergo, Ignorance is Strength?
How can we expect to inspire programmers to take up the discipline when all our operating systems are becoming Nintendo reminiscent? Your attitudes are very depressing, children are capable of learning anything, including how to be lazy and dependent
|
Vires in numeris
|
|
|
Mike Hearn
Legendary
Offline
Activity: 1526
Merit: 1129
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 23, 2013, 08:18:22 AM |
|
That's an argument you should take up with the designers of Android and iOS. Obviously both teams worked independently and arrived at the same conclusions, so neither platform has a well defined concept of "stopped" vs "running". Nor do they have user-navigable file systems or other things that are taken for granted on the desktop space.
In fact Android is kind a pain in the ass to program for because your app will be left running when it's no longer on screen, until the OS decides to kill it, at which point you may or may not get a chance to save files and do general tidyup. The result is that Android doesn't have a clear concept of saving files either. You're expected to constantly write your state to disk as soon as it changes or you get pushed off the screen. It's simpler for the user but harder for the programmer.
Manual resource management is usually indicative of a bug. Andreas thinks the high battery usage might be coming from a bitcoinj issue to do with what happens when network connectivity is flaky - I'll make it a higher priority to fix that and then the abnormal battery usages should go away for good.
|
|
|
|
CIYAM
Legendary
Offline
Activity: 1890
Merit: 1086
Ian Knowles - CIYAM Lead Developer
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 23, 2013, 08:35:24 AM |
|
That's an argument you should take up with the designers of Android and iOS. Obviously both teams worked independently and arrived at the same conclusions, so neither platform has a well defined concept of "stopped" vs "running". Nor do they have user-navigable file systems or other things that are taken for granted on the desktop space.
Strange - the Galaxy S3 I have clearly shows whether an application is "running" in the Settings -> Applications (and you can stop them from there too). Also it has a file explorer (the only way I know how to install APKs via USB) which I think would be classified as a "user-navigable file system".
|
|
|
|
Mike Hearn
Legendary
Offline
Activity: 1526
Merit: 1129
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 23, 2013, 08:42:54 AM |
|
And how often do you think ordinary users go into the "app manager"? It's buried in the settings screen for a reason. Stopping apps from there doesn't even do anything - if they're off screen the OS might stop them itself when it needs the resources, and they can be restarted at any time even if you stopped them. It's something of a placebo button for people like you guys ![Wink](https://bitcointalk.org/Smileys/default/wink.gif) If there's a file explorer in the S3 then it's something Samsung added. Apps themselves never expose it to the user (or aren't supposed to). Samsung have a pretty severe case of throwing everything they can think of into TouchWiz regardless of how useful it is. One reason why I prefer the Nexus phones.
|
|
|
|
CIYAM
Legendary
Offline
Activity: 1890
Merit: 1086
Ian Knowles - CIYAM Lead Developer
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 23, 2013, 08:47:49 AM |
|
Stopping apps from there doesn't even do anything
Well actually it *does* as when the S3 is poorly performing I go into Settings->Applications click in Running and kill off a bunch of them and voila it performs much better - are you gong to tell me I just imagined that (every time I've done it)? We are talking the difference between taking up to 20 seconds to respond to a click (before me killing tasks) and less than 1 second to respond (after). As for the file explorer whether added by Samsung or not I find it to be a very useful tool for copying files and installing apps to/from USB flash drives.
|
|
|
|
Mike Hearn
Legendary
Offline
Activity: 1526
Merit: 1129
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 23, 2013, 08:53:52 AM |
|
And then eventually things slow down again, right?
If your S3 is really taking 20 seconds to respond to a tap then something has gone very badly wrong there. That's not a UI design issue. That's a "you have installed apps that are buggy and behaving very badly". The right fix is not for you to be constantly screwing around with an app manager, even though that might be a quick way to temporarily stem the bleeding. The right fix is for the apps you use to not suck.
|
|
|
|
CIYAM
Legendary
Offline
Activity: 1890
Merit: 1086
Ian Knowles - CIYAM Lead Developer
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 23, 2013, 08:58:57 AM |
|
And then eventually things slow down again, right?
Probably so - although (let me just quote your last sentence)... The right fix is for the apps you use to not suck.
..the apps in question are Chinese ones that my wife (and not myself) uses (so unfortunately not much choice for me with regards to changing that apart from buying another device). So if I didn't have the ability to shut down the tasks in question then it would be much worse. I am not joking that at times it gets so slow I think it must have crashed (but then suddenly comes back to life) and I don't doubt that the problem is most likely due to badly written applications. The point that I'd like to make is one of "leaky abstractions" - yes it would be nice if apps all performed correctly and never had bugs but that won't be true ever as you should well know. So to take away the ability of the user to do something about an app that is behaving badly IMO is a stupid idea (although making it an *advanced* menu item or whatever is fine with me).
|
|
|
|
Dabs
Legendary
Offline
Activity: 3416
Merit: 1912
The Concierge of Crypto
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 23, 2013, 09:00:07 AM |
|
I still like to be able to run my bitcoin wallet for android, on demand. It keeps running even though I disconnect it on purpose or I force-fully close it.
Dunno, but that's just me.
I don't want the OS deciding some things, such as when to kill it. When I kill it, I don't want it resurrecting unless I run it again.
Yes, I read and understand the earlier points, but some of us Android users are a little picky about apps and stuff, not to mention rooting it and related stuff. (I also understand one major reason to root your device, and that is to take full control of it.)
Placebo or not, I have my "App Manager" or "Active Applications" on my home screen. I exit and kill off everything when I'm done with them, then clear the RAM.
I don't have to do it, but ... I just do. Some people are wired that way.
|
|
|
|
Mike Hearn
Legendary
Offline
Activity: 1526
Merit: 1129
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 23, 2013, 09:02:38 AM |
|
Probably those apps are hitting the disk way too hard, in the background.
An ex girlfriend of mine had a Galaxy S2 that was like that. The UI was like treacle, I couldn't believe she used the phone at all. A bit of debugging revealed that she had some kind of crappy Lotus Notes app installed which was constantly using the disk in the background, for god knows what reason. Removing it fixed the phone.
Unfortunately if you're in the position where you have to use apps written by incompetent developers and those apps trash your device, but you still can't do without it - then you're in a bad position for sure. Maybe the developers don't even realise their app is doing that. But it's not a general observation about writing Android apps, that's just bad luck on your part.
|
|
|
|
Dabs
Legendary
Offline
Activity: 3416
Merit: 1912
The Concierge of Crypto
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 23, 2013, 11:11:23 AM |
|
Granted, there are literally hundreds of thousands of apps in the play store, and even mote APKs outside. Some are good. Most are crap. Even the games, some just... I don't get them. Hehe..
|
|
|
|
hgmichna
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 26, 2013, 12:48:45 PM |
|
I still like to be able to run my bitcoin wallet for android, on demand. It keeps running even though I disconnect it on purpose or I force-fully close it.
Dunno, but that's just me.
I don't want the OS deciding some things, such as when to kill it. When I kill it, I don't want it resurrecting unless I run it again.
Yes, I read and understand the earlier points, but some of us Android users are a little picky about apps and stuff, not to mention rooting it and related stuff. (I also understand one major reason to root your device, and that is to take full control of it.)
Placebo or not, I have my "App Manager" or "Active Applications" on my home screen. I exit and kill off everything when I'm done with them, then clear the RAM.
I don't have to do it, but ... I just do. Some people are wired that way.
They are called control freaks. Women sometimes have a problem with their partners when they are control freaks. ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) Seems to be a predominantly male phenomenon. I am a computer programmer, and so I am some kind of control freak by profession, because my professional desire is to control exactly what the computer does. But when it comes to my Nexus phone, I actually enjoy its well-programmed automatisms, like automatically killing programs when they are no longer needed and when the RAM is needed for something new. I always wish for more automatic goodies, rather than for more control. There are already enough things in life that need to be controlled. Consequently, when I write a computer program, I think twice or even more often, before I leave a decision, a setting to the end user. There is also a saying that, if there is a setting, users will set it wrong. As somebody who knows Android well, some people come to me when they have problems. One of the most frequent set of problems is that many clueless users apparently have an intense desire to switch everthing in their smartphones off. Then they come to me and ask for help. * My GPS takes very long to get a fix. – The guy has disabled data and probably Wi-Fi as well. * I cannot get a network. – The guy has manually selected a particular network and forgotten or never realised that he should switch that back to automatic. * Google Maps does not show my location. – Sure enough, the location services are off. * My compass does not work. – They guy has stuffed his smartphone into a cover with a magnetic lock. OK, that's a different matter, but it shows how clueless people often are.
|
|
|
|
Carlton Banks
Legendary
Offline
Activity: 3430
Merit: 3080
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 26, 2013, 04:47:48 PM |
|
I am a computer programmer, and so I am some kind of control freak by profession, because my professional desire is to control exactly what the computer does. But when it comes to my Nexus phone, I actually enjoy its well-programmed automatisms, like automatically killing programs when they are no longer needed and when the RAM is needed for something new. I always wish for more automatic goodies, rather than for more control. There are already enough things in life that need to be controlled. Consequently, when I write a computer program, I think twice or even more often, before I leave a decision, a setting to the end user. There is also a saying that, if there is a setting, users will set it wrong.
Now there's a good argument (or the beginnings of one): power user environments are not well suited to the real world environment that phones mostly get used in, e.g. when you're traveling around to keep various appointments, whilst simultaneously paying in shops, communicating about other scheduled stuff on different days, swiping NFC at public transport terminals etc. OS automation of managing background tasks is a useful model in that context, and it's easily the sort of overloaded situation you could find yourself in when you're using Bitcoin Wallet Android for real. Android, and certainly Cyanogen, have a lot of functionality "buried" to just the right depth; you don't want to be given the option to change international dialing or mobile network options at a shallow level of the settings, as you could inquisitively or accidentally change them to something that is difficult or stressful to revert when you least need that burden (making emergency calls or if lost, stranded or drunk etc). So it's arguably a good model for practical usage of the device: you're never going to find yourself using a power user configured desktop machine with 27" monitor in the range of circumstances that you could with a phone. I'm not going to pretend I'm not still keen for someone to innovate a power user/control freak model for those of us so inclined, and Cyanogen may drift away from that trajectory now they're "sponsored". Still a nascent space though, we will see.
|
Vires in numeris
|
|
|
2weiX
Legendary
Offline
Activity: 2058
Merit: 1005
this space intentionally left blank
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
November 22, 2013, 07:07:35 AM |
|
tried to submit two "issues" (really, feature requests), but the site timed out on me.
a) peg the fee to the USD24h average. the fee shouldn't be more than, say, 2 to 5 cents. right now, at 700usd, it's about 7 cents, which isn't too far off. however, advertising bitcoin as a means of convenient "micro"-payments will become increasingly difficult with an increasing bitcoin exchange rate. pay my newspaper with bitcoin and pay that same amount in fees? nothanks.
b) casascius import casascius coins are getting increasingly popular around these parts. wouldn't it be awesome if I were able to import these coins hassle-free with my favourite bitcoin app?
|
|
|
|
|