เข้าโรงหนัง ในรอบ 5 ปี

หลังจากทำงานเสร็จ ลองแกะ Code เสร็จ ระบบงานที่ต้อง Port ออกมาได้ตามเป้าหมายวันนี้ เวลาก็ประมานบ่าย 2 ผมคิดว่า เราควรจะเปลี่ยนอะไรใหม่ๆ หรือลองกล้าที่จะทำอะไรคนเดียว เช่น การดูหนังในโรงภาพยนตร์คนเดียวครับ โดยเรื่องที่ผมเลือกไว้ คือ Captain America Civil War แบบ Sound Track ลองฝึกฟังภาษาอังกฤษอีกรูปแบบหนึ่ง หลังจากลองดู Agent of Shield และซีรีย์อีกหลายๆเรื่องมา โดยหลังมาถึงที่เมเจอร์ ซีนีเพล็กซ์ สาขาเซ็นทรัล ปิ่นเกล้า สิ่งที่สะดุด คือ มีเวลาที่การแข่งหุ่นยนต์เล็กๆ ทำให้ย้อนอดีคไปตอน ม ปลายครับ ที่เคยไปแข่งขันระดับประเทศ และระดับโลก โดยใช้ชุดห่นยนต์ของ LEGO(RCX และ NXT เป็นยุคแรกเลยมั้ง) และ I-NEX กลับมาที่เรื่องหนังดีกว่า ตอนแรกผมก็ไปแบบงงๆ จากการต่อคิวมาทำให้เห็นการเปลี่ยนแปลง ดังนี้ มาที่ตัวหนังดีกว่า สำหรับ Captain America Civil War ผมมองว่าเป็นหนังที่มีที่มา มีมิติมาก ตัวร้ายก็ไม่ได้มีสาเหตุที่แบบสุดโต่ง เกิดมาเลวเลยย พระเอกก็ไม่ได้แบบดีเวอร์ มีมุมร้ายๆ และมุมดี สำหรับการดูหนังคร้้งนี้ผมชอบคำพูดของผู้พัน เฮลมุต ซีโม่ I have experience… and patience. A man can do anything if he has those. An empire toppled by its enemies can rise again, but one which crumbles from within? That’s dead… forever. ผู้พัน ซีโม่…

String .Equals() vs ==

two pigeon perched on white track light + equal

พอดีเมื่อวันพฤหัสก่อน เห็นน้องที่ทำงานใช้ Operator == ในการตรวจสอบว่า String เป็นอันเดียวกันไหม แต่ผมเห็นแล้วรู้สึกแปลกๆ มันควรใช้ Method Equals() มากกว่าครับ ใน Blog ตอนนี้ผมแสดงความแตกต่างของ .Equals() กับ == โดยผมยกตัวอย่างเฉพาะในภาษา Java และ C# ที่ผมใช้งานหลักอยู่ครับ – JAVA – C# ความแตกต่างของ String .Equals() vs == จาก Code ทั้ง 2 แบบ เราจะเห็นความแตกต่างกันของ String นะครับ (ตามตัวอย่างของ C# และ Java นะครับ) – Method Equals Method Equals: มันตรวจสอบทั้ง Reference และ Value ครับ เจ้า Method Equals() เป็น polymorphic หลายคนอาจจะงงครับ ถ้าเป็นคำว่า Polymorphism อาจจะร้องอ๋อ – Operator Equals (==) Operator Equals (==): ตรวจสอบ Reference อย่างเดียวครับ ตำแหน่งของหน่วยความจำใน Memory ถ้าเป็นพวกภาษา C ก็ Pointer นั้นแหละครับ สรุป ในการตรวจสอบว่า String เหมือนกัน ไม่ว่าเป็น Java หรือ C# ที่ผมยกตัวอย่างมา ต้องใช้ Method Equals() ถึงเหมาะสมกว่านะครับ เดี๋ยวเจอ Defect ที่คิดว่าเป็นความบกพร่องของตัวภาษา แต่จริงๆแล้ว เรายังไม่เข้าใจมันมากกว่า

Human Error แหก แหวก ผ่าทะลุกฏเกณฑ์

วันนี้ได้ไป Stand by เพื่อเอา Program ขึ้น Production โดยก่อนที่จะมาถึงด่านนี้ได้ ก็ต้องผ่าน ทั้งหมดนี้ดูดีครับ แต่ใช้งานจริงหละ วันจริง เมื่อถึงวันจริง ระหว่างที่ผมนั่งช่วย User Map หัว GL เพื่อส่งออกไปยังระบบ SAP ในวันรุ่งขึ้น แต่น้องที่ Stand by อยู่ โทรมาแจ้งว่า แย่แล้วววว รัน Script ผิด Version ฝ่าย IT ของ Site ลูกค้า หยิบแผ่น 8.4.0.6 มารัน แทนที่จะเป็น 8.4.1.6 ซวยครับ แพลนที่จะกลับบ้านเร็วๆ หมดกัลลล (รอบก่อน IT ของ Site ลูกค้า ใส่ Password ผิดจนระบบ Lock) ผมรีบกลับมาดูความเสียหายครับ โดยพวกว่ามี 4 ส่วนที่โดนครับ สำหรับการแก้ปัญหานั้น ผมใช่วิธี ซ่อม Data ครับ เนื่องจาก สิ่งที่อยากเตือน สำหรับการจัดการ Script ขึ้นระบบ Production ท้ายสุดแล้ว Policy ดี | ระบบ ดี แต่ Human Error มันแหกได้ทุกข้อจำกัดครับ ตั้งสติก่อน Start ครับ ^___^

