By mk Founder on Tag: Python, Programming
Python

ภาษา Python มีอายุครบ 30 ปีในเดือนกุมภาพันธ์ 2021 โดยนับจาก Guido van Rossum โพสต์เวอร์ชันแรก 0.9.0 ต่อสาธารณะบนนิวส์กรุ๊ป alt.source (ในสมัยที่ยังไม่มีเว็บด้วยซ้ำ) เมื่อเดือนกุมภาพันธ์ 1991

Guido เริ่มสร้าง Python ในช่วงปลายปี 1989 และเปิดตัวต่อโลกช่วงต้นปี 1991 ประโยคแรกที่เขาแนะนำ Python คือ

This is Python, an extensible interpreted programming language that
combines remarkable power with very clear syntax.

By lew Founder on Tag: Rust, Programming, Open Source
Rust

โครงการภาษา Rust ก่อตั้งเป็นมูลนิธิตามกฎหมายในชื่อ Rust Foundation อย่างเป็นทางการเรียบร้อยแล้ว โดยมีบริษัทร่วมก่อตั้ง ได้แก่ AWS, Huawei, Google, Microsoft, และ Mozilla โดยรวมทางมูลนิธิจะมีงบประมาณสำหรับบริการโครงการ Rust อย่างน้อยปีละล้านดอลลาร์ไปอีก 2 ปี

กรรมการชุดแรกของมูลนิธิมี 10 คนประกอบด้วยตัวแทนจาก 5 บริษัทร่วมก่อตั้ง และ 2 คนจากโครงการพัฒนาหลัก และอีก 3 คนที่ดูแลโครงการสำคัญ ได้แก่ เสถียรภาพ (reliability), คุณภาพ (quality), และ การมีส่วนร่วม (collaboration)

By lew Founder on Tag: Programming, Python, Kubernetes, Docker
Programming

O’Reilly รายงานผลสำรวจความนิยมเทคโนโลยีจากการใช้งาน O’Reilly Online Learning Platform ที่เป็นแพลตฟอร์มอ่านหนังสือ และเรียนออนไลน์ ซึ่งทำให้เห็นภาพรวมที่น่าสนใจเพราะเป็นอัตราการดูคอนเทนต์จริง เช่น อ่านหนังสือหรือเรียนวิชาออนไลน์ ไม่ใช่เพียงคำค้นเท่านั้น โดยรวมแล้วแพลตฟอร์มมีการใช้งานเพิ่มขึ้น 24% ทำให้เนื้อหาส่วนใดที่เติบโตต่ำกว่านี้นับว่าต่ำกว่าค่าเฉลี่ย

By lew Founder on Tag: USA, Programming
USA

Consortium for Information & Software Quality (CISQ) องค์กรวางมาตรฐานคุณภาพซอฟต์แวร์รายงานการสำรวจเหตุจากปัญหาคุณภาพซอฟต์แวร์และความเสียหายที่เกิดขึ้นในปี 2020 ระบุว่าความเสียหายรวมอยู่ที่ 2.08 ล้านล้านดอลลาร์สหรัฐฯ หรือกว่าหกหมื่นล้านบาท โดยปัญหาใหญ่เกิดจากโปรแกรมเมอร์ไม่เพียงพอ

ความเสียหายที่เกิดขึ้นมีตั้งแต่โครงการซอฟต์แวร์ที่ล้มเหลว 260,000 ล้านดอลลาร์ ความเสียหายจากซอฟต์แวร์เก่าคุณภาพต่ำ 520,000 ดอลลาร์สหรัฐฯ บั๊กที่ทำให้ซอฟต์แวร์ทำงานล้มเหลว 1.56 ล้านล้านดอลลาร์ (รวมกันเกินความเสียหายรวม คาดว่าบางกรณีจัดอยู่ในหลายหมวด)

By lew Founder on Tag: Ruby, Programming
Ruby

