16 poin oleh GN⁺ 2024-11-01 | 1 komentar | Bagikan ke WhatsApp
  • Bagi mereka yang menangani codebase berskala besar, pemrograman di laptop bisa menjadi beban
  • Kipas terus berputar, language server kekurangan memori, dan waktu rebuild memakan lama
  • Di Zed, Anda dapat membuka proyek di perangkat mana pun melalui SSH
  • UI berjalan sepenuhnya secara lokal dan memberikan grafis mulus 120 frame, sementara language server, task, dan terminal berjalan di server jarak jauh sehingga dapat memanfaatkan hardware cloud

Membangun lingkungan pengembangan jarak jauh

  • Untuk pengeditan kode jarak jauh, Zed telah melakukan perubahan infrastruktur untuk mendukung SSH
  • Berbagai masalah harus diselesaikan, seperti menjaga koneksi SSH, menyiapkan server jarak jauh, dan mengintegrasikan fitur
  • Untuk koneksi SSH, digunakan pengaturan ControlMaster agar satu koneksi tunggal dipertahankan untuk setiap host
  • Setelah terhubung, server jarak jauh yang sesuai dengan sistem operasi dan arsitektur akan diunduh
  • Server jarak jauh yang dikompilasi dengan musl tidak memerlukan dynamic linking sehingga dapat berjalan juga pada distribusi lama
  • Meski koneksi terputus, server jarak jauh tetap berjalan, dan saat tersambung kembali language server tetap dalam keadaan terinisialisasi penuh
  • Perubahan yang belum disimpan dicadangkan secara lokal sehingga pekerjaan tidak hilang

Kolaborasi dan proyek SSH

  • Membuat proyek SSH bekerja bersama fitur kolaborasi merupakan tantangan
  • Sedikitnya 4 node dapat terlibat dalam kolaborasi 2 orang melalui SSH, sehingga protokol sinkronisasi kolaborasi diuji
  • Project dibagi menjadi bagian-bagian logis agar klien dapat mengaktifkannya dalam mode jarak jauh maupun lokal tergantung apakah ia adalah host kolaborasi, host SSH, atau tamu kolaborasi
  • Melalui pengujian baru, setiap peran dan server kolaborasi diinstansiasi untuk memastikan sinkronisasi berjalan dengan benar
  • Saat mengerjakan proyek bersama teman atau rekan kerja, sistem menanganinya secara transparan, baik proyek berada di laptop maupun di perangkat yang dapat diakses lewat SSH

Ringkasan GN⁺

  • Zed menyediakan lingkungan pengembangan yang efisien bagi pengembang yang menangani codebase besar dengan memanfaatkan server jarak jauh
  • Fitur pengembangan jarak jauh melalui SSH meningkatkan performa dengan memanfaatkan hardware cloud
  • Fitur kolaborasi mendukung sinkronisasi antar banyak node sehingga memungkinkan kerja sama yang lancar
  • Zed dapat digunakan di macOS dan Linux, serta menawarkan pengalaman baru bagi para pengembang
  • Proyek lain dengan fitur serupa adalah Remote Development Extension milik Visual Studio Code

1 komentar

 
GN⁺ 2024-11-01
Komentar Hacker News
  • Memrogram di Mac dengan Zed, SSH Remoting, dan Orbstack adalah lingkungan impian

    • Menjalankan mesin Linux di Orbstack dalam hitungan detik lalu terhubung lewat SSH dari Zed memberikan lingkungan pengembangan Linux yang cepat
    • Mirip seperti WSL versi macOS dan VSCode, tetapi terasa lebih baik
    • Terinspirasi oleh karya Mitchell Hashimoto di masa lalu
    • Pernah memakai VMware dan Docker Desktop, tetapi keduanya terasa berat untuk mendapatkan lingkungan pengembangan yang mulus dan cepat
    • Berkat Zed dan Orbstack, didapatkan sistem yang cepat dan elegan
  • Ada rasa penasaran tentang model bisnis Zed dan apakah ini open source

    • Agak khawatir membangun alur kerja yang bergantung pada produk perusahaan
  • Fitur pengembangan jarak jauh Zed memasang dan menjalankan binary di host jarak jauh

    • Mesin lokal terhubung ke server jarak jauh melalui SSH lalu Zed mengunduh dan menjalankan servernya
  • Menggunakan Zed untuk pengembangan C, C++, Rust, dan Angular, dan sangat puas

    • Sudah mencoba berbagai alat seperti JetBrains, vscode, dan vim, tetapi Zed unggul untuk coding sehari-hari
    • Tidak bisa dipakai untuk pengembangan C# karena fitur debugging masih kurang
    • Sangat unggul dalam kecepatan respons
  • Saat berpindah-pindah di antara beberapa komputer untuk mengembangkan sesuatu, tmux dan nvim dipakai untuk mempertahankan sesi

    • Zed maupun VS Code tampaknya tidak mendukung use case ini
  • Kecepatan Zed memang bagus, tetapi masih kurang fitur penting seperti penandaan error inline dan tombol untuk menjalankan kode

    • Saat ini Zed IDE terasa seperti editor teks ringan dengan dukungan AI
  • Berbagi layar berbasis gambar mungkin bisa menjadi pilihan yang lebih baik

    • Fitur kolaborasi Zed bagus, tetapi masalah kompatibilitas dengan aplikasi lain perlu dipertimbangkan
  • Menginginkan solusi pengeditan jarak jauh yang benar-benar portabel

    • Solusi seperti Zed atau vscode yang mengharuskan pemasangan server di server jarak jauh tidak cocok
    • Saat lingkungan jarak jauh berbeda-beda, sulit untuk menyalin proyek dengan mudah agar langsung bisa berjalan
    • Fitur Zed bagus dan terus berkembang, jadi tetap positif
  • Menjalankan aplikasi yang tidak diketahui di server jarak jauh yang tepercaya bukanlah ide yang baik

    • Menangani semua pekerjaan secara lokal lebih cepat
    • File bisa ditangani dengan memanfaatkan kemampuan bawaan SSH
  • Mengkhawatirkan karena tidak ada penyebutan Emacs atau Tramp

    • Terlihat seperti hanya berfokus pada demam AI