Image
By lew Founder on Tag: Cloudflare, React, JavaScript
Cloudflare

Josh Larson วิศวกร Vox Media สร้างเฟรมเวิร์ค Flareact เป็นเฟรมเวิร์คทดลองที่ได้รับแรงบันดาลใจมาจาก Next.js เพื่อให้แอปพลิเคชั่นแบบ React สามารถเรนเดอร์ด้วย Cloudflare Workers ได้

ปกติแล้ว React ออกแบบสำหรับสร้างแอปพลิเคชั่นที่เรนเดอร์ฝั่งเบราว์เซอร์ทั้งหมด หลายครั้งประสิทธิภาพบนเบราว์เซอร์ไม่ดีนัก และบริการหลายตัวที่ต้องการอ่าน HTML โดยไม่สามารถเรนเดอร์ React ได้ก็จะได้ข้อมูลไม่ครบ การทำ server side rendering (SSR) จึงเป็นฟีเจอร์สำคัญที่หลายเว็บใช้งานกัน เช่น Next.js ที่ได้รับความนิยมสูง

By mk Founder on Tag: JavaScript, jQuery, Development
JavaScript

Bootstrap เฟรมเวิร์คสำหรับเขียนเว็บชื่อดัง ประกาศออกเวอร์ชัน 5.0 Alpha 1 มีการเปลี่ยนแปลงสำคัญคือเลิกใช้เฟรมเวิร์ค jQuery ที่ใช้มายาวนาน เปลี่ยนมาใช้โค้ด JavaScript ปกติแทน ด้วยเหตุผลว่าฟีเจอร์ของ JavaScript และเบราว์เซอร์รุ่นใหม่ๆ สามารถทดแทน jQuery ได้แล้ว

ผลของการเลิกใช้ JQuery ช่วยให้ขนาดไฟล์เว็บที่สร้างด้วย Bootstrap เล็กลง และเว็บเพจโหลดได้เร็วขึ้น ทีมงาน Bootstrap บอกว่ายังต้องปรับปรุงแก้ไขการแสดงผลอีกหลายจุดหลังถอด jQuery ออกไป ซึ่งก็จะค่อยๆ แก้ไขในรุ่นทดสอบถัดๆ ไป

By arjin Writer on Tag: JavaScript, Java, Python, Programming, JetBrains, Survey
JavaScript

JetBrains ผู้พัฒนา IDE และสร้างภาษา Kotlin เปิดเผยผลสำรวจ The State of Developer Ecosystem ประจำปี 2020 ซึ่งเป็นการรายงานปีที่ 4 จากการสอบถามนักพัฒนา 19,696 คน ใน 18 ประเทศ มีประเด็นที่น่าสนใจดังนี้

  • Python แซง Java ในแง่ภาษาที่มีการใช้งานในช่วง 12 เดือน แต่ถ้าวัดภาษาหลักที่ใช้งาน Java ยังสูงกว่า
  • JavaScript ยังเป็นภาษาอันดับหนึ่งที่มีการใช้งาน (70% ของผู้ตอบแบบสำรวจ)
  • Go, Kotlin และ Python เป็น 3 อันดับภาษา ที่นักพัฒนามีแผนจะใช้งานในอนาคตมากที่สุด
By lew Founder on Tag: SpaceX, Development, JavaScript, Linux
SpaceX

ทีมงานซอฟต์แวร์ของ SpaceX ตั้งกระทู้ตอบคำถามบน Reddit ให้คนทั่วไปตั้งคำถามใดๆ ก็ได้ ทำให้ทีมงานมีโอกาสเปิดเผยข้อมูลเพิ่มเติม โดยประเด็นที่สำคัญคือหน้าจอสัมผัสของยาน Dragon นั้นรันอยู่บน Chromium โดยมีไลบรารีจาวาสคริปต์แบบ reactive ที่พัฒนาขึ้นเองเป็นการภายใน โดยหน้าจอนี้ไม่เกี่ยวอะไรกับหน้าจอรถของ Tesla

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

By lew Founder on Tag: Deno, JavaScript, Rust, TypeScript
Deno

Ryan Dahl ผู้เริ่มโครงการ Nodejs เมื่อปี 2009 และออกจากโครงการไปเมื่อปี 2012 กลับมาพัฒนาโครงการ Deno ที่เป็นรันไทม์สำหรับรันจาวาสคริปต์นอกเบราว์เซอร์เหมือนกัน แต่พัฒนาขึ้นด้วยแนวคิดที่ต่างออกไป โดยเลือกใช้ภาษา Rust ในการพัฒนา และสร้างโครงการ rust_v8 สำหรับนำเอาเอนจิน V8 มาใช้งาน และตอนนี้ Deno ก็ออกเวอร์ชั่น 1.0 พร้อมสำหรับการใช้งานจริงแล้ว

