“Untuk membuat kode dengan cepat, Anda harus berhenti menulis kode”

17

Pertama, bukan frasa saya: http://www.whattofix.com/blog/archives/2010/11/to-code-quickly.php Alat Peraga kepada Mr. Markham.

TETAPI itu membuat saya memikirkan banyak pertanyaan yang saya lihat tentang bisa menyelesaikan sesuatu.

Pendekatan menganjurkan (mengatur timer untuk periode tertentu, dalam kasus ini 50 menit, tetapi saya telah melihat orang berbicara tentang melanggar penundaan dengan menetapkan waktu sesingkat lima menit pada tugas yang tidak dapat Anda lakukan sendiri, dan kemudian mengambil istirahat singkat) tampaknya masuk akal, tetapi banyak orang menganjurkan masuk ke "zona" dan tinggal di sana selama mungkin, mungkin berjam-jam, daripada mematahkan alur mereka.

Saya terus mencoba pendekatan yang berbeda dan menemukan bahwa masing-masing memiliki kekuatan dan kelemahannya sendiri.

Apa jenis teknik yang Anda gunakan untuk menjadi lebih EFEKTIF (yaitu, menyelesaikan pekerjaan dengan tingkat kualitas yang diminta oleh klien / bos Anda / dll. Dalam jangka waktu yang diizinkan) dalam pengembangan perangkat lunak Anda dan tidak hanya menghabiskan lebih banyak waktu di keyboard ?

Todd Williamson
sumber
3
Saya ingin menggunakan ini sebagai kesempatan untuk memasang situs SE lain (yang diusulkan), Produktivitas dan Organisasi Pribadi: area51.stackexchange.com/proposals/4296/…
instanceofTom
Ooo - luar biasa - Saya sudah pergi dan berkomitmen. Terima kasih!
Todd Williamson
proliferasi situs SE niche menjadi batas tidak masuk akal.
Kevin

Jawaban:

15

Saya menggunakan teknik itu setiap hari. Timer saya adalah 45 menit kerja selama 10 menit istirahat.

Saya juga memaksimalkan waktu di komputer hingga 4 jam per hari . Saya mengerti ini tidak mungkin ketika tugas utama Anda adalah coding. Sisa waktu, saya melakukan tugas apa pun yang tidak memerlukan komputer.

Alat yang saya gunakan adalah WorkRave . Penulis menulisnya karena ia mulai memiliki masalah fisik karena ketidakmampuannya untuk menghentikan pengkodean selama berjam-jam.

Saya kurang stres dan itu mempengaruhi produktivitas saya secara positif .

Sejak beberapa minggu, saya juga mencoba beberapa teknik perhatian selama waktu jeda. Lezat.

Sekarang mengenai teknik anti-penundaan, saya punya satu yang mengalahkan semua yang saya coba sebelumnya:

Saya mengelola daftar tugas tunggal, diprioritaskan oleh kepentingan. Saya memilih yang pertama dalam daftar.

Saya mempertahankan daftar (dan kalender) dengan kombinasi GTD dan 7 Kebiasaan .

Untuk meningkatkan efektivitas daftar, tulis tugas Anda sebagai tindakan selanjutnya, bukan deskripsi (lihat bab Tindakan, Konteks & Proyek di Posting Blog ini )

Todd Williamson
sumber
1
Bisakah Anda memberikan contoh tugas yang ditulis sebagai tindakan vs sebagai deskripsi?
Adam Lear
Tentu saya menambahkan referensi ke artikel yang lebih lengkap di jawabannya. Inilah tautannya lagi (ini menggambarkan seluruh teknik GTD): zenhabits.net/the-getting-things-done-gtd-faq .
6

Saya tidak terkesan dengan esai itu; dia menghabiskan apa, suatu hari mencoba metode barunya?

