Archive for the 'Geek Tips' Category

3 แนวคิด 3 ขั้นตอนง่ายๆเอาชนะงานล้นมือ

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

3 แนวคิด

  1. คำว่า Action คือสิ่งที่ทำเสร็จได้ภายในขั้นตอนเดียว
  2. คำว่า Project คือสิ่งที่ประกอบด้วยหลายๆ Action
  3. คำว่า Context คือบริบทโดย Action 1 Action ต้องมีการใช้บริบท เช่น โทรศัพท์หาเพื่อนด้วยโทรศัพท์ โทรศัพท์เลยเป็นบริบท (ได้เหมือนกัน)

3 ขั้นตอน

  1. Capture ในที่นี้หมายถึงการจับความคิดต่างๆลงมาจดบรรทึก เช่น กวาดบ้าน ถูบ้าน ทำการบ้าน อาบน้ำ แปรงฟัน
  2. Organized การจัดการโดยนำ Action ที่ Capture มาได้มาแยกว่าอยู่ใน Project อะไรแล้วก็ใส่บริบทให้ action ด้วย
  3. Do หรือทำนั้นเ้อง

โดยจริงๆแล้วอาจจะยังไม่เห็นภาพ โดยเขาได้อธิบายเพิ่มว่า อย่างใน OmniFocus เนี้ยสามารถที่จะดูแบบ Project หรือ Context ก็ได้นั้นหมายความว่าเราสามารถดูตามบริบท หรือดูตาม Project ดังนั้นเวลาเราจัดการเรื่องตาม เราก็แยกตามสถานการณ์ได้ เช่น เมื่อไม่อยู่หน้า Com ก็จัดการกับสิ่งอื่นๆที่ไม่ต้องใช้ Com เช่น โทรศัพท์หาลูกค้า (ตามที่เรา Capture ไว้) ดังนั้นการแยกโดย Context จะมีประโยชน์เพราะ เลือกได้ว่าในบริบทนี้สิ่งใดที่เราต้องทำบ้าง

สำหรับผมแล้ว OmniFocus อธิบายได้ดีมากแล้ว Tool ก็ดีมากด้วย ใจจริงผมกำลังคิดว่าจะทำ OmniFocus ให้มาอยู่ในรูปแบบของ Web-based (เพราะผมถนัดหนิ T-T) แต่ก็คงช่วงหลังปิดเทอม 10 วันนี้และคงได้ทำกัน การทำ GTD เนี้ยมีประโยชน์ที่ผมได้รับแนวคิดมาก็คือ

  • ทำให้เรามีอะไรทำ ไม่ปล่อยเวลาว่างไปเปล่าๆ
  • ทำให้เราวางแผนเก่งขึ้น
  • ทำให้เราสนุกและมีกำลังใจ เมื่อทำได้เสร็จตามที่กำหนด

แต่ทั้งนี้ทั้งนั้นมันขึ้นอยู่กับว่าเราลงมือทำ ด้วยรึเปล่าปัญหาที่ยากกว่าลงมือทำคือ เราไม่รู้จะทำอะไรบาง ดังนั้นตอนเริ่มต้นคุณต้องใช้จิตนาการนิดหนึ่ง คือสมมุติอยากให้ห้องสะอาด และไม่รก ก็เริ่มตั้งเลยว่า เราจะทำอะไรบ้างเป็นขั้นตอนนั้นและ เอามาเป็นจุดเริ่มต้นในการลงมือทำ !!

วันที่สอง Barcamp Bangkok

วันที่สองกับ Barcamp วันนี้ผมก็พูดด้วยในหัวข้อ Web Developer study Guideline for Starter (newbie) ปล่อยไก่ไปหลายตัวเลยทีเดียว แต่โดยรวมๆวันนี้ก็สนุกครับ แต่วันเสาร์สนุกกว่า คนเยอะกว่า มันกว่า วันนี้คนน้อย หัวข้อมีให้เลือกน้อย แต่สนุกครับ โดยวันนี้ที่ผมฟังมี Session ต่างๆดังนี้เลยครับ (โดยวันนี้เริ่ม late กว่าปกตินิดหนึ่ง)

11:30 - How to start small company in Thailand
12:00 - GIT
12:30 - Django 30 minutes
14:00 - How to make FOSS more popular / successful in Thailand
14:30 - Twitter Proxy (birdnest)
15:00 - Web Developer study Guideline for Starter (ผมพูดเองและเก็บไว้เดียวผมโพสอีกทีนะครับ)
16:00 - Cloud Computing Discussion
16:30 - RESTful Web Service and why I should care?
17:00 - Project Manage Tools Discussion
17:30 - Life Application Discussion

วันนี้จริงๆสังเกตุว่าผมเข้าไปพวก Discussion ค่อนข้างเยอะ ดังนั้นความรู้ที่เอามาฝากอาจจะน้อยกว่าเมื่อวานอยู่ครับ เอาละเริ่มกันเลยดีกว่า

How to start small company in Thailand

โดยเขาเป็นภาษาอังกฤษทั้งหมดเลย ผมก็จับใจความได้บางไม่ได้บางเอาเป็นว่า ผมสรุปได้ดังนี้เลยครับ ผมจดมาได้ประมาณนี้ (จริงๆมากกว่านี้แต่ฟังไม่ออกบ้างฟังไม่ทันบ้าง)

แนวทางและแนวคิดในการเริ่มต้น

  1. การเริ่มต้นในไทยเป็นเรื่องยากและ VC (Venture Capital) ไม่ยอมให้เงินกับใครง่ายๆเพราะกลัวโดนโกงและเชิดหนีไป (แต่ชาวญี่ปุ่นบอกว่าถ้าในประเทศเขา คุณทำอะไรของคุณไปแล้วเดียว VC จะเข้ามาอยากให้เงินคุณเอง)
  2. เริ่มต้นเร็วได้เปรียบ (ดังนั้นผมต้องรีบละ 55+)
  3. หากลุ่มลูกค้าให้ได้โดยเร็ว (จะได้มีรายได้)
  4. การเริ่มต้นอาจจะต้องใช้เงินตัวเองและภาวนาต่อพระเจ้าให้สำเร็จ
  5. ถ้าอยากถูกซื้อด้วยบริษัทยักษ์ใหญ่ของโลก เขาพูดว่า “เมืองนอกชอบซื้อบริษัทไทยมากกว่าบริษัทต่างชาิติในประเทศไทย”

ข้อผิดพลาดที่เกิดขึ้นในช่วงเริ่มต้นตั้งบริษัทและแนวทางแก้ไข

  1. ถ้ามีบริษัทที่นำเงินเขามาช่วยเรา เราจะถูกยัดเหยียดสิ่งที่ต้องทำจากบริษัทที่ช่วยเรา ซึ่งอาจจะเป็นเรื่องดี แต่บางทีมันไม่ใช่แนวทางที่เราต้องการจะทำจริงๆ
  2. ถ้าระหว่างที่เรากำลังสร้างฝันให้เป็นจริง เกิดมีไอเดียขึ้นมา เราควรเลื่อนการสร้างฝันให้เป็นจริงออกไปสักนิดเพื่อนำไอเดียมาทำ
  3. เราเสียเงินไป 3 ปีกว่าจะเริ่มอยู่ได้
  4. ทำสินค้าให้ดีขึ้นไปเรื่อยๆ เพราะสินค้าของเรา out เร็วดังนั้นต้องทำให้มันพัฒนาขึ้นเรื่อยๆ
  5. ถ้าคุณเป็นจอมไอเดีย ให้เลือกสิ่งที่ดีที่สุดมา 1 อย่างแล้วทำให้ดีที่สุด

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

GIT

ชื่อสั้นๆได้ใจความ GIT เนี้ยต้องขออธิบายว่ามันเป็นเครื่องมือที่ช่วยในการทำ Version Control โดยใน Session นี้เหมาะสำหรับคนที่รู้จักพวก Control Version และ Software Configuration Management มาบางจะได้ฟังอย่างเมามันแบบที่ผมฟังแล้วมัน โดยเจ้า GIT เนี้ยเน้นการทำ Decentralized SCM โดยทุกคนมี Server เป็นของตัวเองแทนที่จะเป็น Centralized แบบ Subversion ที่ทุกคน Access ไปเอาของจากที่ๆเดียวกัน แต่ GIT เนี้ยให้ทุกๆคนมีเหมือนๆกันแล้วก็เล่น กับของตัวเองได้สะดวก โดยสรุปละกันครับ  มันแนวทางคือสนับสนุนให้เราทำ Branch ออกมาเยอะๆ แล้วก็ Merge หรือ Rebase เอา

โดยแนวทางนี้มีข้อดีคือเราจะเล่นอะไรแปลกๆได้มากขึ้น ทำ code เดิมๆแบบหลายแนวทางได้มากขึ้นแล้วสุดท้ายถ้ามัน work ก็นำมา merge หรือ rebase กันโดยถ้าไม่เอาก็ ไม่ต้อง merge / rebase ถือว่าน่าสนใจมากครับ มีการใช้ tags มาช่วยทำให้เรา mark version ที่เราสนใจได้ ทำให้เรารู้ว่าเราทำอะไรไปในส่วนนี้ โดย GIT เนี้ยมี Command มากกว่า 137 คำสั่ง แต่ใช้ทุกวันเพียง 10 กว่าคำสั่ง และถ้าเิพิ่มบางกรณีเราจะใช้อยู่ประมาณ 20 กว่าคำสั่ง และถ้าเราอยากจะทำอะไรเพิ่ม ก็ใช้ 30 ต้นๆเท่านั้น !

