Cara terbaik untuk dengan cepat menyembunyikan kondisi kognitif Anda ketika Anda tidak dapat menghindari gangguan

21

Saya bahkan tidak tahu apakah pertanyaan ini masuk akal ... tapi biarkan saya membiarkan Anda mengguncangnya ...

bayangkan ... Anda benar-benar terserap ke dalam pemikiran / gagasan / konsep pemrograman, otak Anda dalam kondisi paling aktif memikirkan solusi untuk suatu masalah, atau seperti yang dikatakan Joel Spolsky - Anda jauh ke dalam zona "Anda" "- DAN, tiba-tiba seseorang atau suatu peristiwa merusak keasyikanmu - sesuatu yang tidak bisa kamu hindari, sesuatu yang harus kamu hadiri. ... imajinasi lengkap .. kembali ke kenyataan

Sesuatu yang dapat merusak konsentrasi Anda bisa ...

  • Anda dipanggil untuk rapat mendesak
  • kode Anda merusak bangunan harian dan kolega Anda menelepon Anda
  • Anda baru saja mengingat sesuatu yang harus Anda lakukan tetapi lupa melakukannya
  • rekan setim Anda memiliki beberapa berita menarik untuk diungkap dan mendesak Anda untuk mendengarkan
  • pacar Anda (atau pacar) baru saja datang

Sekarang anggaplah Anda hanya punya 5-10 menit sebelum Anda harus meninggalkan apa yang Anda dalam, dan menghibur interupsi.

Pertanyaan saya adalah - bagaimana Anda, cepat "menyelamatkan" keadaan pikiran Anda, ketika pengalihan datang. Apakah Anda menulisnya dalam "beberapa bentuk" pada kertas atau komputer, atau apakah Anda "mengingatnya" entah bagaimana. Bagaimana Anda menyelamatkan pikiran-pikiran yang tepat dalam 5-10 menit sehingga nanti ketika Anda kembali Anda dapat mengejar langsung dari "titik" yang Anda tinggalkan.

Sering terjadi pada saya bahwa saya tidak dapat mengingat kembali pikiran-pikiran persis yang saya pikirkan sebelum pukulan - dan saya merasa seperti saya kehilangan ide bagus atau solusi untuk suatu masalah. saya mencoba berpikir surut berusaha keras untuk sampai ke keadaan kognitif SAMA yang membuat saya bersemangat tentang sebuah ide - tetapi saya merasa frustrasi karena tidak bisa "sampai di sana".

Apakah hal seperti ini terjadi pada Anda. bagaimana Anda "pulih" dari ini?

Perhatian utama saya bukan kode - itu adalah "ide abstrak" yang belum dikonversi menjadi kode yang saya perlu "simpan" entah bagaimana.

- perbarui -

Setelah bertahun-tahun ini, saya dapat dengan yakin mengatakan, TIDAK ada cara yang mungkin untuk melakukan ini. Tidak ada jumlah yang mencorat-coret kondisi kognitif Anda ke selembar kertas yang memungkinkan Anda mengembalikannya persis seperti sebelumnya. Otak kita jauh lebih kompleks daripada coretan potongan kecil, ketika sampai pada informasi yang dipegangnya secara aktif pada titik waktu mana pun.

Cara terbaik adalah menghindari gangguan, tidak peduli seberapa penting, kecuali, itu adalah situasi hidup dan mati. Tidak ada yang lebih penting daripada berada di zona dan menyelesaikannya.

Jika tempat kerja Anda cukup naif untuk tidak menghargai seseorang "berada di zona", maka waktu untuk mencari tempat kerja baru. YMMV. Dan dengan hubungan pribadi, keterampilan sosial dan sedikit articulateness yang dapat melakukan dunia yang baik.

