Код в фильмах: Кремниевая долина, сезон 1 (Silicon Valley S01)

В этом сериале заметил довольно много всякого кода, поэтому начал пересматривать второй раз, останавливаясь на интересных кадрах.
Хотел было сразу про все сезоны написать, но, оказалось, что тут полно информации и тяжело разом всё подготовить, поэтому буду выкладывать посезонно.
Заимствований кода в этом сериале немного. Похоже, что довольно приличную часть фрагментов программ писали специально для фильма.
Сезон 1, Серия 1
“Большеголовый” показывает работу приложения NipAlert:
.webp)
На экране Visual Studio. Судя по именам и интерфейсам, написано оно на C# и сборка предназначается для Windows Phone: на экране горизонтально расположенный эмулятор телефона.
.webp)
Эта табличка с магическим числом не так проста, как кажется. Weissman score - реальная метрика для оценки качества алгоритмов сжатия без потерь. Была придумана в Стенфорде профессором Цахи Вайсманом и аспирантом Винитом Мисрой по заказу HBO специально для этого сериала. После телевизионного успеха эта метрика использовалась некоторыми учёными и в реальных проектах.
Серия 2
Ричард вымучивает бизнес-план, а на стене у него за спиной знаковые портреты:
.webp)
- слева Лена Сёдерберг, основная заслуга которой - появление в 1972 году на развороте журнала Плейбой. Так получилось, что фрагмент этого разворота, как раз тот, что на картинке, был использован в научной работе по сжатию изображений в 1973 году. Требовался квадратный рисунок 512x512 пикселей, а под рукой был сканер на сотню DPI и журнал. С тех пор это изображение широко используется в качестве тестового для проверки качества работы алгоритмов компресии изображений.
- справа Дэвид Хаффман, автор алгоритма кодирования данных, “код Хаффмана”, который применяется во многих алгоритмах сжатия: JPEG,ZIPи т.д.
Ещё одно демо проекта NipAlert:
.webp)
на этот раз на экране эмулятор iPhone. В качестве IDE используется IntelliJ IDEA. Постарались, сделали по версии под платформу. Вот только под Андроид версии так и не покажут, хотя в 2014 году он уже был пятой версии и занимал 80% рынка смартфонов.
.webp)
Код написан на Objective C, но по фрагменту назначение толком не понятно: тут только перевод секунд в минуты и проверка времени работы программы. Возможно, это код, отвечающий за показ сплеш-скрина при запуске приложения.
На пару секунд мелькает в кадре экран с кодом:
.webp)
Этот экран дальше будут часто издалека показывать в разных эпизодах, но тут удалось его более-менее разглядеть:
.webp)
В верхней части фрагмент на C. Похоже, что это часть некоторой программы по обработке звука, взаимодействующей с OpenAL (Open Audio Library), открытой звуковой библиотеке от Creative, авторов Саунд Бластера, что вполне укладывается в сюжет - в этих эпизодах серии вовсю разрабатывается аудио-кодек.
В нижней - минифицированный код на JavaScript от системы телеметрии для сайтов: “Foresee” (слежение за пользователями, встраивание голосовалок и т.п.) Конкретный источник этого фрагмента уже не определить, т.к. это общая библиотека и код раздавался всем желающим, а к сегодняшнему дню её код значительно поменялся.
Серия 6
Ричард пишет в BinTree.java код на Python для работы с деревом. На ноутбуке Sony под управлением OS X. Эээ…
.webp)
Следом - прогон автотестов в Jenkins:
.webp)
На фоне тот же файл, BinTree.java:
.webp)
…и снизу выглядывает он же:
.webp)
…но на этот раз код в этом файле написан на JavaScript: это модуль для работы с БД PostgreSQL.
А на правой панели выглядывает небольшой фрагмент из библиотечного кода: реализация алгоритма компрессии LZMA из JavaSDK:
.webp)
В сцене, где Джаред оказывается на корабле, виден QR-код:
.webp)
Это ссылка на сайт ravigacapital.com - фирму Питера Грегори, название которой мелькает в офисах в середине сезона. Однако, на этом сайте так ничего и не открыли - на момент выхода серии там висела заглушка. Возможно, на этот ресурс были какие-то планы, которые пришлось пересматривать в связи со внезапной смертью актёра, который играл Грегори. А потом домен перестали продлевать и его засквоттили всякие нехорошие люди.
Серия 8
Конференция ТехКранч:
.webp)
Опять Лена. На этот раз - в презентации Гэвина Белсона. Он тут рассказывает про алгоритмы компрессии, конечно.
И Ричард рассказывает про новый алгоритм сжатия изображений:
.webp)
В 2016 году, через два года после выхода в эфир сериала, Dropbox разработал алгоритм сжатия JPEG-картинок на 22% без потерь. Использовался факт, что в JPEG не бывает резких переходов и, разбив картинку на блоки 8x8 пикселей, можно сэкономить, вычисляя яркость блока относительно его соседей. Авторы его называют, с некоторой натяжкой, конечно, реализацией алгоритма “Изнутри наружу” (MIDDLE OUT!!), про который и рассказывал Ричард на ТехКранче.
Проект Lepton. В 2023 году он был закрыт в пользу более популярных Brotli и WebP.