คลังเก็บป้ายกำกับ: Open_Source

Instagram เปิดซอร์สโค้ด Cinder โครงการพัฒนา Python ของตัวเองให้ประสิทธิภาพดีขึ้น

ทีมวิศวกร Instagram เปิดเผยซอร์สโค้ดโครงการ Cinder ซึ่งเป็นการ fork ตัว CPython (Python เวอร์ชันหลักที่เราใช้กันทั่วไป) ให้มีประสิทธิภาพสูงขึ้นกว่าเดิม

Cinder เป็นโครงการภายในของ Instagram ที่นำ CPython 3.8 มาปรับแต่งหลายด้าน เช่น bytecode inline caching, eager evaluation of coroutines, method-at-a-time JIT และการลองทำ Static Python ทั้งหมดเพื่อให้ประสิทธิภาพดีขึ้นกว่าเดิม

อย่างไรก็ตาม ทีมงาน Instagram ระบุว่าไม่ต้องการแยกโครงการ Cinder ออกมาจาก CPython สายหลัก และตั้งใจเปิดซอร์สออกมาเพื่อเปิดโอกาสให้โค้ดของ Cinder ถูกรวมกลับไปยัง CPython ง่ายขึ้นแทน ปัจจุบัน Cinder ถูกใช้งานภายใน Instagram อยู่แล้ว ใครสนใจนำไปใช้ก็ตามสะดวก แต่จะไม่รับรองคุณภาพหรือมีการซัพพอร์ต-แก้บั๊กให้กับใคร ตอนนี้รันได้เฉพาะบนลินุกซ์เพียงแพลตฟอร์มเดียวเท่านั้น

ที่มา – GitHub, InfoWorld

No Description

from:https://www.blognone.com/node/122593

Pyston โครงการภาษาไพธอนประสิทธิภาพสูง เปิดเป็นโอเพนซอร์สแล้ว

Pyston โครงการภาษาไพธอนประสิทธิภาพสูงที่เริ่มต้นโครงการโดย Dropbox เมื่อปี 2014 กลับมาพัฒนาและเปิดซอร์สอีกครั้งในเวอร์ชั่น 2.2 หลังจากทาง Dropbox ทิ้งโครงการไปเมื่อปี 2017 ทีมงานตัดสินใจออกมาตั้งบริษัทแยกเพื่อให้บริการซัพพอร์ตในปี 2020

Pyston เป็นรันไทม์ไพธอนที่มี C API เข้ากันได้กับโครงการหลัก ทำให้สามารถใช้แพ็กเกจหลักๆ ได้ทันทีผ่านทางคำสั่ง pip-pyston3 ตัวโครงการรองรับภาษาไพธอนเวอร์ชั่น 3.8

แนวทางการเร่งความเร็วของ Pyston อาศัยการคอมไพล์โค้ดด้วย DynASM ของโครงการ Lua และลบโค้ดต่างๆ ที่ใช้งานน้อยออกไป ผลการทดสอบแสดงให้เห็นว่า Pyston ประสิทธิภาพดีกว่าโครงการหลักเป็นส่วนใหญ่ กรณีสำคัญๆ เช่นการใช้เป็นเว็บเซิร์ฟเวอร์นั้นประสิทธิภาพดีขึ้นถึง 30%

ตอนนี้โครงการหลักปล่อยซอร์สโค้ดออกมาแล้ว พร้อมแพ็กเกจ deb สำหรับ Ubuntu 16.04/18.04/20.04

ที่มา – Pyston Blog

No Description

ภาพโค้ดภาษา Python โดย JohnsonMartin

from:https://www.blognone.com/node/122539

Red Hat เตรียมโอเพนซอร์ส StackRocx ซอฟต์แวร์ความปลอดภัย Kubernetes

Red Hat เตรียมเปิดซอร์ส StackRox ซอฟต์แวร์ความปลอดภัย Kubernetes ที่ซื้อกิจการมาในเดือนมกราคม 2021

ซอฟต์แวร์ของ StackRox จะกลายมาเป็นโครงการต้นน้ำของ Red Hat Advanced Cluster Security for Kubernetes ที่เป็นผลิตภัณฑ์จับลูกค้าองค์กรแบบคิดเงิน ของ Red Hat (ลักษณะจะคล้าย Fedora ที่เป็นฐานของ RHEL)

