Lampiran emosional pada kode [tertutup]

26

Sebagai karyawan sebuah perusahaan, ketika Anda menulis kode, apakah Anda merasa memiliki keterikatan dengannya? Apakah Anda merasa memiliki kode tersebut? Atau apakah Anda menulisnya sepenuhnya terlepas dari itu tanpa khawatir tentang apa yang terjadi padanya setelah Anda pindah ke sesuatu yang lain?

EDIT: Saya tidak berbicara tentang menulis kode buruk dan kemudian menjalankan ...

John Shaft
sumber
Sangat tergantung pada budaya tempat kerja.

Jawaban:

33

Setelah 30 tahun sebagai kontraktor, itu beragam.

  1. Itu semua pakai. Saya sudah bekerja dengan ratusan klien. Saya tidak akan pernah melihat kode lagi. Mengapa menjadi terikat? Tidak ada rasa memiliki.

  2. Sangat terlihat. Ini lebih mahal daripada kode in-house, sehingga mendapat banyak pengawasan. Karena saya tidak akan ada untuk memeliharanya, itu mendapat banyak pengawasan. Panduan dan penyerahan kode sangat penting. Ada beberapa kebanggaan dalam pengerjaan. Tapi tidak ada rasa memiliki.

Rekor saya adalah 17 tahun produksi. 12 dari tahun-tahun itu tanpa pemeliharaan apa pun.

Saya tahu karena saya mendapat telepon. Mereka merevisi sistem akuntansi mereka dan ingin tahu bagaimana cara mengganti algoritma alokasi biaya pintar yang telah saya buat bertahun-tahun yang lalu. Saya melihat kode, dan file tidak berubah sejak peningkatan terakhir 12 tahun yang lalu. (Bukan perbaikan bug, AFAIK.)

Jangka waktu terpanjang berikutnya - yang saya tahu tentang - adalah 7 tahun operasi tanpa cacat. Namun, itu memiliki masalah Y2K yang serius dan mengharuskan beberapa pengerjaan ulang untuk menggunakan nama file yang memiliki 4-tahun tahun. Algoritma internal semuanya benar, tetapi file log akan muncul dalam urutan yang salah.

Sekali lagi, saya tahu itu sempurna karena file belum disentuh sejak rilis terakhir yang saya buat.

Jadi, ya, ada banyak kebanggaan dalam pengerjaan.

Tapi tidak ada "kepemilikan". Itu kode mereka, bukan milikku. Saya hanya membangunnya.

S.Lott
sumber
1
Jelas menunjukkan bahwa program yang sempurna pun perlu berubah karena dunia berubah.
10

Sebagai pengembang solo kurang lebih, takut harus mempertahankan apa yang saya tulis adalah pendorong utama di belakang saya berusaha untuk tidak menulis kode yang mengerikan.

John Straka
sumber
9

Di tempat kerja, beberapa kode adalah milik saya, dalam arti yang mirip dengan bagaimana kursi yang saya duduki adalah milik saya. Saya menulisnya, saya membuatnya sebaik mungkin, saya merasa posesif, orang-orang akan bertanya kepada saya tentang perubahan, dan orang-orang akan menyebutnya sebagai milik saya. Dan, seperti kursi saya, begitu saya meninggalkan perusahaan saya tidak akan pernah melihatnya lagi, dan saya tidak akan memiliki ikatan emosional lagi.

Kata "milikku" memiliki banyak variasi arti. "Istri saya" dan "sikat gigi saya" tidak sepenuhnya paralel.

David Thornley
sumber
4

Jika Anda menulis kode untuk diri sendiri, Anda dapat memiliki perasaan terhadapnya. Jika Anda menulis kode untuk bisnis, Anda harus dengan kejam membersihkan perasaan itu jika memungkinkan. Saya tidak dapat menghitung berapa kali saya melihat seorang programmer yang baik membuat diri mereka sedih dengan mendapatkan lebih dari kode emosional.

Katakan pada diri sendiri: "Saya membuatnya, itu bagus, tapi itu bukan milik saya dan saya bisa menghasilkan lebih banyak." Jika Anda mempercayainya , maka ketika 6 bulan hidup Anda menjadi usang karena seorang tenaga penjualan untuk produk yang lebih rendah memberi bos Anda waktu makan siang, Anda tidak kehilangan pekerjaan karena menjadi gila padanya.

