DataArt показал, как в действительности выглядит типичный программист
DataArt, глобальный технологический консультант, создал портрет среднестатистического программиста. Обобщенный портрет был составлен на основе двух тысяч фотографий разработчиков из восьми стран. Вопреки распространенному мнению, у типичного программиста нет бороды.
Выражение «типичный программист» встречается довольно часто, но в действительности никто не знает, что за этим стоит. В зависимости от личного опыта, под этим могут понимать и корпулентного бородача с банкой пива, и молодого человека в толстых очках, который заправляет свитер в джинсы, и хипстера с расписными руками и розовым ирокезом. DataArt решил выяснить, кто в действительности стоит за этим понятием.
Для анализа взяли фото 1541 мужчин и 512 женщин, которые работают с DataArt в восьми странах мира — Аргентине, Болгарии, Великобритании, Германии, Польше, США, Украине и России. В результате получились портреты усредненных программистов — мужчины и женщины.
Усредненные программисты — мужчины и женщины, собранные алгоритмом из портретов более 2 тыс. человек
Для слияния предварительно обработанных алгоритмом лиц за основу был взят метод Сати Маллек, основанный на выделении ключевых 68 точек каждого лица в выборке — координат уголков глаз, бровей, губ, носа и так далее. Далее лица были разбиты на треугольники (триангулированы) по ключевым точкам, цвет пикселей внутри полученных треугольников для всех лиц в выборке был усреднен. Код проекта был написан на языках C++ с использованием фреймворков dlib/opencv.
По словам автора проекта, Андрея Сорокина, самой серьезной проблемой было большое потребление памяти (более 4 Гб), необходимой для слияния сотен изображений. Задача также была осложнена низким исходным качеством фото и различными ракурсами моделей. Проблемы были решены — объём потребляемой памяти не превышает 100 Мб.
На втором этапе исследования инженеры DataArt попытались выяснить, накладывает ли свою печать на внешность разработчика выбор той или иной технологии — происходит ли настоящая профессиональная деформация?
Для того, чтобы портрет «типичного» программиста получился с характером, сохранилось больше характерных черт при минимуме объединяемых портретов, для каждой группы был применён спектральный анализ векторов, соответствующих определенным чертам лица.
Эксперимент показал, что некоторые различия есть: например, разработчики на Java более улыбчивые, а у специалистов .Net хуже зрение —они часто носят очки.
Слева — усредненный портрет разработчика Java, справа — разработчика .Net
47 коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарів