By lew Founder on Tag: Programming, Agile
Programming

Engprax บริษัทให้คำปรึกษาตรวจสอบซอฟต์แวร์ออกรายงานสำรวจวิศวกรซอฟต์แวร์ 600 คนในสหรัฐฯ และสหราชอาณาจักร ผลสำรวจพบว่าแนวทางของ Agile Manifesto หลายข้อทำให้โครงการซอฟต์แวร์มีโอกาสล้มเหลวสูงขึ้น โดยรวมแล้วโครงการที่ทำตามแนวทาง Agile มีโอกาสล้มเหลวสูงกว่าโครงการที่ไม่ใช้ถึง 268%

By arjin Writer on Tag: Mistral, LLM, Programming, Developer
Mistral

Mistral บริษัทปัญญาประดิษฐ์จากฝรั่งเศสที่มีไมโครซอฟท์ถือหุ้นอยู่ด้วย เปิดตัวโมเดล Generative AI ขนาด 22B สำหรับการเขียนโค้ดตัวแรกของบริษัท มีชื่อว่า Codestral

Codestral ถูกเทรนด้วยโค้ดมากกว่า 80 ภาษา ซึ่งรวมทั้งภาษาเขียนโปรแกรมยอดนิยมอย่าง Python, Java, C, C++, JavaScript, และ Bash ไปจนถึงภาษาอย่าง Swift และ Fortran จึงรองรับการทำงานของนักพัฒนาในหลายรูปแบบสถานการณ์ มีความสามารถทั้ง ช่วยเขียนโค้ด เขียนเทสต์ หรือช่วยเติมส่วนที่ขาดหายในโค้ดได้ จึงช่วยลดเวลาและเพิ่มประสิทธิภาพให้กับนักพัฒนาได้

By mk Founder on Tag: Windows 11, Microsoft, Programming, Visual Basic
Windows 11

ไมโครซอฟท์ประกาศรายละเอียดของแผนการถอด VBScript (ชื่อเดิมคือ Visual Basic Script ที่เป็นคนละภาษากับ Visual Basic แบบปกติ แต่มีส่วนที่เหมือนกัน) ออกจาก Windows ตามที่เคยประกาศแนวทางไว้ก่อนหน้านี้

By mk Founder on Tag: .NET, Microsoft, Programming, Artificial Intelligence
.NET

ไมโครซอฟท์ออก .NET 9 Preview 4 มีของใหม่ที่สำคัญคือตัวแปรประเภท Tensor<T> (อาร์เรย์หลายมิติ) สำหรับการประมวลผล AI

Tensor<T> ต่อยอดมาจาก TensorPrimitives ที่เป็น API สำหรับประมวลผล tensor ใน .NET 8 เพื่อให้ประมวลผลคณิตศาสตร์มีประสิทธิภาพมากขึ้น เพราะใช้ชุดคำสั่งแบบขนาน (SIMD) ของตัวซีพียู/จีพียูในการประมวลผล

การมาถึงของ Tensor<T> จะช่วยเพิ่มประสิทธิภาพในการรันไลบรารี AI ยอดนิยมหลายๆ ตัว เช่น ML.NET, TorchSharp, ONNX Runtime เพราะลดการคัดลอกข้อมูลในตัวแปรลงได้

By mk Founder on Tag: Kotlin, Programming, JetBrains
Kotlin

JetBrains เปิดตัวภาษา Kotlin เวอร์ชัน 2.0 มีของใหม่ที่สำคัญคือคอมไพเลอร์ตัวใหม่ K2 ที่เริ่มทดสอบมาตั้งแต่ปี 2022 และเข้าสถานะเสถียร

จุดเด่นของ K2 คือเรื่องประสิทธิภาพในการคอมไพล์ที่เพิ่มขึ้นเกือบเท่าตัว และยังทำงานร่วมกับตัว IDE (IntelliJ IDEA) เพื่อเพิ่มประสิทธิภาพของการไฮไลท์โค้ดได้เร็วขึ้น 1.8 เท่า, เติมโค้ดได้เร็วขึ้น 1.5 เท่า

