1 poin oleh GN⁺ 2024-12-27 | 1 komentar | Bagikan ke WhatsApp
  • Presiden Joe Biden menandatangani SHARE IT Act pada 23 Desember, sehingga lembaga federal AS wajib saling berbagi kode sumber kustom untuk mengurangi kontrak pengembangan yang duplikatif
  • Untuk menekan sekitar US$12 miliar yang diperkirakan dibelanjakan pemerintah federal setiap tahun untuk pembelian perangkat lunak, inti kebijakan ini adalah membuat kode kustom tiap lembaga terdaftar secara publik dan dapat digunakan kembali
  • Dari cakupan undang-undang ini, kode rahasia, sistem keamanan nasional, dan kode yang dapat menimbulkan risiko privasi jika dibagikan dikecualikan
  • CIO lembaga harus menyiapkan kebijakan implementasi dalam 180 hari setelah pemberlakuan, termasuk kepatuhan pada praktik terbaik, publikasi metadata, dan prosedur pelaporan yang distandardisasi
  • Atlassian dan GitLab Inc. mendukung RUU ini, dan RUU tersebut lolos di DPR dan Senat pada Desember tanpa pemungutan suara tercatat

Kewajiban berbagi kode dalam SHARE IT Act

  • Source Code Harmonization And Reuse in Information Technology Act atau SHARE IT Act mewajibkan lembaga federal untuk membagikan kode sumber yang mereka kembangkan secara kustom kepada lembaga lain
  • Fokusnya adalah mengurangi pengembangan duplikatif, yakni ketika kode yang sebenarnya sudah pernah dikembangkan untuk lembaga lain dibuat ulang lewat kontrak baru karena ketidaktahuan
  • Lembaga harus membuat daftar publik atas kode kustom dan memungkinkan lembaga lain memanfaatkannya

Target penghematan anggaran dan pengecualian penerapan

  • Para sponsor RUU memperkirakan pemerintah federal menghabiskan sekitar US$12 miliar setiap tahun untuk pembelian perangkat lunak
  • SHARE IT Act adalah undang-undang yang bertujuan menekan biaya tersebut melalui penggunaan ulang kode kustom
  • Kode berikut dikecualikan dari cakupan undang-undang
    • kode rahasia
    • sistem keamanan nasional
    • kode yang dapat menimbulkan risiko privasi jika dibagikan

Kewajiban CIO lembaga menyusun kebijakan dalam 180 hari

  • Chief Information Officer (CIO) lembaga wajib membuat kebijakan implementasi SHARE IT Act dalam 180 hari setelah undang-undang berlaku
  • Kebijakan tersebut harus mencakup prosedur berikut
    • prosedur untuk memastikan kode yang dikembangkan secara kustom sesuai dengan praktik terbaik
    • prosedur untuk menyediakan metadata kode kustom secara publik
    • prosedur pelaporan yang distandardisasi

Metadata yang harus dipublikasikan

  • Metadata yang dimaksud dalam undang-undang mencakup informasi untuk memeriksa status pengembangan dan pembagian kode kustom
  • Item yang termasuk adalah sebagai berikut
    • apakah kode kustom dikembangkan berdasarkan kontrak
    • apakah kode telah dibagikan di repositori
    • nomor kontrak
    • hyperlink ke repositori tempat kode dibagikan

Proses legislasi dan dukungan industri

  • RUU ini disponsori oleh Ted Cruz dan Gary Peters di Senat, serta Nicholas Langworthy dan William Timmons di DPR
  • DPR dan Senat meloloskan RUU ini pada Desember tanpa pemungutan suara ya-tidak yang tercatat
  • Menurut pengumuman pengajuan RUU di DPR oleh Langworthy pada September, Atlassian dan GitLab Inc. mendukung RUU ini
  • Stan Shepard, Chief Legal Officer Atlassian, menilai bahwa perluasan kolaborasi dan berbagi kode kustom akan mendorong keterbukaan, efisiensi, dan inovasi di seluruh organisasi federal

