Banyak orang yang ingin belajar programing kebingungan mengenai apa saja yang harus ia pelajari. Bahkan sebagiannya merasa ciut setelah ia harus berhadapan dengan segudang kluster tutorial yang menyeramkan yang mungkin sebenarnya tidak ia butuhkan.

Oh dear, perlu diketahui jika seluruh ilmu lahir karena adanya sebab. Misalnya bagi desainer, mengapa ada ilmu Photoshop? Karena tentu saja ada software yang bernama demikian. Jika tidak ada orang yang menciptakan software Adobe Photoshop, tidak akan ada ilmu Photoshop.

Mengapa ilmu programing lahir? Karena ternyata manusia paham bahwa elektronik dapat diatur menjadi yang kita inginkan.

Jadi sebenarnya jika kita kebingungan belajar programing, kemungkinan kita masih belum paham apa yang kita inginkan dari programing itu sendiri.

Bahkan seluruh bahasa pemrograman modern yang tersedia seperti C#, Java, Javascript, PHP, hingga Python, semua berasal dari muara yang sama, yaitu bahasa C, yang mata airnya adalah berasal dari bahasa Assembly.

Lalu apa yang dimaksud dengan konsep dan bukan teori di sini?

Saya berlangganan Medium, disubsidi oleh rekan kerja saya. Begitu banyak tulisan-tulisan dari para developer mengenai tips dan teori yang berasal dari pengalaman mereka atau bahkan mereka anjurkan.

Namun semakin ke sini beberapa artikel di Medium semakin membuat saya tidak nyaman.

Mengapa? Karena beberapa artikel terlihat gontok-gontokan satu sama lain.

Beberapa judul seperti, “Alasan Kalian Harus Meninggalkan C#” di sebuah artikel dan dalam saat yang sama artikel lain muncul dengan judul, “8 Fitur Baru yang Membuat C# Menjadi Bahasa Yang Wajib Dipelajari.”

Sebenarnya itu sah-sah saja, tidak masalah. Hanya saja, beberapa penulis sepertinya terlalu prematur untuk menulis artikel seperti itu.

Jadi penulis seolah-olah mengunjungi toko bahasa program, mencicipi masing-masing bahasa program dan ia langsung mengambil keputusan singkat mana yang ‘lezat’ dan yang ‘tidak’.

Padahal bisa jadi, bahasa pemrograman yang ia katakan kurang lezat bisa jadi menjadi begitu efektif dalam menjalankan modul atau fungsi tertentu.

Programing lebih mudah didahului dengan konsep.

Banyak sekali rekan programer saya yang kerepotan hanya karena mereka terlalu mengikuti tren dan rekomendasi programing. Padahal mereka tidak tahu siapa yang memberi rekomendasi tersebut.

Misalnya, saya pernah diburu untuk menggunakan library A karena katanya lebih begini dan lebih begitu oleh programer lain. Saya tidak tertarik.

Pada akhirnya dapat ditebak, programer tersebut kerepotan saat ia harus migrasi versi besar-besaran dengan basis kode utama aplikasinya yang sangat berantakan.

Dear, that’s NOT how you program.

Seorang programer handal paham kapan harus menggunakan framework/library dan kapan mereka dapat menulisnya sendiri.

Programerlah yang seharusnya menjadi pemilik aplikasi yang ia buat sendiri, bukan frameworknya.

Perlu diketahui, teori muncul karena adanya konsep.

Misalnya, mengapa teori iterasi (looping) muncul? Karena ada variabel array yang harus dicek satu per satu. Dan array tercipta karena jika kita mengetik variabel satu per satu tanpa menggunakan array, maka itu akan sangat tidak efisien, boros memori, dan tentu saja sangat melelahkan.

Jadi saat berbicara teori, jawabannya seharusnya bukan rekomendasi untuk menggunakan sebuah fitur, metode, atau addon (plugin/framework/library). Kita bicara konsepnya.

Untuk para programer pemula, sebaiknya tidak perlu terburu-buru agar dapat menguasai satu bahasa program karena masing-masing bahasa program memiliki behavior/kelakuan yang berbeda-beda.

Lagipula, jika hanya mastering satu bahasa pemrograman saja, akan menjadi melelahkan jika suatu saat harus berhadapan dengan bahasa pemrograman lain yang behaviornya berbeda.

Sedangkan jika dengan mempelajari konsepnya, seseorang akan langsung dapat memahami karakter bahasa pemrograman, apa pun bahasanya. Bahkan bukan hanya satu aspek, melainkan menyeluruh.

Intinya, dengan memahami konsep programing dan mencoba untuk mengerti bagaimana behavior atau kelakuan sebuah bahasa pemrograman, seorang programer dapat dengan mudahnya untuk akrab dengan bahasa tersebut.

Misalnya, saya tahu jika Javascript adalah seluruhnya Object. Atau Python yang bergantung dengan indentasi spasi, atau framework Flutter yang mengandalkan Widgets untuk me-render UInya.

