One of my grandmothers has difficulties hearing. Doing phone calls has become impossible, even with adapted phones that yell in your ear.
To avoid losing contact, we've tried to teach her how use send texts over sms. This wasn't a great success: the keyboard confused her, there were too many steps, too many buttons: it went wrong easily.
Hell, I'm a developer. I surely can come up with an appropriate solution, right? I've got an old Samsung Galaxy S5 lying around that my grandmother can use... so let's develop an easy mail app!
You can find the code on Github.
First and for all: what is the need?
When you open an sms app, the screen is filled with previous messages with different persons. "What do I do now?", was the reaction.
Bombing someone with data, useful or not, creates strain. Too much strain, in case of my grandmother.
Sending sms messages was too hard. My grandmother got lost in the keyboard.
It contains too many buttons, which are, in addition, way too small.
Alternatively, we've tried to let her use the an "old keyboard", you know, like when phones were bricks called "Nokia". They have less keys, where you need to press once for "a", twice for "b", etc. Less keys, but also too complicated.
My grandmother never had a smartphone in her hand before. There are a lot of concepts that we find very natural, that she didn't grasp at first.
Using a touch screen is something that needs be learned.
What is a notification?
We are used receiving, checking and reacting to notifications. My grandmother has never heard of it.
"What, I need to swipe down to see new messages? What's swiping down?"
Jup, that's simply too complex...
Not everyone in my family is that handy with smartphones or computers. For them, receiving and sending messages should also be simple. If at all possible, without an extra app.
Since my family members know how to use mail, I've chosen to make use of this.
I've created a mail account for my grandmother. The app will act as a mail client.
One extra benefit: I don't need to run a backend on a server to save and provide the messages. Everything is done via mail.
What does someone need to communicate?
With that in mind, I've created the following screen.
There are 5 things my grandmother needs to keep in mind.
On the left, you have the photos of the people you can talk with. Tap the photo of the person who you want to talk to.
In the top border is written who you're talking with. "You're talking with Stijn".
Your messages are in pink. The other person's messages are in green.
In order to send a message to the person you're talking with, hit the mail icon.
If you're stuck and want to restart, hit the home button.
One of the nice features of Android is the possibility to install another keyboard. I've searched for and tried several keyboard on the Google Play Store, but none really suited my needs.
The one that got the closest, was 1C Big Keyboard.
Large buttons means: the keyboard takes up most space on the screen. My grandmother would no longer find the field in which she types.
The design of a keyboard's layout takes several factors into account. The most important one: letters that are used frequently in combinations are put close to each other.
In Belgium, the most popular keyboard layout is azerty. Most of the world uses querty.
Azerty, querty, ... for my grandmother, the letters on a keyboard are just put in a random order. She's scanning the whole keyboard for each character she wants to type, again and again. This makes typing slow and frustrating.
What should the keyboard look like?
Buttons should be large enough. On the other hand, I don't want the keyboard to take up the whole screen.
A solution could be to leave out useless keys. Which buttons can we get rid of?
Did you ever got "screaming texts", all-caps, from non tech-savy people? The concept of a shift button can be difficult! I've decided to get rid of it. In this context, nobody cares about well-formed sentences.
As I've mentioned earlier, an azerty or querty-layout makes no sense for my grandmother. "Why are all the letters put in a random order?"
What keyboard layout would logical for her? I've chosen to go with: ordering the alphabetically. Finding the position of a key still requires some thinking, but this process goes a whole lot faster than finding a character in a "random" tangle of keys.
When I first let my grandmother play with my "easy keyboard", I've noticed that she never used 2 buttons: space and backspace.
She just kept typing, without leaving space between words. Did she make a spelling error? She just retyped the word, adding it to the original misspelled word.
soyouendupwithsomthinglikethasthis
When you have never touched a computer before, you don't know the concept of a space bar or backspace.
In order to tackle this, I've renamed the buttons. Space becomes "End of word" ("Einde woord" in Dutch). Backspace becomes "Erase" ("Wissen" in Dutch).
As mentioned earlier, my grandmother does not find the back button on the phone. The back button may be always found at the same place, it is not a physical button. The home button is more accessible, since, yeah, it's a real button.
In practice, my grandmother always presses the home button.
That's not a problem. In the contrary: I've told her: "If you're stuck, just press that button. Then you can re-open the app and start over again".
However, in a default situation, that's not true. When you close an app, then reopen it, the app will reopen the last activity. This means: she does not truly "start over".
Example:
Since my grandmother's hearing is impaired, she doesn't hear a short notification.
I've replaced the notification sound with a long song that she likes. There is a bigger chance that she hears this.
I'm looking for a better solution, though. Maybe something with light? If you have any ideas, let me know! :)
Seeing that your screen changes completely is scary for non-tech-savvy people. Especially if it happens "for no reason", for example: when you tilt the phone slightly. That's why I have turned off screen rotation on the phone.
Android is very protective about the phone's battery life. When an app uses, relative to other apps, too much battery, it get's less CPU time. Since, in my case, this app is the sole meaningful app on the phone, Android is a bit too eager to limit the mail checks in the app.
A workaround: turn off battery saving for this app (not for all apps per se). More info
Using wifi? Turn off the mobile internet (or vice versa)
No, grandma does not need bluetooth, nor NFC or location services.
Building an app for someone who has never touched a computer in her life, is quite challenging.
There are lots of concept that we find "normal", but are not normal in her world. To use the app, she needs to learn new concepts. Touching a screen. Opening an app. Typing messages, which is less intuitive than writing by hand "Space? backspace? Where do I find the letter U?".
For someone who is not used to them, a phone expresses tons of unexpected behaviour. "Ow, when I rotate the phone a bit, the whole screen changes! What?"
My goal was to limit the learning curve, to avoid scaring her away. This means:
Still, my grandmother has to learn a few things. One challenge that surprised me: how to express her thoughts in a short message.
Expressing your thoughts in a letter or phone call is a whole lot easier. She is used to write by hand. She has the space to write longs texts. Fixing writing mistakes is just crossing out words, or starting a new letter. In phone call, you get immediate response. There is room to explain the context you're in.
Sending texts may be second nature for most people, but it's not for someone who has never had to do it in her entire life.
Time will tell if my grandmother can and wants to actually use the app. I really hope so.
It's hard to communicate with someone who cannot hear you properly. For us, as family, but most certainly for her. I hope this app gives her back the ability to have qualitative conversations with people.