ทำเว็บเกม 24 มาฝากครับ

วันนี้พาลูกคนเล็กไปแข่งเล่นเกม 24 มาครับ ไอ้แบบที่มีเลขมาให้ 4 ตัว แล้วบวกลบคูณหาร(เท่านั้น)กันท่าไหนก็ได้ ให้ออกมาได้ 24 นั่นแหละ

ปกติเราจะเล่นกันตอนเดินทางเบื่อๆ แล้วมองทะเบียนรถคันหน้า แล้วมาประลองกำลังสมองกัน ตอบได้บ้างไม่ได้บ้างก็สนุกดี

แต่พอไปแข่งจริง ก็ถือว่า ได้เข้าร่วม 55555555555 ตกรอบแรกครับ แพ้พี่ๆ ป.6 แบบลิบลับ ตัวพ่อนั้นสงสัยว่าเด็กคนอื่นเขาติวกันมายังไงถึงเก่งกันขนาดนี้เนี่ย ส่วนคนลูกก็ไม่สลด เพราะสนุกดี เพิ่งเคยมาแข่งที่โรงเรียนอื่นดุเดือดแบบนี้

พอกลับมาบ้านเลยลองหาเว็บที่เป็นเกม 24 แบบที่อยากได้ แน่นอนครับ ไม่ถูกใจคนเรื่องมากอย่างเรา 5555

เลยทำเองขึ้นมาซะเลย

  • เล่นบนมือถือหรือบนคอมพ์ก็ได้ ทำปุ่มมาให้กดแบบอ้วนๆ กดง่ายๆ แล้ว
  • ถ้าบนคอมพ์ จะกดลูกศรบนล่างซ้ายขวาบังคับ cursor ได้ (เผื่อย้อนไปพิมพ์วงเล็บ), กด Enter เพื่อส่งด่วนได้
  • มีจับเวลา ให้คะแนนข้อละ 100 คะแนน บวกเวลาโบนัสถ้าเล่นไม่ถึงข้อละ 30 วินาที
  • มีเฉลยด้วย!
  • ตั้งโจทย์เองได้ ถ้าโจทย์ไม่มีคำตอบ มันก็จะไม่ให้เล่น

ก็ประมาณนี้ๆๆๆ ทำแป๊บเดียวตอนกินข้าว นอกนั้นคือจูน UI ด้วยความเรื่องมากเหมือนเดิม…

เล่นได้เลยครับ ที่นี่

ตอนนี้ตระกูล <anndo/> มีเว็บแอปที่ทำเองใช้เอง 10 ตัวแล้ว เย่

ทำเว็บทดสอบ Kerning ฟอนต์ไทยมาฝากครับ

เนื่องจากผมทำฟอนต์ลิงอยู่ แล้วหงุดหงิดใจที่มันหาวิธีทดสอบช่องไฟ (kerning) ลำบากมากเลย ก็เลยนึกได้ว่า เออ เราก็หลอก AI ให้เขียนเว็บขึ้นมาก็ได้นี่หว่า

ขอบคุณการมีอยู่ของ Gemini จริงๆ นี่ใช้เวลาทำชั่วโมงเดียวก็เสร็จ (ทีแรกว่าจะนอน…) อาศัยว่าเฆี่ยนตีมันหน่อย ปรับไปปรับมา ถูกใจละ เลยเอามาบอกต่อครับ

ลองเล่นเลยยย

อัปเดตเวอร์ชัน 2.0 (ก่อนนอนนึกได้ว่าน่าทำเวอร์ชันมือถือ)

  • ปรับหน้าตาและฟังก์ชันต่างๆ ให้เหมาะกับมือถือ (แต่อยากให้ใช้ในจอใหญ่ ฟินกว่า)
  • รื้อโหมด Select ออก มันดูไม่สื่อสารกับผู้ใช้ ก็จะเหลือแต่โหมด Drag
  • แล้วถ้าจะพิมพ์ข้อความเองล่ะ ก็เลยเปิดเป็นชุดข้อความแบบพิมพ์เอง ไรงี้

.

