ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
Making enabling apps
for disabled people
APPS WITH DATA FOR PEOPLE WITH A DISABILITY
WITH XAMARIN FORMS
Who am I?
Dennie Declercq.
Founder of DDSoft vzw (nonprofit).
Volunteer developer in vzw Ithaka.
Obsessed about using technologies to make people with a disability their life better.
Maybe because I have my own disability (Autism).
Honored to speak here!
Technology we use
To show all the things, we create a simple Xamarin Forms project.
For practical reasons, we build only for Android at this time!
What this session is not about
This session is not a deep dive into building apps in Xamarin.
I assume at least that you are common with creating basic apps in Xamarin.
What this session is about
This session is to let you know, how you can wite apps for a new user-base with
programming techniques we all know.
Can you realize ?
That the things that we all do¡­
.. Are not common ¡°life¡± for many people?
Reading a paper Watching a subtitled movie Ordering a pizza
There are about 5% People with disability
in Belgium
What means about 560.000 people cannot do everything the way
¡°we¡± do.
Two kinds of disabilities
Physical
?Can¡¯t move the ¡®normal way¡¯
Intellectual
?Can¡¯t think / speak / read / behave
(communicate) in the ¡®normal way¡¯
The little that exists
There are (very little) tech organisations that focus on people with
physical disabilities
And that¡¯s good!
But there are even less tech organisations that focus
on people with intellectual disabilities.
That¡¯s our (DDSoft nonprofit) goal.
But I hope¡­
To inspire many more!
What¡¯s this?
An eating
schedule
What¡¯s the purpose?
To let somebody know what¡¯s to eat this week.
But what does that paper mean,
if you can¡¯t read?
What¡¯s a developer¡®s purpose?
To make others¡¯ life easier.
To automate things that humans cannot do,
or cannot do fast enough.
I hope you are all here for this reason!
Let¡¯s learn to make apps for people with
a disability
Three basic rules
1. Simplify the layout
2. Use pictographs or pictures
3. Use Text-To-Speech
Demo Time ¡®Emoboard¡¯!
Use case:
Let¡¯s assume you want to build an app to help them communicate about their mood.
Many people with a disability have difficulties to talk about their mood.
Demo Time ¨C Starting point.
We start this demo with a solution, with the Xamarin Forms Template.
We have the file EmoBoard.cs
We create a MainPage (StartPage.cs)
Simplify the layout
1. Use a simple white
background color
(nothing is easier to read
than white)
2. Use a few accent colors
3. Color by function
4. Be consistent!
I can speak !
I can navigate !
I open an other page!
Color by function
I¡¯ve created three button styles
Color by funtion (in code)
public Button DayButton; // I CAN SPEAK
public Button MealButton; // I CAN SPEAK
public Button PrevButton; // I CAN NAVIGATE
public Button NextButton; // I CAN NAVIGATE
public Button SettingsButton; // I OPEN AN OTHER PAGE
DayButton = new Button {
BackgroundColor = Color.Yellow,
TextColor = Color.Red
};
SettingsButton = new Button {
BackgroundColor = Color.Blue,
TextColor = Color.Yellow
};
PrevButton = new Button{
BackgroundColor = Color.Gray,
TextColor = Color.White
};
Demo
Demo Time
Making an accessible user interface for EmoBoard.
Use pictographs or pictures
What does the following mean?
õ¡ïˆ
The answer is:
For some people with a disability,
who cannot read,
Lettres and words mean nothing.
Just like Chinese of Japanese
tokens for us.
Everybody (except people with
visual impairments) can see a
picture.
Use pictographs or pictures (in code)
Image imgSmile = new Image
{
Source = "smile.jpg"
};
btnHappy = new Button
{
Image = ¡°Happy.png",
};
Sclera
A Good way to find pictographs in Belgium is from
www.sclera.be
It¡¯s free but there¡¯s a use policy
Demo
Demo Time!
Adding some pictographs and pictures.
Use Text-To-Speech (TTS)
For some people, pictures aren¡¯t enough.
To reach them also, you can use TTS, Text-To-Speech
You have to do four steps:
1 Make a TextToSpeech Dependency Interface
2 Add the TextToSpeech Component
3 Make implementation of that interface for each OS you want to implement (in this
case only Android)
4 Call the implementation where needed
TTS ¨C Add the Text To Speech
Component
In the Android Project, Right-Click on Components
TTS ¨C Making a dependency interface
In the shared PCL add a new c# interface
? Add the speak function
** It¡¯s a best practice to make a folder specific for dependency interfaces **
public interface ITextToSpeech
{
void Speak(string text);
}
TTS ¨C Making the Android
implementation
[assembly: Xamarin.Forms.Dependency(typeof(TextToSpeechImplementation))]
namespace EmoBoard.Droid.DependencyImplementations
{
public class TextToSpeechImplementation : ITextToSpeech
public TextToSpeechImplementation() { }
public void Speak(string tekst) {
CrossTextToSpeech.Current.Speak(tekst);
}
}
}
TTS ¨C Call the speak function
void DayButton_Clicked(object sender, EventArgs e)
{
DependencyService.Get<ITextToSpeech>().Speak(¡°string to be spoken¡±);
}
Demo
Demo time Text-To-Speech
A Note on Accessible apps in Dutch
People with an intellectual disability can¡¯t learn other languages.
So if you want to reach people in Flanders, you have to make apps in Dutch.
Android an iOS supports TTS in Dutch
Windows (for pc¡¯s and phones) doesn¡¯t support TTS in Dutch, Only in a few
languages. Of course English is supported!
Recap
Today you have seen how you can make an app accessible for people who cannot read
or write due to intellectual disabilities.
You have learned to:
1. Simplify the layout with color by function
2. Use images and pictographs
3. Use TTS
Now it¡¯s up to you
The journey of apps for people with a disability just starts here.
The next big thing is using data (like my own open data platform)
http://socialedata.ddsoft.be/
So you cannot only let them explain their feelings, but also let them inform about their
own life.
Q&A
Thanks!
Contact me:
dennie@ddsoft.be
Facebook.com/ddsoftvzw
www.ddsoft.be

