By willwill on Tag: AWS, Serverless, Ruby, C++, Rust, Programming
AWS

บริการ AWS Lambda เปิดตัวเมื่อปี 2014 และเป็นผู้บุกเบิกการประมวลผลแบบ serverless ที่ไม่ต้องเปิดเครื่องค้างไว้รอรับคำสั่งตลอดเวลา ก่อนหน้านี้ Lambda รองรับโค้ดภาษา Java, Node.js, C#, Python และเมื่อต้นปีนี้คือ Go

ล่าสุด AWS Lambda ประกาศรองรับการนำเข้ารันไทม์ภาษาใดก็ได้แล้ว (custom runtime) พร้อมทั้งประกาศรองรับภาษาใหม่คือ Ruby, C++ และ Rust ผ่านระบบรันไทม์ใหม่นี้

By neizod Contributor on Tag: MiniZinc, Programming, Languages
MiniZinc

เมื่อต้นเดือนที่ผ่านมาผมได้ร่วมแข่ง TechJam ที่ KBTG จัด และพบว่าทีม "Meow Meow :3" ผู้ชนะการแข่งขันเลือกใช้ภาษา MiniZinc ในการแก้โจทย์ปัญหา และแก้ปัญหาได้อย่างรวดเร็วเป็นทีมแรกๆ เสียด้วย

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

By mk Founder on Tag: Dart, Programming, Google
Dart

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

เดิมที Dart ออกแบบมาเพื่อเป็นภาษาโปรแกรมสำหรับเว็บ แต่เมื่อ Dart เริ่มได้รับความนิยมมากขึ้น ทำให้ตัวแพลตฟอร์มต้องอัพเกรดตัวเองให้ตอบรับการใช้งานที่หลากหลายมากขึ้น ซึ่ง Dart 2 สามารถรันได้ทั้งบน VM, คอมไพล์เป็นเนทีฟ และคอมไพล์เป็น JavaScript

ของใหม่ใน Dart 2.1 เป็นการอัพเดตเพิ่มฟีเจอร์ย่อยๆ หลายจุด ที่น่าสนใจมีดังนี้

By mk Founder on Tag: Visual Studio Code, Java, Programming, Artificial Intelligence, Microsoft
Visual Studio Code

ปีนี้ไมโครซอฟท์เพิ่งโชว์ฟีเจอร์ IntelliCode ของ Visual Studio ที่ใช้ AI เรียนรู้โค้ดจากโครงการบน GitHub แล้วมาช่วยแนะนำการเขียนโค้ดให้เรา สถานะของมันยังเป็นโครงการทดลอง ต้องติดตั้งส่วนขยายเพิ่มเติม และรองรับเฉพาะภาษา C# (Visual Studio) และ Python (VS Code) เท่านั้น

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

JetBrains ประกาศออกแพลตฟอร์มการพัฒนาด้วยภาษา Kotlin เวอร์ชัน 1.3 มีของใหม่ดังนี้

By mk Founder on Tag: .NET, Microsoft, Programming, Development
.NET

โลกของ .NET ตอนนี้แยกเป็น .NET Standard (ตัวสเปก) กับ implementation อีกสามสายคือ .NET Core (โอเพนซอร์ส), .NET Framework (ไม่โอเพนซอร์ส), Xamarin (สำหรับเขียนแอพมือถือ)

ล่าสุดไมโครซอฟท์ประกาศออก .NET Standard เวอร์ชัน 2.1 ที่จะกลายเป็นเป้าหมายให้ .NET เวอร์ชันต่างๆ พัฒนาฟีเจอร์ตามในระยะถัดไป

สิ่งใหม่ใน .NET Standard 2.1 มีทั้งการเพิ่ม API เก่าจาก .NET Framework ของเดิม (มีอยู่แล้วแค่ปรับให้เป็นมาตรฐานกลาง) และเพิ่ม API ใหม่ โดยฟีเจอร์ใหม่ที่น่าสนใจคือการรองรับตัวแปรแบบ Span<T> เป็นตัวแปรลักษณะเดียวกับอาร์เรย์ ที่จะช่วยปรับปรุงเรื่องประสิทธิภาพของ .NET ในภาพรวม

