JetBrains ประกาศว่า Kotlin Multiplatform (KMP) ที่ช่วยให้เขียนโค้ดเป็นภาษา Kotlin แล้วแชร์โค้ด (ส่วนใหญ่หรือทั้งหมด) ข้ามแพลตฟอร์มได้ เข้าสถานะเสถียรพร้อมสำหรับงานโปรดักชันแล้วใน Kotlin 1.9.20 เวอร์ชันล่าสุด
Kotlin Multiplatform เริ่มจากการใช้งานเขียนแอพบนมือถือ Kotlin Multiplatform Mobile (KMM) โดยแปลงโค้ดจากฝั่ง Android ที่เขียนด้วย Kotlin อยู่แล้วให้ไปรันแบบเนทีฟบน iOS ได้ด้วย ช่วยลดการดูแลโค้ดลง และภายหลังก็ขยายมายังแพลตฟอร์มอื่นอย่างเดสก์ท็อปและเว็บ จึงเปลี่ยนชื่อเป็น Kotlin Multiplatform (KMP) ให้ครอบคลุมมากขึ้น
JetBrains เปิดตัว IDE ใหม่ (อีกแล้ว) สำหรับภาษา Rust ชื่อว่า RustRover ใช้ตัวย่อในไอคอน RR
RustRover ใช้ฐานจากตัว IntelliJ Platform แต่ปรับปรุงให้เหมาะกับการเขียนภาษา Rust เพียงอย่างเดียว โดยปรับปรุงจากปลั๊กอิน Rust ของ IntelliJ IDEA ที่มีอยู่เดิม
RustRover ยังเปิดให้ใช้งานฟรีในช่วงทดสอบ โดยจะออกตัวจริงเดือนกันยายน 2024 หลังจากนั้นจะประกาศวิธีคิดเงินในภายหลัง ตัวปลั๊กอินฐานที่เป็นโอเพนซอร์สจะยังฟรีตลอดไป แต่ทีมงาน JetBrains จะไม่อัพเดตฟีเจอร์ให้เพิ่มแล้ว หันไปพัฒนาตัวโปรแกรม RustRover แบบเสียเงินแทน
JetBrains เปิดตัว Qodana (อ่านว่า โคดานา) เครื่องมือวิเคราะห์คุณภาพโค้ดอย่างเป็นทางการ หลังเปิดทดสอบมาตั้งแต่ปี 2021
Qodana เป็นเครื่องมือวิเคราะห์คุณภาพโค้ด (code quality platform) โดยจะดึงซอร์สโค้ดมาอ่าน วิเคราะห์หาบั๊ก หาปัญหาประสิทธิภาพ หาช่องโหว่ความปลอดภัย หาการใช้โค้ดจากภายนอก (เผื่อเจอปัญหาไลเซนส์) ทั้งหมดสามารถทำงานได้กับระบบ CI/CD ใดๆ ก็ได้ ไม่จำเป็นต้องใช้ของ JetBrains (จะเชื่อมกับ GitHub Actions, GitLab, CircleCI, Jenkins, Azure Pipelines ได้หมด) รองรับการวิเคราะห์โค้ดกว่า 60 ภาษาและเฟรมเวิร์คชื่อดังต่างๆ
ข่าวนี้เหมาะสำหรับครูบาอาจารย์ที่สอนวิชาโปรแกรมมิ่ง และกำลังสนใจสอนภาษา Kotlin ในฐานะภาษาใหม่ที่กำลังมาแรง
JetBrains ในฐานะบริษัทผู้สร้าง Kotlin เปิดเอกสารทั้งหมดในคอร์ส Programming in Kotlin ให้ใช้งานได้ฟรี ครอบคลุมถึงสไลด์ประกอบการบรรยาย ควิซ การบ้าน และคลิปวิดีโอการบรรยายของ Anastasia Birillo ผู้สอนวิชานี้ เอกสารสามารถดาวน์โหลดได้จาก หน้าเว็บ Kotlin Educator
JetBrains เปิดตัวปลั๊กอิน Kotlin Notebook สำหรับ IntelliJ IDEA เพื่อให้ผู้สนใจภาษา Kotlin สามารถลองเขียนโค้ด ใส่ตารางข้อมูล ทำภาพ visualization ได้จบในตัว แบบเดียวกับโน้ตบุ๊กภาษา Python
JetBrains บอกว่าแนวคิดการใช้โน้ตบุ๊ก Jupyter ได้รับความนิยมมากขึ้นเรื่อยๆ ทั้งในการทำโปรแกรมต้นแบบ, การวิเคราะห์ข้อมูล และงานสาย data science จึงต้องการขยายผลมายังภาษา Kotlin ด้วย รูปแบบการทำงานยังเหมือนกัน ตัวไฟล์โน้ตบุ๊กจะใช้นามสกุล .ipynb และมีโครงสร้างการจัดเก็บข้อมูลแบบเดียวกัน
ในเบื้องต้น ปลั๊กอิน Kotlin Notebook ยังมีสถานะเป็นแค่การทดลอง (experimental) ต้องอิงกับบางส่วนในปลั๊กอิน Python อยู่ แต่จะแยกขาดจากกันในภายหลัง
กูเกิลและ JetBrains โชว์การนำภาษา Kotlin มาเขียนเว็บ โดยคอมไพล์เป็น WebAssembly เพื่อให้รันในเบราว์เซอร์ได้ มีประสิทธิภาพเกือบเทียบเท่าเนทีฟ
ในยุคสมัยที่โลกมี 3 แพลตฟอร์มใหญ่คือ Android, iOS และเว็บ การมีแอพ 3 เวอร์ชันเป็นภาระในการดูแล จึงมีคนหาวิธีสร้างแอพด้วยภาษา-เครื่องมือเดียวกันกับทุกแพลตฟอร์ม (ด้วยวิธีการทางเทคนิคที่ต่างกัน แต่เป้าหมายเดียวกัน) เช่น .NET/Xamarin (C#) หรือ Flutter (Dart)
Compose Multiplatform เฟรมเวิร์คสำหรับเขียน UI ของภาษา Kotlin ที่พัฒนาโดย JetBrains และออกเวอร์ชันแรกในปี 2021
รากเหง้าของ Compose มาจาก Jetpack Compose ที่กูเกิลสร้างขึ้นเพื่อเขียน UI บน Android โดย JetBrains นำมาพัฒนาต่อให้รองรับแพลตฟอร์มอื่นๆ คือบนเดสก์ท็อป (Windows, macOS, Linux)
ล่าสุด JetBrains เปิดตัว Compose Multiplatform สำหรับ iOS แล้ว สถานะยังเป็นรุ่นทดสอบแบบ Alpha และจำเป็นต้องใช้ Xcode บน macOS ช่วยคอมไพล์ออกมาเป็นแอพบน iOS ให้
JetBrains ประกาศแผนการใช้งานคอมไพเลอร์ตัวใหม่ K2 ของภาษา Kotlin ที่เริ่มทดสอบใน Kotlin 1.7 โดยจะขยับเลขเวอร์ชันของ Kotlin 2.0 เพื่อสะท้อนการเปลี่ยนแปลงนี้
ปัจจุบัน Kotlin เวอร์ชันล่าสุดคือ 1.8.10 หลังจากนี้จะออกเวอร์ชัน 1.9 มาก่อน แล้วเปลี่ยนใหญ่เป็น Kotlin 2.0 ที่ใช้คอมไพเลอร์ K2 เป็นดีฟอลต์
คอมไพเลอร์ K2 ถูกเขียนขึ้นมาใหม่ทั้งหมด ใช้สถาปัตยกรรมใหม่ มีประสิทธิภาพในการทำงานดีขึ้น 2 เท่า ออกแบบให้ต่อขยายได้ง่าย และแก้บั๊ก แก้หนี้ทางเทคนิคของคอมไพเลอร์ตัวที่ใช้อยู่ในปัจจุบัน
JetBrains ยังเดินหน้าสร้าง IDE ใหม่ในวงศาคณาญาติของตัวเองอยู่ตลอดเวลา (ใครจำชื่อได้หมดบ้าง?) IDE ตัวใหม่ล่าสุดชื่อว่า Aqua สำหรับงาน test automation ทั้งสามระดับคือ unit test, web API test, UI test
JetBrains Aqua รองรับการทำงานหลายภาษา (เช่น JVM, Kotlin, Python, JavaScript, TypeScript) มีเครื่องมือสำหรับการทดสอบประเภทต่างๆ มาใช้ครบครัน เช่น มี HTTP client ในตัว, มีตัวจัดการฐานข้อมูล, Docker, test management system (TMS), web inspector สำหรับ UI automation
ฝั่งของการทดสอบโปรแกรม มีตัวช่วยรัน unit test ตามเฟรมเวิร์คยอดนิยมต่างๆ เช่น JUnit, TestNG, Pytest, Jest, Mocha และดูผลลัพธ์ได้จากตัว IDE แบบ tree view
GitHub ประกาศเปิดบริการ Codespaces สภาพแวดล้อมการพัฒนาที่รันในคลาวด์ นักพัฒนาเขียนโค้ดและคอมไพล์ได้จากเบราว์เซอร์ ให้กับผู้ใช้ GitHub ทุกคนฟรี มีโควต้าใช้งานเดือนละ 60 ชั่วโมง
เดิมที GitHub Codespaces ยังรองรับเฉพาะ VS Code เป็น IDE แค่อย่างเดียว ล่าสุด GitHub จับมือกับ JetBrains รองรับ IDE ทุกตัวของค่าย JetBrains แล้ว หากมีไลเซนส์ของฝั่ง JetBrains อยู่แล้วก็นำมาใช้บน Codespaces ได้เลย (รายละเอียด)
หลังเปิดตัวแอพ Fleet ที่เป็น IDE ขนาดเบามาแข่งกับ VS Code ผ่านมาเกือบ 1 ปีเต็ม JetBrains ก็เพิ่งเปิดให้คนทั่วไปดาวน์โหลด Fleet แบบ Public Preview มาทดลองใช้งานกัน (หน้าดาวน์โหลด)
Fleet เป็นการนำเอนจินเบื้องหลังของ IntelliJ Platform มาใส่ UI ใหม่ และปรับสถาปัตยกรรมของแอพมาเป็นแบบ distributed ให้สามารถรัน Fleet แบบรีโมทได้ง่าย
ภาษา Kotlin ได้รับความนิยมมากขึ้นเรื่อยๆ หลังกูเกิลเลือกเป็นภาษาหลักในการสร้างแอพบน Android ถึงขั้นมีบางองค์กร เช่น Netflix เริ่มผลักดันการใช้ Kotlin เขียนแอพมือถือทั้ง Android/iOS ไปพร้อมกันเลย
ทีม JetBrains เองก็รับลูกแนวทางนี้ และพัฒนาออกมาเป็น SDK ชื่อว่า Kotlin Multiplatform Mobile (KMM) ที่ตอนนี้เข้าสถานะ Beta แล้ว
ยุคสมัยที่ของแพงทุกหย่อมหญ้า ล่าสุด JetBrains ประกาศขึ้นราคาค่าสมาชิก IDE และเครื่องมือพัฒนาซอฟต์แวร์ของบริษัทยกแผง
JetBrains บอกว่าไม่ขึ้นราคามานาน 7 ปี ตอนนี้จำเป็นต้องขึ้นราคาแล้ว ราคาใหม่จะมีผลวันที่ 1 ตุลาคม 2022 ซึ่งลูกค้าสามารถซื้อแพ็กเกจราคาเก่าสะสมไว้ได้นานถึง 3 ปี (เท่ากับซื้อก่อน 1 ตุลาคม ได้ราคาเดิมไปอีก 3 ปี แต่ต้องจ่ายก้อนใหญ่ตั้งแต่แรกทั้งหมด)
จากการสำรวจราคาบนหน้าเว็บ JetBrains ซอฟต์แวร์ยอดนิยมคือ IntelliJ IDEA รุ่น Ultimate ราคาเก่าคือ 149 ดอลลาร์ต่อปี ราคาใหม่ขึ้นเป็น 169 ดอลลาร์ต่อปี ส่วนแพ็กเกจใหญ่ครบเซ็ตคือ All Products Pack (ได้ IDE ครบทุกตัวของบริษัท) ขึ้นราคาจาก 249 ดอลลาร์ต่อปีเป็น 289 ดอลลาร์ต่อปี
JetBrains ออก IntelliJ IDEA 2022.1 เป็นเวอร์ชันใหญ่ตัวแรกของปี 2022 มีฟีเจอร์ใหม่ที่สำคัญคือ Dependency Analyzer ช่วยจัดการและวิเคราะห์แพ็กเกจซอฟต์แวร์ (ในที่นี้รองรับ Maven และ Gradle) เพื่อแก้ปัญหาเรื่องเวอร์ชันทับซ้อน (conflict resolution และ configurations correction)
นอกจากประเด็นเรื่องเวอร์ชันแล้ว IntelliJ ยังสามารถตรวจเช็คช่องโหว่ความปลอดภัยของแพ็กเกจที่เรียกใช้ได้ด้วย (ผ่านฐานข้อมูล Checkmarx Software Composition Analysis) โดยฟีเจอร์นี้ต้องเป็น IntelliJ IDEA Ultimate แบบเสียเงินถึงใช้งานได้
คนที่ใช้ IDE ของค่าย JetBrains คงคุ้นเคยกับแอพ JetBrains Toolbox ที่ใช้จัดการอัพเดตซอฟต์แวร์ จัดการเวอร์ชัน และโปรเจคต์ที่ทำงานค้างอยู่ ปัจจุบันแอพตัวนี้มีผู้ใช้มากกว่า 1 ล้านคนต่อเดือน ตามฐานผู้ใช้ IDE ของ JetBrains
ล่าสุดทีมของ JetBrains ออกมาเล่าเบื้องหลังการเปลี่ยนแอพ Toolbox ที่เดิมเขียนด้วย C++/React/Chromium มาเป็น Kotlin 100% ซึ่งถือเป็นตัวอย่างการเปลี่ยนผ่านของ JetBrains ที่หันมาใช้ภาษาของตัวเองกับแอพเดสก์ท็อปด้วย
JetBrains เปิดตัว Compose Multiplatform เฟรมเวิร์คสำหรับเขียน UI ของภาษา Kotlin เวอร์ชันเสถียร 1.0 พร้อมแล้วสำหรับงานโปรดักชัน
Compose Multiplatform เป็นการเขียน UI ของ Kotlin ด้วยภาษาแบบ declarative ตามสมัยนิยม โดยทำงานได้ข้าม 2 แพลตฟอร์มคือ แอพเดสก์ท็อปและเว็บแอพ ส่วน Kotlin บน Android ใช้เฟรมเวิร์ค Jetpack Compose ของกูเกิล ที่ JetBrains ระบุว่าเป็นพี่น้องกัน มี API ส่วนใหญ่เหมือนกัน สามารถแชร์คอมโพเนนต์ข้ามกันได้ และหากมีแอพ Android ที่เขียนด้วย Jetpack Compose อยู่แล้วก็สามารถนำมารันบนเดสก์ท็อปได้ง่ายมาก
JetBrains เปิดตัวโปรแกรมแก้ไขโค้ด (editor) ในชื่อ Fleet ที่เน้นการนำงานง่ายๆ ได้อย่างรวดเร็วไม่กินเครื่อง แต่เปิดโหมดสมาร์ตได้ภายหลังเพื่อให้มันทำงานเป็น IDE เต็มรูปแบบ
ในโหมด editor นั้น Fleet สามารถไฮไลต์โค้ดได้, มีระบบเติมโค้ดอย่างง่ายๆ แต่เมื่อกดเปิดโหมดสมาร์ต จะวิเคราะห์โค้ดได้อย่างละเอียด เพิ่มตัวเติมโค้ดแบบฉลาด, ตัวช่วย refactor โค้ด, รองรับการดีบั๊กโค้ด ตอนนี้รองรับภาษา Java, Kotlin, Python, Go, JavaScript, Rust, TypeScript, และ JSON ในอนาคตเตรียมรองรับ PHP, C++, C#, และ HTML เพิ่มเติม
JetBrains พบว่าหลังจากพัฒนา IDE มา 20 ปี โปรแกรมเมอร์จำนวนมากต้องการฟีเจอร์มากบ้างน้อยบ้างตามโอกาส บางทีก็ต้องการแก้โค้ดเร็วๆ บางทีก็ต้องการ IDE เต็มรูปแบบ จึงเกิดเป็น Fleet ออกมา
เมื่อประมาณ 3 เดือนที่แล้ว JetBrains เปิดตัวโลโก้ใหม่ของ Kotlin ที่ยังเป็นตัว K แบบของเดิม แต่เปลี่ยนจากสีส้ม-น้ำเงิน มาเป็นการไล่สีม่วง-น้ำเงินแทน พร้อมปรับรูปแบบฟอนต์ (typeface) มาใช้ฟอนต์ JetBrains Sans ให้เข้าชุดกับผลิตภัณฑ์อื่นๆ ของบริษัท
JetBrains ให้เหตุผลว่าคู่สีเดิมดูล้าสมัย และการใช้แถบสี (stripe) ก็ดูไม่เป็นเอกลักษณ์ จึงตัดสินใจเปลี่ยนสีให้เหมือน Facebook Messengerให้ดูสว่างและสดใสขึ้น กลายเป็นการไล่สี (gradient) แบบที่เห็น
JetBrains เจ้าพ่อแห่งวงการ IDE เติบโตมาจากสาย Java โดยผลิตภัณฑ์เรือธงคือ IntelliJ แต่ภายหลังก็ขยายมาทำ IDE สำหรับภาษาอื่นๆ ด้วย
หลายคนอาจไม่รู้ว่า JetBrains ทำ IDE สาย .NET กับเขาด้วยในชื่อว่า Rider ที่ออกครั้งแรกในปี 2017 เน้นใช้เขียน C#, ASP.NET, Xamain, WinForms และเทคโนโลยีสายไมโครซอฟท์
อย่างไรก็ตาม การที่โลกของเกมนิยมใช้ภาษา C# จาก Unity ทำให้ JetBrains ออก Rider for Unity มาจับตลาดนักพัฒนาเกมด้วย และเมื่อไปได้ดีกับ Unity ก็ตามมาด้วย Rider for Unreal Engine ที่เป็นภาษา C++ ส่งผลให้ Rider กลายเป็น IDE ที่รองรับเอนจินเกมยอดนิยมทั้งสองค่าย
บริษัท JetBrains สร้างชื่อมาจาก IntelliJ ซอฟต์แวร์ IDE สำหรับภาษา Java แต่ภายหลังก็ใช้วิธีวางตัว IntelliJ Platform เป็นแพลตฟอร์มกลางสำหรับพัฒนา IDE เฉพาะทาง ต่อยอดเป็น IDE ตัวอื่นๆ ของตัวเองอีกที เช่น PyCharm (Python), PhpStorm (PHP), GoLand (Go), RubyMine (Ruby)
ล่าสุด JetBrains เปิดตัว IDE ใหม่ (อีกแล้ว) ชื่อ DataSpell สำหรับงานสาย data science โดยเฉพาะ ลักษณะเดียวกับ RStudio ของสายภาษา R แต่ในระยะแรกเน้นที่ภาษา Python เป็นหลัก
นอกจาก ผลสำรวจโปรแกรมเมอร์ปี 2021 ของ JetBrains ยังมีการสำรวจเครื่องมือทำงานร่วมกันออนไลน์ (Best Collaboration Tools 2021) ที่มีผู้ตอบแบบสำรวจมากถึง 47,000 คน (ส่วนหนึ่งคือโปรแกรมเมอร์ 31,743 คนที่ตอบแบบสำรวจแรก)
แบบสำรวจนี้แยกเป็นเครื่องมือทั่วไป (online collaboration tools) และเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ (software development collaboration tools)
เครื่องมือทำงานทั่วไป
JetBrains ออกรายงานสำรวจข้อมูลนักพัฒนาประจำปี 2021 จากผู้ตอบแบบสอบถาม 31,743 คนใน 183 ประเทศ มีข้อมูลที่น่าสนใจดังนี้
ตลาดซอฟต์แวร์ CI/CD เป็นอีกตลาดที่ได้รับความนิยมสูงในช่วงหลัง มีผู้เล่นหลายรายเข้ามาในตลาดนี้ เช่น GitLab, CircleCI, Travis CI, Atlassian Bamboo รวมถึงซอฟต์แวร์โอเพนซอร์สอย่าง Jenkins และ Tekton
ทิศทางช่วงหลังของ CI/CD คือเราเริ่มเห็นบริการผ่านคลาวด์ (managed service) กันมากขึ้น เช่น GitLab ที่มีเวอร์ชันคลาวด์มานาน หรือสายคลาวด์มาทำเองอย่าง Google Cloud Build กับ GitHub Actions
JetBrains เจ้าของ IDE ชื่อดังตระกูล IntelliJ ก็มีซอฟต์แวร์ด้านนี้คือ TeamCity มานานแล้ว แต่ที่ผ่านมามีเฉพาะเวอร์ชัน on premise ตอนนี้ก็ต้านกระแสไม่อยู่ ต้องออก TeamCity Cloud มาบ้าง
JetBrains ประกาศหยุดรองรับระบบปฏิบัติการ 32 บิต (ทั้งลินุกซ์และวินโดวส์) กับ IDE ทุกตัวของบริษัท ได้แก่ AppCode, Clion, DataGrip, GoLand, IntelliJ IDEA, PhpStorm, PyCharm, Rider, RubyMine, WebStorm
IDE ที่อิงอยู่บน IntelliJ เวอร์ชัน 2021.1 ถือเป็นเวอร์ชันสุดท้ายที่ยังรองรับระบบปฏิบัติการ 32 บิต ถัดจากนี้ไปคือเวอร์ชัน 2021.2 จะใช้งานไม่ได้แล้ว
JetBrains บอกว่าระบบปฏิบัติการ 32 บิตมีคนใช้งานน้อยลงมากแล้ว จึงตัดสินใจหยุดรองรับ เพื่อนำทรัพยากรไปรองรับสถาปัตยกรรมใหม่ๆ เช่น AArch64 (ARM64) แทน
กลายเป็นธรรมเนียมของซอฟต์แวร์รุ่นใหม่ๆ ไปแล้ว ที่เปลี่ยนมาออกรุ่นใหม่ตามระยะเวลาที่แน่นอน แทนการอิงฟีเจอร์ใหญ่ๆ ที่อาจไม่รู้ว่าต้องรอนานแค่ไหนถึงพร้อม ตัวอย่างของภาษาโปรแกรมที่เปลี่ยนมาใช้ระบบนี้คือ Java (ทุก 6 เดือน), .NET (ทุก 1 ปี), Python (ทุก 1 ปี)