- 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
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
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
Mengingat pentingnya AWS, Amazon jelas juga menghadapi ancaman serupa
(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
Saat itulah saya memahami seperti apa struktur bisnis kontrak pemerintah, dan mengapa pekerjaan bisa molor bertahun-tahun lebih lama daripada yang diperlukan
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...
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
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
Ghidra adalah contoh bagus, dan dijadikannya perangkat lunak ini gratis menjadi manfaat besar bagi komunitas keamanan
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
Saya bekerja di pemerintahan dan mengalaminya langsung. Budayanya sangat toksik dan rusak. Saya menantikan perubahan seperti apa yang akan diusulkan tim Elon dan Trump
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 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
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
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
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
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
Misalnya, bayangkan apa yang bisa dilihat dari rumus Excel