Tags:
Node Thumbnail

ฟีเจอร์ใหม่ที่สำคัญของ Android 12 คือระบบธีม Material You ที่มีระบบสีไดนามิก Dynamic Color สามารถสกัดสีจากภาพพื้นหลังมาเป็นธีมสีได้

ล่าสุดกูเกิลเปิดซอร์สของอัลกอริทึม Dynamic Color เป็นไลบรารีให้ใช้กันในชื่อ Material Color Utilities (เบื้องต้นมีไลบรารีของภาษา Dart, Java, TypeScript แต่จะมี C/C++ และ Objective-C ตามมา) พร้อมอธิบายแนวคิดเบื้องหลัง ที่ถึงขั้นกูเกิลต้องประดิษฐ์ระบบค่าสีขึ้นมาใหม่เลยทีเดียว

Tags:
Node Thumbnail

ถ้าถามเว็บมาสเตอร์ในยุคก่อนว่า รู้จักระบบเว็บบอร์ดหรือกระดานสนทนาที่เบาและแรงไหม หนึ่งในตัวเลือกแรก ๆ ที่จะตอบเกือบพร้อมเพรียงกัน คงหนีไม่พ้น "SMF" เป็นแน่แท้ (แม้ในยุคปัจจุบันนี้ จะมีผู้ใช้งานส่วนใหญ่หนีไปใช้โซเชียลมีเดียแทนการใช้ระบบเว็บบอร์ดแล้วก็ตาม)

SMF (หรือคำเต็มคือ Simple Machines Forum) เป็นระบบกระดานสนทนาโอเพนซอร์ส ที่เขียนมาจากภาษา PHP ใช้ฐานข้อมูล MySQL พัฒนาโดย Simple Machines ตั้งแต่ปี 2001 ถ้านับถึงตอนนี้ อายุปาไป 21 ปีแล้ว เป้าหมายแรกเริ่มของการพัฒนาคือ เน้นระบบที่เรียบง่าย ใช้งานง่ายและที่สำคัญต้องเบา ไม่กินทรัพยากรของเซิร์ฟเวอร์ด้วย

Tags:
Node Thumbnail

Laravel เฟรมเวิร์ค PHP ยอดนิยมออกเวอร์ชั่น 9.0 รุ่นซัพพอร์ตระยะยาวจนถึงปี 2025 พร้อมกับปรับรอบการออกเวอร์ชั่นต่อไปให้เหลือปีละเวอร์ชั่นจากเดิมออกทุก 6 เดือนล้อไปกับ Symfony

จุดเปลี่ยนสำคัญคือ PHP ต้องเป็น 8.0 ขึ้นไปเท่านั้น นับเป็นเวอร์ชั่นแรกที่หยุดซัพพอร์ต PHP 7 ฟีเจอร์ใหม่ๆ เช่น Laravel Breeze มี API สำหรับใช้งานกับเฟรมเวิร์คจาวาสคริปต์อย่าง Nextjs หรือ Nuxtjs, หน้าจอ Exception ใหม่มี dark mode, โปรแกรม command line แสดง route ได้สวยงามขึ้น และแสดงความครอบคลุมชุดทดสอบได้ในตัว

ตัว Laravel 9 จะมีแพตช์ความปลอดภัยไปจนถึงปี 2025 ขณะที่ Laravel 6 ตัว LTS ก่อนหน้าจะมีแพตช์ความปลอดภัยไปจนถึงเดือนกันยายนนี้ นักพัฒนาจะมีเวลาประมาณครึ่งปีเพื่อย้ายระบบ

Tags:
Node Thumbnail

Mozilla ประกาศหยุดเลิกทำ Firefox Reality เว็บเบราว์เซอร์สำหรับแว่น VR ที่เริ่มทำในปี 2018 โดยจะยกโครงการให้บริษัท Igalia ทำต่อภายใต้ชื่อใหม่ว่า Wolvic

Igalia เป็นบริษัทซอฟต์แวร์โอเพนซอร์สจากสเปนที่เชี่ยวชาญการพัฒนาเบราว์เซอร์แบบคัสตอม โดยใช้เอนจินหลากหลายทั้ง WebKit, Blink/Chromium, Firefox/Gecko/Servo เน้นไปที่งานสาย embeded (บริษัทเพิ่งออกเบราว์เซอร์ชื่อ Balena ที่ใช้ WebKit)

