RubyConf 2015

RuntimeError: can't save WORLD

RuntimeError: can't save WORLD

by Sonja Heinen

The talk titled 'RuntimeError: can't save WORLD' by Sonja Heinen at RubyConf 2015 emphasizes the intersection of technology, social responsibility, and environmental awareness among software engineers. Heinen uses the metaphor of the world to discuss both our planet and the human experience, encouraging programmers to connect their work with a sense of agency and care for nature.

Key points discussed in the video include:

- The Concept of 'World': Heinen reflects on the broader philosophical implications of our existence and the fragility of Earth as represented by the famous 'Blue Marble' photograph from Apollo 17.

- Overview Effect: The shift in awareness astronauts experience when viewing Earth from space, emphasizing our interconnectedness and the necessity to take collective responsibility for environmental care.

- Wicked Problems: Heinen addresses the complexities of addressing environmental issues, emphasizing that solutions are often messy and require a nuanced understanding rather than simple fixes like carbon offsetting.

- Technology with a Purpose: Emphasizing the importance of integrating natural systems into technological solutions, such as using plants as biosensors or designing assistive technologies like smart canes for the elderly.

- Human-Centric Design: Highlighting the necessity to involve end-users in the design process, as showcased by the Blind Maps project, which develops navigation tools for the visually impaired.

- Empathy in Technology: Heinen advocates for programs that produce code benefiting human beings and their environments, calling for a more empathetic approach to programming.

- Call to Action: She encourages mentoring in programming as a means to empower others and suggests that technology should enhance human capabilities rather than diminish them.

In conclusion, Heinen's talk serves as a reminder of the responsibilities that come with technological power, urging software engineers to foster curiosity, compassion, and a holistic mindset towards programming and design. The overarching takeaway is the vital need to connect the technical aspects of software development with their impact on humanity and the environment.

