Upgrade WordPress จาก MySQL 5.7 ไปเป็น 8.0 ใน docker

เสือกอุตริไปนั่งอัพเกรด image ใน docker เพราะอยากจะทำให้มันเป็นของใหม่ ๆ ก็ไปเจอ docker compose ของเว็บนี้แหละ มันใช้ mysql 5.7 อยู่ เลยไปค้น ๆ ดู ตอนนี้ mysql มันออก 8.0 แล้ว และไอ้ 5.7 เนี่ย มันหลายปีก่อนมากแล้ว เลยคิดว่า เออ อัพเกรดแม่งเลยละกัน เริ่มต้นจากอัพเกรดแม่งดื้อ ๆ เลย แก้ tag จาก 5.7 ไปเป็น 8.0.14 ซึ่งเป็นเวอร์ชั่นล่าสุดตอนนี้ แล้วก็สั่ง build เลย … ทำจนทุก container ขึ้น ok หมดก็นึกได้ว่า สัส!! ไม่ได้ backup อะไรไว้เลย

Caddy บน Docker กับ การขอ Cert บน Let’s Encrypt แล้วติด Rate Limit

ตอนโน้น เคยจดบันทึกเอาไว้เรื่องการใช้ Caddy บน docker แล้วมันจะเอา cert จาก let’s encrypt มาติดตั้งและ enable HTTPS ให้โดยอัตโนมัติ ทีนี้ใช้งานไปใช้งานมาสักพัก ก็เจอปัญหาใหม่ตอนที่พยายาม start container บ่อย ๆ แล้วมันไปเอา cert บ่อย ๆ จนติด rate limit ทำให้ไม่สามารถไปขอ cert ใหม่ได้ และส่งผลให้ไม่สามารถ start container ได้ rate limit คือจำนวนครั้งในการอนุญาตในการเข้าเรียกใช้งาน service ต่อช่วงเวลาหนึ่ง ๆ หรือจำนวนอะไรสักอย่าง ต่อจำนวนอะไรสักอย่าง ซึ่งทาง let’s encrypt ก็มีการชี้แจงไว้เต็มไปหมดที่ https://letsencrypt.org/docs/rate-limits/ ทีนี้ปัญหาที่เจอที่เป็น rate limit ในการไปขอ cert ตอน start container […]

จิตวิทยาการขายของกับ DITF และ FITD

ได้มีโอกาสกลับไปอ่านการ์ตูน Liar Game เจอตอนนึงมีการพูดถึงเทคนิคทางจิตวิทยาที่ชื่อ Door-in-the-face (DITF) เลยไปหาข้อมูลเพิ่มเติมว่าจริง ๆ แล้วเทคนิคนี้มันคืออะไร ก็เจอเรื่องที่น่าสนใจ

รู้จักฉัน รู้จักเธอ ด้วย Agile Talent Dynamics

ในบล็อกที่แล้ว เขียนเรื่องเกี่ยวกับ Diversity ในทีม เปรียบเทียบกับความเข้ากันของอาหารบนโต๊ะ ทีนี้ถ้าเรามอง Diversity ในมุมที่เป็นลักษณะ และบุคลิกของแต่ละคนล่ะ เราจะมองยังไงดี

ส่วนผสมที่กลมกล่อม

ได้มีโอกาสดูคลิปหนึ่ง ที่ตัดมาจากการพูด TED Talk ของ Yves Morieux เขาพูดถึงการแข่งวิ่งผลัดของทีมชาติฝรั่งเศสแข่งกับทีมชาติอเมริกา ในช่วงแรกเขาเปรียบเทียบให้ดูแบบรายคน ก็พบว่า นักกีฬาของอเมริกาแต่ละคน วิ่งเร็วกว่านักกีฬาของฝรั่งเศส ดังนั้นเราสามารถเดาได้เลยว่า ตอนเวลาแข่งวิ่งผลัดจริง ๆ ทีมชาติอเมริกาจะต้องชนะแน่ พวกเราส่วนใหญ่ ก็คงคิดแบบนั้นเหมือนกันกัน

แก้ปัญหา MutationObserver กับ document.getSelection ใน jest ด้วย polyfill

ตอนเปลี่ยนมาใช้ test framework เป็น jest ซึ่งใช้ JSDom เป็น dom หลักในการทดสอบ แทนที่จะใช้ dom ของ browser ทำให้บางครั้งเราเจอปัญหา feature บางอย่างที่มีไม่ครบ และครั้งนี้ปัญหาที่เจอคือ พอเอา QuillJS ซึ่งเป็น markdown editor มาใช้กับ angular ก็เจอปัญหาว่า MutationObserver is not defined กับ document.getSelection is not defined

ใช้ Jest ใน Angular แบบง่ายกว่าเดิม ด้วย jest-schematic

ในบันทึกก่อนหน้าโน้น เคยจดเอาไว้เรื่องเกี่ยวกับวิธีการใช้ Jest ใน Angular จะเห็นว่ามีขั้นตอนมากมายว่าจะใช้ jest ได้

Multilingual ใน Angular อีกที

ได้มีโอกาสมาลองเรื่องการทำ multilingual application บน angular อีกที ก็เจอว่า ของเก่าที่เคยทำไว้ มันทำไว้ตั้งแต่ angular 5 เลยเอามาลองปัดฝุ่นดูอีกที

ใช้ Sass ใน Angular

โดยปกติโปรเจคที่สร้างขึ้นด้วย angular cli มันจะใช้ css เป็น default format สำหรับการกำหนด stylesheet ของโปรเจค ซึ่งถ้าเราอยากจะใช้เป็นอย่างอื่น เราก็สามารถกำหนดได้ตั้งแต่ตอนสั่ง ng new ว่าจะเอาตัวไหน จนกระทั่ง angular 7 ออกมา ตัว cli จะถามว่าเราอยากได้ format ไหนสำหรับทำ stylesheet และเราก็สามารถเลือกได้เลยว่าจะใช้ตัวไหนระหว่าง CSS, SASS, SCSS, LESS, Stylus

ลองใช้ Recursive ในปัญหา Pascal Triangle

ลองเอาโจทย์ pascal triangle มาให้ทีมลองเล่นกันตอนทำ code kata รายละเอียดคือ ให้แสดง pascal triangle ตามความสูงที่กำหนด โดยหน้าตาของ pascal triangle จะเป็นแบบนี้