By lew Founder on Tag: Chrome, Programming
Chrome

โครงการ Google Chrome Labs ปล่อยโครงการ Carlo สำหรับเขียนแอปเดสก์ทอปด้วย Node แต่ใช้ Chrome เรนเดอร์หน้าจอแทนที่จะแพ็กเอาตัวเรนเดอร์ไปด้วยแบบ Electron

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

เมื่อเขียนแอปเสร็จแล้ว สามารถแพ็กเป็นไฟล์ executable ไฟล์เดียว เมื่อสั่งรันมันจะหาเบราว์เซอร์ Chrome ในเครื่องและเชื่อมต่อเข้าไปเอง หากไม่มี Chrome ในเครื่องจะขึ้นข้อความผิดพลาดและรันต่อไม่ได้

รองรับ Chrome 70 ขึ้นไป

By neizod Contributor on Tag: Zachtronics, Review, Games, Programming
Zachtronics

Zachtronics นั้นมีชื่อเสียงด้านเกมแก้ปัญหาให้ดีที่สุดภายใต้ข้อจำกัด (optimization puzzle game) มาอย่างเนิ่นนาน โดยเราเคยนำเสนอเกมก่อนๆ ไปบ้างแล้ว (รีวิวเกม [TIS-100][], [SHENZHEN I/O][]) และปีนี้ค่ายเกมดังกล่าวก็ได้ปล่อยเกมแนวเขียนโปรแกรมออกมาอีกครั้งในชื่อ EXAPUNKS ซึ่งมีที่มาจากการเอาคำนำ exa- ไปแทนที่ในคำว่า cyberpunk อันเป็นแฟนตาซีในตระกูลเดียวกับ The Matrix, Blade Runner, Ghost in the Shell นั่นเอง

แล้วเกมนี้จะวาดภาพโลกออกมาหน้าตาอย่างไร? เบื้องหลังระบบ/กฎเกณฑ์การแก้ปัญหาเป็นแบบไหน? มีอะไรเปลี่ยนแปลงเพิ่มเติมจากเกมก่อนหน้าบ้าง? มาพบคำตอบกันในรีวิวนี้ได้เลย

By mk Founder on Tag: Python, Security, Imperva, Programming
Python

ก่อนหน้านี้เพิ่งมีข่าว Python ได้รับความนิยมจนติด Top 3 ของ TIOBE ที่อ้างอิงข้อมูลจากซอฟต์แวร์ทั่วไปในภาพรวม ส่วนในโลกของบรรดาแฮ็กเกอร์สายมืด Python ก็ได้รับความสนใจไม่แพ้กัน

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

Imperva วิเคราะห์ว่า Python ได้รับความนิยมสูงเพราะเรียนรู้ง่าย ไม่ต้องมีทักษะการเขียนโปรแกรมมาก ก็สามารถสร้างสคริปต์ที่ใช้ในการโจมตีได้ไม่ยากนัก

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

สัปดาห์ที่ผ่านมา Oracle ออก Java 11 รุ่นจริง ตามนโยบายใหม่ที่ออก Java รุ่นใหม่ทุก 6 เดือน เหมือนกับซอฟต์แวร์หลายตัวในยุคหลัง

ความพิเศษของ Java 11 คือเป็นรุ่น LTS ที่ซัพพอร์ตยาวนานถึงปี 2026 หรือนาน 8 ปี โดยรุ่น LTS ตัวก่อนหน้านี้คือ Java 8 ที่ยังเป็นรอบการออกแบบเดิม ดังนั้นใครที่สนใจย้ายจาก Java 8 มาเป็นเวอร์ชันใหม่กว่านั้น ก็มองมาที่ Java 11 ได้เลย (LTS ตัวหน้าคือ Java 17 กำหนดออกปี 2021)

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

