Koding.Club

> Artikel

Berpikir garis besar

Menginvestasikan uang

Bagaimana mengelola waktu mengerjakan proyek

Beberapa lifehack untuk programmer

Menjaga kesehatan sebagai programmer

Don’t Repeat Yourself

Bagaimana cara masuk ke zone?


> Lainnya

produktivitas di dunia programming / koding

> Berpikir garis besar

Sering kali kita ngoding hanya mengandalkan jari-jari, percaya semakin banyak mengetik semakin produktif. Padahal ngga sama sekali. Berpikirlah lebih banyak dan menulislah lebih sedikit.

Program yang ngga dipikirkan dengan baik, ngga akan berjalan dengan baik. Masalahnya akan mulai terlihat ketika kita mau mengubah dan mengupdate beberapa baris kode, akibat dari tidak merancang atau berpikir dengan baik akan membuat kita jauh lebih tidak produktif ke depannya.

Silahkan menggunakan kertas dan pulpen, ngga harus software mahal sama sekali. Merancang program secara garis besar, seperti blueprint dari apa yang akan kita buat. Fungsi (bukan nama fungsi, tapi hal apa yang bisa dilakukan di program ini) apa saja yang akan ada, struktur database seperti apa yang diperlukan, bagaimana hubungan antara satu data ke data yang lain.

Kalau bekerja dengan orang lain atau di perusahaan disarankan untuk menggunakan UML diagram sebagai “bahasa universal” yang bisa dimengerti orang lain.

Biasakan menyediakan waktu untuk berpikir di awal, sebelum memulai ngodingnya. Menjadi arsitek yang merancang bangunan kokoh, bukan bangunan yang ditiup angin jadi layu. Ingat kata orang bijak, penyesalan datang di akhir, kalau di awal namanya pendaftaran.

Link

> Menginvestasikan uang

Boleh deh, tapi free kan? Pertanyaan yang ngga asing lagi di forum-forum. Berapa banyak waktu dan uang yang dipakai untuk hiburan? menonton bioskop? makan makanan fast food? jalan-jalan? Kita jarang berpikir dua kali untuk hal-hal ini , tapi bagaimana dengan ilmu dan mengembangkan diri kita sendiri? Rasanya berat untuk mengeluarkan uang?

Sayangnya hiburan ngga bertahan lama. Seperti minum air laut, efeknya hanya menambah rasa haus. Cepat atau lambat teman-teman akan sadar investasi ilmu ke diri sendiri sangat penting , kalau sekarang berhenti belajar, sama saja menyerah dengan cita-cita kita dan bersiap menjadi rata-rata. Kalau mental kita selalu “boleh deh, tapi free kan?” , kita ngga akan maju.

Uang itu bisa dicari, uang itu alat, bukan tujuan. Jangan mengeluarkan alasan “saya masih mahasiswa, saya masih pelajar, saya ngga bisa kerja” Kata siapa? kamu bisa kerja, tapi kamu ngga ada usaha untuk kerja.

Ngga harus kerja skill, bisa juga non-skill, yang penting menghasilkan uang, untuk kamu berinvestasi lagi ke diri sendiri.

Bukan hanya investasi berupa ilmu, investasi berupa barang pun perlu dilakukan. Saya sampai sekarang tidak menyesal membeli “meja berdiri” meja agar saya bisa bekerja dalam posisi berdiri atau membeli ekstra monitor agar pekerjaan menjadi lebih produktif. Jangan melihat uang hanya nilainya saat ini, ada banyak hal yang bisa kita investasikan dengan uang.

“Waktu terbaik untuk investasi adalah di masa lalu” - unknown

Link

> Bagaimana mengelola waktu mengerjakan proyek

Selalu mulai dari prioritas. Menyelesaikan 3 hal yang tidak penting, sangat berbeda dengan berhasil mengerjakan 1 hal yang penting.

Linus Torval (pembuat Linux) mengatakan dirinya keras kepala. Saat mengerjakan sesuatu dia sangat serius. Ia tidak akan tergoda dengan "hal menarik lainnya" yang mengganggu.

Kamu tidak harus sendiri mengerjakan sesuatu, penulis buku "APIs you won't hate" Phil Sturgeon mengatakan di berbagai proyek (komersil dan opensourcenya) ada banyak teman-temannya yang komitmen dan bekerja keras.