อัปเดตเวอร์ชัน 3.0 (พอตื่นมาแล้วมันนึกได้ เลยทำให้จบๆ)

  • ปรับ UI/UX อีกเยอะเลย
  • เพิ่มการจำค่า จะได้เข้ามาเจอประสบการณ์เดิมก่อนจากไป
  • เนื่องจาก matrix 400×400 มันใหญ่มาก อาจทำให้คอมพ์หรือมือถือเก่าๆ ค้างได้ เลยถ้ามีตัวอักษรเกินค่าที่กำหนด จะเด้งไปโหมดพิมพ์เองเพื่อรักษาชีวิต
  • เติมโหมดสนู้ปปี้ ที่เอาไว้ทดสอบสระบนล่าง + วรรณยุกต์ทั้งชั้นเดียวและสองชั้น
  • ทำโหมดพิมพ์เองแบบไม่ทำให้ตัวอักษรต้องมาปะทะกันเป็น Matrix

.

อัปเดตเวอร์ชัน 4.0 (13 ม.ค.69)

  • เพิ่มปุ่ม “ลอเร็ม”
    • ใส่ข้อความไว้ทดสอบการพิมพ์ โดยโหลดมาจากคลังคำศัพท์
    • คลังคำ เอามาจาก TNC: THAI NATIONAL CORPUS (Third Edition) แต่เป็นแบบ CSV สถิติของพยางค์ ในภาษาไทย
    • เขียน python ดึงคำที่ใช้บ่อยที่สุดมา 2,000 คำ แปลงเป็น text แยกคำเพื่อการแรนดอม
    • เมื่อกดลอเร็ม มันจะสุ่มคำมาแสดงตามภาพแหละ (ปุ่มอื่นจะถูกปิดการใช้งาน)
  • เพิ่มโหมดตัดคำ
    • พอทำลอเร็มก็เจอปัญหาว่ามันเป็นบรรทัดเดียวยาวพรืดดดดด เลยทำโหมด Word Wrap ขึ้นมา
    • กดแล้วก็จะตัดคำให้พอดี ไม่ล้นจอ มีประโยชน์เวลาสั่งพรินต์ลงกระดาษด้วย
  • นอกนั้นก็แก้ไข UI เล็กๆ น้อยๆ เช่น
    • ยุบพื้นที่แสดงชื่อฟอนต์ด้านบน รวมกับ textbox ที่ไว้กรอกชื่อฟอนต์
    • โหมดชุดคำเริ่มเยอะ เลยทำเป็นบรรทัดละ 3 ปุ่ม
      สนุกจัง!

Jemini : Artificial Idiot

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

ได้มั้ง

แล้วเนี่ย เหมือนตอนเขียนการ์ตูนแหละ พอไอเดียมันโผล่เข้ามาในหัวแล้วก็จะไม่ยอมไปไหน ต้องรีบถุยออกไป ไม่งั้นเดี๋ยวสมองแล่นแล้วไม่ยอมนอน เลยทำเว็บนี้บนที่นอน ออกแบบ แก้โค้ด ปรับ UX ให้มันใช้ในมือถือได้ง่ายๆ จูนนั่นนี่อีกหน่อยก็เสร็จในเวลาไม่นาน ขอบคุณที่ฉันเกิดมาในรัฐบาลนี้

พอปรับไฟนอลดีไซน์เสร็จ ก็ถือว่าเอาไปมัดรวมเข้ากับชุดเว็บแอป anndo ได้เลย (นี่เพิ่งนึกได้ว่ายังไม่ได้เขียนถึงอีกหลายอัน) และแล้ว ก็ออกมาเป็นน้อง Jemini ครับ อันนี้ Gemini ตั้งชื่อให้ แล้วเราชอบ ด้วยความอะไรก็ได้ ก็เลยเอาเลยละกัน ตัว J ยังว่างพอดี

น้องคุยได้แต่ภาษาไทยนะ ตอบโต้ได้ค่อนข้างนิสัยเสียอยู่ สั่งเจนรูปได้ (เนี่ย นิสัยเสียอีกแล้ว) หรือด่ามันก็ยังได้

