28 คะแนน โดย GN⁺ 2025-05-18 | 13 ความคิดเห็น | แชร์ทาง WhatsApp
  • James Gosling คือผู้สร้าง Java และได้รับการยกย่องว่าเป็น อัจฉริยะเชิงปฏิบัติที่ส่งอิทธิพลต่อการประมวลผลยุคใหม่ตลอด 30 ปี
  • เขาเติบโตมาในสภาพแวดล้อมที่ยากจน และ เรียนรู้การเขียนโปรแกรมด้วยการประกอบคอมพิวเตอร์จากชิ้นส่วนในกองขยะ โดย การเรียนรู้ด้วยตนเอง นี้ได้สะท้อนอยู่ในปรัชญาการออกแบบภาษาของเขาในเวลาต่อมา
  • ช่วงเวลาที่ Sun Microsystems ซึ่ง ความขี้เล่นและนวัตกรรมอยู่ร่วมกัน ได้กลายเป็นรากฐานของความคิดสร้างสรรค์และการสร้างวัฒนธรรมทางเทคนิคในแบบฉบับของ Gosling
  • ล่าสุดเขาได้แสดง ความสงสัยอย่างมากต่อเครื่องมือ Generative AI และกระแส AI พร้อม ย้ำว่าความสำคัญของการศึกษาด้านการเขียนโปรแกรมกลับยิ่งเพิ่มขึ้น
  • เคล็ดลับที่ทำให้ Java อยู่รอดไม่ใช่ความหวือหวา แต่คือ ปรัชญาการออกแบบเชิงปฏิบัติที่ยึดมั่นเรื่องความเสถียร ความเข้ากันได้ย้อนหลัง และประสิทธิภาพการทำงานของนักพัฒนาอย่างเคร่งครัด

Java at 30: The Genius Behind the Code That Changed Tech

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

James Gosling: The Brilliant Mind Behind Java

  • James Gosling ไม่ได้เป็นเพียง ‘บิดาแห่ง Java’ แต่ยังเป็น อัจฉริยะผู้ถ่อมตัวที่อธิบายแนวคิดซับซ้อนให้เข้าใจได้อย่างเป็นธรรมชาติ
  • ในวาระครบ 30 ปีของการสร้าง Java เขาได้ย้อนมองเส้นทางเทคโนโลยีของตน พร้อมทบทวน วิวัฒนาการของภาษาและวัฒนธรรมการพัฒนา

The Path To Programming: Resourceful Beginnings

  • ในวัยเด็กที่ต้องอยู่ท่ามกลางความยากจนอย่างหนัก Gosling มี ประสบการณ์เก็บโทรทัศน์จากถังขยะมาปลุกปั้นความคิดสร้างสรรค์ด้านเทคนิค
  • คอมพิวเตอร์เครื่องแรกของเขาประกอบขึ้นจากแร็กรีเลย์ที่ถูกทิ้งจากชุมสายโทรศัพท์ ซึ่งเป็น สัญลักษณ์ของเซนส์ด้านกลไกและทักษะการประกอบที่โดดเด่นตั้งแต่อายุยังน้อย
  • การได้ไปเยี่ยมศูนย์คอมพิวเตอร์ของมหาวิทยาลัย Calgary และหลงใหลในหน้าจอ ไฟกะพริบ และอุปกรณ์เทป คือจุดเริ่มต้นของ ความอยากรู้อยากเห็นด้านการเขียนโปรแกรมที่ติดตัวตลอดชีวิต
  • เขาเรียนรู้ด้วยตนเองจากการคุ้ยการ์ดเจาะรูเพื่อให้ได้รหัสผ่าน และในช่วงมัธยมก็เขียนโปรแกรมวิเคราะห์ข้อมูลดาวเทียมให้ภาควิชาฟิสิกส์ของมหาวิทยาลัย พร้อม สะสมประสบการณ์การสนุกกับการเขียนโปรแกรมแบบมีรายได้
  • ประสบการณ์เขียนโปรแกรมยุคแรกของเขาครอบคลุมทั้ง PL/1 บน IBM mainframe, Fortran, ภาษาแอสเซมบลีของ PDP-8 และโค้ดบน CDC 6400 เขาเอ่ยอย่างเรียบ ๆ ว่า “ช่วงหน้าร้อนผมรับงานพัฒนา COBOL compiler” ทั้งที่นั่นเป็นงานที่โปรแกรมเมอร์มากประสบการณ์จำนวนมากยังมองว่ายากจะรับมือ

Academia to Industry: Finding His Way

  • Gosling อธิบายโลกวิชาการว่าเป็น “ห้องแล็บที่ใช้แรงงานบัณฑิตศึกษาราคาถูก” ซึ่งสะท้อน มุมมองตรงไปตรงมาที่ให้ความสำคัญกับการใช้งานจริงมากกว่าทฤษฎี
  • ระหว่างเรียนปริญญาเอกที่ Carnegie Mellon เขาก็ทำงานที่สตาร์ตอัปไปพร้อมกัน สั่งสมประสบการณ์จากโลกจริง ก่อนกลับมาปิดจบการศึกษา เป็น เส้นทางอาชีพที่ยืดหยุ่นและเดินคู่กันระหว่างอุตสาหกรรมกับวิชาการ
  • งานแรกของเขาคือที่ IBM Research แต่เขาให้ความเห็นว่าเป็น “บริษัทที่ทุ่มเทให้กับการยิงเท้าตัวเอง” แสดงถึง ท่าทีวิเคราะห์องค์กรและกลยุทธ์เทคโนโลยีอย่างเยือกเย็น
  • ประสบการณ์ช่วงแรกเหล่านี้ภายหลังกลายเป็น พื้นฐานความเข้าใจวัฒนธรรมองค์กรที่ยึดโลกจริงเป็นศูนย์กลาง ซึ่งส่งผลต่อวิธีทำงานของเขาที่ Sun Microsystems