treecoder
sumber
Saya akan merekomendasikan menggunakan alat pemetaan pikiran, seperti FreeMind. Atau Emacs Org-mode. Keduanya mudah untuk mengedit tugas-tugas dan ide-ide TODO secara cepat saat mereka datang. (dan
dukung

Jawaban:

19

Sebelum meninggalkan PC saya, saya akan menulis apa yang saya lakukan di post-it atau di selembar kertas. Saya biasanya melakukan ini sebagai bagian dari perbaikan atau analisis bug. Ini benar-benar membantu ketika sebuah bug (re) dibuka kemudian , Anda masih bisa melihat garis-garis Anda pemikiran dari sebulan yang lalu dan mencari tahu apa yang harus Anda lakukan jauh lebih cepat.

Juga: setel beberapa penanda dalam kode Anda. Ketika Anda kembali, Anda dapat melihat apa yang Anda lakukan dengan melihat bookmark yang Anda atur.

Carra
sumber
2
+1. Dalam pengalaman saya, tindakan menulis apa yang Anda lakukan adalah mengklarifikasi dengan sendirinya, dan membantu bahkan jika saya tidak menemukan diri saya merujuk pada apa yang saya tulis nanti .
jimwise
+1 saya setuju, menuliskannya dalam "beberapa bentuk" adalah solusi terbaik :)
treecoder
2
+1: Ada semua jenis penelitian kognitif untuk mendukung ini. Ini seperti membuat catatan tertulis ketika mendengarkan kuliah. Semakin banyak bagian otak yang dapat Anda gunakan saat ini, semakin besar peluang Anda untuk bergantung pada detail.
Bob Murphy
Notebook untuk saya dan saya pikir saya melakukannya sambil jalan, kemudian saya mencoretnya setelah selesai. Saya juga akan meninggalkan kode parsial dengan kesalahan kompilasi yang disengaja dengan pesan tentang apa yang perlu dilakukan.
Newtopian
8

Saya mengeluarkan aplikasi notepad lokal dan menuliskan rencana saya untuk hal-hal yang akan datang.

Saya menemukan ini sebagai yang paling membantu. 100% dari waktu saya tidak dapat mengingat apa yang saya rencanakan untuk dilakukan ketika saya kembali, ide-ide mudah dijumpai tetapi apakah Anda ingat langkah-langkah aktual yang akan Anda lakukan?

Saya menggunakan sesuatu seperti;

+ Fix i.d bug
    - look at first name , problem?
    - ...

+ Deploy changes to test database

+ Come up with production deployment plan

Saya menyimpannya di Desktop dan membuka file.

Saya menemukan ini, bagi saya, memiliki manfaat ini;

  • Dibutuhkan 5 menit
  • Sangat mudah untuk kembali ke 'zona'
  • Ini memicu ingatan lebih mudah
Ross
sumber
itulah yang saya lakukan juga - hanya berpikir seseorang dapat memiliki ide yang lebih baik :)
treecoder
Saya tidak tahu apakah ada cara untuk 'menyimpan' gambar 'sempurna dari ide-ide Anda pada saat itu. Tetapi saya akan memasukkan kata-kata kunci untuk membantu mengembalikan keseluruhan itu, dan memikirkan ide itu dan menghubungkannya secara singkat dengan kata-kata itu ketika saya menuliskannya. Gagasan lain, ketika ini gagal adalah diagram, dan saya sering melakukan ini ketika memprogram mesin 3d sebagai hobi. Dengan cara ini saya bisa memvisualisasikan ide-ide saya atau tujuan akhir saya, menyimpannya di atas kertas dan kembali dan bahkan melakukan lebih baik daripada ketika saya tinggalkan.
Ross
5

Selain saran yang sangat baik untuk menuliskan semuanya, ini adalah keterampilan yang dapat dikembangkan dengan ...

Praktek.

Saya pernah menjadi yang terburuk di dunia dalam hal banyak tugas. Orang-orang takut ketakutan mengganggu saya karena saya sangat tidak senang tentang hal itu. Kemudian saya menyadari itu benar-benar tidak seperti CPU dengan beberapa inti paralel, itu seperti interupsi dengan switch tugas. Jadi saya mulai melatih diri untuk rileks dan menerimanya sebagai bagian penting dari kehidupan.

