คุณควรเก็บสำเนาของรหัสทั้งหมดที่คุณเขียนหรือไม่? [ปิด]


197

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

เห็นได้ชัดว่าผู้ชายคนนี้ถูกส่งไปยังคุกเพื่อคัดลอกซอร์สโค้ด


13
อาจเป็นปัญหาทางกฎหมายที่ร้ายแรงหากคุณขาย / นำกลับมาใช้ใหม่ให้กับ บริษัท คู่แข่ง
EL Yusubov

19
โปรดทราบว่าในบทความที่เชื่อมโยงมันเป็นกรณีที่ค่อนข้างเฉพาะในขณะที่เขาเดินออกไปด้วยรหัสที่น่าจะครอบคลุมโดย NDAs (พิจารณาลูกค้า) และแม้ว่ามันจะไม่ได้ฉันไม่แน่ใจว่าฉันจะใช้โอกาส ของการเดินออกไปพร้อมกับรหัสที่พัฒนาขึ้นสำหรับธนาคารกลางสหรัฐ ! คุณต้องไม่มีทุกอย่างถ้าคุณคิดว่าไม่มีอะไรผิดพลาดกับสิ่งนั้นและอย่างน้อยก็จะไม่มีคนที่มีอิทธิพลสักสองสามคนที่ไม่ชอบความคิดนี้เลยถ้าพวกเขาเคยได้ยินว่าคุณได้นำรหัสมากับคุณ .
haylem

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

37
@DavidPeterman - ทำไมถึงไม่นายจ้างที่จ้างให้คุณเป็นเจ้าของทุกสิ่งที่คุณทำเพื่อพวกเขา? คุณคิดว่าส่วนหนึ่งในบ้านของคุณเป็นของช่างไม้หรือไม่?
Reactgular

10
@MathewFoscarini ฉันเข้าใจสิ่งที่คุณพูด แต่ฉันกำลังพูดถึงอัลกอริทึม นั่นก็เหมือนกับการพูดว่าช่างไม้ไม่ได้เป็นเจ้าของบันไดที่เขาสร้างบ้าน
เดวิดปีเตอร์แมน

คำตอบ:


303

แต่มันเป็นเรื่องผิดปกติหรือเปล่าที่ผู้พัฒนาจะเก็บสำเนาส่วนตัวของรหัสที่พวกเขาเขียน (เพื่อใช้อ้างอิงในอนาคต)

ฉันไม่รู้ว่ามันเป็นเรื่องธรรมดา แต่ธรรมดาหรือไม่ก็ยังคงเป็นความคิดที่ดี

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

  1. ไม่ใช่รหัสของคุณที่จะรับ

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

  3. หากพวกเขามีเหตุผลใด ๆ นายจ้างใหม่ของคุณไม่ต้องการให้ส่วนใดส่วนหนึ่งของรหัสที่คุณได้รับจากอดีตนายจ้างของคุณ ยิ่งคุณ "อ้างอิง" เพื่อทำงานที่คุณทำกับนายจ้างคนก่อนหน้ามากเท่าไหร่คุณยิ่งทำให้นายจ้างคนใหม่ตกอยู่ในอันตรายทางกฎหมาย

  4. ถ้าคุณเผลอปล่อยให้นายจ้างคนใหม่ที่คุณยังได้รับสำเนาของสิ่งที่คุณทำกับนายจ้างเก่าเจ้านายของคุณที่ใหม่จะรู้ตัวว่าคุณจะเอาสำเนารหัสของพวกเขาเมื่อคุณไปหาคนอื่น งาน. นั่นอาจจะไม่ดีกับเขาหรือเธอ

  5. แม้ว่าคุณจะไม่ได้เปลื้องผ้าของจริงหรือเพียงแค่ไอเดียที่คลุมเครือจากสิ่งของเก่าของคุณการมีของเก่าอยู่ในความครอบครองของคุณอาจทำให้เกิดความสงสัยว่าคุณอาจใช้มันเพื่ออะไรบางอย่าง ลองนึกภาพว่านายจ้างเก่าฟ้องนายจ้างคนใหม่และในฐานะที่เป็นหนึ่งในไม่กี่คนที่ย้ายจากเมืองเก่ามาเป็นคนใหม่คุณก็พบว่าตัวเองถูกปลดออกจากตำแหน่ง ไม่มีใครในคุณที่คัดลอกรหัสของ Old ไปไว้ในผลิตภัณฑ์ของ New แต่ทนายความที่อยู่ต่อหน้าคุณถามว่า: "Mr. SuperFoo ทำคุณหรือให้คุณตลอดเวลาตั้งแต่ปล่อยให้นายจ้างเก่ามีสำเนาที่คุณหรือ มีใครอีกบ้างที่เขียนขณะทำงานที่ Old Employer? "

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

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

  8. แม้ว่าผู้ว่าจ้างเก่าจะรู้ว่าคุณได้รับรหัสและตกลงกับคุณคุณก็ยังไม่ต้องการมัน! สิ่งเดียวที่จะเกิดขึ้นกับมันก็คือการโทรศัพท์ตี 3: "เฮ้มี SuperFoo คุณเป็นอย่างไรบ้างฟังคุณมีสำเนาของเราใช่มั้ยดูสิเรามีปัญหากับ ระบบและเราได้ จำกัด ให้เป็นไฟล์คู่ที่คุณเขียนว่าคนใหม่ของเราไม่เข้าใจฉันรู้ว่ามันสาย แต่คุณช่วยพาเขาผ่าน SuperDuper.pl ได้ไหม? "