The Sun Days: Innovation and Pranks

  • เมื่อพูดถึงความทรงจำที่สนุกที่สุดที่ Sun, Gosling ยกให้ โปรเจกต์แกล้งวัน April Fools’ ขนาดใหญ่ที่จัดขึ้นทุกปี เป็นอันดับต้น ๆ พร้อมรำลึกถึงวัฒนธรรมองค์กรที่ความคิดสร้างสรรค์และความสนุกอยู่ร่วมกัน
  • หนึ่งในตัวอย่างการแกล้งที่โดดเด่นคือการทำแท่นลอย Ferrari ไว้กลางสระ ซึ่งสะท้อน อารมณ์ขันที่ใช้ทักษะแก้ปัญหาทางวิศวกรรมและการทำงานเป็นทีม
  • อีกครั้งหนึ่งพวกเขาสร้างสนามกอล์ฟ 1 หลุมในห้องทำงาน CEO พร้อมหญ้าเทียม บังเกอร์ และ water hazard ซึ่งถูกกล่าวถึงว่าเป็น ความพยายามสุดสร้างสรรค์ที่ผสานเทคโนโลยีกับการเล่นสนุก
  • Gosling จดจำ Sun ว่าเป็น “สภาพแวดล้อมอันหาได้ยากที่เปิดพื้นที่ให้ทั้งความเป็นเลิศทางเทคนิคและความคิดสร้างสรรค์แบบขี้เล่น” และสิ่งนี้ก็กลายเป็น รากฐานของวิธีคิดในการแก้ปัญหาและทัศนคติต่อเทคโนโลยีของเขา

Java: Creating a Legacy That Changed Everything

  • การเดินทาง 30 ปีของ Java สำหรับ Gosling คือ ความสำเร็จที่เป็นตัวแทนที่สุดและจุดเปลี่ยนสำคัญของชีวิตด้านเทคโนโลยี
  • เขากล่าวถึง ความพึงพอใจอย่างลึกซึ้งต่ออิทธิพลที่ทิ้งไว้ในระบบนิเวศนักพัฒนา ทุกครั้งที่มีคนเข้ามาบอกตามท้องถนนว่า “ผมมีอาชีพได้เพราะ Java”
  • ฟีเจอร์อย่าง lambda และ generic เป็นสิ่งที่เขาอยากใส่มาตั้งแต่แรก แต่ได้เลื่อนจังหวะการนำเข้ามาตาม ปรัชญาการออกแบบที่ว่า “จะไม่ใส่มันด้วยวิธีที่ผิด”
  • สำหรับการดูแล Java ของ Oracle เขามองว่า “ทำได้ดีกว่าที่คาด” และย้ำว่าในความเป็นจริง การมีส่วนร่วมและแรงสนับสนุนอย่างต่อเนื่องจากชุมชนคือบทบาทสำคัญ
  • Java ได้พัฒนาตัวเองให้เหมาะกับสภาพแวดล้อมแบบคลาวด์ พร้อมความก้าวหน้าในด้านการรองรับ multicore, การจัดการหน่วยความจำ และการปรับปรุง GC จนไปถึง ระดับความสมบูรณ์ทางเทคนิคที่ “ยอดเยี่ยมจริง ๆ”

Beyond Java: Ventures After Sun

  • หลัง Sun ถูก Oracle เข้าซื้อ Gosling พักช่วงสั้น ๆ ก่อนเข้าร่วม Google แต่ก็ ลาออกใน 6 เดือนแล้วย้ายไป Liquid Robotics
  • ที่นั่นเขาพัฒนาระบบควบคุมหุ่นยนต์ทะเลอัตโนมัติ และได้สัมผัส สภาพการทำงานที่มีเอกลักษณ์ ซึ่งเทคโนโลยีผสานกับธรรมชาติ รวมถึงงานที่ต้องดำน้ำตื้นในฮาวาย
  • เขาเข้าร่วมโปรเจกต์ตรวจวัดอุณหภูมิน้ำทะเลในอาร์กติกและแอนตาร์กติก แต่ด้วยการที่งานวิจัยสิ่งแวดล้อมขาดเงินทุน จึงเกิด ความขัดแย้งกับโครงสร้างสตาร์ตอัปที่ขับเคลื่อนด้วย VC
  • เมื่อแรงกดดันให้หันไปสู่ภาคกลาโหมเพิ่มขึ้น เขาจึงลาออกด้วยเหตุผลทางจริยธรรม แล้วไปร่วมงานที่ AWS ในโปรเจกต์ Greengrass และเครื่องมือสำหรับนักพัฒนา สะท้อน การเลือกเส้นทางอาชีพที่คำนึงทั้งความสนใจทางเทคนิคและมาตรฐานทางจริยธรรม

On Open Source and Industry Trends: Cutting Through the Hype

  • Open source ถูกอธิบายว่าไม่ได้เป็นเพียงเครื่องมือร่วมพัฒนา แต่เป็น ระบบนิเวศหลายมิติที่ทำงานทั้งในฐานะความสัมพันธ์กับนักพัฒนา กลยุทธ์การตลาด และโมเดลการยอมรับแบบ bottom-up
  • สำหรับเทรนด์ low-code และ no-code เขามองว่าเป็นข้ออ้างที่ถูกพูดซ้ำมาตั้งแต่ยุค COBOL พร้อมแสดงความสงสัยว่าเป็น แนวทางเฉพาะทางที่มีข้อจำกัดเมื่อใช้กับโดเมนที่ซับซ้อน
  • เขาบอกว่าปัญหาของ AI และ machine learning ไม่ได้อยู่ที่ตัวเทคโนโลยี แต่อยู่ที่ชื่อเรียก พร้อมวิจารณ์คำศัพท์ว่า คำว่า “advanced statistical techniques” สะท้อนแก่นแท้ได้มากกว่า
  • เขามองว่า AI เป็นเพียงเครื่องมือ ไม่ควรถูกเข้าใจผิดว่าเป็นสิ่งมีชีวิตอิสระ และควรถูกมองเป็น เครื่องมือระดับสูงที่ช่วยเสริมมนุษย์มากกว่าจะคุกคามแรงงานมนุษย์

