CategoriesAI Tools for EveryoneToday..what i learn

เมื่อผมลอง Vibe Coding ทำโปรเจคระบบลงทะเบียนสถานปฏิบัติธรรมของบ้านแม่ผม

นั่งทำแอพฯระบบลงทะเบียนสถานปฏิบัติธรรมบ้านเพชรบำเพ็ญ (บ้านแม่ผมเอง) ตอนนี้อยู่ที่ประมาณ 80-90% แล้ว

ที่เริ่มต้นทำ เพราะจากปัญหาที่เคยเห็นมาหลายๆที่คือ…

-ผู้มาปฏิบัติธรรมต้องเขียนฟอร์มใหม่ทุกครั้ง แม้จะมาเป็นประจำ
-บางท่านต้องฝากบัตรประชาชนไว้ แล้วก็มีลืมรับคืนบ้าง หรือกังวลว่าข้อมูลจะถูกนำไปใช้อะไรหรือเปล่า
-ลายมืออ่านยากทำให้เจ้าหน้าที่ต้องมานั่งเดาอีกว่า “นี่เขียนว่าอะไรนะ”
-และที่สำคัญ…ถ้าถามว่า “สัปดาห์นี้มีคนมากี่คน” ไม่มีตัวเลขชัด ๆ ที่ตอบได้

ผมเลยคิดว่า…”เรานี่ก็น่าจะพอทำ ระบบลงทะเบียนให้สะดวกและปลอดภัยขึ้นได้นะ”
และเพราะผมคลุกคลีกับระบบเดิมมานาน เลยมั่นใจว่าพอจะออกแบบอะไรให้ตอบโจทย์วัดได้แหล่ะ (เป็นเด็กวัด โตมากับวัดเลย)

Tech Stack ที่ใช้ก็จะประมาณนี้
-Flutter รับผิดชอบ UI ต่างๆของหน้าแอพฯ
-SQFLite รับผิดชอบเก็บข้อมูลในฐานข้อมูล หากข้อมูลนั้น Sensitive ก็ให้ระบบนั้น Mark Sensitive Data ไว้
-ChatGPT + Cursor + Claude Code รับผิดชอบเรื่อง QA , Junior Dev , Senior Dev แตกต่างกันไป

ตอนแรกก็อยากจะเล่าว่า “เอ้อ นี่เรานั่งทำแอพฯมานะ ได้แอพนั่นนี่มา” อารมณ์แบบอวดๆหน่อยว่าข้าทำแอพฯได้
แต่ก็ไม่ดีกว่า เพราะว่ามาคิดๆดู เราก็ไม่ใช่คนทำหลัก ที่หลักก็น่าจะเป็น AI เองซะมากกว่า
เลยขอเปลี่ยนเป็นมาเล่าเรื่องการทำงานกับ AI แทน ว่ามันเป็นยังไง

ตอนแรกก็กลัวมากกว่า AI จะมาแย่งงานโปรแกรมเมอร์ + QA หรืองานต่างๆที่เราเคยทำได้
หรือกลัวอีกแบบก็คือ ใครๆก็เขียนโปรแกรมได้นะ ต่อไปได้ตกงานแน่ๆ
แต่พอได้ใช้ AI จริง ๆ ผมกลับมองอีกแบบ

เพราะถ้าเรา พื้นฐานไม่แน่นหรือภาพรวมไม่ชัด ก็เสี่ยงที่จะทำโปรเจควนไปแบบไม่จบ
แม้ AI จะช่วยให้เราเร็วขึ้นก็จริง แต่ถ้าเราไม่รู้ว่ามันทำงานยังไง ก็จบเห่ได้เหมือนกัน

ยกตัวอย่างเช่น
-เวลาผมสั่งให้เพิ่มโค้ดทีละจุด มันก็จะใส่ทุกอย่างลงในหน้าเดียวก่อน เน้นให้ทำงานได้
(Model , View , Controller มาครบ จบในหน้า Screen)
แต่ไม่คิดเรื่อง Reuse เลย จนผมต้องมานั่งบอกว่า “แบบนี้ใช้ซ้ำไม่ได้ ต้องแยก Refactor นะ”
หลังจากโดนดุหลายรอบ น้องก็เริ่มเข้าใจขึ้น

-ปล่อยให้น้อง AI จัดการไฟล์เอง โครงสร้างการเก็บไฟล์เป็นอย่างไร น้องไม่สนใจ น้องจะเก็บแบบตามใจ
สุดท้ายไฟล์อยู่คนละมุม! ทำให้ตอนโปรเจคใหญ่ขึ้น จุดนี้เริ่มทำให้เราเสีย Token ไปกับการค้นหาไฟล์โดยเปล่าประโยชน์(แรกๆก็ไม่อ่านสิ่งที่น้องทำนะ ให้น้องทำ Auto เลย หลังๆเริ่มเสียเวลาไปกับการแก้ไฟล์เอง ถึงได้รู้ว่าน้องนี่หนา!!)

-หลายครั้งน้อง AI พยายามย่อสิ่งที่เคยทำมาให้สั้นลงเพื่อเข้าใจง่าย (compact) แต่พอย่อแล้ว…ทำงานช้าลง แถมลืมความรู้เดิมอีก
เหมือนพยายามจะสรุป Lecture ให้เรา แต่ดันลืมบอกประเด็นสำคัญ สุดท้ายอ๊องๆไปเลยก็มี

-ยังไม่นับรวมกับการพยายามสร้าง Class ใหม่เพิ่มเสมอ Screen เก่ามีผมก็ไม่สน ผมเน้นทำใหม่ดีกว่า

จากจุดนี้เริ่มทำให้รู้สึกว่า
-การวางแผน Prompt ในปัจจุบันสำคัญพอ ๆ กับการเขียนโค้ด
-ต้องเข้าใจพฤติกรรม AI เพื่อรู้ว่าจะให้มันทำอะไรต่อ
-ใช้น้อง ก็ควรอำนวยความสะดวกให้น้อง เช่น บอกน้องไปเลยว่าทำงานที่ไฟล์ไหน
-น้องชอบ Compact บ่อย ให้วางเช็คพอยต์ของงาน เช่น ไฟล์ md สรุปโครงสร้างและความคืบหน้าไว้เสมอ
เมื่อน้องเอ๋อ ให้น้องไปอ่านไฟล์นั้นๆ ใหม่ในครั้งถัดไป

หากไม่ได้เริ่มทำ(prompt กับ AI) จริง คงคิดไม่ออกจริงๆนะว่า AI นั้นทำงานอย่างไร

แล้วก็มีประโยคหนึ่งที่ผมชอบ จากหนังสือ “ไอน์สไตน์” (walter isaacson)
ที่อัลเบิร์ต ไอน์สไตน์ (Albert Einstein) ได้กล่าวไว้ว่า “God doesn’t play dice with the universe”
แต่หลังผมลองเล่น AI เสร็จ ก็ได้คำตอบละว่า “พระเจ้าทอยลูกเต๋าแน่นอน !!!”

**จากในภาพเป็นเวอร์ชั่นใส่ Requirement เผื่อไว้เยอะไปหน่อยนะ มีจองห้องพักได้ด้วย

อนาคตหากมีสถานปฏิบัติธรรมไหน มี logic การลงทะเบียนคล้ายๆกัน น่าจะนำไปต่อยอดได้