แนวทางจัดการความปลอดภัยของ StackRox คือการรันซอฟต์แวร์มอนิเตอร์ของ StackRox ในคลัสเตอร์ Kubernetes และมีเซิร์ฟเวอร์ที่ดึงข้อมูลกลับมาวิเคราะห์-แสดงผลให้แอดมินทราบสถานะความปลอดภัยของทั้งระบบ (ตามแผนผัง) ซอฟต์แวร์ของ StackRox สามารถใช้กับคอนเทนเนอร์ Kubernetes ได้ทุกเจ้า เช่น Amazon EKS, Google GKE, Azure AKS, Docker Enterprise และ Red Hat OpenShift

ที่ผ่านมา บริษัท StackRox มีซอฟต์แวร์โอเพนซอร์สอยู่แล้วหนึ่งตัวคือ KubeLinter และจะทยอยเปิดซอร์สของซอฟต์แวร์อื่นๆ ตามมาในเร็วๆ นี้

No Description

No Description

ที่มา – StackRox, Red Hat, The Register

from:https://www.blognone.com/node/122510

Google Cloud ออก Open Saves ซอฟต์แวร์ช่วยจัดการสตอเรจของเซิร์ฟเวอร์เกม

อุตสาหกรรมเกมในช่วงหลังนิยมใช้คลาวด์เป็น backend กันมากขึ้น และผู้ให้บริการคลาวด์เองก็เริ่มออกบริการ-ซอฟต์แวร์มาจับตลาดบริษัทเกมเช่นกัน

กรณีล่าสุดคือ Google Cloud ร่วมกับ 2K Games เปิดตัวซอฟต์แวร์ชื่อ Open Saves เอาไว้จัดการระบบสตอเรจของเกมบนคลาวด์

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

กูเกิลกับ 2K จึงพัฒนา Open Saves เป็นตัวคั่นกลาง คอยเลือกสตอเรจให้เหมาะสมกับข้อมูลแต่ละประเภทโดยอัตโนมัติ เช่น เลือกชนิดของแคชให้โดยอิงจากขนาดข้อมูล-ความถี่ในการเรียกใช้

No Description

No Description

ตัวโปรแกรมเป็นโอเพนซอร์ส นำไปรันบนเครื่องตัวเอง (on premise) ได้แบบไม่ต้องเช่า Google Cloud (แต่ยังรองรับเฉพาะสตอเรจ Google Cloud) เขียนด้วย Go แต่สามารถเชื่อมกับโปรแกรมภาษาใดๆ ก็ได้ผ่าน gRPC API

ก่อนหน้านี้ Google Cloud เคยออกบริการชื่อ Open Match สำหรับจับคู่แข่งขัน (matchmaking) เป็นโอเพนซอร์สให้ใช้งานเช่นกัน

ที่มา – Google

from:https://www.blognone.com/node/122472

Fedora 34 ออกแล้ว บีบอัดระบบไฟล์ Btrfs ลดพื้นที่ดิสก์ลงได้ 20-40%

Fedora ออกเวอร์ชัน 34 ของใหม่ที่สำคัญดังนี้

  • Fedora Workstation ใช้ GNOME 40, Fedora KDE เปลี่ยนมาใช้ Wayland แทน X11
  • Fedora IoT ปรับปรุงการทำงานบนอุปกรณ์ Pine64, RockPro64, Jetson Xavier NX
  • แพ็กเกจใหม่ๆ เช่น Ruby 3.0, Golang 1.16
  • ระบบไฟล์ Btrfs เปิดใช้การบีบอัด transparent compression ที่ลดขนาดไฟล์ลงได้ 20-40% แต่ยังอ่านได้แบบไม่เปลืองพลังซีพียู
  • เปลี่ยนมาใช้เซอร์วิสจัดการเสียงตัวใหม่ Pipewire แทน PulseAudio ที่ใช้กันมานานในโลกลินุกซ์

ที่มา – Fedora, Fedora Workstation

No Description

from:https://www.blognone.com/node/122389

รู้จัก Rustls ไลบรารีที่สร้างมาใช้แทน OpenSSL แต่เขียนด้วย Rust เพราะปลอดภัยกว่า

ช่วงหลังเราเห็นความนิยมใช้ภาษา Rust ทดแทน C ด้วยเหตุผลด้านความปลอดภัย เพราะมีฟีเจอร์ memory safety ที่ตัวภาษาเอง ตัวอย่างที่สำคัญคือ Android จะเริ่มใช้ Rust เขียนบางส่วนของ OS แล้ว