Developer Tools and Preferences: Embracing Progress

  • Gosling ใช้ NetBeans IDE เป็นเครื่องมือหลักในการพัฒนา และแสดง จุดยืนสนับสนุน open source ภายใต้ Apache License รวมถึงชุมชนที่คึกคัก
  • เขาแสดง ความเสียดายต่อท่าทีปฏิเสธความก้าวหน้าทางเทคโนโลยี ของนักพัฒนาที่ยังยึดติดกับ Vi หรือเครื่องมือจากยุค 70–80
  • แม้เขาจะยังใช้ Vi บ้างเพราะรันได้ทุกที่ แต่ใน สภาพแวดล้อมพัฒนาแบบจริงจัง เขาสนับสนุนการใช้ IDE สมัยใหม่อย่างชัดเจน

The JVM Vision: From Academic Concept to Global Standard

  • แนวคิดเริ่มต้นของ Java Virtual Machine (JVM) มาจาก การทดลองเรื่องฟอร์แมตการแจกจ่ายที่เป็นกลางต่อสถาปัตยกรรม และงานวิจัยด้านการแปลชุดคำสั่ง ที่ Gosling คิดไว้ตั้งแต่สมัยเรียนบัณฑิตศึกษา
  • ต่อมาแนวคิดนี้พัฒนาไปเป็น เทคโนโลยีแพลตฟอร์มรันไทม์อเนกประสงค์ ที่ไม่เพียงรองรับ Java แต่ยังเปิดให้หลายภาษาทำงานบนฮาร์ดแวร์หลากหลายได้
  • ปรัชญา ‘Write once, run anywhere’ เคยถูกปัดตกในฐานะหัวข้อวิทยานิพนธ์ปริญญาเอกเพราะขาดฐานคณิตศาสตร์รองรับ แต่ท้ายที่สุดก็กลายเป็น เทคโนโลยีเชิงปฏิบัติที่พลิกโฉมสภาพแวดล้อมการพัฒนาซอฟต์แวร์ทั่วโลก

More Recent Work: Bridging IoT Gaps at AWS

  • ที่ AWS, Gosling เข้าร่วมพัฒนา Greengrass ซึ่งเป็นเฟรมเวิร์กแอปพลิเคชัน IoT โดยถ่ายทอด แนวทางทางเทคนิคที่ทำให้ปัญหาซับซ้อนเรียบง่ายลงอย่างสง่างาม
  • มันช่วย abstract งาน boilerplate ที่เกิดซ้ำระหว่างการ deploy และการ operate เช่น OTA update, การควบคุมระยะไกล, telemetry, ความน่าเชื่อถือของเครือข่าย, ความปลอดภัย และการจัดการการยืนยันตัวตน
  • โค้ดฝั่งอุปกรณ์ถูกเปิดเป็น open source เพื่อกระตุ้น การมีส่วนร่วมจากชุมชนในการพอร์ตไปยังแพลตฟอร์มที่ Amazon ไม่ได้ให้ความสำคัญเป็นลำดับแรก เช่น RISC-V
  • ต่อมาอีกโปรเจกต์เครื่องมือพัฒนาที่เขาเข้าร่วมต้องหยุดชะงักเพราะกระแส AI สะท้อน ปัญหาของความสับสนที่ขับเคลื่อนด้วยกระแส มากกว่าความจริงแท้ทางเทคนิค

AI Skepticism

  • ในบทสัมภาษณ์ล่าสุด Gosling ใช้คำว่า “ส่วนใหญ่เป็นเรื่องหลอกลวง” กับการปฏิวัติ AI พร้อมแสดง มุมมองเชิงสงสัยที่มอง AI เป็นคำทางการตลาดที่เป็นพิษเป็นพิเศษ
  • แม้จะยอมรับว่าเป็นเทคโนโลยีที่น่าประทับใจในเชิงคณิตศาสตร์ เขาก็ชี้ว่า ชื่อ AI เองคือ ปัญหาที่บิดเบือนสาระของสิ่งที่แท้จริงแล้วเป็นเทคนิคสถิติขั้นสูง
  • เขาวิพากษ์กระแส AI ที่ขับเคลื่อนโดย venture capital ว่าเป็น “แหล่งรวมของนักต้มตุ๋นและพวกปั่นกระแสเกินจริง” พร้อม ตำหนิแนวโน้มการมุ่งหากำไรระยะสั้นจาก exit มากกว่าประโยชน์ใช้สอยทางเทคโนโลยีจริง
  • เขาเตือนว่าเม็ดเงินลงทุนด้าน AI ส่วนใหญ่สุดท้ายจะ “ถูกดูดลงหลุมดำ” เป็น คำเตือนต่อกระแสเงินทุนที่วิ่งตามแฟชั่นโดยไร้ความยั่งยืน

Is It a Vibe? AI Coding Tools: Impressive Demos, Limited Utility

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

