GITHUB COPILOT : Your AI pair programmer

GITHUB COPILOT : Your AI pair programmer

Pertengahan tahun 2021 Github mengguncang para programmer dengan teknologinya yaitu Github Copilot. CEO GitHub Nat Friedman, Copilot bekerja dengan serangkaian bahasa serta kerangka kerja yang luas semacam Python, Ruby, TypeScript, JavaScript, serta Golang. Tetapi itu tidak terbatas pada bahasa-bahasa ini. Perihal ini dirancang buat menguasai orang lain pula.

         Github Copilot seperti autocomplete pada saat melakukan coding. Yang kalian butuhkan hanyalah mengetikkan persyaratan yang ada di Editor dan Github Copilot akan menyarankan atau sugesti sintaks selanjutnya. Bagaimana keren kan ?

Apa itu Github Copilot ?

         Copilot adalah alat pemrograman AI yang dirilis dan dikembangkan oleh Github yang bertujuan untuk membantu programmer untuk menulis kode lebih cepat secara otomatis.

Github Copilot ini didasari oleh Codex, sistem AI yang diciptakan oleh OpenAI dan dilatih pada source code yang terdapat pada github itu sendiri.

Seperti apa cara kerjanya Github Copilot ?

         Visual Studio Code saat ini menyediakan Github Copilot sebagai Ekstensi dalam tahap beta. Kalian bisa menggunakannya pada sistem kalian yang sudah terinstall VSCode.

                                                   Sumber : https://copilot.github.com/

          Dalam catatannya, Codex telah mengumpulkan dataset training sejak Mei 2020 dari 54 juta repository source code yang du up ke Github, dengan kapasitas 179GB file bahasa pemrograman Python unik berukuran kurang dari 1 Mega Byte.

Kriteria yang disaring oleh Codex seperti berikut :

  1. Kode tersebut setidaknya bisa auto-generated(otomatis)
  2. Mempunyai panjang baris kurang lebih nilainya 100 keatas
  3. Maksimum panjang baris kurang lebih nilainya lebih dari 1000
  4. Memiliki persentase kecil karakter alfanumerik

       Setelah Codex melakukan penyaringan, dataset yang akan digunakan oleh Codex sebesar 159 GB untuk mengembangkan Github Copilot. Dari sini Github Copilot dapat melihat pola atau alur yang kalian tulis pada saat menulis program. Si Copilot ini akan memahami apa yang sedang kalian tulis dan menyarankan solusi pada penulisan kode selanjutnya.

       Saya melihat dan mengamati artikel https://medium.com/@cecepbudiman/ tentang Github Copilot disini saya kecewa, pada prosesnya Github Copilot selalu menulis kode yang salah seperti ada beberapa library yang nyangkut juga didalam suggestions padahal saya tidak menggunakan library tersebut (karena memang masih tahap pengembangan). Namun kemampuan memberikan saran kode otomatis itu saya rasa sudah bagus dan pasti kedepannya akan menjadi tools yang sempurna.

Fitur-fitur Github Copilot

       1. Convert comments to code

           Copilot bisa memahami comment serta Function name. Tulis comment yang menjelaskan logic atau alur dan Copilot akan mengatur codenya.

       2. Test without the toil

           Test yang dimaksud adalah Impor unit test package pada fitur ini biarkan Github menyarankan test yang sesuai dengan kode kalian.

      3. Autofill for repetitive code

          Copilot membantu autofill (tertulis langsung) untuk kode perulangan. Kalian hanya menulis contoh kode awalan setelah itu si Github Copilot akan meneruskan secara otomatis.

      4. Show alternatives

          Setiap programmer pasti menggunakan metode yang berbeda-beda dalam mengimplementasikan kodenya. Disini Copilot bisa melakukan penyesuaian kode yang kalian implementasikan(kode yang disarankan oleh copilot) atau kalian bisa mengubahnya sesuai keperluan kalian.

Copilot akankah menggantikan Programmer ?

          Dibalik sangat banyaknya manfaat dari Github Copilot ini, ternyata banyak pula orang yang mengkhawatirkan dengan adanya tools ini peran programmer menjadi sangat kecil. Dan banyak rumor dan berita yang beredar “Apakah Github Copilot akan menggantikan programmer di masa kedepan ?”

          Tidak bisa saya pastikan, tetapi dari pihak Github sendiri menyatakan bahwa Copilot diharapkan dapat berperan dan berguna sebagai assistant programming untuk membantu programmer menjadi lebih produktif dan memangkas waktu agar lebih fokus pada pekerjaan.

Berita Rekomendasi

API : Pentingnya Pengujian dan Jenis-Jenisnya

12/11/2024

API : Pentingnya Pengujian dan Jenis-Jenisnya

Dalam dunia perangkat lunak, Application Programming Interface (API) menjadi bagian penting yang menghubungkan dua komponen perangkat lunak untuk saling berkomunikasi. Mari kita bayangkan API sebagai seorang pelayan handal di sebuah…

Lihat
Optimalkan Ketersediaan Aplikasi LoadBalancer

25/09/2024

Optimalkan Ketersediaan Aplikasi LoadBalancer

High Availability (HA) adalah kunci untuk menjaga aplikasi dan database tetap tersedia saat terjadi kegagalan sistem atau lonjakan beban. Untuk itu, penggunaan Load Balancer (LB) sangat penting dalam arsitektur HA…

Lihat
Secure SDLC: Kunci Keamanan untuk Perusahaan IT

12/11/2024

Secure SDLC: Kunci Keamanan untuk Perusahaan IT

Sebagai perusahaan teknologi informasi, keamanan adalah prioritas utama. Aplikasi dan sistem yang Anda kembangkan tidak hanya harus berfungsi dengan baik, tetapi juga harus aman dari berbagai ancaman siber. Salah satu…

Lihat