วันอาทิตย์ที่ 19 มกราคม พ.ศ. 2563
เมื่อบริษัทเทคโนโลยีหนุน Google ในการสู้กับ Oracle
อ่านข่าวเต็มได้ที่: The Hill
เพิ่มเติมเสริมข่าว:
ขออธิบายเพิ่มเติมว่าทำไมบริษัทเทคโนโลยีต่าง ๆ ถึงออกมาเข้าข้าง Google และถ้า Oracle ชนะมันจะมีอาจมีผลกระทบกับอุตสาหกรรมคอมพิวเตอร์ยังไงบ้าง ก่อนอื่นมาทำความรู้จัก API (Application Program Interface) กันก่อน ซึ่งก็ขออธิบายง่าย ๆ ว่ามันคือลิสต์รายชื่อของฟังก์ชันที่นักเขียนโปรแกรมสามารถเรียกใช้จากคลังโปรแกรม (program library) ที่พัฒนาไว้ก่อนหน้าแล้วได้ โดยประโยชน์ของมันก็คือนักเขียนโปรแกรมสามารถเรียกใช้ฟังก์ชันจากคลังโปรแกรมได้โดยไม่ต้องรู้รายละเอียดว่าโค้ดในคลังโปรแกรมเขียนขึ้นมายังไง เขียนขึ้นมาด้วยภาษาอะไร ทำงานบนแพลตฟอร์มแบบไหน
ในปัจจุบันเราต้องเขียนโปรแกรมให้ทำงานได้บนอุปกรณ์หลากหลายเช่นทั้งบนมือถือ บนแท็บเล็ต บนคอมพิวเตอร์ ซึ่งนอกจากตัวอุปกรณ์แล้วระบบปฏิบัติการก็ยังมีหลายตัวอีกด้วย ดังนั้นคลังโปรแกรมก็อาจจำเป็นต้องพัฒนาขึ้นมาสำหรับอุปกรณ์ต่าง ๆ บนระบบปฏิบัตการต่าง ๆ เหล่านี้ ซึ่งถ้าเราสามารถใช้ API เดียวกัน ในการเรียกคลังโปรแกรมเหล่านี้ เราก็สามารถนำโค้ดที่เขียนกับอุปกรณ์ตัวหนึ่ง มาใช้กับโค้ดสำหรับอุปกรณ์อีกตัวหนึ่งได้โดยง่าย
แต่สมมติถ้า Oracle ชนะในคดีนี้ คือตัว API สามารถมีลิขสิทธื์ได้ มันก็อาจทำให้เกิดปัญหาเช่นสมมติผมสร้างคลังโปรแกรมขึ้นมาให้ทำงานกับระบบปฏิบัติการวินโดวส์ ซึ่งแน่นอนผมต้องมี API ให้นักพัฒนาที่จะเอาคลังโปรแกรมของผมไปใช้ เรียกใช้คลังโปรแกรมของผมได้ คราวนี้ถ้ามีคนอยากพัฒนาคลังโปรแกรมที่ทำงานเหมือนของผมแต่ทำงานบนแอนดรอยด์ แต่เพราะ API เป็นลิขสิทธิ์ของผม ดังนั้นเขาต้องสร้าง API ของเขาเอง นั่นหมายความว่าตอนนี้นักพัฒนาซึ่งอยากพัฒนาให้ทำงานได้บนวินโดวส์ และบนแอนดรอยด์จำเป็นต้องเขียนโปรแกรมสองแบบเพื่อใช้เรียกใช้คลังโปรแกรมที่ทำงานเหมือนกัน และลองคิดต่อ ๆ ไปสิครับว่าถ้าต้องเขียนโปรแกรมสำหรับ iOS Mac OS และอื่น ๆ อีกมากมายจะยุ่งแค่ไหน
ยิ่งไปกว่านั้นเหตุการณ์นี้อาจทำให้เกิดการผูกขาดเช่น ถ้านักพัฒนาโปรแกรมไม่อยากเขียนโค้ดเยอะ เขาก็จำเป็นต้องรอให้ผมพัฒนาคลังโปรแกรมให้ทำงานบนเครื่องที่เขาอยากใช้ ถึงตรงนี้หลายคนอาจถามว่าแล้วอย่างนี้คนคิดคนแรกก็เสียเปรียบสิ อุตสาห์ทำขึ้นมาก่อน พอทำดีก็มีคนเอาไปทำตาม คือต้องเข้าใจนะครับว่าตัวโค้ดในคลังโปรแกรมยังเป็นลิขสิทธิ์ของคนที่ทำมันขึ้นมา คนที่สร้างคลังโปรแกรมตัวถัดมาต้องยังคงต้องเขียนโค้ดคลังโปรแกรมของตัวเองขึ้นมาเอง แต่เขาสามารถใช้ API เหมือนของคนแรกได้ คนแรกถ้าต้องการจะแข่งขันก็สามารถสร้างคลังโปรแกรมให้ทำงานบนแพลตฟอร์มเดียวกันกับคนที่สองขึ้นมาแข่งได้ และถ้ามันดีกว่านักพัฒนาก็สามารถเปลี่ยนมาใช้ได้โดยง่าย เพราะใช้ API เดียวกัน โค้ดก็ไม่ต้องเปลี่ยนอะไรอยู่แล้ว
ถ้าอ่านแล้วยังไม่เข้าใจว่าถ้า Oracle ชนะจะมีผลยังไง ลองจินตนาการว่าเราอยู่ในโลกซึ่งรูที่เติมน้ำมันรถมีลิขสิทธิ์ รถแต่ละยี่ห้อไม่สามารถใช้รูเติมน้ำมันแบบเดียวกันได้ เช่นถ้า Toyota ใช้วงกลมไปแล้ว Honda ถ้าอยากใช้วงกลมด้วยต้องจ่ายเงินให้ Toyota ตามยอดขาย Honda ไม่ยอมก็เลยไปใช้รูเติมน้ำมันเป็นสี่เหลี่ยม แล้วยี่ห้ออื่น ๆ ก็ใช้รูปแบบของตัวเอง ลองคิดกันดูแล้วกันครับว่ามันจะยุ่งแค่ไหน
วันจันทร์ที่ 26 ตุลาคม พ.ศ. 2563
JavaScript ยังคงครองมงกุฏภาษาเขียนโปรแกรมที่ได้รับความนิยม
Photo by Bharat Patil on Unsplash |
จากการสำรวจของ SlashData ในหัวข้อ State of the Developer Nation Q3 2020 พบว่าภาษา JavaScript ยังคงครองมงกุฏภาษาสำหรับนักพัฒนา โดยมีจำนวนนักพัฒนาเพิ่มชึ้น 5 ล้านคนนับตั้งแต่ปี 2017 โดยตอนนีืมียอดรวมนักพัฒนาอยู่ที่ 12.4 ล้านคนทั่วโลก โดย Python อยู่ที่อันดับสอง มียอดรวมนักพัฒนาอยู่ที่ 9 ล้านคน เพิ่มขึ้นมา 2.2 ล้านคนจากปีที่แล้ว เหตุผลก็คือมันถูกนำไปใช้ในการเรียนรู้ของเครื่อง (machine learning) วิทยาศาสตร์ข้อมูล (data science) และอินเทอร์เน็ตของสรรพสิ่ง (Internet of Things) ภาษา Java อยู่อันดับที่ 3 ในการจัดอันดับ อยู่ที่ 8.2 ล้านคน เพิ่มขึ้น 1.6 ล้านนับจากปี 2017 Oracle บอกว่ามากกว่า 69% ของนักพัฒนาแบบเต็มเวลายังใช้ Java โดยมี Java Virtual Machine ถูกติดตั้งอยู่กว่า 51พันล้านตัว
อ่านข่าวเต็มได้ที่: ZDNet
วันเสาร์ที่ 10 เมษายน พ.ศ. 2564
ทำไมคำตัดสินของศาลสูงที่ให้ Google ชนะ Oracle จึงเป็นชัยชนะของนวัตกรรม
Tom Carnegie on Unsplash |
เมื่อวันจันทร์ที่ผ่านมา (5 เมษายน) ศาลสูงสหรัฐได้ยุติการต่อสู้ทางกฎหมายที่ยาวนานกว่าทศวรรษในการตัดสินว่า Google ไม่ได้ละเมิดลิขสิทธิ์ของ Oracle ที่เกี่ยวข้องกับภาษาโปรแกรม Java การตัดสินจะเกี่ยวข้องกับการใช้ API (Application Program Interface) ซึ่งทำให้ฮาร์ดแวร์หรือซอฟต์แวร์ของบริษัทต่าง ๆ สามารถติดต่อกันได้ Microsoft, Red Hat ของ IBM และ Mozilla เป็นส่วนหนึ่งในบริษัทเทคโนโลยีที่อาจได้รับผลกระทบ เนื่องจากการพัฒนาซอฟต์แวร์ใหม่อาจถูกขัดขวางหากความต้องการของ Oracle ได้รับการอนุมัติ Stan Adams จาก Center for Democracy and Technology "ผลการตัดสินครั้งนี้ถือเป็นชัยชนะครั้งใหญ่สำหรับนักพัฒนาและผู้บริโภค เมื่อซอฟต์แวร์ทำงานร่วมกันได้ซึ่งหมายถึงหมายความว่าซอฟต์แวร์ตัวหนึ่งสามารถพูดคุยกับซอฟต์แวร์อีกตัวหนึ่ง มันก็ง่ายที่จะสร้างนวัตกรรมและสร้างบริการใหม่ ๆ "
อ่านข่าวเต็มได้ที่: Fortune
เพิ่มเติมเสริมข่าว: ถ้าใครอยากรู้ที่มาที่ไป และความสำคัญของชัยชนะด้าน API นี้ สามารถย้อนไปอ่านข่าวที่ผมเขียนไว้เมื่อต้นปี 2563 ได้ครับ