[CR] เพิ่มความสว่างให้กับโต๊ะทำงานด้วยโคมไฟ USB LuZino

ช่วงนี้หลายคนยัง WFH อยู่นะครับ บางครั้งตอนประชุม เราโดนขอให้เปิดกล้องด้วย แต่ถ้าห้องของเราแบบว่า แสงไม่มี หรือเป็นจุดย้อนแสงหละ ภาพมืดแน่ๆครับ สำหรับผมลองหาของ เพื่อมาช่วยปรับแสงในราคาไม่เกิน 150 บาทครับ ทำให้ได้มาพบกับ luzino USB LED portable study lamp โดยมี Spec คร่าวๆ ดังนี้ พกพาสะดวก ต่อไฟจาก Port USB สาย USB สามารถบิด ดัดให้ได้แสงตามมุมที่ต้องการได้ ความสว่าง 120 Lumen – สว่างใช้ได้ครับ ถ้าที่บ้านไฟดับเอามาต่อกับ Power Bank แก้ขัดได้ครับ จากการลองใช้งานใน Meeting 3 ชั่วโมงนิดๆ ผมว่ามันก็ทนดีนะครับ ร้อนน้อยกว่าที่คิดไว้ครับ ถ้าใครสนใจสามารถมาลองซื้อไปใช้ได้ครับ (ปล. ลองหาจากร้านอื่นๆด้วย เผื่อมีถูกกว่า)

พบหมอที่ รพ. ตากสิน 2021

หลังจากปีก่อนที่ได้มาพบหมอ เพื่อตรวจตับตอนปี 2020 ไป และมีสรุปขั้นตอนพบแพทย์โรงพยาบาลตากสิน(กรณีมีใบนัด) เนื่องจากมีการสร้างตึกใหม่ครับ คราวนี้มาในปี 2021 มีอะไรเปลี่ยนไปบ้าง วันนัดของผมจากเดิมที่นัดตอนเดือน 8 ขยับเป็นเดือน 9 โดยทางเจ้าหน้าที่ของโรงพยาบาลโทรเข้ามาแจ้งเองครับ ตรงจุดนี้ต้องระวัง และสอบถามสิ่งที่นัดให้ครบนะ ทางเจ้าหน้าที่จะได้เลื่อนนัดในระบบให้ได้หมดครับ สรุป วันอัลตร้าซาวด์ ไม่เลื่อนครับจองคิวนาน ฮ่าๆ เลื่อนวันเจาะเลือด กับพบแพทย์ แต่เวลาเดิม วันจริง ผมนั่ง Taxi มาถึงโรงพยาบาลตอนตี 5.30 เข้ามาส่วนคัดกรองก่อนเลยครับ จากนั้นลงทะเบียนที่ห้องบัตร (ห้องกลาง) ถ้ามาช่วงเช้าๆ ตี 3-5 จะอยู่ตรงแผนกประชาสัมพันธ์ มาหลัง 7 โมงแล้ว ส่วนห้องบัตร (ห้องกลาง) จะอยู่ที่ชั้น 2 ครับ ตอนแรกกว่าจะลงทะเบียนเสร็จคิดว่าคิวเจาะเลือดน่าจะหลายร้อยคิวแล้ว อันนี้ผมขึ้นไปแล้วตกใจจริงๆ คนน้อยมากครับ อันนี้ผมมาทราบภายหลังว่า แผนกเจาะเลือด ตรวจปัสสาวะ ถ้าไม่มีนัดในระบบจะไม่รับเจาะเลือดให้ก่อนครับ ดังนั้น ถ้าต้องเลื่อนนัด หรือ มาผิดนัด ต้องแจ้งเจ้าหน้าที่ที่ห้องกลางให้ลงทะเบียนให้มีรายชื่อในระบบคอมพิวเตอร์ให้เรียบร้อยเท่านั้นครับ โดยของผมได้คิวที่ 40 ครับ ถ้าเป็นเมื่อก่อนน่าจะได้คิวที่ 200 แล้วครับ ผมเจาะเลือดเสร็จประมาน 06:28 เลยไปทานข้าวที่โรงอาหารครับ จากนั้นแวะมาวัดความดัน น้ำหนักให้เรียบร้อย และวางใบนัดตามเวลาครับ ของผมได้พบหมอประมาณ 10:30 ครับ ผลน่าจะแย่กว่าปีก่อน เพราะช่วงนี้งานเยอะจริงๆครับ เดี๋ยวต้องรอลุ้นผลใหม่ตอนกรกฏาคม 65 ครับ ถ้าสงสัยเรื่องการนัด ติดต่อได้ที่ 02-437-0123 ต่อ 1165