และก่อนจบเขายกตัวอย่างที่ดีมาก ในการใช้ Git โดยเวลาเขาหาอะไรมาเล่นจาก Repository (เช่น SVN) แล้วมันขาด feature นิดๆที่เขาอยากได้ แล้วเขาก็ทำขึ้นมา แต่จะ commit กลับไปที่ Repository ก็ไม่ดีพอแต่ก็อยากเก็บไว้นะ ก็เลยใช้ Git เนี้ย Clone Repository ออกมาแล้ว ก็ทำการเล่นกับ Repository ที่ Git Clone มาเมื่อเราเพิ่ม feature เขาไปก็ commit เขาไปที่ Repository ที่เรา clone มาแทน ทำให้เรา Maintenance เรื่องการทำ Patch ต่างๆได้ดี (แบบสบายใจด้วย)

Django in 30 minutes

จริงๆผมเข้ามาใน Session เจ้าของเรื่องก็บอกก่อนเลยว่าเตรียมตัวมาได้ไม่ดีเมื่อคืนเมาหนัก ส่งผลให้ผมฟังๆ แล้วก็ไม่ได้อะไรเพิ่มเติมยกเว้นว่า Django มีตัวทำในส่วนของ Admin ที่เจ๋งและดีมาก โดยผมได้มาอีก 2 อย่างก็คือ

{% %} เป็นการใช้สิ่งที่้เกี่ยวข้องกับ Logic เช่น loop , if
{{ }} เป็นการแสดงผลตัวแปลข้อมูลออกมา

เนี้ยและครับสิ่งที่ผมได้ Django in 30 minutes ผมจับใจความที่น่าสนใจได้แค่นี้และครับ T-T

How to make FOSS more Popular / Successful in Thailand

