Tags:
Node Thumbnail

ดัชนีความนิยมภาษาโปรแกรม TIOBE ประกาศดัชนีเดือนมิถุนายน โดยมีความเปลี่ยนแปลงสำคัญคือภาษา Python แซงหน้าภาษา C++ ขึ้นมาอยู่อันดับสาม และมีค่าดัชนีความนิยม 8.53% สูงสุดเท่าที่ประกาศดัชนีมาตั้งแต่ปี 2001

ภาษา Python ได้รับความนิยมอย่างสูงในช่วงหลังจากการใช้พัฒนาโมเดลปัญญาประดิษฐ์ในกลุ่ม deep learning ที่ใช้ Python อย่างหนัก นอกจากนี้ในกลุ่มผู้ดูแลระบบก็ยังนิยมพัฒนาเครื่องมือง่ายๆ โดยใช้ Python แทน Perl มากขึ้นเรื่อยๆ ตามดัชนี TIOBE ภาษา Python เคยได้รับความนิยมสูงถึงอันดับ 5 ในช่วงปี 2009

กลุ่มภาษา 10 อันดับแรก ได้แก่ Java, C, Python, C++, VB .NET, C#, JavaScript, PHP, SQL, Assembly ตามลำดับ

ที่มา - TIOBE

Tags:
Node Thumbnail

ปี 2016 กูเกิลประกาศว่า Android ยังไม่มีแผนรองรับภาษาอื่นนอกจาก Java ส่วน ปี 2017 กูเกิลประกาศรองรับภาษา Kotlin โดยมีศักดิ์ฐานะเท่ากับ Java

ปี 2019 กูเกิลประกาศว่าจากนี้ไป แพลตฟอร์ม Android จะเป็น Kotlin-First โดยฟีเจอร์ใหม่ๆ ของชุดเครื่องมือ Android Jetpack จะถูกพัฒนาเป็นภาษา Kotlin ก่อน ส่วนภาษาอื่นๆ จะตามมาช้ากว่า

คำแนะนำของกูเกิลตอนนี้คือ ถ้าจะเริ่มโครงการพัฒนาใหม่ ควรเริ่มเป็น Kotlin ได้แล้ว เพราะเขียนโค้ดง่ายกว่า ทดสอบง่ายกว่า ดูแลรักษาโค้ดง่ายกว่า

Tags:
Node Thumbnail

นอกจาก C# และ F# แล้ว ไมโครซอฟท์ยังมีภาษาตระกูล # อีกหนึ่งตัวคือ Q# (อ่านว่า คิวชาร์ป) ที่ออกแบบมาสำหรับงานเขียนโปรแกรมบนควอนตัมคอมพิวเตอร์โดยเฉพาะ

ภาษา Q# เผยตัวครั้งแรกในปี 2017 โดยมีหน้าตาคล้าย C# และ F# (มีวงเล็บปีกกา ปิดท้ายบรรทัดด้วย ;) แต่ฟีเจอร์ที่เพิ่มเข้ามาคือการจัดการสถานะของคิวบิท (qubit) ซึ่งเป็นหัวใจสำคัญของควอนตัมคอมพิวเตอร์ รายละเอียดของตัวภาษาดูได้จาก The Q# Programming Language

Tags:
Node Thumbnail

Joe Armstrong อดีตวิศวกรอิริคสันผู้ร่วมสร้างภาษา Erlang เสียชีวิตเมื่อวันที่ 20 เมษายนที่ผ่านมา ด้วยวัย 68 ปี โดยข่าวมาจาก Francesco Cesarini ผู้ก่อตั้งบริษัท Erlang Solutions

Armstrong สร้างภาษา Erlang ร่วมกับ Robert Virding และ Mike Williams สำหรับใช้งานในอุปกรณ์เครือข่ายของอิริคสันเมื่อปี 1986 และทางอิริคสันได้ปล่อยโครงการเป็นโอเพนซอร์สในปี 1998 ตัวภาษา Erlang สร้างขึ้นเพื่อการประมวลผลแบบกระจายตัว (distributed) ในระบบที่ต้องการความน่าเชื่อถือสูง โดยมองทุกอย่างเป็นโปรเซสที่ไม่แชร์ข้อมูลกับส่วนอื่น สามารถสร้างโปรเซสใหม่ขึ้นมาได้โดยง่าย

ที่มา - @FrancescoC

Tags:
Node Thumbnail

รัฐบาลญี่ปุ่นประกาศนโยบายให้วิชาโปรแกรมมิ่ง กลายเป็นวิชามาตรฐานของเด็กนักเรียนชั้นประถม (เริ่มที่ ป.5) โดยจะมีผลบังคับใช้ในเดือนเมษายน 2020

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

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

Tags:
Node Thumbnail

กูเกิลปล่อยโครงการย่อยสำหรับ TensorFlow บนภาษาอื่นๆ เพิ่มเติมในงาน TensorFlow Dev Summit ปีนี้ โดยอัพเดต TensorFlowJS เป็นรุ่น 1.0 พร้อมใช้งานแล้ว

TensorFlowJS มาพร้อมกับเมเดลพร้อมใช้ 5 โมเดล ได้แก่

  • MobileNet จัดหมวดหมู่ภาพ
  • PoseNet จับท่าทางคน
  • CocoSSD ตรวจจับวัตถุในภาพ
  • Speech command จับคำสั่งจากเสียง 1 วินาที
  • KNN Classifier จัดหมวดหมู่ข้อมูลแบบ k-nearnest

ดาวน์โหลด TensorFlowJS ได้จาก GitHub: tensorflow/tfjs-core

Tags:
Node Thumbnail