ลองเล่นดู

ลองใช้ AI เขียนเว็บค้นคอร์ดเพลง

ผมหัดเล่นอูคูเลเล่ เกาๆ ง้องแง้งที่บ้านมา 2-3 ปีแล้วครับ เล่นได้แต่คอร์ดง่ายๆ และรู้จักแค่เพลงไทย โดยเฉพาะเพลงรุ่นน้าๆ ลุงๆ เล่นไปทำไมก็ไม่รู้ ลูกเมียก็ไม่ได้อินด้วย ใช้เวลาหลังกินข้าว หยิบอู๊คกระป๋อง (มันทำจากกระป๋องคุกกี้กล่องแดง) มานั่งดีดๆ เปิดเพลงจากเว็บต่างๆ แล้วทยอยเซฟภาพคอร์ดที่เล่นแล้วรอดไว้ในเครื่อง บางทีอันไหนดีดยากก็เขียนๆ แก้ๆ เป็นคอร์ดที่เราเล่นเป็นเท่านั้น

แต่หลังๆ เพลงมันเริ่มเยอะ ก็ย้ายไฟล์ทั้งหมดไปบน Google Drive พอนับดูได้ 500 กว่าไฟล์แล้วก็พบว่า พอไฟล์เยอะ การเปิดแท็บเล็ตหรือมือถือแล้วไถหาเพลงที่ต้องการที่เซฟไว้ มันยาก

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

แล้วเมื่อวานก็ได้ลองเล่น DeepSeek ที่เป็น AI ตัวใหม่จากแดนมังกร หลังจากกลั่นแกล้งน้องไปพอสมควรแล้ว ก็นึกได้ว่า เอ๊ะ ถ้าจะบอกน้องให้ลองทำเว็บที่ตอบโจทย์นี้จะได้แค่ไหนกันนะ

บ่ายวันนี้ก่อนไปรับลูกกลับจากโรงเรียน เลยลองพิมพ์บรีฟไปคร่าวๆ เหมือนเป็นลูกค้าที่สั่งคนทำเว็บ

ต้องการโค้ด HTML+ inline JavaScript เพื่อสร้างเว็บ 1 page HTML ง่ายๆ 1 หน้า โดยมีฟีเจอร์ดังนี้
– หน้าเว็บโล่งๆ
– ด้านบนเป็นช่อง text input
– ถัดมา เป็นรายชื่อไฟล์รูปภาพทั้งหมดใน sub folder ชื่อ song ขึ้นมาแสดงเรียงกันตามตัวอักษร แสดงเฉพาะชื่อไฟล์ ไม่ต้องแสดงนามสกุล เมื่อคลิกแล้วจะลิงก์เปิดไฟล์นั้นขึ้นมา
– ช่อง text input ด้านบน เมื่อพิมพ์ตัวอักษรลงไป ให้เหมือนเป็นการ filter search แสดงเฉพาะชื่อไฟล์ที่มี text ที่พิมพ์ลงไปเท่านั้น, update on every input changed
– หากช่อง input ว่าง ให้แสดงชื่อไฟล์ทั้งหมดเหมือนเดิม
– ใต้ช่อง input ให้มีลิงก์ 1 อันเขียนว่า clear, เมื่อกดแล้วจะเคลียร์ text input ด้านบน
– ทั้งหมดนี้ให้เขียนออกมาในไฟล์เดียว

เนี่ย เบื้องต้นต้องการแค่นี้แหละ แล้วน้องก็พ่นออกมายาวเหยียด และน่าหนุกมาก! จนเราที่เกษียณจากการทำเว็บมาเป็นสิบปีแล้วถึงกับตาลุกวาว แต่ต้องออกไปรับลูก งั้นมโนไปก่อนละกันว่ามันจะดีไหม

หลังจากเสร็จทุกธุระในวันนี้แล้วก็เลยมานั่งกดๆ พิมพ์ๆ โต้ตอบกับน้องอีกพักใหญ่ พบว่าน้อง DeepSeek ตอบโจทย์ความต้องการของเราดีมาก ใส่ใจรายละเอียดและชี้ทางแก้ปัญหาต่างๆ