ในเรื่องนี้ก็เป็นเรื่อง Discussion จริงๆก็อยากจะพูดแต่เวลาหมดซะก่อน โดยตอนแรกก็เปิด Video ให้ดูกันก็สนุกมากครับ โดยเขาก็คุยกันว่าจะทำยังไงให้ FOSS (Free and Open Source Software) ฮิตและสำเร็จในไทย แต่พอคุยไปคุยมากลายเป็น ถามว่าใครจะเป็นคนทำ และสิ่งที่เรา้ต้องทำ เช่น Localization , Translate หรือการสนับสนุน แล้วก็ถามว่าเราจะรวมกลุ่มยังไง แล้วมันเกี่ยวกับการเขียน Code ไหม ก็เลยนั่งถามตอบถามตอบ กันไปจนไม่ได้ประเด็นสักเท่าไร โดยผมขอเสนอ idea ใน blog นี้และ (ทั้งๆที่เขาก็ทำ wiki ให้เราช่วยเขียน แต่ผมไม่เห็น url แล้วผมจะไปเขียนยังไง (ไม่ได้ถามอีกผมผิดเองและ T-T)

  • FOSS จะเกิดได้ส่วนหนึ่งเป็นเรื่อง Localization
  • FOSS จะเกิดได้จริงๆต้องให้คนใช้ตระหนักถึงสิ่งที่เขาใช้ว่ามันผิดกฎหมายนะ
  • FOSS จะเกิดได้จริงๆต้องชูจุดยืนได้ว่าใช้แล้วดีกว่ายังไง ?
  • FOSS จะเกิดได้ต้องค่อยๆครอบงำคนมากขึ้นไปเรื่อยๆ (พูดซะน่ากลัวเลยเรา)
  • FOSS จะเกิดได้ทางธุรกิจว่ามันตอบสนองความต้องการของ Enterprise ได้ไหม
  • FOSS จะเกิดได้เมื่อสังคมของคนใช้ เริ่มมีการตอบสนองและพูดถึงกันมากขึ้น
  • ฯลฯ

โดยมันมีหลายเรื่องแต่เรื่องที่หนักที่สุดก็คือเรื่องลิขสิทธิ์ และอิสระในการใช้ ทำยังไงให้คนไทยตระหนักถึงเรื่องนี้ ซึ่งยาก คนใช้ต้องกล้าเรียนรู้สิ่งใหม่ๆ สำหรับ User ปกติบางคนก็ไม่ชอบต้องเรียนอะไรใหม่บ่อยๆ ทั้งๆที่เขาใช้ของเถื่อนก็ดีอยู่แล้ว ดังนั้นเรื่องนี้พูดยากครับ แต่เราต้องเริ่มจาก Open Source ที่ดีจริงๆแล้วค่อยๆนำเสนอเพิ่มเติมขึ้นไปเรื่อยๆ   ในส่วนตัว FOSS เนี้ยสมบูรณ์ค่อนข้างมาก แต่ก็ยังมีบางตัวที่ FOSS ยังไม่สามารถแทนได้ดี ดังนั้นตอนนี้เอาแค่ “ใช้สิ่งที่มันแทนได้จริงๆก็พอ”

Twitter Proxy (Birdnest)

หัวข้อนี้ก็มาแนะนำว่า เหตุผลที่ทำเจ้า Birdnest เนี้ยมาเพื่ออะไร โดยความต้องการเนี้ยคือการรับ Twitter จากมือถือโดยให้เสีย Cost น้อยที่สุด โดยเขาก็พูดถึงปัญหาที่เกิดว่าเจ้า Twitter เนี้ยเวลาใช้ API มันปกตินั้นมันมีข้อมูลที่เราไม่ต้องการเยอะ เขาก็เลยต้องการลด Cost ในส่วนเนี้ยโดย Optimize ไปได้เกือบ 50% ในเวลาที่ Tweet มา 20 อัน Save เงินได้มาก สำหรับการเล่น Twitter ผ่าน Mobile โดยตอนนี้ ยังใช้ได้กับ jibjib เท่านั้นนะครับ แล้วมันยังแก้ปัญหาเวลา Twitter ล้มแล้วส่ง Error มานั้นจะทำให้เราเสียเงินเยอะ แต่เจ้า Birdnest เนี้ยส่งบอกมาว่า Error แค่นั้นทำให้เราเสียเงินน้อยลง

โดยส่วนตัวชอบ Idea เล็กๆนี้มากครับ แต่เขาบอกว่า Think Big , Start smaill , Scale Large ก็ต้องดูต่อไปครับ ว่า idea บรระเจิดของเขา จะมีอะไรเพิ่มเติม โดยส่วนตัว Session นี้สนุกมากครับในการนำเสนอ แต่ผมหมด idea ที่จะำนำเสนอเพราะผมก็ไม่ได้เล่น Twitter หนักและไม่เคยใช้ Twitter บน IM ด้วย T-T (idea มันเลยไม่แล้นมั้ง)

Cloud Computing Discussion

เรื่องนี้เป็นหัวข้อที่น่าสนใจมาก โดยหลักการแล้วคือ “Scale ด้านแนวนอนมากกว่าแก้ Infrastructure” ดังนั้นถ้าเราต้องการรองรับคนมากๆ ก็ไม่จำเป็นต้องไปแก้ Infrastructure ก็แค่เพิ่มเครื่อง แล้วเจ้า Cloud มาตอบโจทย์นี้ยังไง เพราะปกติแล้วการเริ่มต้น Website เนี้ยอาจจะยังมีคนเข้าไม่มากแต่ถ้าเกิดมันดังขึ้นมามากๆ แล้วเราก็ยังไม่มีเงินซื้อ Server มากๆมาลงทุนได้ แล้วทำไงดี ก็เช่าผู้บริการ Cloud Computing สิจะได้ไม่ต้องลงทุนสูง ได้ทรัพยากรมหาศาลมาใช้ ทำให้ไม่ต้องเป็นห่วงเรื่องคนใช้จำนวนมาก แล้วเราก็ทำเรื่องของ Business ของเราส่วนเรื่อง Scale เนี้ยปล่อยเป็นหน้าที่ของผู้ให้บริการ โดยตอนนี้เจ้าที่ดังๆก็หนีไม่พ้น Amazon โดยเปิดบริการ S3 และ EC2 โดยหัวข้อนี้ก็ ได้เข้าใจกันมากขึ้นว่าภายใน Cloud เนี้ยเขาจะจัดการเรื่องข้อมูลให้เรา ทำการ Tuning ในทุกๆเรื่องให้เราแทน โดยปัญหาที่ถามมาน่าสนใจครับ เพราะ API ของ Amazon ไม่ยอมให้ SQL Query เข้าไปโดยตรง (มั่งนะถ้าฟังไม่ผิด) โดยเราจะหันมาใช้เอา data มาเป็น object มากขึ้น ใครสนใจเรื่อง Cloud Compting ลองเข้าไป Google Groups ของเขากันดูครับ

RESTful Web Service and why I should care ?

หัวข้อนี้เป็นหัวข้อที่ผมฟังมาบ่อยมาก แต่ Session อื่นก็ไม่เป็นที่น่าสนใจ ก็เลยมาฟัง REST อีกโดยเจ้า REST เนี้ยมีข้อดีมากมายครับ ทฤษฎีของมันเข้าใจง่าย ใช้ได้จริง ทำให้ปลอดภัยได้ชัวส์ โดยมีหลักในการสร้าง Web Service แบบ RESTง่ายๆ 5 ขั้นตอนคือ

  1. ให้ทุกอย่างมี ID
  2. เชื่อมสิ่งต่างๆเข้าด้วยกัน (ที่มันต้องอยู่ด้วยกันนะที่หมายถึง)
  3. ใช้มาตรฐาน Http Methods (เช่น GET POST PUTS DELETE)
  4. แหล่งข้อมูลสามารถนำเสนอได้หลายรูปแบบ (จากแหล่งเดียว) เช่น JSON , RSS , XML , HTML แล้วแต่คนที่เรียกมาจะขออะไร เราควรจะทำให้มันเรียกได้
  5. การสื่อสารต้องเป็นแบบ Stateless (ง่ายๆคือพวก Http นั้นและ) ในแง่ของ Perfomance ที่เพิ่มขึ้น Scalable มากขึ้น Reliability มากขึ้นเพราะมันทำให้การฟื้นตัวจากบางส่วนที่ผิดพลาดได้ง่ายขึ้น

โดยเจ้า RESTful เนี้ยมีข้อดีมากมายโดยข้อแตกต่างชัดเจนอย่างหนึ่งกับ SOAP ก็คือ SOAP มันมาเป็น Object (ผมชอบนะ) แต่ก็มี Overhead และโหลดได้ช้ากว่า REST มากมายครับ

Project Mangement Tools Discussion

มานั่งคุยเรื่อง Tools กันว่าใช้อะไรในการทำ Project กันมั่งผมก็ได้รู้ เขาใช้อะไรกันมั่งแล้วบางคนก็ทำเฉพาะขึ้นมาเองเลย อย่างคุณภาวุธ ก็ทำ Tools ขึ้นมาใช้กันเองภายในองค์กร แต่ดังนี้คือสิ่งที่ผมได้รู้ได้ฟังมา

เนี้ยและครับผมนั่งฟังมาครึ่งชม. นี้คือ Tools ที่เขาใช้ในการทำงานกันจริงๆ โดยผมไม่รู้ว่าตัวไหนดียังไง เพราะไม่เคยลองสักตัวแต่เห็นแล้วรู้สึกดีกว่า JIRA และ Sourceforge Enterprise Session นี้ก็จบได้รู้จัก Tools ดีๆแค่นี้ก็คุ้มค่าแล้วครับ ไม่ต้องเสียเวลาลองเองอันนี้เขาใช้จริงแล้วลองมาให้แล้ว

Life Application Discussion

หัวข้อสุดท้ายนี้ต้องขอบอกว่าสนุกมากๆ เป็นหัวข้อ Discussion ที่ได้มุมมองใหม่ๆ แล้วก็รู้จักโปรแกรมใหม่ๆ แล้วก็ความเป็นจริงว่าทำไมของพวกนี้ถึงสำคัญต่อชีวิตคนทำงาน โดยผมจดมาไม่แน่ใจว่าครบไหมแต่ประมาณนี้ครับ และเรายังพูดถึง GET THINGS DONE ซึ่งหลายคนให้ความสนใจกันมาก เอาละมาดู Tools ที่พูดถึงกันครับ

  • To-Do List
    • Remember The Milk (Web-based ดีๆทำได้หลายอย่าง)
    • IGTD
  • Mindmap
    • Freemind
    • Mindjet Mindmanager Pro
  • Money
    • GnuCash
    • Splash Money
    • Microsoft Money
  • Password Mangement
    • Splash ID
    • One Password
  • ช่วยหาของภายในเครื่อง
    • Google Desktop
    • Avafind
    • Copernic

โดยรายละเอียดที่เราคุยกันใน Session นี้ก็ยังมีเรื่อง GTD (Get Things Done) กันด้วยโดยถ้าใครอยากได้แนวคิดของ GTD เขามี Video ดีๆ แนะนำครับ 3 Concepts 3 Steps เข้าใจง่ายจริงๆสุดยอดครับ

อ่าก็จบแล้วครับสำหรับวันที่ 2 กับ Barcamp Bangkok ผมก็ทำ Review มาได้เท่านี้ละครับ ใครที่ยังไม่เคยมา Barcamp นะครับ ก็ขอเชิญชวนว่า สนุกครับได้ความรู้กลับบ้านเยอะ แล้วยังได้เพื่อนมากมายทั้งพี่ทั้งรุ่นเดียวกันและรุ่นน้อง นะครับ แต่อย่า Get อย่างเดียวนะครับ Share ด้วยครับแล้วจะเห็นความมหัศจรรย์ของความรู้ที่เกิดขึ้น วันนี้ไปอาบน้ำนอนแล้วครับ ~ เหนื่อย ^^ แต่สนุกมากกับ Barcamp

วันแรกกับ Barcamp Bangkok

สวัสดีครับทุกท่านวันนี้ผมก็ตื่นออกจากบ้านรีบไปงาน Barcamp เก็บเอารายละเอียด (รูปไม่มี) มาฝากกับทุกๆท่านนะครับ โดยวันนี้ผมเข้า Session ต่างๆดังนี้เลยครับ

11:00 - Lighting Session Talk
11:30 - How to manage web project
12:00 - สงครามกลยุทธ์จีน (อะไรซักอย่าง)
12:30 - Mashup Application
14:00 - Web 2.0 strategic and market (ผมจำตัวเต็มไม่ได้)
14:30 - How to get VC for Thai IT Company
15:00 - Testing Complex Web Application
16:00 - E-commerce 2.5
16:30 - เกร็ดเล็ดเกร็ดน้อยในการเริ่มต้นบริษัทขนาดเล็ก
17:00 - Continuous integration
17:30 - How to date with Japanese girl

พรุ่งนี้ยังมีอีกวันแต่วันนี้พูดเรื่องพวกนี้ที่ผมได้ฟังมาจาก Barcamp นะครับผมค่อนข้างประทับใจกับหัวข้อต่างๆที่ได้ฟังแต่ผมก็เสียอารมณ์นิดหน่อยกับการที่เวลาดูเหมือนเร่งรีบซะเหลือเกินอย่างบางหัวข้อ กำลังฟังได้ feel ก็ต้องรีบๆจบเพราะเวลากระชันชิด งั้นผมจะเล่าใ้ห้ฟังเท่าที่ผมจับใจความได้ละกันนะครับ มาเริ่มกันเลย

Lighting Session Talk

ในส่วน Session นี้จะเป็นหัวข้อย่อยๆโดยใหู้พูดคนละ 5 นาที (อันนี้ตรงเวลาเปะๆแต่ดันเริ่ม late ไปอันนี้เวลา 5 นาทีก็เปะๆ) โดย

คุณ @sugree ก็มาพูดเรื่องว่าด้วยการรวมเงิน โดยยกตัวอย่าง APC2008 ที่ผ่านไปไม่นานโดยขอเงินบริจาคให้ ผู้ที่ชนะการประกวด โดยขอเป็นจำนวนเท่าไรผมจำไม่ได้ แต่คุณ @sugree บอกว่าได้ 10k บาทภายใน 5 วันแล้วโดยสรุปเขากำลังจะทำโปรเจค Web ระดมเงินทุนบริจาึคเพื่อช่วยเหลือโครงการต่างๆ โดยตอนนี้ชื่อยังคิดไม่ออกตอนนี้เลยใช้ BSOD ย่อมาจาก Blognone , Sugree , … , Duocore ประมาณนี้ครับ

คนต่อมาครับผมจำชื่อไม่ได้แต่เขาบอกว่าเป็น Joomla Expert โดยเนื้อหาไม่ได้มีอะไรเป็นการแนะนำ Joomla โดยทั่วไปครับ ผมเลยบอกว่า Joomla มี Component ให้เลือกใช้มากกว่า 2,000 ตัว Joomla มีการ Fix bug อันรวดเร็วและพัฒนาอย่างต่อเนื่อง Joomla สามารถทำเป็นเว็บต่างๆได้ ไม่ว่าจะเป็น E-Commerce , Blog , Portal และอื่นๆึครับ โดยรวมก็แค่นี้ละครับ

Anthony Bouch (น่าจะชื่อนี้นะครับดูจาก blog เขา)  โดยคนนี้มาพูดเรื่อง NAnt , WiX และทำอย่างไรที่จะสร้าง utility library อย่างรวดเร็ว โดยเจ้า NAnt คล้าย Ant ของ Java เลยครับส่วนเจ้า WiX เนี้ยเป็นการสร้าง Installation Package ด้วย XML ดังนั้นพอเจ้าสองอันนี้มาผสมกันมันก็คือ “การ Build and Deploy project แบบ automate” เออแต่ขอโทษครับ Ant Java ใช้แต่ ant ตัวเดียวก็ทำได้ครับ (แต่เจ้า 2 ตัวนี้มันแยกการทำดังนั้นมันจะ edit แก้ไขและสร้างเป็นส่วนๆได้ง่ายกว่ามั้งครับ)

อันนี้ผมฟังจบแค่คุณ Anthony Bouch แล้วก็ออกมาเลยจริงๆมีคนพูดต่อแต่ผมอยากไปฟัง How to mange Web Project

How to mange Web Project

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

TOR หรือ Terms Of Reference หรือข้อตกลงนั้นเอง โดย TOR นั้นสิ่งที่จะต้องทำในส่วนนี้คือ “จุดประสงค์ของลูกค้า” , “รายละเอียดอย่างคร่าวๆของเว็บที่เราจะทำ” , ” ถามคำถามลูกค้าโดยมีเทคนิคว่าอย่าถามคำถามปลายเปิดให้ลูกค้าฟุ้งซ่าน” , “ตบ Requirement ให้นิ่ง” โดยจริงๆแล้ว Phrase นี้นั้นไม่ต่างอะไรกับ Phrase Requirement ของ SDLC ครับ

Structure Design โดยส่วนนี้จะเปรียบได้กับ Phrase Design โดยอยู่ในเรื่อง Detail Design โดยเขาพูดถึงปัญหาที่เราจะต้องทำให้ได้และหาให้เจอใน Phrase นี้คือ “ลงรายละเอียดจุกจิกให้ครบ” (จริงๆไม่ต้องครบ 100% เพียงแต่ต้อง 80-90% และต้องไม่พลาดหัวข้อหลักๆ) โดยเขาบอกว่าถ้าลงรายละเอียดไม่ดีพอ “จะงานเข้าในภายหลัง” ครับ โดยสิ่งที่เราควรคำนึ่งถึงก็ึคือฝั่งที่เป็น “คนเข้า” และฝั่งที่เป็น “คนทำ” โดยต้องตอบ Design สิ่งที่เรียกว่า Sitemap สำหรับคนเข้า และระบบสำหรับคนทำด้วย โดย Sitemap เขาให้คำแนะนำว่าทำด้วย Mindmap ก็ได้

Graphic Design คือ Phrase ถัดมาที่เขาบอกแต่จริงๆมันก็ยังอยู่ใน Phrase ของ Design โดยปกติ Designer เขาอาจจะีมีจิตนาการในหัวซึ่งเราไม่สามารถเข้าใจได้ บางครั้งในงานใหญ่ๆเราควรจะให้ Designer ไปคุยกับ User เรื่อง UI โดยตรงโดยไปเก็บ Requirement เกี่ยวกับ UI เองจะได้ไม่ผิดพลาด โดยใน Phrase ทุกๆ Phrase ที่ผ่านมานั้นต้องมีการ “เซ็นสัญญา” ทั้ง 3 Phrase เพื่อแน่ใจว่าเขาจะเอาแบบนี้จริงๆนะ ถ้ามีการเปลี่ยนแปลงต้องขอเงิน / เวลาเพิ่มนะ

โดยที่เหลือก็เป็นพวก Infrastructure ต่างๆที่เขาใช้ Process นี้กับการพัฒนาโดยมีพื้นฐานจาก Joomla โดยเขาแบ่งเป็น 3 ส่วนหลักๆคือ Data , Theme , Component แล้วสุดท้ายเมื่อทำเสร็จก็ให้คน Review ถ้าไม่ผ่านก็กลับมาทำใหม่ตรง Infrastructure ถ้าผ่านก็ย้ายไปเป็น Production ได้เลย โดยเขามีเทคนิคนิดหนึ่ง คือเราต้องทำให้เสร็จภายใน 70% ของเวลาที่เขาให้มา เพราะลูกค้ามักเปลี่ยนจุกจิกบ้างอย่าง ถ้าเราเอาไปให้เขาตอนหมดเวลาสุดท้ายก็ทำให้ Project ยืดเยื้อไปอีก ดังนั้นควรทำให้เสร็จภายใน 70% ของเวลาทั้งหมดที่เหลือจะได้นำมา แก้ไข้ในจุดเล็กๆน้อยให้เสร็จทันเวลา

สงครามกลยุทธ์จีน

เขามาใน Section นี้แบบ งงๆไม่รู้จะไปไหนดีอันนี้หัวข้อแปลกๆ เลยเอาน่าเขาไปดูเพราะหัวข้ออื่น ไม่รู้จะไปฟังอะไรดีสำหรับผมนะ T-T จริงมีน่าสนใจเยอะ พอเขามาผมก็ประหลาดใจกับเจ้าของหัวข้อที่พูดได้แบบดูตื่นเต้น เร้าใจดีครับ เล่าเรื่องราวได้มันไปอีกแบบ แต่พูดเร็วในบางครั้งจับใจความไม่ทัน โดยเขาก็พูดถึง กลยุทธ์แล้วก็มาแม๊ปกับเรื่องธุรกิจ โดยผมจับใจความได้ดังนี้ครับ (ผมไม่เก่งเรื่องคำศัพท์เทคนิค แต่ก็มีการถกประเด็นนี้ขึ้นมา ซึ่งผมไม่สนใจแต่ฟังแนวคิดแล้วมันเยี่ยม)

  • คนเก่งไม่พอต้องมี Connection
  • การเปลี่ยนศัตรูเป็นมิตรหรือการยอมเป็นมิตรแล้ว ค่อยหาหนทางในการครอบงำทีหลัง เป็นการสู้ที่ทำให้เราอยู่รอด มากกว่าการสู้กัน ในสมัยยุคแมนจู โดยเขายกตัวอย่างจีนกับ โรมัน
  • การเปิดให้คนได้ทำในสิ่งที่ต้องการและจับคนเก่งๆในด้านต่างๆมาอยู่ด้วยกันจะทำให้คนแต่ละกลุ่มเก่งขึ้นไปอีก
  • การจะขายของอย่าคิดว่ารู้จักกับฝ่ายบริหารแล้วเขาจะซื้อสินค้าเรา ให้เขาทางฝ่ายจัดซื้อเพราะฝ่ายจัดซื้อเป็นผู้รับอนุมัติการซื้อของ ดังนั้นถ้าเราคุยกับฝ่ายบริหารแล้วต้องไปคุยต่อกับฝ่ายจัดซื้อ เพื่อที่จะได้รู้ความต้องการของเขา เขาจะได้อนุมัติการซื้อให้เราได้ง่ายๆ ไงครับ
  • ระบบที่ดีทำให้การทำงานมีประสิทธิภาพมากขึ้น (จริงอย่างแรง)
  • สร้างทีมที่ดี จะสร้างแรงจูงใจและการทำงานที่มีประสิทธิภาพมากขึ้น
  • ปฎิหารเกิดขึ้นทุกวัน อย่าสิ้นหวัง
  • การพักผ่อนเพื่อให้ิจิตใจฟื้นฟู
  • การจะประสบความสำเร็จจะต้องมีทั้งกลยุทธ์ระยะยาว และระยะสั้น โดยระยะยาวคือจุดหมาย ส่วนระยะสั้นทำให้เราอยู่รอด

สรุปคือกลยุทธ์ที่จะประสบความสำเร็จ โดยผมเชื่อว่า “ระบบดีงานจะดีตาม” แต่ความเป็นจริงคือ “ระบบที่ดีหาคนทำตามได้ยาก” ดังนั้นสร้างทีมที่ดีเลยยาก แต่ถ้าทำได้แล้วจะเหมือน “ติดจรวดกันเลย”

Mashup Application

โดยหัวข้อนี้ถือว่าเป็นหัวข้อที่ให้ความรู้ผมมากที่สุดในบรรดาทุก Session Barcamp ในวันนี้ โดยเจ้า Mashup ที่เขาพูดถึงเนี้ยเขาแบ่งเป็น 3 แบบตาม Wikipedia คือ Consumer Mashups , Data Mashups , Business Mashups โดยต้องขอบอกว่าเจ้าคำว่า Mashups เนี้ยเป็นคำรวมๆโดยถ้าคือ “ผสมเข้าด้วยกัน” โดยผมก็สงสัยเรื่องทำไมพวก Digg.com , Zickr.com ถึงเป็น Mashup สรุปผมก็ได้คำตอบก็คือ Mashup คือ “นำสิ่งมารวมกัน” ดังนั้นเจ้า Digg.com หรือ Zickr.com นั้นมันคือคนเอาข่าวสารมารวมกันมันเลยเป็น Mashup ดังนั้น Mashup ไม่จำเป็นต้องเป็น การนำ API , Web Service , Widget เพื่อทำให้เกิดสิ่งใหม่เท่านั้น

มันยังหมายถึงสิ่งที่นำเรื่องต่างๆผสมเข้าด้วยกันด้วย โดยประโยชน์ของ Mashup ก็คือ

  • การรวมข้อมูล
  • การเพิ่ม Features ต่างๆ
  • เพิ่ม Usability (พวก Widget)
  • ทำให้เกิดความแปลกใหม่ โดยออกแรงน้อย

โดยเขาแยกหมวดของ Mashup เป็น 3 หมวดใหญ่ๆคือ Web , Desktop และ Mobile โดยแบ่งเป็นดังนี้ครับ

Web คือพวก Portal , Portlet , Web Aggregator
Desktop คือพวก Widget , RIA
Mobile คือพวก Symbian , Blackberry , Android , iPhone , JavaFX

โดยยกตัวอย่างเว็บไซค์อย่าง MixMasterTube concept ง่ายๆคือสร้าง playlist ของ youtube ขึ้นมาได้ง่ายๆแล้วก็สนับสนุนการ Mix สำหรับงานบันเทิงต่างๆ ก็มีการใช้ Mashup จาก YouTube API ส่วนเรื่องที่พูดต่อมาคือ Mashup กับ SOA เรื่องนี้เป็นเรื่องละเอีัยดมากซึ่ง ผมคิดว่าคุณ @bunthidj ยังพูดคร่าวๆ ไว้ผมต้องลองศึกษาเพิ่ม โดยเขาพูดถึงการทำให้ทางด้าน Enterprise เนี้ยทำงานกับ Mashup แล้วทำให้เกิด production ใหม่โดยใช้ web service เป็นตัวเชื่อมการทำงาน

วิธีคิดทำให้เกิดสิ่งใหม่ด้วย Mashup

ต้องตอบโจทย์ให้ได้ว่า

  1. WTF สิ่งที่ต้องทำใหม่คืออะไร เช่น อยาทำ hi5 ให้มี vote Miss Hi5 Universe
  2. New Concept ใส่ความคิดเพิ่มเข้าไป
  3. Does it need? มันเป็นสิ่งที่ต้องการหรือไม่
  4. Data Source หาแหล่งข้อมูลที่จะทำให้เกิดสิ่งใหม่
  5. Performance & Scalable โดยเรื่องนี้คือสิ่งที่เราจะทำแล้วจัดหามาทำเนี้ยมันเร็วไหม แล้วก็วัดความเสถียรได้ไหม รับจำนวนมากได้ไหม แล้วโดยให้เทคนิคมานิดหนึ่งคือเราจะให้ Client เป็นคนเก็บอะไรบางอย่างแทน Server เพื่อเพิ่มความเร็วแต่อย่าลืมเวลามีอะไรเปลี่ยนแปลงที อาจจะต้องคอย update Client ทุกคน ส่วนเก็บที่ Server Client ก็อาจจะโหลดช้าหน่อยแต่อย่างน้อยก็ update สดใหม่เสมอ
  6. User Acceptance Test ให้ยูเซอร์ยอมรับ ถ้าไม่ก็กลับไปเริ่มกันใหม่ที่ WTF

มาต่อกันด้วย Tools ที่ใช้ในการทำงาน Mashup คือ

  • Dapper.net เป็น web ที่เปลี่ยน data ไปเป็น data แบบต่างๆไม่ว่าจะเป็น XML , YAML , RSS , CSV , JSON , Netvibes Module ต่างๆมากมาย ซึ่งสะดวกในการนำไปใช้อย่างมากครับ
  • Yahoo Pipes เป็นการนำบริการต่างๆมาต่อกันให้เกิด สิ่งใหม่ด้วย Technology Web Service , RSS ATOM โดยตอนนี้รับอะไรต่างๆที่เป็น XML ได้เท่านั้นพวก RESTful ยังอดอยู่
  • QED Wiki รายละเอียดตัวนี้ผมยังไม่เข้าใจ แต่บอกว่าใช้ในเชิง Business
  • Popfly คล้ายๆ Yahoo Pipes แต่เป็นของ Microsoft มีปัญหาใน Linux (เพราะมันต้องใช้ Silverlight)

เครื่องมือที่ใช้ในความเป็นจริงในการทำ Mashup

  • Google App Engine (ให้เราได้ลองผิดลองถูกมากมาย โดยไม่เสียเงิน แต่ผมเขียน python มะเป็น)
  • Python / Ruby / PHP (เสริมเอง)
  • Javascript
  • Adobe AIR / Silverlight
  • JavaFX

โดยมีของคนไทยที่เป็น Mashup ก็คือ Siam Earth , Zickr , Lullar (เว็บนี้ดีครับ) , SedThink (มีของที่เป็น Mashup ครับ App เขาดีจริง โดยความตั้งใจคือจะทำให้มันเป็น Virtual OS) โดยการที่เรานำ Mashup ของใครมาใช้ก็พยายามให้ credit เขาด้วยนะครับ โดยบนสรุปสุดท้ายที่ผมลืมบอกก็คือมันจะ Scalibility ได้อย่างไร ? โดยคำตอบก็คือการใช้ Proxy เข้าช่วยเพื่อช่วยให้มัน Scalibility ได้มากขึ้น โดยท้ายนี้ขอลงท้ายด้วย Thailand Mashup วันที่ 8 พฤศจิกายน 2008 อย่าลืมไปกันนะครับ

Web 2.0 strategic and market

ผมเข้ามาตอนเริ่มไม่ทันมั่วแต่เลือกว่าจะเข้าห้องอะไรดี พอเข้ามาก็พูดถึงมุมมองของ GeekGuy กับ Businessman โดยฝั่ง Geek มองในมุม Innovation มากกว่าส่วน Business มองในมุมการสร้างความพึงพอใจให้กับลูกค้าและการเกิดรายได้ โดยคุณ MacroArt ได้เสนอว่า Product ที่เกิดมาทั้งหมดมีแค่บางส่วนที่เข้าถึงผู้บริโภคจำนวนมาก โดยพี่อภิศิลป์แนะนำว่าถ้าอยากทำ Web 2.0 ให้ตีตลาดนั้นควรทำดังนี้

  • ทำ Localization เพื่อเข้าถึงกลุ่มคนในแต่ละประเทศ
  • ทำให้สำหรับ community บางกลุ่มโดยเฉพาะ
  • ทำในหมวดหมู่ที่แตกต่าง (จากที่มีอยู่)

ทำสินค้าที่แตกต่างได้อย่างไร ?

  • ต่อยอดจากสิ่งที่มีอยู่แล้ว เช่น ใช้ API
  • Mashup
  • นำของเดิมมาใส่ Concept ใหม่ เช่นใช้ Pligg เฉพาะทางเรื่องดนตรี
  • Innovation

ต่อยอดสิ่งที่มีอยู่แล้ว

โดยตัวอย่างก็เห็นภาพครับ เช่น นำ api hi5 มาทำต่อเพื่ออาจจะทำ Voting System เพื่อค้นหา Hi5 Universe หรือจะทำ Collaborative filtering หรือถ้าคุณชอบคนนี้ “คนนี้คุณก็น่าจะชอบด้วย”

Mashup

คือการนำของที่มีอยู่แล้วมาผสมกันทำให้เกิดสิ่งใหม่ โดยในตัวอย่างนี้ ก็มีเว็บชื่อ DudeWheresMyUsedCar โดยได้นำ Ebay motor มาผสมกับ Google Map ทำให้เกิดสิ่งใหม่แบบนี้ เป็นต้น

นำของเดิมใส่ Concept ใหม่

นำสิ่งเดิมๆมาเสนอในรูปแบบใหม่ๆ โดยพี่อภิศิลป์ ได้เอา Diary60.com มาโชว์ว่าเป็นการทำ Diary โดยใช้ Podcast แล้วมี concept ที่ว่าเขาจะพูดชีวิตใน 1 วันย่อให้ฟังเหลือเพียง 1 นาที เป็นการใช้ของเดิมๆแต่ concept ใหม่ซึ่งทำให้เกิดความน่าสนใจมากขึ้นครับ

ส่วนเรื่อง Innovation หมดเวลาซะก่อนพี่อภิศิลป์ ก็บอกว่าติดตามต่อได้ใน Macroart’s Blog ครับ

How to get Venture Capital for Thai IT Company

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

NIA - National Innovation Agency มีทั้งให้ยืมและิให้ฟรีโดยให้ยืมแบบดอกเบี้ย 0%
SPT - Software Park Thailand เป็นแหล่งเงินทุนและช่วยเป็นพี่เลี้ยงให้ด้วย

โดยการที่เราเข้าไปหา VC เนี้ยนอกจากเรื่องเงินเนี้ย เราจะได้ Blue Money หรือพวก connection หรืออะไรต่างๆที่ทำให้เกิดการมีเงิน โดยหัวข้อนี้สรุปๆได้เพียงเท่านี้ โดยอื่นๆก็คือนอกจาก VC เนี้ยหาจะหาเงินจากทางไหนได้บาง โดยส่วนใหญ่ก็หาจาก Connection เนี้ยและ (ในเมืองไทยนะ) เพราะเราไม่มี Angel Investor จริงๆนี้น่า

Testing Complex Web Application (Discussion)

ในงานนี้มีแต่ฝรั่งคุยกันเราคนไทย ก็ไม่รู้จะคุยอะไร 555+ โดยเรื่องของเรื่องก็คือ เขาแนะนำว่าการ Test เนี้ยควรจะใส่ Mockup Data ที่มันประหลาดกว่าการใส่ผ่าน Form โดย Django สามารถใช้ Selenium ช่วยในเรื่อง test ได้โดยคุณผู้หญิง ก็เริ่ม discuss เรื่องปัญหาที่เกิดขึ้น (ซึ่งมันชักไม่ใช่เรื่อง test แต่เป็นเรื่องของ app ที่ผูกกันจนทำให้ test เสียเวลาจำนวนมาก และมีข้อผิดพลาดได้ง่ายเวลาเกิดการเปลี่ยนแปลง) โดยเขาบอกว่าการใส่ Timestamp เข้าไปใน database จะช่วยเรื่องในการทำ Test ได้ดีเพราะเราจะรู้ว่า data ตัวนี้เกิดขึ้นเมื่อไรแล้วมีการเปลี่ยนแปลงล่าสุดเมื่อไร (เหมือนที่ Rails ทำให้เอง)

คุณผู้หญิงปัญหาของเขาก็คือ app มันผูกกันจนทำให้เธอเสียเวลาทุกๆครั้งแม้จะเกิดการเปลี่ยนแปลงในระบบเพียงเล็กน้อย เพราะมักจะเกิด bug ตลอดเวลาแก้ไข้ทำให้เธอต้องเสียเวลา run test ทุกๆครั้งเป็นเวลา 20 นาทีต่อครั้ง (แล้วคิดดูทำกันทีกี่ครั้งต่อวัน) ตอนแรกพูดไปก็ยกเรื่อง Scope of Test (หรือขอบเขตที่เราจะ test) และ User Story เพื่อแก้ไข้ปัญหา แต่คุณผู้หญิงก็อธิบายเพิ่มว่ามัน dependency กันมากทำให้เธอต้องทำ test ในทุกๆส่วน โดยสรุปแล้วปัญหามันอยู่ที่ app ไม่อำนวยเพราะ Design ไม่ดีพอที่จะทำเป็น functional test หรือ unit test บางส่วนแล้วทำให้ไม่เกิด bug ได้

โดยเขาแนะนำ tool ที่ช่วยในการ test คือ Selenium IDE และ Twill แต่สิ่งปัญหาต่อมาที่เขาถามว่า test ยังไงคือ javascript และ ajax โดยผมสรุปแล้วก็คือ เขาก็บอกว่าถ้ามีคน tools ที่สามารถ test ajax ได้จะทำให้คุณเป็นมหาเศรษฐีเลยทีเดียว (เพราะมันทำได้ยาก เพราะไหนจะต้อง test javascript framework ได้ด้วย) โดยก็จบแบบ งงๆเนี้ยและครับ

E-Commerce 2.5

โดยเรื่องของ E-commerce เรื่องนี้ผมขอใส่ idea ตัวเองเสริมเขาไปละกันครับ เพราะสิ่งที่ได้ฟังมาผมจดไม่ทัน ผมรอ slide พี่ Pawoot แล้วจะมาทำความเข้าใจอีกที โดยยุค E-commerce 2.0 คือการปล่อยให้คนสร้าง community ของตัวเองได้ , มีการให้ feedback , มีการใช้ tag สำหรับสินค้า (อันนี้คือสิ่งที่เสนอ idea กันว่ามันควรมีอะไรบ้าง) โดยเขาพูดว่าการที่มันจะเป็น E-Commerce 2.0 ประกอบด้วยส่วนหลักๆดังนี้

  1. ทำยังไงให้สินค้าขายได้และบอกต่อ (สินค้าต้องดีและน่าพูดถึง)
  2. สินค้าต้องไหลผ่าน Social มากขึ้น
  3. จะต้องมีความเป็นนวัตกรรมใหม่มากขึ้น
  4. เราต้องอยู่เมื่อลูกค้าต้องการและไม่อยู่เมื่อเขาไม่ต้องการ

โดยก็มีการคุยและ Discussion มาและอธิบายใส่ส่วนของ Open Source Mart ที่ใช้ดีๆโดยพูดถึงคือ Magento และผมกับพี่ฟิวส์ เสริมในเรื่องของ PrestaShop แล้วเขาก็พูดถึงการทำ Marketing 2.0 จาก slide เก่ามาให้ฟัง (ซึ่งผมไม่ได้จดแล้วจำไม่ได้) โดยสรุปสุดท้ายแล้วถ้าเรานำ E-Commerce 2.0 + E-Marketing 2.0 = E-Commerce 2.5 ? โดยผม share idea เสริมนิดหนึงครับว่าการสร้าง E-Commerce 2.5 มันน่าจะเกิดจาก “ที่สินค้าเดิมๆสามารถ customize ได้และยอมให้สร้างเป็น new brand ให้คนทำ affiliate ได้” แล้วก็จะ Win Win เพราะคุณได้ขายสินค้า คงนำไป customize ต่อได้และสร้าง brand (โดย software customize เนี้ยเราต้อง provide ให้เขา)

เกร็ดเล็กเกร็ดในการเริ่มต้นบริษัทขนาดเล็ก

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

  • เทคนิค - เทคโนโลยี
  • คน
  • บัญชี - การเงิน
  • การบริหารจัดการ
  • การเติบโตหรือทดถอย

โดยผมมาไม่ทันเรื่องแรก “เทคนิค-เทคโนโลยี” แต่มาพูดเรื่องคนเนี้ยยาวเลยครับ ว่าเราจะวัดยังไง บางคนก็บอกให้ใช้ดูที่ “Labtop” ว่าใช้ยี่ห้ออะไร บางคนก็บอกว่าต้องให้ลองทำงานจริง ถ้าผ่านโปรถึงจะให้เต็ม พี่วุทมีบอกถ้าผ่านโปรก็มีจ่ายย้อนหลังด้วย (ซื้อหวย) โดยประสบการณ์ที่พี่อภิศิลป์มา share คือ Pantip ครับโดยเริ่มต้นจากเงิน 2 แสนบาทอยู่ได้ 2 ปีแนะแล้วหลังๆก็เริ่มเลี้ยงตัวเองได้เรื่อยมา บางคนก็บอกใช้วิธีการเข้าไปในบริษัทแล้วค่อยๆสร้างกลุ่มแล้ว Outsource ให้บริษัทแม่

โดยเขาบอกว่าธุรกิจ IT ที่อยู่รอดมาคือ ไม่ใช่เน้นที่เงินทุนเยอะทำเร็วๆ แต่เน้นไปที่ำทำธุรกิจที่สายป่านยาวๆ แล้วไม่ต้องหวังในเรื่อง office ที่หรู่หร่าและจะทำให้รอด (low cost management) และส่วนใหญ่จะเริ่มจากกลุ่มเพื่อนๆ โดยที่ผมจดมาและจำได้ก็ประมานนี้ครับ

Continuous Integration

โดยต้องพูดก่อนว่าเจ้า CI (ขอเรียกย่อๆนะครับ อย่าสับสนกับ Configuration Item นะครับ) โดย CI เนี้ยเหมาะกับงานเป็นทีมครับ idea ก็คือเราจะทำยังไงให้เวลาเราโค๊ด จาก repository (พวก SVN CVS) ไปทำแล้วพอทำเสร็จกลับมา แล้วจะนำไป commit ใน repository ตามเดิมแล้ว เราก็ต้องการรู้ว่า code ของเรานั้นมีผลอะไรกับ software รึเปล่า ดังนั้นเจ้า CI นี้ก็เป็น concept หนึ่งที่มาช่วยแก้ปัญหานี้ (จะสังเกตุได้ว่าต้องมีการ code เป็นทีม ถึงจะเจอปัญหานี้)

ดังนั้นเขาก็เลยพูดว่าการจะทำ Continuous Integration นั้นต้องการอะไรบ้าง

  • Source Control Repository Monitor
  • Code Standard Check (Optional)
  • Unit Testing
  • Code Test Coverage
  • Fuctional Testing
  • Build
  • Deployment
  • Result Notification

โดยถ้าอยากจะทำ CI จะต้องทำพวกนี้ถึงจะเกิดผล โดยเขามี Recipe ของตัวเองที่ทำขึ้นมาลองจริงคือ

  • buildbot (ตัว build)
  • django
  • nose test (unit testing tool ของ python)
  • figleaf (functional testing)
  • selenium rc (web ui test tool ส่วนหนึ่งของ functional testing)
  • django patch for running selenium

โดยการทำงานนั้นก็คือเมื่อเราเปลี่ยนแปลง code เสร็จนั้นจะทำการสร้างอะไรที่เกี่ยวข้องต่างๆให้เรา แล้วนำไปวางบน repository ให้เราเสร็จแล้วรายงานผลการ test ในส่วนต่างๆให้เรารู้ ประโยชน์ก็คือ เราสามารถรู้ได้ทันทีว่า code ที่เราใส่ไปนั้นมีผลต่อระบบ เ่ช่นไร ดังนั้นเมื่อมันเกิดปัญหาเราก็สามารถกลับไปใช้ code ตัวเก่าได้จากความสามารถของ Repository อย่าง CVS SVN รวมถึงอาจจะรู้สาเหตุแล้วนำมาแก้ไข้แล้ว commit code เข้าไปใหม่ได้

How to date Japanese Girl

หัวข้อสุดท้ายแล้วครับ คนดูเยอะมากกกกกกกกกกกกกกกกก แล้วก็สนุกมากๆด้วยครับ โดยผมได้มา 2 คำคือ Kimoi อ่านว่า กิ-โม-อิ (ไม่ใช่กิโมจิ ในหนังนะ) แล้วก็ Uzai (อันนี้จำมิได้) แต่คำแรกแปลว่า รู้สึกแย่ ส่วนคำสองคือ น่ารำคาญ แล้วก็ Daijoubu ที่แปลว่า Are you ok ? โดยผมก็ได้แต่คำศัพท์นี้และครับ แล้วก็จำได้นิดหน่อยๆเกี่ยวกับ Japanese Girl โดยสาวญี่ปุ่นโสดที่อยู่ในเมืองไทยจะอยู่ ทองหล่อแล้วก็ซอยรางน้ำ โดยเฉพาะสุขุมวิท 33 (เขาบอกมางี้อะนะ จากหญิงญี่ปุ่นแท้ๆ) แล้วจะชอบไป pub , bar ที่ดังๆ ดังนั้นถ้าอยากเจอสาวญี่ปุ่นก็แถวนั้นได้เลย แต่เขาก็บอกมาว่าสาวญี่ปุ่นเป็นอย่างไรชอบอย่างไร ?

  • สาวญี่่ปุ่นไม่ชอบให้ต่อแยมากเหมือน “stalker” หรือผู้ย่องตาม
  • ไม่ชอบคำถาม “ทำอะไรอยู่” หรือ SMS ที่ถามว่าทำอะไรอยู่ มันน่ารำคาญ
  • ชอบผู้ชายที่มีเมตตาจริงๆไม่ใช่เสแสร้ง

ผมจำได้ประมาณนี้มีใครจำอะไรได้บ้างครับ แล้วเขาก็ปิดท้ายว่า “สาวญี่ปุ่นในไทยไม่เหมือนสาวที่ญี่ปุ่น แต่ก็เป็นชาวญี่ปุ่นนะ” โดย session นี้สนุกและข้ำกันสุดเลยครับ

5 เหตุผลที่ Open Source ดีต่อคุณ

หายไปหลายวันครับป่้วยหนักเป็นไข้ตอนนี้ลางาน เพราะออกหัด เอาละเข้าเรื่องเลยครับ ตอนนี้ผมลงเครื่องใหม่แล้ว โดยตอนนี้เป็น OpenSource ทั้งเครื่องครับ ยกเว้น Windows ตอนนี้ผมก็รู้สึกได้ว่าผมใช้ OpenSource แล้วดียังไงครับ อันนี้คือในการใช้ Windows แล้วที่เหลือเป็น OpenSource นะครับ

  1. ไม่ผิดลิขสิทธิ์ , ฟรี และใ้ช้ดี อันนี้ผมยืนยันได้ว่ามีหลายโปรแกรมที่ดีแต่ไม่มีใครรู้ัจักแล้วมันใช้แทนโปรแกรมปัจจุบันที่เสียเงินของท่านได้แน่นอนครับ
  2. ไม่เจอ Trojan  , Spyware ท่านเคยรู้ไหมว่าจำพวก crack ที่เราลงๆไปนั้นเป็นหนทางหนึ่งที่ Trojan หรือ Spyware เข้ามามากที่สุดในเครื่อง ซึ่ง OpenSource ทำให้ผมไม่ต้อง Crack เลยไม่มี !!
  3. โปรแกรมบางตัวดีกว่าตัวที่เสียเงินอีก เช่น KMPlayer , InfraRecorder , Spyware Terminator
  4. ได้เรียนรู้โปรแกรมใหม่ๆ และวิธีใช้งานที่แตกต่างจากของเดิมๆ ฝีมือในการใช้ไม่ได้ยึดติดที่โปรแกรม
  5. เป็นการพัฒนาความคิดหนทางหนึ่ง ที่ต้องแก้ปัญหาเดิมๆด้วย Solution แบบฟรีๆ

วันนี้ผมลาพร้อมกับแนะนำโปรแกรมฟรีดีๆบน Windows ให้ทุกท่านได้รู้จักกันนะครับ เจอกันโอกาสหน้าครับ ;)

  • InfraRecorder โปรแกรม Burn ดีๆ
  • jZip โปรแกรมแทนที่เจ้า WinRAR แถมฟรี
  • Pictomio โปรแกรมดูภาพแบบสวยๆ
  • CCleaner โปรแกรมจัดการ Registry และ DiskSpace
  • Kompozer โปรแกรมคล้าย Dreamweaver ทำงานแทนได้เยี่ยม
  • AdobeReader 9 โปรแกรมอ่าน PDF ฟรีแล้วนะครับ
  • DVDFlick โปรแกรมทำไฟล์ต่างๆใส่แผ่น DVD

