Pet Store : ตึก World Trade Center ของ Sun

    อย่างที่ผมเคยบอกครับว่าสงครามน้ำลายระหว่าง Microsoft และ Sun คงจะยืดเยื้อน่าดู วันนี้ผมจะลองประมวลภาพเหตุการณ์ให้ดู ใจจริงก็ยังไม่อยากจะเขียน แต่ผมเห็นใน Web board มีเรื่องเกี่ยวกับการเปรียบเทียบระหว่าง C# และ Java ผมเลยตัดสินใจเขียนเรื่องนี้

C# ไม่ใช่คู่แข่งของ Java

    C# ไม่ใช่ขุนพลของ Microsoft ที่เข้าตี Java มันเป็นกองหนุนเท่านั้น ผมไม่เชื่อว่า คนจะเปลี่ยนจากการใช้ Java มาเป็น C# เพียงเพราะว่าภาษาที่ดีกว่า แน่นอนครับ ถ้าพูดกันถึง Syntax ล้วนๆ แล้ว C# ให้มากกว่า Java แน่นอน และสวยงามกว่า แต่นั่นคงเป็นแค่ความรู้สึกดีๆ เล็กๆ เท่านั้น ตัวที่แข่งกันจริงๆ นั่นก็คือ Java Platform และ .NET Framework นั่นเองครับ เรากำลังพูดถึง ความสามารถที่ Platform ให้เรา เพื่อตอบสนองความต้องการในยุคปัจจุบัน ถ้าว่าไปแล้วมันก็สูสีครับ เพราะ .NET Framework นั้นลอก Java Platform มาไม่ใช่น้อย แต่ลอกแล้วทำให้ดีกว่าเดิม ก็น่าสนใจครับ

สงครามน้ำลายเริ่มจาก Sun

    Sun เป็นจ้าวครองตลาดมานาน พอเจอ Microsoft ซึ่งเป็นคู่รักคู่แค้นกัน ทำเลียนแบบ ก็คงไม่สบอารมณ์เป็นธรรมดา ดังนั้น Sun จึงเริ่มเกมส์ก่อนโดยการ ให้ลิ่วล้อเข้าโจมตี โดยออก Web Page เปรียบเทียบระหว่าง .NET และ Java Platform ซึ่งผมเคยลงเอาไว้แล้ว ในเอกสารนั้นบ่งบอกว่า Java Platform เหนือกว่าทุกอย่าง ซึ่งจริงไม่จริง พิจารณากันเองครับ

การตีโต้ของ Microsoft

    Sun เล่นวิธี เขียนเกทับ ซึ่ง Microsoft ก็เงียบอยู่เป็นเวลานาน จนกระทั่งเดือนพฤศจิกายนที่ผ่านมา Microsoft โต้กลับ แบบที่ Sun ไม่ได้ตั้งตัว เรามาดูกันครับ ว่า Microsoft ทำอย่างไรบ้าง

J2EE

    ใครเริ่มหัดใช้ Java Platform คงจะสับสนไม่น้อย และรู้สึกว่า มันช่างยิ่งใหญ่อะไรเช่นนั้น ตั้งแต่ แยกรุ่น J2SE และ J2EE ทำให้รู้สึกว่า J2EE ต้องเป็นอะไรที่ซับซ้อนและยิ่งใหญ่มาก แต่ถ้าดูจริงๆ แล้ว หัวใจของ J2EE มันก็มีที่ JSP , Servlet และ EJB ซึ่งกล่าวโดยรวมแล้ว มันคือเครื่องมือในการทำ Web Service นั่นเอง ซึ่ง Microsoft รวมเหล่านี้ไว้อยู่ใน ASP.NET แต่ภาพพจน์ของ Sun ดูดีกว่า ทำให้รู้สึกว่า .NET Framework นั้น เปรียบเทียบได้กับ J2SE เท่านั้น แต่ที่จริงไม่ใช่ครับ .NET Framework = J2SE + J2EE

Pet Store ความภูมิใจของ Sun

    เมื่อกลางปีที่ผ่านมา Sun ได้แสดง Code การทำ Application ที่ชื่อว่า Pet Store  ซึ่ง Application ตัวนี้ เป็นตัวแสดงความสามารถของ J2EE ให้โลกประจักษ์ ว่าทำได้ง่ายขนาดใหญ่ ซึ่งเรื่องราวเกี่ยวกับ Pet Store และ Source Code  ดูได้จาก http://java.sun.com/blueprints/code/jps13/datasheet.html

Guerrilla Attack

    เมื่อเดือน พ. ที่ผ่านมา Microsoft โต้กลับโดยการโจมตี Pet Store โดยการ Implement ตัว Pet Store บน .NET Framework ซึ่งเรื่องนี้ใครๆ ก็นึกไม่ถึงครับ เล่นหนักจริงๆ แล้ว Microsoft ก็ทำสำเร็จด้วยสิครับ ซึ่งรายละเอียด และ Source Code ดูได้จาก http://www.gotdotnet.com/team/compare/petshop.aspx

    ซึ่งนั่นก็เป็นข้อพิสูจน์อย่างชัดเจนว่า .NET Framework มีสามารถได้ไม่น้อยหน้า J2EE ของ Show Off ของ Sun ก็ถูก Microsoft โจมตีเสียแล้วครับ เท่านั้นยังไม่พอ ใน Web Page เดียวกันยังแสดงให้เห็นถึงการเปรียบเทียบบางอย่างที่น่าสนใจดังนี้ครับ

    ซึ่งเรื่องนี้โด่งดังมาก เล่นเอา Sun นั่งไม่ติดแล้วครับ