00:00:15 All right, cool. I'm amazed to be here in Texas. I'd like to set the mood with a short clip, if that's all right.
00:00:30 There should be some sound.
00:00:37 Now, mayday, mayday! Hello, can you hear us? We are sinking! Hello, this is the German Coast Guard; we are sinking. What are you thinking about?
00:01:10 Well, I hope that sets the mood. Um, hello and thank you for joining me here today. This is the room where we save the world. My plan was to bring a towel just in case something goes wrong.
00:01:36 My god, when I asked people yesterday, nobody seemed to get the Hitchhiker's Guide to the Galaxy reference. So, how many people have actually read the book? A few? Okay, well, I left my towel at home, so let's just hope for the best.
00:02:11 So, what is 'world'? World is a common term for everything that goes on here on planet Earth: human civilization, life, all of our history. The world, as we know it from a more philosophical point of view, may also refer to the temporary existence of mankind, our nature of becoming and being, and the reality of all the things that happen to be meaningfully relevant to us.
00:02:33 The so-called ontological universe is the world we live in.
00:02:42 So, on this slide, we see a picture of the world, more precisely, planet Earth, as seen by the Apollo 17 spacecraft crew on their way to the moon on December 7, 1972. The Blue Marble, as it's called, is the first image that captured the entire globe in one single frame and became the most iconic and widely spread image in human history, symbolizing globalism and modern environmental activism.
00:02:58 Seeing Earth from this perspective—this tiny, fragile ball of life hanging in the dark vastness of space, a rather hostile environment, and solely protected by a thin layer we call our atmosphere—makes you feel a sense of awe. Many astronauts report a profound shift in awareness while viewing Earth from orbit. National boundaries seem to vanish, conflicts between people seem obsolete, and the fragility of natural systems becomes apparent. This phenomenon is known as the overview effect. It describes the understanding that we are all in this together, which should create a sense of agency to take care of our environment.
00:03:40 However, it's kind of hard to get an overview from down here.
00:04:00 Earlier in September, I had the wonderful opportunity to attend an event called Hatch, which is a four-day annual retreat in the mountains of Big Sky, Montana. You're supposed to bring bear spray! It attracted a wonderful mix of creative types and provided a stellar mix of solid inspiration and relaxation.
00:04:48 One of the brilliant individuals I met there was Michelle. She's an astronomer at NASA. A pro tip: if you ever meet an astronomer, don't miss the chance to have a chat. Michelle shared a story at Hatch that I’d like to relay. Perhaps you'll remember it the next time you stand under a clear night sky.
00:06:00 A star is nothing more or less than a cloud of dust collapsing under the force of gravity. This compressed space is the birthplace of every element on our periodic table, including oxygen, nitrogen, and carbon. When the core of a star collapses completely, it results in a supernova explosion—the most violent act in the universe—and it’s also the only instance where iron is created.
00:06:55 Now, does anyone want to guess where the bright red color of the blood in our veins comes from? Iron! Exactly! So in conclusion, we're dead stars looking back up at the sky. We're the bloody universe! If an astronomer tells you that, you better believe it. That should make us feel pretty good about ourselves.
00:07:29 I hope we can keep our spirits up for another 20 minutes while I attempt to get to the bottom of this runtime error. There will be time for questions.
00:08:23 While this may seem like an excellent opportunity to do a live coding session, trust me, that would end in disaster and complete madness. Instead, I’d like to start with a life-saving session that begins in Terminal A at Tegel Airport in Berlin, which is where I live.
00:09:23 Berlin is 5,582 miles and a few very confusing time zones away from San Antonio. Equally confusing are the varying calculations of the amount of CO2 that air travel carries with it. My personal share of that burden apparently amounts to about one ton, which matches the weight of 10 baby elephants. Being responsible for the creation of 10 carbon baby elephants weighs heavily on my conscience.
00:10:50 That's why I skipped the 5K this morning. Sorry! But maybe it was the jet lag. Planting trees seems to be a popular approach to reduce this guilt, and according to a few online services that provide this type of carbon relief, I’d need to buy five average-sized oaks at $20 each.
00:11:31 Since there were 350 other passengers on my flight, I'd like to invite you all to jump on your devices and help buy oaks with me. If we buy 1,750, we could offset the carbon emissions of an entire aircraft this afternoon. Does that sound like a good idea?
00:12:15 Whether carbon offsetting resembles an infinite loop or leads to deadlock is hard to tell. It seems rather unlikely that it's a holistic solution. Atmospheric concerns related to carbon dioxide, water vapor, and other particle emissions created by transporting human beings through the clouds while burning fossil fuels is not a simple problem. It's a wicked problem.
00:12:53 Wicked problems are defined as messy, circular, and chaotic. Solutions are never true or false; they can only be assessed as good, good enough, or bad. Planting trees would actually be a slightly not-bad solution.
00:13:52 However, every attempted solution comes with its own set of significant consequences. There’s no room for trial and error in this environment.
00:14:48 Contemporary problem-solving heads in the opposite direction, striving for simplicity. Sometimes it seems as if it can unfold with a simple click of a button. Concepts—buttons, I have to say—bore me. I prefer complex, uncompressed, and curious things, preferably those that have internet connectivity.
00:15:59 And if I could make a cup of tea in my kitchen by just giving the plant in my bathroom a high five, that would actually make me quite happy.
00:17:40 Plants are brainless creatures that can send, receive, and interpret messages. They communicate in a secret language. When bugs chew on the leaves of a plant, it responds by releasing volatile organic compounds into the air. Somehow, neighboring plants become aware of what's happening and react by producing chemicals that repel those bugs.
00:18:36 Aside from releasing chemicals, plants also send electrical signals, and I propose we invite plants to act as biosensors in our lives. The tomato plant of the future could warn you of a fire in the living room. Just imagine a 'tomato alarm'!
00:19:40 I think there's a missed opportunity here. Why do we create tech that merely resembles natural objects? For example, most recently, I heard of a stealth surveillance drone that looks like a bird and I think it would have been way easier to attach a webcam to a carrier pigeon.
00:20:59 I'd love to hear about projects that push the boundaries and find clever ways to integrate intelligent natural systems that have evolved over 3 billion years into our own networks of knowledge.
00:21:45 Anyway, the next part of the story has a touch of irony, stemming from a real incident that occurred at the waiting area of my district’s hospital. A few weeks ago, I burned my foot with boiling water. Be careful with kettles! Regardless, I continued my running routine, and well, one week later, my foot had doubled in size.
00:23:09 While I had never heard of exploding feet, I didn’t want to take any chances and crawled into the hospital. The experience wasn't too terrible; most people were waiting their turn to see the doctor.
00:23:53 An elderly lady sat down in the chair in front of me, and I wondered what could make both of our hospital experiences a little more pleasant. Perhaps a walking aid? The only way to validate this idea or fail fast would be to run a crowdfunding campaign! Now, think beyond just any regular strolling device; I'm imagining a smart assistive cane.
00:24:40 It would empower elderly people while also being bright neon yellow, counting steps, and recommending daily activity goals. This smart cane would signal when it's time for a walk using real-time weather data. It's not a dog—it's a sophisticated domestic device!
00:26:59 I highly recommend watching the entire video because it raises several questions. What's the role of humans in an autonomous software-filled world? How do we want to live, grow old, and which technologies do we allow to join us on this journey?
00:27:28 If tensions between human and machine agency increase, who will prevail? Does it matter at all? Life is designed to be convenient but turns into a delivery service mode where we automate everything.
00:28:16 Technology is not going away; it's way too fun! It equates innovation with disruption, which is fine. I only wish that people would clean up after innovating and be mindful of material resources.
00:28:56 I’d like to share a quote by Anab Jane: 'Those with the least power to shape the future suffer its worst consequences.' This reflects the need for human energy, not just capital.
00:29:49 The creators of technology are not the same as the users. The intended ideas from creators meet the true application defined by the end users. There are ways to find out who your real audience is.
00:30:53 So I want to let this case video from Blind Maps run in the background. They build a low-cost navigation system for the blind, integrated into the cane's grip, using open hardware and software.
00:32:17 They test their digital interface and physical prototypes in real-life scenarios with potential end users. This user shadowing method is essential, allowing designers to observe and understand how people interact with the world.
00:33:18 It's an illusion to think spending time on devices is irrelevant to human interaction; each end point of a product is still a human being.
00:34:19 Yesterday's keynote emphasized the costs of inconsiderate development, reminding us to get it right for every individual.
00:35:42 In my hospital story, the elderly lady had a walking aid who took her arm, patiently waiting for her. They were clearly partners, which resonates with my relationship with my aging iPhone.
00:36:30 I have been with my iPhone for four years. I put a sticker on it, but the chances of keeping it for another 30 years seem grim; I might not even make it to Christmas.
00:37:35 Just another machine replaced by another machine, destined for the drawer next to other obsolete devices.
00:38:08 Returning to our runtime error, I've changed the message twice: 'Can't save WORLD' seemed irrelevant. The world—Earth—is going to be fine, but the remaining question is, are we going to be fine?
00:39:22 Living in a modern society often entails striving for speed, perfection, and control, which benefits machines, not humans.
00:40:19 Reality continues to lose touch with reality. We are abstracting ourselves out of increasingly complex environments into a world of meaningless buttons.
00:41:38 We must move away from this automated, click-reward lifestyle. Unfortunately, traveling to space isn't an accessible experience for everyone, nor is there a simple solution to cultivate a social mindset.
00:42:28 Rumor has it compassion is a muscle that requires training, just like our brains. It's not about technical advice; it’s about producing code that benefits humans and their habitat.
00:43:31 My mission is to inspire you to raise curiosity for all living creatures, including humans, and to find empathetic programming.
00:44:17 Some time ago, I received phenomenal advice to give people information that keeps them active. My first answer to runtime errors is to help someone learn programming: become a mentor.
00:45:00 These initiatives really change lives—sounds cheesy, but it's true. If direct communication isn't your preference, write good documentation to make your code accessible.
00:46:29 My second answer to runtime errors is to challenge designers with code. I'd love to see more technical talks in design spaces.
00:48:00 While I identify as a designer, I’ve felt most at home within the Ruby community. We must find common ground to disrupt various fields together.
00:48:56 The one book I'd take into space would be 'In the Bubble' by John Thackara; replace 'designing' with 'programming', and it fits perfectly.
00:49:26 If the clip from 'Uninvited Guests' piques your interest, I'd encourage you to explore critical design and potential futures further.
00:49:56 Everything in Manchester is a brilliant conference to attend, and while you’re in town, visit the Alan Turing Memorial.
00:50:40 This slide tells me I've made it to the Q&A portion. Before I kick that off, I want to thank Afi and Ernie for encouraging me to speak today.
00:51:07 Now, I'm happy to take your questions.