[DB2] สร้าง VM สำหรับ DB2 11.1 Fixed Pack 4 บน Ubuntu 18.04.2

IBM DB2

หลังจากโน้มน้าวทีมให้เปลี่ยนมาใช้ VM ที่เป็น Linux ได้ หลังจากใช้ Windows มานานนนนนแสนนานครับ โดยอันนี้ผมจะลงแบบ Native นะครับ เพราะถ้าใช้ Docker มันจะเปลืองพื้นที่มากเปิดไป Docker Image ของ DB2 Express C 11.1 กินเนื้อที่ประมาณเกือบๆ 4 GB และขึ้น Database ได้แค่ 1 Database เองด้วย สำหรับขั้นตอนการทำ VM ก็ตาม List นี้เลยครับ Prepare Host Install DB2 11.1.4.4 Post Install Reference

[CR] Review Feature ของแอร์ Hitachi Frost Wash

สำหรับ Feature Frost Wast ของแอร์ Hitachi เค้าบอกกันว่าแอร์มันสามารถล้างตัวเองได้นะ แต่ที่อ่าน Review มาหลายๆที่ไม่เคยบอกเลยว่า Feature Frost Wast เป็นอย่างไรครับ เอาหละหลังจากผมกดปุ่ม F-Wash (Frost Wast) มันเกิดอะไรขึ้นมา สุดท้าย มันแค่ช่วยยึดเวลาการล้างแอร์ออกไปครับ การตามช่างเข้ามาล้าง ตามรอบการบำรุงรักษาแอร์ดีที่สุดครับ ถ้าใครสนใจมีรีวิวเต็มๆใน pantip

[BPMN] Deploy Process ผ่าน REST-API

จริงๆ ใน Blog ตอนก่อน ช่วงที่ผมได้เล่นกับตัว Camunda BPMN ช่วงแรกจะพบว่าการ Deploy Process นั้นยุ่งยากครับ ต้องทำเป็นไฟล์ .war แล้วนำไปวางที่ Tomcat ครับ แต่จริงๆ มันมีวิธีการที่ง่ายกว่านั้น คือ การใช้ REST-API ครับ โดยมีข้อกำหนดของ Web Service ดังนี้ครับ สำหรับตอนนี้ เราจะมาลองกันครับ โดยใช้ Tools ที่มีชื่อว่า POST-MAN สำหรับการทดสอบครับ โดยใน Blog ตอนนี้ ผมทดสอบ Create และ Delete BPMN ที่เราได้เพิ่ง Deploy ไปครับ ก่อนจะ Create สิ่งที่ต้องเตรียม CREATE ผ่าน REST-API Method = ‘POST’ DELETE ผ่าน REST-API Method = ‘DELETE’ cascade = ถ้ามี Process ที่กำลังถูกลบ ยังมี Instance ที่ยังทำงานอยู่ ให้ระบบลบ Instance  ไปด้วย หรือไม่ (true) หรือให้คงอยู่จนจบ (false) จบไปแล้วครับกับการ Deploy Process ผาน REST-API ยังมี Method อื่นๆ อีกที่น่าสนใจนะครับ REST-API : Deployment  

[CUSE] ขอทุนอุดหนุนการวิจัย

หลังจากนั่งทำ Paper กับ อาจารย์ที่ปรึกษาช่วงปีใหม่ ตอนนี้ผมก็ออกมาแล้วครับ ว่า Paper ที่ส่งไปติดแล้วครับ Conference Accept Paper เรียบร้อยแล้ว ขั้นตอนถัดมา คือ การขอทุน เพื่อให้ไม่พลาดแบบ Proposal โดนวางยาแบบมืนๆ คราวนี้ ผมขอตัวอย่างมาทั้งหมด 5 Sample ครับ เอกสารที่ต้องส่งก่อนไปนำเสนอผลงาน สำหรับเอกสารขอทุนต้องมีเอกสารที่ต้องส่งก่อนไปนำเสนอผลงาน ได้แก่ เอกสารที่ต้องส่งหลังจากไปนำเสนอผลงานเรียบร้อย สำหรับเอกสารขอทุนต้องมีเอกสารที่ต้องหลังจากไปนำเสนอผลงานเรียบร้อย ได้แก่ สำหรับหลังไปนำเสนอผลงาน (Conference) เรียบร้อยแล้ว ผมมีเขียนอีก Blog นึงไว้ครับ [CUSE] สรุปเอกสารที่ต้องใช้สำหรับเบิกทุนไปนำเสนอผลงานที่ต่างประเทศ

[BPMN] Access Camunda H2 Database