ในการจัดอันดับภาษาโปรแกรมยอดนิยมของ TIOBE Index ประจำเดือนกันยายน 2018 มีการเปลี่ยนแปลงที่น่าสนใจคือ Python มาแรง และสามารถเบียด C++ ขึ้นมาเป็นภาษายอดนิยมอันดับ 3 ได้สำเร็จ ถือเป็นครั้งแรกที่ Python เข้าติดชาร์ทในอันดับ Top 3

อันดับหนึ่งยังเป็น Java ที่คะแนน 17.43% ตามด้วยอันดับสอง C ที่ 15.44% ส่วนอันดับสาม Python มีคะแนน 7.65% เบียด C++ ตกไปอันดับสี่ที่ 7.39%

By mk Founder on Tag: Facebook, Development, Programming
Facebook

ทีมวิศวกรของ Facebook เปิดตัว SapFix เครื่องมือช่วยดีบั๊กด้วยพลัง AI ที่ล้ำหน้าถึงขั้นแก้บั๊กหรือเขียนแพตช์ให้อัตโนมัติด้วยในบางกรณี

SapFix ถูกนำมาใช้งานจริงแล้วในกระบวนการพัฒนาแอพ Facebook Android โดย Facebook ระบุว่าเป็นครั้งแรกที่นำ AI มาใช้ตรวจหาบั๊กในงานที่ใหญ่ระดับนี้

การทำงานของ SapFix มักใช้คู่กับเครื่องมืออีกตัวของ Facebook คือ Sapienz ซึ่งทำหน้าที่รัน automate testing ให้ก่อน เมื่อ Sapienz พบบั๊กแล้วจะส่งต่อให้กับ SapFix ช่วยวิเคราะห์หาแนวทางแก้ไข ซึ่งเป็นไปได้หลายแบบ

By lew Founder on Tag: HHVM, PHP, Programming
HHVM

โครงการ HHVM หรือ HipHop Virtual Machine ของเฟซบุ๊กประกาศแยกทางจาก PHP แล้ว โดยต่อจากนี้จะซัพพอร์ตภาษา Hack อย่างเดียว

HHVM เปิดตัวสู่โลกภายนอกเมื่อปี 2010 โดยเป็นตัวคอมไพล์ภาษา PHP ให้กลายเป็น C++ เพื่อให้ประสิทธิภาพการทำงานเท่าซอฟต์แวร์แบบ native อย่างไรก็ตาม ภายหลัง HHVM เริ่มพัฒนาภาษา Hack โดยแก้ไขข้อจำกัดของ PHP เช่น การเพิ่มการตรวจสอบชนิดตัวแปร, รองรับ generics, รองรับฟังก์ชั่น lambda

By lew Founder on Tag: Go, Programming
Go

Russ Cox (@_rsc) นักพัฒนาโครงการ Go ประกาศข้อเสนอชุด Go 2 สำหรับการปรับปรุงส่วนสำคัญๆ ของภาษา Go ได้แก่การดักความผิดพลาด และการรองรับ Generic

การดักความผิดพลาดจากเดิมที่ภาษา Go ไม่ใช้ exception แต่อาศัยการคืนค่าความผิดพลาดและต้องตรวจสอบทุก statement ทำให้โค้ดค่อนข้างเลอะ การออกแบบใหม่อาศัยคำสำคัญ check และ handle โดย check ไว้ตรวจว่าฟังก์ชั่นที่ตามหลังทำงานผิดพลาดหรือไม่ และ handle ทำหน้าที่เป็นชุดคำสั่งจัดการความผิดพลาดที่เกิดขึ้น

By nutmos Writer on Tag: Microsoft, Quantum Computer, Education, Programming
Microsoft

Microsoft เปิดตัวโครงการโอเพ่นซอร์สใหม่ Quantum Katas ที่จะช่วยเป็นโปรแกรมการสอนการคำนวณแบบควอนตัมและการโปรแกรมภาษา Q#

