Besut kode adalah kompetisi online pengembangan perangkat lunak bersumber terbuka untuk pelajar SMA berumur 13-17 tahun. Pelajar diminta untuk memecahkan soal yang diberikan, dan apabila dinyatakan berbakat oleh mentor akan mendapatkan sertifikat pengakuan dan diikut sertakan pada kompetisi bergengsi Google Summer of Code.
Saat mengikuti besut kode, peserta akan memiliki profil berisi karya online yang mumpuni. Setiap pengembang perangkat lunak terbuka yang handal, memiliki rekam jejak karya online, mengikuti Besut Kode adalah kesempatan untuk memiliki rekam jejak ini dalam profil Anda. Penting banget!
Anda akan diminta untuk menyiapkan dan menggunakan sistem kendali terdistribusi yang bisa disebarkan (distributed version control system) seperti git, dan menggunakan tempat penyimpanan terdistribusi (online repositories) daring seperti github.com.
Dengan mengikuti besut kode, Anda jadi punya pengalaman untuk menyelesaikan persoalan menggunakan algoritma rumit, sejak SMA! Biasa dengar lulus kuliah tidak punya pengalaman? Tidak harus tunggu hingga kuliah, peserta Besut Kode bisa punya pengalaman SEKARANG!
Pembuktian bahwa Anda jagoan!. Hari gini, ngga laki-laki, ngga perempuan, bisa jadi jagoan. Apabila Anda berhasil menyelesaikan fase I (Modul 1-5) sertifikat keberhasilan sebagai bukti Anda memiliki kemampuan menyelesaikan masalah sudah kami siapkan, dan sebuah video daring berdurasi 5 menit, bagaimana Anda, sebagai peserta memaparkan jalan penyelesaian masalah yang rumit. Bukti untuk semua orang - jempolan.
Dilatih oleh ahlinya bagaimana menjadi bagian pengembang perangkat lunak terbuka. Dalam pelatihan ini termasuk peninjauan sebuah kode dengan kualitas yang baik vs kode dengan kualitas yang buruk, test-test otomatis terintegrasi terus-menerus, bagaimana mempelajari berbagai bahasa pemrograman, dan melihat berbagai masalah yang beragam yang mungkin terjadi dalam perangkat lunak terbuka.
Melihat bagaimana sebuah kode ditinjau, apakah kode memiliki kualitas yang baik vs kode dengan kualitas yang buruk
Mempelajari bagaimana test-test otomatis terintegrasi terus-menerus dilakukan
Mempelajari berbagai bahasa pemrograman, dan melihat berbagai masalah yang beragam yang mungkin terjadi dalam perangkat lunak terbuka pada kehidupan sehari-hari.
Memiliki pengalaman langsung mengerjakan proyek perangkat lunak terbuka yang dapat dimasukkan pada riwayat pengalaman kerja peserta.
Mentor juga akan menyediakan petunjuk-petunjuk praktis yang memasangkan peserta dengan tipe pengembangan perangkat lunak yang cocok dengan kemampuan mereka menyelesaikan persoalan.
Mentor akan memberikan rekomendasi proyek perangkat lunak terbuka yang mana yang sebaiknya peserta memfokuskan diri sehingga peserta mendapatkan pengalaman optimal secara spesifik untuk keahliannya.
Peserta juga mendapatkan kesempatan untuk meraih berbagai hadiah mulai dari pulsa internet, telpon genggam, laptop dengan hadiah utama magang paruh waktu berbayar di Wikimedia Indonesia
Ngga percaya? Denger sendiri dari Tasya
Modul 2: Pembuatan dan penggunaan akun
Tugas anda:
Membuat akun di GitHub
Membuat akun di Project Euler
Membuat situs pribadi menggunakan GitHub lalu mencantumkan nama pengguna Project Euler
Simpan kontribusimu dalam basis data peserta di halaman GitHub milik Besut Kode, termasuk: nama pengguna Project Euler, nama pengguna GitHub, dan halaman situs GitHub pribadi Anda
Tugas 1: Membuat akun di GitHub
Jika Anda belum memiliki akun GitHub, Anda dapat membuatnya di sini
Jika Anda sudah memiliki akun GitHub, cantumkan akun Anda di formulir berikut ini
Anda bebas menggunakan nama akun apa saja pada akun GitHub Anda, namun apabila Anda tidak yakin dengan nama akun GitHub Anda, kami sarankan menggunakan format: besutkode_namadepan, contoh:
besutkode_riou
besutkode_siska
Tugas 2: Membuat Akun Project Euler
Project Euler adalah sebuah situs yang didedikasikan khusus sebagai tempat untuk menaruh masalah-masalah matematika yang digunakan dalam berbagai kompetisi.
Jika Anda belum memiliki akun di Project Euler, Anda dapat membuatnya di sini
Setelah akun selesai dibuat, ubah pengaturan Negara Anda menjadi Indonesia di sini
Hindari membuat nama akun dengan alias. Jika Anda telah membuat alias, harap beritahu tim Wikimedia nama akun dan alias Anda
Soal-soal pada Project Euler juga tersedia di bahasa Indonesia pada pranala berikut ini.
Tugas 3: Membuat halaman situs dengan GitHub
Proses pembuatan situs pribadi dengan GitHub bisa Anda pelajari di sini
Anda juga bisa membuatnya menggunakan “Automatic Page Generator”
Pelajari penggunaan Automatic Page Generator melalui pranala-pranala berikut:
Tidak masalah bagaimana Anda menyelesaikan soal tersebut atau berapa lama Anda menyelesaikannya, karena solusi untuk soal-soal ini sudah banyak tersedia di internet
Pada modul-modul selanjutnya, Anda akan diberikan lima menit untuk mempresentasikan pemecahan soal Project Euler yang Anda selesaikan, untuk membuktikan bahwa Anda sudah paham dalam memecahkan soal tersebut
Sunting berkas peserta.md, perbaharui baris Anda dengan keterangan bahwa Anda telah menyelesaikan Tugas 2
Submit Pull Request untuk menggabungkan hasil suntingan Anda dengan repository KMT
Staff Wikimedia Indonesia akan meninjau pull request dan memastikan bahwa nama pengguna Anda benar-benar muncul di Project Euler Indonesia
Staff Wikimedia Indonesia lalu akan mengundang peserta yang namanya muncul di Project Euler Indonesia kedalam repositori pribadi untuk melaksanakan modul 4.
Anda mungkin harus men-submit Pull Request ulang jika terjadi konflik dengan peserta lain dan halaman situs
Modul 4: Membagikan jawaban Project Euler Anda
Tugas 1: Bersiap untuk membagikan hasil kode
Sebelum membagikan kode Anda, pastikan kode tersebut mudah dimengerti, karena orang lain akan juga akan membaca kode Anda.
Berikut adalah beberapa tips:
Sisipkan komentar (comment ) dalam bahasa Indonesia pada kode Anda
Kelompokan kode Anda menjadi bagian kecil, agar solusinya lebih mudah dimengerti
Pelajari artikel tentang kerumitan di sini dan temukan perangkat yang dapat menilai kompleksitas kode Anda
Tugas 2: Bagikan kode Anda
Peserta yang sudah menyelesaikan tugas Project Euler dan mendapatkan akses ke repository pribadi Besut Kode kemudian bisa membagikan kode yang Anda tulis melalui repository pribadi miliki Besut Kode.
Semua perubahan pada repository ini akan tercatat, dan historinya tidak dapat ditulis ulang
Setelah Anda mengunggah solusi, lihatlah permasalahan yang telah dipecahkan oleh peserta lain, dan solusinya.
Sebagai sesama peserta Anda diharapkan untuk saling berkomunikasi agar dapat memperbaiki dan meningkatkan kemampuan. Baik menilai solusi peserta lain, dan solusi Anda. Komunikasi yang sehat adalah sebuah hal yang sangat penting dalam pengembangan perangkat lunak
Project Euler mengeluarkan soal baru setiap minggu. Soal baru tersebut biasanya lebih sulit dari soal-soal yang sebelumnya. Setelah Anda mampu memecahkan tugas-tugas yang mudah, dalam tugas ini, Anda diharuskan untuk membuat kelompok sebanyak tiga orang untuk memecahkan permasalahan yang sulit
Temukan permasalahan baru yang Anda anggap menarik, atau bergabung dengan diskusi yang sedang berjalan. Cobalah untuk membagi permasalahan menjadi bagian kecil agar banyak peserta dapat memecahkannya bersama-sama
Modul 5: Presentasikan jawaban Anda selama 5 menit
Anda dapat melihat contoh presentasi solusi Project Euler: