Programming World – Year in Review 2015

ผ่านไปแล้วกับปี 2015 ครับในช่วงหยุดปีใหม่นี้ผมมาลองรีวิวดูว่าในโลกของโปรแกรมมิ่งมีอะไรที่เปิดตัวใหม่หรือเหตุการณ์อะไรที่น่าสนใจในรอบปีที่ผ่านมากันบ้างนะครับ

[ 22 กุมภาพันธ์ 2015 ]
ในงาน React.js Conf ทาง Facebook ได้ประกาศ React Native ที่ช่วยให้ react แปลงเป็น native code ใน platform ต่างๆได้ไม่จำกัดแค่เว็บบราวเซอร์อีกต่อไป นอกจากนั้นยังได้ประกาศ Relay ซึ่งเป็นเฟรมเวิร์คสำหรับการดึงข้อมูลเพื่อเชื่อมต่อกับ React application โดยใช้ภาษา GraphQL ซึ่งสามารถทำงานกับ storage engine ด้านหลังใดๆก็ได้

ที่มา http://conf2015.reactjs.org/schedule.html

[ 26 กุมภาพันธ์ 2015 ]
Docker Machine, Swarm, Compose
เปิดให้ดาวน์โหลดใช้งานเป็นทางการครั้งแรก โดย Docker Machine ช่วยติดตั้ง Docker Engine ให้กับเครื่องเรา, Docker Swarm ช่วยสร้าง cluster ของ Docker Engine หลายๆเครื่องให้เป็นเสมือน Virtual Host เดียว, และ Docker Compose ช่วยประกอบร่างแอพที่ต้องใช้หลายๆ container ที่(อาจ)ต้องเชื่อมต่อกันได้ง่ายขึ้น

ที่มา http://blog.docker.com/2015/02/orchestrating-docker-with-machine-swarm-and-compose/

[ 29 เมษายน 2015 ]
ในงาน Build ซึ่งเป็น Developer Conference ของ Microsoft ได้มีการประกาศ Visual Studio Code ซึ่งเป็น Code Editor ตัวใหม่ และแจกเป็นโอเพ่นซอร์ส (MIT License) โดยสร้างจาก Electron เช่นเดียวกับ Atom ซึ่งแน่นอนว่าเขียนด้วย JavaScript (และ TypeScript) ทำให้ hack editor ได้ง่ายเช่นเดียวกับ Atom

ที่มา http://blogs.msdn.com/b/somasegar/archive/2015/04/29/introducing-visual-studio-code-visual-studio-2015-rc-application-insights-public-preview-and-net-core-for-linux-and-mac.aspx

[ 13 พฤษภาคม 2015 ]
การกลับมารวมกันของ Node.js และ io.js หลังจากที่ io.js แยกตัวออกมาเนื่องจากความขัดแย้งเรื่องธรรมาภิบาลในการบริหารโครงการกับบริษัท Joyent ที่เป็นผู้ตัดสินใจหลักผู้เดียวของ Node.js (BDFL model) แต่หลังจากที่ Joyent ตัดสินใจตั้ง Node.js foundation ขึ้นมาเพื่อให้เป็นองค์กรกลาง ทางทีม io.js จึงประชุมกันและตัดสินใจกลับมาเข้าร่วมในที่สุด

ที่มา https://docs.google.com/document/d/15Y_kJlYm-8cIf-alniaqUWMM-TjGISCqLf40G3pv4sM/edit?pli=1

[ 28 พฤษภาคม 2015 ]

ที่งาน Google I/O ได้ประกาศโปรเจค Brillo ซึ่งเป็นระบบปฏิบัติการสำหรับ IoT โดยเฉพาะ และประกาศโปรโตคอล Weave เพื่อให้อุปกรณ์ติดต่อสื่อสารกันเป็นมาตรฐานกลาง ซึ่งเป็นอีกแพลตฟอร์มที่นักพัฒนาน่าจับตามอง

ที่มา http://www.theverge.com/2015/5/28/8677119/google-project-brillo-iot-google-io-2015

[ 8 มิถุนายน 2015 ]

Twitter ได้ release tool ชื่อ d3kit โดย 1 ใน 2 ผู้พัฒนาคือ ดร.กฤษฎิ์ วงศ์ศุภสวัสดิ์ Data Scientist คนไทยเรานั่นเอง

ที่มา https://www.facebook.com/groups/ThaiPGAssociateSociety/permalink/379981635546445/

[ 11 มิถุนายน 2015 ]