ไว้ผมมาแนะนำโปรแกรมใหม่โอกาสหน้าครับสำหรับเอ็นทรี่นี้ลาไปก่อนครับ

ความประทับใจ Thailand Next Web Apps 2008

ว๊าวว ผมกลับมาแล้วครับหลังจากไปเข้าร่วมกับงานตั้งแต่เวลา 10.00 - 19.00 ประมาณนี้นะครับ ไปงานนี้ก็ได้ทั้งความรู้ใหม่ๆ แนวคิดใหม่ๆ แล้วก็โลกปัจจุบันที่เปลี่ยนแปลงในทุกๆด้านไปมากแล้ว ขอเล่าเพียงย่อๆนะครับ ตอนนี้มีคุณ ifew บล็อคเรื่องนี้แล้ว แถมมีรูปด้วยลองเข้าไปดูกันได้ครับ ตอนนี้ผมจะพูดถึงความรู้ที่ได้กลับมานะครับ ผมได้เขาร่วมดังนี้เลยครับ

Lighting Session ตอนเช้า (10.30 - 11.15)

ตอนนี้จะเปิดโอกาสให้คนขึ้นพูดคนละ 5 นาที เพื่อขาย idea หรือโปรโมต concept ต่างๆของ website ตัวเองโดยจริงๆ ตั้งใจไว้ 5 นาทีแต่ทุกคนพูดประมาณ 15 นาที แต่ได้ idea มาเยอะครับ โดยคุณ @sugree ก็ขาย concept Brainstorm โดยผมว่า ผมก็เคยคิดเรื่องนี้ แต่ไม่ได้คิดเป็น business model ที่ใหญ่อย่างเขา ลองไปอ่านในบล็อค ifew กันได้ครับ น่าสนใจอย่างมาก ต่อมาก็คุณ GreenDog มาพูดเรื่อง User Experience ผมก็ชอบที่มีคนมา share เรื่องดีๆแบบนี้ให้คนฟังกัน