Memang mempelajari itu tidak sebentar, namun jika kita sudah mengetahui asal mula tercipta suatu teori, maka kita akan sangat berbahagia karena kita tahu konsep tersebut tidak akan berubah saat kita implementasi di seluruh cabang ilmu.

Misalnya, saya tidak pernah galau menentukan apakah akan menggunakan sintaks foreach, maps, atau hanya for untuk menginterasi/looping sebuah array karena saya sudah memahami apa maksud dan tujuan saya mengiterasi array tersebut. Untuk diganti nilainya kah? Untuk disalin kah?

Saya kasih bocoran, bahasa pemrograman memiliki konsep yang mudah karena sebagian besar yang kita lakukan hanya ‘memerintah’. Yang sulit adalah bagaimana caranya menyusun perintah agar si mesin tidak kebingungan.

Perihal menyusun perintah inilah yang kemudian dinamakan algoritma.

Jangan khawatir, jika kalian sistematis dan peka, menyusun sebuah algoritma benar-benar semudah membalikkan telapak tangan. Namun nyatanya, banyak perintah yang kadang manusianya itu sendiri tidak mengerti, apalagi mesin?

Suka
Komentar
pos ke FB
pos ke X
🤗 Selesai! 🤗

  • Sebelumnya
    Apakah Esensi Programming Kini Memudar?

    Berikutnya
    Programer Bukanlah Coder (Tukang Ngoding)


  • 0 Jejak Manis yang Ditinggalkan

    Minta Komentarnya Dong...

    Silakan tulis komentar kalian di sini, yang ada bintangnya wajib diisi ya...
    Dan jangan khawatir, email kalian tetap dirahasiakan. 😉

    Kembali
    Ke Atas

    Terima kasih telah membaca artikel Anandastoon!

    Apakah artikelnya mudah dimengerti?

    Mohon berikan bintang:

    Judul Rate

    Desk Rate

    Terima kasih telah membaca artikel Anandastoon!

    Dan terima kasih juga sudah berkontribusi menilai kemudahan bacaan Anandastoon!

    Ada saran lainnya untuk Anandastoon? Atau ingin request artikel juga boleh.

    Selamat datang di Polling Anandastoon.

    Kalian dapat iseng memberi polling seperti di Twitter, Facebook, atau Story Instagram. Pollingnya disediakan oleh Anandastoon.

    Kalian juga dapat melihat dan menikmati hasil polling-polling yang lain. 😊


    Memuat Galeri Poll...

    Sebentar ya, Anandastoon muat seluruh galeri pollnya dulu.
    Pastikan internetmu tetap terhubung. 😉

    Asik poll ditemukan!

    Silakan klik salah satu poll yang kamu suka untuk mulai polling!

    Galeri poll akan terus Anandastoon tambahkan secara berkala. 😉

    Judul Poll Galeri

    Memuat poll...

    Sebentar ya, Anandastoon memuat poll yang kamu pilih.
    Pastikan internetmu tetap terhubung. 😉

    Masih memuat ~

    Sebelum memulai poll,

    Anandastoon ingin memastikan bahwa kamu bukan robot.
    Mohon agar menjawab pertanyaan keamanan berikut dengan sepenuh hati.
    Poll yang 'janggal' berpotensi dihapus oleh Anandastoon.
    Sebab poll yang kamu isi mungkin akan bermanfaat bagi banyak orang. 🤗

    Apakah nama hari sebelum hari Kamis?

    Mohon jawab pertanyaan keamanan ini. Jika jawaban benar, kamu langsung menuju pollnya.

    Senin
    Rabu
    Jumat
    Sabtu

    Atau, sedang tidak ingin mengisi poll?

     

    Wah, poll telah selesai. 🤗

    Sebentar ya... poll kamu sedang di-submit.
    Pastikan internetmu terhubung agar dapat melihat hasilnya.

    Hasil poll 👇

    Menunggu ~

    Ups, sepertinya fitur ini masih dikembangkan Anandastoon

    Di sini nantinya Anandastoon akan menebak rekomendasi artikel yang kamu inginkan ~

    Heihei maihei para pembaca...

    Selesai membaca artikel Anandastoon? Mari, saya coba sarankan artikel lainnya. 🔮

     

    Ups, sepertinya fitur ini masih dikembangkan Anandastoon

    Di sini nantinya kamu bisa main game langsung di artikelnya.

    Permainan di Artikel

    Bermain dengan artikel yang baru saja kamu baca? 😱 Kek gimana tuh?
    Simpel kok, cuma cari kata dalam waktu yang ditentukan.

    Mempersiapkan game...

    Aturan Permainan

    1. Kamu akan diberikan sebuah kata.

    2. Kamu wajib mencari kata tersebut dalam artikel.

    3. Kata yang ditemukan harap diblok atau dipilih.
    Bisa dengan klik dua kali di laptop, atau di-tap dan tahan sampai kata terblok.

    4. Terus begitu sampai kuota habis. Biasanya jumlahnya 10 kuota.

    5. Kamu akan berhadapan dengan waktu yang terus berjalan.

    6. DILARANG Inspect Element, CTRL + F, atau find and replace. Juga DILARANG berpindah tab/windows.