มันเป็นเรื่องธรรมดาแค่ไหนที่ทีมจะเขียนทุกอย่างใน บริษัท ? [ปิด]


53

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

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

คำถามของฉันคือมันเป็นเรื่องธรรมดาสำหรับทีมที่จะเขียนทุกอย่างด้วยตัวเอง? ฉันควรจะกังวลกับทีมที่ทำ?

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


58
ธงแดงขนาดใหญ่ เดินออกไปอย่างใจเย็น
tdammers

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

4
NuGet ยอดเยี่ยม แต่ทำให้ง่ายในการทำเช่นนี้ ฉันติดตั้งห้องสมุดผู้ช่วยเล็กน้อยจาก NuGet เมื่อไม่นานมานี้และมันก็ดึงเข้าไปใน Castle และอึคนอ้วนอื่น ๆ ทุกประเภท แน่นอนว่า; การห้ามทันทีเป็นสิ่งที่แปลก แต่มันก็ไม่ได้โง่ไปกว่าการปล่อยให้ทุก ๆ dev และสุนัขของเขาดึงสิ่งต่าง ๆ โดยไม่ต้องคิดอะไรเลย
Danny Tuppeny

13
ทุกอย่าง? นั่นรวมถึงเบราว์เซอร์ของตัวเองระบบปฏิบัติการและคอมไพเลอร์หรือไม่? มิฉะนั้นพวกเขาก็แค่หลอกตัวเอง
Muhammad Alkarouri

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

คำตอบ:


76

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

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

  • ตอบสนองความต้องการของรหัสที่พวกเขาจะเขียนเอง
  • มีให้ใช้ภายใต้ใบอนุญาตที่เข้ากันได้กับรูปแบบธุรกิจของ บริษัท
  • การทดสอบรวม
  • ผ่านการตรวจสอบรหัส

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

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

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

  • จะมี API ต่างประเทศสำหรับนักพัฒนาที่คุ้นเคยกับ jQuery
  • จะไม่ถูกบันทึกเป็น jQuery อย่างดี
  • จะไม่มีผลการค้นหาของ Google ที่เกี่ยวข้องเมื่อพบปัญหาในการใช้ห้องสมุด
  • จะไม่เหมือนกับการทดสอบภาคสนามเป็น jQuery

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


คุณได้อัปเดตคำถามของคุณเพื่อถามว่าการสัมภาษณ์ครั้งที่สองเหมาะสมหรือไม่ มันเป็นอย่างแน่นอน

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

หากคุณอธิบายว่าคุณกังวลเกี่ยวกับจุดยืนของพวกเขาในห้องสมุดภายนอกมีผลลัพธ์ที่เป็นไปได้อย่างน้อยสองรายการ:

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

1
+1 แต่ฉันคิดว่าคุณหมายถึงภาคเอกชนภาคไม่ประชาชนภาค
MarkJ

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

34

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


2
เนื่องจากผู้พัฒนาไม่มีทักษะที่เกี่ยวข้องสำหรับงานอื่น ๆ เงินของ บริษัท ที่สูญเสียไปจากการพัฒนาต่อเนื่องจะได้รับการบันทึกโดยไม่ต้องเปลี่ยนสมาชิกในทีมที่ต้องจากไป! #stratgey
Michael Paulukonis

@Michael: คนเดียวที่พวกเขาสามารถรักษาได้คือคนที่มีอยู่สำหรับการตัดสินใจเดิมเพื่อสร้างกรอบการทำงานในบ้าน จ้างใหม่มักจะออกหลังจากนั้นประมาณหนึ่งปี
วินไคลน์

</itwasaweakjoke>
Michael Paulukonis

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

@ MarkJ: แต่ถ้าการเปลี่ยนแปลงถูกปฏิเสธใครบางคนจะมีอัตตาช้ำ
วินไคลน์

20

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

เพื่อตอบคำถามของคุณมันเป็นเรื่องธรรมดามากกว่าที่คุณคิดและเป็นเหตุผลที่ต้องกังวล


15

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


11

ฉันมีคู่ของเพื่อน ๆ ที่มีทั้ง (สั้น ๆ ) กทำงานอยู่ที่บ้านซอฟต์แวร์ที่มีไม่ได้คิดค้นนี่ซินโดรม ดังนั้นความคิดจะออกมี

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


