7 poin oleh GN⁺ 2023-12-21 | 1 komentar | Bagikan ke WhatsApp

Saran untuk Pengembang Perangkat Lunak Pemula

  • Alasan orang mendengarkan saya bukan karena kemampuan pemrograman saya, melainkan karena kemampuan menulis saya. Hal yang sama berlaku untuk nasihat orang lain: kita mendengarkannya karena kemampuan mereka menulis.
  • Riset ilmiah tentang perangkat lunak sangat sedikit dan sebagian besar kesimpulannya tidak pasti. Sebaiknya sedikit meragukan klaim tentang "kebenaran objektif" dan memikirkan dengan cermat bagaimana menerapkannya pada situasi Anda sendiri.
  • Jangan terlalu khawatir tentang mempelajari hal yang salah atau tertipu; jika ada ide yang Anda sukai, saya sarankan untuk mencobanya. Selama itu tidak merugikan rekan kerja Anda, pada akhirnya semuanya akan baik-baik saja.

Debugging: 9 Aturan

  • Saya menyarankan untuk membaca buku "Debugging: 9 Rules". Anda bisa meminjamnya dari perpustakaan atau meminta perusahaan untuk membelinya. Buku ini mengajarkan dengan mudah keterampilan penting yang hampir tidak dibahas oleh buku-buku lain untuk programmer pemula.

Menemukan Cara yang Benar

  • Suatu saat Anda akan merasa telah menemukan cara yang benar dalam pemrograman, dan menjadi yakin bahwa bidang ini akan jauh lebih baik jika semua orang memakai cara itu.
  • Saya tidak mengatakan agar Anda menghindari terseret oleh cara yang benar itu, tetapi saya menyarankan agar Anda menyadari bahwa Anda sedang terseret olehnya, dan tidak menjadikan identitas Anda sebagai orang dari cara yang benar.
  • Pada akhirnya, pemrograman adalah pekerjaan yang membuat frustrasi dan berantakan, apa pun cara yang benar yang digunakan, dan Anda akan belajar bahwa perangkat lunak hebat juga bisa dibuat tanpa cara yang benar itu.

Kisah di Balik Best Practice

  • Di balik best practice selalu ada kisah horor. Jika Anda tidak memahami sebuah best practice, akan membantu jika Anda mencari kisah horor yang menginspirasinya.
  • Banyak best practice dan konvensi muncul dari campuran faktor historis dan budaya. Sering kali kita mengikuti metode yang digunakan mentor untuk menyelesaikan masalah yang sekarang sudah tidak lagi relevan.

Mencoba Beragam Jenis Pemrograman

  • Di awal karier, jika memungkinkan, saya menyarankan untuk mencoba berbagai jenis pemrograman. Ini tidak berarti harus berganti pekerjaan, dan di sebagian besar perusahaan memang ada beberapa jenis pemrograman yang dilakukan sekaligus.
  • Dengan mencoba beragam jenis pemrograman, Anda bukan hanya belajar lebih banyak, tetapi juga meningkatkan peluang menemukan jenis pekerjaan perangkat lunak yang benar-benar Anda sukai.

Perubahan di Bidang Perangkat Lunak

  • Bidang perangkat lunak terus berubah, dan saya menyarankan untuk tidak terseret framework treadmill serta fokus mempelajari keterampilan dasar.
  • Ada alasan struktural mengapa informasi menyebar begitu cepat di dunia perangkat lunak. Internet, open source, konferensi, dan sebagainya menurunkan hambatan untuk berbagi ide.
  • Banyak teknologi hanya memiliki sedikit pengguna, tetapi cara kita mendengarnya bisa membuatnya tampak seolah akan diadopsi secara luas. Inilah alasan pendekatan konservatif tetap masuk akal.

Opini GN⁺

  • Hal terpenting dalam tulisan ini adalah proses belajar dan bertumbuh sebagai pengembang melalui pengalaman Anda sendiri. Nasihat orang lain bisa dijadikan referensi, tetapi pada akhirnya yang penting adalah menerapkannya sesuai situasi Anda sendiri.
  • Mencari 'cara yang benar' dalam pemrograman adalah perjalanan pribadi, dan melalui itu Anda bisa mengembangkan kemampuan untuk mempelajari serta menggabungkan berbagai pendekatan.
  • Memahami perubahan teknologi dan mengambil pendekatan yang rasional terhadap tren baru sangat penting untuk karier pengembang yang berkelanjutan.