More Related Content

Making enabling apps for disabled people

  • 1. Making enabling apps for disabled people APPS WITH DATA FOR PEOPLE WITH A DISABILITY WITH XAMARIN FORMS
  • 2. Who am I? Dennie Declercq. Founder of DDSoft vzw (nonprofit). Volunteer developer in vzw Ithaka. Obsessed about using technologies to make people with a disability their life better. Maybe because I have my own disability (Autism). Honored to speak here!
  • 3. Technology we use To show all the things, we create a simple Xamarin Forms project. For practical reasons, we build only for Android at this time!
  • 4. What this session is not about This session is not a deep dive into building apps in Xamarin. I assume at least that you are common with creating basic apps in Xamarin.
  • 5. What this session is about This session is to let you know, how you can wite apps for a new user-base with programming techniques we all know.
  • 6. Can you realize ? That the things that we all do¡­ .. Are not common ¡°life¡± for many people? Reading a paper Watching a subtitled movie Ordering a pizza
  • 7. There are about 5% People with disability in Belgium What means about 560.000 people cannot do everything the way ¡°we¡± do.
  • 8. Two kinds of disabilities Physical ?Can¡¯t move the ¡®normal way¡¯ Intellectual ?Can¡¯t think / speak / read / behave (communicate) in the ¡®normal way¡¯
  • 9. The little that exists There are (very little) tech organisations that focus on people with physical disabilities And that¡¯s good! But there are even less tech organisations that focus on people with intellectual disabilities. That¡¯s our (DDSoft nonprofit) goal. But I hope¡­ To inspire many more!
  • 11. What¡¯s the purpose? To let somebody know what¡¯s to eat this week. But what does that paper mean, if you can¡¯t read?
  • 12. What¡¯s a developer¡®s purpose? To make others¡¯ life easier. To automate things that humans cannot do, or cannot do fast enough. I hope you are all here for this reason!
  • 13. Let¡¯s learn to make apps for people with a disability
  • 14. Three basic rules 1. Simplify the layout 2. Use pictographs or pictures 3. Use Text-To-Speech
  • 15. Demo Time ¡®Emoboard¡¯! Use case: Let¡¯s assume you want to build an app to help them communicate about their mood. Many people with a disability have difficulties to talk about their mood.
  • 16. Demo Time ¨C Starting point. We start this demo with a solution, with the Xamarin Forms Template. We have the file EmoBoard.cs We create a MainPage (StartPage.cs)
  • 17. Simplify the layout 1. Use a simple white background color (nothing is easier to read than white) 2. Use a few accent colors 3. Color by function 4. Be consistent! I can speak ! I can navigate ! I open an other page! Color by function I¡¯ve created three button styles
  • 18. Color by funtion (in code) public Button DayButton; // I CAN SPEAK public Button MealButton; // I CAN SPEAK public Button PrevButton; // I CAN NAVIGATE public Button NextButton; // I CAN NAVIGATE public Button SettingsButton; // I OPEN AN OTHER PAGE DayButton = new Button { BackgroundColor = Color.Yellow, TextColor = Color.Red }; SettingsButton = new Button { BackgroundColor = Color.Blue, TextColor = Color.Yellow }; PrevButton = new Button{ BackgroundColor = Color.Gray, TextColor = Color.White };
  • 19. Demo Demo Time Making an accessible user interface for EmoBoard.
  • 20. Use pictographs or pictures What does the following mean? õ¡ïˆ The answer is: For some people with a disability, who cannot read, Lettres and words mean nothing. Just like Chinese of Japanese tokens for us. Everybody (except people with visual impairments) can see a picture.
  • 21. Use pictographs or pictures (in code) Image imgSmile = new Image { Source = "smile.jpg" }; btnHappy = new Button { Image = ¡°Happy.png", };
  • 22. Sclera A Good way to find pictographs in Belgium is from www.sclera.be It¡¯s free but there¡¯s a use policy
  • 23. Demo Demo Time! Adding some pictographs and pictures.
  • 24. Use Text-To-Speech (TTS) For some people, pictures aren¡¯t enough. To reach them also, you can use TTS, Text-To-Speech You have to do four steps: 1 Make a TextToSpeech Dependency Interface 2 Add the TextToSpeech Component 3 Make implementation of that interface for each OS you want to implement (in this case only Android) 4 Call the implementation where needed
  • 25. TTS ¨C Add the Text To Speech Component In the Android Project, Right-Click on Components
  • 26. TTS ¨C Making a dependency interface In the shared PCL add a new c# interface ? Add the speak function ** It¡¯s a best practice to make a folder specific for dependency interfaces ** public interface ITextToSpeech { void Speak(string text); }
  • 27. TTS ¨C Making the Android implementation [assembly: Xamarin.Forms.Dependency(typeof(TextToSpeechImplementation))] namespace EmoBoard.Droid.DependencyImplementations { public class TextToSpeechImplementation : ITextToSpeech public TextToSpeechImplementation() { } public void Speak(string tekst) { CrossTextToSpeech.Current.Speak(tekst); } } }
  • 28. TTS ¨C Call the speak function void DayButton_Clicked(object sender, EventArgs e) { DependencyService.Get<ITextToSpeech>().Speak(¡°string to be spoken¡±); }
  • 30. A Note on Accessible apps in Dutch People with an intellectual disability can¡¯t learn other languages. So if you want to reach people in Flanders, you have to make apps in Dutch. Android an iOS supports TTS in Dutch Windows (for pc¡¯s and phones) doesn¡¯t support TTS in Dutch, Only in a few languages. Of course English is supported!
  • 31. Recap Today you have seen how you can make an app accessible for people who cannot read or write due to intellectual disabilities. You have learned to: 1. Simplify the layout with color by function 2. Use images and pictographs 3. Use TTS
  • 32. Now it¡¯s up to you The journey of apps for people with a disability just starts here. The next big thing is using data (like my own open data platform) http://socialedata.ddsoft.be/ So you cannot only let them explain their feelings, but also let them inform about their own life.
  • 33. Q&A