อย่าสร้างเทพ หรือผลักใครไปเป็นเทพ

วันนี้ผมน่าจะเขียน Blog แปลกเลย แหวกจากแนว Software พอสมควรเลยครับ หลังจากที่ได้ลองนั่งคิดกับตัวเอง และมองอะไรรอบตัวเราแล้ว ตอนนี้เรากำลังเป็นเทพไปดับไฟให้ใคร หรือป่าว หรือเรากำลังผลักใครไปเป็นเทพ เป็นเทพก็ดีแล้วนี่ ทั้งเก่ง มีความสามารถ แต่ไม่มีใครทำทุกอย่างได้หมด ด้วยตัวคนเดียวหรอกครับ ลองดูอย่าง Software ที่เราเขียนออกมาก็ได้ครับ มันเทพมา แจ่มโคตรเมื่องานเข้ามาน้อยๆ แต่พองานเยอะขึ้นหละ เริ่มมีข้อผิดพลาดแล้ว สิ่งที่เราทำได้มีทั้งแก้ Code แบ่งงานกันทำ Software มันยังมีการกระจายงานครับ คนๆอย่างๆเราต้องมีการกระจายงานครับ   ไม่มีใครทำทุกอย่างได้หมด ด้วยตัวคนเดียวหรอกครับ

4+1 architectural view model กับมุมมองของธุรกิจ

พอดีหัวหน้าให้เอา Framework ใหม่ที่มาใช้แทน Legacy System ไปลองนำเสนอกับ Consult ของบริษัทดูครับ เค้าก็ถามหลายเรื่องเลยครับ และบอกให้นำเรื่อง 4+1 architectural view model  มาใช้ในการนำเสนอครับ โดยนำเสนออย่างไร และตอบโจทย์อะไร ลองดูกันได้เลยครับ 4+1  มีอะไรบ้างหละ architectural view model User view – Use Case Process view – Activity diagram, Sequence Diagram Development view – Component diagram Logical view – Class diagram Physical view – Deployment Diagram ถ้าเขียนได้ชัดเจนมันตอบปัญหา User หรือ IT ได้ เช่น การ Scale ระบบ หรือการจัดหา Licence เพิ่มครับ หลังจากที่ฟัง Consult ของบริษัทแล้ว รุ้สึกงานด้านเอกสารด้านนี้ยังไม่มีเลย และเข้าใจความสำคัญของ Diagram พวกนี้ มันคล้ายกับที่ทีมวิศวกรที่ใช้พิมพ์เขียว ตอนทำการสร้างตึกครับ

[DB2] db2support เครื่องมือสำหรับเก็บข้อมูล เพื่อวิเคราะห์ปัญหาครับ

