Oracle เองก็คัดลอก API จาก Amazon S3 และนี่เป็นเรื่องปกติโดยสมบูรณ์

Oracle เองก็คัดลอก API จาก Amazon S3 และนี่เป็นเรื่องปกติโดยสมบูรณ์
ทนายความของ Oracle เปรียบเทียบการใช้งาน Java API ใหม่ใน Android กับการคัดลอกเนื้อหาของ "Harry Potter" รูปแบบไฟล์ PDF

ศาลฎีกาสหรัฐจะพิจารณาคดีสำคัญในต้นปีนี้ ออราเคิลกับกูเกิลซึ่งจะกำหนดสถานะทางกฎหมายของ API ภายใต้กฎหมายทรัพย์สินทางปัญญา หากศาลเข้าข้าง Oracle ในคดีมูลค่าหลายพันล้านดอลลาร์ ศาลอาจระงับการแข่งขันและผนึกกำลังครอบงำบริษัทยักษ์ใหญ่ด้านเทคโนโลยี ซึ่งอาจรวมถึง Google ด้วย

ในเวลาเดียวกัน ธุรกิจของ Oracle เริ่มแรกสร้างขึ้นจากการนำภาษาโปรแกรม SQL ที่พัฒนาโดย IBM มาใช้ และแม้กระทั่งตอนนี้บริษัทยังนำเสนอบริการคลาวด์ด้วย API จาก Amazon S3 และนี่เป็นเรื่องปกติโดยสมบูรณ์ การนำ API มาใช้ใหม่ถือเป็นส่วนหนึ่งของการพัฒนาวิทยาการคอมพิวเตอร์ตั้งแต่เริ่มต้นอุตสาหกรรม

ออราเคิลกล่าวหาว่า Google คัดลอก Java API อย่างผิดกฎหมาย รวมถึงรายการคำสั่งที่มีชื่อซึ่งเชื่อมโยงกับโครงสร้างทางไวยากรณ์ ระบบปฏิบัติการ Android เข้ากันได้เป็นพิเศษกับ Java API เพื่อให้โปรแกรมเมอร์ Java ถ่ายโอนซอฟต์แวร์และความรู้ไปยังแพลตฟอร์มใหม่ได้ง่ายขึ้น ในการทำเช่นนี้ Android ได้คัดลอกคำสั่ง Java API และโครงสร้างไวยากรณ์ที่เกี่ยวข้องทุกประการ อาร์กิวเมนต์ ออราเคิลคือว่า "การปรับใช้ใหม่" ของ Java API นั้นสามารถเปรียบเทียบได้กับการคัดลอกงานของผู้เขียนเช่นนิยายวรรณกรรม "แฮร์รี่พอตเตอร์" (สิ่งนี้ ตัวอย่างที่แท้จริงมอบให้โดยทนายความของ Oracle) และ Google ละเมิดลิขสิทธิ์ของ Oracle เกี่ยวกับชื่อและโครงสร้างคำสั่ง Java API.

แต่ Java API ไม่ใช่ API เพียงอย่างเดียว และ Android ไม่ใช่เพียงการนำกลับมาใช้ใหม่เท่านั้น ในอุตสาหกรรมไอทีในปัจจุบัน API แพร่หลาย และการนำมาใช้ใหม่เป็นพื้นฐานในการรักษาการแข่งขันเพื่อป้องกันไม่ให้บริษัทขนาดใหญ่ผูกขาด คิด Charles Duane เป็นผู้อำนวยการฝ่ายนโยบายเทคโนโลยีและนวัตกรรมที่ R Street Institute

Duane ยกตัวอย่างแพลตฟอร์มพื้นที่จัดเก็บข้อมูล Amazon S3 ยอดนิยม เพื่อให้สามารถเขียนและเรียกค้นไฟล์จาก S3 ได้ Amazon ได้พัฒนาที่ครอบคลุม API โดยละเอียด เพื่อโต้ตอบกับบริการ ตัวอย่างเช่น หากต้องการดูรายการไฟล์ที่บันทึกไว้ (รายการวัตถุ) เราส่งคำสั่ง GET ระบุโฮสต์และพิมพ์พารามิเตอร์ ประเภทการเข้ารหัส, โทเค็นต่อเนื่อง и x-amz-เดท. หากต้องการทำงานกับ Amazon S3 ซอฟต์แวร์ต้องใช้ชื่อพารามิเตอร์เหล่านี้และชื่อพารามิเตอร์เฉพาะอื่นๆ อีกมากมาย