เปลี่ยน Battery มือถือ XIAOMI MI NOTE 3

หลังจากใช้ XIAOMI MI NOTE 3 มาเกือบๆ 4 ปี ตัว Battery มันก็ไม่ทนทานเหมือนตอนใช้งานช่วงแรกแล้วครับ โดยมีอาการแปลก เช่น เครื่องร้อนผิดปกติ อยู่เฉยๆ Battery ลดวูปไป รูปร่างของเครื่องบิดเบี้ยวไป เตรียมตัว ศึกษาวิธีการเปลี่ยน Battery ก่อนครับ โดยผมได้ศึกษาจาก Video นี้ครับ อุปกรณ์ ปืนเป่าลมร้อน – เอาไว้ใช้ละลายการที่เชื่อมฝาหลัง เพื่อเปิดออกมาครับ (ถ้าไม่มีลองดูตัวที่ผมสั่งก็ได้ครับ จิ้มเลย) ชุด Kit เปลี่ยน Battery -เอาไว้ใช้คานงัด+แงะ และจุดดูด เพื่อเอามาแปะฝาหลัง และก็ตัว Battery ออกมาครับ ไขควง 4 แฉก – เอาไว้ขันน๊อต แต่ที่มากับชุด Kit กากเกินบรรยายครับ ปากคีบ – เอาคีบพวกน๊อต และช่วยถอดขั้ว Battery ออกมาครับ Battery สำหรับเปลี่ยน – ตัว XIAOMI MI NOTE 3 จะเป็น Battery รุ่น ฺBM3A (หาได้ตาม Lazada / Shopee) ราคาช่วง 300 – 500 บาท สำหรับพวกประกันทำใจไว้ก่อนเลยครับ เพราะมีข้อกำหนดเรื่องขั้ว Battery ผมเคยลองทักร้าน ไปเปลี่ยน ร้านแจ้งว่าขั้วมันมีรอยแล้ว เลยไม่รับ มีอะไรจุกจิเยอะครับ ขั้นตอน คำเตือน ถ้าไม่มั่นใจ ไปให้ร้านทำดีกว่าสะดวกกว่าเยอะ และไม่ต้องลองเอาเครื่องมือถือสุดรัก มาเสี่ยงด้วย ปืนเป่าลมร้อน เป่ารอบๆมือถือ แล้วเอาตัวงัดมาค่อยๆแงะออกมาครับ ขั้นตอนนี้ใช้เวลามากที่สุดครับ หลังจากนั้นไขน๊อต เพื่อเอาฝาครอบส่วนบนออกครับ โดยผมจะมีกระดาษ Mark จุดไว้ด้วยครับ…

[VM] ลดขนาดของ VM (.vdi) ใน Virtual Box

หลายครั้งตัว VM ที่เราใช้งานมันอาจจะช้าลง เนื่องจากตัว VM มีขนาดใหญ่ใช้เนื้อที่ disk เพิ่มขึ้น มากกว่าข้อมูลจริงของมัน เช่น เราอาจจะทำ Process Temp ไว้ชั่วคราว หลังจากลบข้อมนั้นทิ้งไปแล้ว แต่ตัว VM มันไม่คืนพื้นที่กลับมาครับ ดังนั้น ที่มาของการ compact ตัว VM ให้มีขนาดที่เล็กลงครับ Pre-Condition ตอนสร้าง Disk ของ VM ต้องเป็นไฟล์ .vdi และมีการจองพื้นที่เป็นแบบ Dynamic Allocate เท่านั้น มี Downtime: ตอนทำต้องปิด VM ด้วย ก่อนทำต้อง Clear พื้นที่ข้างใน VM และทำ Zero Fill ด้วยครับ เพื่อบ่งบอกว่า Disk ส่วนนี้ไม่ได้ใข้งานแล้ว หากสงสัยว่าต้องทำอย่างไร มาดูที่ Blog นี้ได้ครับ สุดท้าย อย่าลืม Backup VM ครับ COMPACT VM ตรวจสอบก่อนครับ ว่า disk ของ VM ที่เราต้องการจะ Compact อยู่ที่ Path ไหน ด้วยคำสั่ง ตรวจสอบขนาดก่อนการ COMPACT ในที่นี่ผมใช้ Tool dutree ครับ มันดูง่ายดี COMPACT VM ด้วยคำสั่ง ตรวจสอบขนาดหลังการ COMPACT โดยใช้ dutree จะพบว่าขนาดหายลงไปเยอะเลยครับ ทดสอบเปิด VM เพื่อให้พร้อมใช้งานด้วยคำสั่ง ปิดท้าย สำหรับใครที่เป็นสาย Windows อย่างเพิ่งน้อยใจไปครับ ทำได้เหมือนกันครับ เพียงแค่หา path ที่อยู่ของไฟล์ VBoxManage.exe…