ฟีเจอร์สำคัญของ Deno ได้แก่

By lew Founder on Tag: JavaScript, NPM
JavaScript

โมดูล is-promise เป็นโมดูลง่ายๆ บน npm ที่ใช้ตรวจสอบว่าออปเจกต์ใดเป็น Promise บ้าง โดยตัวโมดูลเองมีความยาวเพียง 5 บรรทัดเท่านั้น (โค้ดอยู่ในภาพ) แต่การอัพเดตครั้งล่าสุดในเวอร์ชั่น 2.2.0 กลับทำให้โมดูลจำนวนมากไม่ทำงาน

ความผิดพลาดเกิดจากความพยายามซัพพอร์ต ES module แต่คอนฟิกที่ใส่มากลับไม่สมบูรณ์ ทำให้คำสั่งสำคัญๆ เช่น create-react-app หรือ firebase-tools ติดตั้งใหม่ไม่ได้

By mk Founder on Tag: Wikipedia, Wikimedia Foundation, MediaWiki, React, JavaScript, Vue.js
Wikipedia

Wikipedia ถือกำเนิดมาตั้งแต่ปี 2001 โดยใช้ซอฟต์แวร์ MediaWiki ที่เขียนขึ้นในยุคนั้น ซึ่งปัจจุบันก็มีหลายส่วนที่เริ่มล้าสมัยแล้ว

มูลนิธิ Wikimedia Foundation ในฐานะผู้ดูแลโครงการ Wikipedia จึงพยายาม "ยกเครื่อง" ซอฟต์แวร์ MediaWiki ให้ทันสมัยขึ้น หนึ่งในแผนการคือเปลี่ยนมาใช้เฟรมเวิร์คจาวาสคริปต์ตัวใหม่ๆ แทน jQuery ที่ใช้มานาน และเฟรมเวิร์คของตัวเองที่ชื่อ OOUI

By lew Founder on Tag: JavaScript, Facebook
JavaScript

เฟซบุ๊กเปิดซอร์สโครงการ Rome ชุดเครื่องมือพัฒนาจาวาสคริปต์ โดยรวมเอาทั้ง compiler, linter, formatter, bundler, และเฟรมเวิร์คทดสอบโค้ดในชุดเดียวกัน

จุดพิเศษของโครงการ Rome คือการตั้งเป้าว่าชุดเครื่องมือทั้งหมดจะสมบูรณ์ในตัวเอง ไม่ต้องใช้ dependency ภายนอกอีก ตัวโครงการเองใช้ compiler ในโครงการมา compile ตัวเอง ขณะที่การพัฒนาทั้งหมดใช้ภาษา TypeScript

By mk Founder on Tag: Node.js, Programming, JavaScript
Node.js

Node.js ออกเวอร์ชัน 13.0 (และออกรุ่นแก้บั๊ก 13.0.1 ตามมาในวันถัดมา) ถือเป็นเวอร์ชันแรกของ Node.js สาย 13.x

ระบบการออกรุ่นของ Node.js ในปัจจุบันคือออกเวอร์ชันใหญ่ทุก 6 เดือน โดยแบ่งเป็นรุ่นเลขคี่ (ไม่เสถียร) และรุ่นเลขคู่ (เสถียร) และมีเงื่อนไขว่าเมื่อออกรุ่นเลขคี่แล้ว จะปรับเวอร์ชันของรุ่นเลขคู่เป็นรุ่นซัพพอร์ตระยะยาว (LTS) ทันที และเลื่อนรุ่น LTS สองรุ่นก่อนหน้าเป็นสถานะ Maintenance

การออก Node.js 13.0 จึงมีผลทำให้ Node.js 12 มีสถานะเป็น LTS (เริ่มนับที่ 12.13.0) และส่งผลให้ Node.js 8 LTS เข้าสถานะ Maintenance

By mk Founder on Tag: AMP, JavaScript, Open Source, Google
AMP

กูเกิลประกาศบริจาคโครงการ AMP (Accelerated Mobile Page) เข้าเป็นส่วนหนึ่งของมูลนิธิ OpenJS Foundation เพื่อให้เป็นโครงการโอเพนซอร์สอิสระ ไม่ขึ้นกับกูเกิลอีกต่อไป

OpenJS Foundation เป็นโครงการลูกของมูลนิธิ Linux Foundation โดยมีซอฟต์แวร์โอเพนซอร์สสาย JavaScript อยู่ในสังกัดทั้งหมด 32 ตัว ที่ดังๆ ก็อย่างเช่น Dojo, jQuery, Node.js เป็นต้น

