By neizod Contributor on Tag: R, Programming, Special Report
R

สำหรับคนทำงานสาย IT ช่วงหลายปีหลังมานี้น่าจะไม่มีใครไม่เคยได้ยินคำว่าข้อมูลขนาดใหญ่ (big data) แม้หลายคนจะคิดว่าคำดังกล่าวเป็นเพียงแค่คำแฟชั่นเท่ๆ (buzzword) เท่านั้น แต่ก็ปฏิเสธไม่ได้ว่าโลก IT ก้าวมาถึงขั้นที่ให้ความสำคัญกับการขุดหาความรู้ (data mining) จากข้อมูลที่มีอยู่กันซักพักแล้ว

ส่วนก้าวต่อไปในโลก IT คงหนีไม่พ้นเครื่องจักรที่เรียนรู้ได้ (machine learning) และปัญญาประดิษฐ์ (artificial intelligence) การจะเข้าใจในศาสตร์เหล่านี้ได้ แค่เขียนโปรแกรมเป็นอย่างเดียวนั้นไม่เพียงพออีกต่อไป แต่ยังต้องรู้จักและจัดการกับข้อมูลเป็นอีกด้วย

บทความนี้จะพาไปสัมผัสกับภาษา R ที่แม้จะมีรากฐานมาจากการใช้งานทางสถิติ แต่ภายหลังก็ปรับตัวมารองรับการคำนวณข้อมูลที่ซับซ้อนยิ่งขึ้น จนกลายเป็นหนึ่งในภาษาที่มาแรงไม่ควรมองข้าม

By mk Founder on Tag: C++, Programming, ISO
C++

