Future of Ruby

Summarized using AI

The Future Should Be Uneven

H. Waterhouse • December 18, 2020 • Online

In her talk titled "The Future Should Be Uneven" at RubyConf 2020, Heidi Waterhouse, a developer advocate at LaunchDarkly, explores the concept of accessibility within web development and the inherent disparities that exist in our current technological landscape. She starts by referencing William Gibson's quote about the uneven distribution of the future, arguing that the internet is tailored to a privileged user base while neglecting diverse needs.

Key Points Discussed:
- Definitions of Accessibility: Waterhouse differentiates between equality, equity, and justice, illustrating how designing for presets leads to exclusion. She advocates for liberation, which involves dismantling access barriers for all users.

- Philosophical Frameworks: She introduces the "veil of ignorance" concept, encouraging designers to build technology without preconceiving their societal position, thereby creating a more inclusive environment.
- The Paradox of Tolerance: Citing Karl Popper, she warns that unlimited tolerance can endanger a tolerant society, emphasizing the need for strategic tolerance in web design.

- Improving Accessibility: Waterhouse suggests strategies like cross-browser accessibility, customizable user preferences, and consistent experiences across devices. She emphasizes user-driven design, making tools and settings easy to personalize and access.
- Examples of User Needs: Waterhouse shares her personal experience with keyboard layouts like Dvorak and adaptive devices, highlighting how these choices enhance her usability and comfort. She discusses the importance of accommodating users with temporary or situational disabilities, asserting that designing for flexibility is key.

- Semantic Design and Flexibility: She promotes semantic web principles that categorize design according to function rather than appearance, allowing greater adaptability for future technologies, especially with anticipated developments like augmented reality.

Conclusion: Waterhouse challenges the audience to envision a more equitable and inclusive future by designing web experiences that celebrate diversity. She calls for a mindset that embraces variability and customization, ensuring that all users can interact seamlessly with technology. Her main takeaway emphasizes the importance of building for an unimagined future, reinforcing that while the future is here, it remains unevenly distributed. The talk encourages a collaborative effort to make the web accessible to all.

The Future Should Be Uneven
H. Waterhouse • December 18, 2020 • Online

"The future is here, it's just unevenly distributed" is something we say about why people on instant connection devices walk past people sleeping on sidewalks.

Let's talk about how we can provide more power to users to customize, configure, streamline, and understand what they are getting from us. Let's explore some accessibility settings that turn out to be just good universal design.

You're going to leave this talk inspired to build an infrastructure that can support the glorious diversity of the future, instead of assuming that everyone is the same.

H. Waterhouse
Heidi is a developer advocate with LaunchDarkly. She delights in working at the intersection of usability, risk reduction, and cutting-edge technology. One of her favorite hobbies is talking to developers about things they already knew but had never thought of that way before. She sews all her conference dresses so that she's sure there is a pocket for the mic.

RubyConf 2020