By lew Founder on Tag: Facebook, React, Open Source, JavaScript
Facebook

เฟซบุ๊กประกาศเปิดซอร์สโครงการ Hermes JS Engine เอนจินจาวาสคริปต์สำหรับรันโค้ดบนโทรศัพท์มือถือ โดยเฉพาะแอนดรอยด์และเฟรมเวิร์ค React Native

จุดสำคัญของ Hermes คือมันไม่ได้โหลดโค้ดจาวาสคริปต์มาคอมไพล์ขณะที่รันครั้งแรกเหมือนเอนจินอื่นๆ แต่อาศัยการคอมไพล์ไว้ล่วงหน้าเป็นไบต์โค้ด เมื่อติดตั้งแอปแล้วตัวเอนจินจึงโหลดไบต์โค้ดมารัน ทำให้กระบวนการเปิดแอปเร็วขึ้น นอกจากความเร็วในการรันครั้งแรก Hermes ยังปรับการใช้หน่วยความจำให้ประหยัดหน่วยความจำขึ้น ลดเวลาการรัน garbage collection (GC) เพื่อให้แอปตอบสนองเร็ว

By mk Founder on Tag: Chrome, JavaScript, Development, Browser
Chrome

Chrome for iOS อาจเป็น Chrome เวอร์ชันที่คนไม่ค่อยนึกถึงสักเท่าไรนัก แต่ก็มีผู้ใช้งานเป็นจำนวนไม่น้อย (สถิติของ Blognone อยู่ราว 8% ของผู้ใช้ iOS ทั้งหมด)

ด้วยข้อจำกัดของแอปเปิลเอง ทำให้ Chrome for iOS (รวมถึงเบราว์เซอร์อื่นทุกตัว) ไม่สามารถใช้เอนจิน Blink ของตัวเองได้ และต้องใช้เอนจิน WebKit ที่มากับตัวระบบปฏิบัติการแทน

อย่างไรก็ตาม ตัวไบนารี WKWebView ของแอปเปิลกลับไม่ซัพพอร์ตฟีเจอร์ Safari Remote Debugging ทำให้การทดสอบเว็บเพจบน Chrome for iOS ทำได้ยากพอสมควร (สามารถทำได้หากคอมไพล์ Chrome for iOS เองทั้งหมดจากซอร์สโค้ด แต่ก็ยุ่งยากไม่น้อย)

By nrad6949 Writer on Tag: Fuchsia, Node.js, JavaScript
Fuchsia

อาจเป็นสัญญาณที่ดีสำหรับนักพัฒนาสาย JavaScript เมื่อ Yang Guo หนึ่งในนักพัฒนาของโครงการ Node.js ประกาศออกทวิตว่ากำลังช่วย Google หาคนทำงานอยู่ โดยเป็นนักพัฒนาที่สามารถพอร์ต (port) โครงการ Node.js ลง Fuchsia ได้

รายละเอียดของทวิตระบุว่า นักพัฒนาที่ได้ตำแหน่งนี้จะได้ทำงานในตำแหน่งวิศวกรซอฟต์แวร์ที่ Google ประจำสำนักงานเมืองมิวนิค ประเทศเยอรมนี และจะต้องทำงานในสถานที่จริงเท่านั้น โดยจะต้องมีประสบการณ์ในการพัฒนา Node.js ส่วนแกนที่สำคัญ (core), C++ และ C++ toolchain ด้วย

By nutmos Writer on Tag: JavaScript, Code, Japan, Crime
JavaScript

ตำรวจญี่ปุ่นในเมือง Kariya ได้เข้าจับกุมเด็กนักเรียนหญิงวัย 13 ปีในคดีอาชญากรรมข้อหากระจายโค้ดอันตราย หลังจากที่เธอนำลิงก์ที่ใส่โค้ด infinite loop ที่เขียนด้วย JavaScript แปะลงเว็บบอร์ด

By lew Founder on Tag: TensorFlow, Open Source, Programming, Swift, JavaScript
TensorFlow

กูเกิลปล่อยโครงการย่อยสำหรับ TensorFlow บนภาษาอื่นๆ เพิ่มเติมในงาน TensorFlow Dev Summit ปีนี้ โดยอัพเดต TensorFlowJS เป็นรุ่น 1.0 พร้อมใช้งานแล้ว

TensorFlowJS มาพร้อมกับเมเดลพร้อมใช้ 5 โมเดล ได้แก่

By mk Founder on Tag: Google, Security, JavaScript
Google

