By mk Founder on Tag: Android Studio, Android, Development
Android Studio

กูเกิลปล่อย Android Studio 3.2 ให้ทดสอบพร้อมของใหม่ๆ ที่ประกาศในงาน Google I/O 2018 โดยสถานะตอนนี้ยังเป็นรุ่น canary และต้องใช้เวลาอีกสักพักกว่าจะเป็น stable

ของใหม่ที่มีใน Android Studio 3.2 ได้แก่ ปรับเวอร์ชันมาใช้ IntelliJ IDEA 2018.1.1 เป็นฐาน, Slices, AndroidX, Android Jetpack, App Bundle

ฟีเจอร์ใหญ่ที่น่าสนใจคือ Navigation Editor ช่วยให้เราเห็นภาพการนำทาง (navigation) ในแต่ละหน้าจอของแอพ ว่ากดจากหน้าจอไหนแล้วจะไปโผล่หน้าจอไหน

By mk Founder on Tag: Android Pie, Android, Development
Android Pie

ฟีเจอร์ใหม่ที่น่าสนใจใน Android P สำหรับนักพัฒนาแอพคือ Slices และ App Actions ที่มาพร้อมแนวคิดใหม่ว่า เราไม่จำเป็นต้องใช้งานแอพทั้งตัวก็ได้

Slices และ App Actions ออกแบบมาเพื่ออนาคตที่เราทำงานต่างๆ ผ่าน Google Assistant มากกว่าเรียกแอพขึ้นมาตามปกติ ทำให้นักพัฒนาสามารถ "หั่น" (slice) หน้าจอบางส่วนมาแสดงในหน้าจอของ Google Assistant ได้

By mk Founder on Tag: Android, Google, Development
Android

กูเกิลเปิดตัว Android Jetpack เป็น "ชุด" เครื่องมือสำหรับนักพัฒนา Android ที่คอยอำนวยความสะดวกให้การพัฒนาแอพสะดวกขึ้น

Jetpack ไม่ใช่ของใหม่ซะทั้งหมด หลายอย่างมีในโลกของ Android มานานแล้ว (เช่น Fragment/Layout) แต่ถูกนำมาจัดชุดใหม่ให้อยู่ภายใต้แบรนด์เดียว แต่ก็มีของใหม่บางอย่างเพิ่มเข้ามา เช่น Kotlin Extension (KTX) หรือ Slices ที่เป็นแนวคิดใหม่ใน Android P

By mk Founder on Tag: Android, Development, Google
Android

กูเกิลโชว์เทคนิคใหม่สำหรับการจัดแพ็กเกจ Android ช่วยให้ขนาดไฟล์ APK ลดลงได้สูงสุดถึง 50%

เทคนิคใหม่เรียกว่า Android App Bundle หลักการของมันคือ Dynamic Delivery ให้ผู้ใช้ดาวน์โหลดไฟล์เฉพาะส่วนที่ต้องใช้เท่านั้น ไม่ต้องโหลด APK ทั้งก้อนที่มีส่วนที่ไม่ได้ใช้งาน (เช่น ไฟล์ที่คอมไพล์มาสำหรับสถาปัตยกรรมอื่น) แถมยังสามารถดาวน์โหลดส่วนอื่นเข้ามาภายหลังได้เมื่อต้องใช้งาน

ในมุมของนักพัฒนาก็ทำงานง่ายขึ้น เพราะสร้างไฟล์ทั้งหมดชุดเดียว สร้าง APK ไฟล์เดียว ไม่ต้องสร้าง APK หลายชุดสำหรับการใช้งานแต่ละแบบ ที่เหลือนั้น Google Play จัดการต่อให้เราเอง

By mk Founder on Tag: Android, Google, Development
Android

ในยุคสมัยที่อะไรๆ ก็ชื่อลงท้ายด้วย X กูเกิลเองก็เลยมี AndroidX กับเขาด้วย แต่มันไม่ใช่ของใหม่ทั้งหมด เพราะเป็นเวอร์ชันอัพเกรดของ Android Support Library ที่นักพัฒนาแอพส่วนใหญ่ใช้งานอยู่แล้ว