ปล่อยมันไป. คุณไม่ต้องการมัน


7
ยิ่งกว่านั้นถ้าสื่อที่คุณเก็บเนื้อหาถูกทำให้สูญหายหรือถูกขโมยมันเป็นปัญหาอย่างมาก เพื่อบอกความจริงฉันต้องการหลีกเลี่ยงการเชื่อมต่อ VPN หรือแหล่งข้อมูลใด ๆ บนพีซีส่วนบุคคลของฉันหากเป็นไปได้ พีซีของคุณอาจเป็นส่วนหนึ่งของ botnet โดยที่คุณไม่รู้ตัวทำไมถึงเสี่ยง
Coder

8
คำตอบที่ยอดเยี่ยม! จริง ๆ แล้วฉันเสนอสำเนาของรหัส (หรือการเข้าถึงอย่างต่อเนื่อง) เมื่อออกจากนายจ้างเก่าของฉัน ฉันปฏิเสธด้วยเหตุผลใกล้เคียงกับหมายเลข 8 หลังจากทั้งหมดมีเหตุผลในการลาออกจากพวกเขา ถ้าฉันยังอยากจะแยกสำหรับพวกเขาผมอยู่ :)
แฮรัลด์

79
+1: คุณไม่ต้องการมัน ส่วนที่ยากคือการหาว่าจะเขียนอะไรไม่ใช่การเขียนจริงๆ หากคุณเขียนมันเป็นครั้งที่สองมันอาจจะดีขึ้นกว่าเดิม
วินไคลน์

6
เมื่อฉันแก้ปัญหาด้วยรหัสของฉันฉันมักจะเขียนวิธีแก้ปัญหาไปยังบล็อก ไม่ใช่ซอร์สโค้ดจากงานของฉัน แต่โค้ดทั่วไปที่ตามรูปแบบเดียวกัน (ง่าย ๆ หนึ่งบรรทัดหรือสองสามบรรทัดเพื่อให้บรรลุเป้าหมาย - ไม่ใช่รหัสพฤติกรรม) ฉันคิดว่านี่เป็นวิธีการที่ยอดเยี่ยมสำหรับการจัดเก็บสิ่งที่ฉันเรียนรู้จากงานก่อนหน้านี้ +1 สำหรับ bullet # 7!
Gaʀʀʏ

11
ไม่ควรมีเกณฑ์บางชนิดสำหรับจำนวนรหัสที่มีคุณสมบัติใช่ไหม ถ้าฉันใช้for (int i=0; i < N; ++i)ในรหัสของฉันมันก็ไม่ผิดกฎหมายที่จะใช้ที่อื่นใน บริษัท อื่น ...
vsz

159

ฉันเก็บสำเนาของรหัสที่ฉันเขียนและนำไปใช้ระหว่างงานเสมอ นายจ้างที่ตามมาไม่เคยได้เห็น / เรียกใช้รหัส แต่ฉันใช้มันเป็นข้อมูลอ้างอิงที่บ้าน: 'อ๋อใช่ฉันไม่ได้ทำสิ่งที่คล้ายกับในโครงการ X'