Satu dekade kemudian, saya menggunakan sistem seperti Pomodoro di mana saya cukup istirahat ketika timer mati. Sangat mudah untuk kembali "di zona" di lingkungan yang santai setelah istirahat beberapa menit - Saya menantikannya! Dan untuk interupsi yang lebih lama, catatan tertulis itu sangat berharga. Saya dapat memulihkan hampir semua "kondisi CPU" mental itu dengan mudah sekarang kecuali lebih dari satu hari berlalu.

Juga, karena saya sekarang lebih terbiasa menghadapi gangguan, saya tidak lagi menggerutu ketika orang melakukannya. Saya juga menjadi jauh lebih baik dengan hanya mengatakan, "Tunggu sebentar sementara saya membuat catatan." Sungguh menakjubkan betapa jauh lebih menyenangkan interaksi sosial saya!

Otak seperti otot mental, dan menjadi lebih baik dalam hal-hal seperti melakukan banyak tugas jika Anda memberinya latihan yang semakin sulit.

Bob Murphy
sumber
4

Ini terjadi setiap saat! Ketika saya sedang menulis kode, saya dapat memberitahu 90% orang untuk menunggu selama beberapa detik - mereka tahu adalah kepentingan terbaik mereka untuk tidak mengganggu saya. Selama beberapa detik ini, saya sengaja menumbuk beberapa tombol pada baris kode yang saya kerjakan dan menandai baris di atas dengan XXX (ini menyoroti baik dalam vim).

Tumbukan kode dilakukan agar program tidak dapat dikompilasi dan saya terpaksa melihat baris itu. Untuk sebagian besar bahasa yang saya tulis, ini sudah cukup bagi saya untuk melihat di mana saya tinggalkan dan menyambungkan memori saya ke dalam kondisi produktifnya dengan cepat.

Saya juga belajar bahwa berada di "zona" sekarang menjadi kemewahan akhir-akhir ini (dari berurusan dengan gangguan konstan). Meskipun jelas tidak ideal dalam hal produktivitas, itu memaksa Anda untuk memaksimalkan apa pun yang Anda miliki.

JK
sumber
3

Saya menemukan bahwa setiap kali saya bekerja dengan git, saya memiliki lebih sedikit masalah dengan meninggalkan pekerjaan di belakang (dan yang lebih penting, terus mengerjakannya). Itu bukan karena git itu sendiri tetapi praktik yang saya adopsi ketika mempelajari alur kerja git. Saya sedang berbicara tentang cabang topik .

Jika Anda melakukan semua 'keutuhan' yang berarti dalam pengembangan Anda di cabang topik khusus, jauh lebih mudah untuk kembali ke pekerjaan Anda. Inilah sebabnya.

  • cabang topik menyediakan konteks. Anda telah memberinya nama deskriptif, sehingga Anda tahu apa yang Anda lihat.
  • sejarah memiliki cakupan yang lebih kecil dan lebih linier. Saat Anda bekerja pada set perubahan yang lebih kecil (cabang), Anda kemungkinan memiliki lebih sedikit komit untuk dilalui, dan mereka akan linier (tidak ada komit yang tidak terkait di antaranya)
  • jika Anda menghapus cabang topik ketika Anda selesai dengan suatu topik, lebih mudah untuk memahami topik apa yang sedang Anda kerjakan, dan yang lebih penting, yang masih membutuhkan perhatian Anda

Jika Anda memiliki disiplin, cara kerja ini membuatnya lebih mudah untuk meninggalkan pekerjaan Anda dan mengambilnya nanti.

Ketika saya mengerjakan sesuatu, saya selalu menghasilkan pekerjaan yang berhubungan dengan topik saya saat ini. Sekali lagi, memiliki disiplin terbayar. Selesaikan pekerjaan Anda saat ini. Jika Anda tidak bisa (saya sering memiliki 'masalah' ini - 'Saya perlu memperbaikinya sekarang' dll.), Cukup buat cabang topik baru untuk perbaikan (atau refactoring, peningkatan, apa pun). Bahkan jika Anda saat ini ruang kerja tidak siap untuk berkomitmen, lakukan saja git stash, lakukan pekerjaan kecil dalam topik itu sendiri, dan popdari simpanan untuk kembali ke pekerjaan Anda yang sebenarnya.

