ยืนอยู่บนไหล่ของโปรแกรมเมอร์: พลังของซอฟต์แวร์ฟรีและโอเพ่นซอร์ส

ยืนอยู่บนไหล่ของโปรแกรมเมอร์: พลังของซอฟต์แวร์ฟรีและโอเพ่นซอร์ส

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

กลายเป็นใบหน้า

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

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

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

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

และปัจจุบันนี้ถูกมองว่าเป็นส่วนสำคัญของขบวนการวิทยาศาสตร์แบบเปิดที่กว้างขึ้นผู้ร่วมเขียนโค้ด

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

ที่มีส่วนร่วม

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

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

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

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

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

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

หัวหน้าร่วม

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

เปิดเพื่อความโล่งใจโน้ตบุ๊ก Jupyter เป็นผลิตภัณฑ์ที่เป็นที่รู้จักมากที่สุด พวกเขาเป็นเครื่องมือการคำนวณเชิงโต้ตอบที่เปิดใช้งาน “การเขียนโปรแกรมความรู้” ซึ่งเป็นแนวคิดที่หนึ่งบันทึกร้อยแก้วเชิงพรรณนาในภาษามนุษย์พร้อมกับส่วนย่อยของรหัสที่เกี่ยวข้องซึ่งทำงานขนาดพอดีคำ 

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

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

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

แนะนำ ufaslot888g