1 poin oleh GN⁺ 2024-01-23 | 1 komentar | Bagikan ke WhatsApp
  • Memperkenalkan Diversion, sistem kontrol versi baru

    • Sasha dan Egal sedang mengembangkan Diversion, sistem kontrol versi modern berbasis cloud.
    • Pengguna pertamanya adalah para pengembang gim, yang menyukai kesederhanaan dan skalabilitas Diversion.
    • Demo singkat bisa dilihat di sini: tautan demo
  • Keterbatasan Git dan kebutuhan akan VCS baru

    • Git telah mendorong kemajuan besar dalam pengembangan perangkat lunak, tetapi dirancang untuk lingkungan tahun 2005 (jaringan lambat, proyek kecil, tanpa penggunaan cloud), sehingga bukan alat yang sempurna untuk semua orang saat ini.
    • Kekurangan terbesar Git adalah skalabilitasnya yang terbatas terhadap ukuran repositori dan file, serta jumlah pengguna simultan.
    • Inilah alasan Google dan Meta membangun sistem kontrol versi mereka sendiri, dan mengapa perusahaan besar di bidang pengembangan gim, semikonduktor, dan layanan keuangan masih memakai alat warisan seperti SVN dan Perforce.
  • Mengatasi kompleksitas Git dan mengintegrasikan fitur modern

    • Mereka ingin menyelesaikan berbagai masalah yang muncul akibat kompleksitas Git.
    • Fitur branching dan merging Git yang unggul telah memberi kontribusi besar pada metodologi pengembangan perangkat lunak modern.
    • Mereka mempertimbangkan apakah mungkin membuat sistem kontrol versi yang mudah digunakan, cepat, dan skalabel, sambil mempertahankan kemampuan branching Git dan memperbaiki bagian-bagian lainnya.
  • Fitur Diversion dan pengalaman pengguna

    • Diversion dibangun di atas distributed storage dan database, dapat diakses melalui REST API, dan berjalan di infrastruktur cloud serverless.
    • Semua operasi repositori dilakukan melalui pemanggilan API (commit, branch, merge, dan lainnya).
    • Klien desktop menyinkronkan semua yang sedang dikerjakan ke cloud secara real-time, bahkan sebelum commit.
    • Pengguna dapat memakai Diversion melalui CLI interaktif, web UI, dan plugin IDE (JetBrains tersedia sekarang, lebih banyak lagi akan segera hadir).
    • Melalui web UI, pengguna dapat melakukan tugas-tugas dasar tanpa memasang klien desktop.
  • Kompatibilitas dengan Git dan rencana open source

    • Diversion kompatibel dengan Git dan dapat disinkronkan dengan repositori Git yang sudah ada (commit baru di Diversion akan tercermin di Git, dan sebaliknya).
    • Mereka berencana merilisnya sebagai open source setelah basis kode cukup matang dan direktori repositori open source di situs web telah diimplementasikan (kode Diversion dikelola di Diversion).
  • Open beta dan kemungkinan penggunaan gratis

    • Diversion saat ini berada dalam status open beta dan bisa dicoba di sini: Situs web Diversion (klik Get Started).
    • Layanannya sepenuhnya self-service dan gratis untuk tim kecil.
  • Fitur yang sedang dikembangkan dan permintaan umpan balik

    • Membangun sistem kontrol versi adalah pekerjaan yang sulit, dan Diversion masih punya jalan panjang.
    • Saat ini mereka berfokus pada peningkatan kecepatan, integrasi CI, pengembangan plugin IDE dan game engine, serta perbaikan kegunaan lainnya.
    • Mereka ingin mendengar pendapat dan umpan balik tentang progres sejauh ini.

Pendapat GN⁺

  • Diversion penting sebagai sistem kontrol versi modern berbasis cloud yang berupaya mengatasi masalah skalabilitas dan kompleksitas Git.
  • Kolaborasi real-time, pemrosesan kerja berbasis API, dan kompatibilitas dengan Git dapat menjadi fitur yang menarik bagi para pengembang.
  • Open beta dan ketersediaan gratis memberi banyak pengembang kesempatan bagus untuk mencoba alat baru, yang dapat membantu pertumbuhan dan peningkatan Diversion dengan cepat.