โดยผมก็เคยศึกษาเรื่องนี้มาบ้างเลย รู้ว่ามันเป็นเรื่องสำคัญ ต่อมาในช่วงเช้าด้วยการเวลามันค่อนข้างตรงในอีกห้องหนึ่ง ผมเลยได้ฟังคนสุดท้ายคือคุณ pittaya ผมทึ่งกับเว็บ fwdder.com ที่เขาเสนอมาเพราะเมื่อก่อนไม่รู้ว่าเขาทำ แล้วมันยังไม่ดีขนาดนี้ พอกลับมาดูอีกทีโอโห้สุดยอดไปเลย แต่ผมก็ฟังคุณ pittaya เป็นคนสุดท้ายเพราะผมอยากไปดู 10 Reason That I Love Rails อีกห้องหนึ่ง

10 Reason That I love Rails (11.15-12.40)

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

“Treating Code as an essay” ในหนังสือ “Beautiful Code”

เขาก็บอกว่ามี Framework อะไรบ้างที่ทำตามแนวทางของ Rails ก็มี CakePHP , Symfony , TurboGear , Django (แต่เท่าที่ไปฟังคนเขียน Django พี่บอลเขาพูดผมว่า Concept ต่างกันอยู่) โดยส่วนใหญ่เหมือนจะอธิบายมากกว่า ว่า Rails ทำงานเช่นไร แต่เนื้อหาก็พยายามบอกข้อดีของมันออกมาอยู่ดี Rails มีอะไรดีบ้าง

  • มีการใช้ Filter เช่น before_save , before_create
  • ในฝั่ง view จะเป็น variable ได้จาก controller ทันที
  • มีคำสั่ง render :partial เหมือน include ของ php แต่อ่านเข้าใจกว่าแถมใส่ collection ได้ด้วย
  • มีตัว validation ใน model ให้ด้วย เช่น validates_length_of :name เป็นต้น
  • มี Callback ในฝั่ง Model ได้เช่นจะทำการแปลงค่าก่อนนำไป validate
  • มี Ajax Helper ด้วยครับ (แต่ผมว่า code มันยังไม่สวย แค่ Readable)
  • plugin ดีๆที่เขาแนะนำมา HAML , ActiveScaffold , MakeResourceful , Capistrano , Rpec โดยส่วนตัวผมชอบ ActiveScaffold , Capistrano แล้วก็ Rspec แต่ HAML ก็ีดีเหมือนกันแต่ว่า ยังไม่โดนใจ
  • พูดเรื่อง RESTFUL ครับโดย Rails 2 นี้ค่อนข้างเน้นมาก แต่ก็ถูกต้องแล้วครับ !!

