Category Software Development

Rewrite code is Refinance !!!

Blog นี้พยายามเขียนเป็น 2 ภาษา แม้ว่าผมจะรู้ภาษาอังกฤษแค่งูๆปลาๆนะครับ เข้าเรื่องเลยดีกว่าลองมาดูคำศัพที่คิดว่าควรรู้กันก่อน ทำไมต้อง Refinance แล้ว Refinance มันไปเกี่ยวกับ Rewrite code ยังไง ? ลองคิดดูทำไมเราต้องเขียน Code ใหม่หละ ? รู้จักกับ Technical Debt ก่อน แล้วที่เขียน Code ที่เขียนใหม่มันไม่ต่างกับ Refinance เหรอ  ? แล้ว อะไร คือ สิ่งที่ดีที่สุดหละ ปิดท้ายด้วย Code ที่คิดเอง ไม่รู้มีคนคิดซ้ำไหมนะ ลองอ่านดูครับ ^___^ Rewrite Code…

Introducing Event Storming

ช่วงนี้หัวหน้าให้ผมดูแลน้องๆ สรุปบทความจาก MSDN Magazine ผมมองเป็นของดีที่น่าจะไม่ค่อยมีคนอ่านมากนักนะครับ จากที่ช่วยหัวข้อของน้องไป ไปสะดุดกับ Blog ที่มีการอ้างอิงจากบทความครับ เรื่อง “Introducing Event Storming” เลยนำมาสรุปไว้นะครับ What is Event Storming Event Storming เป็นกิจกรรมที่ให้เราช่วยสำรวจสิ่งที่เราสนใจ หรือขอบเขต(Domain) ของธุรกิจที่ซับซ้อนออกมาครับ เน้นคำว่า “Visualize everything” ทำให้เห็นภาพ และ “Outside-in” Event Storming is good How does it work 📌 Invite the right…

Refactoring for Y

วันนี้เป็นวันที่เดินทางมาไกลมากกก จากสายใต้ใหม่สู่ Geeky Base (ออกตั้งแต่ 07:00 โมง มาถึงประมาณ 08:40 ครับ) มารู้จักกับคำว่า “Refactor” มาขึ้นครับ โดยคุณ J Prayoch Rujira ก่อนที่เริ่มให้แต่ละคนทำการ เมื่อพูดถึงการสร้าง Software เราคงเคยเจออะไรแบบนี้ Later is never !!!!! ที่หลังมันไม่มีจริง คนทำลืม หรือ ออกไปทำงานที่อื่นแล้ว Code ที่เขียน Support Change !!! ได้แค่ไหนหรือสะสม Technical Dedt อยู่ Refactoring คือ อะไร…

เมื่อ Column Index ใช้กับ MS SQL Server ไม่ได้ !!!

Microsoft SQL Server

หลังจากทีเขียน Code กับ Product ที่ใช้กับตัว DB2 มานาน คราวนี้มีโอกาสได้ย้ายบ้าน จริงไม่เชิงย้ายหรอกครับ แค่เอา Product ตัวเดิม จากที่มันใช้ได้กับ DB2 ไปใช้กับ MS SQL Server ให้ได้ครับ พอให้น้องที่ทำงานมาลองทำ POC ดู อ้าว Error Table มันมี Column ที่ชื่อว่า Index แล้วทางแก้หละ จะทำ view ครอบหลอกก็ไม่ได้และ มีทั้ง สิ่งที่ผมทำ มีดังนี้ครับ ที่ผมทำแบบนี้ เพราะ ต้องการใช้ตัว Code…

[CodeMania100] Emergent Design with Code

Blog  นี้สรุปมาจาก CodeMania 100 : Coding Defines Anything ลองดูแล้วมันน่าจะแยอะ เขียนแยกง่ายกว่า สำหรับเรื่องนี้เป็นเรื่อง Coding Defines Reality – Emergent Design with Code  โดยคุณ Varokas Panusuwan เข้าเรื่องเลยดีกว่า หมายเหตุ: สรุปตามความเข้าใจของผม และอาจจะมีอารมณ์ร่วมแถม 5555 ย้อนไปถึงการ Design ในการพัฒนา Software ถ้าไม่ลืมจากที่เรียนไปมันมีเรื่อง SDLC (Software Development Life Cycle) มันมีขั้นตอน ตั้งแต่ Requirement > Design > Implementation >…