ชื่อ AndroidX มาจากคำว่า Android extension libraries ส่วนเหตุผลที่ต้องมีชื่อใหม่ก็เพราะว่าไลบรารีในชุด Android Support Library งอกมาเพิ่มเรื่อยๆ ตลอด 7 ปีที่ผ่านมา จนทำให้นักพัฒนาเริ่มสับสนว่าต้องเรียกใช้ไลบรารีตัวไหนกันแน่ (ที่ชื่อดันแตกต่างกันด้วย)

By mk Founder on Tag: Microsoft, Windows 10, Development, Notepad
Microsoft

ในงาน Microsoft Build 2018 มีประกาศเล็กๆ ที่น่าสนใจเพราะแอพที่ไม่เคยอัพเดตมานานแล้วอย่าง Notepad จะได้ฟีเจอร์ใหม่กับเขาด้วย

ฟีเจอร์ที่ว่าคือ Notepad จะสามารถตัดบรรทัดแบบ Linux/Unix ได้เป็นครั้งแรก ส่งผลให้การใช้ Notepad เปิดไฟล์ข้อความที่สร้างจากระบบปฏิบัติการฝั่งยูนิกซ์จะไม่ติดกันเป็นพรืดแล้ว

By mk Founder on Tag: Visual Studio, Artificial Intelligence, Microsoft, Development
Visual Studio

นักพัฒนาที่ใช้ Visual Studio คงรู้จักฟีเจอร์ช่วยเติมโค้ด IntelliSense กันเป็นอย่างดี ล่าสุดไมโครซอฟท์ยกระดับมันอีกขั้น และเปลี่ยนชื่อเป็น IntelliCode
จุดแตกต่างสำคัญของ IntelliCode คือไมโครซอฟท์เทรน AI ให้อ่านโค้ดคุณภาพระดับ 100 ดาวบน GitHub กว่า 2,000 โครงการเพื่อศึกษาว่าโค้ดที่ดีเป็นอย่างไร จากนั้นนำโมเดลที่เรียนได้มาประยุกต์ใช้กับโค้ดที่เรากำลังเขียนอยู่

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

ไมโครซอฟท์ประกาศแผนการออก .NET Core 3.0 ที่มาพร้อมฟีเจอร์สำคัญคือรองรับแอพแบบเดสก์ท็อป และการออก .NET Framework 4.8 ที่ทำงานคู่ขนานกันไป

สำหรับคนที่ไม่ได้ตาม .NET Core คือ .NET เวอร์ชันโอเพนซอร์สที่รองรับฟีเจอร์บางส่วนของ .NET Framework เดิม แต่สามารถทำงานได้ข้ามแพลตฟอร์ม (รองรับแมคและลินุกซ์ด้วย) ที่ผ่านมา .NET Core เน้นการใช้งานแอพพลิเคชันประเภท ASP.NET, คอมมานด์ไลน์ และแอพเดสก์ท็อปแบบ UWP เท่านั้น

By mk Founder on Tag: Android, Mobile App, Development
Android

Chainfire นักพัฒนาชื่อดังในโลกของ Rooted Android ผู้สร้างชื่อจากแอพ SuperSU (แต่ก็ยังมีผลงานทำแอพอื่นๆ อีกมาก) ประกาศเลิกทำงานทั้งหมดที่เกี่ยวข้องกับการ root เครื่องแล้ว

Chainfire ประกาศหยุดพักงานเกี่ยวกับ Android และ SuperSU เมื่อครึ่งปีก่อน เพื่อทบทวนว่าเขาอยากทำอะไรต่อไป หลังเวลาผ่านมาครึ่งปี เขาพบว่าตัวเองไม่อยากกลับมาทำงานเดิมๆ ต่ออีก จึงตัดสินใจประกาศหยุดยุ่งเกี่ยวกับงานเหล่านี้

