Tags:
Node Thumbnail

ภาษา TypeScript เปิดตัวต่อโลกครั้งแรกเมื่อวันที่ 1 ตุลาคม 2012 มาถึงวันนี้มีอายุครบ 10 ปีพอดี ตลอด 10 ปีที่ผ่านมา TypeScript เติบโตขึ้นมาก จนมีความนิยมแซงหน้า JavaScript แล้วจากสถิติของบางสำนัก

Daniel Rosenwasser หัวหน้าโครงการ TypeScript ของไมโครซอฟท์ เขียนบล็อกเล่าความหลังว่าในช่วงแรกๆ คนไม่เข้าใจว่าไมโครซอฟท์กำลังทำอะไร และมองว่าการกำหนดชนิดตัวแปร (type) ให้ JavaScript เป็นเรื่องเลวร้ายด้วยซ้ำ แต่สุดท้าย TypeScript ก็พิสูจน์ตัวเองว่ามีข้อดีจริงๆ และกลายเป็นภาษายอดนิยมในทุกวันนี้

Tags:
Node Thumbnail

AppWrite แพลตฟอร์ม backend โอเพนซอร์สแบบเดียวกับ Firebase ที่ให้บริการทั้งการจัดการบัญชี, ฐานข้อมูล, สตอเรจ, ฟังก์ชั่น, และการส่งข้อความเรียลไทม์ประกาศออกเวอร์ชั่น 1.0 นับเป็นรุ่นเสถียรรุ่นแรก แม้ก่อนหน้านี้จะมีผู้ใช้จำนวนมากอยู่แล้วก็ตาม โดยมีคนกดดาวบน GitHub มากกว่า 25,000 คน

ฟีเจอร์ที่เพิ่มมาในเวอร์ชั่นนี้ ได้แก่

Tags:
Node Thumbnail

Oracle ออก Java 19 ตามรอบการออกทุก 6 เดือน โดย Java 19 เป็นรุ่นซัพพอร์ตระยะสั้นแบบเดียวกับ Java 18 ต่างจาก Java 17 ที่เป็น LTS ซัพพอร์ตยาว 8 ปี

ของใหม่ใน Java 19 มีด้วยกัน 7 อย่าง (นับตามข้อเสนอ JDK Enhancement Proposals - JEP) แบ่งเป็น 4 หมวดดังนี้

Tags:
Node Thumbnail

Bytecode Alliance เปิดตัว Wasmtime 1.0 โครงการที่เริ่มมาตั้งแต่ปี 2019 เมื่อครั้ง Bytecode Alliance ยังเป็นเพียงชุมชนโอเพนซอร์สไม่ได้จดทะเบียนองค์กรจริงจัง และตอนนี้ตัว Wasmtime มีการใช้งานบนโปรดักชั่นกว้างขวางพอสมควรแล้ว และเชื่อว่าระบบเสถียรพอที่จะแนะนำให้คนทั่วไปใช้งาน

Wasmtime เป็นรันไทม์แยก จากเดิมที่ WebAssembly ถูกออกแบบมาให้รันในเบราว์เซอร์ การใช้งานจึงอาจจะเป็นการรันในจาวาสคริปต์รันไทม์ทั้งชุดแต่ในความเป็นจริงผู้ใช้จำนวนหนึ่งต้องการรัน WebAssembly อย่างเดียว แยกระบบออกมาทำให้เวลาเริ่มต้นโปรเซสเร็วขึ้นมาก จากเดิมจาวาสคริปต์ใช้เวลาประมาณ 5ms การรัน WebAssembly จะใช้เวลา 5 microsecond เท่านั้น

Tags:
Node Thumbnail

CircleCI บริษัทซอฟต์แวร์ด้าน continuous integration (CI) สรุปสถิติการใช้งานของลูกค้าจำนวน 2 ล้านคน ให้เห็นกันว่าภาพรวมของวงการ software delivery ในปัจจุบันเป็นอย่างไร

สถิติหนึ่งที่น่าสนใจคือ ภาษาโปรแกรมยอดนิยมที่ถูกใช้งาน build ผ่านระบบ workflow ของ CircleCI ปรากฏว่าแชมป์เก่า JavaScript ถูกโค่นซะแล้ว กลายเป็น TypeScript ที่มาแรงจนแซงหน้าขึ้นเป็นเบอร์หนึ่งแทน (JavaScript ตกเป็นที่ 2, อันดับ 3 Ruby, อันดับ 4 Python, อันดับ 5 Go)