ลองเข้าร่วมเป็นกรรมการสอบสัมภาษณ์งานครั้งแรก

photo of people having meeting

ทำงานที่ บ เดิมมา 2 ปีกว่า มีคนในทีมที่ต้องดูแล 2 คน วันนี้เป็นอีกวันครั้งที่ได้มีโอกาสเข้าไปสังเกตุการสัมภาษณ์ และได้สัมภาษณ์จริงๆ จากน้องๆที่มาจาก มศว ครับ การสัมภาษณ์งาน แม้ว่าคุยแค่ 10 – 30 นาที แต่เราต้องรู้ให้ได้มากที่สุดครับว่าคน คนนั้นเหมาะสมกับองค์กรไหม โดยดู ดังนี้ และอื่นจิปาถะ เดี๋ยวถ้ามี update อะไร ผมจะมา update เพิ่มครับ โดยเท่าที่รู้มาศาสตร์ด้วยการจัดการทรัพยากรบุคคล หรือ HR เนี่ย มันแยกเป็นชั้นเรียน เพื่อสอนโดยเฉพาะเลยครับ

Small Data vs Big Data

บทความตอนนี้จะขยายมาจากที่ไปฟังสรุปงาน Big Data Conference ครับ จากที่ผมเคยได้บินคำว่า Big Dataมาตั้งแต่ตอนสมัยเรียนปี 4 ผ่านมาแล้ว 3 ปี เห็นคนพูดว่า Big Data อะไรอะไรก็ใหญ่ไปหมด แต่เราไม่รู้มันใหญ่แค่ไหน ถ้ามันไม่ได้เริ่มจากสิ่งเล็กๆ ใช่ครับ Big Data มันใหญ่ได้ ก็ เพราะ มี Small Data แล้ว Small Data มัน คือ อะไร ไม่เคยได้ยินเลยยย จริงๆแล้วมันอยู่รอบๆตัวเรา เจ้า Small Data เนี่ย มันมาตั้งแต่ที่มีฐานข้อมูลในยุคที่ระบบไฟล์ มาจนถึง Relational Database (อันนี้ฮิตที่สุดครับ แม้ว่าจะมีหลายแบบมาใหม่ อาทิ เช่น Object Oriented Database เป็นต้น) ที่นี้เราลองมาดูกันหน่อยว่า Small Data มันต่างจาก Big Data อย่างไรครับ Category Small Data Big Data Data Sources (แหล่งข้อมูล) Transaction แหล่งข้อมูลจากระบบงานต่างๆ แหล่งข้อมูลนอกเหนือจากระบบงานที่มี เช่น Log, Social Data Volume (จำนวนข้อมูล) Megabytes (106)Gigabytes (109)Terabytes (1012) Terabytes (1012)Petabytes (1015)Exabytes (1018)Zettabytes (1021) Velocity (ความต้องการใช้ข้อมูล) Batch, Periodic, Near Real Real Time Variety (ความหลากหลาย) Structure Data Structure Data และ Unstructure Data…

สับสน เมื่อจะเริ่มเรียนปริญญาโท

ยอมรับเลย ว่าปีนี้ 2559 หาข้อมูล ป โท ช้ามากกก เน้นทำงานมากเกินไป จนเพื่อมาหาข้อมูลจริงเกี่ยวกับ ป โท คือ ช่วงวันที่ 27-30 เมษายน เอง เวลาที่น้อยย่อมทำให้เราตัดสินใจพลาดได้ง่ายๆ สำหรับผมลังเลระหว่าง Computer Science กับ Software Engineering อยู่เลย และท้ายที่สุดผมลองเลือก ป.โท CS ของ จุฬา ไปสมัครในวันสุดท้ายเลย เนื่องจากตอน ป ตรี เรียน CS มา แต่พอมาคิดๆอีกที่แล้ว เรายังตอบตัวเองไม่ได้ว่า แต่พอลองมองย้อนกลับมาคิดดีๆ ได้ปรึกษากับอาจารย์ตอนคิดหัวข้อ Thesis และปรึกษาเพื่อน พี่ๆแล้ว ผมคิดว่าสิ่งที่ผมอยากรู้จริงๆ ผมควรเรียน Software Engineering ครับ เพราะ เจอกันตอนปีหน้าครับ ปีนี้สมัคร Software Engineering ไม่ทันและ T___T เวลา มัน หวน กลับ ไม่ได้ คิดให้เยอะๆ ก่อนเรียนนะครับ เวลา เงิน และทรัพยากรที่เสียไป สำหรับผมที่เป็นเสาหลักของครอบครัว ดูแลแม่กับส่งน้องเรียนแล้ว มันสูงค่ามากๆ ครับ