โครงการภาษาโปรแกรม Ruby ออกรุ่น 3.0 ตัวจริงตามที่ประกาศว่าจะออกวันคริสตมาส กลายเป็นจุดตัดของการอัพเกรดภาษาที่เข้ากับเวอร์ชั่น 2.x ไม่ได้อีกต่อไป

ทางโครงการระบุว่าเวอร์ชั่น 3.0.0 นี้มีเป้าหมาย 3 ประการ ได้แก่

By lew Founder on Tag: Go, Programming, Apple M1
Go

โครงการ Go ออกรุ่น 1.16 beta 1 ที่มีความเปลี่ยนแปลงสำคัญคือการรองรับ Apple M1 (Apple Silicon) เต็มรูปแบบเมื่อเลือกคอมไพล์ระบบปฎิบัติการเป็น Darwin และสถาปัตยกรรมซีพียูเป็น Arm64 พร้อมกันนี้ก็แยกการคอมไพล์สำหรับ iOS เป็น ios/arm64 แทน

สำหรับฟีเจอร์ภาษา ส่วนหนึ่งที่น่าสนใจคือการรองรับการวางไฟล์ไบนารีไว้ในตัวด้วย directive แบบ //go:embed [ชื่อไฟล์] ทำให้โค้ดภายในมองเห็นข้อมูลในไฟล์เป็นตัวแปรแบบไบต์อาเรย์โดยไม่ต้องเปิดไฟล์เองอีก อีกไลบรารีที่เพิ่มมาคือ io/fs สำหรับการเข้าถึงไฟล์แบบอ่านอย่างเดียว

By arjin Writer on Tag: GitHub, Programming, Ranking, Python
GitHub

GitHub ออกรายงานตัวเลขภาพรวมของชุมชนประจำปี 2020 มีนักพัฒนามากกว่า 56 ล้านคน มี repository ที่ถูกสร้างขึ้นในปีที่ผ่านมามากกว่า 60 ล้านโครงการ

ภาษาที่ได้รับความนิยมสูงสุด อันดับที่ 1 ยังเป็น JavaScript แต่มีการสลับในลำดับที่ 2 และ 3 โดย Python อยู่อันดับที่ 2 และ Java อยู่ในอันดับที่ 3 ตามด้วย TypeScript และ C# ในลำดับที่ 4-5

รายงานประจำปีนี้ยังพูดถึงผลกระทบของมาตรการล็อคดาวน์จากโควิด-19 โดยพบว่ามีการสร้างโครงการใหม่เพิ่มขึ้นกว่าเดิมตั้งแต่มีนาคม 2020 สะท้อนว่านักพัฒนาให้เวลากับชั่วโมงทำงานต่อวันที่มากขึ้น และ repository ที่สร้างขึ้นจำนวนมากก็เป็นโครงการเกี่ยวกับโควิด-19

By lew Founder on Tag: JavaScript, Programming
JavaScript

วันที่ 4 ธันวาคม 1995 เป็นวันแรกที่ Netscape และ Sun Microsystems ประกาศเปิดตัวภาษา JavaScript ร่วมกัน เปิดโลกเข้าสู่ยุคที่เบราว์เซอร์สามารถรันโปรแกรมได้ในตัว จากเดิมเป็นเพียงโปรแกรมแสดงผลเอกสารเท่านั้น

By lew Founder on Tag: Excel, Programming, Microsoft
Excel

ไมโครซอฟท์ประกาศเพิ่มฟีเจอร์สร้างฟังก์ชั่นในตัวเอง เรียกว่า LAMBDA หลังจากก่อนหน้านี้การสร้างฟังก์ชั่นใน Excel ต้องสร้างจากภาษาโปรแกรมอื่น เช่น Visual Basic หรือ JavaScript เท่านั้น พร้อมกับระบุว่า Excel เป็นภาษาโปรแกรมที่คนใช้มากที่สุดในโลก