Tags:
Node Thumbnail

MariaDB Corporation Ab บริษัทผู้ถือเครื่องหมายการค้าของ MariaDB ประกาศเตรียมนำหุ้นเข้าตลาดหุ้นนิวยอร์คด้วยผ่านกระบวนการ SPAC ด้วยมูลค่า 672 ล้านดอลลาร์ หรือประมาณ 22,300 ล้านบาท

ตัว MariaDB นั้นเป็นโครงการโอเพนซอร์สที่มี MariaDB Foundation เป็นผู้ดูแล และช่วงแรกของโครงการผู้พัฒนานั้นอยู่กับบริษัท Monty Program Ab เป็นหลัก แต่ภายหลังก็มีการควบรวมบริษัทกับ SkySQL และซื้อเครื่องหมายการค้า MariaDB ออกไปจากมูลนิธิ (แต่ยังอนุญาตให้ใช้งานกับตัวโครงการโอเพนซอร์สได้อยู่ พร้อมกับเปลี่ยนชื่อบริษัทและตอนนี้ MariaDB Corporation Ab ก็เป็นหนึ่งในผู้สนับสนุน MariaDB Foundation

Tags:
Node Thumbnail

เราเพิ่งเห็นข่าว Fedora ประกาศเขียนตัวติดตั้งใหม่ด้วยเทคโนโลยีเว็บแทน GTK+ ล่าสุดค่าย SUSE ก็ประกาศแนวทางคล้ายๆ กันคือ จะเขียนตัวติดตั้ง (YaST) ใหม่เช่นกัน โครงการนี้ใช้ชื่อว่า D-Installer

ทีม SUSE บอกว่าคิดเรื่องนี้มาตั้งแต่กลางปี 2021 โดยมีเป้าหมายว่าต้องการแยกส่วน UI ของ YaST ออกจากไส้ใน และอยากมีอินเทอร์เฟซที่เป็นเว็บเบสด้วย

กระบวนการแยกส่วน YaST แยกตัวเซอร์วิสและไลบรารี (เขียนด้วย Ruby) ออกจาก UI ซึ่งมีได้หลายตัว ทั้งคอมมานด์ไลน์ (CLI), แอพเดิมที่เขียนด้วย Qt และเว็บ แล้วเชื่อมกันด้วย D-Bus ที่เป็นระบบส่งข้อความระหว่างโพรเซส

Tags:
Node Thumbnail

Daniel Stenberg ผู้พัฒนาโครงการ curl ไคลเอนต์ HTTP แบบ command line ยอดนิยมระบุว่าน่าจะถึงเวลาเพิ่มฟีเจอร์ JSON ในตัวให้กับ curl แล้ว เนื่องจากเหตุผลสามประการ คือ

  1. การใช้งาน JSON สูงขึ้นมาก โดยเฉพาะการส่งข้อมูลผ่าน REST API
  2. มีโครงการอื่นๆ พยายามเพิ่มฟีเจอร์ JSON เพื่อทดแทน curl อยู่เรื่อยๆ
  3. ผู้ใช้งาน curl พยายามใช้งาน JSON แต่เจอปัญหาโควตผิดจนสคริปต์มีปัญหาอยู่เนืองๆ

แนวทางของ Stenberg คือการเพิ่มออปชั่น --json สำหรับการใส่ข้อมูล JSON ทั้งชุดพร้อมเพิ่ม header Accept: application/json โดยอัตโนมัติ และยังมีฟีเจอร์ JSON part ที่ใส่ข้อมูล JSON ลงไปใน command line ได้

Tags:
Node Thumbnail

ช่องว่างที่หายไปของ CentOS ทำให้เกิดดิสโทรลินุกซ์ทางเลือกมาทดแทนหลายราย ที่เด่นๆ คือโครงการใหม่ทั้ง AlmaLinux และ RockyLinux แต่ก็ยังมีดิสโทรจากบริษัทใหญ่อย่าง Oracle Linux และ Amazon Linux มาเป็นทางเลือกด้วย

ล่าสุด SUSE ดิสโทรยักษ์ใหญ่อีกรายจากฝั่งยุโรปที่เป็นคู่แข่งกับ Red Hat มานาน ประกาศทำ SUSE Liberty Linux โดยนำซอร์สโค้ดของ Red Hat Enterprise Linux (RHEL) มาคอมไพล์เป็นไบนารีแจกฟรีๆ

SUSE Liberty Linux จะใช้แพ็กเกจทุกอย่างเหมือนกับ RHEL ทุกประการ ยกเว้นเคอร์เนลที่ใช้เคอร์เนลของ SUSE Linux Enterprise (SLE) เอง แต่ก็คอมไพล์ด้วยคอนฟิกที่เข้ากันได้กับ RHEL

Tags:
Node Thumbnail

Kent Walker จากกูเกิลเขียนบล็อคเล่าถึงข้อเสนอของกูเกิลหลังเข้าร่วมประชุมความปลอดภัยของซอฟต์แวร์โอเพนซอร์สกับทำเนียบขาว (White House Open Source Software Security Summit) โดยระบุถึงสื่งที่ต้องทำเพื่อให้โลกโอเพนซอร์สปลอดภัยขึ้น 3 ด้าน ได้แก่

Tags:
Node Thumbnail

ในยุคนี้ การเขียนแอพแบบดั้งเดิมหลายอย่างถูกเปลี่ยนมาเขียนด้วยเทคโนโลยีเว็บแทน กระแสนี้ลามไปถึงตัวติดตั้งระบบปฏิบัติการ (OS installer) ที่เราเห็นเป็นอย่างแรกๆ ตั้งแต่เครื่องพีซียังไม่มีระบบปฏิบัติการด้วยซ้ำ

ดิสโทรลินุกซ์ Fedora มีตัวติดตั้งชื่อ Anaconda ถูกใช้งานมายาวนาน (ใช้กับทั้ง Fedora และดิสโทรในสาย Red Hat ทั้ง RHEL และ CentOS) เดิมที Anaconda เขียนด้วย GTK+ ซึ่งเป็นชุดพัฒนา GUI สำหรับลินุกซ์ (ตัวเดียวกับ GNOME และ GIMP) แต่มันกำลังจะถูกเปลี่ยนมาใช้เทคโนโลยีเว็บแทน

Tags:
Node Thumbnail

Multiprocess Labs ผู้พัฒนา DataStation ที่เป็น IDE สำหรับการคิวรีข้อมูล โอเพนซอร์สโครงการ dsq สำหรับการคิวรีข้อมูลไฟล์ต่างๆ ด้วยภาษา SQL

โครงการโอเพนซอร์สสำหรับคิวรีข้อมูลในไฟล์ด้วย SQL นั้นมีมาก่อนหน้านี้แล้วหลายโครงการ แต่ไลบรารี DataStation นั้นมีจุดเด่นที่การรองรับไฟล์ฟอร์แมตหลากหลายกว่า เช่น Excel, OpenOffice Sheet, JSONL (JSON ที่แบ่งตามบรรทัด), Apache2 log, และ nginx log

เบื้องหลังของโปรแกรมในกลุ่มนี้ เช่น textql หรือ q มักใช้ SQLite เป็นเอนจินด้านหลัง และตัวโปรแกรมก็แปลงข้อมูลเพื่อส่งเข้าไปยัง SQLite ก่อนจะรันคิวรีอีกที แต่การมีโปรแกรมลักษณะนี้ก็ช่วยทำให้งานหลายประเภทที่ต้องการคิวรีเป็นครั้งคราวใช้งานได้สะดวกขึ้นมาก

Tags:
Node Thumbnail

KiCad โครงการซอฟต์แวร์ออกแบบวงจรอิเล็กทรอนิกส์แบบโอเพนซอร์สประกาศออกเวอร์ชั่น 6.0 นับเป็นเวอร์ชั่นใหญ่ในรอบ 3 ปี โดยความเปลี่ยนแปลงสำคัญคือการปรับหน้าจอใหม่ทั้งหมดเพื่อให้ผู้ใช้จากโปรแกรมออกแบบวงจรค่ายอื่นสามารถมาใช้งานได้ง่ายขึ้น หน้าจอในโหมด schematic และโหมด PCB ดูเป็นเนื้อเดียวกันมากขึ้น

สำหรับฟีเจอร์ภายในสำคัญคือไฟล์ฟอร์แมตใหม่ ที่ใส่ทั้ง schematic และ library ไว้ในไฟล์เดียวกัน ทำให้ผู้ออกแบบวงจรสามารถฝังสัญลักษณ์ของอุปกรณ์ต่างๆ ลงไปในไฟล์ได้เลย กฎการออกแบบระบบใหม่รองรับกฎที่ซับซ้อนขึ้น เช่นกฎแยกเฉพาะสำหรับบางชั้นของแผงวงจร หรือกฎเฉพาะสำหรับบางโซน และหน้าจอแบบ dark mode ในแมคและลินุกซ์

Tags:
Node Thumbnail

SUSE ประกาศว่าซอฟต์แวร์ hyperconverged infrastructure (HCI) แบบโอเพซอร์สของตัวเองที่ชื่อว่า Harvester นั้นเข้าสู่เวอร์ชั่น 1.0 พร้อมใช้งานแล้ว

โครงการ Harvester เพิ่งเปิดตัวเมื่อปีที่แล้ว แต่ก็อาศัยโครงสร้างอื่นๆ ที่มีมาก่อนแล้ว หลักๆ คือใช้ Kubernetes ร่วมกับ KubeVirt เพื่อจัดการ VM ในคลัสเตอร์ ส่วนระบบสตอเรจนั้นใช้ Longhorn ที่เป็นโครงการโอเพนซอร์สของ Rancher เอง

Tags:
Node Thumbnail

CentOS 8 จะสิ้นระยะซัพพอร์ตในวันที่ 31 ธันวาคม 2021 หลังจากนี้ไป โครงการ CentOS จะเข้าสู่ยุคใหม่ที่เป็น CentOS Stream แทน เท่ากับว่าเมื่อขึ้นปี 2022 แล้ว CentOS 8 จะไม่ได้รับแพตช์ความปลอดภัยอีกต่อไป

แต่ CentOS 8 เป็นระบบปฏิบัติการที่มีคนนิยมใช้อย่างสูง โดยเฉพาะในฝั่งเซิร์ฟเวอร์ จึงเกิดคำถามตามมาว่าผู้ใช้ CentOS 8 ที่ตอนนี้เหลือเวลาอีกน้อยนิด มีทางเลือกในการอัพเกรดไปใช้ระบบปฏิบัติการใดแทนได้บ้าง

เว็บไซต์ ZDNet ได้รวบรวมทางเลือกที่เป็นไปได้ในการอัพเกรดแทน CentOS 8 โดยเริ่มจากกลุ่มที่ดัดแปลงมาจาก RHEL 8 และสามารถทดแทน CentOS 8 ได้ทันที

Tags:
Node Thumbnail

โครงการ CentOS ภายใต้การดูแลของ Red Hat เปิดตัว CentOS Stream 9 ซึ่งถือเป็นยุคใหม่ของ CentOS หลังการเปลี่ยนนโยบายครั้งใหญ่ เลิกซัพพอร์ต CentOS 8 เมื่อปลายปี 2020

เดิมที CentOS เป็นการนำซอร์สโค้ดของ Red Hat Enterprise Linux (RHEL) ที่เป็นรุ่นเสถียรสำหรับองค์กร มาคอมไพล์เป็นไบนารี แจกจ่ายให้ฟรีโดยไม่ต้องซื้อ subscription จาก Red Hat โดยเลขเวอร์ชันของ CentOS จะเท่ากับ RHEL เสมอ และออกตามหลัง RHEL เล็กน้อย

Tags:
Node Thumbnail

กูเกิลประกาศบริจาค Knative เข้า Cloud Native Computing Foundation (CNCF) หลังจากเปิดโครงการมาตั้งแต่ปี 2018 และแม้จะเป็นโครงการโอเพนซอร์สมาตลอดแต่ก็ควบคุมโครงการโดยกูเกิลเองเป็นหลัก

Knative เป็นชุดซอฟต์แวร์สำหรับสร้างบริการแบบ serverless บน Kubernetes ที่ตอนนี้ได้รับความนิยมสูงสุดในชุมชน Kubernetes (รองลงไป คือ OpenFaaS, Kubeless, Virtual Kubelet, KEDA, Apache OpenWhisk)

แม้ว่ากูเกิลจะควบคุมโครงการเป็นหลัก แต่บริษัทอื่นๆ ก็ส่งนักพัฒนาเข้ามาร่วมพัฒนาต่อเนื่อง เช่น IBM, Red Hat, VMware, และ SAP ทาง IBM เองเคยแสดงความไม่พอใจที่ Knative ยังอยู่ภายใต้การควบคุมของกูเกิล

Tags:
Node Thumbnail

Supabase บริการระบบหลังบ้านแอปพลิเคชั่นที่เลียนแบบมาจาก Firebase แต่พัฒนาแบบโอเพนซอร์สประกาศโครงการ Supabase Studio หน้าจอ UI ที่เคยให้บริการเฉพาะบริการคลาวด์ของ Supabase เอง

ฟังก์ชั่นของ Supabase Studio ใช้สำหรับจัดการฐานข้อมูลใน Supabase เอง เช่นการจัดการตาราง, กำหนดนโยบาย, คิวรีข้อมูลออกมาดู

ตัวโครงการ Studio พัฒนาโดยใช้ Next.js, Tailwind CSS, Supabase UI, และ MobX แนวทางการพัฒนา ส่วน Studio นั้นจะฝังโค้ดเข้าไปอยู่ใน repository เดียวกับ Supabase โดยตรง ทีมงานระบุว่าทดลองแนวทางแยกโครงการออกจากกัน, ซิงก์โค้ดข้ามโครงการผ่าน git submodule มาแล้ว แต่พบว่าทำงานลำบาก จึงเลือกรวมอยู่ใน repository เดียวกันในที่สุด

Tags:
Node Thumbnail

โครงการฐานข้อมูลแบบฝังตัวในซอฟต์แวร์ SQLite ออกเวอร์ชั่น 3.37.0 ที่แม้จะเป็นอัพเดตย่อยแต่มีฟีเจอร์สำคัญเพิ่มเข้ามาคือการรองรับตารางแบบ STRICT ที่ทำให้ผู้สร้างตารางกำหนดชนิดข้อมูลได้จริงๆ

พฤติกรรมของ SQLite ก่อนหน้านี้แม้คอลัมน์ในฐานข้อมูลจะกำหนดชนิดข้อมูลเอาไว้ แต่ตัว SQLite จะไม่ได้บังคับจริงๆ หากชนิดข้อมูลที่ใส่เข้ามาไม่ตรงกันก็จะพยายามแปลงข้อมูลให้ เช่น หากคอลัมน์เป็นเลขจำนวนเต็ม (INT) แต่ใส่ข้อความ "123" ก็จะพยายามแปลงเป็นตัวเลข 123 ให้เอง แม้จะสะดวก แต่เมื่อใส่ข้อมูลที่แปลงเป็นตัวเลขไม่ได้ เช่น "xyz" ตัว SQLite ก็จะยอมใส่ข้อมูลเป็นสตริงลงไปในคอลัมน์แม้จะกำหนดชนิดข้อมูลเป็นตัวเลขก็ตาม

Tags:
Node Thumbnail

กลุ่มบริษัทไอที 10 บริษัทประกาศร่วมก่อตั้ง PHP Foundation องค์กรกลางสำหรับดูแลภาษา PHP เต็มเวลา หลังจาก Nikita Popov นักพัฒนาหลักของ PHP ที่ทำงานกับ JetBrains ลาออกจากบริษัทและหันไปทำงานในโครงการ LLVM เป็นหลัก

บริษัทที่ร่วมก่อตั้งมูลนิธิครั้งนี้ได้แก่ Automattic (Wordpress), Laravel, Acquia (Drupal), Zend, Private Packagist, Symfony, Craft CMS, Tideways, PrestaShop, และ JetBrains โดยคาดว่าจะระดมทุนเป็นงบประมาณสำหรับนักพัฒนาหลักได้ปีละ 300,000 ดอลลาร์ เบื้องต้น JetBrains ประกาศว่าจะสนับสนุนปีละ 100,000 ดอลลาร์

Tags:
Node Thumbnail

ความขัดแย้งระหว่าง Elastic Inc. และบริษัทอื่นๆ ที่ใช้งานโครงการโอเพนซอร์ส Elasticsearch มาถึงจุดแยกทางอีกครั้ง เมื่อ Logz.io ผู้ให้บริการ Elasticsearch แบบคลาวด์ประกาศเตรียมใช้งาน OpenSearch ทั้งระบบภายในปี 2022

Logz.io เป็นหนึ่งในผู้ร่วมพัฒนาโครงการ OpenSearch กับ AWS ตัว AWS เองก็เปิดบริการ OpenSearch มาตั้งแต่เดือนกันยายน แต่เปิดบริการขนานกันไปกับ Elasticsearch (ที่จะไม่ได้รับอัพเกรดเวอร์ชั่นแล้ว เพราะ Elastic Inc. เปลี่ยนไลเซนส์เวอร์ชั่นหลังๆ)

Tags:
Node Thumbnail

HashiCorp บริษัทซอฟต์แวร์จัดการระบบคลาวด์ เจ้าของซอฟต์แวร์ชื่อดังอย่าง Terraform, Vagrant, Consul, Nomad ยื่นเอกสารเตรียมขายหุ้น IPO ในตลาดหลักทรัพย์นิวยอร์ก ใช้ตัวย่อว่า "HCP"

HashiCorp ก่อตั้งโดย Mitchell Hashimoto ลูกครึ่งญี่ปุ่น-อเมริกันและเพื่อนอีกคนคือ Armon Dadgar ในปี 2012 โดยเริ่มต้นจาก Vagrant ซอฟต์แวร์จัดการระบบ virtualization ที่ Hashimoto สร้างขึ้นตั้งแต่ปี 2010 โดยมีแนวคิดการใช้คอนฟิกแบบ declarative configuration file เพื่อให้จัดการระบบง่ายขึ้น

Tags:
Node Thumbnail

Huawei เปิดตัว NestOS ระบบปฏิบัติการลินุกซ์ขนาดเล็กสำหรับรันบนคลาวด์ โดยอิงอยู่บน OpenEuler/EulerOS ดิสโทรลินุกซ์ของ Huawei (ซึ่งอิงมาจาก CentOS อีกที)

Huawei เรียก NestOS ว่าเป็นระบบปฏิบัติการขนาดเล็ก (minimal) ที่อัพเดตตัวเองอัตโนมัติ เน้นใช้งานบนคอนเทนเนอร์ ลักษณะคล้ายๆ Fedora CoreOS, SUSE Micro, AWS Bottlerocket, VMware Photon OS เป็นต้น

Tags:
Node Thumbnail

โครงการโอเพนซอร์สจำนวนมากอยู่บน GitHub และการที่ GitHub มีฐานนักพัฒนาจำนวนมาก ทำให้การส่งแพตช์เข้าร่วมโครงการทำได้ง่ายขึ้น แต่ในมุมกลับ นักพัฒนาผู้ดูแลโครงการก็เจอปัญหาการสแปม pull request จากนักพัฒนาที่ไม่เคยรู้จักกันมาก่อน

GitHub เลยออกฟีเจอร์ใหม่ให้ผู้ดูแลโครงการสามารถกำหนดผู้ใช้ที่สิทธิ code review (สั่งอนุมัติ pull request) ได้แบบเจาะจงบุคคล เพื่อจำกัดเฉพาะคนที่ไว้วางใจได้ เป็นผู้ตรวจสอบโค้ดที่มีคนส่งเข้ามา

หน้าจอตั้งค่านี้ กำหนดได้ตาม repository ที่ต้องการ หรือเป็นจะทุก repository ขององค์กรก็ได้เช่นกัน

Tags:
Node Thumbnail

สัปดาห์ที่ผ่านมาชุมชน .NET เกิดดราม่าขนาดกลางๆ ขึ้นเมื่อไมโครซอฟท์รับ pull request หมายเลข 22217 เข้ามายัง .NET SDK รุ่นโอเพนซอร์ส เป็นการถอนฟีเจอร์ Hot Reload ออกไปโดยระบุเหตุผลว่าฟีเจอร์นี้จะรองรับเฉพาะผู้ใช้ Visual Studio 2022 เท่านั้น และวันนี้ไมโครซอฟท์ก็ยอมถอย ใส่ฟีเจอร์กลับเข้ามาใหม่พร้อมเขียนบล็อกขอโทษชุมชน

แนวทางนี้ทำให้ไมโครซอฟท์ถูกโจมตีอย่างหนักว่าไม่ได้สนใจจะทำให้ .NET เป็นแพลตฟอร์มเปิดสำหรับนักพัฒนาจริงๆ แต่มุ่งจะขาย Visual Studio เท่านั้น

Pages