ผลคือในอีกไม่ช้า แอพบางตัวของ Chainfire จะหายไปเลย บางตัวจะขึ้นข้อความเตือนว่าหยุดพัฒนาและไม่อัพเดตแล้ว แต่เขาก็ยังไม่ได้บอกรายละเอียดว่าตัวไหนบ้าง

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

ไมโครซอฟท์ออก .NET Framework 4.7.2 อัพเดตย่อยของ .NET Framework (ไม่พัฒนาฟีเจอร์ใหม่แล้ว ย้ายไปอยู่ใน .NET Core) โดยเวอร์ชัน 4.7.2 เป็นเวอร์ชันที่ถูกผนวกมาพร้อมกับ Windows 10 April 2018 Update ด้วย

ของใหม่ (บางส่วน) ในเวอร์ชันนี้ได้แก่

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

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

การเปลี่ยนแปลงสำคัญมีดังนี้

Visual Studio Code

ไมโครซอฟท์ออกอัพเดตให้ Visual Studio Code ขยับเลขรุ่นเป็น 1.22 โดยมาพร้อมกับการปรับปรุงใหม่ๆ หลายอย่าง

การปรับปรุงที่น่าสนใจของอัพเดตนี้อย่างแรกคือ code folding ให้สามารถซ่อน / แสดงโค้ดตาม syntax ของภาษา CSS, HTML, JSON และ Markdown ได้โดยอัตโนมัติ ไม่ต้องอาศัยการจัดย่อหน้าโค้ดด้วยตัวเองอย่างเวอร์ชันก่อนๆ

By mk Founder on Tag: Google Cloud, Chat Bot, Artificial Intelligence, Development, Enterprise
Google Cloud

กูเกิลมีบริการสร้างบ็อตสนทนา (ทั้งที่เป็นแชทและเสียงพูด) ชื่อ Dialogflow ซึ่งเปลี่ยนชื่อมาจากบริษัท API.AI ที่เคยซื้อกิจการมา ที่ผ่านมา Dialogflow เป็นเครื่องมือสำคัญในการสร้างบทสนทนา (Actions) ที่เชื่อมต่อกับผู้ช่วยส่วนตัว Google Assistant (แถมรองรับภาษาไทยด้วย)

By mk Founder on Tag: WebAssembly, Mozilla, IDE, Development, Programming
WebAssembly

เป็นที่รู้กันดีว่า Mozilla ผลักดันเทคโนโลยี WebAssembly แบบสุดตัว ปัจจุบันเว็บเบราว์เซอร์ 4 ค่ายใหญ่ล้วนรองรับ WebAssembly กันหมดแล้ว ผลงานใหม่ล่าสุดของ Mozilla จึงหันไปจับตลาดนักพัฒนา ด้วยการเปิดตัว IDE สำหรับ WebAssembly โดยเฉพาะ

By mk Founder on Tag: Rust, JavaScript, Mozilla, WebAssembly, Development, Programming
Rust

Mozilla ประกาศแผนการพัฒนาให้ภาษา Rust ทำงานร่วมกับ JavaScript ในการใช้เขียนเว็บร่วมกัน

แนวทางของ Mozilla ไม่ได้ต้องการให้ Rust มาแทน JavaScript แต่มองว่าถ้าส่วนไหนจำเป็นต้องใช้ Rust เพื่อประสิทธิภาพที่ดีกว่า (เช่น การ parse ข้อมูลขนาดใหญ่) ก็สามารถใช้ Rust เขียนส่วนนั้น แล้วนำมาใช้ร่วมกับ JavaScript ในส่วนอื่นได้

วิธีการที่ Mozilla ใช้คือคอมไพล์ Rust เป็น WebAssembly ก่อน แล้วค่อยให้ WebAssembly ทำงานร่วมกับ JavaScript อีกทอดหนึ่ง ซึ่งวิธีนี้จะเปิดให้ใช้ภาษาอื่นนอกจาก Rust ในระยะยาว โดย Mozilla ระบุว่ามีแผนจะแปลง C/C++ เป็น WebAssembly ในอนาคตด้วย