ฟีเจอร์ LAMBDA ทำให้ผู้ใช้ Excel สามารถประกาศฟังก์ชั่นได้อย่างเป็นธรรมชาติ โดยสามารถใช้ฟังก์ชั่นต่างๆ ของ Excel ที่มีอยู่เดิมได้ โดย LAMBDA จะมาทดแทนการเขียนสูตรที่มีความซับซ้อนสูงๆ แล้ว copy ไปวางทีละเซลล์ แม้ว่า Excel จะสามารถลากสูตรไปตามตารางได้ก็ตาม แต่การลากสูตรไปวางก็สร้างความผิดพลาดได้ง่ายในหลายกรณี แถมตารางโดยรวมอ่านยาก

By lew Founder on Tag: PHP, Programming
PHP

PHP ออกรุ่น 8.0 ตัวจริง หลังจากเริ่มออก Alpha 1 เมื่อกลางปีที่ผ่านมา โดยมีฟีเจอร์สำคัญๆ ที่ทำให้การพัฒนาเปลี่ยนไปหลายอย่าง เช่น

By mk Founder on Tag: Python, Java, Programming, TIOBE
Python

อันดับภาษาโปรแกรมยอดนิยม TIOBE Index มีการเปลี่ยนแปลงครั้งสำคัญในเดือนพฤศจิกายน 2020 เพราะ Python สามารถแซงหน้า Java ขึ้นมาเป็นอันดับ 2 ได้สำเร็จ (คะแนนความนิยม 12.12% vs 11.68%) ส่วนอันดับหนึ่งยังเป็น C (16.21%) เช่นเดิม

ตั้งแต่ TIOBE เริ่มวัดความนิยมของภาษาโปรแกรมมาเกือบ 20 ปีก่อน การเปลี่ยนแปลงอันดับครั้งนี้ถือเป็นครั้งแรกที่ C และ Java ไม่ได้เป็น Top 2 อีกต่อไป

TIOBE ระบุว่าความนิยมของ Python เกิดจากการเป็นภาษาที่ทำงานได้หลากหลาย ในยุคที่ใครๆ ก็หัดเขียนโปรแกรมได้ Python เป็นภาษาแรกที่คนจำนวนมากเลือก มีจุดเด่นเรื่องความง่าย แก้ไขโค้ดได้เร็ว

By mk Founder on Tag: Kotlin, Programming, JetBrains
Kotlin

กลายเป็นธรรมเนียมของซอฟต์แวร์รุ่นใหม่ๆ ไปแล้ว ที่เปลี่ยนมาออกรุ่นใหม่ตามระยะเวลาที่แน่นอน แทนการอิงฟีเจอร์ใหญ่ๆ ที่อาจไม่รู้ว่าต้องรอนานแค่ไหนถึงพร้อม ตัวอย่างของภาษาโปรแกรมที่เปลี่ยนมาใช้ระบบนี้คือ Java (ทุก 6 เดือน), .NET (ทุก 1 ปี), Python (ทุก 1 ปี)

By mk Founder on Tag: PHP, Programming
PHP

ใกล้ความจริงมาเรื่อยๆ กับ PHP 8.0 ที่มีกำหนดออกตัวจริงภายในปีนี้ ล่าสุดโครงการ PHP ออก PHP 8.0 Release Candidate 1 (RC1) มาแล้ว

ของใหม่ใน PHP 8.0 มีหลายอย่าง เช่น Attributes, Union, ValueError, JSON อ่านรายละเอียดในข่าว PHP 8.0 Alpha 1

ตามกำหนดของโครงการ PHP วางแผนจะมีรุ่น RC ทั้งหมด 4 ตัว และออก PHP 8.0 ตัวจริง (GA) ในวันที่ 26 พฤศจิกายน 2020

By mk Founder on Tag: Swift, Programming, Windows, Development
Swift