ถูกกฎหมายหรือไม่ ขึ้นอยู่กับเขตอำนาจและสถานการณ์ แต่เป็นเรื่องปกติ ฉันไม่มีปัญหากับการให้ศีลธรรมจรรยาคุณไม่ได้ให้รหัสแก่นายจ้างใหม่เพียงอย่างเดียว ... มันเป็นการเตือนความจำและการสาธิตสิ่งที่คุณได้ทำแทนที่จะเป็นแหล่งข้อมูลฟรีสำหรับนายจ้างของคุณ

[ด้านพลิกของเรื่องนี้เป็นความละอายที่หลีกเลี่ยงไม่ได้ที่เกิดขึ้นเมื่อคุณมองดูโค้ดที่เก่ากว่า: 'ฉันคิดอะไรอยู่ ?? ทำไมในโลกที่ผมทำมันที่ทาง ?? ']


35
+1 และมันไม่เกี่ยวข้องแม้แต่กับว่าถูกกฎหมายหรือไม่ พวกเราหลายคนทำมันต่อไป ไม่เป็นอันตรายต่อนายจ้างคนก่อนของคุณ (คุณไม่ได้ขายรหัสให้กับคู่แข่ง) และไม่สามารถควบคุมได้ ในทางถ้าคุณ "จำ" วิธีที่คุณแก้ไขปัญหาสำหรับนายจ้างก่อนหน้านี้คุณ "ขโมย" ความลับนี้สำหรับพวกเขา - ในทางที่ไม่สามารถควบคุมได้จนกว่าพวกเขาจะคิดค้นการควบคุมจิตใจ;)
Andres F.

89
@AndresF นั่นไม่ใช่อะไรนอกจากการหาเหตุผลเข้าข้างตนเอง รหัสเป็นทรัพย์สินของนายจ้างเก่าของคุณความทรงจำของคุณไม่ได้ หากคุณจำได้ว่าคุณแก้ปัญหาอย่างไรคุณไม่จำเป็นต้องใช้รหัสดังนั้นประเด็นในการดำเนินการคืออะไร
คาเลบ

10
+1 สำหรับการสร้างข้อโต้แย้งทางศีลธรรม โดยส่วนตัวแล้วฉันทำตามนี้ส่วนใหญ่เป็นเพราะส่วนใหญ่ของรหัสของฉันไม่ได้ระบุโดเมน ฉันจำได้ว่าฉันแก้ไขบางสิ่งได้อย่างไร แต่ไม่จำเป็นต้องเป็นความแตกต่างของมัน
Telastyn

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

13
@Caleb ไม่ว่าผู้พัฒนาจะใช้โค้ดเป็นจำนวนมากหลังจากที่พวกเขาออกไป นี่เป็นการกระทำที่แยกจากการใช้รหัสนี้เพื่อแข่งขันหรือทำร้ายนายจ้างเก่าของคุณและมักจะถูกนำไปอ้างอิงเช่นเดียวกับใน "ฉันจะแก้ไขปัญหานี้ได้อย่างไร / กำหนดค่าซอฟต์แวร์นี้มาก่อนหรือไม่ คุณต้องการ แต่ก็ยังเป็นวิธีปฏิบัติที่แพร่หลายและไม่ทำร้ายใครจริง ๆ คุณสามารถฝังหัวกลุ่มของคุณลงบนทรายหรืออ้างว่ามันผิด แต่ก็ยังเกิดขึ้นโดยเฉพาะกับ outsourcing / offshoring - ถ้าคุณคิดว่ามันไม่ เกิดขึ้นคุณอยู่ในความประหลาดใจ!
Andres F.

51

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

มันคือทั้งหมดที่เกี่ยวกับการจัดการความเสี่ยงของคุณ เห็นได้ชัดว่าคุณเก็บสิ่งต่าง ๆ จากนายจ้างคนก่อนหน้านี้ซึ่งคุณสามารถใช้ที่อื่นได้ นี่คือเหตุผลที่พวกเขาทำให้เครื่องหมายของคุณไม่ได้แข่งขันในช่วงสิบเดือน / ปีหลังจากที่คุณทิ้งไว้อย่างไรก็ตามการมีรหัสครอบครองทำให้คุณเสี่ยงต่อคนที่กล่าวหาว่าคุณคัดลอกรหัส บริษัท อย่างโจ๋งครึ่ม (แม้ว่าคุณจะไม่ได้ และใช้ความคิดเดียวกัน) การมีรหัสที่คุ้มค่าในการจัดการความเสี่ยงนี้หรือไม่?

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


