С практической точки зрения софту необходимо название для того, чтобы можно было создать соответствующую директорию на компьютере – у нее должно быть название. Важно в самом начале назвать свой проект, почти как дать имя ребенку. В то же время вы, назвав ребенка Джозеф, можете через два дня передумать и назвать его Йосси, и именно это имя начнете писать на изнанке его футболок. Если же вы переименуете директорию с программой, в коде, скорее всего, появится огромное количество нестыковок.
Итак, «Бейливик». Его можно найти в интернете на платформе campaign-finance.org.
Переходим непосредственно к процессу разработки. Некоторые проблемы, с которыми я столкнулась, были традиционными повседневными сложностями при разработке любого программного проекта. В частности, мне пришлось нанять помощника-кодера, поскольку в какой-то момент сроки стали поджимать. Наем разработчика не похож на наем юриста: настоящие профессионалы невероятно дорого стоят. Кроме того, их сложно найти, и они не рекламируют свои услуги. Им не нужно. Есть, конечно, несколько вариантов, но для обычного человека они будут сложными. Поисковый запрос «нанять разработчика Django» принес лишь бесконечную кучу спама. Вот один из показательных результатов выдачи:
Работа Django | Разработчики Django | Работа фриланс
Django team – одна из самых популярных django фриланс-платформ для поиска работы. Django team – это ярмарка лучших разработчиков django, инженеров, программистов, кодеров и разработчиков архитектуры системы…
Поиск разработчика онлайн оказался исключительно сложной задачей. Вместо этого я решила обратиться к своим контактам в поисках рекомендации. Предполагалось, что технологии позволят облегчить поиск профессиональных услуг онлайн, на деле – они лишь усложнили процесс. Слои алгоритмов, подверженных внешнему управлению с целью выгоды, осложняют выполнение обычной задачи вроде поиска разработчика. Та же проблема возникла, когда я попыталась найти мастера, чтобы починить кое-что у себя дома. И это напомнило мне о том, почему администрирование контента так важно. В онлайн мире, где у каждого своя правда, выполнение простых задач может занять вечность. Парадокс: выбор может быть тяжелым бременем.
Я поняла, что, увы, столкнулась с той же проблемой, что и математики в XIX в.: им нужно было больше вычислителей, которых невозможно было найти. Я хотела нанять целую команду женщин и цветных. Я просмотрела все свои контакты, но задача оказалась сложнее, чем я ожидала. Я говорила с одной разработчицей – и владелицей собственного магазина, – но ее услуги оказались слишком дороги. Наконец, я наняла фрилансеров – женщину и троих мужчин, в итоге гендерное соотношение женщин и мужчин в проекте стало 2:3. В случае маленькой команды и близкого дедлайна это должно было сработать.
В работе над проектами, связанными с написанием софта, есть один «секрет»: никто не знает, сколько времени потребуется на проект. Это обусловлено отчасти тем, что написание компьютерного кода больше похоже на написание эссе, нежели на конвейерное производство. Обычно для нового проекта код пишется впервые, так что не существует по-настоящему релевантного способа оценить, как много времени потребуется на его создание – особенно если предполагается, что разрабатываемые функции будут делать что-то, что не делалось раньше. Другая проблема заключается в том, что код пишут люди, а не машины. Люди не слишком хорошо оценивают время и требуемые усилия: они отправляются в отпуск, проводят вторую половину дня на Facebook вместо работы. Короче, люди есть люди. Они – переменные, а не константы.
Настоящим испытанием стало то, что нам предстояло показать сложные взаимосвязи мира финансирования избирательных кампаний простым и понятным способом. Я обратилась к эксперту в области пользовательских интерфейсов Эндрю Гарварду, разработавшему несколько проектов, которые помогали журналистам организовать и систематизировать важную для них информацию. Журналисты уровня штата США обычно стремятся обнаружить истории, связанные с избирательной кампанией в их штате. Журналисты национального уровня фокусируют свое внимание на президентской гонке и ключевых кампаниях в штатах. В любом случае система предлагает выбрать конкретную кампанию и кандидата. И вы это видите в предлагаемом списке, когда входите в систему. Рисунок 11.1 показывает, что видит пользователь, если в списке оказались Хиллари Клинтон, Дональд Трамп и Берни Сандерс. Клик по имени открывает страницу с информацией. Каждое досье предполагает набор финансовых отчетов, переданных в Федеральный избирательный совет. При помощи «Бейливика» репортер может просмотреть все эти отчеты по отдельности или вместе.
Финансовые пожертвования бывают «за» кандидата и «против». Согласно законодательству, в финансировании избирательных кампаний переводы делятся по группам. Помните, что есть еще авторизованные переводы и независимые расходы? Так вот «Бейливик» отслеживает все это в отчетах и структурирует по группам поддержки и оппозиции. Это сильно экономит время и ресурсы. Кроме того, так проще просмотреть имена и заметить интересные детали.
Внешние и внутренние группы, представленные в виде плоской древовидной структуры – базового типа при визуализации данных, – появляются внизу страницы каждого кандидата. Сложно анализировать цифры, гораздо проще обнаружить закономерности в графических данных, особенно когда расходы группируются по категориям. В древовидной структуре каждая категория представлена прямоугольником. Относительный размер каждого из них имеет значение, поскольку отражает количество спонсоров и суммы. Я могу нажать на любой прямоугольник и увидеть более детальную информацию. Так, например, Great America PAC больше всех потратил на независимые расходы в рамках инаугурации (рис. 11.2).
Кликнем на этот прямоугольник и увидим, что этот спонсор потратил $12,7 млн в поддержку избирательной кампании Трампа, разбив сумму на десятки трансакций в течение всей избирательной кампании.
Нередко визуализация данных вдохновляет на журналистское расследование. Так, когда я впервые увидела визуализацию расходов избирательного комитета Трампа, я заметила этот прямоугольник, помеченный словом «шляпы» (рис. 11.3). А в 2016 г. в рамках кампании комитет потратил $2,2 млн на шляпы производства компании Cali-Fame (рис. 11.4).
Осенью 2016 г. я ничего не знала о Cali-Fame, но мне казалось, что из этого может получиться расследование о том, как Трамп тратит деньги на шляпы. Та же идея пришла в голову репортеру Филиппу Бампу. 25 октября 2016 г. он опубликовал в Washington Post статью под названием «В период избирательной кампании Дональд Трамп тратит на шляпы, а не на опросы»
[159]. И не только на это, надо сказать. Трамп также потратил $14,3 млн на футболки, кружки, стикеры и перевозку всего этого – все это было произведено компанией Ace Specialities LLC, специализирующейся на производстве рабочей одежды для нефтегазовых компаний. Владелец компании Кристл Махфуз состоит в совете директоров фонда Эрика Трампа
[160]. Значит ли это что-нибудь? Я не знаю. Однако, будь я политическим журналистом, это послужило бы основой для нового расследования.