1 komentar

 
GN⁺ 2023-12-21
Opini Hacker News
  • Ringkasan komentar pertama:

    • Membagikan pengalaman berkolaborasi dengan dua pengembang dalam proyek hobi.
    • Mengungkapkan keluhan tentang tuntutan rekayasa berlebihan meskipun proyeknya berskala kecil.
    • Menyampaikan pandangan kritis terhadap pengembang yang terpaku pada "cara yang benar".
    • Menyebutkan bahwa ia juga pernah mengalami hal serupa di masa lalu, tetapi kemudian menyadari bahwa yang benar-benar penting adalah kode yang berfungsi.
  • Ringkasan komentar kedua:

    • Seorang profesional perangkat lunak dengan pengalaman 15 tahun membagikan pengalamannya.
    • Merasa pelajaran yang dipelajari dari pendidikan Buddhis awalnya juga berguna dalam pengembangan perangkat lunak.
    • Menjelaskan pelajaran yang didapat melalui pengalamannya sebagai pengembang, sambil menekankan pentingnya untuk tidak hanya terobsesi pada cara yang benar.
  • Ringkasan komentar ketiga:

    • Berpendapat bahwa mempelajari teknik seperti TDD(Test-Driven Development) tetap membantu meskipun tidak selalu digunakan secara langsung.
    • Menekankan bahwa dengan mempelajari berbagai teknik dan bahasa, seseorang bisa belajar cara menulis kode yang lebih baik.
  • Ringkasan komentar keempat:

    • Menunjukkan bahwa obsesi terhadap "cara yang benar" dapat menghambat pertumbuhan pengembang.
    • Berspekulasi bahwa penyebabnya bisa jadi karena kurangnya perhatian yang dibutuhkan untuk memperluas pengetahuan atau karena terlalu nyaman dengan posisi saat ini.
  • Ringkasan komentar kelima:

    • Menyarankan untuk meminimalkan semua bentuk state, seperti kode, informasi yang harus diingat, dan detail proyek.
    • Berpendapat bahwa meminimalkan state membantu dalam memecahkan masalah.
  • Ringkasan komentar keenam:

    • Menyebutkan bahwa kemampuan menulis yang baik bisa memberi pengaruh lebih besar pada pembaca daripada keahlian profesional.
    • Menyarankan untuk mencoba berbagai jenis pekerjaan dan mempelajari peran lain di dalam perusahaan.
  • Ringkasan komentar ketujuh:

    • Menekankan perlunya bersikap skeptis terhadap hal-hal yang dipelajari dari layanan berbagi video seperti YouTube.
    • Mengingatkan bahwa pengembangan perangkat lunak adalah tentang menyelesaikan masalah, dan menyarankan agar berbicara dengan orang lain untuk lebih memahami masalah yang harus diselesaikan oleh perangkat lunak.
  • Ringkasan komentar kedelapan:

    • Merekomendasikan sebuah buku tentang debugging, dan menyebutkan bahwa buku itu membantu dalam menyelesaikan berbagai masalah teknis.
    • Menilai buku tersebut mudah dan menarik untuk dibaca, serta memberikan teknik yang berguna.
  • Ringkasan komentar kesembilan:

    • Menekankan bahwa menulis kode itu sendiri bukanlah tujuan, melainkan sarana untuk memecahkan masalah.
    • Menyarankan agar fokus pada masalah yang harus diselesaikan oleh kode, dan jika itu belum jelas, berhenti menulis kode lalu perjelas masalahnya terlebih dahulu.
  • Ringkasan komentar kesepuluh:

    • Menyebutkan bahwa kemampuan menulis yang baik membantu komunikasi dengan orang lain dan penting bagi pengembang perangkat lunak.
    • Menganjurkan pengembang pemula untuk menuliskan pengalaman dan pemikiran mereka, karena itu akan menjadi keterampilan yang berguna di kemudian hari.