CircleCI บอกว่าความนิยมของ TypeScript ที่เป็นการแก้ปัญหาของ JavaScript โดยเพิ่มแนวคิดเรื่องชนิดของตัวแปร (type) เป็นที่ชัดเจนอยู่แล้ว เพราะช่วยให้นักพัฒนาหาบั๊กได้ง่ายขึ้นตั้งแต่ตอนเขียน (ใช้ IDE ตรวจ) หรือตอนคอมไพล์ แทนที่จะเป็นตอนรัน

Tags:
Node Thumbnail

Arduino IDE 2.0 ออกตัวจริง พัฒนาต่อจาก Arduino Pro IDE ที่ปล่อยออกมาตั้งแต่ปี 2019 ความเปลี่ยนแปลงหลักคือใช้ Eclipse Theia เป็นฐานทำให้การใช้งานคล้าย VS Code มากขึ้น และเพิ่มฟีเจอร์มาหลายอย่าง

  • autocompletion: แนะนำฟังก์ชั่นและตัวแปรต่างๆ ได้ตามไลบรารีที่ใช้งานอยู่ใน Sketch
  • navigation shortcut: กระโดดไปดูโค้ดส่วนที่ประกาศฟังก์ชั่นหรือตัวแปรได้ทันที
  • dark mode: หน้าจอมืดตามสมัยนิยม
  • serial plotter: สามารถรับค่าจากพอร์ต serial ได้หลายๆ ชุดเพื่อพล็อตกราฟเทียบกัน

สามารถดาวน์โหลดได้แล้วทั้งวินโดวส์, แมค, และลินุกซ์

Tags:
Node Thumbnail

IEEE Spectrum นิตยสารในเครือ IEEE รายงานถึงภาษาโปรแกรมยอดนิยม พบว่า Python ยังคงความนิยมสูงสุด แม้จะตามมาด้วย C และ C++ ด้วยคะแนนตามหลังไม่มากนัก และหากนับรวมเป็น C/C++ ก็จะแซง Python ไปเล็กน้อย

แต่หากให้น้ำหนักกับการหางานแล้ว ภาษา SQL และ Java จะแซง Python ไปพอสมควร โดยตัวภาษา SQL นั้นสำคัญเนื่องจากประกาศรับสมัครงานจำนวนมากมักระบุ SQL ควบคู่กับภาษาอื่นๆ ไปด้วย อีกสองอันดับหลัง Python คือ JavaScript และ C#

ภาษาที่เป็นข่าวมากขึ้นเรื่อยๆ อย่าง Rust นั้นอยู่ในอันดับ 12 ของการเรียงลำดับความสนใจ (trending) แต่กลับมีคะแนนต่ำลงมากเมื่อดูอันดับการหางาน

ที่มา - IEEE Spectrum

Tags:
Node Thumbnail

โลกของ Visual Studio Code มี Language Server ใช้รองรับภาษาโปรแกรมต่างๆ ให้ทำงานร่วมกับ IDE ได้ดีขึ้น ซึ่งภายหลัง Language Server Protocol เริ่มได้รับการยอมรับในวงการ มี IDE ตัวอื่นนำไปใช้งานบ้าง เช่น Eclipse Che

Tags:
Node Thumbnail

ระบบจัดการแพ็กเกจซอฟต์แวร์ยอดนิยมหลายตัว เช่น NPM, PyPI เริ่มบังคับนักพัฒนาเจ้าของแพ็กเกจต้องยืนยันตัวตนแบบ MFA เพื่อป้องกันปัญหา supply chain attack นักพัฒนาโดนแฮ็กบัญชี แล้วถูกฝังมัลแวร์แพร่กระจายในวงกว้าง

RubyGems ระบบจัดการแพ็กเกจของภาษา Ruby เป็นรายล่าสุดที่เริ่มบังคับนักพัฒนาล็อกอินด้วย MFA แต่ยังจำกัดเฉพาะแพ็กเกจ (gems) ยอดนิยม 100 อันดับแรกเท่านั้น

Tags:
Node Thumbnail

Douglas Crockford โปรแกรมเมอร์ผู้สร้าง JSON ในปี 2000 ออกมาให้สัมภาษณ์วิจารณ์ JavaScript ว่าพัฒนาช้ามากในช่วง 20 ปีที่ผ่านมา จากที่เขาเคยเป็นกองเชียร์ JavaScript และพยายามแก้ปัญหาหลายๆ อย่าง ก็ประสบความสำเร็จน้อยมากใน ECMAScript 5 ที่เป็นเวอร์ชันใหญ่เมื่อปี 2009 จนตอนนี้เขามองว่า JavaScript เป็นภาษาไดโนเสาร์ที่ไม่ทันโลก และควรเลิกใช้กันดีกว่า (The best thing we can do today to JavaScript is to retire it.)

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

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