Yang mengatakan, Pomodoro & teknik serupa tampaknya memiliki popularitas niche yang persisten. Biasanya saya mencoba menyortir hari-hari saya menjadi "hari-hari fokus" dan "hari-hari lain". Fokus hari saya tampil dalam pakaian yang sedikit lebih santai, mungkin sedikit lebih awal (atau tinggal lebih lambat). Saya tidak ada rapat hari itu, jadi pada dasarnya saya bisa menulis jadwal saya sendiri, yang memungkinkan saya fokus lebih baik. Di hari-hari lain, saya ada rapat, janji, dan sebagainya. Saya tidak akan punya waktu untuk berkonsentrasi, jadi saya mencoba menjadwalkan tugas yang lebih kecil dan lebih mudah untuk mengisi waktu saya.

Salah satu cara yang baik untuk meningkatkan produktivitas dalam pengkodean adalah pembuatan kode bit boilerplate; refactoring segala sesuatu yang diduplikasi, dll.

Paul Nathan
sumber
2

Hal utama yang perlu diingat di sini adalah tidak ada solusi "satu ukuran cocok untuk semua".

Ada banyak teknik untuk meningkatkan kemampuan Anda untuk "menyelesaikan sesuatu" dan salah satu alasannya adalah bahwa berbagai hal bekerja untuk orang yang berbeda.

Beberapa orang melakukannya dengan sangat baik dengan metodologi semacam ini (cf Pomodoro Technique) dan beberapa orang akan menemukannya menghancurkan fokus mereka - saya benar-benar tidak suka berhenti di tengah-tengah tugas dan itu hampir selalu apa yang dilakukan sistem berbasis timer kepada saya ... secara konseptual baik, tantangan implementasi (benar dari mayoritas metodologi terstruktur untuk manajemen waktu dan hal-hal lain)

Murph
sumber
Saya hanya mencari banyak masukan. Seperti yang Anda katakan tidak ada pendekatan "satu cincin untuk memerintah mereka semua", tapi saya tertarik untuk melihat bagaimana orang lain mendekatinya.
Todd Williamson
Oh tentu saja - dan saya setuju dengan pertanyaan (-: Tetapi hal di atas adalah poin yang perlu dibuat sebagai orang yang memiliki sistem yang bekerja - untuk mereka - bisa mendapatkan sedikit antusias.
Murph
Saya pikir ini adalah poin yang bagus. Terlebih lagi, saya telah menemukan bahwa beberapa teknik bekerja lebih baik atau lebih buruk bagi saya tergantung pada suasana hati saya, jenis pekerjaan apa yang saya lakukan, dll. Ada kalanya saya tidak mengalami kesulitan untuk bekerja dan bekerja secara produktif sepanjang hari tanpa sistem apa pun. Di waktu lain, saya butuh sesuatu untuk membuat saya tetap fokus dan tetap di jalur. Kadang-kadang, ketika saya melalui funk seperti itu, saya menemukan Pomodoro bekerja dengan cukup baik untuk saya, meskipun saya kadang-kadang melewatkan waktu istirahat ketika saya sedang bermain.
PeterAllenWebb
Tergoda untuk downvote hanya karena ini tidak benar-benar menambah opini subjektif - itu hanya menyatakan "itu tergantung". Ini bisa dikatakan hampir apa saja dan berlaku untuk apa saja.
Magnus Wolffelt
@ Magnus tidak dapat berdebat dengan itu, tetapi hal yang sama harus dibuat. Terlalu banyak orang pergi berburu peluru emas.
Murph
-1

Karena pengkodean adalah masalah yang dihadapi, selain teknik yang disebutkan oleh Pierre, saya akan menyarankan pengkodean dalam bahasa yang dinamis, jika memungkinkan (misalnya Python menyenangkan untuk digunakan, misalnya): bahasa seperti itu memungkinkan Anda untuk menjadi sangat produktif (waktu pengkodean terukur menunjukkan faktor peningkatan 2 hingga 10, dibandingkan dengan C). Mereka sangat baik untuk bekerja dengan yang pada dasarnya Anda mungkin tidak pernah "hanya menghabiskan waktu di papan ketik"

Eric O Lebigot
sumber
Mengapa downvotes? Jawaban di atas menjawab pertanyaan "Teknik apa yang Anda gunakan untuk menjadi lebih EFEKTIF (...) dalam pengembangan perangkat lunak Anda?".
Eric O Lebigot