Java’s Evolution: Language Features and Runtime Improvements

  • การเปลี่ยนแปลงล่าสุดของภาษา Java เช่น type inference และการปรับปรุงรูปแบบการประกาศอาร์เรย์ ถูกมองว่าเป็น การขยายฟีเจอร์ที่มีประโยชน์และช่วยเพิ่มความสะดวกในการพัฒนา
  • อย่างไรก็ตาม Gosling เน้นว่าพัฒนาการที่น่าประทับใจที่สุดของ Java อยู่ที่ คุณภาพที่ดีขึ้นของสภาพแวดล้อมรันไทม์ JVM และ standard library
  • JVM รุ่นใหม่แสดง ประสิทธิภาพการรันที่ “น่าทึ่ง” ทั้งในด้านคุณภาพโค้ด ประสิทธิภาพของ thread และ garbage collection
  • เขาระบุว่ามีประสิทธิภาพกว่า C ที่อิง malloc ในแง่การจัดการหน่วยความจำและความสามารถในการคาดการณ์ประสิทธิภาพ พร้อมกล่าวถึง ศักยภาพในการปรับจูนให้เวลาหยุดของ GC ลดลงเหลือระดับไม่กี่มิลลิวินาที
  • JVM ในปัจจุบันถูกประเมินว่าเป็น สภาพแวดล้อมรันไทม์สมรรถนะสูงที่รับมือกับพื้นที่หน่วยความจำขนาดมหาศาลอย่างน่าเหลือเชื่อได้อย่างเสถียร

Programming Languages for Critical Infrastructure

  • เมื่อถูกถามว่าควรใช้ภาษาอะไรเขียนระบบควบคุมการจราจรทางอากาศของ FAA ใหม่ Gosling ตอบปฏิเสธสมมติฐานของคำถามว่า “มันเหมือนเลือกค้อนก่อนสร้างบ้าน”
  • เขาย้ำว่าต้องเข้าใจคุณลักษณะของโดเมนปัญหาให้ชัดก่อน เช่น ระบบสื่อสาร กฎระเบียบระหว่างประเทศ เส้นทางการบิน และการหลีกเลี่ยงการชน แล้วจึงค่อยเลือกเทคโนโลยี
  • อย่างไรก็ตาม เขาก็เสริมว่า สำหรับระบบขนาดใหญ่ที่ความน่าเชื่อถือมีความสำคัญสูง Java สามารถเป็นตัวเลือกที่แข็งแกร่งได้

The Future of Programming in an AI World

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

Java’s Longevity Secret

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

Oracle’s Stewardship: Better Than Expected

  • Gosling กล่าวถึงการดูแล Java ของ Oracle หลังการเข้าซื้อ Sun Microsystems ว่า “ทำได้ดีกว่าที่คิดไว้มาก” พร้อม แสดงความประหลาดใจต่อผลงานที่เกินความคาดหมาย
  • ตอนแรกเขากังวลเรื่อง ‘การปล้นชิงและการทำลาย’ จากพฤติกรรมในอดีต แต่สิ่งที่เกิดขึ้นจริงคือ Oracle ไม่ได้ขัดขวางทีม Java และยังคุ้มครองมันไว้ ทำให้เขา ประเมินเชิงบวกต่อความเป็นอิสระและการบริหารที่เน้นเทคโนโลยี
  • แม้จะชี้ว่าการสนับสนุนด้านงบประมาณยังไม่มากพอ แต่เขาก็ให้คะแนนสูงกับ โครงสร้างที่เปิดให้อิสระแก่ทีมเทคนิคโดยปราศจากการแทรกแซงจากองค์กร

Crab Lovers Unite!

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

13 ความคิดเห็น

 
cosine20 2025-05-21

ผมเองก็คิดว่า ในบรรดาภาษาแบบ static type ภาษาที่ใช้งานได้สะดวกและสบายที่สุดก็คือ Java

