ฉันสามารถอ้างสิทธิ์นี้เป็นโครงการของฉันเองได้หรือไม่หากฉันได้รับความช่วยเหลือทางออนไลน์ [ปิด]


9

โดยทั่วไปฉันยังใหม่กับการเขียนโปรแกรมเครือข่ายใน Python ดังนั้นฉันจึงไปสอนออนไลน์เพื่อหาข้อมูลเกี่ยวกับมัน ใช้สิ่งที่สอนในบทช่วยสอน (การสร้างซ็อกเก็ตการเชื่อมต่อพอร์ต ฯลฯ ) ฉันแก้ไขโค้ดเพื่อที่ฉันจะสร้างโปรแกรมที่คอมพิวเตอร์สองเครื่องสามารถส่งข้อความถึงกันได้

หากฉันต้องสมัครงานและแสดงให้ผู้สัมภาษณ์ของฉันทราบรหัสทางเทคนิคจะเป็นของฉันหรือไม่ มันยุติธรรมที่จะบอกว่าฉันไม่ได้แก้ไขรหัสโดยมาก อย่างไรก็ตามถ้าฉันดัดแปลงมันเป็นเกม tic-tac-toe ที่ผู้ใช้สองคนเล่นกันจากพีซีที่ต่างกันรหัสนั้นจะเป็นของฉันหรือไม่ ฉันแค่ไม่อยากดูเหมือนคนลอกเลียนแบบดังนั้นทำไมฉันถึงถาม


9
โรเบิร์ตพูดถูก แต่ต้องชัดเจน: นี่ไม่ใช่เชิงลบ "ฉันเริ่มต้นด้วยรหัสบางส่วนจากการสอน Python เริ่มต้นและเปลี่ยนเป็นสิ่งนี้!" ... จากมุมมองของงานสิ่งนี้สามารถมองได้ว่าดีหรือดีกว่าถ้าคุณเริ่มต้นจากศูนย์ หากคุณเริ่มต้นด้วยรหัสจากบุคคลอื่นซึ่งหมายความว่าคุณสามารถอ่านรหัสอื่น ๆ ได้นอกเหนือจากการขยายการปรับโครงสร้างการกำหนดเป้าหมายใหม่และอื่น ๆ การมีบางสิ่งที่ "ตัวคุณ" ของคุณคือสำหรับงานส่วนใหญ่ไม่ใช่สิ่งที่สำคัญ สามารถแสดงสิ่งที่คุณเริ่มต้นและสิ่งที่คุณทำจากมันให้ดียิ่งขึ้น!
BrianH

คุณเพิ่มหรือลบรหัสเท่าไร หากคุณเริ่มต้นด้วยรหัส 100 บรรทัดจากบทช่วยสอนและมี 110 บรรทัด - อาจไม่ใช่ หากคุณมี 1,000 เส้นใช่มันเป็นของคุณ แต่พูดคุยเกี่ยวกับวิธีที่คุณได้รับและพูดถึงตำแหน่งที่คุณได้รับความช่วยเหลือ (ใช่ฉันรู้ว่ารหัสบรรทัดไม่ได้เป็นตัวชี้วัดที่ยอดเยี่ยม แต่สามารถให้แนวคิดได้)

1
ฉันลงคะแนนให้ปิดคำถามนี้เป็นนอกหัวข้อเนื่องจากเป็นคำถามเกี่ยวกับจริยธรรมที่ไม่ได้อยู่ในหัวข้อสำหรับโปรแกรมเมอร์
durron597

คำตอบ:


11

เลขที่

แต่คุณสามารถอ้างสิทธิ์ได้ว่าคุณแก้ไขโค้ดเพื่อให้คุณสร้างโปรแกรมที่คอมพิวเตอร์สองเครื่องสามารถส่งข้อความถึงกันได้ หรือคุณสามารถอ้างว่าคุณดัดแปลงมันเป็นเกม tic-tac-toe ที่ผู้ใช้สองคนเล่นกันจากพีซีที่แตกต่างกัน

เพียงแค่แสดงจำนวนงานที่คุณใส่เข้าไป คุณไม่สามารถอ้างสิทธิ์ความเป็นเจ้าของโครงการบางอย่างบนอินเทอร์เน็ตหากคนอื่นทำส่วนหนึ่งของงาน


1

ฉันไปกับเส้นคลาสสิก"มันขึ้นอยู่กับ"

อย่างที่คุณพูดไปแล้วว่าคุณไม่ได้ปรับเปลี่ยนอะไรมากฉันอยู่ฝั่ง Roberts อย่างเต็มที่ มันไม่ใช่โครงการของคุณ

แต่ในอีกด้านหนึ่ง: เรานักพัฒนาทุกคนชอบที่จะพูดคุยวิจัยและบางครั้งก็คัดลอกวางสำหรับโครงการของเรา การเล่นซอร์เดอร์กับรหัสอื่น ๆ เป็นเรื่องธรรมดา หากคุณแก้ไขมันมากมายให้ใช้ความพยายามจัดหาคุณสมบัติใหม่หรือแนวทางที่แตกต่างเกี่ยวกับปัญหานั่นคือรหัสของคุณ

เพียงแค่ยึดถือความจริงเกี่ยวกับปริมาณงานที่คุณทำด้วยตัวเองอย่างแท้จริงและฉันแน่ใจว่าไม่มีใครจะเรียกคุณว่าเป็นผู้ลอกเลียนแบบ


1

