Agile Meetup

ศุกร์ที่ผ่านมามี Meetup เกี่ยวกับ Software Development ที่นี่ซึ่งก็มีเป็นกลุ่มเลย คล้ายๆกับ Opendream ในไทยที่มีจัด Meetup เล่าเรื่องเทคนิคต่างๆในการทำระบบอะไรซักอย่างขึ้นมา เมื่อวานเป็นครั้งที่สองที่ไป Meetup ของที่นี่ แต่ก็ยังไม่คุ้นเคยอยู่ดี (พูดง่ายๆ คือฟังยังไม่ค่อยออก ฮะๆ) แต่ก็พยายามจะสรุปประเด็นที่พอฟังได้มาจดไว้ก่อน Meetup คราวนี้จัดที่บริษัท Odd-e ตอนแรกก็คิดว่าคล้ายๆ Opendream ก็คล้ายจริงๆ นั่นแหละเพียงแต่ว่าพื้นที่น้อยกว่ากันเยอะ และคนที่มาก็มากกว่ากันพอสมควร เรียกว่าแทบจะเข้ามาฟังกันไม่ได้เลยหละ เนื้อหาที่พูดมีให้โหวตกันก่อนหน้านั้นสุดท้ายแล้วมีสองเรื่องคือ Maintainability, Extensibility, Testability กับ ATDD and BDD เรื่องแรก Maintainability, Extensibility, Testability พูดถึงวิธีที่คนพูดใช้ในการทำเรื่องพวกนี้ต่างๆ ส่วนใหญ่จะเน้นไปที่ Aspect-J ว่าเอามาใช้แยก logic การทำงานให้ชัดเจนอย่างไร ทดสอบง่ายอย่างไร และเอา function เข้าและออกง่ายอย่างไร และการแยกแบบนี้มีข้อดีอย่างไร เมื่อแยกส่วนแล้วจะทดสอบยังไร สำหรับคนที่สนใจ Aspect-J ก็คงเหมาะกับ [...]

Read full story Comments { 4 }

English blog

ตอนแรกว่าจะไม่เขียนถึงและเขียนเป็นภาษาอังกฤษจดบันทึกไว้อ่านเล่นๆ คนเดียวแต่คิดไปคิดมาเขียนแปะไว้ที่นี่เลยดีกว่า เพราะช่วงหลังแทบไม่ได้อัพเดทเป็นภาษาไทยเลย กลายเป็นว่าเขียนเป็นภาษาอังกฤษอย่างเดียว บล๊อกภาษาไทยก็คงเข้ามาเขียนเรื่อยๆ ไม่ได้หายไปไหน แต่ช่วงนี้อยากทดลองเขียนเป็นภาษาอังกฤษอย่างเดียวดู พอเขียนเสร็จก็เริ่มขึ้เกียจเขียนซ้ำเป็นภาษาไทยอีก ก็เลยเหมือนดองบล๊อกมาจนถึงวันนี้ อย่างไรก็ตามถ้าใครอยากอ่านเป็นภาษาอังกฤษก็สามารถอ่านได้ที่ English blog เรื่องส่วนใหญ่ก็มีตั้งแต่สิ่งที่เจอในแต่ละวัน จนถึง Meetup ต่างๆ สำหรับ Meetup จะค่อยๆ ทะยอยเอามาเขียนเป็นไทยอีกที ถ้ายังมีเวลา

Read full story Comments { 1 }

Ruby meetup