จบไปกับอีกหนึ่ง Session แต่ว่า Session นี้ค่อนข้างเข็มข้นเพราะมีคนเสนอ idea จาก framework ตัวอื่นกันเช่น Django ซึ่งพอได้มีโอกาสคุยกับพี่เขาตอนกินข้าวนี้ ผมว่ากินกันค่อนข้างยาก เพราะฟังจากแนวคิด Django แล้วเขาขาย idea คือ loosely couple แล้วก็ reuseable , elegant url แล้วอะไีรอีกอันจำไม่ได้ แต่แค่นี้ก็ Work มากๆผมว่าเจ้าสอง framework นี้คงตีกันไปอีกนานครับ

Web Standard (หลังจากนี้จะไม่พูดเรื่องเวลาแล้วเพราะผมไม่ได้ดู + จำไม่ได้)

เรื่องเว็บ Standard เนี้ยผมก็ค่อนข้าง OK แต่ผมก็ค่อนข้างรู้ดีอยู่แล้ว ว่ามันเป็นยังไงเลยเข้าไปฟัง เพราะ Session นี้หน้าฟังกว่าอีก Session หนึ่ง (สำหรับผมนะครับ) โดยผมจะเอาเฉพาะที่ผมได้ความรู้เพิ่มมานะครับ ในส่วนนี้เขาก็พยายามให้ยึดหลัก Web Standard ให้มากที่สุดแต่ไม่ต้อง 100% ครับเพราะมันอาจจะมีเหตุการณ์ที่เราต้องใช้แต่ไม่ถูก W3C เช่น กรณีผมต้องการให้ปิด autocomplete ใน form ต่างๆแต่ถ้าใส่ไปแล้วก็จะไม่ถูก w3c โดยเขาให้ยึดตาม standard มากที่สุดแต่ ไม่จำเป็นต้อง 100% เพราะให้เน้นให้ความสำคัญเกี่ยวกับ User มากกว่าครับ โดยใน session นี้ก็พูดเรื่อง tableless layout , เหตุผลที่ควรทำตาม , html 4 + microformat กับ xhtml เป็นยังไง , ฯลฯ แต่ก็ได้ความรู้เพิ่มมาหน่อยแต่ก็ ok ครับ