อย่างไรก็ตาม ในแง่การพัฒนาเชิงอเนกประสงค์และใช้งานได้จริง การเขียนแอปที่มี GUI สำหรับผู้ใช้ปลายทางด้วย Java ไม่ใช่ตัวเลือกที่ดีนัก (ถ้ามองในมุมนั้น การจับคู่ระหว่าง C# + .NET ถือว่าดีที่สุด)
เมื่อพิจารณาจากข้อดีของ Java ผมคิดว่าการนำไปใช้ทางฝั่งแบ็กเอนด์หรือมิดเดิลแวร์เป็นกรณีที่เหมาะสมที่สุดในเชิงปฏิบัติ

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

 
mhj5730 2025-05-19

เรื่องเล่าว่าเขาแยกชิ้นส่วนทีวีจากกองขยะแล้วเริ่มเขียนโปรแกรม ฟังดูเหมือนเป็นจุดเริ่มต้นของตำนานจริง ๆ เลยครับ

 
ndrgrd 2025-05-18

เป็นความจริงที่ว่าหลังจาก Java เป็นต้นมา ภาษาต่าง ๆ ก็เริ่มให้ความสำคัญกับประสิทธิภาพในการพัฒนามากขึ้น

ก่อนหน้านั้น C++ ที่ถูกใช้งานบ่อยก็ยังน่าหวาดหวั่นแม้แต่แค่อ่านอยู่จนถึงทุกวันนี้ โดยเฉพาะเวลาต้องไปแตะโปรเจ็กต์ที่ดำเนินมายาวนาน

 
3ae3ae 2025-05-18

ผมเห็นด้วยได้ยากกับคำกล่าวที่ว่าจาวาให้ความสำคัญกับประสิทธิภาพการทำงานของนักพัฒนา
มีภาษาไหนอีกไหมที่พัฒนามาจนต้องพึ่งพา IDE อย่างลึกซึ้งเท่าจาวา?

 
3ae3ae 2025-05-19

ผมคอมเมนต์ไปอย่างหุนหันพลันแล่นนะครับ

 
sunrabbit 2025-05-19

การพึ่งพา IDE อย่างมากเป็นปัญหาของ ecosystem ของ Java ที่พัฒนาไปแบบไม่อุดมคติ
ไม่ใช่ปัญหาในระดับการออกแบบ

พูดกันตรง ๆ ว่าตอนนี้เวลาพัฒนา Java ก็ไม่จำเป็นต้องใช้ผลิตภัณฑ์ของ JetBrains ก็ได้
แต่ทุกคนก็ใช้กันแบบนั้นอยู่ดี

แล้วถ้าดูรายชื่อภาษาโปรแกรมมิงในยุคที่ Java ออกมา จะเห็นว่าส่วนใหญ่เป็นภาษาที่มีการพึ่งพาแพลตฟอร์ม หรือก็คือมี implementation ที่ผูกกับ OS อยู่มาก
Java ต่างหากที่แสดงให้เห็นทิศทางที่ภาษาต่าง ๆ อย่าง Node, Python และ C# จะมุ่งไป คือการรันบน OS ที่หลากหลายได้ด้วยโค้ดชุดเดียว

พอมาถึงยุคปัจจุบัน ความเข้ากันได้ที่ทำให้โค้ดชุดเดียวรันได้บน OS ที่หลากหลายกลายเป็น "สามัญสำนึก" ไปแล้ว

 
roxie 2025-05-26

> พูดกันตรง ๆ ตอนนี้ต่อให้พัฒนา Java ก็ไม่ได้จำเป็นต้องใช้ผลิตภัณฑ์ของ JetBrains เสมอไป

ตรงส่วนนี้... ค่อนข้างเห็นด้วยได้ยากนิดหน่อยนะ ฮือ...

 
kwj9211 2025-05-19

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

 
angrycoder 2025-05-18

เมื่อเทียบกับภาษาก่อนยุค Java ก็ดูเหมือนว่าจะมีประสิทธิภาพในการพัฒนาที่ดีกว่า

 
ahwjdekf 2025-05-18

c++ > c# >= java

 
cosine20 2025-05-21

C# >= Java > C++

 
GN⁺ 2025-05-18
ความคิดเห็นจาก Hacker News
  • มองว่าแม้ประสิทธิภาพของ Java จะไม่ถึงระดับสูงสุด แต่ก็ไม่ได้แย่ โดยน่าจะอยู่ราวอันดับ 3 รองจาก C/C++ เร็วกว่า Go ด้วยซ้ำ และนำหน้า Python หรือ Ruby มากกว่า 10 เท่า จึงพอใจในจุดนี้ ไวยากรณ์ของ Java อาจไม่สมบูรณ์แบบแต่มีความสม่ำเสมอและคาดเดาได้ซึ่งเป็นข้อดี หากใช้เครื่องมืออย่าง Idea หรือ Eclipse ก็แทบไม่ต้องกังวลเรื่องผลิตภาพ แม้วิธีจัดการหน่วยความจำจะต่างจากปรัชญาแบบ Unix แต่เมื่อเข้าใจก็รู้สึกว่าเป็นทางประนีประนอมที่รับได้ และพอใจกับความเป็นภาคปฏิบัติที่ได้จาก trade-off เหล่านี้ ซึ่งให้ทั้งความเร็ว ความปลอดภัยของหน่วยความจำ รวมถึงข้อดีอย่าง dynamic call และ hotswap ไปพร้อมกัน
    • รู้สึกชัดว่าเครื่องมืออย่าง IntelliJ สำหรับ Java นั้นโดดเด่นกว่าภาษาอื่นมาก สงสัยว่าทำไมชุมชน Go ถึงไม่ค่อยมีความกระตือรือร้นในการพัฒนา concurrent data structure containers วัฒนธรรมการเขียนโค้ด concurrency ของ Java ที่สนับสนุนให้ใช้คอนเทนเนอร์ที่ดีนั้นน่าอิจฉา และบางครั้งก็คิดถึง java.util.concurrent หรือ JCTools
    • ตอนเพิ่งจบมหาวิทยาลัยใหม่ ๆ เคยคิดว่า Java ทำได้ทุกอย่าง แต่ภายหลังจึงตระหนักว่าสิ่งที่ล้ำยุคจริง ๆ คือ JVM และ tooling ของ Java App Server มากกว่า ตัวภาษาเองเคยทำให้ผิดหวังก่อนที่ผลิตภาพจะดีขึ้นในช่วงปี 2006~2007 ทุกวันนี้จึงสนใจภาษาอื่นที่รันบน JVM เช่น JRuby, Clojure, Scala, Groovy, Kotlin เป็นต้น โดยเฉพาะ JRuby ที่น่าสนใจเพราะใช้ประโยชน์จาก ecosystem ที่โตเต็มที่ได้สองชุด การที่ Project Loom ทำให้ใช้ Fiber แบบ Ruby บน JVM ได้ก็เป็นผลดีต่อทั้งสองฝั่ง และผลงานของ Charles Nutter ก็ถูกประเมินค่าต่ำเกินไป
    • แม้จะบอกว่า Java เร็วกว่า Go แต่ในความเป็นจริงหลายกรณี Go กลับเร็วกว่า หรือใช้หน่วยความจำน้อยกว่า 2~10 เท่า จึงถือว่าอยู่ระดับใกล้เคียงกัน ด้วยความเป็น value type ของ Go จึงทำ optimization ได้ง่าย ประทับใจที่มีการพูดถึง Go เป็นพิเศษ และเมื่อดูจากการที่ C# เร็วกว่า Java ก็เลยมองว่า Java ไม่น่าใช่อันดับ 3 แต่อาจอยู่ราวอันดับ 5 มากกว่า
    • ประเมินสูงกับการที่ฟีเจอร์ล่าสุดของ Java อย่าง sealed class, switch expression, Project Loom และ records ถูกผสานเข้ากับไวยากรณ์เดิมได้อย่างเป็นธรรมชาติ และยังรู้สึกว่าเครื่องมือวิเคราะห์อย่าง heap dump analyzer และ GC analyzer ของ Java ก็อยู่ในระดับยอดเยี่ยมเช่นกัน
    • ชี้ให้เห็นว่าการจัดอันดับประสิทธิภาพของภาษาขึ้นอยู่กับว่าจะนับรวมอะไรและเปรียบเทียบอย่างไร พร้อมอ้างอิงลิงก์ benchmark ที่ให้ไว้
  • หลังจากไปลองใช้ภาษา/ระบบนิเวศอื่นที่มีชื่อเสียงว่าดีอยู่ช่วงหนึ่ง กลับยิ่งประเมิน Java(JVM) สูงขึ้น รู้สึกเหมือนเกิดซ้ำ ๆ ว่าเป็นอาการ “หญ้าของคนอื่นดูเขียวกว่า” มีเพียง Rust ที่รู้สึกว่าเป็นภาษาที่ก้าวหน้ามากจริง ๆ และใช้งานได้อย่างเพลิดเพลิน น่าเสียดายที่ทุกวันนี้ Java ไม่ถูกมองว่าเป็นภาษาที่ “เท่” ในหมู่สตาร์ตอัป และคิดว่าช่องว่างด้านผลิตภาพก็แทบหายไปแล้ว
    • เคยใช้ Rust แบบเต็มเวลาสองเดือน แต่โดยเฉพาะในงานพัฒนาเซิร์ฟเวอร์ก็ไม่เข้าใจคำว่ามันให้ “ความสุข” เมื่อเทียบกับ Java เลย ใน Rust มีช่วงที่ประสิทธิภาพการทำงานตกลงบ่อยมากเพราะต้องสะดุดกับปัญหา lifetime แม้จะรู้สึกได้ถึง type safety ที่ชัดเจน แต่โดยรวมก็ยากจะเรียกว่าเป็นประสบการณ์ที่สนุกจริง ๆ
    • C# นำหน้า Java ไปไกลมาก และมีความแตกต่างในหลายจุดที่สำคัญ เช่น generics ที่ทำได้ดีกว่ามาก value type ที่มีมานานแล้ว และ FFI ที่ใช้งานสะดวก แต่ดูเหมือนคนนอกจากวงการ Unity จะไม่ค่อยสนใจ และมองว่า Microsoft เคยพลาดโอกาสสร้างการรับรู้ในวงกว้างตั้งแต่สมัยก่อน
    • คิดว่าความรู้สึกนี้มาจากขนาดของโปรเจกต์ที่ต่างกัน ปกติถ้าย้ายจากโปรเจกต์ Java legacy ขนาดใหญ่ที่อยู่มา 10 ปี ไปยังโปรเจกต์ “ใหม่” ระดับ hello-world มันย่อมดูดีกว่าเป็นธรรมดา การ rewrite ครั้งใหญ่ช่วยเรื่องการทบทวนความปลอดภัยได้ก็จริง แต่โดยทั่วไปบริษัทไม่มีทรัพยากรทำแบบนั้น มีเพียงข้อยกเว้นอย่าง Google
    • รู้สึกเหมือนกันว่า Go น่าผิดหวัง มันให้คำมั่นหลายอย่างแต่สุดท้ายกลับออกมาใกล้เคียง Java หรือบางทีก็ถอยหลังลงไปอีก เช่น มี error ที่ไม่มี stack trace
    • ในช่วงกลางของอาชีพที่มีประสบการณ์เกือบ 30 ปี ช่วงเวลา 2 ปีที่พยายามทำโปรเจกต์ด้วยภาษาที่ไม่ใช่ JVM กลับเป็นช่วงที่แย่ที่สุดในอาชีพ
  • ขอบคุณผลงานของ James Gosling เคยมีประสบการณ์ที่จาก Java World Tour ทำให้คำค้นหา ‘Java consultant’ ขึ้นมาเป็นอันดับแรก จนสามารถทำงานทางไกลและเลี้ยงชีพอย่างมั่นคงในชนบทได้ มีผู้คนมากมายที่ชีวิตได้รับผลดีจาก Java และยังชื่นชมทีม Clojure ที่สร้าง ecosystem บน JVM ได้อย่างยอดเยี่ยม
    • ตนเองก็ขอบคุณ James Gosling เช่นกัน ในปี 1995 เคยทำงานกับ C++ ที่ Taligent แล้วได้ลองใช้ Java ครั้งแรกและทึ่งกับความสดใหม่ หลังจาก Taligent ยุบไปก็ทำงานเกี่ยวข้องกับ Java และซอฟต์แวร์ที่เกี่ยวข้องมาอย่างยาวนาน
    • ประเมินว่า James Gosling(Java) และ Rich Hickey(Clojure) เป็นผู้สร้างที่นำความสดใหม่เข้าสู่โลกการเขียนโปรแกรมในยุคของตน
  • ช่วงไม่กี่ปีที่ผ่านมาเคยทำงานกับ .NET/C# แต่โดยรวมยังรู้สึกว่า JVM/Java คือ ecosystem ที่ดีที่สุดเท่าที่เคยเจอ Java แก้ปัญหาหลายอย่างได้ดีกว่ามาก เช่น Java แก้เรื่องการแบ่งงานด้วย fork/join pool ส่วน .NET กลับแค่ใส่ work-stealing ลงใน global thread pool ทำให้โค้ดแบบ sync-over-async สามารถก่อ deadlock ทั้งระบบได้ง่าย การจะสั่งให้แปลงโค้ด sync ทั้งหมดใน codebase ขนาดใหญ่ไปเป็น async นั้นแทบเป็นไปไม่ได้ ฝั่ง Java แม้พลาดในระดับไลบรารีหรือเฟรมเวิร์กก็มักฟื้นตัวได้เร็ว แต่ถ้าปัญหาอยู่ใน standard library ตัวภาษา หรือ runtime ของ .NET จะยิ่งแก้ยาก จึงมองว่า Java วางมาตรฐานไว้ดีในหลายกรณี
    • thread pool starvation ของ .NET น่าหงุดหงิดมาก แม้ได้ยินว่าช่วงหลังผลกระทบลดลงแล้ว คิดว่าเป็นไปไม่ได้ที่จะมี implementation ที่免疫ต่อการใช้ thread pool ผิดวิธี สิ่งที่ทำได้มีแค่เพิ่มจำนวนเธรดหรือจัดลำดับงานให้ฉลาดขึ้น ผู้เขียนยอมรับว่าไม่ใช่ผู้เชี่ยวชาญด้าน thread pool จึงไม่แน่ใจนัก
    • เคยคิดว่า .NET เลียนแบบแนวทางที่ประสบความสำเร็จของ ecosystem ฝั่ง Java มาโดยตลอด แต่ความจริงกลับแตกต่างกันมาก
    • มีข้อโต้แย้งว่าการพูดถึงปัญหา deadlock ทั้งที่ไม่ได้เขียนโค้ด .NET เลยนั้นไม่ยุติธรรม และการอ้างอิงบล็อกเมื่อ 13 ปีก่อนก็ไม่น่าโน้มน้าว
  • มองว่า Java เป็นกรณีศึกษาความสำเร็จที่ยิ่งใหญ่ แต่ James Gosling เป็นเพียงจุดเริ่มต้น ไม่ใช่ผู้นำตัวจริง ตั้งแต่ยุค Java 1.1~1.2 เป็นต้นมา Mark Reinhold เป็นคนขับเคลื่อนหลัก ทั้งการรวม JIT การพัฒนา HotSpot การเพิ่มคลาสจำนวนมากใน 1.2 การรองรับ dynamic language หลัง Oracle เข้าซื้อ การเปิดซอร์ส การออกรุ่นถี่ขึ้น และการวางรากฐานของฟีเจอร์ภาษาสมัยใหม่มากมาย จึงประเมินว่าจุดแข็งของ Java ทั้งหมดมาจากภาวะผู้นำของ Mark Reinhold
    • ทีมพัฒนาหลักทั้งหมดน่าประทับใจ Gosling ต้องการภาษาที่ใช้งานได้จริง และหลังจากนั้นคนอย่าง Mark Reinhold และ Brian Goetz ก็พัฒนาภาษาให้เป็นมิตรกับนักพัฒนามาโดยตลอด แม้จะไม่ได้ชอบ Oracle แต่ก็ขอบคุณที่ช่วยผลักดันทีมที่ยอดเยี่ยมนี้ต่อไป
    • ชี้ว่า Kotlin เป็นภาษา static type แบบเดียวกับ Java ไม่ใช่ภาษา dynamic
    • มีความเห็นว่าแม้ Linus จะเขียน git แบบแฮ็ก ๆ ภายในแค่ 2 สัปดาห์และแค่จุดประกายให้ แต่ชุมชนเป็นผู้ขยายต่อ ดังนั้นการประเมินเพียงจุดเริ่มต้นจึงไม่ครบถ้วน
  • ในฐานะวิศวกรซอฟต์แวร์อายุเกิน 40 มองตามความเป็นจริงว่าการเลือก “เครื่องมือที่ทำงานได้ดี” คือทางเลือกที่ฉลาด ทุกวันนี้ Java หรือ C# ก็ทำหน้าที่นั้นได้อย่างดี ส่วนตัวรู้สึกว่า ecosystem ของ C# บูรณาการกันได้ดีกว่า ไม่ว่าจะ use case แบบไหนก็สร้างแอปด้วย C# ได้ภายใน 1 นาที ภาษานี้พัฒนาเร็ว ตลาดแรงงานก็มั่นคง .NET เองก็รองรับ cross-platform และด้วยความสง่างามกับประสิทธิภาพของภาษาจึงทำให้งานง่ายขึ้น
  • เคยมีประสบการณ์จำลองโค้ด OS ด้วย Java ในมหาวิทยาลัย เข้าใจว่า Java อาจช่วยลดความซับซ้อนในการเรียนอัลกอริทึมเชิงนามธรรมได้ แต่ส่วนตัวคิดว่า Python น่าจะเหมาะกว่า ไม่ค่อยเห็นด้วยกับการที่การศึกษาขั้นต้นในมหาวิทยาลัยยึด Java แบบตายตัวเพียงเพราะอิทธิพลจากภาคอุตสาหกรรม ตอนมัธยมเคยเรียน BASIC และ C มาแล้ว จึงรู้สึกว่าการจำลองโค้ด OS ระดับล่างด้วย Java เหมือนเป็นการถอยหลังหนึ่งขั้น
    • เคยเรียนไมโครคอนโทรลเลอร์ด้วย C, เรียนโครงสร้างข้อมูล/OOP ด้วย Java และเรียนแนวคิดระบบ/OS/concurrency ด้วย C กับ MIPS assembly ในวิชาข้อมูลและอัลกอริทึม Java กลับดีกว่า Python ตรงที่แยก abstract type กับ structure ได้ชัดเจน จึงช่วยให้เข้าใจแนวคิดได้แม่นยำกว่า แต่ก็ยังรู้สึกว่าการสอนแนวคิด OS ด้วย Java นั้นมากเกินไปนิดหน่อย
    • มองว่าข้อเสียของการสอน Java ที่ Joel พูดถึงนั้นใช้ได้กับภาษาระดับสูงอื่นอย่าง Python ด้วยเช่นกัน และยังชี้ให้เห็นเชิงประชดว่า MapReduce ซึ่ง Google สร้างด้วย Java กลับก้าวหน้ากว่า Microsoft
  • ยอมรับความสำเร็จของ Java แต่ก็ยังมีแรงต้านลึก ๆ ด้วยหลายเหตุผล ส่วนใหญ่เป็นมรดกจากโค้ดเยิ่นเย้อขององค์กรใหญ่ เฟรมเวิร์กซับซ้อน และโค้ดคุณภาพต่ำ ไม่ชอบวัฒนธรรมที่โค้ดถูกผลิตออกมา “เหมือนถ่านหิน” และไร้เอกลักษณ์ JVM ก็เป็น black box ภายใน ทำให้ดีบักด้วยเครื่องมืออย่าง strace หรือ gdb ได้ยาก การจัดสรรหน่วยความจำเกินทำให้ kernel มอง workload ได้ยาก และยังรู้สึกว่าหากใช้ JVM โดยไม่มีผู้เชี่ยวชาญคอยช่วยก็มีความเสี่ยงสูงที่จะเกิดปัญหาร้ายแรง อีกทั้ง Oracle เรื่องไลเซนส์ การจัดการเวอร์ชัน JDK ภาพลักษณ์ที่ไม่เท่ในปี 2025 รวมถึงภาระจาก legacy code ล้วนเป็นเรื่องน่าเสียดาย ส่วนตัวจึงพยายามหลีกเลี่ยง Java ให้มากที่สุดแม้จะสร้างอาชีพมาได้ และทุกวันนี้ก็มีภาษาสมรรถนะสูงแบบคอมไพล์เป็น static binary ขนาดเล็กที่ซับซ้อนด้านปฏิบัติการน้อยกว่าอยู่มาก ทำให้บทบาทของโซลูชันอย่าง JVM หรือ Python VM ค่อย ๆ ลดลง
    • มีการโต้แย้งว่า JVM มีความสามารถด้านดีบักแบบไดนามิกระดับโลก เช่น restart frame, เปลี่ยนค่าตัวแปร, exception breakpoint และอื่น ๆ อีกมาก รวมถึงทำงานร่วมกับ IDE อย่าง Idea/Eclipse ได้เหนือกว่าภาษาอื่น เครื่องมือวิเคราะห์อย่าง JMX/JConsole, Java Flight Recorder, jstack, HPROF ก็มีหลากหลายมาก ส่วนเรื่องไลเซนส์นั้นใช้งานแบบโอเพนซอร์สได้โดยไม่มีข้อจำกัด และการซื้อ Oracle JVM ก็เป็นเพียงทางเลือก พร้อมตั้งคำถามว่าปัญหา legacy code ที่ว่าคืออะไร
    • ข้ออ้างว่า JAVA “ไม่เท่” นั้นไม่น่าโน้มน้าว และเครื่องมือของ JDK กับ IDE ก็ทรงพลังกว่า strace/gdb อย่างท่วมท้น
    • แม้ตอนแรกเครื่องมือเหล่านี้อาจดูยาก แต่พอคุ้นเคยแล้วเรียนรู้ได้ง่าย การจูน GC บน JVM ก็ใช้เวลาแค่สัปดาห์เดียวก็เชี่ยวชาญได้ และ GC ยังมีบริบทระดับแอปพลิเคชันที่ดีกว่า kernel จึงให้ข้อดีจริง แม้จะยอมรับว่าความซับซ้อนด้าน provisioning มีอยู่บ้าง
    • ใช้ Java มานานกว่า 20 ปีแต่ไม่เคยต้องใช้ strace/gdb เลย การดีบักและการรองรับจาก IDE นั้นแข็งแกร่งมาก และการเอา Python มาเทียบกับ JVM ในแง่ประสิทธิภาพก็ไม่เหมาะสม
    • ดูเหมือนว่าเจ้าของความเห็นจะไม่ได้ใช้ Java จริงจังนัก จึงสรุปแบบนั้น และย้ำอีกครั้งว่าเครื่องมือดีบัก/วิเคราะห์ของ Java นั้นดีที่สุด
  • มีการกล่าวถึงข้อเท็จจริงที่ว่า Gosling เคยร่วมออกแบบระบบหน้าต่าง NeWS ตอนอยู่ที่ Sun โดย NeWS เป็นระบบที่อิง PostScript และให้ไคลเอนต์ส่งโปรแกรมไปทำงานบนเซิร์ฟเวอร์ ดูเหมือนว่าตอน Gosling ออกแบบ Java จะมีร่องรอยของแนวคิดจาก NeWS ที่อยากให้เว็บเพจกลายเป็นสิ่งที่โปรแกรมได้จริง มีคนเคยถามในหนังสือพร้อมลายเซ็น "The Java Programming Language" ว่า “Java คือการล้างแค้นให้ NeWS หรือเปล่า” และ Gosling ก็เพียงยิ้มตอบ
    • เช่นเดียวกับที่ X มี Wayland เป็นผู้สืบทอด NeWS เองก็ดูเหมือนมีทายาทเป็น browser+JavaScript(PWA, Electron) จึงสงสัยว่า Gosling จะคิดอย่างไรกับการที่แนวทางแบบ NeWS ดูจะเป็นฝ่ายชนะในที่สุด แม้กระทั่งบนสภาพแวดล้อมของ Microsoft
    • มีสิ่งที่คล้ายกันคือ Display PostScript บนชุด SPARCStation+SPARCprinter ตรรกะการพิมพ์ทั้งหมดถูกรันบนเซิร์ฟเวอร์ ถ้าเซิร์ฟเวอร์หรือเครื่องพิมพ์เสียอย่างใดอย่างหนึ่ง ระบบทั้งหมดก็ใช้งานไม่ได้ การเชื่อมต่อระหว่าง print server กับ printer กลายเป็นฝันร้าย จนสุดท้ายเหลือเพียงความไม่ไว้วางใจต่อเครื่องพิมพ์ แม้จะคิดถึง SunOS และ ecosystem ของ SPARC แต่สำหรับ Display PostScript นั้นก็ถือว่าส่งไปได้ดีแล้ว
  • ใช้เวลาส่วนใหญ่ของอาชีพเขียนโค้ดบน JVM ช่วงหลังหันไปใช้ Scala, Clojure(ชอบที่สุด), Kotlin แทน Java ไม่นานมานี้ตกงานและได้รับข้อเสนองาน Python จึงรับไว้ เริ่มเห็นว่าความต้องการประสบการณ์ฝั่ง JVM ลดลง ไม่ว่าอย่างไรถ้ามีเงินเดือนออกก็โอเคกับทุกภาษา ตอนนี้โปรเจกต์ส่วนตัวกำลังทำด้วย Scala
 
roxie 2025-05-26

มีสาวก C# แฝงตัวอยู่ตรงกลางนะ