[ATH2021] สรุปงาน Agile Thailand 2021: Agile & Pandemic

สำหรับการจัดงานครั้งนี้จะเป็นแบบ Virtual โดยใช้ระบบของ welo ครับ โดยเป็นห้องประชุมสัมมนา Online มันจะดูมี Feature ที่เยอะกว่า Zoom / MS Team และไม่ต้องลงโปรแกรมด้วย Concept สรุปหัวข้อในงานที่ผมได้ฟังนะครับ – KEYNOTE: Agile ไปช่วยทำระบบ Home Isolation ได้อย่างไร – Plan-Do-Check-Study-Act แค่นี้ก็ Agility ได้ อย่าเพิ่งไป Scrum เลย (10:00 – 10:45) AGILE = output (Product) + OUTCOME (Feedback) – ชวนคุย! Change ที่วุ่นวายจัดการด้วย Agile ได้ไหมนะ? (11:00 – 11:45) ((- จัดการ Change อย่างไร -)) – Agile retreat – Mutation Testing – Beyond Unit Test Code Coverage (13:00 – 13:45) – Management 3.0 – Pair Programming สิบปีที่ผ่านมา (14:00 – 14:45) ((- 10 ปีผ่านไป -)) ((- จาก Pair Programing > Collective Ownership -)) – Facilitate Session Online (15:00 – 15:45)…