By lew Founder on Tag: Development
Development

Travis CI ผู้ให้บริการ continuous integration (CI) ทำฐานข้อมูลหายทั้งระบบเมื่อเดือนมีนาคมที่ผ่านมา หลังพลาดรันชุดทดสอบโดยกำหนดคอนฟิกตัวแปร DATABASE_URL เป็นเซิร์ฟเวอร์ production ทำให้สคริปต์สั่งล้างฐานข้อมูลเพื่อเตรียมทดสอบ และเมื่อสัปดาห์ที่แล้วทีมงานก็เขียนบล็อครายงานสาเหตุและแนวทางแก้ไข

ความผิดพลาดนี้เกิดจากนักพัฒนาใช้หน้าจอ tmux เปิดฐานข้อมูล production เพื่อตรวจสอบปัญหา จึงคอนฟิกให้ตัวแปรชี้ไปยังฐานข้อมูลจริง หลังจากนั้นก็ทิ้งเทอร์มินัลนี้ไว้หลายวัน แล้วกลับมาใช้รันทดสอบโดยลืมไปว่าตั้งให้ใช้ฐานข้อมูลจริงไว้

By mk Founder on Tag: Microsoft Store, Microsoft, Development
Microsoft Store

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

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

By mk Founder on Tag: SCB, API, Development, FinTech, Banking
SCB

ในงานแถลงข่าวของธนาคารไทยพาณิชย์วันนี้ (28 มีนาคม) นายธนา โพธิกำจร ผู้อำนวยการอาวุโส ผู้บริหารสาย Digital Banking ประกาศว่าธนาคารไทยพาณิชย์จะเปิด API ให้นักพัฒนาภายนอกเข้าถึงในเร็วๆ นี้ (ยังไม่ระบุวันที่ชัดเจน) โดยจะเปิดพอร์ทัล developers.scb.co.th ให้นักพัฒนาใช้งานและเรียนรู้ API ของธนาคาร

จากแผนภาพที่โชว์ในงาน จะเห็นว่า API มีสองส่วนคือส่วนของ SCB API สำหรับเข้าถึงบริการหลักของธนาคาร และ SCB Easy API สำหรับเข้าถึงแอพ SCB Easy เช่น tile ที่ปรากฏบนหน้าแอพด้วย

By mk Founder on Tag: GitLab, GitHub, Git, Development, CI/CD
GitLab

GitLab ซอฟต์แวร์จัดการโครงการชื่อดัง ประกาศออกเวอร์ชันใหม่ 10.6 ที่สามารถทำงานร่วมกับซอร์สโค้ดที่เก็บบน GitHub ได้แล้ว

GitLab เป็นซอฟต์แวร์ที่พัฒนาขึ้นจาก Git โดยมีหน้าที่สองส่วนคือเก็บซอร์สโค้ด (repository) และการจัดการโครงการ (CI/CD ย่อมาจาก continuous integration and continuous delivery)

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

Visual Studio Code

ไมโครซอฟท์ออกอัพเดตให้ Visual Studio Code ขยับเลขรุ่นเป็น 1.21

สิ่งใหม่ที่น่าสนใจของอัพเดตนี้อย่างแรกคือการปรับปรุง UI ในส่วนของ notification จากเดิมที่เป็นแถบลอยขึ้นมาในส่วนบนของ VS Code ซึ่งหลายครั้งมักจะทับการแสดงผลแท็บทำให้นักพัฒนาจำเป็นต้องจัดการปิด notification ณ ขณะที่แจ้งเตือนเลย

โดยได้เปลี่ยนมาเป็นตัวจัดการ notification ที่สามารถซ่อนและเรียกดูอีกครั้งเมื่อไหร่ก็ได้ด้วยการกดที่ไอคอนระฆังที่มุมล่างขวาของ VS Code และยังได้ย้ายการแสดงผลมาไว้ในบริเวณเดียวกันอีกด้วย

Subscribe to Development