Haruskah saya merilis kode sumber untuk memperbaiki bug

15

Saya memiliki bug dalam aplikasi yang sedang saya buat. Saya mengajukan pertanyaan pada SO dan salah satu pengguna meminta saya untuk mengirim atau mengirim semua kode kepadanya sehingga dia dapat melihatnya.

Saya benar-benar mengerti permintaan itu. Itu valid dan bisa dimengerti. Namun, saya ragu apakah saya harus melakukannya. Jelas, saya memberinya kunci kerajaan dan saya tidak akan meminta bantuan jika dia melakukan sesuatu yang berbahaya.

Saya juga ingin menambahkan yang saya maksud tidak-tidak hormat kepada pengguna di SO yang menawarkan bantuan mereka. Saya hanya menyiarkan kekhawatiran.

Saya ingin memperbaiki bug saya tetapi tidak ada jaminan bahwa orang ini akan dapat memperbaikinya.

Haruskah saya merilis seluruh kode sumber dan berharap yang terbaik? Atau simpan dan coba cari tahu sendiri?

Apa yang akan kamu lakukan?

webdad3
sumber
3
Pertanyaan sulit. Ditanyakan dengan baik.
yfeldblum

Jawaban:

44

Buat SSCCE (contoh singkat, lengkap, benar). Jika bug menghilang ketika Anda menghapus beberapa detail tambahan untuk SSCCE, maka Anda menemukannya.

Kalau tidak, Anda akan memiliki SSCCE yang Anda berikan atau posting yang secara ideal menghilangkan kode yang Anda khawatirkan untuk dibagikan.

jzd
sumber
1
Bagi mereka yang tidak terbiasa dengan "SSCCE": acronymfinder.com/SSCCE.html (abaikan definisi pertama "Karsinoma Sel Skuamosa Superfisial Esofagus"). Aha, menemukan tautan yang lebih baik: sscce.org
FrustratedWithFormsDesigner
Apa itu SSCCE? EDIT: Cukup tempel di jawaban Anda. :)
jprete
7
Membangun repro sekecil mungkin sangat bagus karena banyak alasan, tidak hanya Anda tidak memberikan kode Anda tetapi Anda mungkin menemukan bug dalam proses pengembangan contoh.
Steve
3
Dan SSCCE berfungsi ganda sebagai uji regresi, memastikan Anda tidak pernah mendapatkan bug itu lagi. Juga, sering Anda dapat membangun sebuah aturan untuk alat analisis statis dari SSCCEs, dengan demikian juga memastikan bahwa Anda tidak hanya mendapatkan bahwa bug tidak pernah lagi, tetapi juga tidak pernah mendapatkan yang sama bug lagi.
Jörg W Mittag
9

Saya tidak akan melakukannya, terutama jika Anda bekerja untuk orang lain, yang kemungkinan tidak akan menghargai Anda menyerahkan kode sumber pesaing potensial.

Tetapi bahkan jika itu adalah kode Anda sendiri, itu meleset dari titik Stack Overflow, yaitu memiliki indeks pertanyaan dan jawaban untuk semua orang untuk dibaca dan digunakan. Jadi Anda cukup memposting untuk mengajukan pertanyaan Anda, orang-orang menjawab pertanyaan seperti yang diposting, dan pembaca di masa depan memiliki pertanyaan dan jawaban yang dirangkum dengan baik di depan mereka.

Jika Anda tidak dapat memposting secara cukup untuk memahami bug, maka Anda harus mencoba dan mereproduksi bug dalam sekecil kode yang Anda bisa, dan mempostingnya. ( EDIT: Konsep Contoh yang Dapat Dikandung Sendiri Singkat yang disebutkan oleh jzd.) Jangan memposting kode sumber dalam jumlah besar, dan jangan hanya menyerahkan potongan besar aplikasi Anda ke orang asing di internet.

jprete
sumber
2

Jika itu kode yang Anda rencanakan untuk rilis sebagai bagian dari proyek open source, maka saya tidak akan terlalu khawatir. Kalau tidak, jika ini adalah kode yang Anda kerjakan di tempat kerja Anda dan itu berisi ide-ide kepemilikan milik orang lain, maka jangan berikan kepada siapa pun. Itu bisa membuat Anda mendapat banyak masalah.

Gunakan penilaian terbaik Anda!

Bernard
sumber
1

Jika itu adalah kode proyek pribadi Anda dan bukan proyek komersial, Anda tidak memiliki masalah dalam memberikan sumber Anda selama Anda mempertahankan salinannya (lebih baik dalam beberapa sistem kontrol versi kode sumber).

Dhanunjai
sumber
0

Diskrit

Itu tidak bersalah. Anda ingin memposting beberapa kode dan minta bantuan komunitas SO. Masalahnya adalah orang selalu menonton.

Saya ditulis untuk memposting skrip. Itu terjadi.

Poskan di rumah atau di kafe. Poskan secara terpisah. Anda harus dapat membuat beberapa catatan dan membawanya tanpa kesulitan.

Catatan: Saya sedikit kesal pada betapa naifnya saya. Jadilah cerdas!

DisEngaged
sumber
Saya pikir kata yang Anda cari adalah "bijaksana", mungkin Anda telah menghabiskan terlalu banyak waktu pemrograman! :)
Sedate Alien