ถ้าไม่นับระดับของ OS โครงการหนึ่งที่เป็นหัวหอกในเรื่องนี้คือ Rustls ไลบรารีที่เขียนขึ้นมาใช้แทน OpenSSL ซึ่งเป็นไลบรารีสำคัญของโลกซอฟต์แวร์ เพราะถูกใช้ในการเชื่อมต่อแบบปลอดภัย (SSL/TLS) แต่ตัว OpenSSL เขียนด้วย C จึงมีบั๊กหรือช่องโหว่หน่วยความจำอยู่มาก ตัวอย่างที่โดดเด่นคือ กรณีของบั๊ก Hearthbleed ที่สร้างผลกระทบไปทั่วโลกในช่วงปี 2014

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

No Description

Rustls ได้รับการสนับสนุนจาก Internet Security Research Group (ISRG) ที่เรารู้จักจากโครงการ Let’s Encrypt และได้รับเงินสนับสนุนจากกูเกิลมาอีกต่อหนึ่ง สิ่งที่ ISRG ทำคือจ้างนักพัฒนาหลักของโครงการคือ Dirkjan Ochtman ให้พัฒนาฟีเจอร์ที่จำเป็นต่อการใช้แทน OpenSSL ซึ่งตอนนี้คืบหน้าไปมากแล้ว

ปัจจุบัน Rustls สามารถใช้ทดแทน OpenSSL ได้แล้วใน Apache HTTP Server และ Curl โดยเป้าหมายถัดไปคือพัฒนาให้ Rustls เชื่อมต่อกับโปรแกรมภาษา C ได้แนบแน่นมากขึ้น และเตรียมนำ Rust ไปใช้กับโครงการ Let’s Encrypt ด้วย

ISRG ยังมีโครงการที่เรียกว่า Memory Safety ที่พยายามแก้ปัญหาแบบเดียวกันกับซอฟต์แวร์สำคัญตัวอื่นๆ โดยเปลี่ยนจาก C/C++ มาเป็นภาษาที่ memory safety ตัวอื่นๆ ซึ่ง Rust ก็ถือเป็นหนึ่งในภาษาดังกล่าว

ที่มา – The New Stack

from:https://www.blognone.com/node/122359

Confluent บริษัทผู้พัฒนา Apache Kafka ยื่นเอกสารเตรียมขายหุ้น IPO

Confluent Inc. บริษัทที่อยู่เบื้องหลังการพัฒนา Apache Kafka ยื่นเอกสารต่อ กลต. สหรัฐ เพื่อเตรียมเข้าขายหุ้น IPO แล้ว

Apache Kafka เป็นซอฟต์แวร์จัดการ event streaming (บ้างก็เรียก data pipeline) เพื่อนำข้อมูลปริมาณมากๆ เข้าระบบอย่างรวดเร็ว ตัวซอฟต์แวร์เริ่มพัฒนาโดยทีมวิศวกรของ LinkedIn ช่วงปี 2011 ก่อนเปิดเป็นโอเพนซอร์ส และยกให้ Apache Software Foundation ดูแลต่อ

ในช่วงเวลาถัดมา Jay Kreps หัวหน้าทีมพัฒนา Kafka ที่ LinkedIn ในตอนนั้น (เขาเป็นคนตั้งชื่อโครงการด้วย โดยนำชื่อมาจากนักเขียนนิยายชื่อดัง Franz Kafka) ออกมาตั้งบริษัท Confluent เพื่อหารายได้จาก Kafka ในเชิงพาณิชย์ ผลิตภัณฑ์ของบริษัทมีทั้ง Confluent Platform (Kafka เวอร์ชัน enterprise ติดตั้งเอง) และ Confluent Cloud (Kafka เวอร์ชันรันบนคลาวด์) โดยได้รับการสนับสนุนจาก LinkedIn ในฐานะต้นสังกัดเดิม

No Description

ปัจจุบัน Confluent ยังไม่เปิดเผยข้อมูลทางการเงิน แต่มีข้อมูลว่ามูลค่าบริษัทล่าสุดอยู่ที่ราว 4.5 พันล้านดอลลาร์ในเดือนเมษายน 2020

บริษัทอื่นๆ ที่ทำธุรกิจเกี่ยวกับ Kafka ได้แก่ Cloudera และ IBM Event Streams แต่ก็แน่นอนว่า Confluent ในฐานะบริษัทของผู้สร้าง Kafka ย่อมได้รับความสนใจมากที่สุด