[C#] Automate Control.InvokeRequired Code pattern

spaghetti code, DRY

Blog นี้จริงๆ แล้วเป็นการนำ Blog ที่เขียนค้างตอนปี 2014 (ช่วงที่อยู่กับ Project ที่ได้ แต่บ่น 555) มาเขียนต่อให้จบครับ แม้ว่าตอนนี้แนวทางการพัฒนาระบบเป็นแนว Web Application แล้ว แต่ยังมีงานบางส่วนที่ยังเป็น Desktop Application ครับ ปัญหา เวลาจัดการงานด้าน UI มักจะเจอปัญหาที่เจอประจำเลย InvalidOperationException Cross-thread operation not valid. Control accessed from a thread other than the thread it was created on. สาเหตุ เกิดจากตัว Control ของ WinForms ไม่เป็น Thread-Safe ครับ ทางแก้ไข มี 2 แบบครับ BackgroundWorker: ให้ Main Thread แอบสั่งทำงานแบบ Asynchronous ผ่าน Method dowork Invoke method: delegated จาก Main Thread ให้มาทำส่วนที่ต้องการแทนครับ คราวนี้ เราจะมา Focus เฉพาะในส่วนของ Invoke method Invoke method การใช้งานง่ายมาครับ มี Pattern ดังนี้ครับ ตัวอย่าง ปัญหาที่พบ Code ในเคสที่ต้อง delegated จาก Method InvokeRequired() มันเหมือนกันเลยครับ !!!! จะว่าไปมันก็ขัดกับหลัก DRY (don’t repeat yourself) ครับ แนวทางแก้ไข -…

[DB2] ตรวจสอบไฟล์ backup ด้วย db2ckbkp

IBM DB2

พอดีได้เจอเคสของลูกค้าว่า Database ไม่สามารถ Restore ได้ เพราะลองเข้าใช้งาน Application แล้วไม่เจอตัว Database ครับ สิ่งที่ต้องเป็นอย่างแรก ตรวจสอบไฟล์ Backup ก่อนครับ ว่าครบถ้วนสมบูรณ์ หรือไม่ครับ โดยตัว DB2 มีคำสั่งตรวจสอบไฟล์ backup ด้วย db2ckbkp เตรียมมาให้อยู่แล้วครับ db2ckbkp พระเอกของเรา ไฟล์ backup มีปัญหา ส่วนใหญ่เกิดจากอะไร ? Reference

[CR] รสนิยม ข้าวพะแนงสันคอเนื้อออสเตรเลีย

สำหรับเมนูนี้เป็นเมนูที่ช่วงแรกๆใน 7/11 ของหมดไวมากครับ ส่วนผมรู้ตอนหลังๆแล้วครับ เลยเอามา Review ช้ากว่าชาวบ้านเค้าเลยครับ อุ่น-ข้าวพะแนงสันคอเนื้อออสเตรเลีย เมนูนี้อุ่นง่ายครับ แต่ถอดฟซองกระดาษออก และนำไปอุ่นผ่านไมโครเวฟได้เลยครับ ตัวกล่องมีตัวเจาะรูมาแล้วครับ เอานิ้วจิ้มไได้เลยครับ การตั้งค่าเครื่องสำหรับของที่บ้านผม ไมโครเวฟ 800 วัตต์ครับ เลยอุ่นความร้อนแบบ max 2 นาทีครับ และพัก จากนั้นอุ่นต่ออีก 30 วินาทีครับ ก็พร้อมทานแล้สครับ ชิม-ข้าวพะแนงสันคอเนื้อออสเตรเลีย สัมผัสแรกกลิ่นหอมมากครับ แต่ยังสู้เมนูกระเพราเนื้อของรสนิยมไม่ได้ครับ รสชาติ ละมุนลิ้น มันไม่เหมือนพแนงจากร้านอื่นๆ มีรสนมแบบเมนูเนื้อที่มีครับ จะรสจะโดดๆ แต่ไม่เผ็ด ส่วนเนื้อนุ่มกลืนง่ายครับ สรุป เมนูที่ควรค่าแก้การทานครับ เปลี่ยนคำจำเจจากอาหารกล่องของ 7/11 ได้ดีมากๆครับ ราคา 69 บาท ราคาอาจจะสูงกว่าข้าวกล่องทั่วไป แต่รสชาติคุ้มครับ รอบหน้าคงต้องหาทางไปลองแบบหน้าร้าน เห็นมีน้องบอกว่ามันจะหอม ละมุนกว่านี้มากกก

Software/Product Integration Strategy

หลายคนอาจจะเจอคำถามแนวๆว่า เพิ่ม Feature นี้เข้าไป หรือ Deploy ระบบที่ละส่วน มันมีแนวคิดการ Integrate หรือ ป่าวนะ ที่เป็น Guideline หรือป่าวนะ สรุปมีแนวทาง โดยมี 4 กลยุทธ์ที่ใช้กัน ดังนี้ครับ Big Bang Incremental Top-Down Button-Up Sandwich 1. Big Bang Big Bang ไม่มีลำดับอะไร เมื่อทุกคนทำเสร็จให้เทรวม และทดสอบรวมกันเดียว เหมาะกับ งานที่ไม่มีความซับซ้อน หรือมีขนาดเล็ก เพราะ ถ้าพลาดนี้หนังชีวิตเลยครับ แต่ต้องระวัง เนื่องจากเป็นการเทรวม หายังไม่ได้ตกลง Interface (Internal / External) กันก่อน ทำให้เกิดปัญหาตอนเอาทุก Component / Sub-System แต่ละอันมารวมกัน การทดสอบ หากมีข้อผิดพลาดเกิดขึ้น อาจจะทำให้หา Root-Cause ได้ยากขึ้น ตัวอย่าง Coding: การ Merge Feature ที่มี Dev ทำหลายๆคนกลับเข้าที่ Branch หลัก System: การ Deploy ระบบคลังสินค้า ที่มีการเชื่อมกับระบบบัญชีพร้อมกัน 2. Incremental Incremental มีการจัดลำดับ / ความสำคัญก่อนหลัง เช่น การทำ Core ขึ้นมาก่อน แล้วค่อยเพิ่ม Feature เข้าไปในแต่ละ Release เหมาะกับ งานที่มีขนาดใหญ่ จึงต้องแบ่งออกเป็น Component / Sub-System แผนงานยืดหยุ่นได้ เพราะ ใช้เวลาเก็บข้อมูล เพื่อมาปรับตัวระบบที่ละนิดเล็กบ้าง ใหญ่บ้าง สำหรับแนวทาง Incremental มี 3…

[.NET] Add UI เข้ามา แต่ View Designer ไม่ได้

Visual Studio

สำหรับวันนี้เป็นสรุปแนวทางปัญหาที่น่าจะเจอกันสำหรับคนที่ทำ Desktop App / Windows Forms App บน Visual Studio กันครับ ว่าบางที่ Add UI เข้ามาเพิ่ม แล้วเจอปัญหาว่า ถ้าอยากจะแก้ UI ต้องลงทุน เข้าไปแก้ Code แต่ที่จะออกแบบผ่านตัว Designer ได้ครับ ปัญหา Add UI เข้ามา แต่ View Designer ไม่ได้ สาเหตุ การแก้ไข – วิธีที่ 1: Exclude ไฟล์ที่มีปัญหาออกไป แล้ว Add เข้ามาใหม่ผ่านเมนู Add > Existing Item ครับ – วิธีที่ 2 : แก้ไข Tag XML ในไฟล์ .csproj โดยมีขั้นตอน ดังนี้