Большинство людей, не занимающихся программированием, не понимают, насколько сложно поступать правильно. Многие разработчики прекрасно функционируют, но наблюдать, как мастер превращает код в шелковистую красоту, очень вдохновляет. К сожалению, большая часть кода, лежащего в основе инструментов, которые мы используем ежедневно, не так хороша. Цифровой клейкой ленты много.

Я ужасный программист. Не поймите меня неправильно - я прекрасно умею склеивать код, чтобы получить в некотором роде разумный результат. Но продукт неизбежно представляет собой чудовище в франкенштейновском стиле. Я не одинок. Вот почему меня беспокоит создаваемый код. Не весь код создается одинаково.

Если вы хотите понять, с чем мы сталкиваемся, подумайте, что бы это значило, если бы мы строили города. В цифровом мире мы одновременно строим мосты, канализационные системы и небоскребы. Некоторые из строителей мостов имеют ученые степени в области гражданского строительства, некоторые из наших подрядчиков по очистке сточных вод в прошлых жизнях были водопроводчиками, но большинство людей, строящих небоскребы, раньше строили только дома на деревьях и посещали несколько уроков по математике. Да, и нет никаких инспекторов, чтобы оценить, развалится ли все это на части.

Код является ключом к гражданской жизни, но нам нужно начать смотреть под капот и думать о внешних последствиях наших методов кодирования, особенно потому, что мы создаем код как можно быстрее с небольшими сдержками и противовесами.

Первая область: экологические последствия

Давай поиграем в математику. Почти 1 миллиард человек пользуется Gmail. Более того, они активны в Facebook каждый месяц. Ежемесячно в Твиттере активны более 300 миллионов человек. Все социальные сети, включая Facebook и Twitter, рассылают уведомления, чтобы сообщить вам, что у вас есть новые запросы на добавление в друзья, лайки, обновления и т. Д. Каждое из этих уведомлений имеет размер примерно 50 КБ. Если вы относительно активны, вы можете получать 1 МБ уведомлений в день. Кажется, это не так уж и много. Но если это получает четверть пользователей Gmail, это означает, что Google размещает более 90 петабайт уведомлений в год. Все это находится в реальном времени на сервере, так что любой пользователь может искать свою электронную почту и находить предыдущие электронные письма, включая новых подписчиков, которых они получили в 2007 году. Действительно ли это хорошее использование ресурсов? Действительно ли это то, чего мы хотим, когда говорим о хранении данных?