+1 หนึ่งในเหตุผลหลักที่ฉันย้ายจากนายจ้างคนก่อนหน้าของฉัน!
Antony Scott

5

มันไม่ใช่เรื่องธรรมดาที่ฉันอาศัยอยู่และฉันรู้จัก บริษัท มากมายแม้ว่าจะเป็นเพื่อนร่วมงาน ฉันไปไกลเพื่อบอกว่ามันเป็น "ไม่ต้องขอบคุณ" ในทันทีจากฉัน

ฉันจะไม่สำรอกคะแนนที่ดีที่ทำไปแล้ว แต่ฉันจะเพิ่มสิ่งหนึ่ง

พวกเขาจ้างงานยากขึ้นมาก

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

ตอนนี้แน่นอนว่าจะมีคนที่ชอบความท้าทาย แต่ฉันคิดว่าพวกเขาจะอยู่ในชนกลุ่มน้อย

และจะมี บริษัท บางแห่งที่ดำเนินงานเกี่ยวกับ "มาตราส่วนอินเทอร์เน็ต", Amazon, Facebook และอื่น ๆ ซึ่งพวกเขามีความต้องการที่กำหนดเองที่บ้า แต่อีกครั้งที่อยู่ในชนกลุ่มน้อย


4

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

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

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


4

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

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

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

บาง บริษัท อนุญาตให้มีอิสระในการสร้างโครงการโอเพ่นซอร์สของคุณเองซึ่งดูเหมือนว่าเหมาะสมกว่า

โดยส่วนตัวฉันจะไม่ไปสถานที่ที่มีวัฒนธรรมแบบนั้น


1

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

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

บางทีบางทีคุณอาจเป็นคนแนะนำการเปลี่ยนแปลงนั้น ขอให้โชคดีกับทุกสิ่ง


-3

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

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


"ฉันไม่ได้เห็นมันพูดถึงที่นี่" - คุณดูคำตอบอื่น ๆ เช่นที่นี่หรือไม่?
ริ้น

3
ไม่ได้รับทักษะมากนัก? นั่นเป็นการไร้สาระ นั่นเป็นเรื่องจริงหากคุณดูว่าการเขียนโปรแกรมเล่นกับเลโก้บล็อคการรวมส่วนประกอบเข้าด้วยกัน หากคุณต้อง 'ประดิษฐ์ใหม่' ห้องสมุดคุณจะได้เรียนรู้มากมายเกี่ยวกับหัวข้อเฉพาะ
GrandmasterB

@ แกรนด์มาสเตอร์ B คุณถูกต้องให้ฉันชี้แจง - หลาย ๆ ที่ถามว่าคุณทำงานกับเครื่องมืออะไร โอกาสในการถูกมองข้ามของคุณนั้นสูงกว่ามากหากผู้สมัครคนอื่นสามารถเข้ามามีส่วนร่วมในขณะที่คุณต้องเรียนรู้ตั้งแต่เริ่มต้น
Martin Konecny

-9

บริษัท ใหญ่ ๆ เขียนทุกอย่างเอง

มีข้อดีหลายประการในการเขียนด้วยตัวคุณเอง:

  1. คุณรับประกันได้ว่าจะเป็นเจ้าของซอฟต์แวร์ด้วยตัวคุณเอง
  2. คุณสามารถคำนวณปริมาณงานที่จะสร้างได้อย่างถูกต้อง
  3. การทำซ้ำขั้นตอนของคุณจะเป็นไปได้แม้ว่าในครั้งถัดไป libs จะไม่พร้อมใช้งาน
  4. มันลดความต้องการของคุณลง
  5. คุณไม่ได้ทำซ้ำในสิ่งที่คนอื่นทำไปแล้ว
  6. คุณรับประกันว่าจะมีคนมากพอที่จะรักษามันไว้
  7. คุณสามารถแก้ไขซอฟต์แวร์ทุกส่วนได้
  8. ขนาดซอฟต์แวร์ถูก จำกัด ด้วยจำนวนทรัพยากรที่คุณมี