การแก้ต่างของ Sun

    Sun แจ้งออกมาว่าการเปรียบเทียบนี้ไม่ยุติธรรม เพราะ Sun ไม่ได้เน้นความเร็วเวลา Implement ไม่เป็นไรครับ ไม่เน้นก็ไม่เน้น

Oracle ไม่ยอม

    Oracle ก็นั่งไม่ติดเหมือนกันครับ เพราะ Benchmark ที่ Sun ทำนั้น ใช้ Oracle เพื่อ Implement แบบนี้ จะหมายความว่า Oracle ช้ากว่า Microsoft SQL Server แบบนี้ก็ใช่ที่ ดีไม่ดียอดขายจะตกเอา ดังนั้น Oracle จึงเอา Source Code ของ Microsoft มาวิเคราะห์และทำ Benchmark ดูใหม่ ได้ผลลัพธ์ดังใน Web Site นี้ครับ http://otn.oracle.com/tech/java/oc4j/pdf/9ias_net_bench.pdf  page นี้ทำเมื่อวันที่ 4 .ค ที่ผ่านมาก ซึ่งเนื้อหาออกมาทำนองว่า ที่ Microsoft ทำได้เร็วนั้น เพราะได้ไปแปลงในส่วนคำสั่ง SQL ซึ่งเมื่อ Oracle จูนความเร็วใหม่ และอ้างว่าทำ Benchmark ใหม่ ด้วยเครื่องคอมพิวเตอร์ระดับเดียวกัน ผลลัพธ์คือ Oracle เร็วกว่าเยอะครับ รายละเอียดลองอ่านดูครับ จาก pdf ข้างบน

Microsoft ท้าพิสูจน์

    เพียงหนึ่งวันหลังจาก ที่ Oracle เอา Graph มาแสดงให้เห็นว่า J2EE ที่ใช้ Oracle เมื่อจูนแล้วเร็วกว่า .NET Framework ซึ่ง Microsoft ก็สวนกลับทันทีที่ Web Page นี้ครับ http://www.gotdotnet.com/team/compare/oraclerespond.aspx ซึ่ง Microsoft กล่าวหา Oracle ว่า กราฟที่ทำนั้นยกเมฆขึ้นมาเอง ถ้าแน่จริงเปิดเผย Source Code มาให้ดูว่า Oracle จูนยังไงถึงได้เร็วขนาดนั้น Microsoft บอกว่าเป็นไปไม่ได้ พร้อมกับท้า Oracle ผ่าน Web ว่า แน่จริงเอาเจอกันที่เวทีกลาง ที่ Lab ไหนก็ได้ มาพิสูจน์ให้เห็นจะๆ เลยว่าใครจะเร็วกว่ากัน

O'REILLY ขอแจมด้วยคน

    เขามาในฐานะคนกลางครับ แต่จะเอียงข้างไหนไม่ทราบ ดูรายละเอียดได้จาก http://www.onjava.com/pub/a/onjava/2001/11/28/catfight.html ใน Web ก็มองมุมต่างๆ ดังนี้ครับ

สรุป

    เรื่องนี้ Oracle ยังเงียบอยู่ ไม่เห็นมีข่าวออกมาว่า Oracle จะรับคำท้าของ Microsoft หรือไม่ ถ้ารับ ก็คงสนุกครับ แต่ผมว่าไม่รับแน่นอน เพราะ Oracle คงไม่ได้แพ้ Microsoft SQL Server สองตัวนี้เร็วไม่ได้ต่างกัน แต่ตัวที่จะฉุดก็คือ Java Platform นั่นเอง ซึ่งเป็นอันรู้กันว่า มันเต่ามาก แข่งทีไรคงแพ้ .NET Framework ทุกที ผมขอเล่นบทหมอดูว่า งานนี้ Oracle คงเงียบครับ เลิกแล้วต่อกัน ไปสู้กันที่เวทีใหม่ดีกว่า

    ผมเองคงไม่มีเวลาไปวิเคราะห์ Code ทั้ง 2 ตัว อย่างเก่งก็เอาที่คนอื่นที่เขียนมา เอามาขยายต่อ เรื่องนี้มันเหมือน 2 คนเถียงกัน ต่างฝ่ายต่างเอาชนะกัน ผมคงแยกไม่ออกครับว่าอะไรจริง อะไรไม่จริง แต่สิ่งหนึ่งที่แน่ๆ คือ Pet Store สามารถ Implements ได้บน .NET Framework ได้สบายครับ ซึ่งเรื่องนี้ทุกคนก็เห็นด้วย