ภาษา Swift พัฒนาขึ้นโดยแอปเปิล เพื่อใช้บนแพลตฟอร์มของแอปเปิลเองเป็นหลัก (iOS, macOS, watchOS, tvOS) และด้วยโครงสร้างแพลตฟอร์มที่คล้ายกัน ทำให้ Swift รองรับการใช้งานบนลินุกซ์ด้วย (ดิสโทรที่รองรับอย่างเป็นทางการคือ Ubuntu, CentOS, Amazon Linux 2)

ล่าสุด Swift ประกาศออกเวอร์ชัน 5.3 ที่มีฟีเจอร์สำคัญคือรองรับแพลตฟอร์ม Windows เต็มรูปแบบ ซึ่งทีมงาน Swift บอกว่าการรองรับ Windows ไม่ได้เป็นแค่การพอร์ตคอมไพเลอร์ แต่รวมถึงไลบรารีและเครื่องมืออื่นๆ ด้วย

By mk Founder on Tag: Java, Oracle, Programming
Java

ออราเคิลออก Java 15 ตามรอบการออกรุ่นทุก 6 เดือน ของใหม่ที่สำคัญในรุ่นนี้คือ ZGC ซึ่งเป็น GC (garbage collector) ตัวใหม่ที่ทำงานเร็ว (low-latency) ลดระยะการหยุดทำงานของ GC ที่เป็นปัญหาเรื้อรังของ Java มาตั้งแต่แรกลง

นอกจาก ZGC แล้ว Java 15 ยังมี GC อีกตัวให้เลือกใช้งานคือ Shenandoah ที่เน้นการเป็น low-latency เช่นกัน (แต่ใช้คนละวิธีกับ ZGC) อย่างไรก็ตาม Java ยังคงใช้ GC หลักเป็นตัวเดิมคือ G1

ของใหม่อย่างอื่นได้แก่

By lew Founder on Tag: Apple, Rust, Programming
Apple

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

ฟีเจอร์ที่ทีมงานนี้ทำงานอยู่มีตั้งแต่ระบบเข้ารหัสที่พัฒนาจาก IPSec, ระบบสื่อสาร RPC เพื่อจัดการ keying, ระบบยืนยันตัวตน (authentication) และยืนยันสิทธิ์ (authorization)

วิศวกรที่สมัครตำแหน่งนี้ต้องมีประสบการณ์เขียนภาษา C มาแล้ว 3-5 ปี และหากมีประสบการณ์ภาษา Rust จะพิจารณาเป็นพิเศษ

By lew Founder on Tag: Ruby, Open Source, Programming
Ruby

Yukihiro Matsumoto ผู้สร้างภาษา Ruby ยืนยันว่าจะออก Ruby 3 ในวันที่ 25 ธันวาคมหรือวันคริสตมาสปีนี้ หลังจากก่อนหน้านี้มีกำหนดปล่อย Ruby 3 พร้อมกับการแข่งขันโอลิมปิกในโตเกียวแต่โอลิมปิกเลื่อนออกไป

By lew Founder on Tag: C++, Programming
C++

กลุ่มมาตรฐาน ISO ลงมติเอกฉันรับรอง C++20 เข้าเป็นมาตรฐาน โดยฟีเจอร์ทั้งหมดได้รับเห็นชอบแล้ว และจะตีพิมพ์เผยแพร่ตัวมาตรฐานเป็นเล่มสมบูรณ์ภายในปลายปีนี้ โดยฟีเจอร์สำคัญ 4 ประการของ C++20 ได้แก่

By mk Founder on Tag: TypeScript, Microsoft, Programming
TypeScript

ไมโครซอฟท์ประกาศออกภาษา TypeScript เวอร์ชัน 4.0 ซึ่งเป็นการออกเวอร์ชันใหญ่ในรอบ 2 ปี (เวอร์ชัน 3.0 ออกเดือนกรกฎาคม 2018) มีฟีเจอร์ที่น่าสนใจดังนี้

Subscribe to Programming