Jitta บริษัท Start-up ของไทยเราได้ open-source Spinal ซึ่งเป็น microservice framework เพื่อช่วยจัดการ caching, queue, worker, load-balance, health-check ฯลฯ ให้โดยอัตโนมัติ

ที่มา https://github.com/jitta/spinal

[ 17 มิถุนายน 2015 ]

Brendan Eich (ผู้สร้างภาษา JavaScript และก่อตั้ง Mozilla) ประกาศโครงการ WebAssembly หรือ wasm ที่ทำให้ browser รองรับ binary format โดยตรง ทำให้ไม่ต้องเสียเวลา parse JavaScript และทำให้การ port โค้ดจากภาษาอื่นๆมารันบน browser ทำได้ง่ายขึ้น ซึ่งโครงการนี้เป็นการร่วมมือกันของยอดฝีมือจากทั้ง Google (JF Bastien, K. Gadd และ Ben Titzer), Microsoft (Abhijith Chatra, Michael Holman), Mozilla (Dan Gorman), Apple (Filip Pizlo), และ asm.js (Luke Wagner และ Alon Zakai) ซึ่งเรียกว่าเป็นผู้อยู่เบื้องหลัง JavaScript Engine ของแต่ละค่ายมากันครบทีเดียว

ที่มา https://brendaneich.com/2015/06/from-asm-js-to-webassembly/

[ 2 กรกฎาคม 2015 ]
ในงาน  React Europe มี session ชื่อ Live React: Hot Reloading with Time Travel โดย Dan Abramov ที่สร้างความตื่นตะลึงให้กับนักพัฒนาจำนวนมากโดยนำเสนอ “Redux” ซึ่งเป็นสถาปัตยกรรมที่พัฒนาต่อยอดจาก Flux ของ Facebook แต่เลือกใช้แค่ store เดียวในการเก็บ state ทั้งหมดของระบบ และใช้ reducer ซึ่งเป็น pure function ในการเปลี่ยนสถานะของ state ทำให้สามารถ track ทุกสถานะของแอพพลิเคชั่นได้ ซึ่งทำให้สร้างฟีเจอร์สุดเจ๋งอย่าง Time Travel Debugging ได้ แนะนำให้ดูกันครับ ตอนนี้ยอดวิวสูงถึง 80,000 วิวแล้ว

ที่มา https://www.youtube.com/watch?v=xsSnOQynTHs

[ 3 สิงหาคม 2015 ]

Intel ประกาศ Multi-OS Engine (MOE) ซึ่งสามารถช่วยให้พัฒนา “native” iOS แอพด้วยภาษา Java ได้ และพัฒนาได้ด้วย Android Studio ซะด้วย ใครสนใจลองอ่านบทความของน้องเอกดูครับ http://www.akexorcist.com/2015/12/lets-coding-the-ios-app-on-android-studio.html

ที่มา https://software.intel.com/en-us/multi-os-engine

[ 14 สิงหาคม 2015 ]

Gennadi Korotkevich เด็กหนุ่มวัย 21 ชนะเลิศการแข่ง Google Code Jam 2015 ซึ่งเมื่อต้นปีเค้าก็ชนะ Facebook Hacker Cup 2015 มาก่อนหน้าแล้ว และยังเป็นการชนะ 2 ปีซ้อนทั้งสองรายการติดต่อกัน นอกจากนั้นในปีนี้เค้ายังชนะรายการ Yandex Algorithm, ACM-ICPC World Finals และรายการอื่นๆอีกมากมาย เรียกว่าหาคนมาทาบสถิตินี้ยากจริงๆ (Gennadi เป็นเจ้าของสถิติได้เหรียญทองโอลิมปิกนานาชาติติดต่อกัน 6 สมัยในปี 2007-2012 โดยเข้าแข่งครั้งแรกในปี 2006 ตอนอายุ 11 ได้เหรียญเงิน)

ที่มา http://en.ifmo.ru/en/viewnews/5045/Gennady_Korotkevich_Wins_Google_Code_Jam_for_the_Second_Time.htm

[ 8 กันยายน 2015 ]
Node.js
หลังจากรวมตัวกันกับ io.js ก็ได้ออก Node 4.0 ซึ่งเลขเวอร์ชั่นกระโดดจาก Node 0.12.7 เพราะรวมกับ io.js 3.3 แล้วอยากให้เลขเวอร์ชันไม่ซ้ำกับของ io.js เลยเริ่มกันที่เลข 4.0 เลย

ที่มา https://nodejs.org/en/blog/announcements/foundation-v4-announce/

[ 10 กันยายน 2015 ]