จริง Blog นี้ดองมานานหลายเดือนเลย สำหรับวันนี้ได้เวลาเคลียร์ HDD เลยไปเจอรูปที่เตรียมไว้ทำ Blog เลยตัดสินใจมาเขียนให้จบดีกว่าครับ โดยวันนี้เรื่องของ db2support  แล้วตัว db2support  คือ อะไร หลายคนอ่านชื่อแล้วอาจจะคิดว่าพิมพ์คำสั่งไปปุบ มีทีมงานจาก DB2 วิ่งเข้ามาดูที่ DB Server ของเรา แต่จริงๆไม่ใช่นะครับ มันเป็นเครื่องมือที่เก็บข้อมูลต่างๆ เพื่อนำมาวิเคราะห์ปัญหาครับ db2support  ใช้งานอย่างไร แค่พิมพ์คำสั่งครับ สำหรับรายละเอียดดูได้จากที่นี้ครับ โดยใน Blog นี้ผมใช้คำสั่งดังนี้ Note: บน Linux/Unix จะมี Flag -C = Compress และ -c connect แต่ Windows มันไม่ได้สนใจตัวเล็กใหญ่ครับ เห็นมันน้อยๆ แต่ Option ของคำสั่งนั้นเพียบครับ โดยผมให้เห็นข้อมูลพื้นฐาน จาก Database (-d) BFMAPR และให้ทำการบีบอัด (-C) โดยได้เป็น .zip พอดีผมใช้ Windows เป็นหลัก ถ้าเป็นค่ายอื่นๆ ก็จะเป็น .tar โดยสิิ่งที่มันเก็บสามารถดูได้จากที่นี่ครับ หลังจากกดคำสั่งไปแล้ว รอมันทำงานครับ โดยสำหรับ Windows มันอยู่ใน โพลเดอร์ IBM\SQLLIB\BIN ครับ แต่ถ้าต้องการเปลี่ยน Location เพิ่ม param [outputdir] เข้าไป Pattern Command จะประมาณนี้ใช้ได้ทั้ง Windows (ผ่าน  “DB2 Command Window – Administrator” / Linux / Unix เมื่อลองเปิดดูมันสร้างเว็บ เราสามารถไล่ดูในสิ่งที่ต้องการได้ครับ Tools ตัวนี้เหมาะสำหรับอะไร ? 2024 Update เขียนไว้ตอนปี 2016…

สรุปงาน FinTech Developer Conference 2016

งานวันนี้รู้สึกดีมาก ได้เป็นตัวแทนของบริษัทในการไปฟัง FinTech Developer Conference แต่ส่วนตัวผมคิดว่าเป็นชื่องาน National E-Payment กับ FinTech น่าจะโอเคกว่าครับ บรรยายโดย ดร.อนุชิต อนุชิตานุกูล ครับ สำหรับใน Blog ตอนนี้ ผมขออ้างอิงกับ Blog เดิม “สรุปงาน Any ID, Privacy ที่ Software Park แจ้งวัฒนะ”  ที่เกี่ยวกับ National E-Payment นะครับ  ซึ่งใน Blog ผมจะเขียนเสริม หรือเติมสิ่งที่ขาดไปนะครับ คำเดือน ข้อมูลใน Blog นี้ ผมเขียนตามความเข้าใจของผม อาจจะมีเนื้อหาบางส่วนที่ผิดพลาดได้ครับ มามองภาพรวมของ National E-Payment (ตอนนี้ PromptPay) – PH1 – ทำแล้วมี 5 โครงการย่อย อยากให้ทุกคนเข้าระบบภาษี ทำบัญชีเดียว เพราะ ถ้าทุกคนเข้าระบบ มันจะโกงยากขึ้น เมื่อทุกคนช่วยกันจ่ายภาษีจะลดลง เนื่องจากภาครัฐต้องสภาพแวดล้อมการแข่งขันให้ต่างชาติเข้ามาลงทุนให้มากขึ้นครับ – PH2 – ตลาดเงิน ตลาดทุน (กำลังทำ) กองทุน (Plan ว่าทำต่อไป) – PH3 – การค้าระหว่างประเทศ  ทำไมต้องมี National E-Payment ต่อไปก็จะเป็นสรุปคำถามที่เกิดมีการซักถามระหว่างในงาน คั่นด้วยของว่างครับ ภาพรวมของระบบเดิม กับของใหม่ (เอาให้เห็นภาพนะครับ) สิ่งที่คาดหวังว่าจะเกิด โอกาสของ FinTech เมื่อเราเข้าใจตัว Infrastructure แล้ว National E-Payment จัดการให้ในระดับหนึ่งแล้ว ที่เหลือเป็นโอกาศให้ FinTech ต่างๆ มาค้นหา และเติมเต็มโอกาศครับ สำหรับ Session ผมรู้สึกผิดหวังเล็กน้อย ตอนแรกเข้าใจว่ามีอธิบายในแนว Programming บอก API หรือ Message ที่ใช้นะครับ แต่จากการได้มาฟังงานนี้ ทำให้ผมมองเห็นภาพของตัวระบบชัดเจนมากขึ้นครับ…

Technical Debt ไม่ได้เกิดจาก Developer อย่างเดียว !!!

ภาพจากเว็บ http://blog.crisp.se/2013/07/12/henrikkniberg/the-solution-to-technical-debt

วันนี้น่าจะเป็นวันที่ผ่านมากับ 1 ปี กับ อีก 6 เดือน สำหรับงานที่เข้ามาทำ BOTDMS – DataSet เป็น Module ที่เหมือนถูกทิ้งไว้กลางทาง หลายคนอาจจะส่งสัยว่าทำไมผมเขียน Blog ตอนนี้ขึ้นมา โดยที่ผมอยากเขียน เพราะอยากแชร์ประสบการณ์ครับ ถ้าเป็นเมื่อ 2-3 ปีก่อน ผมมองว่าเรื่อง Technical Debt มันเกี่ยวกับตัว Developer เป็นหลัก แต่หลังจากทำงานที่เรียกว่าเป็น Full-Stack ก็ได้ หลังจากทำงานนี้มา มุมมองของคำว่า “Technical Debt” ของผมเปลี่ยนไปมาก ผมว่าหนี้พวกนี้ ไม่ได้เกิดจากความมักง่ายของ Developer แต่เกิดจากทุกๆคนที่ทำงานร่วมกัน ทำไมหละ ลองมาดูเหตุผลของผมกัน – User ไม่เข้าใจสิ่งที่ตัวเองทำ รู้แต่ว่าเป็นงานมรดก ที่ส่งมาจากรุ่นสู่รุ่น แต่ไม่มีใครรู้ว่าจริงๆ คือ อะไร กรุงโรมไม่ได้สร้างในหนึ่งวัน Software ก็เช่นกันครับ – DRS / CRS คือ เอกสารที่ทำให้มีส่ง เพราะ งานที่ผมต้องทำจาก DRS มันมีแค่ตัวย่อ 3 ตัว – ความมักง่ายของทีม BA (Business Analyst) ที่ล่ามระหว่างโลก IT กับ โลกของธุรกิจ – มาผู้ที่อยู่เกือบปลายทางอย่าง Developer (SA+Programmer) บ้าง – มาผู้ที่อยู่ปลายทาง QA – Chain สุดท้ายและทีม MA ทุกอย่างมีเหตุมีผล Code ไม่ดี อ่านยาก Code เน่า งานไปถึงลูกค้ามี Defect ทำไม Dev ไม่ Test ก่อน แต่ทำไมไม่ลองย้อนกลับไปมองว่าต้นเหตุที่แท้จริงของปัญหา คือ…

Introduction to Machine Learning

ภาพจากเว็บ https://pixabay.com/p-503588/?no_redirect

สำหรับ Blog นี้เป็นการสรุปจากที่ได้ฟัง ได้อ่านมาจากหลายๆที่นะครับ และเนื่องด้วย ผมไม่เก่ง Math ฉะนั้นบางอย่างจะมีอธิบายผิดพลาดได้ครับ คำว่า Artificial Intelligence(AI) และ Machine Learning(ML) มันเหมือน หรือต่างกันอย่างไร แล้ว Programming กับ Machine Learning(ML) และตัวสุดท้าย พอดีถามอากู๋แล้วคนถามเยอะ Data Mining(DM) กับ Machine Learning(ML) Data Mining Machine Learning Association rules Supervised Learning Clustering Unsupervised Learning Classification Reinforcement Learning Sequencial Pattern Sequence Similarity Machine Learning(ML) มัน คือ อะไร “A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience” Tom Mitchell (1988) รูปแบบหลักๆของ Machine Learning(ML) มีอะไรบ้าง Supervised Learning : y = f(x) Unsupervised Learning : f(x) Reinforcement Learning :…

[CR] ก๋วยเตี๋ยวเรือสูตรต้นตำรับป้าสมจิตร เซนต์คาเบรียล

พอดีวันนี้มีธุระต้องออกมาทำระหว่างพักเที่ยงที่วงเวียนใหญ่ครับ ตอนเดินทางกลับเจอร้านก๋วยเตี๋ยวเรือ บอกว่าสูตรต้นตำรับป้าสมจิตร พิกัดร้านอยู่ข้างโรบินสัน ลาดหญ้า เดิมครับ (ได้ข่าวว่าจะมาเปลี่ยนใหม่อีกครั้งเป็นเซนทรัล ไม่รู้ว่าจริง หรือป่าวนะ) พอมาถึงร้านผมลองสั่ง 2 ชามครับ ปกติกินที่ร้านป้าสมจิตร ตรงข้ามเซนต์คาเบรียล มันจะชามเล็กครับ ไม่เกิน 20 บาทนะ (แวะไปครั้งสุดท้ายประมาณ 5 ปีก่อนครับ ต้นฉบับน้ำตกกลมกล่อม แต่เค็มขึ้นนะ) หลังจากสั่งไปในที่สุดได้มาครับ 2 ชาม ปริมาณพอกับที่เคยกินที่ เซนต์คาเบรียล น้ำตกข้นไปนิดนึงครับ แต่ไม่เค็มเหมือนต้นฉบับ เข้าใจว่าความเค็ม อาจจะเกิดจากอุปกรณ์ที่ใช้ทำก็ได้นะ ส่วนราคา 35 บาท แอบแพงไปนิดนึง ช่วงระหว่าง 25-30 บาท ราคากำลังดีครับ คราวหน้าแวะมาลองกินข้าวมันไก่กว่างเจาครับ จริงๆ ตอนแรกผมเข้าร้านมาเพื่อข้าวมันไก่ของชอบ แต่มันหมด T…T

สรุปการอบรม A Tool Development for Ontology-Based Applications

เมื่อวันเสาร์ที่ผ่านมาครับ 3 ก.ย. 59 ผมได้ไปงานอบรมเกี่ยวกับ Ontology ครับ จัดที่คณะเทคโนโลยีสารสนเทศ มหาวิทยาลัยเทคโนโลยีพระจอมเกล้าพระนครเหนือครับ (เพิ่งรู้ว่าถ้านั่ง Taxi มาห่างจากบ้านไม่ถึง 10 km นั่งรถเมล์นี่อ้อมโลก) สอนโดย ดร. มารุต บูรณรัช ครับ Ontology คือ อะไร ? แผนผังความรู้ (Mind Mapping) ที่มีการกฏเกณฑ์เข้ามาครับ ถ้าเข้าใจว่า OOP มาระดับนึง ผมว่าไปได้เร็วครับ Concept มีความคล้ายคลึงกันในระดับนึงนะ ที่เน้นการจัดหมวดหมู่ ใช้งานการในทุกสายงานเลยนะ ไม่ใช่เฉพาะ IT ทางฟากสังคม หรือแพทย์ก็มีใช้นะ (Ontology มันเริ่มมาจากวิชาปรัชญา โดย อริสโตเติล นะ) Ontology  ถ้าให้คอมพิวเตอร์รู้จักต้องทำในมาตรฐาน OWL ซึ่งมันมีพื้นฐานมาจาก XML >> RDF >> RDFS >> OWL Ontology เป็นแผนภาพ ถ้ามองในด้าน DB มัน คือ Schema ครับ โดยการตีความ Ontology นั้น ต้องมี Data(Record ใน DB) หรือ Instance มาให้มันทำงานครับ Ontology  มองข้อมูลอย่างไร มองเป็น Concept ตีว่าเป็นหมวดหมู่ครับ – กลุ่มที่เราสนใจ ใน Concept มีคุณสมบัติ (Property) หรือ part-of Intrinsic – มีมาตั้งแต่เกิด เช่น ส้ม มีเปลือก รสชาติเปรี้ยวหวาน extrinsic – ได้มาที่หลัง เช่น ราคา Concept แต่ละตัวมีความสัมพันธ์กันครับ IS-A ใน OOP เป็น…

นั่ง 542 ผิด ก็ไม่ได้แย่เสมอไปนะ

Update 2021-05-26 : 542 ยกเลิกบริการแล้วครับRef: Bangkokbusclub.com สาย 542 ยุติการให้บริการแล้ว วันนี้หลังจากเขียน Blog เสร็จ ผมออกไป MBK เพื่อใช้สิทธิ์ Burger King ของ Galaxy Gift ครับ ตอนแรกผมวางแผนนั่ง 511 ป้ายฟ้า (ไม่ขึ้นทางด่วน) มาลงที่เซนทรัลเวริ์ด แล้วเดินมาครับ แต่พอดีเห็น 542 วิ่งมาถึงแล้ว ผมเลยวิ่งขึ้นไปเลย จากนั้นดู Udemy ไป 4-5 ตอนครับ กว่าจะหลุดจากสมาธิ ตอนที่รถเสียที่วงเวียนใหญ่ครับ เพิ่งรู้ว่าที่มันนานๆ เพราะ ผมนั่งรถเมล์ 542 ที่วนขวาครับ อ้อมไปวงเวียนใหญ่ก่อน รถเสียที่วงเวียนใหญ่ ผมฉุดคิดได้ว่า เคยมีแพลนนั่งรถจากวงเวียนใหญ่ ไปแถวๆสยาม หรือ จุฬา ครับ เพื่อลองดูว่าถ้าเรียน ป โท ต้องใช้เวลาประมาณไหน คราวนี้ได้โอกาสเลย รถเสียตอน 13.35 รถเมล์สาย 542 คันถัดไปมา 13.46 ผมเลยจับเวลา และดูเส้นทางเลยครับ มันไป ได้นะ ถึง 14.20 ประมาณ 34 นาทีครับ เดี๋ยววันทำงาน ต้องหาโอกาสไปลองนั่งอีกครั้งบ้าง จะได้เผื่อเวลาตอนรถติดได้ครับ