หลังจากว่างเว้นไปกับ Blog ของ Camunda BPMN Engine ไปพักใหญ่ๆ คราวนี้มีเหตุต้องไปไล่ดูแล้วว่าตัว Camunda BPMN มันเก็บข้อมูลอะไรบ้าง เพื่อเอาไปใช้กับ Thesis ครับ โดยการเข้าถึงตัว H2 Local Database ของ Camunda มีวิธีการ ดังนี้ครับ เมื่อ Start ตัว Camunda เรียบร้อยแล้วให้เข้าไปที่ url http://localhost:8080/h2/h2 Login เข้า Database โดยใช้ข้อมูล ดังนี้ JDBC URL: jdbc:h2:./camunda-h2-dbs/process-engine Username: sa Password: sa ทดสอบ SELECT ข้อมูลออกมาดูได้เลยครับ Thesis ท้อแต่ต้องสู้ครับ

[CR] Xiaomi Purely Anti-Pollution Mask V.2

อันนี้เป็น Review หลังจากที่ใช้งานมาแล้วเกือบเดือนครับ จากช่วงต้นปีนี้ที่กระแส PM2.5 มาแรงแซงโค้งเลยครับ และแถมช่วงนี้ผมทำงานดึกด้วย แต่ก็ช่างมันเถอะครับ ก่อนที่ผมจะร่างกายแย่ไปกว่านี้ผมได้ทดสอบซื้อเจ้า Xiaomi Purely Anti-Pollution Mask V.2 ผ่านทาง Lazada ครับ สงวนราคาประมาณ 540 บาทครับ ใช้ Code ลด โปรลดทุดอย่างครับ หลังจากรอไป 2 วันเมื่อได้ของมาแล้วมาดูบรรจุภัณฑ์กันครับ เป็นกล่องที่ Import มาจากเมืองจีนจริงๆครับ เมื่อแกะออกมาพบของในกล่อง ดังนี้ครับ เวลาใช้งานก็ไม่ยากครับ เสียบชาร์จไว้ประมาณ 1-2 ชั่วโมงก็พร้อมใช้งานแล้วครับ ก่อนใช้งานตรวจสอบแผ่นกรองด้วยนะครับ พัดลม > แผ่นกรองสีเขียว > แผ่นกรองสีฟ้า ครับ สำหรับอายุการใช้งานประมาณ 10 ชั่วโมงครับ หลัง 10 ชั่วโมงลองดูแผ่นกรองได้เลยครับ ซ้าย-ก่อนใช้งาน / ขวา-หลังใช้งานมาแล้ว 10 ชั่วโมง ความเห็นส่วนตัวหลังจากใช้งานมา 2-3 สัปดาห์ครับ

[VM] Virtual Box ทำให้ตัว VM ตั้งเวลาไม่ให้เหมือนเครื่อง Host ได้

เนื่องจากพยายามย้ายงานที่เอาไปฝากบน PC หลายๆ เครื่อง ซึ่งมันลำบากพอตัวเลย ผมเลยย้ายมาที่ VM ครับ ซึ่งมันก็มีปัญหาอีกครับ เพราะ ตัว VM มันเชื่อเวลาจากเครื่อง Host ครับ ถ้าต้องมีเคสที่ต้องการจะปรับแก้เวลาของเครื่อง Guest หรือ VM ของเรา ปัญหา ตัว OS ของ Guest มันยอมให้ปรับครับ แต่พอผ่านไปสัก 3 นาที มันเด้งกลับไปเป็นเวลาเดิมครับ สาเหตุ เกิดจากตัว VM มันเชื่อเวลาจากเครื่อง Host ทางแก้ไข แน่นนอนว่ามีครับ นักพัฒนาทั่วโลกเจอกันครับ โดยทำตามขั้นตอน ดังนี้ครับ NOTE: ถ้าต้องการจะปิดปรับเป็น 0 แทนครับ Reference

[WIN] ติดตั้ง Windows Service ด้วย Command Line กันครับ