กูเกิลปรับนโยบายความปลอดภัยของการใช้งานบัญชี Google Account โดยบังคับว่าเบราว์เซอร์ต้องเปิดใช้งาน JavaScript ตอนล็อกอินเสมอ

เหตุผลของกูเกิลเป็นเรื่องความปลอดภัย โดยระบบตรวจสอบความเสี่ยงขณะยืนยันตัวตนของกูเกิล จำเป็นต้องใช้ JavaScript ในการทำงาน กรณีของคนส่วนใหญ่คงไม่มีปัญหาและไม่ต้องเปลี่ยนแปลงอะไร แต่กูเกิลก็ให้ข้อมูลว่ามีผู้ใช้ประมาณ 0.1% ที่ปิด JavaScript ในเบราว์เซอร์

By lew Founder on Tag: JavaScript, Security
JavaScript

นักพัฒนาโมดูลย่อยของโครงการ ESLint ถูกขโมยบัญชีใน npm แล้วฝังโค้ดเข้าไป กระทบ eslint-scope และ eslint-config-eslint ทำให้นักพัฒนารายอื่นๆ ที่ดาวน์โหลดโมดูลนี้ระหว่างวันที่ 11-12 ที่ผ่านมาได้รับโค้ดที่เป็นมัลแวร์ไป

ตัวโค้ดจะดาวน์โหลดโคดจาก pastebin มาอีกทีหนึ่งแล้วรันโค้ดตามนั้นทันที

ตอนนี้คาดว่ามีนักพัฒนาดาวน์โหลดโค้ดในช่วงเวลาดังกล่าวไปประมาณ 4,500 ราย ใครที่ใช้ ESLint ควรตรวจสอบว่าใช้โมดูลย่อยทั้งสองอยู่หรือไม่ และดาวน์เกรดโมดูลลงระหว่างรอทางโครงการปล่อยโมดูลเวอร์ชั่นใหม่ที่ลบโค้ดอันตรายออกแล้ว

By nismod Writer on Tag: Facebook, Security, Privacy, JavaScript
Facebook

นักวิจัยจาก Princeton's Center for Information Technology Policy รายงานการค้นพบ JavaScript ของ 3rd Party ที่ฝังอยู่บนหน้าเว็บไซต์ที่มีปลั๊กอิน Login with Facebook สามารถดึงข้อมูลผู้ใช้และ User ID มาจากเฟซบุ๊ก เสมือนเป็นหน้าเว็บไซต์ (1st Party) นั้น เมื่อผู้ใช้กดล็อกอินผ่านเฟซบุ๊ก

By mk Founder on Tag: Rust, JavaScript, Mozilla, WebAssembly, Development, Programming
Rust

Mozilla ประกาศแผนการพัฒนาให้ภาษา Rust ทำงานร่วมกับ JavaScript ในการใช้เขียนเว็บร่วมกัน

แนวทางของ Mozilla ไม่ได้ต้องการให้ Rust มาแทน JavaScript แต่มองว่าถ้าส่วนไหนจำเป็นต้องใช้ Rust เพื่อประสิทธิภาพที่ดีกว่า (เช่น การ parse ข้อมูลขนาดใหญ่) ก็สามารถใช้ Rust เขียนส่วนนั้น แล้วนำมาใช้ร่วมกับ JavaScript ในส่วนอื่นได้

วิธีการที่ Mozilla ใช้คือคอมไพล์ Rust เป็น WebAssembly ก่อน แล้วค่อยให้ WebAssembly ทำงานร่วมกับ JavaScript อีกทอดหนึ่ง ซึ่งวิธีนี้จะเปิดให้ใช้ภาษาอื่นนอกจาก Rust ในระยะยาว โดย Mozilla ระบุว่ามีแผนจะแปลง C/C++ เป็น WebAssembly ในอนาคตด้วย

By lew Founder on Tag: TensorFlow, JavaScript
TensorFlow

โครงการ TensorFlow เปิดตัวโครงการย่อย TensorFlow.js สำหรับการพัฒนาโมเดล deep learning บนเบราว์เซอร์หรือ Node.js (กำลังพัฒนา) โดยมุ่งเป้าจะทำให้โมเดล deep learning ที่รันบนจาวาสคริปต์นี้เร่งความเร็วด้วยฮาร์ดแวร์แบบเดียวกับโครงการหลัก

การรันโมเดลบนเบราว์เซอร์จะอาศัย WebGL ในการเชื่อมต่อกับชิปกราฟิกเพื่อเร่งความเร็ว ขณะที่การรันบน Node.js เตรียมจะรองรับทั้งบนชิปกราฟิก, ซีพียู, และ TPU ชิปสำหรับ deep learning ของกูเกิลเอง

Subscribe to JavaScript