1 komentar

 
GN⁺ 2024-12-27
Opini Hacker News
  • Jika tidak punya pengalaman di pemerintahan, Anda mungkin tidak punya gambaran kenapa ini begitu sulit. Militer alergi terhadap perangkat lunak internal, dan TI militer adalah dunia yang sama sekali berbeda, yang setiap hari diserang oleh penyusup yang didukung negara dengan kemampuan kelas dunia
    Startup tidak mengalami hal seperti ini, dan bahkan perusahaan besar seperti Facebook pun hanya nyaris mengalami tingkat yang serupa dari sisi tingkat kepentingannya; di sektor swasta, yang paling mendekati mungkin lembaga keuangan besar. Militer AS juga merupakan pemberi kerja tunggal terbesar di planet ini, kira-kira setara 4,5 kali Walmart
    Karena itu, militer memantau semuanya di berbagai lapisan dan menguncinya ketat dengan daftar perangkat lunak yang disetujui per lapisan. Orang-orang yang menulis atau memantau kebijakan keamanan kemungkinan besar bukan direktur perangkat lunak yang berpengalaman, dan ketika melihat NPM atau Maven, mereka menganggapnya sebagai vektor serangan tak terbatas yang dibuat oleh orang-orang yang tidak paham keamanan—dan itu tidak sepenuhnya salah
    Di ranah sipil dan kontraktor, kepemilikan kode juga rumit. Jika dibuat dengan uang pemerintah, semestinya itu milik pemerintah, tetapi kontraktor menganggapnya harus dibawa sebagai aset mereka sendiri yang terpisah dari pemerintah agar bisa menagih lagi. Jika subkontraktor tidak selaras dengan target finansial kontraktor utama, ini jadi lebih rumit. Secara pribadi, saya pikir semuanya cukup diserahkan ke pemerintah, tetapi aneh melihat orang-orang membangun berlapis-lapis penghalang. Infrastruktur di pihak pemerintah punya tingkat sertifikasi keamanan yang jauh lebih tinggi, sehingga umumnya justru lebih sedikit batasannya

    • Menggambarkan TI militer seolah-olah hampir tak tertembus mengabaikan kenyataan bahwa infrastruktur usang dan kebijakan yang lamban sangat menurunkan efisiensi
      Sebagian area militer AS mungkin memang menghadapi ancaman dan kecanggihan keamanan seperti yang dijelaskan, tetapi secara keseluruhan ada banyak sistem legacy yang sulit mengintegrasikan solusi modern atau praktik terbaik. Sistem, alur kerja, dan birokrasi yang usang seperti ini lebih mudah melahirkan inefisiensi dan kerentanan daripada keamanan yang unggul
      Alasan kita tidak mendengar cerita militer AS dibobol bukan karena itu tidak terjadi, melainkan karena jika terjadi, hal itu diklasifikasikan sebagai rahasia. Menghindari aib publik adalah kegunaan nomor satu dari klasifikasi rahasia, sehingga muncul keyakinan bahwa mereka kompeten. Kalau saya, kapan pun saya akan menempatkan keamanan Facebook di atas militer AS, dan menurut saya selisihnya tidak kecil. Facebook juga merupakan pemroses pembayaran
    • Sulit bagi saya untuk setuju dengan pernyataan bahwa “perusahaan besar seperti Facebook hanya mengalami hal yang nyaris serupa karena tidak begitu penting.” Saat bekerja di Microsoft dan berbicara dengan tim keamanan, kesan saya adalah MSFT terus-menerus mendapat serangan tingkat negara, termasuk upaya menempatkan aset pemerintah sebagai karyawan di Microsoft untuk mencuri informasi rahasia
      Mengingat pentingnya AWS, Amazon jelas juga menghadapi ancaman serupa
    • Menurut saya RUU ini hampir tidak ada hubungannya dengan militer. Dalam teks RUU sebenarnya disebutkan bahwa kode sumber rahasia atau kode sumber untuk sistem keamanan nasional tidak termasuk dalam cakupannya
      (A) Ketentuan umum—Undang-undang ini tidak berlaku untuk kode sumber rahasia atau kode sumber yang dikembangkan terutama untuk digunakan dalam sistem keamanan nasional sebagaimana didefinisikan dalam 40 U.S.C. 11103
      (B) Keamanan nasional—Pengecualian dari persyaratan pasal 3 berlaku untuk kode sumber rahasia atau kode sumber berikut: (i) kode yang dikembangkan terutama untuk digunakan dalam sistem keamanan nasional, atau (ii) kode yang dikembangkan oleh lembaga anggota komunitas intelijen, atau bagian darinya, sebagaimana didefinisikan dalam pasal 3(4) Undang-Undang Keamanan Nasional 1947
    • Selama setahun saya berbicara dengan tim keamanan departemen saya, orang-orang di sekitar departemen pelanggan, jaringan kontraktor lokal, dan beberapa vendor. Lalu saya berhenti bekerja di kontrak ketika melihat pelanggan pemerintah menatap kosong saat diberi tahu bahwa matra militer lain sudah menyelesaikan hal yang persis sama dengan proyek saya beberapa tahun sebelumnya dan “bukankah Anda bisa bicara dengan mereka?”
      Saat itulah saya memahami seperti apa struktur bisnis kontrak pemerintah, dan mengapa pekerjaan bisa molor bertahun-tahun lebih lama daripada yang diperlukan
    • Saya sepakat dengan gagasan “serahkan saja semuanya ke pemerintah.” Saya pernah bekerja di kontraktor yang pelanggannya memiliki semua hasil kerja, dan selalu terasa aneh melihat rekan-rekan yang bekerja di kontraktor yang tidak seperti itu
      Ini uang yang dibayar dari pajak kita, jadi saya jadi bertanya: kenapa kita mendukung skema yang mengambil uang dari kantong semua orang untuk membuat beberapa petinggi perusahaan dan tenaga penjual menjadi sangat kaya?
      Jika posisinya adalah “kami tidak akan memberikan semuanya kepada pemerintah,” menurut saya cara yang masuk akal adalah memberi pemerintah hak untuk menggunakan hasil kerja sesuai keinginannya, tetapi tetap membolehkan komponen nonrahasia dan turunannya dijual secara bebas ke sektor swasta
  • Undang-undang tersebut mewajibkan CIO tiap lembaga membuat kebijakan dalam 180 hari setelah berlaku, dan kebijakan itu harus memastikan kode yang dikembangkan secara khusus sesuai dengan praktik terbaik, serta menetapkan prosedur untuk memublikasikan metadata kode kustom dan prosedur pelaporan standar
    Dalam undang-undang baru ini, metadata mencakup apakah kode kustom dikembangkan melalui kontrak, apakah dibagikan ke repositori, nomor kontrak, dan tautan repositori tempat kode tersebut dibagikan
    Sayangnya, tampaknya undang-undang ini bukan mewajibkan lembaga menjadikan kode sebagai open source publik, melainkan hanya mewajibkan berbagi antar-lembaga. Yang harus dibagikan secara publik hanyalah “metadata”. Teks lengkap RUU ada di https://www.congress.gov/bill/118th-congress/house-bill/9566...

    • Ini langkah awal yang baik. Tahap berikutnya sepertinya berbagi dengan pemerintah negara bagian, pemerintah daerah, dan universitas. Berbagi secara publik akan mendistribusikan banyak tanggung jawab TI yang saat ini tidak ada
    • Dari judul yang dipasang saja, sejauh itu tampaknya sudah cukup jelas
    • Begitu kata “praktik terbaik” muncul, saya langsung curiga. Karena kemungkinan besar itu akan makin mendorong cargo cult birokratis
    • Sebagian besar kontrak DOE, yaitu kontrak pemerintah dengan universitas atau konsorsium yang mengoperasikan laboratorium, biasanya berisi hal seperti “kode sumber ini boleh tetap tertutup atau dirilis sebagai open source kecuali dapat dibuktikan memiliki nilai pasar atau nilai SBIR. Namun GPL tidak boleh”
      Ada pengecualian, tetapi ada juga logika bahwa kontraktor lain harus tetap memiliki kemampuan untuk memodifikasi kode sumber dan sama-sama tidak merilisnya. Saya menduga ini mungkin karena bidang pertahanan
      Standarnya tinggi jika ingin mempertahankannya tertutup demi uang, tetapi selalu mungkin untuk tetap menutupnya karena alasan lain apa pun. DOE Code adalah program untuk melacak perangkat lunak open source dan biasanya dikelola melalui organisasi GitHub. OSTI adalah departemen yang melacak semua kekayaan intelektual dan riset
    • Beberapa seperti ZFSOnLinux sudah dibagikan secara publik. Repositorinya kini menjadi repositori OpenZFS dan telah membuat hidup banyak orang lebih baik. Hidup saya juga jadi lebih mudah
      Model pengembangan open source juga menguntungkan LLNL, dan mereka mendapatkan codebase yang jauh lebih baik dibanding jika mengembangkannya sendiri
      Ada juga yang sudah dipublikasikan seperti NASA IKOS: https://github.com/NASA-SW-VnV/ikos
      Proyek ini mendapat jauh lebih sedikit perhatian dari pihak ketiga daripada yang seharusnya. Jika bisa berkembang menjadi static analyzer yang sound, serbaguna, dan menangani multithreading, itu akan membantu meningkatkan banyak proyek lain
  • Saya pernah mencoba mendorong model open source penuh dengan gagasan bahwa “kalau dananya dari anggaran publik, publik harus bisa melihat hasil dari uang itu”: https://web.archive.org/web/20200920095030/http://oss4gov.or...
    Saya berpandangan bahwa default untuk perangkat lunak pemerintah harus open source kecuali ada pengecualian dengan persetujuan setingkat menteri. Namun saat itu saya masih muda dan naif

    • Saya tidak melihat itu sebagai hal yang begitu kontroversial. Pemerintah Inggris juga memandangnya serupa: https://www.gov.uk/service-manual/technology/making-source-c...
    • Saya bekerja bertahun-tahun di kontraktor militer, dan banyak orang percaya bahwa jika pembayar pajak yang membiayainya dan perangkat lunaknya tidak rahasia, maka itu harus open source
      Ghidra adalah contoh bagus, dan dijadikannya perangkat lunak ini gratis menjadi manfaat besar bagi komunitas keamanan
    • FSFE juga berbagi pemikiran yang sama di seberang Atlantik: https://publiccode.eu/en/
    • Itu bukan naif, melainkan mendahului zaman. Kemajuan adalah kerja keras dan sebuah maraton
  • Kami membuat perangkat lunak open source dan mencoba agar lembaga pemerintah mengadopsi atau menggunakannya, tetapi tingkat alergi terhadap open source yang ditunjukkan lembaga-lembaga ini mengejutkan
    Ada yang lebih memilih membuat sendiri dengan cara legacy seperti unggahan CSV atau parser rusak daripada memakai kode orang lain, sekaligus menciptakan bug dan cacat yang bisa diprediksi
    Saat menanggapi RFP pun, pihak open source mendapat peninjauan lebih ketat dibanding sistem tertutup. Jika terbuka, Anda harus membuktikan bahwa itu baik; kalau tertutup, vendor bisa berkata “ya, ini sempurna” dan lembaga bisa menerimanya begitu saja. Rasanya lembaga dan pegawainya tidak ingin memikul tanggung jawab apa pun. Meski begitu, saya belum pernah melihat orang kehilangan pekerjaan pemerintah karena inkompetensi

    • Secara garis besar ini adalah proteksionisme pekerjaan, dan di tingkat individu, strukturnya mendorong seseorang menjadi subject matter expert yang memanfaatkan codebase sendiri untuk promosi. Biasanya lembaga-lembaga tidak melihat satu sama lain sebagai bekerja dalam tim yang sama. Mereka bisa sangat kompetitif saat melobi Kongres untuk mendapatkan sumber daya bagi lembaganya sendiri
      Saya bekerja di pemerintahan dan mengalaminya langsung. Budayanya sangat toksik dan rusak. Saya menantikan perubahan seperti apa yang akan diusulkan tim Elon dan Trump
    • Dalam open source, tidak ada orang yang bisa dimintai pertanggungjawaban. Kalau perangkat lunak tertutup, ada pihak yang bisa ditunjuk sebagai kambing hitam ketika sesuatu berjalan salah
  • Departemen Pertahanan AS memiliki FAQ perangkat lunak open source: http://dodcio.defense.gov/OpenSourceSoftwareFAQ.aspx dan https://github.com/risacher/DoD-OSS-FAQ
    Versi ini dipublikasikan di GitHub sebagai eksperimen alat kolaborasi untuk partisipasi publik dalam dokumen kebijakan pemerintah, dan disebutkan bahwa personel militer maupun sipil, kontraktor, serta warga sipil dapat mengajukan usulan perubahan atau penambahan melalui pull request
    Video 2010: https://www.youtube.com/watch?v=WWt0YiXcEkE
    Dan Risacher dari kantor DoD CIO dan pakar keamanan open source David A. Wheeler menjelaskan sejarah dan dampak memo DoD terbaru yang memperjelas posisi bahwa Departemen Pertahanan memandang open source sebagai bentuk perangkat lunak komersial yang layak digunakan
    Materi 2024: https://openssf.org/press-release/2024/10/29/openssf-expands...
    OpenSSF dari Linux Foundation mengatakan mereka mengakui kebutuhan akan pelatihan keamanan, dan menurut David A. Wheeler, direktur keamanan rantai pasok open source di OpenSSF, sejak kursus dimulai lebih dari 25.000 orang telah mendaftar ke materi pelatihan ini

  • Niatnya baik, tetapi dalam praktiknya sepertinya tidak akan banyak terjadi selain calon pesaing kontraktor 1 mengejar ketertinggalan atau menyerang berdasarkan kualitas kode kontrak yang ada. Membaca kode lebih sulit daripada menulis kode

    • Jika calon pesaing mengejar ketertinggalan, dari sudut pandang pemerintah itu berarti persaingan meningkat dan biaya turun
      Jika mereka menyerang berdasarkan kualitas kode kontrak yang ada, itu adalah code review, dan bagaimanapun akan mengarah pada peningkatan kualitas kode. Saya tidak melihat apa masalahnya di sini
  • Ini hal yang keren. Saya ingat pernah kesulitan karena tidak bisa membaca kode bahkan di dalam organisasi yang sama. Perubahan seperti ini sepertinya akan memudahkan pekerjaan orang-orang yang membangun model mental top-down

  • Secara umum, semua yang dibayar dengan uang pembayar pajak harus dibuka untuk publik. Public Monies Public Goods seharusnya menjadi prinsip dasar yang mutlak

    • Aturan seperti itu sebenarnya sudah ada, tetapi hanya DoD yang menanggapinya dengan serius. Contohnya BRL-CAD dan FalconView
      Meski begitu, itu tidak mencegah kontraktor yang tidak bermoral memasang hak cipta pada kode dan memungut biaya lisensi. Sebagian besar kode DoE seperti itu, dengan pengecualian seperti NWCHEM. Saya selalu penasaran mengapa hal ini tidak berujung gugatan, mungkin karena tidak ada yang terlalu peduli
    • Menarik bahwa beberapa pemerintah daerah memasang hak cipta pada hukum mereka sendiri agar pemerintah daerah lain tidak bisa menyalinnya tanpa membayar
      Di satu sisi, bisa dimengerti juga jika mereka melihat daerah lain menumpang gratis pada sistem peraturan daerah yang dibiayai pembayar pajak setempat. Apalagi jika hukum itu terutama berlaku untuk pemerintah daerah setempat. Di sisi lain, terasa aneh bahwa hukum dibatasi oleh hak cipta
    • Saya tidak setuju. Karena Tiongkok. Pemerintah AS harus menjaga kodenya tetap tertutup, termasuk kode sampah dari kontraktor yang luar biasa mahal dan buruk
    • Untuk perangkat lunak, saya tidak setuju
    • Apakah maksudnya semuanya harus dibuka, mulai dari materi rahasia sampai memo kantor dan catatan personalia? Itu tidak akan terjadi
      Saat Anda menyuruh seseorang mengerjakan sesuatu di rumah, Anda juga perlu memikirkan apa persisnya yang Anda miliki selain hasil akhir
  • Arah yang sangat bagus. Saat bekerja dengan tim pemerintah, saya pernah melihat pendekatan seperti ini disajikan sebagai praktik yang dianjurkan: https://www.forgov.qld.gov.au/information-and-communication-...
    Namun dalam banyak kasus, agar rekomendasi itu benar-benar diikuti, masih diperlukan langkah untuk menjadikannya persyaratan dalam hukum. Terutama di layanan publik, karena cukup umum ada orang yang belum pernah berpartisipasi dalam komunitas open source
    Seperti yang ditekankan orang lain, anggaran publik harus menghasilkan manfaat publik, dan open source adalah cara yang baik untuk memperbesar manfaat itu

  • Ada kalimat: “Undang-undang baru ini tidak berlaku untuk kode rahasia, sistem keamanan nasional, atau kode yang jika dibagikan akan menimbulkan risiko privasi”
    Kode macam apa yang jika dibagikan bisa menimbulkan risiko privasi? Kedengarannya seperti kode dan data tercampur cukup parah

    • Tidak ada risiko nyata, tetapi ini memberi alasan yang bagus untuk tidak membukanya. Perusahaan dan lembaga pemerintah pernah menolak permintaan keterbukaan informasi atas dokumen teknis dengan alasan perlindungan privasi. Misalnya dengan mengatakan “ini berlaku untuk sistem yang memproses informasi pribadi”, atau “mengetahui cara kerja internal sistem akan meningkatkan kemungkinan sistem dibobol”
      Para kontraktor pemerintah dengan senang hati mengakui secara tersirat bahwa kode mereka buruk dan umumnya bergantung pada security through obscurity. Komisi informasi pun beberapa kali memihak mereka
    • Kode yang cukup dikustomisasi akan memiliki fungsi yang mengungkap banyak informasi tentang pekerjaan yang menjadi targetnya
      Misalnya, bayangkan apa yang bisa dilihat dari rumus Excel
    • Tidak ada perbedaan di antara keduanya