4 poin oleh GN⁺ 2024-12-16 | 1 komentar | Bagikan ke WhatsApp
  • Peta proyek GitHub

  • Ini adalah peta yang memvisualisasikan lebih dari 400.000 proyek GitHub. Setiap titik mewakili satu proyek, dan proyek dengan lebih banyak stargazer yang sama ditempatkan lebih berdekatan.

  • Bagaimana ini dibuat?

    • Pada tahap pertama, data dikumpulkan tentang pengguna mana yang memberi bintang pada repositori mana dengan menggunakan dataset publik dari event aktivitas GitHub. Dengan mempertimbangkan event dari Januari 2020 hingga Maret 2023, diperoleh lebih dari 350 juta data bintang.

    • Pada tahap kedua, dihitung kemiripan Jaccard yang akurat antara setiap repositori. Ini sulit diproses di komputer pribadi dengan RAM 24GB, tetapi dapat diselesaikan dalam beberapa jam menggunakan instance AWS EC2 dengan RAM 512GB.

    • Pada tahap ketiga, beberapa algoritme klasterisasi digunakan untuk mengelompokkan repositori. Leiden clustering paling disukai dan menghasilkan lebih dari 1000 klaster.

    • Pada tahap keempat, ngraph.forcelayout digunakan untuk menghitung tata letak node di dalam klaster, dan dengan pengaturan terpisah diperoleh tata letak global klaster.

    • Pada tahap kelima, peta dirender. Berbeda dari proyek sebelumnya, proyek ini menggunakan maplibre untuk mengonversi data ke format GeoJSON, lalu membuat tile dengan tippecanoe untuk membangun pengalaman penelusuran di browser.

  • Nama negara

    • Banyak label negara dibuat dengan bantuan ChatGPT. Jika ada bagian yang salah, akan sangat dihargai jika Anda mengklik kanan untuk memperbaikinya dan mengirim pull request.
  • Geocoding?

    • Untuk mengimplementasikan kotak pencarian, semua repositori hanya didump lalu diindeks berdasarkan huruf pertama (atau nama pembuatnya). Jika Anda mengetik 'a' di kotak pencarian, semua repositori yang dimulai dengan 'a' akan ditemukan lalu ditampilkan di klien dengan fuzzy matcher.
  • Desain

    • Saya lebih menyukai representasi data proyek ini daripada desain petanya. Jika Anda punya pengalaman dalam desain peta atau memiliki visi desain yang keren, jangan ragu untuk membagikannya. Saya sedang mencari gaya yang cocok dengan datanya.
  • Dukungan

    • Jika Anda merasa proyek ini bermanfaat, silakan bergabung dengan grup dukungan. Jika Anda memerlukan bantuan terkait proyek ini atau punya pertanyaan, silakan buka issue atau hubungi lewat Twitter.

    • Terima kasih kepada teman-teman dan para pendukung yang membantu memulai proyek ini: Ryan, Andrey, Alex, Dmytro. Kalian luar biasa!

    • Terima kasih kepada putri tercinta saya, Louise, yang membuat logo proyek ini. Saya mencintaimu!

    • Terima kasih tak terhingga kepada semua kontributor open source yang memungkinkan proyek ini terwujud. Berdiri di atas bahu para raksasa.

  • Lisensi

    • Repositori ini dirilis di bawah lisensi MIT. Jika Anda menggunakan datanya dalam karya Anda sendiri, mohon cantumkan atribusi untuk proyek ini.

1 komentar

 
GN⁺ 2024-12-16
Komentar Hacker News
  • Ada komentar yang merasa terkejut karena Rustland kecil dan hanya sebesar satu minggu milik Clouderra

    • Menarik bahwa Bevy dan Veloren berada di Rustland
    • Komunitas Rust tampaknya memberi lebih banyak bintang daripada komunitas pengembangan gim
    • Ekosistem Rust masih kecil dan terasa seperti banyak orang sedang membuat sesuatu dengan Rust
  • Minigame mencari proyek tertentu hanya dengan peta tanpa fitur pencarian terasa menyenangkan

  • Menarik bahwa torvalds/linux berada di Fronterra, di sebelah proyek JS, daftar awesome-X, dan checklist frontend

    • Jadi penasaran apakah para peretas kernel menyukai frontend, atau apakah orang-orang yang memberi bintang pada proyek GitHub tidak banyak tumpang tindih dengan para penulis kodenya
  • Lucu bahwa nama bagian Among Us adalah "Sussex"

  • Ada kebingungan apakah metafora negara/peta adalah pilihan terbaik

    • Nama-namanya sering kali tidak cukup jelas sehingga harus diperbesar dulu untuk memahaminya
    • Mungkin akan lebih menarik untuk memakai hierarchical clustering dan menampilkan konektivitas rata-rata antar (super)cluster dengan garis
    • Mungkin lebih baik menggunakan label buatan LLM yang lebih deskriptif dan lebih setia untuk tiap cluster
  • Pilihan nama unik "Homelabia" terasa lucu

  • Pernah ada diskusi sebelumnya

    • Diberikan tautan ke diskusi pada 2023
  • Ada yang penasaran bagaimana koneksi antar-repositori ditentukan

    • Saat memeriksa repositorinya sendiri, referensi untuk koneksi tersebut tidak terlihat dua arah