Selama ini, programer selalu dianggap sebagai tukang ngoding oleh non-programer di depan komputernya yang penuh dengan deretan beribu-ribu baris sintaks.

“Lihat deh si anu, ngoding melulu kerjaannya.” Begitu ucap sebagian orang. Atau bahkan,

“Lihat deh si anu, depan komputer melulu kerjaannya.”

Padahal mengoding hanyalah bagian dari programing saja, bukan keseluruhan. Sebenarnya, agak kurang elok menganggap programer hanya sebagai tukang ngoding belaka, bahkan programer digambarkan oleh sebagian orang sebagai orang yang culun, antisosial, dan misterius karena keberadaan mereka yang melulu menzombie di balik layar mereka.

Bicara programing, maka bicara problem solving.

Seorang programer sebelumnya belum cukup dikatakan sebagai programer sungguhan jika ia hanya dapat merangkai kode, menambal beberapa baris sintaks dari berbagai sumber, kemudian tiba-tiba programnya berjalan tanpa testing lebih jauh.

Padahal, ada beberapa tahap yang harus dipahami seorang programer sebelum mereka membuat program.

Sejatinya, programer adalah pekerjaan untuk memecahkan sebuah masalah.

Jadi, programer bukan hanya membuat apa yang ia inginkan dengan sebatas melihat tutorial saja kemudian memamerkan apa yang menjadi hasilnya.

Dari sinilah pentingnya sebuah algoritma.

Setiap programer pasti mengetahui apa itu algoritma. Banyak yang memahami bahwa algoritma adalah langkah-langkah atau buku masak untuk membuat sebuah program komputer, baik sebuah aplikasi atau game digital. Well, hal itu tidak sepenuhnya salah.

Namun sebenarnya algoritma itu adalah kumpulan detail dari masalah yang akan kita pecahkan, yang kemudian siap diterjemahkan ke dalam bahasa pemrograman.

Saya pribadi sebelum memulai sebuah proyek koding, misalnya membuat aplikasi penyimpanan dokumen, maka yang pertama kali lakukan bukanlah melihat tutorial tentang bagaimana caranya membuat halaman login, melainkan beberapa hal.

Pertama, memastikan apakah aplikasinya akan aman karena segala sesuatu yang berhubungan dengan data haruslah bersifat pribadi dan rahasia.

Kedua, memperkirakan berapa ukuran penyimpanan database dan server yang diperlukan untuk menyimpan data tersebut. Apakah hanya di penyedia hosting web biasa dapat menghandle ini? Atau harus menyewa server sendiri (private server)?

Ketiga, memastikan jika aplikasinya tidak sering down atau programnya tidak sering ngebug. Juga memikirkan apakah aplikasinya sedang tersedia jika pengguna sedang ada kebutuhan mendesak untuk mengunduh dokumen tersebut.

Setelah semuanya terbayang, barulah saya melaju kepada teknis programnya.

Programer menawarkan solusi kemudahan dan kecepatan.

Seorang programer haruslah mengetahui bahwa tugasnya bukan hanya menulis serangkaian baris kode lalu berbangga akannya, sebab itu hanya dilakukan oleh pemula.

Sebuah program bukan dibuat untuk mengadu kecanggihan teknologi, bukan dibuat untuk mengadu tampilannya yang modern.

Program dibuat untuk membuat pekerjaan pengguna menjadi lebih efisien, inilah mengapa muncul sebuah istilah User Experience atau UX.

Kecanggihan teknologi dibutuhkan oleh sebuah program jika dengan itu aktivitas pengguna menjadi lebih cepat akannya.

Namun nyatanya, banyak programer pemula yang ‘latah’ menyuntikkan teknologi mutakhir demi sebuah tren yang pada akhirnya itu hanya membuat aplikasinya lebih berat dan lebih cepat panas karena banyak plugin/library yang tidak perlu.

Kunci menjadi programer adalah rasa peka.

Seorang programer akan selalu membuat benchmark atas program-program yang mereka buat, memastikan seluruh modulnya dapat dimuat hanya dalam waktu satu detik atau kurang dari itu, atau setidaknya dalam waktu yang masih dimaklumi.

Seorang programer pun harus terbuka dengan komplain, jika ada sesuatu yang dapat dipermudah, maka itu adalah tugas programer.

Misalnya, seorang pengguna mengeluhkan warna sebuah tombol yang membuat matanya sakit karena kontrasnya yang buruk dengan warna latar belakang. Di sinilah sebuah UX diperlukan. Programer harus mencari tahu berapa ukuran kontras minimal agar saturasi warna tidak mengganggu mata.

Begitu pun dengan hal lainnya.

Bahkan, programer pun harus berbaikhati dengan dirinya sendiri. Artinya, programer harus mendokumentasi programnya agar ia tidak kebingungan sendiri di masa depan.

Bagaimana seorang programer dapat peka kepada orang lain namun tidak peka kepada dirinya sendiri? Maka buatlah komentar-komentar, rangkumlah perintah menjadi fungsi-fungsi, dan klasifikasikanlah mereka dalam file-file terpisah.

Benar bahwa programer harus ‘malas’ untuk dapat memikirkan hal termudah apa baginya untuk ia jadikan algoritma terbaik. Namun jangan sampai ‘malas’ ini justru mempersulit sang programer di kemudian hari.

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

  • Sebelumnya
    Programing Adalah Tentang Konsep, Bukan Teori

    Berikutnya
    Programer yang Baik Harus Tahu KISS


  • 1 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.