9
ไม่ใช่ความคิดที่ดีเว้นแต่จะมีการตรวจสอบความปลอดภัยอย่างเข้มงวดที่สำนักงานของคุณ (เช่นไม่อนุญาตให้ใช้อีเมลและ pendrives) ไม่มีใครไปค้นหาผ่านคอมพิวเตอร์ที่บ้านของคุณอยู่แล้วและเป็นที่เข้าใจกันว่านักพัฒนานำความรู้ออกจากงานที่ผ่านมา คุณไม่สามารถป้องกันได้และจะไม่มีเหตุผลในการทำเช่นนั้นไม่ว่าจะเป็นรหัส "จดจำ" หรือคัดลอกคำต่อคำ สิ่งที่คุณสามารถทำได้ในฐานะนายจ้างไม่มีการบังคับใช้คำสั่งการแข่งขันหรือ NDA หรือกลไกทางกฎหมายใด ๆ ที่มีในประเทศของคุณ
Andres F.

14
@ มัลลิสต์ไม่คุณทำไม่ได้ IANAL แต่เป็นที่ยอมรับกันดีว่าอย่างน้อยในสหรัฐอเมริกาผลิตภัณฑ์ทำงานที่มีคนจ่ายให้คุณสร้างเป็นทรัพย์สินของพวกเขาไม่ใช่ของคุณ ดูงานให้เช่าใน Wikipedia
คาเลบ

5
@ มัลลิสต์อีกครั้งไม่ เห็นลิงค์ในความคิดเห็นก่อนหน้าของฉัน
คาเลบ

4
@ มัลลิสต์: "ถ้าคุณเป็นผู้พัฒนา แต่เพียงผู้เดียวและพวกเขาไม่ได้ให้ลิขสิทธิ์ของคุณคุณสามารถนำรหัสติดตัวไปด้วยเมื่อคุณจากไป (ฉันมักจะทำ)" ไม่แน่ใจว่าสัญญาของคุณสะท้อนถึงความเป็นจริงส่วนใหญ่แล้ว สัญญาส่วนใหญ่สำหรับการเช่าซอฟต์แวร์จะบอกอย่างชัดเจนว่าคุณต้องส่งมอบแหล่งที่มาและไบนารีทั้งหมดและส่งผ่านความเป็นเจ้าของและลิขสิทธิ์ให้กับพวกเขา ซึ่งเป็นเรื่องปกติสำหรับ freelancing คุณสามารถต่อรองเรื่องนี้ได้ แต่มันค่อนข้างเป็นข้อจริงที่ฉันคาดว่าจะเห็นในสัญญา (ทั้งสำหรับสัญญาภายในหรือสัญญาอิสระ)
เฮย์เล็ม

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

36

มันไม่ใช่เรื่องแปลก

ผมมีสำเนาเกือบ1 ทุกชิ้นส่วนของรหัสที่ผมเคยเขียนมืออาชีพและแน่นอนทุกรหัสจากโครงการปัจจุบันของฉันโดยไม่คำนึงถึงที่เขียนมัน2 พร้อมกับรหัสที่ฉันมีกองเอกสารทางกฎหมายขนาดใหญ่อย่างชัดเจนกำหนดสิ่งที่ฉันสามารถและไม่สามารถทำอะไรกับมัน เพียงแค่มีรหัสไม่เหมือนกับการพยายามทำกำไรจากรหัส

ที่กล่าวว่าเป็นปัญหาทางกฎหมายและปัญหาทางกฎหมายมีแนวโน้มที่จะซับซ้อนและแปลเป็นภาษาท้องถิ่น หากมีข้อสงสัยคุณจำเป็นต้องพูดคุยกับทนายความ ฉันอาจเก็บรหัสไว้ แต่ฉันมั่นใจ 99% ว่าฉันจะไม่มีปัญหาในการทำเช่นนั้น

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


4
@haylem ฉันไม่เคยอยู่ในสถานที่ของ บริษัท ;)
yannis

3
ยังฉันแน่ใจว่าคุณรู้ว่าสิ่งที่ฉันหมายและมันอาจจะไม่ได้เรื่องมากที่คุณมีร่างกาย :)
haylem

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