วันนี้ @visibletrap ชวนไป Ruby meetup ตอนแรกคิดว่าจะมีแต่ Technical แต่ฟังจนจบก็ผิดไปจากที่คิดพอสมควร เพราะส่วนใหญ่เป็นเรื่องไอเดีย หรือความสนใจของแต่ละคนมากกว่า ไม่ Technical มากนัก (ซึ่งก็ดีแล้ว ฟังง่ายดี แหะๆ) โดยรวมที่คุยกันในนั้นก็มีสามเรื่องคือ เรื่องแรกคือ Money, Sex and Evolution: Simulation and Data analysis with Ruby and R ชื่อเรื่องครึ่งแรกชวนให้ติดตามมาก ฮะๆ แต่จริงๆ คือการเอา Ruby และ R มาทำ Simulation ตามหัวข้อต่างๆ ที่สนใจซึ่งในที่นี้คือ Money, Sex และ Evolution ซึ่งก็น่าสนใจแหละ ถ้าเป็นสายที่ต้องเอาข้อมูลมากมายมาวิเคราะห์นะ คนที่บรรยายเขียนหนังสืออยู่ด้วยเกี่ยวกับการประมวลผลข้อมูล แต่จำชื่อเรื่องไม่ได้แฮะ ไว้ให้ @visibletrap มาตอบให้ดีกว่า (ตอนท้ายมีถามด้วยว่า มีคนใช้ Ruby [...]

Read full story Comments { 0 }

Two approaches – Mock/Stub

เรื่องนี้พึ่งย่อยเสร็จแต่เป็นสิ่งที่คุยกับ @visibletrap ตั้งแต่วันแรกที่มาถึงสิงคโปร์ (คุยทีเดียวหลายเรื่อง ล่อไปสามชั่วโมงได้ ฮ่าๆ) เรื่องก็มีอยู่ว่าเวลาทำ TDD หลายค่ายมักบอกว่าให้ทำ Mock ซึ่งก็เคยพยายามทำหลายครั้งแต่ก็ไม่ประสบความสำเร็จเสียทีเพราะรู้สึกมันทำให้เขียนอะไรซ้ำหลายอย่าง วันนั้น @visibletrap ก็เลยอธิบายและคุยจนเคลียร์ว่าเค้าใช้ Mock เมื่อไหร่กัน วิธีการทำระบบอะไรซักอย่างปกติก็มีอยู่สองทางในการสร้างขึ้นมา คือ Top-Down / Bottom-Up วิธีที่คุ้นเคยสุดเพราะอะไรไม่รู้อาจจะเพราะที่เรียนมาในมหาวิทยาลัยต่างๆ ในวิชา SE ที่บอกว่าให้หาคำนาม บลาๆๆ ก่อนคือ Bottom-Up เริ่มจากหาว่าในระบบจะมี Model อะไรบ้าง แล้วหา Behavior เพื่อสร้างคลาสขึ้นมาทั้งหมดให้ครบทั้ง Flow โดยเริ่มจากฐานที่เป็นคำนาม จนถึงชั้นบนสุดที่เป็นส่วนติดต่อกับ User วิธีที่จะสร้าง Test กับระบบแบบนี้ง่ายสุดก็คือสร้าง Stub ขึ้นมาให้ทำหน้าที่แทน Third-party คอยให้ข้อมูลต่างๆ เพื่อให้ระบบทำงานได้ถูกต้องตลอด ปัจจุบันก็ยังคงชินกับการสร้างระบบด้วยวิธีนี้อยู่ เวลาทำอะไรก็เลยมักสร้าง Stub ขึ้นมาก่อน แล้วค่อยๆ ไล่จาก Model ขึ้นไปจนถึง User [...]

Read full story Comments { 1 }

Board game cafe

วันอาทิตย์เป็นวันแรกที่ว่างหลังจากมาอยู่สิงคโปร์เลยหาแผนเที่ยวเล่นซักหน่อย ที่คิดไว้แรกสุดเลยคือจะไป Marina bay แต่กะไปตอนเย็นที่ไหนได้ผิดแผนเพราะชะงักอยู่ที่ร้าน Board game ร้านที่ไปอาทิตย์นี้คือ Settlers cafe อยู่แถว Clarke Quay ซึ่งสามารถเดินไปได้จากที่พักประมาณสิบห้านาที หน้าร้านก็มีเมนูอาหารให้เลือก เหมือนร้านทั่วไปแต่พอเปิดประตูเข้าไปก็เจอความต่างเลยคือ ด้านซ้ายเป็นชั้นคล้ายๆ ชั้นหนังสือแต่เต็มไปด้วย Board game ทั้งที่รู้จักและไม่รู้จักมากมาย ทั้ง Bang, Settler หลายๆ ภาค, Carcassonne, และอื่นๆ ค่าบริการที่นี่มีหลายแบบและแบ่งตามช่วงเวลา สำหรับวันอาทิตย์ทั้งวันมีแบบเดียวคือ 9sgd สำหรับเล่นสามชั่วโมงพร้อมน้ำ สำหรับคนที่ไม่ต้องการเป็น set ก็มีคิดเป็นรายชั่วโมง ชั่วโมงละ 3.5 sgd (แต่ลองเล่น Ticket to ride แล้วพบว่าไม่พอ ต้องนานกว่านั้น) ถ้าต้องการสั่งน้ำก็คิดเพิ่มไปอีก สำหรับเกมที่เล่นไปวันนั้นก็มี Ticket to ride, Halli galli, Kaching, Blink, Carcassonne คิดว่าครบทุกแบบหละมั้ง [...]

Read full story Comments { 0 }