merryprankster
sumber
3

Untuk menjaga status tugas dan beralih ke tugas lain, saya benar-benar menyukai pelestarian konteks Mylyn . Apa yang dilakukan Mylyn adalah menyimpan dan kemudian mengembalikan keadaan pasti IDE Anda (membuka perspektif, membuka file, lokasi di ini dll.).

Untuk hal-hal yang saya lakukan, saya memberikan komentar TODO. Eclipse secara otomatis menampilkan ini sebagai daftar tugas.

vartec
sumber
2

Saya berkembang di VM. Dan ketika saya terganggu, (akhir hari, makan siang, rapat, dll.) Dan tidak ingin kehilangan pemikiran, saya hanya menulis komentar dalam kode, sesuatu seperti:

//Figure out how to implement "Date range too far out" check correctly

Terkadang komentar ini berlangsung selama beberapa baris, jika rumit. Tapi saya hanya menulis komentar di kode, di IDE, lalu biarkan IDE terbuka dan gunakan perintah "Suspend and Exit" pada VM. Kemudian ketika saya menariknya kembali, ada komentar saya tepat di depan saya segera, yang membantu saya dengan cepat kembali ke apa yang saya pikirkan sebelumnya.

Mason Wheeler
sumber
1

Saya telah menggunakan perangkat lunak pemetaan pikiran (saat ini FreeMind). Saya menggunakannya untuk semuanya, tetapi relevan dengan ini, itu termasuk daftar tugas untuk setiap proyek yang saya kerjakan. Saat saya sedang memikirkan solusi untuk masalah yang diberikan pada daftar, saya mulai mengetiknya di dalam peta pikiran saya. Di situlah saya menyimpan solusi saya, bahkan ketika saya sedang mengerjakannya, bukannya mencoba menahan semuanya di kepala saya.

Itu mari saya fokuskan pikiran saya pada detail implementasi kode, tanpa kehilangan gambaran keseluruhan. Ini juga berarti bahwa gangguan memiliki efek minimal pada pekerjaan saya, karena saya tetap menjaga langkah-langkah yang saya rencanakan untuk direkam di suatu tempat.

Perangkat lunak atau metode pelacakan khusus yang Anda gunakan tidak relevan. Ide ini akan sama bermanfaatnya di Notepad atau dengan selembar kertas. Konsep yang relevan adalah bahwa Anda merekam ide-ide Anda saat Anda memilikinya, sehingga mereka selalu tersedia.

MattBelanger
sumber
1

Jika Anda berada dalam lingkungan interupsi tinggi, saya menemukan membuat jurnal setiap jam (tuliskan beberapa peluru setiap jam) sangat berguna. Saya menggunakan kombinasi TiddlyWiki dan kertas (Tiddly untuk mendokumentasikan / mencari, kertas untuk berpikir cepat).

Saya mulai melakukan ini ketika bekerja dari rumah dengan seorang bayi dan itu meningkatkan produktivitas saya di seluruh papan. Ini membantu dengan masalah segera menemukan kembali pikiran saya, dan memiliki efek samping yang bagus untuk meningkatkan kesadaran diri saya (saya menghabiskan satu jam memodifikasi metode 10-bit-banging minggu lalu untuk membuatnya lebih mudah dibaca. Mungkin bukan penggunaan terbaik waktu saya).

