Saya sedikit badut sehingga ide tentang telur paskah masih menarik bagi saya. Saya telah menambahkan mereka dalam kode saya sebelumnya tetapi kelompok teman saya memiliki lelucon menggunakan CTRL-FU untuk memicu telur.
Sekarang saya juga sedikit paranoid tentang kinerja jadi saya suka menghapus kelebihan jika memungkinkan. Ini sangat bertentangan dengan telur paskah karena mereka 100% kode berlebihan.
Argumen apa yang ada terhadap telur paskah? Juga, adakah argumen untuk mendukung telur paskah?
Jawaban:
Seperti biasa jawabannya adalah "itu tergantung".
Telur paskah adalah salah satu cara mendorong eksplorasi program "dunia". Dalam permainan itu agak jelas - Anda naik ke puncak gunung tertinggi dan Anda menemukannya (misalnya), tetapi untuk aplikasi lain Anda harus menggunakan opsi tersembunyi sebagai Telur Paskah Anda. Namun, mereka dianggap remeh oleh beberapa orang sehingga jika Anda menulis aplikasi bisnis yang sangat serius, Anda tidak ingin mengecewakan pengguna Anda dengan menghadirkan layar hamster bernyanyi (atau apa pun) ketika mereka menemukan kombinasi kunci ajaib .
Memiliki Telur Paskah dalam aplikasi seharusnya tidak berdampak buruk pada kinerja. Jadi, kecuali Anda mem-parsing input keyboard untuk operasi normal aplikasi Anda memiliki Ctrl+ FUsebagai pemicunya adalah ide yang buruk. Selama kode hanya dieksekusi jika ditemukan sehingga tidak ada penalti runtime. Satu-satunya hukuman adalah peningkatan ukuran program - yang mungkin atau mungkin tidak menjadi masalah. Jika ukuran program adalah masalah maka pasti tinggalkan saja.
Namun, memiliki kode tambahan ada masalah dukungan. Anda masih perlu mendukung kode dan memastikan kode itu berfungsi dan tidak menyebabkan masalah saat dijalankan. Hal terakhir yang Anda inginkan adalah aplikasi Anda mogok tepat saat pengguna menemukan Telur Paskah!
sumber
Saya akan mengatakan itu sangat tergantung pada jenis perangkat lunak yang Anda kembangkan.
Imho easter eggs lebih mungkin diterima (atau bahkan dihargai) di dalam game daripada di perangkat lunak bisnis. Bahkan Microsoft telah memasukkan beberapa Telur Paskah ke dalam produk mereka, tetapi cukup banyak yang menghentikannya sekarang. Alasan mengapa Microsoft berhenti memasukkan Telur Paskah dalam berhubungan erat dengan kemungkinan alasan terhadap Telur Paskah: masalah keamanan. Sebagaimana diuraikan dalam artikel Wikipedia yang relevan, Easter Eggs biasanya (setidaknya untuk pengguna / klien) bagian tidak berdokumen dari kode yang dapat membuatnya percaya bahwa produk itu lebih terbuka untuk serangan atau dengan cara lain tidak dapat dipercaya. Lebih lanjut, tidak semua kode Telur Paskah diuji dan diaudit dengan tingkat kode "mission critical" yang sama. Hal itu dapat menyebabkan kelemahan atau lubang loop yang belum ditemukan di basis kode yang mungkin merupakan asal dari serangan atau eksploit malware.
Namun, tidak semua Telur Paskah "buruk" dan perlu diubah dengan kode produk yang sebenarnya. Ada banyak cara untuk menyajikan Telur Paskah, terutama dalam permainan di mana kode agak terpisah dari konten (game / grafik / mesin skrip vs skrip aktual atau file level). Cara-cara ini berkisar dari tekstur / objek khusus dan komentar audio dari protagonis (misalnya seperti yang digunakan dalam DN3D: Doom , Terminator , Indiana Jones , Star Trek ) hingga level rahasia ( "tidak ada level sapi" ) hingga dialog yang menunjukkan kapan objek tertentu / lokasi di antarmuka pengguna diklik, dan banyak lagi. Tentu saja tidak masing-masing cocok untuk setiap jenis produk.
Cara yang baik untuk memasukkan Telur Paskah ke dalam produk Anda adalah dengan memasukkan diri Anda entah bagaimana (dan tidak hanya di bagian kredit). Blizzard melakukan ini dengan sangat baik dengan StarCraft 2 . Satu unit potret sebenarnya adalah wajah salah satu pengembang. Sesuatu yang tidak begitu jelas seperti itu biasanya cocok untuk berbagai jenis perangkat lunak karena tidak bergantung pada pengetahuan media atau jenis humor tertentu. Misalnya, mungkin Anda dapat memasukkan diri Anda sebagai karakter dalam konteks produk. Bergantung pada produk, ini mungkin bahkan tidak memerlukan kesempatan untuk kode atau hanya yang sangat sederhana.
Telur Paskah bagus sekali tetapi tidak diharuskan. Penerapan Telur Paskah tidak boleh mengurangi produk yang sebenarnya dan presentasinya harus sesuai dengan target audiens dari produk akhir. Telur Paskah dalam aplikasi "serius" atau produk yang ditargetkan untuk orang non-dewasa tidak boleh termasuk humor orang dewasa atau konten seksual, tidak peduli seberapa lucu atau tidak berbahaya kelihatannya. Ini tidak hanya mengarah pada konsekuensi hukum, tetapi juga mempengaruhi jangkauan pemasaran perangkat lunak (peringkat USK / PEGI / ESRB , misalnya).
sumber
Telur paskah adalah umum bahkan dalam rilis perangkat lunak komersial utama di tahun 80-an dan 90-an. Sebagian besar mereka lucu dan relatif sedikit orang yang terganggu oleh mereka. Saya pikir mereka kurang umum hari ini karena tiga alasan:
Seperti semua lelucon praktis, itu lucu sampai ada orang yang marah. Jika telur paskah Anda memiliki bug yang menyebabkan kehilangan data atau masalah kinerja, Anda mungkin harus menjelaskan kepada sekelompok pengacara bahwa Anda sebenarnya tidak mendistribusikan "malware".
Humor sangat, sangat, sulit untuk dilakukan dengan benar, dan jika Anda melakukannya dengan salah Anda akan menyinggung pelanggan yang membayar yang kemudian akan berhenti membayar untuk perangkat lunak Anda dan yang akan menulis banyak surat jahat kepada pers tentang betapa buruknya, belum matangnya perusahaan tempat Anda bekerja untuk. Contoh telur paskah yang dipicu oleh Ctrl-FU adalah contoh sempurna. Ini mungkin lucu secara histeris untuk teman-teman Anda yang berusia 17 tahun, tetapi ini adalah aturan pemasaran ke-0 untuk tidak pernah memberi tahu pelanggan Anda "FU", bahkan bercanda. Perhatikan bahwa telur paskah dalam perangkat lunak komersial besar TIDAK PERNAH mengolok-olok pengguna, hanya pesaing.
Dalam kata-kata abadi Peter Tork of the Monkees dalam film Head : "Tidak ada yang meminjamkan uang kepada seorang pria dengan selera humor." Jika Anda membeli bagian penting dari infrastruktur perangkat lunak, rasa humor di penulis tidak meyakinkan. Selain itu, mengapa mereka menghabiskan waktu menulis telur paskah ketika mereka bisa memperbaiki banyak bug keamanan mereka?
Larry Osterman memiliki posting blog yang cukup terkenal bertahun-tahun lalu yang membahas mengapa grup OS di Microsoft tidak lagi mengizinkan telur paskah .
sumber
Telur paskah adalah rahasia kecil yang ditinggalkan oleh pembangun. Apakah itu merugikan pengguna akhir? Tidak.
Banyak perangkat lunak terkenal dan populer telah memasukkan telur paskah tersembunyi . Telur paskah juga telah digunakan untuk menampilkan perasaan pengembang pada subjek sensitif tertentu dengan cara yang agak elegan.
Adapun optimasi kode, selama telur paskah tidak terlalu intensif (halo simulator penerbangan ) itu tidak boleh melukai kinerja dengan cara yang bermakna.
sumber
Meskipun saya suka Telur Paskah dalam perangkat lunak, penting untuk diingat bahwa garis antara telur yang tertinggal dalam produk untuk bersenang-senang dan backdoor berbahaya bisa sangat tipis dari sudut pandang hukum. Misalnya, apakah perlu untuk menunjukkan bahaya? Apakah seseorang perlu membuktikan niatnya untuk melukai?
Menimbang bahwa pemahaman pengadilan tentang komputer dan perangkat lunak cukup menyedihkan (sebagaimana dibuktikan oleh beberapa paten perangkat lunak), memperdebatkan kasus semacam itu akan membeli beberapa pengacara rumah liburan yang menyenangkan di Aspen. Ketika seseorang mempertimbangkan berbagai lingkungan hukum (seperti DMCA) di mana perangkat lunak diterbitkan dan didistribusikan di seluruh dunia, ia juga dapat membeli rumah liburan di Pegunungan Alpen.
Sebagai insinyur yang direkrut, kami menjamin tidak ada salahnya bagi perusahaan kami. Litigasi dapat menjadi bahaya, dan litigasi kemungkinan besar jika kami mengirimkan perangkat lunak yang dikontrak kepada klien lain, terutama pemerintah atau perusahaan besar. Jadi, saya pribadi akan memilih untuk berbuat salah di sisi yang aman.
Ingat, insinyur ada untuk menggunakan logika untuk tujuan yang baik, sementara pengacara ada untuk memutar logika untuk kejahatan. Itu sebabnya mereka dibayar jauh lebih banyak daripada kita.
sumber
Banyak yang mengatakan Telur Paskah lebih cocok untuk permainan, tetapi saya pikir mereka memiliki kegunaan dalam aplikasi bisnis. Terlalu banyak orang yang membuat serangkaian resep untuk menggunakan aplikasi bisnis yang tidak pernah mereka lihat di area aplikasi lainnya. Maksud saya ada seluruh bagian dari aplikasi yang tidak pernah mereka lihat jika itu bukan bagian dari pelatihan mereka dan itu bisa saja berguna bagi mereka. Saat ini saya mengerjakan aplikasi dengan 75 laporan dan pengguna meminta informasi dan mereka bahkan tidak pernah menjalankan satu laporan. Mereka membutuhkan beberapa insentif untuk menebus kurangnya keingintahuan mereka (Dalam pembelaan mereka, beberapa pengguna takut merusak sesuatu.).
sumber
Saya menggunakan telur Paskah untuk membantu saya debug dan coding. Oleh karena itu telur Paskah yang saya masukkan memiliki tujuan dan mungkin tidak dianggap sebagai telur Paskah.
sumber