ไม่กี่วันถัดมา IBM ประกาศเทคโอเวอร์บริษัท StrongLoop ซึ่งเป็นบริษัทที่ผลักดัน Node.js และเป็นสปอนเซอร์ให้กับ Express และ Loopback framework ซึ่งเป็นสัญลักษณ์ว่า Node.js จะเริ่มเข้าสู่สาย Enterprise เต็มตัวโดยการผลักดันของ IBM

ที่มา https://www-03.ibm.com/press/us/en/pressrelease/47577.wss

[ 3 พฤศจิกายน 2015 ]
เป็นอีกครั้งของ Docker ในปีนี้ที่ประกาศ Tool ออกมาอีกชุดใหญ่มาก เช่น Docker Networking ที่ช่วยสร้าง Virtual Network สำหรับ container, Persistent Storage ช่วยสร้าง data volume ที่ไม่ตายไปกับ container, Swarm ออก 1.0 พร้อมสำหรับใช้ใน production, Compose 1.5 รองรับ  Windows และอื่นๆอีกเพียบ นับว่าเป็นการพาโลกของ container ก้าวไปอีกระดับ

ที่มา https://blog.docker.com/2015/11/docker-1-9-production-ready-swarm-multi-host-networking/

[ 2 ธันวาคม 2015 ]

Twitter และ ดร.กฤษฎิ์ วงศ์ศุภสวัสดิ์ เจ้าเก่าได้ปล่อยเครื่องมือ Labella.js ไว้ทำ label แบบ timeline ไม่ให้ซ้อนทับกัน ซึ่งขณะนี้ได้ดาวบน github ไปแล้ว 3 พันกว่าดวง https://github.com/twitter/labella.js

ที่มา https://twitter.com/kristw/status/672052969291063296

[ 3 ธันวาคม 2015 ]
วันนี้มีเหตุการณ์สำคัญ 2 อย่างคือ
1. Apple ได้ประกาศ open-source ภาษา Swift แล้วโดยไว้บน github https://github.com/apple/swift
ที่มา https://developer.apple.com/swift/blog/?id=34

2. PHP 7 ปล่อยเวอร์ชันเต็มอย่างเป็นทางการ ซึ่งห่างจาก PHP 5 ที่ปล่อยมาครั้งแรกในปี 2004 ถึง 11 ปี โดยชูจุดเด่นเรื่อง performance ที่พยายามมาแข่งกับ HHVM และฟีเจอร์ใหม่ทางภาษาต่างๆอีกมากมาย

ที่มา http://php.net/releases/7_0_0.php

[ 16 ธันวาคม 2015 ]
ทีม Angular 2 ได้ประกาศเวอร์ชัน Beta แล้ว ซึ่งหมายความว่าจะแทบไม่มีการเปลี่ยนแปลงในเรื่อง syntax แล้ว เหมาะแก่การเริ่มศึกษาเพื่อเตรียมนำไปใช้ใน production ได้ โดยแตกต่างจาก Angular 1 มากพอสมควร ซึ่งพยายามลด syntax ต่างๆที่ไม่จำเป็นออกไปจำนวนมาก เพิ่มประสิทธิภาพขึ้นมาก และอื่นๆอีกมากมาย แต่ Angular 1 ก็ยัง support ต่อไปไม่ต่ำกว่า 2 ปี (จนกว่าส่วนใหญ่จะ move ไป Angular 2)

ที่มา http://angularjs.blogspot.com/2015/12/angular-2-beta.html

[ 28 ธันวาคม 2015 ]

ข่าวเศร้าของวงการส่งท้ายปี เมื่อ Ian Murdock ผู้สร้างระบบปฏิบัติการ Debian ได้เสียชีวิตลงด้วยวัย 41 ปี หลังจากเพิ่งย้ายมาทำงานกับ Docker ได้เพียง 1 เดือน โดยสาเหตุการเสียชีวิตยังไม่ทราบแน่ชัด

ที่มา https://bits.debian.org/2015/12/mourning-ian-murdock.html

จริงๆยังมีข่าวการอัพเดททั้ง library หรือ tools ต่างๆเยอะมาก รวมถึงอีกหลายๆข่าวที่ผมอาจจะไม่ทราบหรือลืมไป

ในมุมมองเพื่อนๆโปรแกรมเมอร์แล้วมีข่าวอะไรที่คิดว่าเป็นข่าวใหญ่ในรอบปีบ้าง ลองแชร์กันได้นะครับ

สุดท้ายนี้ก็ขอสวัสดีปีใหม่แก่ผองเพื่อนโปรแกรมเมอร์ทุกคนนะครับ

print(“Happy New Year 2016!”)