3
@Caleb การมีเอกสารที่เหมาะสมอาจไม่ใช่เรื่องแปลก (ฉันไม่รู้) แต่ฉันไม่คิดว่าการเก็บสำเนาของรหัสคือ ฉันเพิ่งมีทั้งคู่)
yannis

2
@Krelp คีย์การเข้ารหัสเช่นคีย์ไปยังตู้นิรภัยสามารถบังคับผ่านทางหมายศาล
Malfist

29

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

อ้างอิง: รหัส 'ไม่ใช่ทรัพย์สินทางกายภาพ', กฎของศาลในคดีจารกรรมของ Goldman Sachs

ด้วยที่กล่าวมา

  • ฉันจะเก็บรหัสที่ฉันเขียนหรือไม่? อย่างแน่นอน
  • ฉันทำโครงการเต็ม อย่างแน่นอน
  • ฉันแน่ใจหรือไม่ว่าฉันใช้รหัสจากที่ทำงานพีซีลงบนเครื่องที่บ้าน คุณ betcha!
  • ฉันเคยใช้รหัสนั้นอีกครั้งที่ บริษัท อื่นหรือในโครงการส่วนตัว Nope
  • ฉันมักจะดูรหัสเก่าและไป WtF! ตลอดเวลา.

14
+1 เหอคำตอบที่ดีและตรงไปตรงมา ส่วนที่ดีที่สุดคือมันจริงที่คุณไม่เคยกลับไปใช้รหัสเดิมเลย คุณแค่รู้สึกปลอดภัยขึ้นถ้าคุณนำติดตัวไปกับคุณอย่ามองมันอีกครั้งในชีวิตของคุณ!
Andres F.

นี่ไม่ใช่ประเด็นสำคัญในคดีล่าสุดของ Oracle v Google หรือไม่?
robertc

1
เห็นด้วยกับคุณโดยสิ้นเชิง ฉันทำเช่นเดียวกัน มันเป็นการอ้างอิงที่ดีมาก
Andrea Girardi

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

บทความที่เกี่ยวข้อง: โกลด์แมนแซคส์ได้ก้าวล้ำในการชาร์จอาชญากรอดีตโปรแกรมเมอร์หรือไม่? . นี่เป็นตัวอย่างที่ดีที่แม้ว่าคุณจะชนะในท้ายที่สุดการต่อสู้ทางกฎหมายก็สามารถสร้างความเสียหายได้มากมาย
CodesInChaos

10

นี่เป็นคำถามง่ายๆสำหรับคุณ ไปที่เจ้านายของคุณและบอกพวกเขาว่า: "ฉันมีสำเนาของรหัสทั้งหมดที่ฉันเขียนในขณะที่ฉันทำงานที่นี่มีเพียงรหัสที่ฉันเขียนไม่ใช่คนอื่น ๆ นี่คือเพื่อการศึกษาของฉันเอง

การกระทำถัดไปของพวกเขาจะกำหนด (ใช่คำนั้นมีอยู่ในอเมริกาเหนือ / โลก) หากคุณคิดผิดหรือถูกในสายตาของพวกเขา

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

ตอนนี้มันเป็นคำถามของความซื่อสัตย์ ฉันปล่อยให้พนักงานคนก่อนหน้าใช้รหัสบางส่วนของเรา แต่ฉันได้ตรวจสอบทั้งหมดก่อน

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


"ในขณะที่ฉันทำงานที่นี่" บอกเป็นนัยว่าบุคคลที่มีปัญหานั้นไม่ใช่เจ้านายของคุณอีกต่อไป ถ้าเป็นเจ้านายเก่าของคุณทำไมคุณถึงอยากถามเขา
Alexander

ทำไม? สัญญา? ความซื่อสัตย์?
Ryan Ternier

คุณสามารถเก็บรหัสที่คุณเขียนไว้ในขณะที่ไม่ได้ใช้มันเพื่ออะไรและยังคงรักษาสัญญาของคุณและรักษาความสมบูรณ์ของคุณ
อเล็กซานเดอร์

2
หากคุณลงนามในสัญญาที่ระบุว่ารหัสทั้งหมดเป็นทรัพย์สินของนายจ้างของคุณการที่คุณนำกลับบ้านเป็นการละเมิดสัญญานั้นหากพวกเขาไม่ทราบว่าคุณมีอยู่หรือให้สิทธิ์แก่คุณ มันขโมยได้อย่างมีประสิทธิภาพ ใช่มันคือ "รหัส" ดิจิตอล 0 และ 1 แต่โดยส่วนใหญ่แล้วจะเป็นขาวดำ
Ryan Ternier