Link

> Beberapa lifehack untuk programmer

Apa itu lifehack? tips dan trik untuk memaksimalkan hasil dengan effort yang lebih kecil.

Atur folder dan file kamu dengan rapi di komputer

Hidup sehat! jadwalkan olahraga dan makan makanan sehat, bekerja lebih banyak bukan berarti lebih produktif, jaga kesehatan kamu

Gunakan tool yang bisa memudahkan, seperti Trello (mengatur kerjaan), gunakan cloud untuk memastikan bisa mengakses catatan/tugas/kerjaan/ dari mana saja, terutama pekerjaan kamu pastikan dia ada di tool seperti GitHub/Bitbucket, ketika kamu kerja dari komputer yang berbeda atau komputer kamu rusak, kodenya tetap ada.

Kalau pekerjaan kamu hampir sama (misalnya membuat profil perusahaan untuk klien) pastikan kamu punya template program dasar yang bisa dikostumisasi nantinya, dibanding terus menulis ulang kode dari 0

Belajar gunakan cronjob, untuk menjadwalkan sesuatu, seperti backup database, import export data, dan lainnya yang kamu lakukan secara berulang

Gunakan pomodoro teknik, idenya bagi kerjaan ke beberapa block, seperti kerja cukup 25 menit, setelah itu harus 5 menit, dan ulang lagi, bukan bekerja tanpa istirahat

Beli monitor tambahan, untuk menghindari ganti-ganti tab saat bekerja

Bekerja berdasarkan prioritas, multitasking tidak akan membantu, tahu persis apa yang berdampak besar untuk kamu, utamakan itu, dibanding kerjaan lainnya. Hindari juga sosial media dan handphone saat bekerja. Paling simple, simpan handphonemu di tempat yang sulit diambil.

Belajar bilang tidak, saat kamu tidak bisa atau kamu tidak tertarik, jangan paksakan, beban mentalnya akan mahal

Bikin dokumentasi untuk kerjaan kamu, termasuk masalah error atau ada problem non-teknis. Suatu hari nanti kamu bisa mengacu ke dokumentasi ini, dibanding harus mencari ulang masalah dari awal

Link

> Menjaga kesehatan sebagai programmer

Gimana kalau kamu cuma boleh punya satu laptop seumur hidup? saya yakin laptopnya akan dirawat dengan baik. Dibersihkan, hati-hati dalam memasukkan program di dalam agar tidak terkena virus dan menjaga dengan aman di luar agar tidak rusak apalagi hilang. Mungkin kita akan punya lebih dari satu laptop selema hidup, tapi tidak dengan badan kita. Selama hidup kita hanya punya 1 badan ini.

Sayangnya kita ngga memperlakukan badan kita seperti barang yang mahal, seperti barang yang kita sayangi. Kita ngga peduli makanan yang masuk sehat atau ngga, belum lagi rokok, barang yang jelas-jelas di bungkusnya sendiri tertulis banyak potensi penyakit berbahaya.

Yang jatuh cinta dengan minuman hangat seperti kopi atau yang dingin seperti minuman bersoda akan lupa dengan pentingnya minum air putih yang cukup. Konsumsi minuman tadi secara berlebihan, efek pertamanya akan menjadi kebiasaan, kita jadi ngga bisa “ngoding” kalau ngga minum minuman tadi. Belum lagi berbicara masalah kesehatan organ tubuh kita.

“Mumpung masih muda” katanya, justru karena masih muda, ini waktunya kita untuk menjaga kesehatan dengan baik. Organ-organ yang kita dapatkan di dalam tubuh memang gratis, tapi apakah gratis berarti murah atau ngga berharga? Kebiasaan lainnya yang mengganggu kesehatan adalah terlalu banyak duduk, karena merasa pekerjaannya penting. Betul pekerjaan penting, tapi menjaga kesehatan juga penting. Jadwalkan rutin mengangkat pantat kamu dari kursi saat bekerja.

Salah satu teknik yang populer adalah teknik pomodoro. Dimana kita menyiapkan waktu 25 menit untuk fokus bekerja dan 5 menit beristirahat. Teknik ini diulang-ulang selama waktu yang dibutuhkan dalam sehari.