มาตรฐานภาษา C++ ในช่วงหลังอยู่ภายใต้การดูแลขององค์กรกลาง ISO และเราเห็นการพัฒนาสเปกของภาษา C++ โดยเพิ่มฟีเจอร์ใหม่ๆ เข้ามาทุกสามปี นับตั้งแต่ C++11, C++14 และล่าสุด C++17 ที่ตอนนี้ยังมีสถานะเป็นฉบับร่าง และมีกำหนดจะออกในปีนี้ (หรืออาจเป็น C++18 ถ้ากระบวนการล่าช้

By arjin Writer on Tag: TIOBE, Programming, Go
TIOBE

ดัชนีจัดอันดับภาษาเขียนโปรแกรมยอดนิยม TIOBE รายงานอันดับเดือนกรกฎาคม 2017 โดยมีประเด็นสำคัญคือ Go ขึ้นมาติด 10 อันดับแรกเป็นครั้งแรก โดยอยู่ในอันดับที่ 10 และมีอัตราความนิยมเพิ่มขึ้นสูงสุดใน 20 อันดับแรก

ภาษายอดนิยม 6 อันดับแรกไม่มีการเปลี่ยนแปลง ได้แก่ Java, C, C++, Python, C# และ PHP ตามลำดับ

TIOBE ให้ความเห็นว่าหาก Go ยังรักษาระดับการเติบโตนี้ต่อไปได้เรื่อยๆ ก็เป็นไปได้ว่า Go อาจแซงหน้า JavaScript และ Python ได้ในอนาคต

ที่มา: TIOBE ผ่าน somkiat.cc

By mk Founder on Tag: Cisco, SDN, Networking, Programming, Education
Cisco

สัปดาห์ที่ผ่านมา Cisco จัดงานประจำปี Cisco Live 2017 โดยเปิดตัววิสัยทัศน์ใหม่ Intent-based Networking ระบบเครือข่ายแห่งอนาคตที่ฉลาดขึ้น นำเทคนิค big data, machine learning เข้ามาช่วยปรับเปลี่ยนคอนฟิกของเครือข่ายให้เหมาะสมกับทราฟฟิกตลอดเวลา

Cisco ระบุว่าสถาปัตยกรรมเครือข่ายแบบใหม่ จำเป็นต้องใช้ทักษะใหม่ๆ ในการจัดการ โดยเป้าหมายของ Cisco คือคนสองกลุ่ม

By mk Founder on Tag: Kotlin, Android, Programming, In-Depth
Kotlin

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

By lew Founder on Tag: Android Studio, Kotlin, Programming, Android, Google
Android Studio

กูเกิลเปิดตัว Instant Apps ตั้งแต่งาน I/O 2016 และเริ่มปล่อยใช้งานกับผู้ใช้จริงเมื่อต้นปีที่ผ่านมา วันนี้กูเกิลก็ประกาศให้นักพัฒนาทุกคนเข้าถึง Instant Apps ได้แล้ว

Instant Apps ต้องแยกแอปเป็นส่วนๆ เพื่อให้ตัวแอปโหลดได้เร็ว กูเกิลระบุว่านักพัฒนาชุดแรกที่ทำงานกับกูเกิลสามารถแก้แอปเป็น Instant Apps ได้ภายใน 4-6 สัปดาห์ โดยนักพัฒนาต้องใช้ Android Studio 3.0 และโหลด Android Instant Apps SDK ตัว Play Console จะมีช่องให้อัพโหลด APK แยกกันระหว่างแอปแบบติดตั้งปกติและ Instant Apps

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

CERT หน่วยงานแจ้งเตือนช่องโหว่ความปลอดภัยซอฟต์แวร์ภายใต้สถาบันวิศวกรรมซอฟต์แวร์ (Software Engineering Institute - SEI) ประกาศปล่อยมาตรฐานการเขียนโค้ดให้ปลอดภัยสำหรับภาษา C++ ที่รวมกฎ 83 รายการสำหรับการเขียนโค้ดให้ปลอดภัย หลังจากก่อนหน้านี้ทาง CERT เคยปล่อยคู่มือสำหรับ ภาษา C, ภาษาจาวา, ภาษา Perl, และการเขียนแอปบนแอนดรอยด์

กฎบางข้อจะตรงกันหลายภาษาเช่นเช็คอินพุตว่าปิดท้ายสตริงด้วย null เสมอ แต่บางข้อก็จะค่อนข้างเฉพาะเช่นการใช้ lambda ในภาษา C++14

ทุกกฎมีตัวอย่างโค้ดที่มักเขียนผิดให้ แม้จะค่อนข้างยาวแต่ก็อ่านไม่ยากนัก ผู้สนใจน่าลองไล่จากต้นจนจบกัน

By arjin Writer on Tag: Stack Overflow, Programming
Stack Overflow

Stack Overflow เว็บไซต์ชุมชมนักพัฒนา เปิดเผยผลสำรวจนักพัฒนาจำนวน 64,000 คน ของปี 2016 มีประเด็นน่าสนใจหลายอย่างดังนี้

  • มากกว่า 50% ของผู้ตอบแบบสอบถาม เขียนโปรแกรมมาไม่ถึง 5 ปี
  • 75.2% บอกสนใจถ้ามีการแนะนำโอกาสได้งานใหม่ๆ แต่เพียง 13.1% ที่จริงจังในการหางานใหม่
  • 53.3% บอกว่าการให้ทำงานระยะไกล โดยไม่ต้องเข้าออฟฟิศเป็นสิ่งสำคัญมาก
  • ภาษา Clojure ได้เงินเดือนเฉลี่ยสูงที่สุด รองลงมาคือ Rust แต่ถ้าพิจารณาเฉพาะอเมริกา Go กับ Scala มาแรง
  • ภาษายอดนิยมในการทำงาน JavaScript, SQL และ Java ตามลำดับ
  • Rust เป็นภาษาที่นักพัฒนาชื่นชอบมากที่สุด ตามด้วย SmallTalk, TypeScript และ Swift
  • React เป็นเฟรมเวิร์คชื่นชอบมากที่สุด รองลงมาคือ Node.js และ .Net Core
By vvkungx Contributor on Tag: TIOBE, Swift, Programming
TIOBE

ดัชนีความนิยมของภาษาเขียนโปรแกรม TIOBE เดือนมีนาคมนี้ ภาษา Swift ของ Apple เข้าสู่ 10 อันดับล่าสุดแล้ว เมื่อเทียบกับมีนาคมปีที่แล้ว พบว่าอยู่ในอันดับที่ 14 และมีนาคมปีนี้ขยับขึ้นมาเป็นอันดับที่ 10 ทำให้มีความนิยมอยู่ที่ 2.268% เพิ่มขึ้น 0.68%

TIOBE อธิบายว่า ตลอด 3 ปีที่ผ่านมา Apple ประกาศจะแทนที่ Objective-C ด้วยภาษา Swift ให้ได้ ซึ่งคาดหวังไว้ว่ามันจะถูกนำไปใช้งานมากขึ้นเรื่อยๆ แต่ในความเป็นจริงมันถูกนำไปใช้อย่างช้าๆ เนื่องจากแอพที่ถูกเขียนด้วย Objective-C มีขนาดใหญ่ ทำให้นักพัฒนาเลือกที่จะไม่ย้ายโค้ดไปเป็น Swift ถ้าหากเป็นต้องสร้างแอพใหม่ถึงจะเลือกไปใช้ Swift นั่นเอง

ส่วน 5 อันดับภาษาเขียนโปรแกรมยอดนิยมยังคงเป็น Java, C, C++, C#, และ Python เช่นเดิม และภาษา Objective-C ปีที่แล้วอยู่ในอันดับที่ 15 ปีนี้ร่วงลงไปเป็นอันดับที่ 16

ที่มา : TIOBE ผ่าน MacRumors

By mk Founder on Tag: Python, Programming, Google, Open Source
Python

กูเกิลออก Python Fire เครื่องมือช่วยเหลือคนเขียนโปรแกรมภาษา Python ที่จะช่วยสร้างอินเทอร์เฟซผ่านคอมมานด์ไลน์ (CLI) ให้อัตโนมัติ ไม่ต้องเขียนส่วนนี้เอง โดย Python Fire จะอ่านโค้ดของเราแล้วเขียนส่วนการรับอาร์กิวเมนต์ (argument) รวมถึงส่วนของ Help ให้เลย ตัวโปรแกรมจะอ่านค่าวัตถุประเภทต่างๆ ไม่ว่าจะเป็นฟังก์ชัน คลาส หรือตัวแปรให้เรา

Python Fire ออกมาเป็นตัวช่วยให้พัฒนาและตรวจสอบโค้ดในภาษา Python ได้ง่ายขึ้น และเชื่อมการทำงานระหว่าง Bash กับ Python ด้วย

ชื่อ Fire ในที่นี้หมายถึง 'พ่น' หรือ 'ยิง' (fire off) ซึ่งหมายถึงการยิงคำสั่งผ่านคอมมานด์ไลน์นั่นเอง

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

Oracle ประกาศวันออก Java SE 9 เป็น 27 กรกฎาคม 2017 ถือว่าห่างจาก Java 8 ประมาณสามปีกว่า และช้ากว่าแผนเดิมที่จะออกในปี 2016

การเปลี่ยนแปลงที่สำคัญที่สุดของ Java 9 คือ Project Jigsaw หรือแยกส่วน Java ออกเป็นโมดูลเพื่อให้ขนาดเล็กลง การจับแยกโมดูลมีแผนจะทำตั้งแต่ Java 8 แต่เลื่อนออกมาเป็น Java 9 และส่งผลให้การพัฒนา Java 9 ช้ากว่ากำหนด

By vvkungx Contributor on Tag: TypeScript, Programming, Microsoft
TypeScript

ไมโครซอฟท์อัพเดต TypeScript เข้าสู่เวอร์ชัน 2.2 แล้ว เวอร์ชันนี้ทีมงานระบุว่าพัฒนาภาษาบนมาตรฐานเดียวกับ ECMAScript และมีฟีเจอร์ที่ทำให้ชุดโค้ดมีประสิทธิภาพมากขึ้นในระยะยาว

ใน TypeScript 2.2 เพิ่มเครื่องมือช่วยแนะนำเมื่อเกิด error ใน editor รวมไปถึงเพิ่มคำสั่งใหม่ๆ เพิ่มเติม ดังต่อไปนี้

By lew Founder on Tag: Dropbox, Python, Programming
Dropbox

Dropbox เปิดตัว Pyston ที่คอมไพล์โค้ดเป็นส่วนๆ ด้วย LLVM เพื่อเร่งประสิทธิภาพมาตั้งแต่ปี 2014 แต่ล่าสุดบริษัทก็ประกาศหยุดสนับสนุนโครงการนี้แล้ว

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

By mk Founder on Tag: Firefox, Rust, Programming, Mozilla
Firefox

แผนการของ Mozilla กับ Firefox ในปีนี้คือเปลี่ยนมาใช้เอนจินแสดงผลตัวใหม่ Project Quantum แทนเอนจิน Gecko ของเดิม ช่วยให้ประสิทธิภาพโดยรวมของ Firefox ดีขึ้นกว่าปัจจุบันมาก

Project Quantum เขียนด้วยภาษา Rust และส่งผลให้ซอร์สโค้ดของ Firefox ต้องผูกติดกับภาษา Rust ตามไปด้วย ล่าสุดทีมพัฒนา Firefox จึงปรับเงื่อนไขการคอมไพล์ Firefox บังคับให้ต้องมีคอมไพเลอร์ของภาษา Rust ติดตั้งอยู่ด้วย

By mk Founder on Tag: Programming, C#, F#, Visual Basic, Microsoft, .NET
Programming

ไมโครซอฟท์อธิบายยุทธศาสตร์การพัฒนาภาษาโปรแกรม .NET ทั้งสามตัว ได้แก่ C#, Visual Basic และ F#

ที่ผ่านมา ไมโครซอฟท์ใช้นโยบายให้ความสำคัญกับ C# และ Visual Basic เท่ากัน มีฟีเจอร์ใหม่ทัดเทียมกัน แต่รอบนี้ ไมโครซอฟท์บอกว่า C# ถือเป็นภาษาโปรแกรมกระแสหลัก จับตลาดกว้างกว่า ในขณะที่ Visual Basic เน้นการใช้งานสำหรับภาคธุรกิจ การสร้างแอพพลิเคชันบนวินโดวส์ และเป็นภาษาฝึกหัดสำหรับคนเริ่มเขียนโปรแกรม ส่งผลให้ต่อจากนี้ไป C# จะถูกให้ความสำคัญมากเป็นอันดับหนึ่ง ในขณะที่ VB 15 จะได้ฟีเจอร์ใหม่บางอย่าง แต่ไม่ใช่ทั้งหมดเท่ากับ C# 7.0 ได้

ส่วน F# เป็นภาษาใหม่ที่ยังมีความสามารถหรือประสบการณ์ใช้งานไม่ทัดเทียม C# กับ VB แต่ก็มีจุดเด่นที่ชุมชนเข้มแข็ง ใช้งานได้หลากหลาย เป้าหมายของไมโครซอฟท์ใน F# 4.1 จะพัฒนาเครื่องมือสำหรับ F# ให้ดีขึ้น ทำงานร่วมกับ Visual Studio และ .NET Core/Standard ได้ดีขึ้น

By BlackMiracle Writer on Tag: Stack Overflow, Gender, Programming
Stack Overflow

Stack Overflow เว็บไซต์ชุมชนนักพัฒนาชื่อดังเปิดรายงานการสำรวจข้อมูลผู้ใช้งานเว็บประจำปี 2016 และปล่อยสรุปรายงานเกี่ยวกับเพศของผู้ใช้งานเว็บออกมา พบว่ามีเพศหญิงเพียง 5% เท่านั้น

รายงานระบุว่าผู้ตอบแบบสอบถามเป็นเพศชายมากกว่า 50,000 คน ในขณะที่เพศหญิงมีเพียง 3,202 คนเท่านั้น คิดเป็น 5.76% ของผู้ตอบแบบสอบถามทั้งหมด (รายงานไม่ได้บอกว่ามีผู้ตอบแบบสอบถามทั้งหมดกี่คน) ซึ่งเว็บไซต์บอกว่าเรารู้กันดีว่าไม่ค่อยมีผู้หญิงในวงการเทคโนโลยี แต่ก็ไม่คิดว่าจะน้อยขนาดนี้

By lew Founder on Tag: Go, Google, Programming, Python
Go

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

Grumpy เกิดจากความต้องการของกูเกิลที่รันโค้ด Python จำนวนมาก แต่โค้ดเหล่านั้นกลับไม่สามารถกระจายโหลดไปตามจำนวนเธรดได้ดีพอ จากข้อจำกัด global interpreter lock (GIL) ที่เป็นข้อจำกัดของ Python มาเป็นเวลานาน ทำให้บริการที่ใช้ Python มากๆ เช่น YouTube มีปัญหาไม่สามารถขยายระบบได้ดีนัก

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

เมื่อช่วงเดียวกันของปีที่ผ่านมา ผู้อ่าน Blognone คงคุ้นหน้าคุ้นตากับเกมแก้ปัญหาด้วยภาษา Assembly นามว่า TIS-100 จากบริษัท Zachtronics กันไปแล้ว และเหมือนว่าผู้สร้างจะค้นพบแนวเกมที่ถนัดและลงตัวเสียที เพราะในเวลาไม่ถึงหนึ่งปีก็ได้เปิดตัวเกมใหม่สไตล์เดิม แต่ยกเครื่องทุกอย่างใหม่หมดในชื่อ SHENZHEN I/O จนอาจพูดติดตลกได้ว่า "นี่คือเกม TIS-100 รุ่นที่ทำเสร็จ" ก็พอได้

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

หมายเหตุ: เกมนี้ไม่เหมาะกับคนที่เกลียดการอ่านคู่มืออย่างเข้าไส้ครับ :p

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

Python ออกเวอร์ชั่น 3.6 หลังออกเวอร์ชั่น 3.5 มาตั้งแต่กันยายนปีที่แล้ว ในเวอร์ชั่นนี้มีฟีเจอร์สำคัญๆ เพิ่มเข้ามาหลายอย่าง

ฟีเจอร์ที่คนทั่วไปจะเห็นชัดที่สุดคือการฟอร์แมตสตริงแบบใหม่ โดยสั่งเรียกตัวแปรจากในสตริงได้เลย ซึ่งใน bash หรือ ruby มีใช้กันอยู่แล้ว แต่สำหรับ Python ผู้ที่ต้องการใช้งานจะต้องประกาศสตริงเป็นแบบ f คล้าย unicode หรือ raw ที่ต้องประกาศคล้ายๆ กัน ฟีเจอร์ต่อมาคือการใช้ขีดล่าง (_) เพื่อแยกกลุ่มตัวเลขออกจากกัน เพิ่มความสะดวกในการเขียนตัวเลขขนาดใหญ่ๆ เช่น 100_000

Subscribe to Programming