สำหรับหลายๆคนที่มีไฟล์ exe แล้วอยากจะผูกการทำงานให้อยู่กับ Service ของ Window ครับ ให้มันทำงานตั้งแต่เปิดเครื่อง หรือทำโดย User ที่สนใจ ตัว Windows เองมี Tools ที่ช่วยสำหรับงานนี้ครับ SC.exe การสร้าง Service รูปแบบคำสั่ง SC.exe CREATE [ServiceName – ไม่มี Space] binpath= “Full Path ของ exe ถ้ามี Space ให่ใส่เครื่องหมายคำพูดครอบด้วย” DisplayName= “ชื่อ Service สำหรับแสดงผล” start= {boot | system | auto | demand | disabled | delayed-auto} ตัวอย่าง การกำหนดคำอธิบายของ Service รูปแบบคำสั่ง ตัวอย่าง การหยุดการทำงานของ Service รูปแบบคำสั่ง ตัวอย่าง การลบ Service รูปแบบคำสั่ง ตัวอย่าง การเริ่มการทำงานของ Service รูปแบบคำสั่ง ตัวอย่าง การตรวจสอบสถานะของ Service รูปแบบคำสั่ง ตัวอย่าง SC.exe VS InstallUtil.exe ความแตกต่างระหว่าง SC.exe กับ InstallUtil.exe นั้น คือ ตัว InstallUtil.exe 1 executable สามารถลงแบบ Service ได้แค่ตัวเดียว เวอร์ชันเดียว (ดูจาก GUI) ที่เครื่องเท่านั้น ทำให้มีข้อจำกัดลง Service แบบหลาย Version ที่เครื่องเดียวกัน Reference

[CUSE] เขียน Paper

การเขียน Paper มันเป็นการสรุปแนวคิด นำเสนอแนวคิดที่กำลังจะทำ เพื่อให้เกิดการระดมสมองให้นักวิจัยทั่วโลกที่สนใจมาทำต่อ สรุปผล หรือ สรุปองค์ความรู้ที่ได้ครับ ซึ่งสำหรับนักวิจัยตัวน้อยอย่างผมเนี่ย มาสรุปประเด็นที่ควรระวังของการเขียน Paper ดีกว่าครับ หากมีเรื่องอื่นๆ เดี๋ยวผมมาเพิ่มเติมครับ สำหรับ Paper ของผมกว่าจะผ่านได้ มีการปรับแก้จากอาจารย์ที่ปรึกษาไปเยอะเลยครับ เนื่องจาก Skill ภาษาด้านการเขียนนั้นแย่พอสมควรครับ และมีการปรับตามข้อกำหนดของ Conference อีกครับ สำหรับงานของผมเป็นการทดสอบวีคมิวเทชัน (Weak Mutation) กับแบบจำลองบีพีเอ็นเอ็นครับ ว่าจัดได้อย่างไร และแนวทางการทำเครื่องมือเพื่อช่วยนักทดสอบครับ ใน Paper “A Weak Mutation Testing Framework for BPMN” ครับ นำเสนอช่วง 13-15 มีนาคม 2562 ที่งาน International MultiConference of Engineers and Computer Scientists 2019 (IMECS 2019)

[REGEX] ดักจับ Pattern ของ ISO8601 Repeating Interval

ช่วงนี้ก็ยุ่งๆครับ พยายามดัน ตัว Tool และ Paper ของงานวิจัยครับ โดยสำหรับผมทำเกี่ยวกับ BPMN พวกวันทีเวลาทั้งหลายเนี่ย มันจะถูกจัดเก็บในรูปแบบมาตรฐาน ISO8601 ครับ หลายคนอาจจะคิดว่ามันไกลตัว แต่จริงๆมันแทรกซึมได้ไปในวิถี Developer แล้วครัับ เพราะ ISO8601 ถูกบรรจุในมาตรฐานของ JSON ครับ ลองดูว่าคุ้นๆกันไหมเอ่ยยย DateTime เห็นกันบ่อยครับ แต่ที่แปลก และน่าจะถูกลืมน่าจะเป็นพวก ที่ถูกลืม เพราะ มันมีสิ่งที่น่าจะมาก่อนแล้วอย่าง CRON Format ครับ หรือชาวเพนกินเรียกว่่า CRON JOB ครับ เกริ่นนำมายาวพอสมควรเลยครับ คราวนี้มาลองดูว่าปัญหาที่ผมเจอ คือ อะไร ถ้าเป็น มาที่ตัว Repeating Interval มันมี Combination แบบไหนได้บ้าง เท่าที่ผมเข้าใจนะ มาที่พระเอกของเราแล้วครับ โดยสังเกตุได้ว่า {R[N]}/{Interval} ต้องมาคู่กันครับ ถ้าเขียน Code ดักใช้ Regular Expression ช่วย โดยดักตามกลุ่ม ดังนี้ สำหรับแบบที 1 จะได้เป็น กลุ่ม {R[N]} หรือ กลุ่ม {Date หรือ Time} หรือ กลุ่ม {Interval} โดยได้ RegEx ดังนี้ ผมได้เขียน RegEx ไว้ ดังนี้ครับ และสำหรับ Java ผมได้ทดสอบเพิ่มเติม เนื่องจากมันจะมีข้อจุกจิเล็กน้อยของแต่ละภาษาครับ ปรับให้มันซับซ้อนขึ้นตามข้อกำหนดที่ {R[N]}/{Interval} มาคู่กันครับ