[CUSE] ในที่สุดก็แก้ Propasal จาก EThesis มาเป็น IThesis สำเร็จ

งานเยอะ แต่ทรัพย์จางครับ หลังจากทำงานปั่นๆ เพื่อให้มี Product จริงตามที่ Marketing เสนอขายไว้ในช่วงเสาร์-อาทิตย์ อันยาวนานคราวนี้มีเวลามาส่งไฟล์ Propasal ของ Thesis สักทีครับ โดยผมได้ทำเอกสารไว้ในระบบ Ethesis แล้วแหละ แต่พอ Migrate มาเป็น IThesis มันหายครับ จากวันนี้ 2018-11-30 สู้ต่อไปอีกเทอมครับ หวังว่าความเยอะของงานจะลดลงครับ วันที่ต้องหยุดพักเพราะร่างกายรับไม่ไหววันที่ต้องเจ็บใจจนแอบไปสะอื้นกี่ครั้ง

[WINDOWS] กำหนด Password ของ User ให้เป็น Never Expire

Microsoft Windows

หลังจากที่ได้ทำงานที่ท้าทายชิ้นนึง โดยมีเงื่อนไขของระบบว่าต้องเป็น Windows Server แต่งานชิ้นนี้ เป็นงานที่ได้ใช้องค์ความรู้ที่ได้เรียนมาตอนเรียนปริญญาโท ด้าน SE หมดเลยครับ แต่งานกินเวลาทำ Thesis ไปเช่นกัน งอแงมาพอและ มาเริ่มเลยดีกว่า เนื่องจากระบบที่ใช้เป็น Windows Server และด้วยสภาพ Environment ของ Dev เลยไม่จำเป็นต้องกำหนดกฏเยอะแยะด้าน Security ครับ โดยการกำหนดอายุของรหัสผ่านก็เป็นหนึ่งในประเด็นที่ฝั่ง Dev ของมองข้ามไปก่อนครับ โดยสำหรับ OS ตระกูล Windows มีวิธีการ ดังนี้ครับ ใช้ Command เลย มันเร็วดีครับ จากคำสั่ง wmic ครับ หลังจากที่ลองเขียนคำสั่งไปแล้ว เราต้องตรวจสอบผลจากคำสั่ง net  ครับ ลดความยุ่งของทีม Dev ไปแล้ว แต่ตอนไป Implement จริง ให้ทำตาม Policy นะครับ เดี๋ยวจะชื่อดังโดยไม่รู้ตัว ^___^ Reference

[ENDNOTE] แทรกรายการอ้างอิงในไฟล์ MS Word

หลังจากติดงานที่ทำวันเสาร์ อาทิตย์มาตลอด ตอนนี้ได้เวลามาทำให้มันเสร็จสมบูรณ์สักทีกับระบบ IThesis ที่เปลี่ยนมาจาก EThesis ครับ มาเติมเต็มรายการอ้างอิงในไฟล์ MS Word กันครับ สิ่งที่ต้องมี มาลุยกันเลยครับ แทรกรายการอ้างอิง กรณีที่ต้องการแทรก Reference หลายๆอัน เช่น รายการที่ 5-10 และ 12-20 กรณีแทรก Reference หลายๆอัน แล้วในบรรรณานุกรมลำดับเปลี่ยน

Print A0 ลง A4 หลายๆแผ่นได้ โดยไม่ต้องง้อ Printer ขั้นเทพ

พอดีผมมี Term Project ของที่เรียน ป โท ครับ โดยต้องออกแบบระบบลง Blue Print ขนาดกระดาษ A0 ครับ ซึ่งผมได้ทำบน Draw.IO กับเพื่อนในกลุ่มครับ TIPS: เมื่อได้ไฟล์รูปภาพ หรือ PDF ขนาดกระดาษ A0 แล้วต้องทำอย่างไรต่อหละ

[JAVA] Thread Pool ใน Java