Web Accessibility

เขาก็ขาย idea ว่าทำไมต้อง XHTML + CSS แบบ Strict โดยพอผมฟังแล้วก็ชอบเหมือนกัน พึงรู้เกี่ยวกับ attribute ที่ผมไม่เคยรู้มาก่อนว่ามันมีข้อดีอย่างไร อย่าง lang(uage) ก็สามารถทำให้ bot อ่านรู้ว่าเนื้อหาตรงนี้เป็นภาษาอะไร การทำ link jump ภายในหน้าก็มีข้อดี เพื่อที่คนใช้ที่พิการทางสายตาจะได้ เลือกข้ามไปส่วนเนื้อหานั้นได้เลย หรือถ้าทำจากมือถือก็จะเข้าถึงข้อมูลได้เร็วขึ้น โดยจะมีเรื่อง accesskey ที่ทำให้กด link ด้วย shortcut ได้ เช่น accesskey=”1″ จริงๆแล้วผมก็ตอนแรกยังไม่เข้าใจแต่พอพูดเรื่องมือถือกดแล้ว ก็เข้าใจเลย ว่ามือถือมันกดยาก การมี accesskey จะช่วยให้เข้าถึงข้อมูลเร็วขึ้น

แล้วก็พูดเรื่องข้อดีของ ของการใส่ label ผมก็พึงรู้ว่ามันกดจากตัวอักษรได้ด้วยถ้าใส่ label !! แล้วข้อมูลก็ดู semantic มากขึ้นแล้วก็ถูกกฎ w3c แถมถูกกฎเอาไว้สำหรับคนพิการทางสายตาดูด้วย ส่วนเรื่อง table เราต้องมีการใส่ summary และ caption ไว้เพื่อที่ให้ bot เข้ามาอ่านได้ง่าย โดยเขายึดหลัง W3C และ WAI ครับ

