Ответственность программистов

Прагматика кодексов и сомнений

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

©
Текст: Оксана Мороз

Компьютерная этика как набор рекомендаций для профессионального использования вычислительных систем на первый взгляд не выделяется среди прочих аналогичных этических кодексов. Все они опираются на гуманистические ценности, закрепленные во множестве рамочных международных «конвенций» — начиная с квазирелигиозных предписаний по типу «не навреди!», и заканчивая требованиями «уважать интеллектуальную собственность и приватность других». Кажущаяся банальность содержания этих пактов заставляется задуматься об их необходимости. В самом деле, уже и так существуют правовые ограничения для любой профессиональной деятельности, зачем множить тексты с непонятным статусом, видимо, не влияющие вообще на суть деятельности экспертов IT-индустрии? И не проще ли минимизировать количество споров вокруг этики программирования и делегировать решение этих вопросов юристам? Оказывается, все не так просто.

Прикладной характер этики программирования

Этичность решений программистов (от кодеров до архитекторов систем) становится предметом серьезнейшего беспокойства всех участников процесса обмена цифровыми благами: представителей бизнеса, пользователей и лоббистов конкретных интересов. И эта встревоженность питает, в том числе, современные тенденции к жесткой регуляции цифрового пространства, за которую нередко выступают даже конечные потребители. И их опасения не беспочвенны. Большинство известных конфликтов с digital-компаниями были как раз следствием столкновения морально устаревших организационных и бизнес-решений, заставляющих смотреть на потребителя как на инструмент достижения финансовых целей, с новой реальностью просьюмеризма онлайн групп, имеющих возможность далеко не самого незаметного влияния на будущее компаний. Один лишь кейс с Cambridge Analytica и последующей кампанией #deletefacebook показывает: работа команд, для которых вопросы корпоративной ответственности оказываются значимыми только в момент серьезного кризиса, вызывает массовый гнев. Даже в том случае, если предлагаемый этими профессионалами продукт уже успел захватить рынок и стать неотъемлемой частью повседневности всех и каждого.

В обсуждение этических дилемм, в идеале, должны быть вовлечены все, кто заинтересован в развитии компьютинга

Так что дискуссии о содержании международных этических кодексов программистов и инженеров ПО, а также о необходимости их «подстройки» под современные общественные ожидания — не блажь философов, желающих отнять хлеб у специалистов по цифровому праву, и не очередной способ честного отъема денег грантодателей. Это предмет специальных исследований, важнейший элемент деятельности международных неправительственных организаций, заинтересованных в развитии компьютинга, и новая реперная точка в функционировании IT-индустрии. Для успешного существования которой, очевидно, требуется смена парадигмы восприятия программистов как сообщества людей, которые выступают одновременно и как субъекты, ответственные за конструирование цифровой реальности и качество жизни ее пользователей, и как жертвы волюнтаризма бизнеса, заставляющего создавать не самые удобные продукты, манипулировать потребительским поведением и т.д. Как замечают некоторые эксперты, принятие прикладного характера этики программирования — и на уровне отдельных профессионалов, и в масштабах таких инновативных кластеров, как Силиконовая долина, — может стать залогом возникновения более качественных, построенных на учете интересов разных групп процедур регуляции цифровой среды. Но один из вопросов остается прежним — почему бы не отдать решение этих проблем юристам?

Основа основ: кодексы ACM и IEEE

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

Такова, например, Ассоциация вычислительной техники (Association for Computing Machinery, ACM). Она объединяет более 83 тысяч IT-экспертов, формирует образовательные программы в разных связанных областях и способствует выстраиванию партнерских отношений между специалистами в области человеко-машинного взаимодействия, компьютерной графики, мультимедиа, передачи данных и т.д. Хотите быть в курсе разработок специальных тематических групп, получать преференции как участник регионального отделения одной из старейших ассоциаций, ответственной за оценку вклада в развитие информатики (ACM присуждает, кстати, Премию Тьюринга)? Тогда, как минимум, стоит следить за дискуссиями вокруг этического измерения деятельности программиста, которые разворачиваются на специальной онлайн-площадке ACM. И по возможности откликаться на обновления кодексов, которые периодически публикуются в свободном доступе.

В похожем ключе действует Институт инженеров электротехники и электроники (Institute of Electrical and Electronics Engineers, IEEE) — лидер в производстве стандартов по аппаратному обеспечению вычислительных систем. В состав IEEE входит примерно 400 000 индивидуальных членов из 170 стран (в том числе более 100 000 студентов), организация публикует около трети всей мировой технической литературы, касающейся вопросов применения компьютеров и систем управления, электротехники, участвует в разработке более 900 действующих стандартов в этих отраслях. В частности, Кодекса инженеров программного обеспечения, созданного в коллаборации с ACM. Институт нередко оказывается и участником политических событий. Скажем, в начале 2000-х годов в рамках очередного ухудшения отношений США и Ирана он лишил иранских членов ряда привилегий.