25 menit betul-betul untuk bekerja, bukan membuka laptop tapi bermain social media, lalu setelah 25 menit ini selesai HARUS beristirahat selama 5 menit. Keluar ruangan, mengatur nafas, minum air putih dan memberikan mata sedikit olahraga dari sinar layar. Setelah beristirahat silahkan kembali dengan pekerjaannya. Teknik ini juga cocok untuk belajar.

Link

> Don’t Repeat Yourself

Jangan mengulangi aktivitas yang tidak perlu diulangi! Jangan menulis ulang kode yang tidak perlu ditulis ulang!

Sebagian kecil sudah kita bahas di bagian “refactoring”, tapi masih ada yang lebih besar dari mantra DRY (don’t repeat yourself) ini. Kalau teman-teman mau membuat galeri foto misalnya, pertanyaan pertama, kenapa harus membuat ulang? tentu saya setuju kalau tujuannya untuk belajar atau mencari solusi yang terbaik. Tapi kalau sudah ada library yang bisa membantu kita dengan performa yang baik, kenapa harus menulis ulang?

Pertimbangan waktu yang menjadi menu utama di sini. “Yang paling jauh adalah masa lalu” kata seorang imam. Ngga merhargai waktu sama seperti ngga menghargai diri sendiri. Hemat waktumu, dengan tidak menulis hal yang sama berkali-kali.

Belajar menulis dokumentasi untuk hal-hal yang akan kamu temui berkali-kali. Misalnya ada error yang sering muncul, kenapa ngga menulis error dan solusinya di satu file?

Ketika kamu ketemu masalah yang sama, ada referensi yang cepat bisa kamu akses. Ini juga salah satu alasan kenapa saya membuat forum di sekolahkoding, agar semua orang punya referensi ketika bertemu error yang sama, tanpa perlu menghabiskan waktu yang lama. Alasan yang sama kenapa saya menulis blog ini.

Contoh lain, ketika kamu harus mengirim email yang sama setiap 1 bulan satu kali, sudah ada sistem “scheduling” cron job yang bisa dimanfaatkan, kamu cukup menulis programnya satu kali dan akan automatis terus dijalankan. Jangan mengulangi hal yang sama.

Cari hal-hal yang kamu terus ulang berkali-kali, jika bisa dibikin automatis, bikin jadi automatis! itu prinsip dasar dari programmer. Tulis semua hal yang kamu lakukan berkali-kali (hal yang sama) setiap hari atau setiap bulan, cari cara untuk membuatnya automatis.

Ketika kamu mengerjakan proyek yang sama berkali-kali, seperti membuat profil perusahaan misalnya, kenapa harus selalu menulis ulang semuanya dari awal? kenapa ngga bikin satu template dasar, yang nanti bisa kamu kembangkan dan modifikasi sesuai kebutuhan klien nantinya. Jangan mengulangi hal yang sama. “Jangan mengulangi hal yang sama.” agak miris memang saya mengulang-ulangi kata jangan mengulang.

Link

> Bagaimana cara masuk ke zone?

Kamu pernah olahraga, main futsal misalnya dan terus mencetak skor dalam satu pertandingan? atau menulis kode menjadi sangat lancar, mencari bug terasa jadi mudah? seperti bukan diri kamu sendiri, kenalkan zone/flow!

Zone atau flow, adalah kondisi ketika kita ada di puncak konsentrasi, apa yang terjadi kalau kita ada di kondisi ini? skill kamu akan meningkat seperti punya kekuatan ekstra menyelesaikan suatu masalah. Sayangnya tidak mudah untuk memasang mode ini. Di bawah beberapa tips yang bisa kamu coba:

Fokus! tulis apa yang mau kerjakan, fokus ke satu hal! pastikan hal ini adalah priotritas

Lingkungan tanpa distraksi dari orang lain, matikan handphone dan notifikasi, hindari tempat yang ramai.

Punya habits/kebiasaan yang diulang, seperti minum air putih, berdoa, atau ada "ritual" setiap sebelum masuk ke zone ini. Anggap ada satu area yang penuh dengan rumput tinggi yang menghalangi pandangan, semakin sering kita melewati jalan ini, rumputnya akan terinjak dan membuat jalur yang bisa kita lewati dengan mudah di waktu berikutnya.

Tugas yang mudah sayangnya tidak akan membuat kamu masuk ke zone, cari tantangan yang sulit dan ingin kamu selesaikan, dengan niat skill kamu akan bertambah nantinya.

Link