ไมโครซอฟท์ประกาศโอเพนซอร์สโปรแกรมเครื่องคิดเลข (Windows Calculator) โดยใช้สัญญาอนุญาตแบบ MIT
เหตุผลในการโอเพนซอร์สเครื่องคิดเลข เป็นเพราะไมโครซอฟท์ต้องการร่วมพัฒนาโปรแกรมตัวนี้กับชุมชนภายนอก รวมถึงต้องการเปิดโค้ดเกี่ยวกับตรรกะการทำงานของเครื่องคิดเลข ให้โปรแกรมเมอร์อื่นๆ ได้เข้ามาศึกษา ปัจจุบัน Windows Calculator มีให้ทำงาน 3 โหมดคือ Standard, Scientific, Programmer
โค้ดเขียนด้วย C++ และปัจจุบันถูกพัฒนาให้เป็น Modern Windows App ขึ้น Store เรียบร้อยแล้ว โค้ดสามารถดูได้จาก GitHub และสามารถคอมไพล์ด้วย Visual Studio Community Edition
ที่งาน RSA Conference ปีนี้ NSA ประกาศปล่อยโปรแกรมทำวิศวกรรมย้อนกลับ (software reverse engineering - SRE) ที่ชื่อว่า Ghidra สู่สาธารณะ เปิดทางให้นักพัฒนาภายนอกสามารถนำไปพัฒนาต่อหรือสร้างส่วนขยายได้
Ghidra รองรับไบนารีของซีพียูหลากหลายรุ่น ตั้งแต่ไมโครคอนโทรลเลอร์อย่าง AVR8, PIC, 8051 ขึ้นมาจนถึง MIPS, ARM, x86 มาจนถึงไบนารี Java และคอมไพลเลอร์ก็รองรับทั้ง gcc, VisualStudio
ตัวโปรแกรมมีตัวช่วยใส่ข้อมูลเพิ่มเติม (annotation) และสามารถพอร์ต annotation ข้ามไปยังไบนารีเวอร์ชั่นใหม่ที่อาจจะต่างไปจากเดิม
ทาง NSA เตรียมจะโอเพนซอร์สโครงการด้วยสัญญาอนุญาต Apache License 2.0 โดยระหว่างนี้อยู่ระหว่างการเซ็ตอัพ GitHub แต่มีตัวโปรแกรมให้โหลดแล้วบนเว็บ Ghidra เอง
บั๊กที่เกี่ยวกับหน่วยความจำเป็น (เช่น stack overflow) เป็นปัญหาระดับสากล แต่โชคดีว่าบั๊กลักษณะนี้สามารถใช้เครื่องมือช่วยตรวจจับได้ โดยทดลองระดมยิงอินพุทแปลกๆ เพื่อทดสอบว่าโค้ดให้ผลลัพธ์ออกมาอย่างไร เทคนิคนี้เรียกว่า Fuzzing
กูเกิลเองมีเครื่องมือทดสอบลักษณะนี้ชื่อว่า ClusterFuzz ที่เขียนขึ้นมาเพื่อทดสอบกับ Chrome โดยรัน ClusterFuzz บน VM จำนวน 25,000 คอร์ (ถึงได้ชื่อว่า cluster) และที่ผ่านมาก็สามารถค้นหาบั๊กหน่วยความจำของ Chrome ได้มากถึง 16,000 บัั๊ก
LibreOffice ออกเวอร์ชัน 6.2 การเปลี่ยนแปลงที่สำคัญคือ UI แบบใหม่ที่เริ่มทำใน Project Muffin มาตั้งแต่ปี 2016
UI แบบใหม่เน้นปรับปรุงแถบเครื่องมือให้ใช้ง่ายกว่าเดิม โดยมี UI ให้เลือก 2 แบบ (เพิ่มเข้ามาจาก toolbar แบบดั้งเดิม ที่ยังใช้ได้เหมือนเดิม)
ทีมงาน VLC ประกาศแผนการออกรุ่น 4.0 ที่งานสัมมนาโอเพนซอร์ส FOSDEM 2019 โดยจะมีฟีเจอร์ใหม่ดังนี้
ถ้าถามว่า ในนี้มีใครรู้จักระบบเว็บบอร์ดหรือกระดานสนทนาที่เบาและแรง? หนึ่งในตัวเลือกแรก ๆ คงหนีไม่พ้น SMF กันอยู่แล้ว เป็นอย่างที่รู้กันว่า SMF (หรือคำเต็มคือ Simple Machines Forum) เป็นระบบกระดานสนทนาโอเพนซอร์ส ที่เขียนมาจากภาษา PHP ใช้ฐานข้อมูล MySQL PostgreSQL และ SQLite พัฒนาโดย Simple Machines ตั้งแต่ปี 2001 ถ้านับถึงตอนนี้ อายุก็ปาไป 18 ปีแล้ว โดยเป้าหมายแรกเริ่มของการพัฒนาคือ เน้นระบบที่เรียบง่าย ใช้งานง่ายและที่สำคัญต้องเบา ไม่กินทรัพยากรของเซิร์ฟเวอร์ด้วย
ปีที่แล้ว ไมโครซอฟท์เปิดซอร์สโค้ด Windows File Manager ตัวเก่าที่สืบทอดมาตั้งแต่ Windows 3.0 (ก่อนจะกลายเป็น Windows Explorer) ให้ทุกคนร่วมพัฒนาได้บน GitHub
กระบวนการดาวน์โหลดมาใช้งานอาจยุ่งยากอยู่บ้าง เพราะต้องมีความรู้ด้านการพัฒนาโปรแกรมด้วย แต่ล่าสุด ไมโครซอฟท์นำ File Manager ตัวนี้มาจัดทำเป็นแอพให้ดาวน์โหลดบน Microsoft Store แล้ว แอพยังทำงานเฉพาะบนเดสก์ท็อป (ไม่ใช่ UWP) แต่ถูกจัดแพ็กเกจให้แจกจ่ายบน Store ได้สะดวก
ใครสนใจประสบการณ์ย้อนยุคก็ไปดาวน์โหลดกันได้ครับ
เมื่อปลายปี 2017 บริษัท Western Digital (WD) ประกาศเตรียมใช้ชิป RISC-V ในสินค้าทั้งหมด รวมกว่า 2,000 ล้านชิปต่อปี ตอนนี้การประกาศก็เริ่มเห็นผลแล้ว เมื่อบริษัทเปิดซอร์ส SweRV พิมพ์เขียวสำหรับสร้างชิป RISC-V
SweRV เป็นซีพียู 32 บิต สำหรับงาน IoT, ใช้เป็นหน่วยประมวลผลส่วนงานปลอดภัยสูง, หรือการควบคุมอุตสาหกรรม สำหรับทาง WD เองจะใช้ SweRV เป็นชิปควบคุมสตอเรจแบบแฟลช และ SSD
SweRV มีสถาปัตยกรรมไม่ซับซ้อนนัก โดยเป็น 2-way superscalar โหลดคำสั่งพร้อมกันสองคำสั่ง และ pipeline ภายในมี 9 ชั้น สามารถนำไปผลิตจริงด้วยเทคโนโลยี 28 นาโนเมตร และรันได้สัญญาณนาฬิกาสูงสุด 1.8GHz
GitHub รายงานข้อมูลสถิติ contributions บนแพลตฟอร์มประจำปีที่แล้ว โดยเน้นที่ด้าน machine lerning และ data science ว่าตอนนี้ผู้ใช้งานสนใจโปรเจคไหน และภาษาอะไรบ้าง โดยสถิติเรื่องการ contribution จะมีตั้งแต่การพุชโค้ด, เปิด issue หรือ pull request, คอมเมนท์บน issue หรือ pull request และรีวิวตัว pull request
หลังจากที่ทำการเก็บข้อมูลและนำมาทำการวิเคราะห์แล้ว GitHub สรุปเป็นหัวข้อใหญ่ ๆ ดังนี้
หัวข้อแรก คือภาษาที่นิยมใช้ในงานด้าน machine learning บน GitHub ซึ่งใช้วิธีการเก็บข้อมูลจาก repositories ที่แท็กว่า machine-learning และจัดอันดับตามภาษาหลักที่ใช้ใน respositories เป็นสิบอันดับแรกคือ Python, C++, JavaScript, Java, C#, Julia, Shell, R, TypeScript และ Scala
Microsoft ประกาศเข้าซื้อ Citus Data บริษัทพัฒนาเครื่องมือเพื่อช่วยให้ฐานข้อมูล PostgreSQL ทำงานเร็วขึ้นและสเกลได้มากขึ้น
Citus Data ก่อตั้งขึ้นเมื่อ 8 ปีที่แล้วในช่วงที่ทั้งคลาวด์และ Big Data ยังเป็นเรื่องใหม่ และฐานข้อมูลแบบ relational ยังถูกออกแบบให้ scale up ได้อย่างเดียว จึงทำให้เกิดฐานข้อมูล NoSQL ขึ้นมากมาย แต่ Citus Data มีไอเดียทำให้ฐานข้อมูล relational มีความยืดหยุ่นและสเกลได้มากขึ้น ซึ่ง Citus Data เลือกใช้ฐานข้อมูล PostgreSQL มาพัฒนาต่อยอด แทนที่การพัฒนาฐานข้อมูลขึ้นมาเอง
AWS เปิดตัว Neo-AI โครงการโอเพ่นซอร์สใหม่ที่พัฒนาเครื่องมือสำหรับการ optimize โมเดล machine learning เพื่อการดีพลอยบนแพลตฟอร์มที่หลากหลายโดยเฉพาะการรันบน edge device ซึ่ง AWS ใช้เทคโนโลยีที่ทางบริษัทพัฒนา SageMaker Neo บริการ machine learning บน AWS มาพัฒนา Neo-AI นี้ด้วย
Neo-AI สามารถใช้โมเดลจาก TensorFlow, MXNet, PyTorch, ONNX และ XGBoost จากนั้นก็ทำการ optimize ได้ ซึ่ง AWS ระบุว่า Neo-AI สามารถทำให้โมเดลเร็วขึ้นกว่าเดิมได้สูงสุดถึง 2 เท่าโดยไม่เสียความแม่นยำ ซึ่งตัวเครื่องมือนี้รองรับฮาร์ดแวร์ชิพจากทั้ง Intel, Nvidia และ ARM ซึ่งจะซัพพอร์ต Xilinx, Cadence และ Qualcomm ในอนาคตด้วย
ปัญหาของ NVIDIA กับจีพียู GeForce RTX ในช่วงนี้คือ ยังไม่มีเกมที่รองรับเทคนิค ray tracing มากนัก และต้องให้เวลานักพัฒนาอีกสักระยะหนึ่งในการปรับแต่งเกมของตัวเอง
แต่เกมเก่าที่ออกในปี 1997 อย่าง Quake II กลับรองรับ ray tracing เรียบร้อยแล้ว โดยเป็นผลงานจากแฟนๆ ผ่านม็อดชื่อ Q2VKPT (Quake 2 with Vulkan path-tracing)
Christoph Schied ผู้สร้างม็อดตัวนี้ระบุว่า Q2VKPT เป็นโครงการเชิงวิจัยด้านคอมพิวเตอร์กราฟิกที่เขาทำในยามว่าง ถือเป็นต้นแบบที่ยืนยันแนวคิด (proof-of-concept) ว่าทำได้จริง หลักการคือเปลี่ยนเอนจินกราฟิกจากเดิมที่เป็น OpenGL ให้เป็น Vulkan เพื่อเข้าถึงฟีเจอร์ด้าน ray tracing ของฮาร์ดแวร์ในยุคปัจจุบัน
Bash (Bourne Again SHell) ระบบคอนโซลแบบ command line ที่ได้รับความนิยมสูงสุดในลินุกซ์ออกเวอร์ชั่น 5.0 หลังจากรุ่น 4.0 ออกมาตั้งแต่เดือนกุมภาพันธ์ปี 2009 หรือเกือบสิบปีก่อน
ความเปลี่ยนแปลงยิบย่อยมีจำนวนมาก ความเปลี่ยนแปลงสำคัญ เช่น
สำหรับผู้ใช้ทั่วไปคงต้องรอดิสโทรลินุกซ์ต่างๆ นำไปรวมในโครงการ เราน่าจะเริ่มเห็นลินุกซ์รายหลักๆ อัพเดตกันในไม่กี่เดือนนี้
ช่วงหลังเราเห็นโครงการ Bug Bounty แจกเงินรางวัลให้ผู้ค้นพบช่องโหว่หรือบั๊กของซอฟต์แวร์ต่างๆ มากขึ้นเรื่อยๆ แต่ส่วนใหญ่มักเป็นซอฟต์แวร์ของบริษัทใหญ่ๆ ที่มีเงินเหลือเฟือ
ล่าสุด สหภาพยุโรป (EU) ประกาศโครงการ Bug Bounty ให้กับซอฟต์แวร์โอเพนซอร์ส 14 ตัวที่ EU ใช้งาน เช่น Filezilla, Apache Kafka, Apache Tomcat, Notepad++, VLC, PuTTY, 7-Zip, Drupal, glibc, PHP Symfony เป็นต้น
NetBeans โครงการ IDE โอเพนซอร์สยอดนิยมอีกตัวหนึ่งที่สืบทอดมาตั้งแต่ยุค Sun เดิม ปัจจุบันเปลี่ยนมือจาก Oracle มาเป็นโครงการภายใต้ Apache Software Foundation (ASF) ออกรุ่นใหม่ 10.0 แล้ว
นับตั้งแต่ปี 2013 เป็นต้นมา เฉลี่ยแล้ว NetBeans ออกรุ่นใหม่ปีละ 1 ครั้ง จนมาถึง NetBeans 8.2 ที่ออกในเดือนตุลาคม 2016 แต่เมื่อโครงการย้ายมาอยู่ใต้สังกัด ASF เต็มตัว ก็เปลี่ยนนโยบายหลายอย่าง ที่สำคัญคือเปลี่ยนมาออกรุ่นบ่อยทุก 6 เดือน
ไมโครซอฟท์ประกาศเปิดซอร์สโค้ด Project Mu ชุดซอฟต์แวร์สำหรับช่วยอัพเดตเฟิร์มแวร์ UEFI ของอุปกรณ์คอมพิวเตอร์
Unified Extensible Firmware Interface (UEFI) เป็นมาตรฐานสำหรับเฟิร์มแวร์ของอุปกรณ์ ที่ออกแบบมาแทนระบบ BIOS เดิม ในทางปฏิบัติแล้วมีซอฟต์แวร์หลายตัวที่เขียนตามสเปก UEFI จากผู้ผลิต BIOS เดิมแต่ละราย เช่น Phoenix, Insyde, American Megatrends
ซอฟต์แวร์ UEFI ที่ได้รับความนิยมสูงคือ TianoCore ซึ่งเป็นเวอร์ชันโอเพนซอร์สที่พัฒนาต่อจาก Intel EFI อีกที
VirtualBox ออกเวอร์ชันใหญ่ 6.0 มีการเปลี่ยนแปลงหลายอย่าง ที่สำคัญมีดังนี้
รายการเปลี่ยนแปลงอื่นๆ สามารถอ่านได้จากที่มา
ระบบปฏิบัติการ FreeBSD ออกเวอร์ชัน 12.0 โดยทิ้งช่วงห่างจากเวอร์ชัน 11.0 ประมาณสองปี
ของใหม่ได้แก่
FreeBSD รองรับสถาปัตยกรรมซีพียูหลากหลาย ได้แก่ amd64, i386, powerpc, powerpc64, powerpcspe, sparc64, armv6, armv7, aarch64
Facebook AI Research ประกาศโอเพ่นซอร์ส PyText เฟรมเวิร์คการประมวลผลภาษาธรรมชาติหรือ NLP ให้นักพัฒนาและผู้ที่สนใจทั่วไปนำไปใช้งานได้แล้ว
PyText นั้นเป็นเครื่องมือการทำโมเดล NLP ที่ใช้ deep learning โดยตัวเฟรมเวิร์คนั้นถูกพัฒนาขึ้นมาจาก PyTorch ซึ่งปัจจุบัน Facebook ใช้ PyText กับหน้าจออัจฉริยะ Portal และระบบผู้ช่วยส่วนตัวบน Messenger ที่ชื่อว่า M โดยเฟรมเวิร์คนี้พัฒนาขึ้นเพื่อตอบโจทย์ของ Facebook ที่ต้องการเครื่องมือ NLP แบบเรียลไทม์ และมี latency ต่ำ รวมถึงทำงานได้แบบไร้รอยต่อกับเวิร์คโฟลวในการวิจัยและโปรดักชั่น
Cloud Native Computing Foundation หรือ CNCF องค์กรผู้ดูแลโครงการโอเพ่นซอร์สสำคัญอย่าง Kubernetes ได้ประกาศว่า Technical Oversight Committee ได้โหวตให้รับรองโครงการ etcd เป็นโครงการในความดูแลของ CNCF แล้ว
etcd นั้นเป็น key-value store แบบกระจายที่เขียนด้วยภาษา Go ตัวระบบมีความเสถียร, ประสิทธิภาพสูง และสเกลได้ ออกแบบมาเพื่อให้เก็บข้อมูลข้ามคลัสเตอร์ ซึ่งปัจจุบันคลัสเตอร์ Kubernetes ใช้ etcd เป็นตัวเก็บข้อมูลหลัก รวมถึง Cloud Foundry ก็ใช้ etcd ด้วยเช่นกัน และมีบริษัทรายใหญ่หลายแห่งที่ใช้ etcd ในระบบ production ไม่ว่าจะเป็น ING, Pinterest, New York Times, Nordstorm, Pearson, Ancestry, Alibaba
PyTorch ไลบรารี deep learning จากค่าย Facebook ออกเวอร์ชัน 1.0 stable แล้ว หลังออกเวอร์ชัน 1.0 dev มาตั้งแต่เดือนพฤษภาคม และรุ่นพรีวิวก่อนตัวจริงเมื่อเดือนตุลาคม
PyTorch เป็นไลบรารีที่พัฒนาจาก Torch ที่ได้รับความนิยมในสายงานวิจัย แต่รองรับภาษา Python เป็นหลัก ทำให้ใช้งานง่ายกว่า Torch (ที่เขียนด้วย Lua เป็นหลัก) ทีมพัฒนาหลักของ PyTorch คือพนักงานของ Facebook และเป็นไลบรารีที่ได้รับความนิยมมากขึ้นเรื่อยๆ ในช่วงหลัง โดยเป็นโครงการที่เติบโตเร็วเป็นอันดับสองบน GitHub (อันดับหนึ่งคือ Azure Docs)
WordPress 5.0 ออกเวอร์ชันจริง การเปลี่ยนแปลงที่สำคัญในเวอร์ชันนี้คือ Editor ตัวใหม่ Gutenberg ที่เปลี่ยนวิธีการเขียนเนื้อหาใน WordPress ไปอย่างสิ้นเชิง
Editor ตัวเก่าของ WordPress (ปัจจุบันเรียกว่า Classic Editor) ใช้แนวคิดแบบ word processing เขียนงานเอกสารเรียงจากบนลงล่างไปเรื่อยๆ แต่ Gutenberg ใช้แนวคิดมองวัตถุต่างๆ เป็น "บล็อค" (block) ซึ่งมีได้หลากหลายชนิด เช่น ข้อความ รูปภาพ วิดีโอ แกลเลอรี ลิสต์ ปุ่ม หรือไฟล์ โดยผู้ใช้สามารถจัดเรียงบล็อคได้อย่างอิสระ จะวางต่อกันจากบนลงล่าง หรือจะจัดเรียงคู่กันซ้าย-ขวาก็ทำได้ง่าย
Microsoft และ Docker ประกาศร่วมมือกันพัฒนาโครงการโอเพ่นซอร์สใหม่ในชื่อว่า Cloud Native Application Bundle หรือ CNAB เป็นมาตรฐานแบบโอเพ่นซอร์สที่ช่วยให้การจัดการ lifecycle บนแอพพลิเคชั่นแบบ cloud-native ทำได้ง่ายขึ้น
สำหรับ CNAB จะเป็นแพคเกจที่ไว้ใช้สำหรับการจัดการ distributed application โดยใช้ไฟล์ติดตั้งเพียงไฟล์เดียว, ทำการ provision application resource ใน environment ที่แตกต่างกันหลายรูปแบบ ไม่ว่าจะเป็นคลาวด์หรือ on-premise และจัดการ lifecycle ของแอพพลิเคชั่นได้ง่าย ๆ โดย CNAB นี้จะใช้เทคโนโลยีที่ผู้ใช้คุ้นเคยกันอยู่แล้ว ไม่ว่าจะเป็น JSON, Docker Container, OpenPGP และอื่น ๆ
ก่อนที่ไมโครซอฟท์จะเปิดโครงการ .NET Core ที่ทำให้นำ .NET ไปรันบนลินุกซ์ได้นั้น ไมโครซอฟท์ได้ก่อตั้ง .NET Foundation มาตั้งแต่ปี 2014 เพื่อดูแลโค้ด .NET จำนวนมากที่ปล่อยออกมา วันนี้ไมโครซอฟท์ก็ประกาศเปิดรับสมาชิกทั่วไป และเปิดให้คนภายนอกเป็นกรรมการมูลนิธิได้ง่ายขึ้น
ไมโครซอฟท์เปิดตัว .NET Core 3 Preview 1 ให้คนทั่วไปดาวน์โหลดความเปลี่ยนแปลงสำคัญคือมีไลบรารีเดสก์ทอปแล้ว หลังจาก .NET Core 2 ตัดส่วนนี้ออกไป
ตัว .NET Core เป็นโอเพนซอร์สในเวอร์ชั่นนี้ก็ยังเป็นเช่นเดิม โดยไมโครซอฟท์เปิดซอร์ส WPF, Windows Form, และ WinUI ออกมาพร้อมกัน โดยเฉพาะตัว WPF และ Windows Form นั้นอยู่ภายใต้ .NET Foundation และมีผู้ทั้งกูเกิล, เรดแฮต, ซัมซุง, Unity เข้ามาสนับสนุน
ความเปลี่ยนแปลงในตัวไลบรารีหลักมีอีกหลายอย่าง เช่น การรองรับ IoT ด้วยการรองรับพอร์ต UART บนลินุกซ์, รองรับ GPIO, PWM, SPI, และ I2C ส่วนในแง่ความปลอดภัยรองรับ TLS 1.3