Tags:
Topics: 
Node Thumbnail

RStudio หนึ่งใน IDE แบบโอเพนซอร์สยอดนิยมที่มักใช้งานกับภาษา R ประกาศเปลี่ยนชื่อเวอร์ชั่นเพื่อการค้าเป็น Posit หลังจากที่บริษัทพยายามพัฒนาฟีเจอร์รองรับภาษาอื่นๆ เพิ่มเติม ทำให้แบรนด์ระหว่างเวอร์ชั่นโอเพนซอร์สและเวอร์ชั่นขายแยกออกจากกัน

แนวทางที่บริษัทพัฒนาซอฟต์แวร์โอเพนซอร์สแต่ขายเวอร์ชั่นการค้าคนละชื่อเป็นแนวทางที่พบได้ค่อนข้างบ่อย เช่น RedHat เองก็มีคู่โครงการแบบนี้จำนวนมาก เช่น RHEL/Fedora, OpenShift/OKD ขณะที่บางบริษัทอาจจะใช่ชื่อเดียวกันแต่ระบุว่าเป็นเวอร์ชั่นโอเพนซอร์ส

Tags:
Node Thumbnail

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

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

Tags:
Node Thumbnail

เว็บไซต์ InfoWorld ตีพิมพ์บทความจากนิตยสารในเครือ JavaWorld ฉบับปี 1996 เล่าเบื้องหลังว่าทำไม Sun Microsystems ถึงตั้งชื่อภาษา Java แทนโค้ดเนมที่ใช้ระหว่างพัฒนา Oak (ตั้งชื่อตามต้นโอ๊คที่อยู่ข้างหน้าต่างของออฟฟิศ)

ตอนแรกนั้น Sun ตั้งใจใช้ชื่อภาษา Oak อย่างจริงจัง แต่ติดว่าชื่อนี้ถูกจดเครื่องหมายการค้าโดยบริษัท Oak Technologies ทำให้บริษัทต้องมาระดมสมองตั้งชื่อกันใหม่ คนที่จัดประชุมเรื่องชื่อคราวนั้นคือ Kim Polese ผู้จัดการผลิตภัณฑ์ของ Oak ในตอนนั้น (ภายหลังไปก่อตั้งและเป็นซีอีโอของบริษัทหลายแห่ง เช่น SpikeSource และ Marimba ซึ่งขายกิจการสำเร็จทั้งคู่)

Tags:
Node Thumbnail

PRQL (อ่านว่า prequel ล้อกับ SQL ที่อ่านว่า sequel) ประกาศออกเวอร์ชั่น 0.2 ที่ระบุว่าพร้อมใช้งานได้จริงแล้ว

ตัวภาษา PRQL ออกแบบให้เป็นการแปลงข้อมูลต่อเนื่อง (pipeline of transformations) โดยแต่ละคำสั่งเป็นการแปลงข้อมูลต่อไปเรื่อยๆ ตัวภาษาเมื่อใช้งานจริงจะต้องแปลงเป็น SQL ก่อนรันจริง โดยมีฟีเจอร์ภาษาที่ช่วยให้การเขียนคิวรีง่ายขึ้น เช่น ตัวแปร, ฟังก์ชั่น, และ format string

การใช้งานหลักๆ ของ PRQL จะเป็นงานด้านวิเคราะห์ข้อมูล (analytics) ที่การคิวรีแบบกรองข้อมูลเป็นชั้นๆ เป็นธรรมชาติมากกว่า และแม้ว่าทางโครงการจะระบุว่าเริ่มใช้งานได้จริง แต่ฟีเจอร์ต่างๆ ก็ยังจำกัดอยู่มาก เช่น การทำงานร่วมกับ IDE, หรือการซัพพอร์ตฐานข้อมูลที่แม้จะซัพพอร์ตหลายแบรนด์แต่ก็อาจจะยังไม่สมบูรณ์นัก

Tags:
Node Thumbnail

Linus Torvalds ไปพูดที่งานสัมมนา Open Source Summit โดยบอกว่าเคอร์เนลลินุกซ์จะรองรับโค้ดที่เขียนด้วยภาษา Rust ในเร็วๆ นี้ และอาจเป็นเคอร์เนลเวอร์ชันหน้า 5.20