เป็นการอภิปรายแบบดั้งเดิมว่า "การละเมิดลิขสิทธิ์เป็นการขโมย"
Alexander

8

มันแปลกสำหรับนักพัฒนาเพื่อเก็บสำเนาส่วนบุคคลของรหัสที่พวกเขาเขียน

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

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


3
ในฐานะนักแปลอิสระฉันจะเก็บรหัสทั้งหมดไว้รอบตัว การนำกลับมาใช้ใหม่นั้นไม่น่าเป็นไปได้มากนัก แต่ในที่สุดมันก็จะเก็บไว้ (ตัวอย่างเช่นหากนายจ้างว่าจ้างคนอื่นที่ขันรหัสและจ้างฉันอีกครั้งเพื่อแก้ไข)
Camilo Martin

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

8

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

สิ่งนี้ส่งผลให้สถานการณ์ win-win มันก็เป็นเพียงส่วนย่อยของรหัสทั้งหมดที่เขียน

แน่นอนที่สุดสิ่งที่อยู่ในห้องสมุดส่วนตัวจะอยู่ในห้องสมุดมาตรฐานวันนี้


ในบางสภาพแวดล้อมมีการแบ่งแยกที่ชัดเจนระหว่างรหัสไลบรารีหรือคอมโพเนนต์หรือคลาสที่ออกแบบมาอย่างชัดเจนสำหรับการใช้ซ้ำ (ตัวแยกวิเคราะห์ ฯลฯ ) และที่เป็นปัญหาโดเมนเฉพาะ รหัสซึ่งเป็นปัญหาเฉพาะโดเมน (แอพสำคัญของ InWort หรือหน่วยงานเชิงพาณิชย์ของ XWare) อาจไม่เป็นประโยชน์นอกสถานที่นั้น แต่องค์ประกอบ / ไลบรารีที่ใช้ซ้ำได้ในระดับต่ำหรืออาจนำมาใช้ใหม่อาจมีประโยชน์มาก
Warren P

6

ภายใต้นายจ้างต่อความสัมพันธ์ของพนักงานในส่วนใหญ่ของอเมริกาเหนือการถ่ายโอนหรือส่งสื่อดิจิทัล (เช่นซอร์สโค้ด) จากอุปกรณ์ของนายจ้างของคุณโดยไม่ได้รับอนุญาตตามกฎหมายจากนายจ้าง

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

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

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

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

ด้วยที่กล่าวว่าหากนายจ้างอนุญาตให้คุณใช้อุปกรณ์ของคุณเอง (เช่นแล็ปท็อป) หรือส่งเนื้อหานั้นก็เป็นเรื่องที่แตกต่างกัน นายจ้างต้องแจ้งให้คุณทราบเมื่อมีการบอกเลิกว่าควรส่งคืน / ทำลายวัสดุใด ๆ

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


นายจ้างต้องแจ้งให้คุณทราบเมื่อมีการบอกเลิกว่าควรส่งคืน / ทำลายวัสดุใด ๆ นี่เป็นเรื่องจริงหรือ นายจ้างอยู่ภายใต้ข้อผูกพันทางกฎหมายและ / หรือภาระผูกพันตามสัญญาที่จะทำเช่นนี้หรือไม่?
Radu Murzea

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

5

ฉันเคยทำมาก่อนหน้านี้ไม่กี่งานที่ผ่านมา

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

ดังนั้นฉันจะไม่รบกวนอีกต่อไป มันน่าสงสัยอย่างถูกกฎหมายและฉันไม่เคยพบว่ามีประโยชน์ในทางปฏิบัติ


4

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

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

น่าสนใจคุณมักจะได้ยินเกี่ยวกับนักพัฒนาเว็บที่นำเสนอ "กล่องเครื่องมือ" กับพวกเขาพร้อมชุดไลบรารีมาตรฐานJavaScriptและCSSสไตล์ชีท แต่ฉันไม่ได้เห็นที่กล่าวถึงที่นี่


3