สรุปงาน Big Data Conference 2016

เมื่อวาน ผมได้ไปหางาน Big Data Conference ไปหา Idea ใหม่ และหาคำตอบให้กับตัวเอง ด้วยว่าเราเรียน ป โท Computer Science ที่จุฬา ดีไหม ? มาเข้าเรื่องกันเลยดีกว่าครับ Section 1: Going Intersteller?: The Truth Behind the Cloud โดยคุณ Rawitat Pulum อะไร คือ big data เราสนใจอะไร ทาง อ มองต่างจาก 3V มาเป็น 4S ย้อนกลับไปในยุคแรกๆ ของ digital ปี 1980 เรามองพ Structure ก่อน พวก ER-Diagram นั้นแหละ แล้วเอา Data ยัดเข้าไป เพื่อจัดเก็บและค้นหาแหละ ประเด็นอื่นที่ต้องสนใจ Small Data vs Big Data และ Structure & Data Immutable vs Mutable Session 2: Manage & Monitor Hadoop cluster with Apache Ambari โดยคุณ Charnsilp Chinprasert Apache Ambari มาช่วยจัดการ Hadoop เพื่อใช้ช่วย Session 3+4: Real time log monitoring+Log Design for WebApp โดยคุณ ศุภเกศ วงศ์คำภู และ Wittawas Wisarnkanchana เนื่องจากเห็นว่า 2 หัวข้อนี้ มันคล้ายกัน เลยขอยุบรวมกันดีกว่า…

การออกแบบสะท้อน ถึงโครงสร้างและวัฒนธรรมขององค์กร

พอดีนั่งหาข้อมูลเกี่ยวกับตัว Technical Debt แล้วเจอตัวนี้เข้า ใช่เลย “Software Design mirrors the [Organizational and social] structure of the organization that builds it” “การออกแบบซอฟต์แวร์สะท้อน ถึงโครงสร้างและวัฒนธรรมขององค์กร ที่สร้างมัน” เรื่องมีพวกนี้มันมีศัพท์เฉพาะเรียกของมันเหมือนกันนะว่า Conway’s Law ลองดู Product ที่อยู่รอบตัวเราก็ได้ครับ อย่าง Google, Facebook และ Microsoft เป็นต้นครับ ทุกอย่างมีสไตล์การพัฒนาของตัวเอง อย่าง Google ทุกอย่างดูเรียบง่าย และไปในทางเดียวกันทุก Product แต่ฝั่ง Microsoft ที่เมื่อก่อนแต่ละ Product นี้ไปคนละแนวเลยย (หลังๆ เริ่มดีขึ้น เมื่อมาอยู่ในยุคของคุณ Satya Nadella ครับ) ที่นี้ลองกับไปดูงานที่เรากำลังทำอยู่บ้าง ถ้ามีทีมพัฒนา 2 ทีม (มองว่ามากกว่า 2 คนก็ได้ครับ) รูปแบบของ Software น่าจะมีความหลากหลายทางพันธุกรรมแล้ว อาจจะ แม้ว่าจะเป็นเรื่องเดียวกัน ? จากความเข้าใจของ BA, SA, และ DEV ครับ

[CR] ลองชิมสลัดจาก 711

หลังจากเปลี่ยนเทรนการกินจากปิ้งย่าง มารักสุขภาพมากขึ้น วันนี้ได้ลองสลัดผักจาก 7-11 ในเครือ CP นะครับ ว่ามันจะดีกว่าสลัดที่ขายตามตลาดนัดอย่างไร ราคา 25 บาทครับ โดยที่ขายมี 2 รสชาติครับ แกะๆดูทีละอันครับ แกะๆดูทีละอันครับ จะมีซองใส่น้ำซอส และส่วนประกอบต่างๆ ลองผสมคลุกเคล้าดูครับ ส่วนรสชาติ ตรงนี้ต้องรอทีม Research ของ CP ทำการบ้านอีกสักพัก น่าจะคล้ายกับเคสของข้าวกล่องแช่แข็งที่ตอนแรกๆรสชาติออกมาไม่ดี แต่ภายหลังมีการปรับปรุงขึ้นมาเรื่อยๆ จนรสชาติอร่อย แถมยังราคาถูกกว่าร้านข้างทางบางร้านอีกครับ 😀

สายไฟที่ยุ่งเยิงกับซอฟต์แวร์ที่สับสน

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