Flexible Rails

มาถึงหัวข้อนี้โอ๋วไม่น่าเชื่อว่าผมโชคดีมากที่ได้มาฟัง Session นี้ทั้งฮา แล้วก็พูดจากคนฝั่ง Java ได้อย่างดี ผมขำตลอดที่เขาพูดถึงเกี่ยวกับกัด Java ฮามาก โดยเนื้อหาจะเป็นเรื่องของ Flex กับ Rails โดยเจ้า Flex เนี้ยผมก็เคยลองแต่ตอนนั้นยัง version 2 อยู่แล้วก็ชอบนะแต่ผมว่ามันยังเขียนยากนิดหน่อย ผมก็เลยยังลาๆไปบวกกับ tools มันยังไม่มีตัว free แต่แล้วพอมา version 3 มี tools ฟรีแล้วครับเป็น plugin ของ eclipse tools ที่ดีที่สุดในโลก (555+) โดยเขาแนะนำว่า ถ้าทำงานกับ Rails อาจจะมีปัญหานิดหน่อยเรื่องการเรียก REST วิธีแก้คือไป deploy บน folder เดียวกันกับ Rails ก็หมดปัญหาครับ โดยเรื่องนี้อาจจะยุ่งยากนิดหน่อย แต่ถ้าเขียน ANT หรือ MAVEN ก็ทำให้ง่ายขึ้นนะครับ ;)

โดยวิธี Flex กับ Rails จะติดต่อกันได้งั้นมี 2 วิธีครับก็คือ 1. WebORB 2.REST (3.SOAP แต่มี REST มาให้จะใช้ทำไม) โดยถ้าใครอยากรู้ว่าทำไม Rails ให้ความสนใจกับ REST มากต้องอ่านที่นี้ครับ WorldOfResources เป็น pdf ครับโดยก็ได้ขาย idea อีกว่้าเวลาใช้ Flex เป็น Front-end แล้วสามารถเรียกราคาเพิ่มได้ง่าย ! (ก็จริงครับเพราะมันสวย) แต่ผมก็คิดว่าถ้าไม่เน้นสวยเน้น functional html css แบบเดิมก็น่าจะเป็นทางออกเหมือนกันครับ โดยเขาก็เสนอว่า Ruby นั้นไม่ต้องพึ่ง IDE ก็เลยโชว์ด้วย Vi Text Editor (ของฟรีและดีครับ ใช้แรกๆงงนิดหนึ่ง) แล้วก็โชว์ Demo ให้ดูครับก็จบครับแต่ผมจะรอวันที่ได้ไป Tranning Rails นะครับจาก Narisa.com

Duocore.TV เกือบท้ายแต่ไม่ท้ายสุด

ผมแฟนรายการ DuoCore คนหนึ่งครับ ผมเคยคิดจะ Email ไปถามเรื่องที่เขาพูดวันนี้พอดีไม่ต้อง Email แล้วครับวันนี้กระจ่างทุกเรื่อง คำถามหายหมด โดยเขาเสนอ Solution ของเขาทั้งหมดไม่ว่าหน้าแรกของ DuoCore ใช้ Pligg ในการทำ แล้วก็แก้ไข้ Template ของ Smarty ของ Pligg แล้วในหน้า Video ก็ใช้ Wordpress มาคุมโดยใช้ Plugin เพียงไม่กี่ตัว โดยเข้าใช้เพียง Akismet กัน Spam , WordTube บล็อค video ง่าย , JW FLV Media Player เขาใช้เพียง 3 ตัวนี้ครับ แต่สำหรับ version 2.6 ขึ้นไปก็จะมี Add Video ที่สมบูรณ์มากขึ้นแล้ว ถ้าไม่ต้องเปลี่ยน style ให้เหมือน YouTube ใช้เพียง Akismet ก็พอครับ

เสร็จแล้วก็บอกว่า DuoCore ใช้ Server อะไรอย่างไร ในที่นี้ไม่รู้ว่าผิดมารยาทไหม แต่ถ้าเขาขอมาให้เอาออกเดียวจะเอาออกทีหลังครับเขียนก่อน เขาบอกว่าใช้เครื่อง Server เพียงดังนี้ครับ

Dell Xeon 3.2 GHz
Ram 1GB ECC (Error Correcting Code Ram Server นั้นและ)
HD 160 gb SATA x 2 = 320gb

ผมกำลังคิดว่าเขาจะจบแล้ว กำลังจะยิงคำถามสรุปว่าเหมือนรู้ใจครับตอบให้ เลยนั้นคือเขาใช้อะไรในการทำ Download หลาย Format เขาก็เฉลยมาว่าใช้กันตั้งแต่ Adobe Flash , QuickTime , FinalCutStudio(Mac) , Video Convert Master ที่เขาบอกว่าดีๆก็มีดังนี้ครับ แต่เขาก็บอกว่าเราก็เคยใช้ Ulead แล้วก็ Premier มาแล้วด้วย โดยเขาบอกว่าเจ้าพวก Open Source ที่มีอยู่ยังไม่สามารถทำให้คุณภาพออกมาดี ขนาดเล็กได้เท่าตัว Commercial โดย Format ต่างๆมีรายละเอียดอย่างไรดังนี้เลยครับ

FLV Format
Video 400kbps
Audio : 64kbps
Algorithm : On2 (มีใน Adobe Flash 8 ขึ้นไป)
Resolution : 480×270px (16:9)

MP4 Format
Video 400kbps
Audio : 64kbps
Algorithm : H264 Algorithm
Resolution : 480×270px (16:9)

WMV Format
Video 576kbps
Audio : 64kbps
Algorithm : WMV 8 Algorithm
Resolution : 480×270px (16:9)

โดย Format พวกนี้เขาก็ได้คุณภาพที่เหมือนใน Duocore เลยครับ โดยเขาบอกว่า WMV ต้องเพิ่ม bit rate ไม่งั้นภาพที่ได้ออกมามันยังไม่ดี ก็เลยต้องเพิ่มเป็น 576kbps ครับจบไปกับ Session นี้ความรู้ที่กรองมาแล้วเยี่ยมมากครับ

Hello World 3D สุดท้ายแล้วโคตรเทพ

ผมคนหนึ่งที่ไม่ค่อยรู้เกี่ยวกับ Flash ว่าเขาพัฒนากันไปถึงไหนแล้ว พอมาเจอ Session นี้เอ้อ….  สุดยอดครับ ผมไม่คิดเลยว่า Flash จะไกลมากแล้ว (ไม่ติดตามข่าว Flash เลย) ส่วนนี้ก็จะเขียนเท่าที่เข้าใจนะครับ โดย Flash สมัยนี้สามารถ Render 3D ได้เร็วพอสมควรแล้วครับ แต่ทั้งนี้ขึ้นอยู่กับจำนวน face ของ Model ที่เราทำว่ามันเยอะหรือน้อย ยิ่งน้อยยิ่งเร็วครับ โดยเขาก็พูดถึงพวก component ดังนี้ครับ

  • papervision
  • nd3d
  • Alternativa3D
  • Away3d

โดย Format ต่างๆที่เข้ามาช่วยทำงานเรื่อง deal ข้อมูลเนี้ยมากขึ้นก็พูดถึง ASE , DAE Format รวถึง Collada ซึ่งเ้จ้า Collada เข้าพูดแล้วน่าสนใจมากครับ มันจะสามารถทำให้เรา map ตำแหน่งของ data ได้เช่น ปกติเรามี model คนกับดาบ แยกกันจะเอาให้มันมา map ต่อกันแล้วมี animation รวมกันก็สามารถใช้ Collada Map เองได้เลยมันก็จะแสดงผล ณ runtime ให้เสร็จแล้ว เขายังพูดอีกว่า เีดียวนี้ Square Enix ก็จะชอบแยกของเป็นส่วนๆ โดยมี Bone , Animation , Component แยกกันหมดแล้วค่อยประกอบด้วย Collada (ไม่รู้ถูกไหม)

โดยเข้ายังบอกอีกว่า 3D สมัยนี้สามารถ Render 2D ได้แล้วนะครับ เราทำ Story เป็น 3D แต่ Render เหมือนการ์ตูน 2D นี้เป็นไปได้แล้วนะครับ แต่เจ้าพวก 3D ที่เขาโชว์เนี้ยเขาได้ลองใช้กับ Flash 10 นะครับเพราะ Flash 10 จะช่วยเรื่อง 3D Shading และ Effect แบบ Pixel มากขึ้นทำให้แสดงผลได้เร็ว โดยใน Flash 10 นั้นต้องมีการ์ดจอรองรับน้อยที่สุดคือประมาณ Geforce 6600 โดยมีเว็บตัวอย่างที่สุดยอดหลายเว็บมากเลยครับ เช่นดังนี้เลย

สวยๆทั้งนั้น ตอนนี้เขาก็ฝากตอนจบไว้นิดสำหรับคนที่มีความคิดอยากจะทำเกม ดังนี้ครับ

  1. รู้ Engine ที่จำทำ
  2. รู้ Model ว่าควรจำทำเท่าไร
  3. คำนวนเรื่อง Face ที่ใช้น้อยๆเน้น Texture

จบแล้วครับสำหรับทุก Session วันนี้ผมเขียนเยอะแล้วเหนื่อยขอลาอาบน้ำนอน ก่อนนะครับ ไว้เจอกันที่ BarCamp Bangkok2 กันนะครับสำหรับคนที่สมัครไปแล้ว

« Previous PageNext Page »