ช่วงหลังๆ เราเห็นบริษัทสาย enterprise เข้าขายหุ้น IPO กันหลายราย เช่น Snowflake, JFrog, Sumo Logic, Asana และล่าสุดคือ UiPath

ที่มา – Confluent, Reuters

from:https://www.blognone.com/node/122317

Node.js ออกเวอร์ชัน 16.0 รุ่นเลขคู่ของปี 2021

Node.js ออกเวอร์ชันเลขคู่ประจำปี 2021 คือ Node.js 16.0.0 โค้ดเนม Gallium ที่จะกลายเป็นเวอร์ชันซัพพอร์ตระยะยาว (LTS) ในอนาคต

ปกติแล้ว Node.js ออกเวอร์ชันใหม่ปีละ 2 รอบคือ รุ่นเลขคู่ในเดือนเมษายน และรุ่นเลขคี่ในเดือนตุลาคม โดยรุ่นเลขคู่จะเข้าสถานะ LTS เมื่อรุ่นเลขคี่ออกตามมา (เช่น 16.x จะเป็น LTS เมื่อ 17.0 ออก)

ของใหม่ใน Node.js 16.0 คือรองรับ Apple Silicon, ปรับมาใช้เอนจินจาวาสคริปต์ V8 เวอร์ชัน 9.0, เพิ่ม Timers Promises API, เลิกซัพพอร์ต Python 2 เป็นต้น

Node.js จะมีรุ่นที่ซัพพอร์ตพร้อมกันครั้งละ 3 รุ่น ปัจจุบันคือ 10.x, 12.x, 14.x เมื่อออกรุ่นใหม่คือ 16.0 จะทำให้รุ่น 10.x สิ้นสถานะซัพพอร์ตตอนสิ้นเดือนเมษายนนี้

ที่มา – Node.js, The Register

No Description

Topics: 

from:https://www.blognone.com/node/122305

รู้จักกับ MusicBrainz เมื่อนำ Shazam มารวมกับ Free Online Music Database

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

MusicBrainz เป็นโปรเจค ที่สร้างฐานข้อมูลเพลงออนไลน์โดยอาศัยชุมชนเป็นผู้เพิ่มข้อมูลและใครๆ ก็ใช้ได้ ซึ่งเป็นแนวทางแบบเดียวกับ Freedb ที่เป็นฐานข้อมูลออนไลน์ของแผ่นซีดี นอกจากจะเป็นฐานข้อมูลออนไลน์แล้ว MusicBrainz ยังมีฐานข้อมูลของ acoustic fingerprint ซึ่งช่วยในการค้นหาเพลงโดยไม่ต้องอาศัย metadata ได้อีกทาง

ณ ปัจจุบัน MusicBrainz มีข้อมูลเพลงอยู่ 28 ล้านเพลง เป็นฐานข้อมูลเพลงออนไลน์ที่มีขนาดใหญ่เป็นอันดับ 4 รองจาก Discogs (151 ล้าน), Gracenote (100 ล้าน), ACRCloud (40 ล้าน) แต่นับเป็น ฐานข้อมูลฟรีของ acoustic fingerprint ที่มีขนาดใหญ่ที่สุดในปัจจุบัน

No Description

แอปยอดนิยมที่ใช้แก้ไข metadata สามารถดึงข้อมูลจาก MusicBrainz ได้โดยตรง เช่น mp3tag / Foobar2000 แต่การค้นหาจาก acoustic fingerprint ต้องใช้ผ่านแอปเฉพาะที่ชื่อ MusicBrainz Picard เท่านั้น ซึ่งตอนนี้มีครอบคลุม platform ใหญ่ทั้งหมด ทั้ง Windows / macOS / Linux / Android ส่วนวิธีการใช้งานสามารถหาได้ตาม YouTube ครับ

ส่วนใครเจอปัญหาว่าหาเพลงด้วย acoustic fingerprint ไม่เจอ ก็สามารถที่เพิ่มเข้าไปได้ผ่าน Picard เช่นกัน จากประสบการณ์ใช้งานจริง พบว่าเพลงที่ค่อนข้างใหม่จะหาได้จาก acoustic fingerprint เกือบทั้งหมด ส่วนเพลงที่เก่าหน่อย เช่นก่อนปี 2000 มักไม่ไม่มีใครให้ข้อมูล acoustic fingerprint ไว้ครับ แต่มีข้อมูล metadata ไว้ครบถ้วนทีเดียว ผมจึงได้เพิ่มเติมเข้าไปแล้ว