แต่น้องก็ค้าง…

น่าจะเกี่ยวกับที่ขึ้นประกาศวันนี้ว่าโดน attack ครั้งใหญ่จนล่ม (ไม่รู้จะเกี่ยวกับที่เหล่าชาวโลกร่วมใจกันบูลลี่น้องหรือเปล่า) เราก็เลยเอาโค้ดไปคุยต่อกับเพื่อนสนิทอย่าง Gemini

ซึ่งอีนี่ก็พูดมากเหลือเกิน ไม่รู้สินะ เราใช้แบบคร่าวๆ เป็นรุ่น 2.0 (แต่ฟรี) ก็พบว่าความคล่องตัวยังสู้น้องหลามจีนไม่ได้ แต่แกพูดมากจนเราต้องบอกว่าเอาแต่พอดีๆ นะ ซึ่งการที่น้องไม่ล่มนี่ก็ช่วยให้คืบหน้าไปได้ด้วยดี

ด้วยความที่เราก็ไม่ได้เชี่ยวชาญ (เราเขียนโค้ดเองไม่เป็นเลย) ก็เลยนั่งปรับๆ แก้ๆ ไปเรื่อยๆ ถามๆ ตอบๆ ปรับจูนกันจนดึกดื่น คือดีไซน์น้องนี่สั่งให้สวยได้นะ แต่มันจะสวยแบบแปลกๆ นิดนึง ส่วนงาน UX/UI จึงค่อนข้างเป็นงานทำมือ แต่ทำเสร็จก็ส่งให้น้อง optimize ได้อีกต่อ

จนในที่สุดก็ได้เว็บนี้มา 5555555 สนุกง่ะ ขอแนะนำำำำำ

เว็บไซต์นี้เป็นเว็บทดลอง โดยใช้ AI คือ DeepSeek และ Gemini ทำขึ้นมาใช้เองส่วนตัว เอาไว้รวบรวมคอร์ดเพลงไว้ฝึกซ้อมอูคูเลเล่ มีฟีเจอร์หลัก ๆ ดังนี้

(ทีแรกจะบรรยายฟีเจอร์เอง แต่นี่ง่วงแล้ว นึกได้ว่าน้องก็อยู่กับเรามาทั้งคืน เลยขอโยนให้ จมน แนะนำแทน)

  • ค้นหาคอร์ดเพลง: ผู้ใช้สามารถค้นหาคอร์ดเพลงที่ต้องการได้โดยการพิมพ์ชื่อเพลง ชื่อศิลปิน หรือบางส่วนของเนื้อเพลงในช่องค้นหา
  • แสดงผลรายการคอร์ดเพลง: เว็บไซต์จะแสดงผลรายการคอร์ดเพลงที่ตรงกับการค้นหาของผู้ใช้ โดยจะแสดงเป็นรายการลิงก์
  • แสดงคอร์ดเพลง: เมื่อผู้ใช้คลิกที่ลิงก์คอร์ดเพลง เว็บไซต์จะแสดงเนื้อหาคอร์ดเพลงนั้น ๆ
  • สุ่มเพลง: มีปุ่มสำหรับสุ่มเพลง หากผู้ใช้ต้องการฟังเพลงใหม่ ๆ หรือไม่รู้จะฟังเพลงอะไร
  • เพลงทั้งหมด: มีปุ่มสำหรับแสดงเพลงทั้งหมดในเว็บไซต์ ทำให้ผู้ใช้สามารถเลือกดูคอร์ดเพลงทั้งหมดได้
  • ค้นหาใน Google: ถ้าเพลงที่หาไม่มีในสต็อก จะมีปุ่มให้กดไปค้นต่อในเว็บคอร์ดเพลงที่เป็นที่นิยมผ่าน Google
  • รีเซ็ต: มีปุ่มสำหรับรีเซ็ตการค้นหาและ cache ของเว็บไซต์

