1 poin oleh GN⁺ 21 jam lalu | 1 komentar | Bagikan ke WhatsApp
  • Situs baru ini memperkenalkan Elixir sebagai bahasa berbasis Erlang yang dapat diskalakan dari pengembangan individu hingga tim beranggotakan ratusan orang, dan dari satu server hingga jaringan global
  • Dengan immutability, keamanan memori, dan sistem tipe gradual, Elixir memungkinkan pembangunan sistem yang mudah dipulihkan dari kegagalan dan mudah dipelihara
  • Satu codebase dapat diskalakan ke mesin multicore dan banyak node, dan bila digabungkan dengan Numerical Elixir juga mendukung komputasi GPU
  • Dengan ekosistem Phoenix, Nerves, Nx, dan Broadway, Elixir dapat digunakan untuk membangun web, embedded, machine learning, pemrosesan data, IoT, dan sistem terdistribusi
  • Package manager, formatter kode, alat dokumentasi, IEx, serta ekosistem Livebook dan Hex mendukung dari pembuatan prototipe hingga operasi produksi

Pengalaman pengembangan dan skalabilitas

  • Elixir menggabungkan pengembangan cepat dengan praktik kerja yang kokoh, berlandaskan keandalan dan toleransi kesalahan Erlang yang telah terakumulasi selama puluhan tahun
  • Mengutamakan kode yang jelas dengan fokus pada data dan domain
    • Menyediakan immutability dan keamanan memori
    • Dapat memanfaatkan sistem tipe gradual di Elixir 1.20
  • Satu codebase dapat diskalakan secara vertikal di mesin multicore dan secara horizontal melalui komunikasi antarnode, sehingga cocok untuk sistem real-time berbasis pesan dan web
  • Bila digabungkan dengan Numerical Elixir, komputasi dapat diskalakan ke seluruh core, cluster, dan GPU
  • Selama beberapa tahun berturut-turut dipilih sebagai salah satu bahasa yang paling disukai di dunia, dan hasilnya dapat dilihat di survei Stack Overflow 2025
  • Dilengkapi package manager bawaan, formatter kode, dan fitur dokumentasi
    • Dengan shell interaktif IEx dan notebook interaktif Livebook, pengguna dapat dengan cepat membuat prototipe dan melakukan debugging real-time pada sistem yang sedang berjalan
  • Digunakan di lingkungan produksi untuk berbagai industri dan aplikasi, dari pelaku usaha perorangan hingga perusahaan Fortune 500

Bidang penggunaan dan ekosistem

  • Untuk pengembangan web, digunakan Phoenix untuk pengembangan cepat, LiveView untuk menambahkan fitur real-time dengan sedikit kode, Ecto untuk lapisan data, dan Plug
  • Untuk sistem embedded, Nerves mengemas seluruh aplikasi menjadi firmware kecil serta menyediakan pembaruan nirkabel dan toleransi kesalahan tingkat carrier
    • Dengan AtomVM, Elixir juga dapat dijalankan pada perangkat kecil seperti mikrokontroler
  • Untuk machine learning, Nx menyediakan tensor yang dipercepat GPU, dan Livebook mendukung eksekusi model pralatih, visualisasi data, dan deployment dalam satu lingkungan
  • Untuk pemrosesan data dan media, Elixir memanfaatkan backpressure dan konkurensi
    • Broadway memproses jutaan event dari queue
    • Membrane menyediakan pipeline yang dapat dikomposisikan untuk audio, video, dan lainnya
  • Berdasarkan Erlang VM, Elixir juga digunakan untuk IoT dan sistem terdistribusi, dengan proyek Erlang terkait seperti EMQX, RabbitMQ, dan Riak
  • Ribuan paket komunitas dapat dijelajahi di Hex, dan ekosistemnya terus berkembang
  • Elixir Team memimpin pengembangan bahasa, sementara Erlang Ecosystem Foundation mendukung Elixir dan komunitas Erlang yang lebih luas
  • Elixir Open Source Stewards, yang mempekerjakan atau mensponsori pengembang open source, mencakup perusahaan-perusahaan berikut
    • Software Mansion: sejak 2016 mengembangkan alat full-stack seperti Membrane, Popcorn, LiveDebugger, dan Legion
    • Dashbit: membuat Elixir, Livebook, Broadway, Plug, dan lainnya serta membantu adopsi dan skalasi produksi di perusahaan
    • Jump: berkontribusi pada Expert LSP, Quokka, dan lainnya

