รูปแบบการพัฒนาซอฟต์แวร์ฟรี: มหาวิหารและตลาดสด

รูปแบบการพัฒนาซอฟต์แวร์ฟรี

รูปแบบการพัฒนาซอฟต์แวร์ฟรี

The Cathedral and the Bazaar เป็นเอกสารประเภท manifest ที่พัฒนาโดย Eric S. Raymond ในปี 1.998 เพื่อพยายามอธิบายจากมุมมองและประสบการณ์ของเขาเอง (Fetchmail Development) สิ่งที่เขาเข้าใจเกี่ยวกับการสร้างและวิวัฒนาการที่ประสบความสำเร็จของ Linux และโปรแกรมที่เกี่ยวข้องโดยเฉพาะจากมุมมองของความแตกต่างระหว่างโมเดลการพัฒนาซอฟต์แวร์ซึ่งเขาเรียกเป็นการส่วนตัวว่า Cathedral Model และ Bazaar Model

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

ข้อมูลเบื้องต้นเกี่ยวกับมหาวิหารและบาซาร์

บทนำ

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

โดยเน้นว่าทั้ง 2 โมเดลนี้ได้มาจากจุดเริ่มต้นที่ตรงกันข้ามกับลักษณะของกระบวนการดีบักซอฟต์แวร์และทฤษฎีเฉพาะของเขาเกี่ยวกับสิ่งที่เขาเรียกว่ากฎของไลนัสซึ่งระบุสิ่งต่อไปนี้: "เมื่อมีจำนวนตาเพียงพอข้อผิดพลาดทั้งหมดไม่เกี่ยวข้อง" หรืออีกนัยหนึ่ง: "ด้วยจำนวนตาที่เพียงพอข้อผิดพลาดทั้งหมด พวกเขาเป็นเรื่องมโนสาเร่”

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

ในวรรณคดีอื่น ๆ คำหรือแนวคิดที่เรียกว่า Hacker นี้หมายถึง:

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

ซึ่งเป็นแนวคิดที่เป็นสากลและเป็นจริงมากขึ้นเนื่องจากมี "แฮกเกอร์" ในทุกด้านของความรู้ของมนุษย์

สถานที่ในการพัฒนาซอฟต์แวร์เสรี

Desarrollo

ในบรรดาหลาย ๆ คนที่ได้อ่านเนื้อหาดังกล่าวแน่นอนว่าจะมีคนจำนวนมากที่เห็นด้วยว่าแนวคิดที่ว่า "Linux ถูกโค่นล้ม" นั้นแสดงออกมาอย่างชัดเจนที่นั่น แต่ทำไม?

เพราะจนถึงขณะนั้นมี หลายหลากของวิธีการหรือแบบจำลองการพัฒนาซอฟต์แวร์ที่เป็นมาตรฐานตาม“ แนวทางที่รวมศูนย์และวางแผนไว้ตั้งแต่ต้น” เนื่องจากการสร้างซอฟต์แวร์ถูกนำไปเป็นสิ่งที่เกี่ยวข้องกับสิ่งที่นำไปสู่ ​​"ความซับซ้อนที่สำคัญบางอย่าง"

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

ในขณะที่ ในโลกของการพัฒนาซอฟต์แวร์ส่วนตัวได้ดำเนินการในลักษณะเช่นเดียวกับที่สร้างมหาวิหาร ในโลกแห่งการพัฒนาซอฟต์แวร์เสรี (Linux) ได้ดำเนินการในลักษณะ "มีเสียงดังและมีหลายวาระ (เส้นทาง) และแนวทาง (ข้อเสนอ)"เช่นเดียวกับที่คุณอยู่ในตลาดสดขนาดใหญ่

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

สถานที่ 1: มหาวิหารและบาซาร์

พรีเมี่ยม # 1

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

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

สถานที่ 2: มหาวิหารและบาซาร์

พรีเมี่ยม # 2

นักเขียนโปรแกรมที่ดีรู้ว่าต้องเขียนอะไร สิ่งที่ดีที่สุดรู้ว่าจะเขียนใหม่และใช้ซ้ำได้อย่างไร

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

สถานที่ 3: มหาวิหารและบาซาร์

พรีเมี่ยม # 3

"คิดเกี่ยวกับการโยนออกไปอย่างน้อยหนึ่ง - คุณจะต้องทำมันทุกอย่าง"

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

สถานที่ 4: มหาวิหารและบาซาร์

พรีเมี่ยม # 4

หากคุณมีทัศนคติที่ถูกต้องปัญหาที่น่าสนใจจะพบคุณ

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

สถานที่ 5: มหาวิหารและบาซาร์

พรีเมี่ยม # 5

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

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

สถานที่ 6: มหาวิหารและบาซาร์

พรีเมี่ยม # 6

การปฏิบัติต่อผู้ใช้ของคุณในฐานะผู้ทำงานร่วมกันเป็นวิธีที่ซับซ้อนน้อยลงในการปรับปรุงอย่างรวดเร็วและมีประสิทธิภาพในการแก้ปัญหาโปรแกรม

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

สถานที่ 7: มหาวิหารและบาซาร์

พรีเมี่ยม # 7

ปล่อยเร็ว ๆ นี้ เปิดตัวบ่อยครั้ง และรับฟังผู้ใช้ของคุณ

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

สถานที่ 8: มหาวิหารและบาซาร์

พรีเมี่ยม # 8

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

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

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

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

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

สรุป: มหาวิหารและบาซาร์

สรุปผลการศึกษา

โดยส่วนตัวแล้วประสบการณ์เพียงเล็กน้อยของฉันในด้านการพัฒนาซอฟต์แวร์เสรีภายใต้ Bazaar-type Model ทำให้ฉันได้ข้อสรุปดังต่อไปนี้:

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

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


แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. ผู้รับผิดชอบข้อมูล: Miguel ÁngelGatón
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา

      naciiboy dijo

    บทสรุป / ความคิดเห็นที่ดีฉันจะเอาเพียงภาพ«มอนิเตอร์พร้อมโค้ด»จำนวนมากที่ไม่มีมาให้เลย

         ติดตั้ง Linux Post dijo

      ดูเหมือนว่าพวกเขาเหมาะสมสำหรับปัญหาของการพัฒนาระบบและการลบออกจะไม่ถูกต้องอีกต่อไป แต่ขอขอบคุณสำหรับการสังเกตของคุณ!

      เบย์รอน dijo

    บทสรุปและการเปรียบเทียบที่ยอดเยี่ยม

         ติดตั้ง Linux Post dijo

      ขอบคุณ Bayron สำหรับความคิดเห็นที่ดีและเป็นบวกของคุณ

      Eduardo จาก Trinidad dijo

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

         ติดตั้ง Linux Post dijo

      สวัสดี Eduardo de Trinidad ขอบคุณสำหรับความคิดเห็นและการสนับสนุนของคุณ