Steve Jackson
sumber
Terima kasih +1 untuk TiddlyWiki - saya telah menggunakannya sebelumnya tetapi tidak pernah berpikir saya dapat menggunakannya untuk dengan cepat "membuat cerita bersambung" pikir saya :)
treecoder
@ Grengeng - Saya mendapatkan banyak jarak tempuh dari itu. Saya menyimpan jurnal saya, log solusi, dan backlog di dalamnya. Saya menggunakannya untuk melakukan evaluasi kinerja. Saya melakukan banyak penelitian dan pengembangan di mana proyek dikerjakan selama beberapa minggu setiap tahun (sebelum demo, secara alami) dan kemudian ditangguhkan lagi. Saya akan tersesat jika saya tidak memiliki cara untuk mendukung otak saya. Saya suka TiddlyWiki karena ini masih pribadi dan saya tidak harus menulis ke tingkat formalitas yang saya inginkan untuk wiki perusahaan atau dokumen yang harus dapat dipahami oleh siapa pun.
Steve Jackson
jadi apakah Anda merekomendasikan versi desktop (yang default) atau ccTiddly - yang merupakan inkarnasi yang didukung server dari tiddlyWiki
treecoder
@ grreengit - Saya menggunakan versi desktop dan tugas cron untuk mendukungnya ke jaringan. Saya belum pernah menggunakan versi ccTiddly, tetapi sepertinya sebagian besar fungsinya dicakup oleh wiki proyek yang kami miliki untuk kolaborasi pada proyek. ccTiddly tampaknya mengenai salah satu item wishlist saya - kemampuan untuk melampirkan file ke tiddlers - tapi saya menempelkan tautan yang diperlukan.
Steve Jackson
0
  • Berpikir keras dalam dokumen log pengembang saat Anda pergi
  • brain-dump ke dalam log ketika Anda terganggu
  • pastikan Anda menuliskan hal berikutnya yang akan Anda lakukan

yang pertama adalah asuransi terhadap gangguan, mundur, dan mengulangi diri sendiri nanti, sedangkan yang kedua sangat penting untuk mengambil di mana Anda tinggalkan

Steven A. Lowe
sumber
0

Saya menyimpan komentar berjalan di notepad di sebelah saya. Saya mencoba melakukan ini pada file notepad tetapi untuk beberapa alasan itu tidak berfungsi seefektif menuliskannya. Jika Anda cukup terorganisir tentang apa yang Anda catat sebagai pekerjaan Anda, Anda secara efektif memiliki pikiran abstrak Anda untuk kembali.

temptar
sumber
0

Apa yang saya temukan sangat membantu (bahkan untuk "OK, sekarang saya pulang dan kembali bekerja besok") terus-menerus mencatat beberapa pemikiran utama dalam pikiran saya, dan kemudian melakukan hal-hal dari daftar itu.

Tapi itu pasti bergantung pada (i) secara aktif memproses daftar itu - minimal membersihkannya daripada berakhir dengan ratusan "daftar tugas" setengah jadi yang Anda maksud untuk kembali ke dan (ii) berlatih cukup Anda memiliki pengalaman untuk mengetahui apa yang perlu Anda tulis dan apa yang tidak Anda lakukan - tugas mana yang memiliki "tambahkan tombol bilah alat" dan detail desain yang dapat Anda buat ulang dari pikiran Anda lain kali, dan tugas apa yang telah Anda lakukan setengah dari perencanaan tanpa menyadarinya dan Anda perlu menuliskannya sendiri.

Juga, jelas, cobalah dan hindari gangguan yang tidak perlu; itu selalu baik untuk dapat melanjutkan lebih dari gangguan, dan akan selalu ada beberapa, tetapi jangan terlalu banyak mendorong.

Jack V.
sumber
0

Saya sebenarnya telah menyebabkan beberapa bug sebagai akibat terputus dengan tergesa-gesa dan tiba-tiba untuk istirahat makan siang di sebuah perusahaan sebelumnya. Saya akhirnya meminta beberapa menit lagi atau hanya pergi tanpa saya hanya untuk mereka menekan saya untuk bergabung, dan jadi saya meninggalkan kode setengah tertulis, setengah pemikiran, hanya untuk kembali ke kode satu jam kemudian dan kehilangan melacak dan membuat kesalahan.

Saya akhirnya mulai mengkompensasi dengan mencatat dan menulis daftar todo saat saya pergi dan hanya mempertahankan "tumpukan mental yang dangkal", sehingga untuk berbicara. TDD juga membantu karena tes mengungkapkan apa yang Anda coba lakukan dengan desain serta memastikan Anda melakukannya.