ช่วงนี้งานเยอะครับ ผมได้รับมอบหมายงานให้ลองปรับระบบงานเดิม ให้มันรองรับงานได้มากขึ้น และหนึ่งในเทคนิคที่ผมเลือกใช้ การทำงานแบบ Asynchronous ครับ โดยการทำงานแบบนี้สิ่งคนสั่ง สั่งงานเสร็จปุ๊บ ไม่ต้องรอผลลัพธ์ครับ แล้วให้ระบบมันทำงานต่อไปจนเสร็จ และแจ้งค่อยแจ้งผลลัพธ์ให้ Client รับทราบครับ แล้ว ThreadPool มันเกี่ยวยังไงหละ เจ้า ThreadPool มันเป็นวิธีการนึงที่ช่วยในการจัดการกับ Resource ครับ ถ้าเป็นเมื่อก่อนเวลาเราจะแตกงานให้ใช้ CPU ของเครื่องให้มันคุ้มค่าสิ่งที่ทำกัน คือ การ New Thread แยกเลยครับ ตาม Code ตัวอย่างครับ ปล. Code นี้มีปัญหานะครับ Run ไปเรื่อยๆ จาก Code ในข้างต้น ถ้ามีงานสัก 100 ชิ้น และต้องการแตก Thread จะพบปัญหาของการไปเขียน Thread แยกเอง ถ้าไม่เชี่ยว หรือเชี่ยวแล้วอย่าทำครับ เพราะ ทำอะไรไว้ ต้องไปจัดการให้เรียบร้อยด้วยนะครับ เพราะ เราต้องการคุมเกม แต่ถ้าเกิด Exception ขึ้นมาแล้ว เราต้องจัดการกับ Thread ที่มีปัญหาเองนะครับ ไม่งั้นมันจะแอบกิน Resource ของระบบไปเรื่อยๆจน System Down ลงไปครับ หรือ  ถ้าเราต้องการควบคุมว่ามีแต่ 5 Thread เท่าที่นั้นสามารถทำงานได้พร้อมกัน โอ้ววต้องไปเขียน Semaphore กันวุ่นวายเลย พระเอกของเราครับ แนวคิดของ ThreadPool จึงเกิดขึ้นมาครับ เพื่อมาเป็นตัวช่วยในการจัดการงานทั้งหมดให้งาน หรือใช้ Resouce ได้คุ้มค่า เพราะในแนวคิดของการ Caching Thread ทำงานเดียวกัน แต่ทำไมเยอะแยะสร้างตามที่มันสามารถทำงานได้พร้อมกัน และเมื่อมันทำงานเสร็จ โดย Thread ที่ทำงานเสร็จแล้วก็จะกลับไปเป็นสถานะ Idle และรอการ Reuse หรือถูกทำลายไปครับ สำหรับใน Java มีตัว…

[JWT] Idea การออกแบบ Token สำหรับ Microservice

พอดีลองมาเยอะครับ เลยขอสรุป Pattern ที่ใช้ครับ Blog ก่อนอื่น ผมแยก Token ออกเป็น 2 กลุ่ม ได้แก่ Access Token กับ Refresh Token โดยแต่ละอันมีรายละเอียด ดังนี้ My Token Pattern – Access Token – Refresh Token สำหรับการตรวจสอบ JWT ว่ามีอะไรดูจาก

[DB] DBeaver – เครื่องมือที่ช่วยให้การจัดการ Database เป็นเรื่องง่ายๆ

หลังจากเข้าไปดูปัญหาของหลายๆทีม พบว่า Tools ตัวเก่าอย่าง WinSQL มันเก่ามาก น่าจะ 15 ปี และ ถึงว่าเป็น Software ที่ใช้คุ้มค่าเกินราคาจริงๆครับ แต่ต้องซูฮกคนออกแบบด้วยทั้งตัว Protocal – ODBC และภาษา SQL จึงทำให้ Tools ตัวนี้ตายยากมากๆครับ แม้ว่าจะมีปัญหาจุกจิมากครับ ทั้งปัญหาการเอาผลลัพธ์ที่ได้จาการ Query ไปใช้ต่อ หรือการที่ User ต้องเชี่ยวมากจำ Column ได้แม่นครับ แต่หลังจากนี้ปัญหาจะหมดไปด้วยเจ้า DBeaver ครับ โดยเวอร์ชัน Community Edition ผมได้ลองใช้ และแนะนำในองค์กรครับ มันเพียงพอกับการใช้งานทั่วไป เช่น เริ่มติดตั้งกันเลย มาลองเชื่อมต่อ DB2 มาลองใช้ DB ของ Microsoft บ้าง