ไอเดียเรื่องการนำภาษา Rust ที่เป็น memory-safety มาใช้กับเคอร์เนลลินุกซ์ เป็นสิ่งที่พูดกันมาสักระยะแล้ว ตัวของ Linus เองนั้นไม่ปิดกั้นแต่ก็ไม่รีบร้อน ช่วงปลายปี 2021 ทีมพัฒนาเคอร์เนลกลุ่มหนึ่งก็เสนอแพตช์ชุดแรกที่ทำให้เคอร์เนลรองรับภาษา Rust (ตัวโครงการคือ Rust for Linux)

Tags:
Node Thumbnail

AWS เปิดตัวบริการ Amazon CodeWhisperer เพื่อน AI ช่วยเขียนโค้ด ลักษณะเดียวกับ GitHub Copilot ที่เพิ่งเปิดบริการเต็มรูปแบบ

AWS บอกว่าเทรน machine learning ด้วยข้อมูลโค้ดหลายพันล้านบรรทัด (ทั้งจากโค้ดภายในบริษัทเอง และโค้ดที่เป็นโอเพนซอร์ส) เพื่อให้ CodeWhisperer สามารถอ่านโค้ดและคอมเมนต์ในโค้ดของเรา แล้วให้คำแนะนำการเขียนโค้ดที่ดีขึ้นในแง่มุมต่างๆ โดยผู้ใช้งานสามารถเลือกทำตาม CodeWhisperer ทันที หรือจะแก้ไขแล้วคัสตอมคำแนะนำแบบที่เราต้องการก็ได้

ในเดโมที่ AWS นำมาโชว์ เป็นไฟล์เปล่าที่มีคอมเมนต์ว่า "See if a number is prime" เมื่อกดเลือกคำแนะนำ เราก็จะได้โค้ดมาตามภาพทันที

Tags:
Node Thumbnail

Stack Overflow ออกผลสำรวจข้อมูลนักพัฒนาประจำปี 2022 มีผู้ตอบแบบสอบถามประมาณ 73,000 คน (สถิติของปี 2021 และปีก่อนๆ) มีสถิติที่น่าสนใจดังนี้

Tags:
Node Thumbnail

ไมโครซอฟท์ประกาศแนวทางพัฒนาส่วนขยาย C# ของ Visual Studio Code ซึ่งบางส่วนจะใช้ไลเซนส์แบบปิด แตกต่างของตัวที่ใช้ในปัจจุบัน ซึ่งเป็นโอเพนซอร์สทั้งหมด

ส่วนขยาย C# ของ VS Code ในปัจจุบันเริ่มมาจากโครงการ OmniSharp ที่พัฒนาโดยชุมชนโปรแกรมเมอร์ และเริ่มพัฒนาในยุคแรกๆ ของ VS Code ที่มาตรฐานด้าน API และโปรโตคอลยังไม่นิ่ง

ในระยะถัดมา VS Code เพิ่มฟีเจอร์ Language Server Protocol (LSP) สำหรับเชื่อมต่อกับภาษาโปรแกรมมิ่งอื่นๆ (ซึ่งกลายเป็นมาตรฐานของวงการในเวลาต่อมา) แต่ตัวส่วนขยาย C# ของเดิมยังไม่ได้เชื่อมต่อผ่าน LSP

Tags:
Node Thumbnail

แพลตฟอร์มภาษา Kotlin ออกเวอร์ชัน 1.7.0 มีของใหม่ที่สำคัญคือคอมไพเลอร์ตัวใหม่ K2 ที่ให้ประสิทธิภาพดีขึ้นจากเดิมมาก เริ่มเข้ามาให้ลองทดสอบแบบอัลฟ่า

ตัวภาษา Kotlin สามารถเขียนแล้วนำไปใช้งานได้ 3 แนวทางคือ Kotlin/JVM, Kotlin/JS, Kotlin/Native โดยจุดเริ่มต้นของ Kotlin เริ่มมาจากภาษาที่ใช้แทน Java เพื่อรันบน JVM

คอมไพเลอร์ตัวใหม่ K2 จะเริ่มใช้กับ Kotlin/JVM ก่อนเป็นอย่างแรก ส่วนเวอร์ชัน JS และ Native จะตามมาในระยะถัดไป โดยผลจากการทดสอบของ JetBrains เองพบว่าประสิทธิภาพการคอมไพล์ (นับเป็นบรรทัดของโค้ดต่อวินาที) ดีขึ้น 2.2-2.3 เท่า

ของใหม่อย่างอื่นใน Kotlin 1.7.0 มีปรับฟีเจอร์ของตัวภาษาเล็กน้อย, ปรับปรุงประสิทธิภาพของทั้ง JVM, JS, Native และปรับวิธีการคอมไพล์ของ Gradle

Tags:
Node Thumbnail