K2 กลายมาเป็นคอมไพเลอร์สำหรับแปลงโค้ดภาษา Kotlin ไปใช้งานกับแพลตฟอร์มอื่นๆ แบ่งได้ 4 หมวดกว้างๆ คือ

By mk Founder on Tag: CUDA, Artificial Intelligence, OpenAI, Programming
CUDA

Financial Times รายงานว่าบริษัทไอทียักษ์ใหญ่หลายราย เริ่มเข้ามาสนับสนุนซอฟต์แวร์เทรน AI ที่ไม่ต้องพึ่งพา CUDA ของ NVIDIA เพียงอย่างเดียวอีกต่อไป

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

By mk Founder on Tag: React, JavaScript, Meta, Programming
React

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

ชื่อของ React Compiler อาจชวนงงๆ อยู่บ้าง เพราะ React เขียนด้วย JavaScript ที่เป็นภาษาแบบ interpreter แต่จริงๆ แล้ว React Compiler ทำหน้าที่เข้ามาอ่านโค้ดของเราเพื่อช่วยปรับแต่งประสิทธิภาพของโค้ดให้อัตโนมัติ ช่วยทำงานด้านแคช (memoization) ที่ก่อนหน้านี้โปรแกรมเมอร์ต้องทำเอง เช่น useMemo, useCallback, React.memo

By lew Founder on Tag: IBM, LLM, Programming
IBM

IBM ปล่อยโมเดลปัญญาประดิษฐ์ Granite ที่ฝึกจากฐานข้อมูลโค้ด 116 ภาษา โดยโมเดลมี 4 ขนาดได้แก่ 3B, 8B, 20B, และ 34B แยกรุ่นพื้นฐานและรุ่นรับคำสั่ง (instruct) โดยเฉพาะรุ่น 8B นั้นความสามารถในการเขียนโปรแกรมเหนือกว่าโมเดลขนาดเดียวกันค่อนข้างมาก

กระบวนการฝึกโมเดลเวอร์ชั่น 34B นั้นพิเศษกว่าเวอร์ชั่นอื่นๆ เพราะอาศัยการ upscaling โดยนำโมเดล 20B ที่มี 52 ชั้นสองเวอร์ชั่น มาถอดฝั่ง output 8 ชั้น และ input ของอีกโมเดลหนึ่ง 8 ชั้น แล้วนำมาต่อกันเป็น 34B ข้อมูลที่ใช้ฝึกนั้นมีตั้งแต่ GitHub Code Clean, StarCoderData, และโค้ดอื่นๆ รวมถึง

By lew Founder on Tag: TIOBE, Programming, Fortran
TIOBE

TIOBE รายงานลำดับความนิยมภาษาโปรแกรมรอบเดือนพฤษภาคม 2024 โดยมีความเปลี่ยนแปลงไม่มากนักยกเว้นภาษา Fortran ที่ขึ้นมาอยู่อันดับ 10 นับเป็นครั้งแรกในรอบ 20 ปีที่ภาษานี้กลับมาอยู่ Top 10

By mk Founder on Tag: Microsoft, Programming, API
Microsoft

ไมโครซอฟท์เปิดตัวภาษา TypeSpec ไม่ได้เป็นภาษาโปรแกรมมิ่งโดยตรง แต่เป็นภาษาระดับสูงสำหรับกำหนดนิยาม API (high-level API definition language) ที่ได้อิทธิพลมาจาก TypeScript และ C#

TypeSpec ถูกสร้างขึ้นเพื่อเป็นภาษากลาง ทำ abstraction ของโมเดล แล้วนำไปแปลงเป็นภาษาหรือสเปกอื่นๆ (ที่ยาวและละเอียดกว่า) อีกที เช่น OpenAPI (YAML), JSON Schema, Protobuf ช่วยอำนวยความสะดวกในการใช้งาน เพราะตัว TypeSpec ออกแบบมาใช้สั้นกระชับ แต่ยังสามารถนิยามโครงสร้างข้อมูลหรือ API ที่ซับซ้อนได้ และเน้นการนำนิยามไปใช้ซ้ำ (reuse) ในโอกาสอื่นๆ ได้