นี่คือวิธีที่แต่ละจุดแตกหักถ้าคุณใช้ห้องสมุดคนอื่น:

  1. คนอื่นเป็นเจ้าของ lib
  2. คุณไม่รู้ว่าความพยายามในการสร้าง lib นั้นมีมากแค่ไหน
  3. ผลิตภัณฑ์เวอร์ชันถัดไปของคุณเป็นไปไม่ได้ที่จะสร้างบนแพลตฟอร์มใหม่เนื่องจาก libs เดียวกันไม่สามารถใช้งานได้อีกต่อไป
  4. ความสามารถในการปฏิบัติตามข้อกำหนดนั้นขึ้นอยู่กับว่า lib ใช้งานมาหลายปีแล้วหรือไม่
  5. คนอื่นยังใช้ lib เดียวกันรับข้อ จำกัด และคุณสมบัติเดียวกัน
  6. เนื่องจากคุณไม่ได้สร้าง libs คุณจึงไม่มีคนมากพอที่จะดูแลรักษาซอฟต์แวร์ทั้งหมดในผลิตภัณฑ์ของคุณ
  7. Libs เป็นไบนารีไม่สามารถแก้ไขได้ แม้ว่าแหล่งที่มาจะพร้อมใช้งานคุณไม่มีคนมากพอที่จะแก้ไขโค้ดจำนวนมากได้
  8. การบำรุงรักษารหัสที่คุณสร้างขึ้น + libs เป็นความพยายามที่มากกว่าที่คุณคาดไว้

7
ส่วนขยายเชิงตรรกะของอาร์กิวเมนต์เหล่านี้จะไม่เขียนคอมไพเลอร์ของคุณเอง (อาจเป็นภาษาของคุณเอง) รันซอฟต์แวร์นี้บนระบบปฏิบัติการของคุณเองและอาจสร้าง HW ของคุณเองด้วยหรือไม่
timday

4
1: ใช่และฉันสามารถจ่ายค่าธรรมเนียมเพื่อใช้งานได้ (โดยไม่ต้องใช้เงินเพื่อสร้างวิธีที่แตกต่างของต้นทุน) 2: ถ้าฉันไม่ได้สร้างฉันไม่สนใจ 3: ในแพลตฟอร์มธุรกิจมีการเปลี่ยนแปลงช้า การตัดขอบคมตัดเป็นสิ่งที่ขาดไม่ได้ แต่ซอฟต์แวร์ที่ดีก็ย้ายได้อย่างง่ายดาย 4: ไม่จริง คุณเพียงถ่ายโอน bloat จากภายนอกสู่ภายใน 5: ไม่สมเหตุสมผล 6: ไม่จริง 7: จริง แต่หมายความว่าคุณต้องเบี่ยงเบนโปรแกรมเมอร์ที่มีค่าของคุณ (ส่วนที่แพงที่สุดของโครงการ) จากการทำงานจริงไปสู่การแก้ไขข้อบกพร่องในบางสิ่งที่สามารถรักษาไว้ที่อื่นได้ 8: นั่นเป็นสิ่งที่ไม่ดี
Martin York

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

7
@ tp1: ฉันทำงานให้กับ Google และฉันสามารถรับรองได้ว่า Google จะใช้ห้องสมุดบุคคลที่สามเป็นอย่างมากเมื่อพวกเขาตอบสนองความต้องการของเรา หลายครั้งที่ Google มีความต้องการที่แตกต่างหรือแตกต่างจาก บริษัท ซอฟต์แวร์อื่น ๆ หลายแห่งดังนั้นด้วยเหตุผลเดียวหรืออื่น ๆ ที่ Google มักจะพัฒนาสิ่งต่าง ๆ ภายใน บริษัท แต่ Google ก็ใช้ไลบรารีโอเพนซอร์ซจำนวนมากและ / หรือโอเพ่นซอร์สไลบรารีภายในจำนวนมากดังนั้นไม่ใช่ทุกอย่างที่อยู่ในบ้าน คะแนนส่วนใหญ่ของคุณไม่ได้ใช้กับซอฟต์แวร์โอเพ่นซอร์สอีกต่อไปเนื่องจากการมีแหล่งที่มาทำให้คุณมั่นใจได้ว่าคุณสามารถดีบักและแก้ไขได้เสมอหากจำเป็น
Daniel Pryden

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