ฉันเพิ่งลบรหัสเก่าทั้งหมดที่ฉันเก็บไว้จากนายจ้างคนก่อนหน้าของฉัน ฉันเก็บโค้ดบางส่วนที่ฉันคิดว่าดีสำหรับการอ้างอิงในอนาคต ฉันได้พบจริงว่าฉันย้ายไปมากตั้งแต่ฉันซ้ายและฉันไม่เคยเรียกรหัสเก่า ฉันพบ / ค้นพบ / เรียนรู้วิธีที่ดีกว่าในการแก้ปัญหาเดียวกัน

มันเป็นทริปเล็ก ๆ น้อย ๆ ที่ดีสำหรับการเดินทางลงหน่วยความจำ :)


2

ฉันคิดว่าจำเป็นต้องมีความแตกต่างระหว่างรูปแบบการออกแบบและรหัสจริง (การคัดลอกทีละบรรทัด)

การเขียนรหัส psuedocode บางอย่างเช่น - นี่เป็นวิธีที่ดีในการโหลด X ขี้เกียจใน Y เป็นสิ่งหนึ่ง การจดรหัสทั้งหมดนั้นเป็นอย่างอื่น


1

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

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


1

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

แต่เกี่ยวกับการใช้งานมันไม่ได้มีประโยชน์อะไรเหมือนโพสต์บล็อก!

บรรทัดล่าง: เขียนโค้ดของคุณบล็อกเกี่ยวกับปัญหาที่คุณประสบและวิธีแก้ไข (โดยเฉพาะอย่างยิ่งเมื่อมันเป็นเรื่องทั่วไปและกว้าง ๆ ) และอย่าลืมเก็บของที่ระลึก (อาจเข้ารหัส) จากงานสุดท้าย


1

ในด้านการเงินCFAแก้ไขปัญหานี้ คุณไม่ได้รับอนุญาตให้นำข้อมูลที่เกี่ยวข้องกับลูกค้าหรืองานของคุณสำหรับ บริษัท (ในรหัสกรณีนี้) แต่ไม่มีอะไรป้องกันไม่ให้คุณจำสิ่งที่คุณสามารถแล้วเขียนลงในภายหลัง

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


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

1
@AndresF ฉันเคยทำงานที่กองทุนป้องกันความเสี่ยงที่พยายามป้องกันสิ่งนี้ พวกเขาไม่สามารถป้องกันได้โดยสุจริตดังนั้นพวกเขาจึงทำให้ผู้คนเซ็นสัญญาที่ไม่แข่งขันและจ่ายเงินให้พวกเขาไม่ทำงาน 1-2 ปีหลังจากลาออก แม้ว่าจะมีราคาแพงมาก (คุณจ่ายเงินเดือน 2 ปีให้กับคนที่ไม่ได้ทำงานให้คุณ) มันทำให้ความรู้ของคุณเหม็นอับเมื่อคุณจากไปและไร้ประโยชน์เป็นภัยคุกคามการแข่งขัน
Lostsoul

+1 สำหรับแนวคิดเท่านั้นและไม่ใช่รหัส มีส่วนเกี่ยวข้องกับ บริษัท ที่ฟ้องร้องอดีตโปรแกรมเมอร์เพื่อขโมยรหัสและขายผลิตภัณฑ์ที่คล้ายกัน ผู้พิพากษาตัดสินว่าเพราะข้อบกพร่องเหมือนกันเขาจะต้องขโมยรหัส
jqa

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

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

1

หากคุณกำลังบันทึกรหัสของคุณโดยมีเป้าหมายในการนำมาใช้ซ้ำในภายหลังฉันมีปัญหาสองประการดังนี้:

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

  • หากรหัสที่คุณกำลังบันทึกแก้ปัญหาทั่วไปคุณควรถามแนวทางของคุณ ทำไมคุณใช้ความพยายามอย่างมากในการแก้ปัญหาที่พบบ่อยเมื่อพวกเขามีแนวโน้มที่จะมีอยู่ (และดีกว่า) โซลูชั่นโอเพ่นซอร์ส?

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

หากคุณกำลังบันทึกรหัสของคุณเพราะคุณต้องการแสดงให้นายจ้างที่มีศักยภาพหรือพัฒนาทักษะของคุณฉันขอแนะนำให้คุณมีส่วนร่วมในโครงการโอเพ่นซอร์สแทน


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

0

ฉันยังไม่ได้เก็บรหัสใด ๆ ที่ฉันได้ทำกับนายจ้าง สิ่งที่ฉันได้เก็บไว้ฟรีแลนซ์ (อาจเป็นเรื่องยากที่จะสนับสนุนลูกค้าหากฉันทำรหัสหาย)

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