GET /?Delimiter=Delimiter&EncodingType=EncodingType&Marker=Marker&MaxKeys=MaxKeys&Prefix=Prefix HTTP/1.1
Host: Bucket.s3.amazonaws.com
x-amz-request-payer: RequestPayer

Amazon เป็นผู้นำที่ชัดเจนในตลาดบริการคลาวด์ และคู่แข่งเสนอการนำ S3 API ไปใช้ใหม่ ในขณะที่พวกเขาต้องเลียนแบบชื่อคำสั่ง แท็กพารามิเตอร์ คำนำหน้าประเภท x-amzโครงสร้างไวยากรณ์และการจัดระเบียบทั่วไปของ S3 API กล่าวอีกนัยหนึ่ง ทุกสิ่งที่ Oracle อ้างว่ามีลิขสิทธิ์

ในบรรดาบริษัทที่เสนอสำเนาของ Amazon S3 API ได้แก่ นอกจากนี้ยังมีออราเคิลด้วย. เพื่อความเข้ากันได้ Amazon S3ความเข้ากันได้API จะคัดลอกองค์ประกอบจำนวนมากของ Amazon API ลงไปที่แท็ก x-amz

Oracle เองก็คัดลอก API จาก Amazon S3 และนี่เป็นเรื่องปกติโดยสมบูรณ์

Oracle อ้างว่าความถูกต้องตามกฎหมายของการดำเนินการนั้นขึ้นอยู่กับใบอนุญาตโอเพ่นซอร์ส Apache 2.0 ซึ่งอนุญาตให้คัดลอกและแก้ไขโค้ดได้ฟรี ตัวอย่างเช่น, Amazon SDK สำหรับ Java ยังมาพร้อมกับลิขสิทธิ์ Apache 2.0

แต่คำถามก็คือว่ากฎหมายทรัพย์สินทางปัญญาสามารถนำไปใช้กับสิ่งต่าง ๆ เช่น API ได้หรือไม่ นี่คือสิ่งที่ศาลฎีกาต้องกำหนด

ใครเป็นผู้คิดค้น API?

คำศัพท์และแนวคิดของ "ไลบรารีรูทีนย่อย" ปรากฏครั้งแรกในหนังสือปัญหาการวางแผนและการเข้ารหัสสำหรับเครื่องมือคอมพิวเตอร์อิเล็กทรอนิกส์ - ตอนที่ 1948 เล่มที่ XNUMX (สถาบันการศึกษาขั้นสูงของมหาวิทยาลัยพรินซ์ตัน, XNUMX) โดย Herman Goldstein และ John von Neumann คัดลอกบน archive.org. เนื้อหาของเล่มที่สาม:

Oracle เองก็คัดลอก API จาก Amazon S3 และนี่เป็นเรื่องปกติโดยสมบูรณ์

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

Oracle เองก็คัดลอก API จาก Amazon S3 และนี่เป็นเรื่องปกติโดยสมบูรณ์
ไลบรารีรูทีนย่อย EDSAC อยู่ทางด้านซ้าย

ขั้นตอนต่อไปคือการสร้างฟังก์ชันที่มีลำดับสูงกว่าและอินเทอร์เฟซซอฟต์แวร์ที่ครบครัน ดังที่ Maurice Wilkes และ David Wheeler ทำใน Preparing Programs for the Electronic Digital Computer (1951)

ระยะนั้นเอง อินเทอร์เฟซโปรแกรมแอปพลิเคชัน Application (API) ปรากฏขึ้นที่ไหนสักแห่งในช่วงปลายยุค 60

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

API
ผู้สร้าง
ปี
การปรับใช้ใหม่
ปี

ห้องสมุด FORTRAN
ไอบีเอ็ม
1958
ยูนิแวค
1961

ไอบีเอ็ม S/360 ISA
ไอบีเอ็ม
1964
อัมดาห์ล คอร์ปอเรชั่น
1970

