[KBTG-GO#03] Software Testing

0. Go Basic เหมือนมันมา Go Testing เลย ลองอะไรแล้วสงสัยมาแปะในนี้ และกัน แต่อาจจะมีแซมๆที่จุดอื่นบ้าง และก็ Go เป็นภาษาที่ใช้ PascalCase มีกฏระดับนึง แต่อาจจะไม่ Strick เท่ากับ Space ของ Python – Package – Variable + Operator + Control Flow – Function – Loop – Pointers เหมือนย้อนกลับมาเรียน C ยังไงไม่รู้ 555 หลังๆภาษาพวก C# / Java มันจัดการเอง 1. Go Testing Convention Create Go 101 Enviroment ใช้เยอนะ ส่องการตั้งค่าประมาณนี้ Create Go 101 SubTest t.run บราๆ มันดู Copy แปะ ๆ ยังไงไม่รู้ ฝั่ง dotnet มันมี DataRow และ @ParameterizedTest ของ Java เหมือนมี testing – go – golang test parameterized – Stack Overflow เดวธาตุไฟแทรก 55 Test Command แต่กดจาก VS Code ก็ได้นะ ฮ่าๆ มันผ่านแล้วแหละ แต่อยากลองเดิมๆ อาจจะขัดใจสาย TDD ลอง main…

จดๆ จาก Software Architecture Meetup 2024#01

สำหรับวันนี้มี 3 หัวข้อตามนี้ครับ รอบนี้มาช้าหน่อย วุ่นวายกับงานประจำ และขอย่อยก่อน เดี๋ยวมืนเอง และมี มีเวอร์ชันเต็มๆใน Live ด้วยครับ เผื่อผมจดขาดไปครับ Architecture as Algorithm  – Software Architecture คือ อะไร ? set of structure needed to be reason about the system – อะไรสักอย่าง (Set of Structure) ที่มีอธิบายตัวระบบ A Computation is a process that obeys finitely decribable rules Rudy Rucker Rule กฏที่เรากำหนด ถ้าในงานเราเป็น Business Rule นะ โดยที่ Speaker ยกตัวอย่างง่ายๆ การ +1 ถ้าเราสังเกตุดีพบว่า finitely describable rules มันอยู่ในรูป A –(Process)–> B แล้วการทำงานของมันมี Cost นะ ซึ่งผลที่ได้มันขึ้นกับว่า และนั้นแหละครับ Cost ของ Computation ที่เป็นส่วนนึงของ Software Architecture มัน คือ Algorithm มีศัพท์ Computation Complexity ตัว Big O ที่เราคุ้นเคยกัน โดยที่ จริงๆแล้วทุกอย่างมันไปให้อยู่ในรูป A – action-> B หมดเลย Software Architecture ลึกมันก็เป็น Algorithm…

[KBTG-GO#02] Software Design

1. Software Development Approach Problem Domain alight with Solution Space 2. Design Step Understand the problem > Clarify requirement + Define Scope > High Level Design > Proposal & Validation > Deep Drive Design จากนั้น Iterative Increment Design วนซ้ำ 3. Visual Modeling Language Design สงสัยตัว PlantUML มีคนใช้ไหม หลังๆ ผมใช้ Draw.io / excalidraw / Mermaid ตัวหลังผมมองว่า DiagramAsACode 4. API Design at First 5. N-Tier Archtecture อ๋อแล้วมีของ N-Layer อย่างใน Spring แยก Controller(Presentation) / Service(Logic) / Repository (Data) มัน abstraction ไปอีกมุมนึง Note Tier = Physical / Layer Logical 6. Operational Model มีหลายแบบ ตอนนี้ที่ใช้กันเด่นๆ มี 4 แ 7. Monolithic Architecture Keyword Monolithic Architecture Single…

Web For Impact (#02) with WordPress (Question / My Mistake / Check List)

ส่วนตัวเขียน Blog โดยใช้ WordPress มานานแล้ว แต่ไม่ได้หวังอะไรกับเงินมากกก ถ้าได้เยอะๆก็ดี 5555 พอดีเห็น Post ให้รุ่นแรก ไม่ทันอ่า มีรุ่นสอง แล้วทันพอดีครับ คำถามตอนแรกของผมตอนไปเรียน มีหลายสิ่งที่พอลองย้อนมาแล้ว เออเราพลาดจริงๆ – เรื่องของรูป – Excerpt มันไม่บังคับก็ไม่ใส่ – Category โครงสร้าง หรือโทนของเว็บ – Feature Image เพิ่งรู้ว่าควรคุมโทน – Slug สำคัญนะ Slug ตัว url ที่หาไป post page – Stat Stat ผมไม่ค่อยได้ดู จริงๆมาดูละครั้งเลย Blog IT ที่เมนูสตาร์บั๊กมี View มากกว่าส่วนใหญ่ เดี๋ยวต้่องมาลองดูและ – Subscribe Block ตอนแรกคิดว่ามันเสียเงิน แล้วไม่ได้กดไป มันเจ๋งมันพวก Mail Newsletter แบบที่ Medium มันทำได้ด้วยเจ๋งๆ โพสนี้ลองดูและ แต่มีหลายเรื่องที่รู้ก่อนดีกว่า – การแก้พวก URL Pattern จาก .blog > .com หรือ เป็น Path Style จาก <your_domain>/year/month/<post_name> มาเป็น <your_domain>/<post_name> ต้องทำ Redirect ด้วย – Full Site Editor มันน่าจะนิ่งแล้ว จะเอาพวก Elementor ออก เมื่อก่อนเคยใช้แล้วมันค้าง แปะ code เลย – post structure จดไว้ก่อน เผื่อเอามาปรับเขียน ของผมเน้นยัดๆอะไรก็ได้…

How to reduce windows.edb size

Today, My Grafana Dashboard notified me about low disk space on Jenkins Server. I investigated the Jenkins Server and found windows.edb too big. NOTE: windows.edb is a windows index service database for indexing and property caching3v By default, the Windows.edb file is located in the below path.] Power Shell Command to Check Windows.edb Size How to reduce windows.edb size 1. Reduce Windows.edb size using Defragmentation 2. Reset and Rebuild the Windows Search Index Force windows search service to force delete index by changing Registry Path “HKLM\SOFTWARE\Microsoft\Windows Search” key SetupCompletedSuccessfully data from 1 to 0. This causes Windows Search to clear…

[KBTG-GO#01] Introduction

Git เหมือนจะมีเขียน Blog ไว้ เอาของเดิมแปะไปก่อน แต่ที่ฟังๆมา มี History ที่น่าสนใจนะ ตอนแรกเข้าใจว่าก่อนจะมี Git ตัดแปะไฟล์ไปๆมาๆ แล้วมี Git มาแก้ปัญหาเลย ทว่าที่มีของ Git เรียกว่ายังไงดี มาจากดราม่าตอนทำ Linux Kernel จะใช้ตัว BitKeeper แต่มันไม่ได้เป็น Open-Source ดังนั้น linus torvalds เลยสร้างเองซะเลย Branching Strategy / Workflow พยายามเน้นตัว Short Live-Branch + Engineerinng Practices ที่ดีพวก Test / Design มาช่วย Pattern ที่นิยมกันมี ผมเองมี Flow ที่เอามาปรับใช้นะ มาตามดูได้ใน Blog [GIT] แบ่งปัน Git Flow ที่ได้ใช้งานจริงปล. ล่าสุดระยะ Release Branch จาก 1 เดือน เหลือ 1 Week และ feature toggle ใช้เปิด-ปิด Feature ให้พร้อมตอน Deploy โดยตัวอย่าง เช่น mobile มันมีขั้นตอนการตรวจที่ซับซ้อนกว่า web เพราะมี review จาก IOS/ Android เป็นปัจจัยที่ทำให้ release feature ช้าได้ และใช้ api เดวกัน ด้วย ถ้าเปิด-ปิด Feature จะสะดวกกว่า Pair programming Key: Pair rotation ทำให้เกิด knowledge…

[CR] Starbucks Bucher Sausage Croissant Roll

ด้วยความที่อยากกิน Jumbo Sausage Bite มาครับ แต่ที่ Starbucks เซ็นทรัลปิ่นเกล้า สาขาเล็กชั้น3 มันไม่มีมาสักที ถามน้องพนักงานตอน จนมาวันนี้ วันที่ผมรอคอยมากถึงครับ มีเมนูไส้กรอกอันใหม่มา Bucher Sausage Croissant Roll Reference (พลังงานของแต่ละเมนู)

ลองมา Mentor เรื่อง Database ให้กับน้องๆนักศึกษา

พอดีพี่ที่รู้จักไหว้วานมาอีกทีครับ เลยได้เข้ามาอยู่ใน Session นี้ครับ โดยได้รับข้อมูล น้องๆ จะมีการทำระบบเกี่ยวกับ Database เลยอยากให้มาแนะนำน้องๆ โดยน้องๆมี Workshow มาดู Domain ที่เกี่ยวกับศิลปะวัฒนธรรม ที่ศูนย์วัฒนธรรมแห่งประเทศไทย (เป็นสถานที่ที่เฉียดบ่อยๆมากๆ แต่ไม่เคยเข้าใจ 5555 ปกติไป Site ลูกค้า และ The Street) ตอนเดินจาก MRT ไปหลงเองด้วย เดินไปจนถึง สํานักงานใหญ่ ขสมก เข้าซอยมาเลี้ยวซ้ายนะครับ เดี๋ยวหลงเหมือนผม 555 สำหรับวันนี้มาถึง มีพบวิทยากรที่ศูนย์วัฒนธรรมฯ ฟังข้อมูล เช่น ศิลปินแห่งชาติ หรือ การขนย้ายชุดการแสดง เช่น หัวโขน มีขั้นตอนยังไง พร้อมกับน้องๆ แต่จริงๆมาช่วงเช้าและ ผมตามไปที่หลัง พอฟังเสร็จ ลองเก็บข้อมูลของน้องๆ จากเดิมที่เตรียมแบบการออกแบบ Database เป็นยังไง ทำ 3NF > BCNF ยังไง เลยปรับการแนะนำ โดยจะแนะนำเป็นประมาณนี้ ไม่จำเป็นต้องลงมือ Dev เสนอ แค่เลือกของที่ตอบโจทย์กับปัญหาให้ได้พอ อันนี้ที่น้องๆลองออกแบบมา เดี๋ยวต้องรอดูการพัฒนาต่อๆไปครับ ^__^