ฉันรู้ว่านักออกแบบมักจะเก็บสำเนางานของพวกเขา (แม้ว่าจะเป็นงานให้เช่า) เพื่อจุดประสงค์ในการลงทุน

ฉันไม่แน่ใจว่าสิ่งที่ถูกต้องตามกฎหมายคืออะไร (ไม่ได้กล่าวถึงอย่างชัดเจนในสัญญาของฉัน)


4
but what are your thoughts on this?โปรดอย่าเชิญการสนทนากับคำตอบของคุณอย่างเปิดเผยโดยการแนะนำคำถามอื่น คุณบอกเราว่าเราควรเก็บสำเนาของรหัสทั้งหมดที่เราเขียนหรือไม่ คุณสามารถปรับปรุงคำตอบได้โดยแก้ไข
maple_shaft

1
ฉันคิดว่ามีความแตกต่างในการรักษาไฟล์ต้นฉบับดั้งเดิม (ในไฟล์กราฟิกเคสของคุณเช่น. ai หรือ. psd) กับการมีภาพหน้าจอของผลิตภัณฑ์ขั้นสุดท้ายสำหรับผลงานของคุณ คุณควรขออนุญาตจากนายจ้างของคุณ แต่พวกเขาก็ควรจะเห็นด้วยกับคนหลัง
Sarel Botha

เนื่องจากงานมักจะมีการโต้ตอบในธรรมชาติภาพหน้าจอจึงไม่ตัดผลงานออกมา นั่นจะแสดงเฉพาะการออกแบบ (ซึ่งส่วนใหญ่ไม่ใช่ของฉัน) ฉันสามารถนำหน้าจอของฉันมาใช้กับงานที่สงสัย แต่ก็ยังไม่ได้ถ่ายทอดสิ่งต่าง ๆ เช่นความหน่วงประสิทธิภาพการทำงานความเข้ากันได้ข้ามเบราว์เซอร์
Xandor Schiefer

0

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

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

ฉันมีทางเลือกอื่น เพียงแค่สร้างJAR ที่ไม่มีซอร์ส / เอกสารสำหรับการใช้งานและเพิ่มเป็น JAR บุคคลภายนอกในโครงการของคุณ อาจเป็นไปได้โดยการทำเช่นนี้คุณสามารถยืนยันความรับผิดชอบของคุณเช่นเดียวกับความพึงพอใจของคุณว่าคุณมีรหัส;)


1
อีกวิธีหนึ่งสำหรับเรื่องนี้คือเมื่อฉันพบโค้ดที่มีประโยชน์ / นำมาใช้ซ้ำได้ที่ฉันต้องการ "นำติดตัวไปด้วย" ... ฉันกลับบ้านและเขียนโพสต์บล็อกเกี่ยวกับ API หรือเทคนิคเฉพาะที่มีความสนใจ ฉัน. โพสต์บล็อกของหลักสูตรนี้ไม่ได้อ้างอิงนายจ้างของฉันหรือไม่ได้ใช้บรรทัดโดยรหัสที่เขียนในค่าเล็กน้อยของนายจ้างของฉัน
Joel Martinez

หากมีกฎกติกาก็จะต้องมีการต่อต้าน ซึ่งคุณสามารถใช้ในความโปรดปรานของคุณ พวกเขามีเทคนิคต่างกันเพื่อให้บรรลุนี้ สิ่งที่สำคัญที่สุดคือทำให้งานชัดเจน
Soumyadip Das

0

ฉันไม่เก็บรหัสด้วยเหตุผลง่ายๆ: บริษัท จ่ายให้ฉันเขียนรหัสให้พวกเขา ฉันให้รหัสของพวกเขาและพวกเขาให้เงินเดือนฉัน คนที่ทำอาหารกลางวันของฉันไม่ได้มีส่วนร่วมกับตัวเองทำไมรหัสจะแตกต่าง

นอกจากนี้ก่อนหน้านี้ฉันออกจากงานอาการปวดหัวทั้งหมดอยู่ที่นั่นงานใหม่การเริ่มต้นใหม่ แต่ด้วยประสบการณ์และความเข้าใจเกี่ยวกับประเภทของปัญหาในโดเมนของงานเก่านั้น

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.