กูเกิลโอเพนซอร์สไลบรารีเรียงลำดับข้อมูล (sorting) ที่ใช้ชุดคำสั่งแบบเวคเตอร์ในซีพียู ทำให้ไลบรารีทำงานได้เร็วขึ้น 9-19 เท่าตัวเมื่อเทียบกับ std::sort ในภาษา C++

ชุดคำสั่งแบบเวคเตอร์เป็นชุดคำสั่งที่ซีพียูประสิทธิภาพยุคใหม่ๆ อิมพลีเมนต์กันเป็นส่วนมาก และการเขียนฟังก์ชั่นเรียงลำดับข้อมูลด้วยชุดคำสั่งประเภทนี้ก็มีการศึกษามาระยะหนึ่งแล้วว่าใช้เร่งความเร็วได้ แต่โค้ดของกูเกิลในครั้งนี้มีความพิเศษคือมันรองรับซีพียูหลากหลายรุ่น รวม 3 สถาปัตยกรรม รองรับชุดคำสั่งเวคเตอร์ 6 รูปแบบ โดยอาศัยไลบรารี Highway ของกูเกิลเองเพื่อทำให้โค้ดที่ใช้คำสั่งแบบเวคเตอร์นี้พอร์ตข้ามสถาปัตยกรรมได้

Tags:
Node Thumbnail

New Relic บริษัทซอฟต์แวร์มอนิเตอร์ประสิทธิภาพของแอพพลิเคชันองค์กร ออกรายงานสถิติของแอพพลิเคชันสาย Java ประจำปี 2022 จากข้อมูลแอพพลิเคชันองค์กรที่ใช้บริการ New Relic จำนวนมาก พบสถิติที่น่าสนใจดังนี้

Tags:
Node Thumbnail

ภาษา Go เตรียมเปลี่ยนฟังก์ชั่น sort จากเดิมใช้ QuickSort มาเป็น pdqsort หรือ pattern-defeating quicksort อัลกอริทึมเรียงลำดับที่ประสิทธิภาพโดยรวมดีขึ้นมากในหลายกรณี แม้ว่ากรณีที่แย่ที่สุดยังเป็น O(n log n) เช่นเดิมก็ตาม

pdqsort พัฒนาโดย Orson R. L. Peters จากมหาวิทยาลัย Leiden ในเนธอร์แลนด์เมื่อปี 2017 มีจุดได้เปรียบสำคัญคือยิ่งค่าที่เป็นไปได้ของข้อมูลมีน้อยแม้จำนวนข้อมูลจะมีจำนวนมาก เช่น เรียงเลขนับล้านตัว แต่มีเลขที่เป็นไปได้เพียง 0 ถึง 9 ในกรณีเช่นนี้ pdqsort จะมีประสิทธิภาพสูงมาก และหากโค้ดสำหรับเปรียบเทียบค่าไม่ต้องมี branch ประสิทธิภาพในการรันอัลกอริทึมก็จะสูงขึ้นมาก

Tags:
Node Thumbnail

ไมโครซอฟท์ปล่อยส่วนขยายสำหรับ Visual Studio 2022 เพื่อใช้งานบริการ GitHub Copilot บริการปัญญาประดิษฐ์ช่วยเขียนโค้ดที่ไมโครซอฟท์ร่วมมือกับ OpenAI จากเดิมรองรับเฉพาะ Visual Studio Code และ GitHub Codespaces เท่านั้น

ตัวส่วนขยายนี้เปิดให้ดาวน์โหลดได้ทุกคนแต่จะใช้บริการได้ต่อเมื่อได้เข้าโครงการทดสอบบริการ Copilot มาก่อนแล้วเท่านั้น เมื่อเปิดใช้งานจะมีโค้ดแนะนำจากปัญญาประดิษฐ์ขึ้นมาขณะพิมพ์ โดยแสดงโค้ดที่ปัญญาประดิษฐ์คาดว่าตรงความต้องการที่สุดแต่สามารถเลือกโค้ดแนะนำอื่นๆ ได้หาก Copilot แนะนำมาหลายชุด

ตอนนี้บริการ Copilot ยังคงจำกัดผู้เข้าร่วม หากต้องการใช้งานก็ต้อลงชื่อรอคิวเท่านั้น

Tags:
Node Thumbnail

Oracle ออก Java 18 ตามรอบการออกทุก 6 เดือน โดยเวอร์ชันนี้ไม่ได้เป็น LTS เหมือนกับ Java 17 ที่มีระยะซัพพอร์ตนาน 8 ปี ส่วน LTS ตัวหน้าคือ Java 21 ที่จะออกในเดือนกันยายน 2023

ของใหม่ใน Java 18 ได้แก่

Pages