Tech@Agoda#03: The Functions and The Machines – Functional Programming

หลังจากมืนๆไปกับการสอบเพื่อเข้าเรียนปริญญาโทที่จุฬาในตอนเช้า เมื่อสอบเสร็จมันมี Calendar แจ้งมาว่าผมมีสิทธิ์เข้าไปงาน Tech@Agoda เลยแวะเข้าไปฟังครับ แต่ผมเข้าฟังแค่เรื่องเดียวนะครับ  เนื่องจากต้องมีภาระกิจในช่วงเย็นครับ สำหรับการเดินทาง ผมงงครับ เห็นในกำหนดการบอกว่าให้ไป Starbucks ขั้น 3 แต่มันมี 2 ที่ มีทั้งในตัว Central World กับอาคาร Office เลยเสียเวลาเดินวนไปครับ ฮ่าๆ เข้าเรื่องเลยดีกว่า The Functions and The Machines – Functional Programming (Speaker: Dave Ravitat) มุมมองของ Speaker Assembly is Higher !!! แล้วทำไมหละ…

[CMMI] มาลองทำ OPM กับตัว Jenkins และ dotnet

หลังจากได้ซุ่มตัว Continuous Integration กับน้องที่ทำงาน โดยใช้ jenkins และ dot net มาสักระยะจนสามารถใช้งานได้แล้ว วันนี้ผมมาเขียนสรุปในแง่ของการทำงานกับ CMMI บ้าง ว่าต้องทำอะไร มีกระบวนการยังไงบ้างครับ โดยสิ่งที่ผมต้องทำ คือ ตัว OPM และ CAR มันเป็น Process หนึ่งใน CMMI ครับ ตอนนี้มองเฉพาะ CMMI LV5 คือ การ Optimizing / Continuous Process Improvement นำข้อมูลที่ได้มีวิเคราะห์หาสาเหตุ และปรับปรุงกระบวนการทำงานให้ดียิ่งขึ้น โดยจะมี Process หลัก 2 ตัว…

Requirement ผิดแค่ลบหนึ่งวัน !!!!

เมิ้อลูกค้าสั่งแก้โปรแกรม

ว่าจะไม่เขียน Blog นี้แล้ว แต่มันอดเขียนไม่ได้จริง กล่าวถึง DataSet LQ1 ของ BOT เข้าระบบ BOTDMS แหละ Site ที่จ้างบริษัทที่ผมรับเงินเดือนไปทำเนี่ย ไม่รู้ว่าที่ต้องส่ง BOT จริงๆ ต้องส่งอย่างไร มันเลยเป็นปัญหาที่ว่า UAT บน Production เนี่ยแหละ แล้วมันมีช่วงการ UAT ไปทำไม ในเมื่อ User ต้องเซ็นผ่านให้ตรงกับ KPI องค์กร จากนั้นมาทวงบุญคุณวนไปเรื่อยไป มาที่ Timeline ของ DataSet ชุดนี้ก่อน มาที่ฝั่ง User ก่อน…

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

พอดีหัวหน้าให้เอา Framework ใหม่ที่มาใช้แทน Legacy System ไปลองนำเสนอกับ Consult ของบริษัทดูครับ เค้าก็ถามหลายเรื่องเลยครับ และบอกให้นำเรื่อง 4+1 architectural view model  มาใช้ในการนำเสนอครับ โดยนำเสนออย่างไร และตอบโจทย์อะไร ลองดูกันได้เลยครับ 4+1 architectural view model มีอะไรบ้างหละ  สำหรับการแสดง 4+1 architectural view model ในมุมต่างๆ จะใช้ Diagram อย่าง UML มาช่วยอธิบายครับ โดยมีรายละเอียดได้ ตามนี้ หลังจากที่ฟัง Consult ของบริษัทแล้ว รุ้สึกงานด้านเอกสารด้านนี้ยังไม่มีเลย และเข้าใจความสำคัญของ Diagram…

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 ก็ได้ หลังจากทำงานนี้มานานจนเขียนได้หลาย Blog ตาม Tag Technical Debt มุมมองของคำว่า “Technical Debt” ของผมเปลี่ยนไปมาก…