OpenAI บริษัทด้านปัญญาประดิษฐ์ของ Elon Musk เพิ่งเปิดตัวปัญญาประดิษฐ์ GPT-2 ที่สามารถสร้างบทความภาษาอังกฤษเมื่อใส่อินพุตเป็นหัวข้อข่าว Brendan Dolan-Gavitt นักวิจัยจากมหาวิทยาลัยนิวยอร์คก็พบว่าจริงๆ แล้ว GPT-2 สามารถเขียนโค้ดภาษาจาวาสคริปต์และ PHP ได้ด้วย จากตัวอย่าง 195 ของผลลัพธ์ GPT-2 ที่ทาง OpenAI เปิดเผยออกมา

Tags:
Node Thumbnail

Python Software Foundation ร่วมกับ JetBrains จัดสำรวจโปรแกรมเมอร์ไพธอนกว่า 20,000 คนเพื่อดูว่ามีการใช้งานไปในด้านใดบ้าง โดยเป็นการสำรวจครั้งที่สอง

การใช้งานยังคงกระจุกอยู่ในหมวดการทำเว็บ (52%) และการวิเคราะห์ข้อมูล (58%) เกินครึ่งของโปรแกรมเมอร์ไพธอนทั้งหมด แต่หากให้เลือกประเภทงานที่ใช้มากที่สุดประเภทเดียว การพัฒนาเว็บยังคงนำโด่ง (27%) ส่วนการวิเคราะห์ข้อมูลตามมา (17%) แต่เมื่อมองงานด้านวิทยาศาสตร์ข้อมูลที่รวมการทำ machine learning (11%) จะพบว่าทั้งการพัฒนาเว็บและวิทยาศาสตร์ข้อมูลนั้นมีการใช้งานพอๆ กัน

Tags:
Node Thumbnail

ภาษา Scratch เป็นภาษาเขียนโปรแกรมแบบ drag-and-drop ที่ได้รับความนิยมมาระยะหนึ่งแล้ว หลังปีใหม่ปีนี้ทางโครงการก็เปิดตัวเวอร์ชั่น 3.0 ที่แก้ไขหลายอย่าง ที่สำคัญคือมีความร่วมมือกับผู้ให้บริการคลาวด์ทั้ง Google ที่ให้บริการแปลภาษาและ AWS ที่ให้บริการแปลงข้อความเป็นเสียงเชื่อมบริการเข้ามา และสามารถเชื่อมต่อกับฮาร์ดแวร์ได้ รองรับ micro:bit และ LEGO Mindstorms EV3

ตัวเว็บสามารถใช้งานได้ทันทีโดยไม่ต้องล็อกอินใดๆ และมีบทเรียนให้ฝึกเขียนโปรแกรมอีกนับสิบรายการ

ตัวภาษารองรับการประมวลผลข้อความดีกว่าเดิม, เพิ่มบล็อคเกี่ยวกับเสียง, และตัวบล็อคใหญ่ขึ้นเพื่อให้ใช้งานบนจอสัมผัสได้โดยง่าย

Tags:
Node Thumbnail

นับจากภาษา Ruby ออกเวอร์ชัน 2.0 ในปี 2013 เป็นต้นมา โครงการ Ruby เปลี่ยนมาใช้วิธีออกรุ่นใหม่ปีละครั้งในช่วงวันคริสต์มาสของทุกปี ซึ่งเวอร์ชันใหม่ของปีนี้นับมาถึง Ruby 2.6.0 แล้ว

ของใหม่ที่สำคัญใน Ruby 2.6 คือเริ่มทดลองใช้คอมไพเลอร์แบบ JIT (Just-In-Time) เพื่อประสิทธิภาพที่ดีขึ้น โดยวิธีการทำงานของ Ruby JIT จะแปลงโค้ดภาษา Ruby มาเป็นภาษา C ก่อน เพื่อให้คอมไพเลอร์ภาษา C ตัวอื่นๆ (เช่น GCC, Clang หรือ Microsoft VC++) แปลงโค้ดภาษา C เป็นเนทีฟอีกต่อหนึ่ง

Tags:
Node Thumbnail

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

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

Tags:
Node Thumbnail

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

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

Tags:
Node Thumbnail

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

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

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

Tags:
Node Thumbnail

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

Tags:
Node Thumbnail

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

Tags:
Node Thumbnail

โลกของ .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 ในภาพรวม

Tags:
Node Thumbnail

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

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

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

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

ที่มา - GitHub: GoogleChromeLabs/carlo

Tags:
Node Thumbnail

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

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

Tags:
Node Thumbnail

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

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

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

Tags:
Node Thumbnail

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

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

Tags:
Node Thumbnail

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

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

Tags:
Node Thumbnail

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

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

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

Tags:
Node Thumbnail

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

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

HHVM รุ่น 3.30.0 จะออกปลายปีนี้ เป็นรุ่นสุดท้ายที่รองรับภาษา PHP และจะซัพพอร์ตต่อไปอีกจนถึงปลายเดือนพฤศจิกายน 2019 ส่วน HHVM 4.0 จะเป็นรุ่นแรกที่ไม่รองรับภาษา PHP อีกต่อไป มีกำหนดออกปลายเดือนมกราคม 2019

Tags:
Topics: 
Node Thumbnail

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

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

อีกส่วนคือการรองรับ Generics ที่ระบุว่าตัวแปรที่จะถือว่าใช้งานได้ต้องมีหน้าตาเป็นอย่างไรบ้าง เช่น รองรับการเปรียบเทียบค่ากัน หรือสามารถรวมค่าเข้าด้วยกันได้

Tags:
Node Thumbnail

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

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

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

Pages