By lew Founder on Tag: Figma, Programming, TypeScript
Figma

Figma รายงานถึงกระบวนการย้ายโค้ดของตัวเอง จากเดิมที่ใช้ภาษา Skew ที่เริ่มใช้งานมาตั้งแต่เริ่มต้นบริษัท (ปล่อยเวอร์ชั่นแรกๆ ปี 2016 เหมือนกัน) โดยเงื่อนไขสำคัญคือการใช้ภาษา Skew เพื่อคอมไพล์โค้ดกลางไปใช้งานได้ทั้งเว็บและโทรศัพท์มือถือ โดยตอนนั้นภาษา TypeScript ยังซัพพอร์ตกันไม่มากนัก ทำให้ใช้ Skew เรื่อยมา แต่สุดท้ายก็พบว่าสร้างความลำบากเพราะใช้งานโค้ดหรือเครื่องมือภายนอกไม่ได้ ตลอดจนเสียเวลาฝึกพนักงานใหม่

GitHub

GitHub เปิดตัว GitHub Copilot Workspace ซึ่งเป็น developer environment แนวคิดใหม่ที่ทำงานบน Copilot ซึ่งเข้ามาช่วยนักพัฒนาในการระดมสมอง, วางแผน, เขียนโค้ด, ทดสอบ และรันโค้ด ทั้งหมดทำบนภาษาธรรมชาติ (Natural Language) โดยมี AI Copilot ช่วยจัดการงานทั้งหมด ขณะที่นักพัฒนาสามารถเข้ามาควบคุมได้ในทุกขั้นตอน

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

By mk Founder on Tag: Linus Torvalds, Programming, Linux, Open Source
Linus Torvalds

สงครามศาสนาที่คงอยู่มายาวนานของวงการโปรแกรมเมอร์คือ การย่อหน้าด้วย space vs tab ซึ่งก็คงยังไม่มีข้อยุติในเร็ววัน

เรื่องนี้เป็นประเด็นขึ้นมาอีกครั้ง เมื่อเว็บไซต์ The Register ไปค้นพบว่า Linus Torvalds ไปแก้โค้ดในเคอร์เนลลินุกซ์ ซึ่งในแพตช์นี้มีการแก้ไขเพียงอย่างเดียวคือเปลี่ยนอักขระ space มาเป็น tab

อย่างไรก็ตาม Linus ไม่ได้เลือกข้างในสงครามศาสนานี้แต่อย่างใด เพราะเหตุผลของเขาคือไฟล์ที่เขาแก้ไขคือ Kconfig ซึ่งเป็นไฟล์คอนฟิกค่าต่างๆ ของเคอร์เนล (ลักษณะเดียวกับ YAML ในปัจจุบัน) และมี parser รุ่นเก่าๆ บางตัวที่ยังเขียนมาได้ไม่ดีพอ ทำให้อ่านค่า space/tab ผิดพลาด

By mk Founder on Tag: Visual Studio, GitHub, IDE, Microsoft, Programming, GitHub Copilot
Visual Studio

ไมโครซอฟท์ออก Visual Studio 17.10 Preview 3 มีของใหม่คือปรับการทำงานของ GitHub Copilot โดยผนวกรวมแพ็กเกจสองตัวคือ Copilot ช่วยเติมโค้ด และ Copilot Chat ช่วยตอบคำถาม เข้าเป็นตัวเดียวกัน ติดตั้งแพ็กเกจตัวเดียวไม่ต้องแยกสองแพ็กเกจแบบก่อนหน้านี้

By lew Founder on Tag: Gemini, Google Cloud, LLM, Programming, Google
Gemini

กูเกิลเปิดตัวบริการ Gemini Code Assist ที่เปลี่ยนชื่อมาจาก Duet AI for Developer แต่เปลี่ยนปัญญาประดิษฐ์ภายในเป็น Gemini ที่อ่านข้อมูลได้นับล้่านโทเค็น ทำให้เวลาแนะนำโค้ดนั้นไม่ใช่การอ่านทีละไฟล์ แต่อ่านทั้งโครงการทีละเป็นแสนบรรทัดและแนะนำได้ทันที

