EDIT: This was supposed to be a reply to the answer by Valdes, but for some reason LW keeps posting it as a separate answer. No idea why.
Most people are incompetent, and the competent ones are usually busy. So unless you pay the market price (quite high) or the project is super exciting (to someone other than you), you will get a crappy app. It’s not just the code, it can be a crappy design, or utter lack of empathy with the user.
Recently I use an app to record my daily medicine usage. The idea is that every day I take a pill, and I confirm that “yes, today I took a pill at X o’clock”. (Or: “today I didn’t”. Or, I forget to enter either information today, so tomorrow I enter it also for the previous days.) Then it uploads the information to a server. How difficult can this get?
First I start the application, and I need to enter a password. Then it takes about a minute to authenticate me on a server. I appreciate the concern for privacy, but why the fuck can’t the password just be verified locally?
Then I need to choose whether I want to report the pill usage, or read the tutorial. I have already read the tutorial, why can’t it remember this simple fact and skip the screen?
The next screen tells me that I have reported the pill usage for yesterday, but not for today. Thank you, Captain Obvious, that’s like 95% of situations when I use the app. Why can’t you just skip this screen in such case, and only display it when something unexpected happens, such as I have already reported the pill usage for today, or I forgot to report it yesterday?
Then it asks me whether I took the pill today, and I need to check the “yes” or “no” option, and then click Next.
Then there is a screen that tells me to select time. I need to click a clock icon, it displays a modal dialog where I adjust the hours and minutes (by clicking small “+” and “-” buttons below them; if I click outside the small buttons, the modal dialog closes and I need to click the clock icon and enter the time again). Why couldn’t these two screens plus the modal dialog replaced by one screen that displays the hours and minutes with the “+” and “-” buttons, plus another button “I didn’t take the pill today”?
Then there is a screen telling me to review the information I entered, click the “ok” checkbox, and then click Next. Except it doesn’t show the entered information, so the only way to review would be to click the “Back” button and check on the previous screen.
Then it take another minute to upload the information to the server, and then I can finally close the app.
I mean, it could worse, and you can get used to it, but I could also be way more convenient. But it is not, quite predictably. Crap is what you get by default, and there is no market mechanism to select for a higher quality app.
EDIT: This was supposed to be a reply to the answer by Valdes, but for some reason LW keeps posting it as a separate answer. No idea why.
Most people are incompetent, and the competent ones are usually busy. So unless you pay the market price (quite high) or the project is super exciting (to someone other than you), you will get a crappy app. It’s not just the code, it can be a crappy design, or utter lack of empathy with the user.
Recently I use an app to record my daily medicine usage. The idea is that every day I take a pill, and I confirm that “yes, today I took a pill at X o’clock”. (Or: “today I didn’t”. Or, I forget to enter either information today, so tomorrow I enter it also for the previous days.) Then it uploads the information to a server. How difficult can this get?
First I start the application, and I need to enter a password. Then it takes about a minute to authenticate me on a server. I appreciate the concern for privacy, but why the fuck can’t the password just be verified locally?
Then I need to choose whether I want to report the pill usage, or read the tutorial. I have already read the tutorial, why can’t it remember this simple fact and skip the screen?
The next screen tells me that I have reported the pill usage for yesterday, but not for today. Thank you, Captain Obvious, that’s like 95% of situations when I use the app. Why can’t you just skip this screen in such case, and only display it when something unexpected happens, such as I have already reported the pill usage for today, or I forgot to report it yesterday?
Then it asks me whether I took the pill today, and I need to check the “yes” or “no” option, and then click Next.
Then there is a screen that tells me to select time. I need to click a clock icon, it displays a modal dialog where I adjust the hours and minutes (by clicking small “+” and “-” buttons below them; if I click outside the small buttons, the modal dialog closes and I need to click the clock icon and enter the time again). Why couldn’t these two screens plus the modal dialog replaced by one screen that displays the hours and minutes with the “+” and “-” buttons, plus another button “I didn’t take the pill today”?
Then there is a screen telling me to review the information I entered, click the “ok” checkbox, and then click Next. Except it doesn’t show the entered information, so the only way to review would be to click the “Back” button and check on the previous screen.
Then it take another minute to upload the information to the server, and then I can finally close the app.
I mean, it could worse, and you can get used to it, but I could also be way more convenient. But it is not, quite predictably. Crap is what you get by default, and there is no market mechanism to select for a higher quality app.
Wow.