นอกจากนั้นยังมีสิ่งที่น่าสนใจ และเปิดให้เข้าถึงได้ เช่น

  • MusicBrainz ยังมีฐานข้อมูลภาพหน้าปก CD / Media Cover Art แยกออกมาในชื่อ Cover Art Archive ซึ่งเปิด API ให้ใครๆ ก็ใช้งานได้ Amazon ก็ใช้งานระบบนี้เช่นกัน
  • เทคโนโลยีในการทำ acoustic fingerprint ของ MusicBrainz มีชื่อเรียกว่า Chromaprint รายละเอียดสามารถอ่านได้ในบล็อกของ Lukáš Lalinský ซึ่งเป็นหนึ่งใน Contributor ของชุมชน MusicBrainz
  • ฝั่ง Server เขียนด้วย Perl ร่วมกับฐานข้อมูล PostgreSQL ส่วนข้อมูลในฐานข้อมูลจะมี snapshot ออกมาให้ทุก 2 สัปดาห์ ทุกอย่างเป็น Open source พร้อม document อย่างละเอียด
  • ฝั่ง Picard เองก็เป็น Open source เขียน Python

แม้ว่าปัจจุบัน ตอนนี้ Online music streaming จะมาแรง แต่การเก็บเพลงที่ตัวเองชอบฟังไว้ก็ยังเป็นหนึ่งในแนวทางที่ยังมีคนนิยมทำกันอยู่ ก็หวังว่า MusicBrainz จะตอบโจทย์ผู้ใช้กลุ่มนี้นะครับ

อ่านข้อมูลเพิ่มเติมได้ที่ MusicBrainz

from:https://www.blognone.com/node/122304

Grafana เปลี่ยนไลเซนส์เป็น AGPL ป้องกันคนนำไปให้บริการคลาวด์

Grafana Labs เดินตามรอย Elastic Inc ด้วยการเปลี่ยนสัญญาอนุญาต 3 โครงการหลัก ได้แก่ Grafana, Loki, และ Tempo จาก Apache License เป็น AGPL เพื่อป้องกันการนำซอฟต์แวร์ไปให้บริการคลาวด์

ช่วงสองปีที่ผ่านมา บริษัทที่พัฒนาโครงการโอเพนซอร์สเปลี่ยนไลเซนส์เพื่อป้องกันการให้บริการคลาวด์หลายครั้ง โครงการสำคัญๆ คือ MongoDB และ Elasticsearch ที่เปลี่ยนไปใช้ SSPL แทน

สัญญาอนุญาตแบบ AGPL นั้นยังถือว่าเป็นโอเพนซอร์สอยู่ (อยู่ในรายการ OSI-approved license) โดยมีเงื่อนไขคือผู้ที่ดัดแปลงซอฟต์แวร์และให้บริการผ่านเน็ตเวิร์ค ต้องปล่อยโค้ดที่ดัดแปลงนั้นให้กับผู้ใช้งานด้วย ทาง Grafana Labs ยอมรับว่า AGPL นั้นป้องกันคนนำซอฟต์แวร์ไปให้บริการคลาวด์ไม่ดีเท่า SSPL ที่บังคับให้เปิดเผยซอร์สโค้ดอื่นๆ นอกโครงการ เช่น ซอฟต์แวร์จัดการระบบ, ซอฟต์แวร์ทดสอบ ดังนั้นหากผู้ใช้ใช้งาน Grafana โดยไม่ได้ดัดแปลงอะไรก็จะไม่ได้รับผลกระทบ

ซีอีโอของ Grafana Labs กล่าวถึงความเสี่ยงที่อาจจะมีคน fork โครงการแบบเดียวกับ Elasticsearch ว่าตอนนี้ก็มีโครงการ fork ของ Grafana อยู่บ้างแล้ว และจริงๆ Grafana เองก็เป็นโครงการ fork ออกมาจาก Kibana แต่เขาก็ระบุว่าโครงการโอเพนซอร์สจะสำเร็จได้ต้องมีการดูแลโครงการอย่างต่อเนื่องด้วย

ที่มา – Grafana Blog

Topics: 

from:https://www.blognone.com/node/122303