1 komentar

 
GN⁺ 21 jam lalu
Pendapat Hacker News
  • José Valim dan tim benar-benar telah membangun bahasa dan ekosistem Elixir yang luar biasa, dan sangat berterima kasih karena terus bekerja keras terutama selama setahun terakhir untuk rilis 1.20

    • Saya pernah mendengar dari penggemar Erlang bahwa Elixir adalah varian menjijikkan yang mengubah BEAM ke gaya Ruby oleh orang-orang yang tidak benar-benar memahami Erlang, tetapi justru karena itulah ia menjadi populer; saya penasaran bagaimana pendapat orang soal ini
  • Elixir memang hebat, tetapi selain konkurensi saya berharap lebih banyak pendanaan dan upaya pengembangan dialokasikan ke BEAM itu sendiri agar kinerja eksekusi murni meningkat
    Selama sekitar 10 tahun terakhir, peningkatan performa tampaknya nyaris bergantung pada satu orang saja

    • Selama 5~6 tahun terakhir, beberapa orang telah mengembangkan kompiler JIT, dan tim WhatsApp juga banyak berkontribusi
      Setelah tim Erlang/OTP memeras semua performa yang mungkin dari JIT, tampaknya mereka akan lanjut ke optimisasi antar-modul; beberapa elemen dasar runtime memang harus didesain ulang, tetapi ini terlihat membuka banyak kemungkinan baru
    • Cukup sulit untuk meningkatkan kinerja operasi matematika pada kasus penggunaan nyata di interpreter bytecode
  • Saya mulai belajar Elixir tahun ini, dan kagum dengan fitur yang disediakan BEAM bersama bahasanya; saya benar-benar terpikat oleh ekosistem yang diremehkan ini
    Situs barunya juga terlihat keren

    • Developer yang sering saya ikuti, Joe Armstrong, pernah menulis bahwa ia menilai Elixir secara umum positif, dan jika ia tidak menciptakan Erlang, kemungkinan ia akan menjadi pengembang Elixir
      https://joearms.github.io/published/2013-05-31-a-week-with-e...
      Semoga Joe Armstrong beristirahat dengan damai
    • Erlang telah menjalankan perusahaan telekomunikasi bernilai puluhan miliar dolar selama beberapa dekade, dan Elixir membuatnya lebih mudah dipelajari, sekaligus banyak menggantikan penyusunan cluster ala tambal-sulam di lingkungan skala besar
      Dengan satu codebase, deployment cepat ke berbagai platform bisa dilakukan, dan Phoenix Channels juga hemat biaya
      https://quasar.dev/introduction-to-quasar/
  • Saya juga berharap UI forum ikut diperbarui, dan semoga Elixir terus berkembang
    Ini bukan hanya bahasa yang hebat, tetapi juga sangat cocok untuk AI coding

    • Dalam perbandingan Tencent, Elixir menempati peringkat 1 keseluruhan, dan itu bisa dilihat di tabel 4, meski materinya sudah lebih dari setahun lalu
      https://arxiv.org/pdf/2508.09101
  • Meski menurut standar sekarang saya tidak memakai monitor besar, tetap disayangkan karena setengah layar situs kosong
    Saya tidak ingat tampilan situs lama, jadi tidak tahu apakah memang benar berubah

  • BEAM, runtime Elixir, sangat cocok untuk orkestrasi agent dan sistem multi-agent, dan saya merangkum hal terkait di sini
    https://josefrichter.design/blog/crowd

  • Salah satu penggunaan inti Elixir/Erlang tampaknya adalah fitur cluster terdistribusi, dan saya penasaran dengan contoh penggunaan nyatanya
    Saya banyak memakai Elixir di pekerjaan, tetapi rasanya saya melewatkan tujuan utamanya karena menggunakannya seperti ‘Rails yang lebih baik’, yakni sekadar men-scale horizontal aplikasi Phoenix yang berdiri sendiri di lingkungan Kubernetes tradisional

    • Dulu saya bekerja di WhatsApp dan aktif memakai fitur distribusi Erlang; setelah saya keluar, setahu saya ukuran clusternya menjadi jauh lebih besar
      Ini sangat nyaman, tetapi tidak ada batas keamanan antar-node, dan jika jaringannya tidak stabil maka bisa jadi merepotkan
      Dalam aplikasi chat, kami lebih dulu mengirim pesan ke layanan database presence untuk memeriksa apakah lawan bicara sedang online, lalu jika process ID dikembalikan, kami mengirim pesan ke proses tersebut dengan API yang sama tanpa peduli apakah ia ada di mesin yang sama atau berbeda
      Jarang ada lingkungan yang menerapkan pengiriman pesan arbitrer antar proses, thread, dan task secara alami ke seluruh sistem seperti ini; jika tidak ada process ID, maka pesan bisa dikirim ke database offline
    • Di Kubernetes, saya pernah sedikit mencoba Elixir terdistribusi dengan Horde.DynamicSupervisor, dan ada juga opsi lain seperti swarm serta DynamicSupervisor
      Akan menarik jika ada analisis yang jelas tentang keuntungan abstraksi seperti ini dibanding pendekatan non-BEAM
      https://www.youtube.com/watch?v=nZmDEUeHeVI
    • Baru-baru ini saya membuat control plane Kubernetes dengan Elixir dan terus menunggu momen untuk memakai fitur distribusinya, tetapi saat mengendalikan DaemonSet yang ditulis dalam Go, ternyata tidak terlalu diperlukan
      Namun strukturnya memang lebih tightly coupled daripada aplikasi yang berdiri sendiri, dan mengorkestrasi pekerjaan ala Lambda atau Fly.io di atas Firecracker
      https://jomcgi.dev/ember
    • Elixir/Erlang sangat cocok untuk lingkungan semi-embedded yang membutuhkan komponen command-and-control tingkat tinggi yang kokoh sambil tetap berjalan secara deterministik
      Dulu sekali saya pernah menerapkan Erlang pada perangkat ini; itu menyenangkan dan memberi banyak tantangan menarik bagi semua yang terlibat
      https://www.icare-world.com/us/product/icare-eidon/
  • Elixir adalah bahasa yang sangat elegan, jadi saya ingin segera menemukan alasan untuk memakainya

    • Saat membaca buku pemrograman Erlang karya Joe Armstrong, cara pandang saya terhadap functional programming dan abstraksi berubah, dan berkat itu saya menjadi developer Ruby yang lebih baik
      Saya pertama kali memilih Elixir ketika Ruby tidak mampu menangani banyak pesan WebSocket, dan Elixir sangat unggul terutama di lingkungan dengan konkurensi tinggi; saya juga suka Phoenix LiveView dan sedang menjalankan beberapa side project dengannya
    • Saya senang mengerjakan pembuatan asisten pribadi multi-agent; masih dalam pengembangan dan belum ada jaminan apa pun, tetapi saya sudah merilis engine yang benar-benar saya gunakan
      https://github.com/ityonemo/ce_ce
    • Jika ada program yang tidak perlu berjalan cepat, itu bisa menjadi alasan untuk memakai Elixir
    • Secara umum saya setuju bahwa Elixir memperbaiki Erlang, tetapi dari sudut pandang orang yang sudah lama memakai Ruby, rasanya tidak seanggun yang diharapkan
      Bahkan sintaks sederhana seperti defmodule Xyz do terasa canggung