Saya juga telah mengembangkan bahasa yang berada di antara apa yang secara intuitif bagi saya seperti coding dan bahasa manusia. Terdiri dari suara seperti, " Nyargh! Bloobly-bloop! " Dan saya membuat suara-suara itu kadang-kadang jika orang mencoba untuk berbicara dengan saya saat saya sibuk. Walaupun mereka tidak mengerti suara-suara itu, itu mengomunikasikan bahwa saya dalam keadaan tidak dapat berkomunikasi dengan baik dengan manusia saat ini, pada saat itu mereka berjalan pergi dan memungkinkan saya untuk melanjutkan berpikir dan menulis kode.

Yang mengatakan, istri saya sudah terbiasa dengan gagasan bahwa dia mungkin berbicara kepada saya dan saya mungkin mengangguk dan sebagainya dan belum secara mental memproses satu kata pun katanya. Sepertinya saya bisa melihat mulutnya bergerak dan mendengar suara keluar tetapi itu tidak benar-benar diterjemahkan dengan baik ke dalam instruksi mesin. Dia telah belajar untuk memperhatikan respons saya ketika itu terjadi sementara saya tenggelam dalam pikiran.

Saya juga kadang-kadang setengah proses apa yang dia katakan dan hanya mendorongnya ke antrian bersamaan, seperti jika dia mengajukan pertanyaan kepada saya, pada titik mana saya tidak dapat sepenuhnya memprosesnya sampai saya telah mengeluarkan semuanya dari antrian mental saya (yang menggunakan sangat tidak efisien mekanisme penguncian untuk keamanan ulir). Jadi dia sudah terbiasa mengajukan pertanyaan kepada saya hanya dengan anggukan dan tanpa tanggapan atau tanggapan yang tidak masuk akal seperti "ya" atau "bloobly-bloop" untuk "apa yang ingin Anda lakukan malam ini?" hanya bagi saya untuk memprosesnya sepuluh menit kemudian dan menjawab pertanyaan seolah-olah saya baru mendengarnya beberapa saat yang lalu.

Saya juga tidak tahu tentang kalian, tetapi saya benar-benar linglung ketika saya tenggelam dalam pemikiran pemrograman. Saya akhirnya mencari kaus kaki saya sekali untuk waktu yang lama, lupa di mana saya meletakkannya. Entah bagaimana aku memasukkannya ke lemari es. Saya pikir saya sedang mencoba untuk mengambil minuman atau sesuatu dengan kaus kaki saya di tangan dan entah bagaimana menaruh kaus kaki di lemari es dan lupa untuk mengambil minuman. Di lain waktu, saya pergi ke tempat sampah setelah memarkir mobil saya dengan kunci mobil di tangan dan mencoba untuk melemparkan pembungkus yang saya miliki ke tempat sampah. Alih-alih, saya akhirnya membuang kunci mobil saya ke tempat sampah dan saya bahkan tidak menyadarinya sampai saya mencoba membuka kunci mobil dengan pembungkus plastik, di mana saya harus menyelam ke dalam sampah untuk kunci saya. Bagaimanapun, istri saya sudah terbiasa dengan hal-hal semacam ini dengan barang-barang saya muncul di tempat-tempat aneh.

[...] pacar Anda (atau pacar) baru saja datang

Hanya untuk bagian ini sebagai samping, kencan dan asmara sulit dengan pemrograman. Saya memiliki banyak hubungan di masa lalu di mana kencan berjalan dengan luar biasa sampai kami mulai hidup bersama dan mereka melihat sisi saya yang melamun sepanjang waktu sambil duduk sepanjang hari di depan komputer dan berjalan mondar-mandir sambil merespons dengan " bloobly-bloop! ", Dan kehilangan minat. Sangat sulit untuk menemukan seseorang dengan kesabaran untuk itu. Saya sangat beruntung dengan istri saya yang tahan dengan hal itu.


sumber