В индустрии высоких технологий используются сумасшедшие метафоры. Искусственный интеллект. Файлы и папки. У них часто действительно забавные корни, от которых захихикает любой хороший компьютерщик. (Вундеркинды UNIX, знаете ли вы, что finger command названа так, потому что это слово означало, что кто-то является стукачом в 1970-х? Вероятно, вы имели в виду более грязную идею.

Мы не знаем, кто начал называть облако облаком, но он (а это неизбежно именно он) оказал всем нам медвежью услугу. Когда публика слышит об облаке, она думает о пушистых белых вещах в небе. Каким было небо в молодости? Они продолжались вечно ... А в небе всегда были «маленькие пушистые облака ». Эти облака дают. Они предлагают дождь, который дает нам воду, которая является источником жизни.

Но как насчет облаков, которые мы, технари, создаем? Эти облака забирают. Они требуют редкоземельных металлов и поглощают землю, электроэнергию и воду. Многие крупные компании прилагают все усилия, чтобы подумать о влиянии центров обработки данных на окружающую среду, подумать о последствиях выбросов углерода. (Я горжусь тем, что работаю на одного из них.) Большим компаниям еще предстоит пройти долгий путь, но, по крайней мере, они пытаются. Но сколько разработчиков пытаются писать зеленый код? В лучшем случае люди думают о стоимости вычислений, но большинство разработчиков довольно небрежно относятся к коду и данным. И нет никакого кода, сертифицированного LEED. Кто будет сертифицировать код LEED !?

В том же смысле, сколько продуктовых дизайнеров думают о воздействии на окружающую среду каждого принятого ими решения по дизайну продукта? Специалисты по продуктам говорят о том, что уведомления могут раздражать или вовлекать пользователей, но не об их воздействии на окружающую среду. И для всех этих фанатиков открытых данных, действительно ли миру лучше иметь петабайты данных, хранящихся на действующих серверах, просто чтобы убедиться, что они открыты и доступны на всякий случай? Больно думать о том, сколько терабайт данных находится в открытых репозиториях данных, к которым никогда не обращались.

И не заставляйте меня начинать насчет блокчейна, 3D-печати или Интернета вещей. По крайней мере, в одном биткойн правильно понял: это действительно майнинг.

Вторая область: социальные последствия

В начале 2000-х в Google думали, что я водитель грузовика. Я получил лучшую рекламу. Я даже не знал, сколько было вариаций скорости дальнобойщика! Все потому, что я проводил полевые исследования в тех частях страны, которые посещают только дальнобойщики. Подумайте, сколько людей получили в Интернете рекламу, которая явно ошибалась. Смешно, а?

Теперь ... Вас когда-нибудь арестовывали? Вы когда-нибудь сидели в тюрьме?

Найдите минутку, чтобы подумать о точности нашей рекламной экосистемы - количестве денег и данных, которые идут на создание правильной рекламы. Теперь подумайте, что означает, что те же методы, которые используют рекламодатели для предсказания того, что вы хотите купить, также используются для предсказания преступности в районе или человеке. А у тех, кто работает в правоохранительных органах и в системе уголовного правосудия, меньше денег, механизмов надзора и технических навыков.

В рекламе часто даются неточности и предвзятость. Но нормально ли, что мы используем чрезвычайно предвзятые данные о предыдущих арестах, чтобы предсказать будущие аресты и определить, где дислоцируется полиция? Нормально ли, что мы оцениваем чей-то риск в момент ареста и даем судьям рекомендации об освобождении под залог, испытательном сроке и назначении наказания? Нормально ли, что местные правоохранительные органы просят поставщиков технологий предсказать, какие дети собираются совершить преступление, до того, как им исполнится 21 год? Кто решает и кто привлекает их к ответственности?

Когда речь идет о полиции и уголовном правосудии, у нас могут быть разные политические обязательства. Но когда дело доходит до технологий и анализа данных, я надеюсь, что мы все согласимся с тем, что точность имеет значение. Тем не менее, мы закрываем глаза на все предубеждения, заложенные в данных и, следовательно, в модели, которые мы строим.

Задумайтесь на минутку, что 96% дел признаются в суде. Эти подсудимые никогда не видят присяжных из своих сверстников. Как минимум 10% - но, скорее всего, гораздо больше - тех, кто принимает заявление о признании вины, невиновны. "Почему?" Последнее, что я видел, средний заключенный в тюрьме Райкер ждет ~ 600 дней начала судебного разбирательства. В среднем. И кто, скорее всего, не внесет залог? Конечно, не богатые белые люди.

Исследователям давно известно, что белые чаще употребляют и продают наркотики. И все же кого арестовывают за наркотики? Негров. 13% населения США - черные, но более 60% заключенных - черные. В основном за преступления, связанные с наркотиками.

Поскольку чернокожие с большей вероятностью будут арестованы - и с большей вероятностью будут привлечены к ответственности и отбыт срок, угадайте, что наши алгоритмы говорят нам о том, кто с наибольшей вероятностью совершит преступление, связанное с наркотиками? О том, где происходят преступления, связанные с наркотиками? Средства прогнозирования не отправляют полицию в университетские городки. Их отправляют в капюшон.

Инженеры утверждают, что судьи и полицейские должны знать пределы используемых данных. Некоторые делают это - они просто игнорируют эти дорогие гражданские технологии, требующие больших затрат на налогоплательщиков. Но в мире публичной ответственности, где полиция наказывается за то, что не знала, что кто-то подвергается риску, прежде чем они расстреляли церковь, многие чувствуют себя обязанными следовать рекомендациям, опасаясь репрессий. Вот как расизм встраивается в структуру наших систем. И в этом замешаны гражданские технологии.

Меня не волнует ваша политика. Если вы создаете систему на основе данных и не стремитесь активно бороться с предрассудками, вы создаете дискриминационную систему.

Решение: аудиты и инспекции

Решения, принимаемые с использованием технических средств, могут иметь серьезные последствия, которые не могут быть рассмотрены разработчиками. Нам нужно проснуться. Наша технология мощная, и мы должны осознавать последствия своего кода.

До того, как наша отрасль перешла на постоянное бета-тестирование, мы жили в мире, где тестирование или обеспечение качества что-то значили. В этих областях коренится практика, которую можно понимать как внутренний технический аудит. Нам нужно вернуться к этому. Нам нужно уметь отвечать на такие простые вопросы, как:

  • Обеспечивает ли созданная нами система правильный результат с учетом известных ограничений?
  • Понимаем ли мы предвзятость и ограничения системы и результатов?
  • Понятны ли они пользователю, так что наш инструмент не может позволить принимать неверные решения или неточные впечатления?
  • Каковы истинные социальные и экологические издержки услуги?

Нам нужно идти на более значимые компромиссы. А для этого нужно задавать трудные вопросы.

Аудит не обязательно должен быть состязательным. Они могут быть способом честной оценки ограничений системы и проведения сравнительного анализа для улучшения. Этот подход не лишен проблем и ограничений, но, если вы не можете понять, помогает ли модель или вредит, различает или приводит к ложным срабатываниям, тогда вам не следует внедрять эту технологию в области высоких ставок, где на карту поставлены свобода и свобода. . Придерживайтесь рекламы.

Технологии могут быть невероятно вдохновляющими. Но только тогда, когда это будет реализовано ответственно. Код не создает волшебства. Без правильной системы сдержек и противовесов им легко злоупотребить. В мире гражданских технологий мы должны сознательно думать о социальных и экологических издержках, как это делают городские планировщики.

Баллы: Будьте осторожны в своих действиях - это выступление Даны Бойда на Форуме личной демократии 2016 (9 июня 2016 г.); ее примечания были изменены на очки. Дана призывает нас не забывать о внешних аспектах кода и предлагает аудит как способ считаться с последствиями кода в областях с высокими ставками, таких как полицейская деятельность. Видео доступно здесь и встроено ниже. - Ред.