00:00:01.040 Hi, my name is Heidi Waterhouse. I'm a developer advocate at LaunchDarkly. We are a company that provides feature management as a service, focused on delivering people what they want, when they want it, in the way that they want it. This talk is primarily about accessibility, but not just the kind of accessibility that you are probably thinking about right now. It's about how to make the web more of what it should be and more like what it was born to be. I call it 'The Future Should Be Uneven.'
00:00:14.880 In 2003, William Gibson, the author of Neuromancer and other cyberpunk works, said in The Economist, 'The future is here. It's just not evenly distributed.' The more I think about that, the truer it gets. That's exactly why we have futurists—to tell us what the future could be, what it is going to be, and what may yet be avoided. All of those thoughts are in a futurist's brain all the time.
00:00:32.559 The dominating image I had when I decided to put this talk together was a portrayal of the difference between equity, equality, and justice, or liberation. This concept was created by the Center for Story-Based Strategy, an Oakland company like us. They had a lot of great resources, and I got stuck doing the research because I wanted to learn more about this. Equality means everybody gets the same thing no matter what they need. Equity means everybody gets to have the same experience, regardless of what needs they have that make access more or less difficult. Liberation is when we take apart all barriers to access and make it easy for everyone to have what they want and need.
00:01:19.920 When we think about the internet, we are the privileged people. We are pretty much the assumed user. We think of the internet as fast; we complain if it takes more than a few minutes to download something. We think of it as free. It's not entirely free; I pay a bill for my internet access, but that bill is merely a fraction of my daily earnings, not a multiple of it. In many parts of the world, that is not the case. So when I say it's free, I mean that it doesn't cost me much to access it.
00:02:06.720 I think of the internet as usable; I can mostly do what I want when I want to do it. However, the internet isn't like that for everybody. It can be really slow. For instance, my parents live in a cell phone dead spot without any cell reception in their tiny mountain valley, less than two hours from Seattle. They only have one internet provider, which is not fast. When all the kids come home for the holidays, we often have the moment of realization that we are faced with the slow internet that the rest of the world has.
00:02:55.760 Even the slow American internet may still be faster than what a lot of people have. It's also really expensive. In some cases, we are talking about multiple days of pay just to access a site, and that can be frustrating and heartbreaking. I'm not talking only about the personal hurtfulness of users interacting with each other; I'm addressing the hurt that comes from realizing that someone has not foreseen your existence.
00:03:44.800 For example, how would it feel if I lost a wanted pregnancy and was receiving baby updates? It's a question we don't often ask ourselves. In this context, John Rawls introduced the concept he called the veil of ignorance. Essentially, how would you design society if you didn't know what place you would occupy in it? We often design society with the current people in mind, failing to consider how some might be oppressed by the society they create.
00:04:54.560 The veil of ignorance asks you to think about how your ideal society could be unideal for someone else. This is a high-minded philosophy. It's like the cake problem at home: one child cuts the cake, and the other picks the slice. This optimizes everyone's experience because the child cutting the cake must be fair; otherwise, the other child will choose the bigger piece. This concept can help us understand how to create a society without knowing our positions.
00:06:00.319 The next philosophical aspect I want to discuss is the paradox of tolerance, introduced by Karl Popper. He wasn't the only one to talk about this; Plato and Jefferson also tackled the issue. To sum it up, unlimited tolerance can lead to the downfall of tolerance itself. If we extend tolerance even to those who are intolerant, and do not defend a tolerant society, then the tolerant will be destroyed along with tolerance.
00:06:38.560 It's really important to remember this when we build the web. Intolerance is primarily an individual action, while tolerance is a group action. Coordinating group actions can be challenging. Establishing a code of conduct is deciding what society can tolerate without disenfranchising too many people. So, what can make all of this philosophy work better? I mentioned that the internet can be slow, broken, and hurtful; we need to find ways to improve that.
00:07:39.440 To enhance accessibility, we need to provide people with consistent access. We often talk about accessibility within the confines of one device, browser, or application. We can improve the web by making accessibility cross-browser, reliable, and bandwidth-aware. Needing extra bandwidth to access certain accessibility settings seems counterintuitive but shouldn't be the case. Consistent access isn't just about the internet; it's also about the tools we need to access it.
00:08:49.200 For example, I have multiple repetitive motion injuries, so I rely on specialized equipment like a split keyboard that allows for more comfortable typing. Accessibility should be integrated into more products. I have this cool keyboard called the Ultimate Hacker Keyboard, and it's made me think about how accessibility can be designed into our tools. When we think about improving the internet, we should focus on configurability, allowing users to have multiple preferences and fine-grained control.
00:09:37.760 Seamless experience means we should be able to type without thinking about finger placement, as with touch typing compared to hunt and peck. Everyone deserves a seamless experience. Yet, the internet doesn't fully support that for all users. Regarding multiple preferences, let's discuss colors, contrast, bandwidth, and motion. For people with ADHD, distractions from animations can hinder their focus. While I appreciate ad revenue, I also want to control my environment on screens.
00:10:53.440 Let’s discuss input sources. I type in Dvorak, a keyboard layout different from QWERTY. When I sit down at a computer, I change my settings to match my typing style. This customization has been available for a long time, and it allows me to work comfortably. I also want to touch on persistent customization. Currently, every new device requires changing my keyboard settings and device settings from scratch. It becomes tedious, which diminishes the joy of new technology.
00:11:57.040 Mozilla tried to tackle these issues with their user profiles, creating a sort of portable pseudonymous profile allowing users to experience the web in the way most useful to them. This could potentially be a language that allows users to communicate their preferences across devices. With that ability, I could access tools that fit my preferences, such as operating at a higher speed or controlling the aesthetics based on my preferences.
00:13:36.640 When we talk about accessibility, it isn't just about disabilities. We're also discussing the notion of providing access to everyone, precisely when they need it. By allowing users to set their accessibility preferences, they will feel more invested in your product. This is intertwined with psychological principles, as we attach value to what we customize. Remember, we are only temporarily able-bodied; there are periods when a disability can be situational or permanent.
00:15:07.200 The initiative from Microsoft focused on recognizing disabilities—permanent, temporary, or situational. For instance, a new parent can only type with one hand due to holding a baby with the other. Large phones can be a challenge for people who need to navigate their functionalities with one hand. We can improve the experience for all users by considering how different people will interact with our technology.
00:16:53.760 These concepts lead to empowering users. The web was initially designed to be accessible, evident from the early RFCs (Request for Comments). Yet, sometimes we fail to achieve that with aesthetics overwhelming usability. I believe it is possible to create beautiful, accessible things if we put in the effort. When we prescribe how a webpage should look, we're adopting a fixed mindset. Instead, we should have a growth mindset, cultivating flexibility and allowing for individual experiences.
00:18:39.440 Semantic design means categorizing elements based on function rather than appearance. When we design the web using the semantic web approach, we can adapt the experience for users in ways we may not imagine now. For example, an H1 heading can be rendered in various formats to suit different user needs. By thinking beyond rigid designs and offering semantic labels, we can anticipate diverse future applications, such as integrating augmented reality.
00:20:37.600 Building for a growth mindset includes creating semantic and composable elements. These allow users to mix and match according to their needs, helping them maintain a comfortable experience while accessing the web. We want to avoid tightly controlling users within set boundaries while offering options for customization and personal expression.
00:21:52.160 I recently reflected on my experiences and preferences, like how I want my monitors set up for development or recording. I value my setup and want to appreciate yours—this collaboration fosters better communication. Every interaction can help us translate across different modalities, which is essential for a flexible web.
00:23:23.440 To sum up, if this talk was too long and you skimmed Twitter, here's the key takeaway: Build for your unimagined future. The future is already here, though unevenly distributed. Our goal should be towards a more equitable, inclusive, and accessible web. It's important for us all to strive for this together.
00:25:08.720 If you're interested in learning more about LaunchDarkly and how we can help you build more accessible solutions, please follow this link. Otherwise, you're welcome to pick up a t-shirt. I will be around for questions for the rest of the day. I appreciate all of you at RubyConf, and I look forward to when we can all give each other big hugs next year because I miss you. Thank you!
Explore all talks recorded at RubyConf 2020
+17