การประกาศรอบนี้ยังประกาศเป็นพันธมิตรกับบริษัทความปลอดภัยซอฟต์แวร์ Synk โดยตอนนี้ยังเป็นเพียงการแนะนำการใช้งาน Synk ในแชตก่อน แต่ภายในปีนี้จะรวมความสามารถในการสแกนโค้ดเข้าไว้ในบริการ Code Assist เลย ทำให้แนะนำช่องโหว่ในโค้ดได้ทันที

By lew Founder on Tag: Gemini, Artificial Intelligence, Google, LLM, Programming
Gemini

กูเกิลปล่อยโมเดลปัญญาประดิษฐ์ LLM สำหรับเขียนโค้ดในชื่อ CodeGemma เน้นใช้งานเป็นตัวช่วยเขียนโค้ดโดยเฉพาะ โดยมีโมเดล 3 รุ่น ได้แก่

By mk Founder on Tag: JetBrains, IDE, Development, Programming, LLM
JetBrains

JetBrains ออกอัพเดตเวอร์ชัน 2024.1 ให้กับ IDE ทุกตัวในสังกัด เพิ่มฟีเจอร์ใหม่ full line code completion ใช้พลัง AI คาดเดาโค้ดบรรทัดต่อไปที่เราจะพิมพ์ใน editor โดยเป็นการคาดเดา "ทั้งบรรทัด" และสามารถทำงานได้แบบออฟไลน์ ไม่ต้องต่อเน็ต

การทำงานของ full line code completion จะแสดงข้อความสีเทาในบรรทัดถัดไป และสามารถกด tab เพื่อให้ editor เติมบรรทัดนั้นให้เราได้ ฟีเจอร์นี้รองรับโค้ดในภาษา Java, Kotlin, Python, JavaScript, TypeScript, CSS, PHP, Go, Ruby

By mk Founder on Tag: Replit, LLM, Programming
Replit

Replit บริษัทผู้สร้าง IDE ผ่านเบราว์เซอร์ ที่ช่วงหลังเริ่มใช้งาน AI ช่วยเขียนโค้ด เปิดตัวฟีเจอร์ Code Repair ที่นำ LLM มาปรับแต่งเพื่อเน้นการแก้บั๊กโดยเฉพาะ

Replit บอกว่าการนำ LLM มาช่วยเขียนโค้ดที่ใช้กันอยู่ทุกวันนี้ เกิดจากการเทรนด้วยข้อมูลซอร์สโค้ด ผสมกับข้อมูลการพูดคุยกันของมนุษย์ เช่น กระทู้ใน StackExchange หรือ GitHub issue จึงมีข้อจำกัดเรื่องการขาดบริบทด้านสภาพแวดล้อมในการพัฒนา (development environment) ที่โปรแกรมเมอร์แต่ละคนใช้งาน

By arjin Writer on Tag: GitHub, Security, Programming, Artificial Intelligence
GitHub

GitHub เปิดตัวฟีเจอร์ใหม่ Code scanning autofix ซึ่งเป็น AI ช่วยค้นหาและแก้ไขช่องโหว่ในโค้ดได้เร็วขึ้น โดยตอนนี้อยู่ในสถานะพับลิกเบต้า และเปิดใช้งานอัตโนมัติมีผลทันทีกับ Repository ที่ตั้งค่า Private เฉพาะลูกค้า GitHub Advanced Security (GHAS)

Code scanning autofix เป็นระบบที่สนับสนุนโดย GitHub Copilot และ CodeQL ระบุว่ารองรับมากกว่า 90% ของคำเตือนในภาษา JavaScript, Typescript, Java และ Python สามารถให้คำแนะนำแก้ไขได้มากกว่า 2 ใน 3 ของช่องโหว่ที่พบ ซึ่งโปรแกรมเมอร์สามารถเลือกทำตามคำแนะนำหรือไม่ทำก็ได้เช่นกัน

Subscribe to Programming