National Coding Day 2024

Aphichan Chaiyutthasart
3 min read1 day ago

--

Why is Coding in English

ประมาณว่า การเขียน code มันมีพื้นฐานมาจากภาษาอังกฤษ ส่วนใหญ่นะ แม้ว่า คนสร้าง อาจจะเป็นคนที่ใช้ภาษาอื่นก็ตาม เช่น Dutch, Japanese, Chinese, Thai

แล้วคนส่วนใหญ่ในโลก ก็ใช้ภาษาอังกฤษกันได้ และตัวอักษร alphabet ก็ใช้ง่ายกว่า (ASCII code ก็พอ แต่ภาษาอื่นต้องใช้ unicode) แล้วก็มีเรื่องการแบ่งวรรคคำ อย่างเช่นในภาษาไทย แบ่งยาก

Open Platform on Paotang

เขาพูดถึงเกี่ยวกับการนำ mini app เข้า แอพ paotang มันง่าย คือ แค่ทำ web app แล้วก็นำขึ้น mini app ผมไปถามหลังไมค์ มาก็มีส่งเอกสารกันนิดหน่อย แล้วก็รอ review approve จากนั้นเราก็ update ผ่าน web app เราได้เลย

Responsible AI: Know Before Trying Generative AI

Predictive AI VS Generative AI

ตัวอย่าง
https://github.com/microsoft/responsible-ai-toolbox

https://github.com/Azure/azureml-examples

เลือก Model ที่มีคำอธิบายที่ดีว่า เหมาะกับใช้งานด้านไหน มี Safety system กันสิ่งไม่พึงประสงค์
Metaprompt Framework ต้องนิยามว่า ตอบอะไรได้ ตอบอะไรไม่ได้
UX ออกแบบให้ user ใช้งานได้ง่าย
Monitor ดูว่าการใช้งานจริงเป็นอย่างไร ต้องปรับอะไร ใส่กฎเพิ่มไหม

Full Stack Testing from Basic to Basic (by somkiat.cc)

เล่าถึงความตลกร้ายในการส่งมอบงาน แต่เราสามารถเพิ่มความเชื่อมั่นในการส่งมอบงานด้วยการทำ test (ดู slide ได้)

เหมือนผมมาฟังเดี่ยว version dev ฮาทุกครั้งที่ได้ฟัง

Domain-Driven Design: in Action: Lessons Learned from Developing Thailand’s Lottery Platform

เล่า process การสร้าง app ซื้อขาย lottery ใน paotang อะนะ โดยใช้ DDD ไม่ใช่ Deadline นะ 555 เขาทำ squad ทีมแบบหลายทีม เลยทำให้แต่ละ squad ทีมเขาจบงานได้ด้วยตัวเอง แปลว่า เขาต้องแบ่งแต่ละ domain อย่างชัดเจนมากๆ มีการนิยามศัพท์ที่จะใช้ในงานกันก่อน เวลาสื่อสารจะได้ตรงกัน มี domain expert คือคนที่เล่นหวยอยู่แล้ว ทำให้เข้าใจเนื้องานมากขึ้น แล้วค่อยๆ แตกย่อย domain ไประดับหนึ่ง จนรู้สึกว่าพอละ ถ้าย่อยมาก เดี๋ยวจะ maintain ลำบาก

เรื่อง DDD เดี๋ยวอันนี้ขอไปหาข้อมูลเพิ่ม ผมว่าดี น่าเอามาใช้

AI Safety 101

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

เรามากำหนดขอบเขตให้มันหน่อยดีไหม เช่น ให้มันเก็บ stamp แค่ 100 อัน พอมันทำถึงเป้าแล้ว มันก็จะหยุดเอง แต่ว่าเพิ่มความคิดแบบมนุษย์เข้าไปหน่อย อาจจะเผื่อให้เกิน 100 อันไปหน่อย เผื่ออุบัติเหตุไม่คาดฝัน

เป้าหมายมี 2 แบบ คือ Terminal Goal กับ Instrumental Goal