ตัว Quantum Katas นี้มีเนื้อหาแยกเป็นส่วนย่อย ๆ เรียกว่า kata ในแต่ละ kata จะครอบคลุมทีละหัวข้อ เป็นโปรเจคเดี่ยวที่มีสอนตั้งแต่ระดับธรรมดาไปจนถึงบททดสอบที่ท้าทายขึ้นเรื่อย ๆ มีการให้ผู้ใช้เขียนโค้ดเอง ซึ่งในโครงการนี้ก็จะมีเฟรมเวิร์คสำหรับการทดสอบและรันโค้ด หากพบปัญหาก็จะมีคำแนะนำเพื่อช่วยแก้ไขด้วย

สำหรับเนื้อหาของ Quantum Katas ตอนนี้มีอยู่สี่หมวดใหญ่ ๆ คือ

By mk Founder on Tag: Visual Studio, Microsoft, Python, Programming, Open Source
Visual Studio

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

เบื้องหลังการทำงานของ IntelliSense ในยุคปัจจุบัน ไม่ได้รันอยู่บน Visual Studio โดยตรง แต่รันบน Language Server ที่ทำหน้าที่อ่านและวิเคราะห์โค้ดในแต่ละภาษา แล้วส่งข้อมูลกลับไปยังตัว IDE ผ่าน Language Server Protocol (LSP) ที่ใช้ฟอร์แมตแบบ JSON

By mk Founder on Tag: Games, Sega, Artificial Intelligence, Programming, Alien
Games

Aliens: Colonial Marines เป็นเกมเก่าที่ออกในปี 2013 บน Windows, PS3, Xbox 360 พัฒนาโดย Gearbox, จัดจำหน่ายโดย Sega ตัวเกมไม่มีอะไรน่าจดจำมากนัก ได้คะแนนรีวิวเฉลี่ย Metacritic ไปเพียง 45/100 (เวอร์ชันพีซี)

ชื่อเสียงของเกม (ในแง่ลบ) มาจากระบบ AI ควบคุมเอเลี่ยนที่ห่วยแตก เอเลี่ยนเดินผ่านผู้เล่นโดยไม่สนใจโจมตี จนแฟนๆ นำมาล้อกันและปลายเป็นมีมอยู่ช่วงหนึ่ง

เกมนี้กลับมาเป็นที่สนใจอีกครั้ง เมื่อชุมชนนัก modder ค้นพบว่าระบบ AI ห่วยแตกเป็นเพราะโค้ดในเกมสะกดผิด!

By lew Founder on Tag: Kotlin, Android, Udacity, Programming, Education
Kotlin

กูเกิลส่งผู้เชี่ยวชาญของตัวเองทำวิชา Kotlin Bootcamp ติวเข้มการเขียนโปรแกรมภาษา Kotlin ที่กำลังเป็นภาษาสำหรับแอนดรอยด์เต็มรูปแบบเท่ากับจาวา โดยการติวเข้มจะทำให้วิชารวมสั้นเพียงประมาณ 8 ชั่วโมงเท่านั้น ครอบคลุมเนื้อหาหลักๆ 5 ส่วน ได้แก่

By lew Founder on Tag: Go, Programming
Go

ภาษา Go ประกาศเปลี่ยนโลโก้จากเดิมใช้ตัว Gopher มาเป็นโลโก้แบบตัวอักษร โลโก้ใหม่เป็นคำว่า GO แบบเอียง รูปร่างเหมือนล้อรถสองล้อเพื่อแสดงถึงความเร็ว และวงกลมสองวงยังแสดงถึงดวงตาของตัว Gopher เดิมไปพร้อมกัน

นอกจากตัวโลโก้ ทางโครงการยังแจกธีมนำเสนอสำหรับ Google Slides สำหรับใช้ในการประชุมภาษา Go ตามงานต่างๆ โดยมีสัญญาอนุญาตเป็น Creative Commons SA 4.0

ที่มา - Go Blog

By lew Founder on Tag: Google, Education, Programming, Mobile App
Google

กูเกิลมีศูนย์บ่มเพาะโครงการภายในที่ชื่อว่า Area 120 มาหลายปี โครงการล่าสุดของศูนย์นี้ก็ออกมาเป็นแอปบนแอนดรอยด์และ iOS ที่ชื่อว่า Grasshopper เป็นแอปสอนเขียนโปรแกรมทีละขั้น

Subscribe to Programming