Ingat mereka membayar Anda. Kita semua ingin melakukan hal-hal keren, tetapi jika mereka membayar kita untuk menggali lubang, lalu mengisinya lagi, itu hak istimewa mereka. Saya baru saja mengalami situasi di mana saya menulis aplikasi web, kemudian menghabiskan waktu berbulan-bulan menggabungkan fitur-fitur yang mengerikan, kemudian berbulan-bulan lebih banyak pengkodean kembali ke keadaan semula. Nilai "kerja" dua minggu terakhir saya tarik dari repo SVN saya, kemudian saya ulang dengan nomor versi yang baru. Dan saya baik-baik saja dengan itu.

Satanicpuppy
sumber
3

Tidak, tapi saya sangat benci harus memperbaiki bug yang diperkenalkan oleh orang lain dalam kode yang saya tulis semula. Saya akan lebih bahagia jika perubahan itu diberikan kepada saya sejak awal. Saya lebih membencinya ketika perbaikannya benar-benar di luar desain aslinya, misalnya dengan membuat ketergantungan melingkar dengan modul tingkat yang lebih tinggi.

kevin cline
sumber
0

Iya dan tidak.

Ya - Ini adalah sesuatu yang Anda buat dan karenanya Anda memiliki keterikatan, sama seperti seorang perancang mobil bangga atau malu ketika mereka melihat mobil yang mereka rancang di jalan.

Tidak - Sejauh kepemilikan, biasanya Anda menyerah sebagai imbalan dibayar untuk bekerja di perusahaan. Karyawan lini pabrik yang membuat mobil tidak mendapatkan kepemilikan di masing-masing mobil yang beroperasi karena mereka dibayar untuk waktu mereka.

jzd
sumber
0

Saya merasa sangat eksklusif tentang kode yang saya tulis; itu mewakili keputusan yang saya buat tentang bagaimana memecahkan masalah yang diberikan dan karenanya merupakan refleksi dari kemampuan saya untuk memikirkan masalah secara rasional dan menyusun solusi yang logis dan semoga elegan. Yang mengatakan, semua yang saya tulis di waktu perusahaan adalah milik perusahaan. Saya harap tidak ada yang kembali menggigit saya, dan saya lebih suka diminta untuk memperbaiki kode saya sendiri, tetapi jika tidak, maka tidak. (Dan saya dapat menambahkan bahwa orang yang menulis kode tiga bulan yang lalu dan meletakkan nama saya di atasnya dalam kontrol sumber adalah idiot).

PSU
sumber
0

Tidak semuanya. Setelah saya check in, itu bukan lagi "milikku". Saya akan menjadi orang yang tepat untuk pemeliharaan dan pemecahan masalah, secara alami, tetapi saya merasa tidak memiliki rasa kepemilikan terhadapnya.

Saya kenal beberapa orang yang merasa sangat berpihak pada kode mereka, ke titik di mana mereka merasa jengkel jika orang lain memperbaiki bug atau memodifikasinya tanpa menjalankannya terlebih dahulu. Saya tidak pernah merasakan hal itu. Yang saya tanyakan adalah jika Anda menemukan masalah dalam kode saya dan memperbaikinya, katakan padaku apa masalahnya dan bagaimana cara memperbaikinya sehingga saya tidak membuat kesalahan yang sama di masa depan.

John Bode
sumber
0

Saya suka kode yang saya tulis. Saya mengerti mereka dan menyesuaikannya sehingga orang lain juga akan. Ketika orang-orang mendatangi saya dan berkata, "Bung, kami masih menggunakan naskah yang Anda tulis untuk kami. Sangat stabil dan mudah dibawa-bawa", saya suka perasaan bangga dan kepemilikan.

Tidak ada salahnya terhubung dengan kode Anda jika Anda dapat melihat di mana itu akan berakhir yaitu. Jika semua di rumah dan Anda tahu siapa atau apa pemrograman Anda, maka saya benar-benar akan mengatakan itu adalah hal yang baik untuk mendapatkan terlampir. Karena Anda hanya akan suka menciptakan lebih banyak kepingan, lebih dari itu.