1 komentar

 
GN⁺ 2024-01-23
Komentar Hacker News
  • Cloud-Native Git Alternative

    • Cloud-native adalah detail implementasi, dan tidak penting kecuali mereka berencana menjual sistem kontrol versi (VCS) baru sebagai perangkat lunak paket, bukan sebagai layanan.
    • Tidak jelas bagaimana cloud-native menyelesaikan masalah sehari-hari para pengguna Git.
  • The biggest drawback of Git is its limited scalability

    • Muncul pertanyaan tentang persentase pengguna yang benar-benar mengalami masalah skalabilitas Git.
    • Pernah bekerja di perusahaan dengan ratusan hingga puluhan ribu engineer, tetapi secara pribadi tidak pernah mengalami masalah skalabilitas Git.
    • Penggunaan monorepo dapat menimbulkan masalah skalabilitas, tetapi monorepo sendiri juga kontroversial.
  • Diversion is built on top of distributed storage and databases, accessible via REST API, and runs on serverless cloud infrastructure. Every repository operation is an API call (commit, branch, merge etc.).

    • Dari sudut pandang pengguna, ada sedikit minat pada protokol internal.
    • Saat menggunakan CLI atau UI, protokol internal tidak penting.
    • Ada rasa ingin tahu terhadap VCS berbasis abstract syntax tree (AST).
  • most notably in games development, semiconductors and financial services are still using legacy tools like SVN and Perforce

    • Sebaiknya fokus bukan pada kompleksitas Git, melainkan pada fakta bahwa Git tidak cocok untuk menangani aset biner berukuran besar.
    • Kutipan Linus Torvalds bahwa Git tidak menangani file besar dengan baik.
  • it was built for a very different world in 2005 (slow networks, much smaller projects, no cloud)

    • Git dirancang pada 2005 dalam lingkungan yang berbeda, dengan jaringan lambat, proyek kecil, dan tanpa cloud.
    • Karena Git bersifat terdistribusi, seharusnya ia juga bekerja dengan baik di lingkungan cloud.
    • Kasus data scientist yang menghancurkan hasil kerja sebulan dengan perintah Git yang salah tampak seperti masalah konfigurasi.
  • In our previous startup, a data scientist accidentally destroyed a month’s work of his team by using the wrong Git command

    • Sebaiknya fokus pada produk mereka sendiri, bukan hanya mengkritik Git.
    • Git adalah VCS terdistribusi, dan masalahnya adalah upaya menggunakannya secara tersentral tanpa backup.
  • git is bad we're better

    • Sebagai game developer, tidak terlalu tertarik dengan proposal yang diajukan.
    • Workflow modern dengan Git LFS berjalan lancar.
    • Cloud-native ditonjolkan sebagai fitur, tetapi tidak ada detail tentang dukungan on-premise dan private cloud yang di-host sendiri.
    • Preferensi artist terhadap fitur file locking serta sulitnya menggunakan locking karena P4 streams dan branch.
  • File locking across branches - coming soon!

    • Fitur file locking akan segera hadir, tetapi proposalnya masih perlu diperbaiki.
  • Git cli UX made be not great, but the git datastructure of representing commits, branches, trees and blobs as immutable pointers and merkle trees is a phenomenal invention.

    • Struktur data Git adalah penemuan yang luar biasa, tetapi tidak setuju bahwa semua perintah harus dilakukan melalui REST API.
    • Kekuatan Git adalah bisa bekerja secara offline dengan partial clone, lalu menyinkronkan commit saat kembali online.
  • In our previous startup, a data scientist accidentally destroyed a month’s work of his team by using the wrong Git command.

    • Diakui bahwa usability Git perlu ditingkatkan, tetapi masalah yang terjadi tampak sebagai kegagalan DevOps.
    • Diperlukan kurva pembelajaran yang lebih mudah agar non-coder bisa merasakan manfaat source control sambil tetap mempertahankan fitur-fitur lanjutan.
  • The world needs a git alternative.

    • Dunia membutuhkan alternatif Git.
    • Ada keterbatasan Git ketika banyak orang melakukan commit ke repository yang sama setiap hari.
    • Jika Git bisa menangani rebase dengan lebih baik, kecepatan kerja tim pengembangan perangkat lunak diperkirakan meningkat 20%.
  • I get that enterprises will buy anything with "Cloud" or "AI" in the name, but VCS doesn't have anything to do with the cloud.

    • Ada anggapan bahwa perusahaan akan membeli apa pun yang memiliki kata "Cloud" atau "AI" dalam namanya.
    • Penting untuk fokus pada penyelesaian masalah, bukan pada teknologinya.
    • Jika pengalaman pengguna buruk, detail teknis tidak ada artinya.
    • Diperlukan strategi penjualan untuk produk yang menawarkan pengalaman yang mempersingkat waktu pengembangan, mengurangi kesalahan, dan meningkatkan kolaborasi.