BrowserPod เผชิญปัญหาความเข้ากันได้ของเบราว์เซอร์และความต้องการ Open Source จากชุมชนนักพัฒนา

ทีมชุมชน BigGo
BrowserPod เผชิญปัญหาความเข้ากันได้ของเบราว์เซอร์และความต้องการ Open Source จากชุมชนนักพัฒนา

Leaning Technologies เพิ่งประกาศ BrowserPod เทคโนโลยีที่ใช้ WebAssembly ซึ่งสัญญาว่าจะสามารถรันสภาพแวดล้อมการพัฒนา full-stack ได้โดยตรงในเว็บเบราว์เซอร์ อย่างไรก็ตาม ความคิดเห็นจากชุมชนในช่วงแรกเผยให้เห็นข้อกังวลสำคัญเกี่ยวกับข้อจำกัดในการรองรับเบราว์เซอร์และการตัดสินใจของบริษัทที่จะเก็บเทคโนโลยีนี้เป็นแบบ proprietary

ประกาศเปิดตัว BrowserPod - สภาพแวดล้อมการพัฒนาแบบเต็มรูปแบบบนเว็บใหม่
ประกาศเปิดตัว BrowserPod - สภาพแวดล้อมการพัฒนาแบบเต็มรูปแบบบนเว็บใหม่

ความท้าทายด้านความเข้ากันได้ของเบราว์เซอร์จำกัดการใช้งานในช่วงแรก

ปัญหาเร่งด่วนที่สุดที่ BrowserPod เผชิญคือการรองรับเบราว์เซอร์ที่จำกัด ปัจจุบันเทคโนโลยีนี้ใช้งานได้เฉพาะบนเบราว์เซอร์ที่ใช้ Chromium เช่น Chrome, Edge และ Brave เท่านั้น ทำให้ผู้ใช้ Firefox และ Safari ไม่สามารถเข้าถึงแพลตฟอร์มได้ ข้อจำกัดนี้เกิดจากความท้าทายทางเทคนิคในการใช้งานเบราว์เซอร์ที่แตกต่างกัน

ผู้ใช้ Firefox ถูกบล็อกเนื่องจากเบราว์เซอร์ไม่ได้เปิดใช้งาน Atomics.waitAsync โดยค่าเริ่มต้น ซึ่งเป็นฟีเจอร์ที่ BrowserPod ต้องการสำหรับการทำงานแบบ multi-threaded Safari มีปัญหาที่แตกต่างออกไป โดยมีพฤติกรรมที่ไม่สม่ำเสมอเกี่ยวกับ JavaScript getters, global variables และคีย์เวิร์ด this แม้ว่าทีมพัฒนาจะยอมรับปัญหาเหล่านี้และระบุว่าพวกเขากำลังทำงานเพื่อรองรับเบราว์เซอร์ที่กว้างขึ้น แต่ยังไม่ได้ให้ไทม์ไลน์ว่าเมื่อไหร่ที่ความเข้ากันได้กับ Firefox และ Safari จะมาถึง

หมายเหตุ: Atomics.waitAsync เป็นฟีเจอร์ของ JavaScript ที่ช่วยให้โค้ดสามารถรอการดำเนินการ shared memory โดยไม่บล็อก main thread

สถานะความเข้ากันได้ของเบราว์เซอร์:

  • ✅ รองรับ: Chrome , Edge , Brave (เบราว์เซอร์ที่ใช้ Chromium เป็นฐาน)
  • ❌ ไม่รองรับ: Firefox ( Atomics.waitAsync ไม่ได้เปิดใช้งานโดยค่าเริ่มต้น)
  • ❌ ไม่รองรับ: Safari (พฤติกรรม JavaScript ไม่สม่ำเสมอ)

ชุมชนผลักดันให้มีทางเลือก Open Source

ส่วนใหญ่ของชุมชนนักพัฒนาแสดงความผิดหวังกับโมเดลการให้สิทธิ์แบบ proprietary ของ BrowserPod นักพัฒนาหลายคนกำลังมองหาทางเลือกอื่นแทนโซลูชันที่มีอยู่เช่น WebContainers ซึ่งมีข้อกำหนดการให้สิทธิ์ที่เข้มงวดมากขึ้น ความต้องการเวอร์ชัน open source ดูเหมือนจะแรงมาก โดยมีสมาชิกชุมชนหลายคนแสดงความกังวลนี้

บริษัทได้ระบุว่าแม้ว่า BrowserPod จะยังคงเป็น proprietary ในตอนนี้ แต่พวกเขาอาจพิจารณาปล่อยโค้ดในอนาคต สำหรับการเปิดตัวครั้งแรก พวกเขาเสนอใบอนุญาตฟรีพร้อมการระบุแหล่งที่มาสำหรับการใช้งานที่ไม่ใช่เชิงพาณิชย์ พร้อมกับราคาแบบ pay-as-you-go สำหรับแอปพลิเคชันเชิงพาณิชย์และตัวเลือกการให้สิทธิ์แบบองค์กร

ตัวเลือกการออกใบอนุญาต:

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

ศักยภาพทางเทคนิคจุดประกายไอเดียนวัตกรรม

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

เทคโนโลยีนี้สร้างขึ้นจากประสบการณ์ของ Leaning Technologies กับ WebVM และใช้ CheerpOS kernel ของพวกเขาเพื่อให้การจำลอง Linux system call ใน WebAssembly วิธีการนี้ช่วยให้โค้ด C++ ที่ไม่ได้แก้ไขซึ่งออกแบบมาสำหรับ Linux สามารถรันในเบราว์เซอร์ได้ เปิดความเป็นไปได้ในการรัน runtime ของภาษาโปรแกรมมิ่งต่างๆ นอกเหนือจากการรองรับ Node.js ในตอนแรก

กำหนดการเปิดตัว:

  • ปลายเดือนพฤศจิกายน - ต้นเดือนธันวาคม 2025: การเปิดตัวครั้งแรกพร้อมการรองรับ Node.js 22
  • 2026: รองรับ Node.js หลายเวอร์ชัน, Python และ Ruby on Rails
  • 2026: รองรับ React Native build toolchain สำหรับการพัฒนาแอป Android
สถาปัตยกรรมของ BrowserPod ที่แสดงความสามารถทางเทคนิคสำหรับสภาพแวดล้อมการพัฒนาในเบราว์เซอร์
สถาปัตยกรรมของ BrowserPod ที่แสดงความสามารถทางเทคนิคสำหรับสภาพแวดล้อมการพัฒนาในเบราว์เซอร์

ไทม์ไลน์การเปิดตัวและแผนอนาคต

BrowserPod กำหนดจะพร้อมใช้งานทั่วไปในช่วงปลายเดือนพฤศจิกายนถึงต้นเดือนธันวาคม 2568 โดยเริ่มต้นด้วยการรองรับ Node.js 22 แผนงานรวมถึงแผนสำหรับ Node.js หลายเวอร์ชัน การรองรับ Python และ Ruby ตลอดปี 2569 และในที่สุดการรองรับ React Native build toolchain สำหรับการสร้างแอป Android โดยตรงในเบราว์เซอร์

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

อ้างอิง: BrowserPod: In-browser full-stack environments for IDEs and Agents via Wasm