หากสิ่งที่คุณทำคือแก้ไขรหัสของใครบางคนเพื่อทำสิ่งที่คุณต้องการมันจะเป็นการไม่สุจริตที่จะอ้างว่ารหัสของคุณคือ "ของคุณ" แต่เป็นโปรแกรมที่คุณสร้างขึ้นตามรหัสที่มีอยู่

ตอนนี้คุณอาจสังเกตเห็นว่าโปรแกรมเมอร์หลายคนใช้รหัสประชาชนอื่น ตลอดเวลา. ไลบรารี่และ API นั้นเป็นวิธีที่เป็นทางการในการใช้รหัสที่บางคนสร้างขึ้นในโครงการของคุณเอง แม้ว่าสิ่งที่คุณทำไม่เหมือนกับการใช้ไลบรารีหรือ API แต่ก็มีผลเหมือนกัน

ในกรณีของโปรแกรม P2P อย่างง่ายคุณสามารถอ้างได้ว่าคุณเขียนแอปพลิเคชันการส่งข้อความที่ใช้ประโยชน์จากการใช้งานโปรแกรมเมอร์อื่นของเว็บโปรโตคอลง่าย ๆ คุณสามารถไปข้างหน้าและเรียกโปรแกรมของคุณคุณควรให้เครดิตกับใครก็ตามที่เขียนส่วนที่ยืมมา และจะเป็นการดีที่สุดถ้าเพิ่มข้อคิดเห็นลงในโค้ดที่อ้างอิงแหล่งที่มาดังนั้นคนอื่น ๆ ก็สามารถค้นหาได้ถ้าจำเป็น

และในกรณีของเกมคุณเขียนเกม คุณสามารถอ้างสิทธิ์นี้เป็นรหัสของคุณ เกมนี้ใช้ประโยชน์จากชุดของฟังก์ชั่นที่คุณได้รับจากแหล่งอื่นเพื่อเปิดใช้งานฟังก์ชั่นผู้เล่นหลายคน อีกครั้งคุณควรตั้งแหล่งที่มาของรหัสอย่างน้อยที่สุดในความคิดเห็นในรหัสของคุณ อย่างไรก็ตามในสถานการณ์เช่นนี้คุณอาจหลีกเลี่ยงที่จะไม่บอกเรื่องนี้กับผู้อื่นอย่างชัดเจนนอกรหัสเพราะคุณเขียนเกมจริงๆ

นักพัฒนาหลายคนพึ่งพาห้องสมุดเพื่อจัดการกับปัญหาที่ซับซ้อนกว่าที่พวกเขาเผชิญ หลายคนใช้โปรโตคอลเครือข่ายกราฟิกและคณิตศาสตร์ขั้นสูงดังนั้นจึงมีห้องสมุดที่ทำสิ่งต่าง ๆ เหล่านี้ได้ดี การใช้รหัสประเภทนี้ไม่เพียง แต่ยอมรับได้อย่างสมบูรณ์ แต่ยังเป็นเรื่องปกติ

ถ้าคุณพูดว่า "นี่เป็นไคลเอนต์ IM" หรือ "นี่คือวิดีโอเกม" ไม่มีใครจะแปลกใจถ้ารหัสเครือข่ายมาจากบุคคลที่สาม อย่าอ้างว่าคุณเป็นผู้เขียนรหัสทุกส่วน แต่เพียงผู้เดียวและคุณควรจะเข้าใจ

อย่างไรก็ตามคุณควรพิจารณาถึงความเป็นไปได้อื่น ๆ : รหัสที่เป็นปัญหาได้รับการคุ้มครองตามข้อกำหนดการใช้งานหรือไม่? ถึงจุดนี้ฉันได้พูดถึงโค้ดที่ทำให้ใช้ได้โดยไม่มีเงื่อนไขหรือเงื่อนไขที่เปิดกว้างมาก แต่ถ้าผู้เขียนมีบางคำที่เฉพาะเจาะจงมากขึ้นตามพวกเขา หากพวกเขาต้องการให้รหัส o มีวัตถุประสงค์เพื่อการศึกษามากกว่าการใช้มันในขีดความสามารถใด ๆ ก็ตามที่เกินกว่าจะไม่เป็นไร มีข้อ จำกัด ทุกประเภทที่พวกเขาอาจวางบนรหัสนั้นดังนั้นโปรดระมัดระวังเกี่ยวกับวิธีการใช้งานของคุณ


นี่คือทั้งหมดนอกเหนือจากจุดยกเว้นวรรคสุดท้าย การใช้รหัสซ้ำผ่านห้องสมุดนั้นค่อนข้างแตกต่างกัน (ตามหลักจริยธรรมและถูกกฎหมาย) จากการใช้รหัสซ้ำผ่านการคัดลอกและวาง
amon

ไม่จริงๆเนื่องจากโดยพื้นฐานแล้วคอมไพเลอร์เป็นเพียงการคัดลอก / วางอย่างไรก็ตาม ไม่มีความแตกต่างที่แท้จริงในตอนท้ายพวกเขาเป็นเพียงลำดับของตัวประมวลผล เท่าที่ "จริยธรรมและถูกกฎหมาย" นั่นคือสิ่งที่ย่อหน้าสุดท้ายของฉันเป็นเรื่องเกี่ยวกับ ตราบใดที่ผู้สร้างดั้งเดิมไม่เป็นไรกับการใช้รหัสของคุณมันก็เหมือนกับการใช้ห้องสมุด
zeel
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.