[BPMN] มา Test BPMN ที่สร้างจาก Camunda กันครับ

หลังจากยุ่งกับงานประจำนานเลย ตอนนี้เริ่มกลับมาทำงาน Thesis แล้วครับ ถ้าใครสร้าง BPMN ด้วย Camunda ไปแล้วนั่น หาจะทดสอบมีได้หลายวิธีครับ เช่น แต่ถ้ามาดูที่ตัว Camunda มีตัวช่วยสำหรับ Test เหมือนกันครับ โดยมีตัวช่วย ดังนี้ สร้าง BPMN ก่อนครับ มาลุย Code กันดีกว่าครับ สำหรับ Tools ที่ผมใช้ IntelliJ กับ Camunda Test Project Template ครับ เมื่อ Generate Project มาแล้วจะพบตัว InmemoryH2Test กับ process.bpmn ไม่ต้องสนใจครับ เราสร้างใหม่อยู่แล้ว เมื่อได้ Unit Test เปล่าๆขึ้นมาแล้วให้ใส่คำสั่งลงไปใน Class simpleLoanTest  ครับ สร้าง Test initial @Before เพื่อบอกว่าก่อน Test ต้องมีการดึง BPMN Engine ออกมา เพื่อใช้งานก่อนครับ จากนั้นลุยสร้าง Test ตามเส้นทางที่กำหนดเลยครับ โดย @Test  เพื่อบอกว่าเป็น Test Case ครับ และ @Deployment  สำหรับบอกว่าเราจะทดสอบ BPM์N อันไหนครับ ในที่นี้เป็นไฟล์ simpleLoan.bpmn  ครับ ทดสอบ Run Unit Test ดูครับ หมายเหตุ : ผมยังเล่นกับแต่ User Task นะครับ แต่ส่วนอื่นๆ ยังไม่ได้ทดสอบนะครับ ERROR ที่พบ ถ้าพบ Error ENGINE-16004 Exception while closing command context: Can’t find scripting engine…

สรุปงาน .NET Conf 2018! BKK

วันนี้ผมมาแบบงง จริงๆมาเปลี่ยนที่ทำ Thesis และก็ฟังหัวข้อที่สนใจครับ ผมเลยอาจจะเก็บรายละเอียดมาไม่ครบนะครับ โดยสำหรับสถานที่จัดงานอยู่ที่ Launchpad ในถนนปั้น หรือ ซอยปั้น ห่างจาก BTS สุรศักดิ์ ไม่เกิน 500 เมตรครับ 09:30-10:20| What’s coming to C# Speaker: Will Fuqua A look in the future: Nullable reference types, recursive patterns, asynchronous streams and more. C# / TypeScript จากแนวโน้มของ stackoverflow insight 2017 ยังเป็นที่นิยมครับ dotnet strategy 2017 (WIN – WIN ครับ) โดยจะเป็นการ C# 7.x Feature C# 8.0 Feature สำหรับผมนะครับตัว Default Interface ไม่จำเป็นอย่าใช้ เพราะ มันมีโอกาศเกิด diamond inheritance problem ได้ครับ 10:40-11:30| Build Great Libraries using .NET Standard Speaker: Aaron Amm Theeranit 11:30-12:20| Code at scale Speaker: Joel Dickson Agoda ใช้ Flow ตาม Git เลยครับ แต่ Branch จากนั้นทำเสร็จ Pull Request Good Code…