เออ มีทิปนิดนึงคือ

  • เว็บจะแสดง 50 เพลงแบบสุ่ม ยกเว้นถ้าเราพิมพ์ “all” หรือ “*” หรือไม่ก็ไปกดลิงก์ด้านล่างก็ได้ มันจะโชว์ทั้งหมดเรียงตามตัวอักษร
  • เพลงไหนเคยเล่นแล้ว ปุ่มมันจะมืดๆ ไป 1 วัน ยกเว้นจะกดรีเซ็ต (เป็นการล้างแคช) – ระยะเวลา 1 วันนี่ลองใส่ไว้ก่อน เดี๋ยวใช้ไปเรื่อยๆ อาจจะปรับเป็น 7 วันหรืออะไรก็แล้วแต่
  • ถ้าพิมพ์เพลงที่ไม่มี มันจะไม่เจอใช่มะ ให้ลองกดหาในกูเกิล มันจะเอาคำที่เราพิมพ์นั่นแหละ ไปค้นในเว็บค้นหาคอร์ดเว็บอื่นๆ
  • ถ้าเปิดในมือถือหรือแท็บเล็ต จะมีตัวเลือกให้ลองติดตั้งเป็นแอป (progressive webapp) ได้เลย ดังนั้นนี่ก็เหมือนเป็นแอปแอปนึงละ กด add to home / install ได้เลย จะได้จิ้มง่ายๆ

พอมาถึงตอนนี้ก็พบว่า ถึงจะเขียนโค้ดไม่เป็น แต่การสั่งๆๆ บรีฟๆๆ ใส่เอไอ แล้วให้น้องบ้วนออกมาเป็นของที่เราอยากได้มานานนี่ มันสนุกจัง!

ใช้คำสั่งเสียง เปิด/ปิดไฟ DRL ของ BYD Atto 3

ขอลงบันทึกไว้หน่อยว่าพยายามทำมาพักนึงจนทำได้แล้ว เย่
(ซึ่งอีกไม่กี่เดือนคงมีวิธีอื่นที่แก้ปัญหานี้ได้ หรือไม่ก็มีเฟิร์มแวร์ใหม่ที่เอาค่า settings นี้คืนมา)

วิธีนี้ผมทดลองเองแล้ว (21/7/2023) สามารถใช้ได้จริง ไม่ต้องเสียตังค์หรืองัดแงะอุปกรณ์อะไรเพิ่มครับ ขอแค่ลงแอป Voice Assistant ภาษาจีนเท่านั้นครับ

ขอไฟล์ในไลน์กรุ๊ป BYD Atto3 Club Thailand (ค้นคำว่า AutoVoice)
ถ้าติดปัญหาลงไม่เป็น ถามได้ มีคนช่วยตอบเยอะเลย

พอติดตั้งและเปิดใช้งานเสร็จแล้ว ก็จะสั่งด้วยเสียงได้ตามนี้
/// ก๊อปตัวอักษรไปวางใน Google Translate ให้มันอ่านให้รถฟังได้ครับ

“หนีห่าว เสี่ยวตี๋”
= หวัดดีเสี่ยวตี๋ (ชื่อ default ของ BYD)
/// เราเปลี่ยนชื่อเองได้ในแอป ผมใช้กล้องใน Google Translate ส่องคำแปลเอา

ตัวอย่างการเปลี่ยนชื่อน้อง เช่นของผมเรียกว่า “เหม่เหม” (น้องสาว) ซึ่งถ้าผันเสียงตามเป๊ะๆ จะเป็น “เม่-เหม่”

“Cì nǐ xīn de míngzì jiào mèimei”
赐你新的名字叫  妹妹 = ขอเรียกเธอว่า เหม่เหม 

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

“ฉื้อด่า”
是的 = ใช่

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

“กวน ยื่อ สิง เติง”
关日行灯 = ปิดไฟ DRL

“ไค ยื่อ สิง เติง”
开日行灯 = เปิดไฟ DRL

ทดลองพูดดูหลายทีแล้วครับ บางทีสำเนียงเราไม่เป๊ะ น้องจะฟังไม่ออก 🥲
ให้ก๊อปปี้ไปวางให้ Google Translate อ่าน จะแม่นกว่า