ไลบรารี C มาตรฐาน
เอทีแอนด์ที/เบลล์แล็บส์
1976
บริษัท มาร์ค วิลเลียมส์
1980

การโทรของระบบยูนิกซ์
เอทีแอนด์ที/เบลล์แล็บส์
1976
บริษัท มาร์ค วิลเลียมส์
1980

VT100 Esc ลำดับ
ธันวาคม
1978
ฮีธกิต
1980

ไอบีเอ็มพีซีไบออส
ไอบีเอ็ม
1981
เทคโนโลยีฟีนิกซ์
1984

MS-DOS CLI
ไมโครซอฟท์
1981
โครงการฟรีดอส
1998

ชุดคำสั่ง Hayes AT
เฮย์ส ไมโคร
1982
ระบบอัตโนมัติของจุดยึด
1985

PostScript
อะโดบี
1985
GNU/GhostScript
1988

SMB
ไมโครซอฟท์
1992
โครงการแซมบ้า
1993

Win32
ไมโครซอฟท์
1993
โครงการไวน์
1996

ไลบรารีคลาส Java 2
ดวงอาทิตย์
1998
กูเกิล/แอนดรอยด์
2008

เว็บ API อร่อย
อร่อย
2003
pinboard
2009

ที่มา: "ประวัติส่วนตัวโดยย่อของ API"

การคัดลอกและการนำ API มาใช้ซ้ำ (ไลบรารี ชุดคำสั่ง) ไม่เพียงแต่ถูกต้องเท่านั้น แต่ยังแนะนำวิธีการเขียนโปรแกรมนี้โดยตรงในหลักการของวิทยาการคอมพิวเตอร์ แม้กระทั่งก่อนที่จะคัดลอกอินเทอร์เฟซการเขียนโปรแกรม S3 ตัว Oracle เองก็ทำเช่นนี้หลายครั้ง นอกจากนี้ ธุรกิจของ Oracle ยังถูกสร้างขึ้นจากการนำภาษาโปรแกรม SQL ที่พัฒนาโดย IBM มาใช้ ผลิตภัณฑ์หลักตัวแรกของ Oracle คือ DBMS ซึ่งส่วนใหญ่คัดลอกมาจาก IBM System R ในกรณีนี้ เรากำลังพูดถึงการนำ SQL ไปใช้ใหม่เป็น “API มาตรฐาน” สำหรับ DBMS

การกำหนดสิทธิในทรัพย์สินทางปัญญาบน API สามารถสร้างเขตทุ่นระเบิดทางกฎหมายที่ส่งผลกระทบต่อทุกคน APIs นำไปใช้และ บริการคลาวด์อื่น ๆ. มาตรฐานทางเทคนิคหลายประการ เช่น Wi-Fi และโปรโตคอลอินเทอร์เน็ต รวมถึง API อินเทอร์เฟซการเขียนโปรแกรมจำเป็นต้องมีการใช้งานใหม่ในบางรูปแบบบนคอมพิวเตอร์ทุกเครื่องและเซิร์ฟเวอร์บนอินเทอร์เน็ต ทฤษฎีลิขสิทธิ์ของ Oracle สามารถทำให้เกือบทุกอย่างที่คุณทำกับคอมพิวเตอร์ของคุณผิดกฎหมาย

เพื่อหลีกเลี่ยงผลกระทบที่ตามมาในวงกว้างเหล่านี้ Oracle และศาลอุทธรณ์ที่ยืนหยัดตามข้อโต้แย้งได้พยายามจำกัดการละเมิดลิขสิทธิ์ให้เหลือเพียงการนำ API บางส่วนไปใช้ใหม่ที่ "เข้ากันไม่ได้" กับต้นฉบับ แต่การนำไปปฏิบัติใหม่บางส่วนก็เช่นกัน เป็นเรื่องธรรมดา. แม้แต่ในสำเนาของ S3 API นั้น Oracle ยังบันทึก “ความแตกต่าง” และความเข้ากันไม่ได้มากมายกับ Amazon API ดั้งเดิม

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

ตัวแทนอุตสาหกรรมและนักพัฒนาได้แต่หวังว่าเหตุผลจะมีชัยที่นี่และ กรรมการรู้พื้นฐานของการเขียนโปรแกรม.

ที่มา: will.com

เพิ่มความคิดเห็น