Розробник-ентузіаст представив проєкт мапи GitHub

9 серпня 2023 2 хвилин читання

Розробник Андрій Каща із США створив проєкт, який дозволяє побачити GitHub у вигляді величезної мапи світу. На цьому сайті можна знайти понад 400 тис. репозиторіїв GitHub, якіих обрали за критерієм найбільшої кількості зірок від червня 2020-го по березень 2023-го.

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

Наприклад, на мапі можна побачити такі країни, як Свіфторія (Swift), В’ютопія (Vue.js), Джаваленд (Java), Python (Python), Дотнетія (.NET), Фронтера (фронтенд-розробка), Земля Юніті (Unity), Ледіаполіс (LED), Хардлендс (розробка заліза), Королівство PHP (PHP) і Диплернія (глибоке навчання). Класифікували проєкти за допомогою алгоритмiв схожостi та кластеризацiї.

Андрей Каща розповiв, що для створення мапи використовував Google BigQuery. Потiм вiн застосував алгоритм Жаккара, щоб знайти схожiсть мiж репозиторiями за допомогою матрицi подiбностi. Для цього вiн орендував екземпляр AWS EC2 з 512 ГБ оперативної пам’яті, який впорався з обчисленнями за кілька годин.

На останньому етапі вiн застосував алгоритм Лейдану, щоб кластеризувати репозиторiї за тематикою. Для графової візуалізації вiн використав своє власне рішення ngraph, яке дозволило створити інтерактивну мапу з можливістю перегляду README-файлів і зв’язків між проєктами.