อย่างเช่น มนุษย์ สมมติว่า Terminal Goal จะเป็นอะไรก็ตาม แต่ถ้ามี เงินมาก ตั้งเป็น Instrumental Goal ก็จะทำให้ Terminal Goal ไปถึงได้ง่ายขึ้น

อย่าง AI ก็เช่นกัน ถ้ามี Instrumental Goal เป็น 4 อย่างนี้ มันก็ทำงานได้แล้ว

Why you should learn programming from web development ?

หัวข้อนี้ beginner น่าฟังนะ คือ การเริ่มจากทำ web มันง่าย ผมว่าข้อมูลมีเยอะ ทำตามได้ง่าย ทำแล้วเห็นภาพ เราลองใช้งานได้เลย แล้วค่อยต่อยอดไปด้านอื่นๆ ได้

แล้วก็ถ้าสนใจด้านอื่นๆ ก็ดูได้ที่ https://roadmap.sh/

Code Fast, Stay, Secure

ตอนแรกก็เกริ่นเรื่อง coding, programming, problem solving ไปจนเรื่อง runner กับ package manager
แล้วก็ปิดท้ายด้วยขาย blackduck ตัว scan code security จบ

Open-source Small AI Models for a Greener Future

LLM vs SLM

เขาเล่า LLM เนี่ย ทำให้ data center ใช้พลังงานสูง บางทีก็ไม่ค่อยเสถียร ถ้ามีคนใช้งานเยอะ แล้วก็มีค่าใช้จ่ายในการใช้ API เลยเสนอว่า มาใช้ SLM แทนกันไหม มันก็ใช้งานได้ระดับหนึ่งเลยนะ เขาพยายามพัฒนาให้ SLM รันได้ใน mobile หรือ tablet จะได้ใช้งานได้สะดวกยิ่งขึ้น ไม่ต้องใช้ internet หรือ cloud

Getting Data from Cloud to Kubernetes using SQL Query

Steampipe ตัวช่วยทำให้ query kube แบบ SQL ได้ แทนที่จะใช้ kubctl ในการ get ค่าต่างๆ เดี๋ยวเอามาลองใช้ดู ช่วงนี้ก็ใช้ kube อยู่เหมือนกัน
https://hub.steampipe.io/plugins/turbot/kubernetes

Sharing: How’s QA involved with DevSecOps

QA != Tester

Quality ต้องอยู่ในทุก process ของ DevSecOps

อันนี้ผมว่า คล้ายๆ session ของพี่ somkiat ที่บอกว่า Testing เกิดได้ในทุก process เหมือนกัน

คือ QA อาจจะช่วย design และ control quality of software แต่ว่าก็คนในทีมต้องมีส่วนร่วมด้วยใน process นั่นเอง

Strategies for black box testability

พี่ ThaiPang เป็น dev ที่ event pop ได้เล่าว่า ในทีมไม่มี QA แต่ว่า dev จะเขียน automate test กันเอง โดยจะมี code ส่วนที่ใช้เป็น feature และก็ code ส่วนที่ไว้สำหรับในการทำ testing เฉพาะแยกออกมา โดยเขียนเป็น scenario test เพื่อให้ทดสอบได้ง่ายขึ้น เพื่อแทน manual testing

จบแล้วก็ ปิดงานด้วยการ แจกเสื้อ 10 รางวัล แล้วก็ได้รับ feedback จากผู้ร่วมงานหลายอย่างเลย เช่น ขาดน้ำเปล่า น่าจะเว้นช่วงเวลาให้เปลี่ยนห้องนิดนึง แต่ภาพรวมงานก็ดีอยู่แล้ว สถานที่ก็ดี ได้เห็นคนรุ่นใหม่ๆ มากัน เดี๋ยวนี้มีเด็กมัธยมมาแล้วด้วย

ปล. จริงๆ มี 2 ห้องนะ แต่ผมเล่าอันที่ผมฟังอย่างเดียวนะ

ขอให้สนุกกับการ Coding นะครับ

--

--