Значительная часть рекомендаций противоречит дизайну и идеологии существующих продуктов и сервисов

В основу кодифицированных предписаний этих и других организаций положена забота о четырех составляющих компьютерной этики: тайне частной жизни клиентов (privacy), соблюдении норм эксплуатации вычислительных систем (accuracy), неприкосновенности частной собственности (property, в данном случае — защите норм авторского права и интеллектуальной собственности) и ценности доступности информации (accessibility). Внимание именно к этим категориям означает, что программистам всех мастей и специализаций рекомендуется задумываться о собственной мере ответственности за удобство и качество пользования цифровыми продуктами и сознательное или случайное воровство чужого ПО или данных, избегать багов (или, тем паче, создания вредоносного ПО) в ходе своей деятельности, предлагать такие инструменты и сервисы, которые гарантируют соблюдение прав и свобод граждан, а также обращать внимание на различные социальные и экономические эффекты, возникающие при адекватном функционировании сетевых/онлайн ресурсов, к созданию которых они причастны.

На практике эти принципы оказываются не то, чтобы невыполнимыми, но вступающими в противоречие со множеством уже существующих продуктовых, интерфейсных решений, воспринимаемых — по крайней мере, с позиции end-users — как золотой стандарт программирования. Или как основа дизайна инструментов, с которыми потребители так свыклись, что готовы даже игнорировать какие-то неудобства. Скажем, пользователи могут жаловаться на несовершенство алгоритмов социальных сетей, отсутствие каких-либо полезных функций. Но до поры не обращают внимания на тот факт, что эти коммуникационные платформы существуют для выкачивания максимума персональных данных, и именно возможность манипуляции этой информации и оказывается движущей силой сервисов. Известные монополисты в обустройстве цифрового измерения нашей социальной жизни довольно своеобразно относятся к той самой privacy. Если человек невнимательно изучает Политику конфиденциальности и прочие правила взаимодействия с сервисом, он может оказаться разменной монетой в торгах разных экономических агентов — от государственных банков до маркетологов частных компаний. Кстати, внимательное ознакомление с договорами о предоставлении услуг тоже не спасает. Условия меняются часто, а многие так сильно полагаются на цифровую среду в решении профессиональных и повседневных задач, что становятся заложниками конкретных сервисов. Можно ли применить в этой ситуации меры юридического характера к создателям сервиса и (возможно) к авторам конкретных алгоритмических решений? Вряд ли. А вот обсуждать претензии этического характера, которые лягут в основу последующей проработки возможностей подобных сервисов, стоит.

Постоянно неочевидные моральные ориентиры

Этика программирования — это предмет для очень конкретных дискуссий, предполагающий внимание к тем деталям работы инженеров, разработчиков, кодеров, которые де юре полностью легитимны, но де факто имеют неоднозначные социальные эффекты. Впрочем, дискуссии о кодексах, их пользе или вреде, необходимы еще и потому, что позволяют настраивать представления о «нормативном» в самом дисперсном поле практик программирования, дают пространство для ведения споров. Которые, заметим, обретают публичный статус и становятся диспутами о настоящем и будущем живущего в «цифре» человека, а не остаются достоянием только специалистов.

Кого считать моральным авторитетом: борца за «свободное программирование» или сторонника жестких норм «профессионализма»?

Можно привести массу примеров таких столкновений, которые часто выглядят интересными только для гиков. Стоит ли считать злокозненным нарушителем этических норм программиста-графомана, пишущего такой код, который приводит к функциональным нарушениям работы продукта и требует постоянных «починок»? Как оценивать в логике этих этических манифестов тех, кто меняет правила отношения к авторскому праву методом ввода лицензий Creative Commons? Что думать по поводу деятельности Ричарда Столлмана, основателя движения свободного ПО, автора концепции «copyleft», борца против проприетарного софта как «хищнической социальной системы»? Стоит ли прислушаться к Эрику Реймонду, продвигающему ценность хакерской этики, кстати, предполагающей и возможность деятельности в обход существующим регуляциям — во благо развития программирования, конечно, а не ради наживы. А, может, надо считать моральным ориентиром содержание «Открытого письма любителям», написанного во второй половине 1970-х годов Биллом Гейтсом?

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