Di sisi lain (sepenuhnya sadar bahwa saya mungkin akan mengulangi apa yang dikatakan @ S.Lott) jika kode tersebut akan berakhir sebagai properti klien, maka tidak ada artinya mendapatkan sentimental atasnya. Ini seperti ... merawat anak anjing temanmu saat dia pergi berlibur. : - /

lampong
sumber
0

Kontraktor dan konsultan yang mungkin tidak pernah melihat kode mereka lagi mungkin bukan kandidat yang ideal untuk terikat secara emosional dengan kode mereka. Harus "meninggalkan" berulang-ulang mungkin akan melumpuhkan dorongan kreatif konsultan yang buruk setelah beberapa saat.

Jika kita melihatnya dari sudut pandang seorang karyawan dan bukan seorang kontraktor, saya akan mengatakan bahwa saya ingin semua anggota tim saya merasa memiliki kode yang mereka tulis dan dalam segala hal yang mereka ciptakan. Kepemilikan dan kebanggaan ini harus meluas ke seluruh tim. Perasaan bangga dan kepemilikan menciptakan keterikatan pada produk dalam pertanyaan dan menambahkan makna dan makna pada pekerjaan anggota tim. Saya telah melihat ini sangat meningkatkan kinerja dalam tim kecil hingga besar.

Apa yang harus dihindari dan yang tidak saya sukai adalah orang-orang yang tampaknya secara emosional terikat pada baris kode tertentu yang telah mereka tulis dan mempertahankannya ke kubur. Mereka tidak ingin perubahan dilakukan, mereka melihat ke bawah dan menolak ide untuk perubahan atau perbaikan dan mencoba membenarkannya dengan sesuatu yang terdengar kredibel. Apa yang sering timbul pada ini, dari pengalaman saya sendiri, adalah ketakutan akan perubahan dan ketakutan akan hal yang tidak diketahui. Sebenarnya bukan menyerahkan baris kode lama mereka yang menjadi masalah. Alih-alih itu harus mengambil sesuatu yang baru, kadang-kadang tidak ditulis sendiri, dan takut gagal dalam hal itu.

Lampiran "sakit" semacam ini pada kode adalah sesuatu yang saya berusaha keras untuk cegah. Tetapi koneksi emosional "sehat" ke produk, dan dengan ekstensi kode tertulis, adalah sesuatu yang saya dorong.

inquam
sumber
0

Ini adalah pertanyaan yang menarik dan saya setuju dengan salah satu posting di atas: Ya dan Tidak - tetapi untuk alasan yang berbeda.

Apakah saya semakin melekat pada kode? Pasti ya. Tapi saya tidak berpikir itu kode itu sendiri tetapi keseluruhan arsitektur dan aplikasi. Biasanya Anda harus melakukan banyak riset spesifik domain sebelum Anda benar-benar dapat memasukkan ke dalam kode apa yang diinginkan orang-orang bisnis (kecuali jika Anda menulis IDE - maka Anda pasti terjebak dalam rekursi).

Di sisi lain: Tidak ada banyak hal yang saya sukai lebih dari membuang bagian usang basis kode. Tidak masalah seberapa sulit penulisan itu. Perjalanan jauh lebih penting daripada produk (setidaknya untuk ego, tentu saja produk itu sendiri harus bekerja juga).

Apakah ada rasa memiliki? Yah itu tergantung pada situasi proyek. Ketika Anda tidak akan pernah melihat kode lagi (karena bagian Anda dalam proyek sudah berakhir dan Anda pindah) lalu mengapa bersikap romantis tentang hal-hal itu? Namun jika Anda terus mendukungnya (dengan cara apa pun) maka rasa keterikatan adalah hal yang baik! Ketika Anda peduli tentang produk yang Anda bangun maka kemungkinannya cukup tinggi Anda mencoba untuk memberikan artefak berkualitas tinggi.

Jadi semuanya saya mencoba untuk mengadopsi "hubungan" pragmatis dengan kode yang saya tulis.

perdian
sumber
0

Sial ya, saya pernah memukul rekan kerja karena dia cukup sombong untuk mengubah nama beberapa variabel.

Tidak terlalu. Saya dibayar untuk pengembangan perangkat lunak. Meskipun saya akui, melihat perbaikan bug yang dilakukan pada kode saya oleh pengembang lain berdampak pada ego.

Dante
sumber