BarCamp Bangkok Winter 2008

งานนี้คงไม่ต้องบรรยายอะไรมากนักในส่วนรายละเอียดงานเพราะข้อมูลต่าง ๆ น่าจะหาได้จากเว็บหลักของงานได้โดยตรง

งานเมื่อวาน (26 มกราคม 2551) คนมากันเพียบ ก่อนงานเริ่มก็มากันเยอะแล้วครับ

P1050658

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

P1050660

พี่อาท และพี่ sugree ครับ

P1050666 

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

P1050659

โหวตกันเข้าไป อยากฟังเรื่องไหนก็โหวตครับ

P1050661

P1050663

P1050664

หัวข้อของผมในงานครับ "PHP Framework with Hoffman Framework (opening)" มีคนโหวตเยอะพอสมควรเลยครับ ดีใจมากครับผม แต่รู้สึกว่าตัวเองจะ present ไม่ค่อยดีเท่าไหร่ครับ แต่ตอนนี้ทำทำหน้าสำหรับ Project ตัวนี้แล้วครับอยู่ท่  PHP Hoffman Framework ครับผม คาดว่าจะนำตัว source code ตัวที่ปรับแต่งและแก้ไขหลาย ๆ ส่วนที่ให้สมบูรณ์มากกว่านี้ก่อนครับ

P1050662

ด้านล่างนี่รายการแต่ละห้อง อันนี้ถ่ายช่วงแรก ๆ ที่มีการเรียงลำดับเลยครับ แต่มาหลัง ๆ เห็นว่ามีมากกว่าที่เห็นในภาพเยอะมาก ๆ

P1050669P1050670P1050668P1050672P1050671  P1050673 

หัวข้อที่มีคนเข้าร่วมมากที่ "AV Development Life Cycle" ฮาตลอดงานครับ [TH][EN][JP][KR] โดย Hunt, Keng และ Sugree

P1050684

สุดท้ายหลังเลิกงานก็จบที่ร้านสวนอาหารในซอย สุขุมวิท 33/1 ครับ

P1050688

 P1050689

ส่วนอื่น ๆ อ่านต่อได้ที่ รายงานสด BarcampBangkok ครับผม

รูปภาพต่าง ๆ นั้นมีคนเอาไปใส่ใน Photo Gallery ส่วนตัวและนำมาเผยแพร่แล้วหลายคนครับ ;)

ภาพของผมจากเว็บ http://blog.winginfotech.net/

IMG_9710 IMG_9711

IMG_9713 IMG_9717

ผู้เข้าร่วมในหัวข้อผมครับ

IMG_9714

งานนี้ต้องขอบคุณทุกท่านที่เข้ามาร่วมในหัวข้อของผมครับผม  /||\

ขอบคุณผู้สนับสนุนงานด้วยครับ ที่มีพื้นที่เพื่อคนไอทียุคใหม่ครับ ;)

 

กำลังเตรียมตัวไปงาน BarCamp Bangkok Winter 2008

image

งาน BarCamp Bangkok Winter 2008

จัดในวันที่ 26 มกราคม 2551 โดยจัดที่ร้านอาหาร Indus แถวสุขุมวิท บรรยากาศดีเยี่ยม งานเริ่มตั้งแต่ 10 โมงเช้าจนถึง 6 โมงเย็น แล้วมีปาร์ตี้ข้าวเย็นกันต่อตอนช่วงค่ำ

ตอนนี้กำลังปั่นตัว slide ที่จะเอาไปพูดในงาน 2 ตัว (ในรอบเดียว)

  1. MySQL Tuning นี่คงเอาเนื้อหาเดียวกับที่เคยได้โพสใน entry เก่าไปแล้ว แต่เพิ่มเติมและใส่ประสบการณ์ตรงของตัวเองลงไป
  2. PHP Framework ผมคงไม่พูดถึงตัวอื่นมาก เอาแค่ intro พอนิด ๆ แต่เอา PHP Hoffman Framework (HMF) ไปแสดงก่อน

ซึ่งตัว PHP Framework ของผมเนี่ย ตอนนี้ก็ปั่นตัว implementation code อยู่ ไม่รู้จะทันหรือเปล่า แค่ทำ Routing URL กับพวก Standard Code ต่าง ๆ ใหม่หมดก็เล่นซะหลายวัน รวมถึง Directory structure ก็เพิ่งจะลงตัวไป น่าจะเข้ารูปเข้ารอยในไม่ช้านี้ หลาย ๆ ภายใน Framework ยังไม่นิ่งพอจะเป็น Alpha version ได้ด้วยซ้ำ แถมหลายอย่างที่อยู่ใน 0.1a (ตัวใหม่ผมเรียกมันว่า Rv2 หรือ revolution version 2) ไม่ได้โอนถ่ายมาใส่อีกด้วย เพราะซ้ำซ้อน กับ Zend Components ที่จะเอามาใช้อยู่หลายตัวอย่าง ACL ที่ทำเองใน 0.1a พอมาตัวใหม่นี้ ใช้ Zend_Acl ของ Zend Framework แทน และหลาย ๆ ตัวที่โยกมาใช้ Zend แทนหลายตัวเลย รวมถึงตัว Model ที่ใช้ความสามารถของ Doctrine และ Zend_Db แทนที่ตัว Components ของผมเอง แต่ว่าตัวที่ผมใช้อยู่ก่อนหน้านั้นก็ยังคงมีอยู่ เหมือนเดิม เพียงแต่ไม่ได้เปิดใช้เท่านั้นเอง ส่วน Controller นี่เขียนเองหมดเลย Flow ตัว Controller ต่าง ๆ จัดการเองหมด รวมถึง Standard Structure และ Code ต่าง ๆ ส่วนของ View ก็ใช้ Smarty เข้ามาแทนของเก่าของผมเองทั้งหมดเลย

ตอนนี้ที่ตัดสินใจไว้ทั้ง 3 components หลัก ๆ ก็คือ

LogicModel ใช้ความสามารถต่าง ๆ จาก Doctrine และ Zend_Db และพวก tools ด้าน Business Logic ทั้งหมด
FlowController อันนี้เขียนเองทั้งหมดเพราะหาตัวที่มันโดนใจไม่ได้ ฮา …
RenderView ใช้ความสามารถต่าง ๆ ของ Smarty มาช่วยในส่วนนี้

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

หลาย ๆ อย่าง หลาย ๆ idea มาจากหลาย ๆ Framework มาปรับใช้เข้าด้วยกันบางอย่าง idea ดีมาก ๆ น่าจะทำให้มันทำงานได้ง่าย ขึ้นพอสมควร

แล้วเจอกันที BarCamp ครับ

 

กลับตัวก็ไม่ได้ จะเดินต่อไปก็ไปไม่ถึง (ภาคการศึกษาไทย อีกครั้ง T_T)

โพสต์ทูเดย์ — ผลสำรวจพบเด็กไทยมีความสามารถแข่งขันด้านการศึกษารั้งท้ายนานาประเทศ

หนังสือพิมพ์โพสท์ทูเดย์ ฉบับวันพฤหัสบดีที่ 10 มกราคม พ.ศ. 2551

นางจรวยพร ธรณินทร์ ปลัดกระทรวงศึกษาธิการ (ศธ.)

กล่าวว่า  จากผลการวัดความสามารถการแข่งขันของประเทศต่างๆ ด้านการศึกษาประจำปี 2550 ของสถาบันนานาชาติเพื่อการพัฒนาการจัดการ (ไอเอ็มดี) พบว่า

  • คนไทยมีสมรรถนะอยู่ในลำดับที่ 46 ทั้งนี้ จากการสำรวจทั้งหมด 55 ประเทศทั่วโลก
  • โดยมีผลประเมินแยกตามโครงสร้างพื้นฐานด้านการศึกษา 10 รายการ คือ
  • อัตราส่วนนักเรียนต่อครูประถมได้อันดับ 43 โดยมีครู 1 คนต่อนักเรียน 20.68 คน
  • อัตราส่วนนักเรียนต่อครูมัธยมได้อันดับที่ 48 มีครู 1 คนต่อนักเรียน 21 คน
  • อัตราเข้าเรียนระดับมัธยมอันดับที่ 46 มีเยาวชนอายุ 12-17 ปีได้เข้าเรียนมัธยม 72% จากประชากรวัยเดียวกัน
  • อัตราการไม่รู้หนังสือของผู้ใหญ่อายุ 15 ปีขึ้นไป อันดับ 43 ในอัตรา 7.4%
  • การลงทุนทางการศึกษาของภาครัฐอันดับ 42 มีการลงทุนในอัตรา 4.1% ของจีดีพี
  • ผลสัมฤทธิ์อุดมศึกษา อันดับที่ 39 มีอัตราผู้สำเร็จระดับอุดมศึกษา 18%
  • ด้านการถ่ายโอนความรู้ระหว่างภาคธุรกิจกับมหาวิทยาลัย มีการจัดการศึกษาตอบสนองภาคธุรกิจ ตลาดแรงงานอันดับที่ 42
  • การตอบสนองความสามารถใน การแข่งขันของระบบการศึกษาอันดับที่ 38
  • การตอบสนองความสามารถในการแข่งขันของการอุดมศึกษาต่อภาคเศรษฐกิจและการแข่งขัน อันดับที่ 39
  • ทักษะด้านภาษาที่ตอบสนองต่อความต้องการของผู้ประกอบการ อันดับที่ 48
  • นอกจากนี้ จากการประเมินเพื่อวัดคุณภาพการศึกษาในประเทศเป้าหมาย 41 ประเทศ ด้านการอ่าน คณิตศาสตร์ และวิทยาศาสตร์ ในปี 2550 ของโครงการสำรวจความรู้และทักษะการเรียนของเด็กอายุ 15 ปี (PISA) ในประเทศสมาชิกขององค์กรเพื่อความร่วมมือและพัฒนาเศรษฐกิจ (OECD) พบว่า เวลาเรียน 2 วิชานี้ของนักเรียนไทยน้อยกว่าประเทศอื่น รวมทั้งขาดแคลนครูที่มีความสามารถ อีกทั้งนักเรียนไทยอายุ 15 ปี เขียนสะกดและใช้คำผิดมากที่สุด ไม่สามารถแยกแยะระหว่างภาษาพูดกับภาษาเขียน เรียงประโยค ไม่เป็น เรียบเรียงความคิดลงเป็นการเขียนไม่ได้
  • นางจรวยพร กล่าวว่า ปัญหาการศึกษาไทยมีสาเหตุจากการคิดและอ่านของเยาวชน 4 ประการ คือ

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

     

    แต่ผมว่าเรื่องนี้ไม่ต้องโทษใคร "โทษตัวเองดีกว่า" ครับ ผมว่านะ "พวกเราคือผลผลิตอันสมบูรณ์ของการศึกษาที่ล้มเหลว" อย่างที่พี่เดฟเคยบอกไว้ครับ T_T

     

    ขจัดขยะ Internet บน Google

    สื่อเนื่องจาก เริ่มทนไม่ได้กับขยะในการค้นหาข้อมูล

    image

    (รูปจาก เริ่มทนไม่ได้กับขยะในการค้นหาข้อมูล by audy )

    ตอนนี้ผมลง CustomizeGoogle ซึ่งเป็น Firefox Add-ons ตามที่คุณ nott เค้าแนะนำไว้ แล้วลง Filter site ไว้ โดย

    เอา File google_filter.zip นี้ไป import เข้า filter ของ CustomizeGoogle ซะ มันจะทำการ filter ข้อมูลพวกนี้ออกไปซะ

    แล้วจะได้ผลเป็นแบบนี้แทน

    image

    คราวนี้ก็ลดความกวนใจไปได้เยอะเลย เนื้อ ๆ น้ำ ๆ กับผลการค้นหาขึ้นมาหน่อยแล้วงานนี้ ;)

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

    [Update 11/01/2008 9:52]

    มีคนถามว่าเว็บในไฟล์ที่ให้โหลดมีเว็บอะไรบ้างที่โดนบล็อค ด้านล่างนี่คือรายการทั้งหมดที่โดน block ครับผม

    appjob.com
    truehits.net
    ohsanook.com
    siamha.com
    konthai.com
    thaiza.com
    pangza.com
    24thai.com
    itzaa.com
    tidtak.com
    zengped.com
    mydrmobile.com
    abc-yoga.biz
    ohocute.com
    yingza.com
    lud0xgirlsclub.com
    fwdder.com
    darathai.info
    meemodel.com
    siamhrm.com
    thaieasyjob.com
    jeedza.com
    thaigirlnextdoor.com
    moohin.com
    trirong.com

    โดนกันไปครับ ฮา ……

    [Update 15/02/2008 10:52]

    ดับไปแล้วครับเรียบร้อย

    image

    ดิ่งลงชั่วข้ามคืน 555555

     

    ว่ากันด้วย PageRank

    จากตอนที่ เทคนิดการทำ SEO เบื้องต้นที่ควรรู้ (reloaded) ที่ทิ้งท้ายไว้ใน comment ว่าจะพูดถึงเรื่องนี้วันนี้เราขอพูดถึงเรื่องนี้ซะเลยครับ

    PageRank หรือในอีกชื่อคือ PageRank of E เรียกสั้น ๆ ว่า PR หรือ PR(E) เป็น graph analysis algorithm ในทฤษฎี graph รูปแบบหนึ่ง โดยถ้าใครเรียนในวิชาพวก project management, software engineering หรือ software analysis จะได้เจอในส่วนของ Critical Path Analysis และ PERT (Program Evaluation & Review Technique) โดยที่ PageRank นั้นพัฒนาขึ้นที่ Stanford University โดย Larry Page และ Sergey Brin โดยเป็นงานวิจัยในระดับปริญญาเอก เพื่อการค้นคว้าหาวิธีการใหม่ ๆ ในการค้นหาข้อมูล โดยเริ่มต้นงานวิจัยในปี 1995 และต้นแบบก็สามารถใช้งานได้ในชื่อของ Google ในปี 1998 ในความเป็นจริงที่ว่า PageRank เป็นเครื่องหมายทางการค้าของ Google Inc. โดยมีหมายเลขสิทธิบัตรอยู่ที่ U.S. Patent 6,285,999 แต่ว่าสิทธิบัตรไม่ได้เป็นของ Google Inc. แต่เป็นของ Stanford University (The Board of Trustees of the Leland Stanford Junior University, Stanford, CA)

    โดยที่ Page Rank ตามความหมายที่ Google ให้ไว้คือ

    PageRank relies on the uniquely democratic nature of the web by using its vast link structure as an indicator of an individual page’s value. In essence, Google interprets a link from page A to page B as a vote, by page A, for page B. But, Google looks at more than the sheer volume of votes, or links a page receives; it also analyzes the page that casts the vote. Votes cast by pages that are themselves “important” weigh more heavily and help to make other pages “important”.

    โดยถ้าจะให้เข้าใจได้ง่าย ๆ นั้นก็คือว่า (แปลสรุปเป็นไทย)

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

    ตัวอย่างเช่น

    ตามรูปด้านล่างนี้ครับ

    เรามีเว็บ A, B, C และ D โดยที่ทุกหน้ามี PR(E) อยู่ที่ 0.25

    โดยที่ B, C และ D นั้นลิงก์ไปที่ A โดยที่ A จะได้คะแนนไป 0.25 จากทุก ๆลิงก์เป็น 0.75

     1

    โดยเราจะเขียนเป็นสมการว่า

    image

    ต่อมาเมื่อ B ทำลิงก์ไปที่ C และ D ทำลิงก์ไปที่ A, B และ C ค่า PR(E) ของตนที่จะให้กับหน้าปลายทางจะถูกหารตามจำนวนลิงก์ที่ลิงก์ออกไป ส่วนหน้า D ตามตัวอย่างที่ไม่มีลิงก์เข้ามาที่หน้านี้ ก็จะยังคงค่าคะแนนที่ 0.25 เท่าเดิม (แต่ในความเป็นจริงแล้วจะเป็น 0 หรือค่าตั้งต้นใด ๆ )

    PR(B) / 2 = 0.125 / link

    PR(D) / 3 = 0.083 / link

    PR(C) / 1 = 0.25

    2

    จะได้สมการดังนี้

    image

    เราเรียกวิธีการแบบนี้ว่า link-votes หรือบางครั้งอาจจะเรียกว่า outbound link ก็ได้ โดยใช้ฟังค์ชัน L() แทนด้วยด้วยจำนวน outbound link

    image

    โดยสรุปให้สั้นได้ว่า

    image

    จากตัวอย่างด้านบนที่ได้กล่าวไปนั้น เอามาสร้างแบบจำรองได้ดังรูปด้านล่างนี้ครับ

    image

    Mathematical PageRanks (out of 100) for a simple network (PageRanks reported by google are rescaled logarithmically). Page C has a higher PageRank than Page E, even though it has fewer links to it: the link it has is much higher valued. A web surfer who chooses a random link on every page (but with 15% likelihood jumps to a random page on the whole web) is going to be on Page E for 8.1% of the time. (The 15% likelihood of jumping to an arbitrary page corresponds to a damping factor of 85%.) Without damping, all web surfers would eventually end up on Pages A, B, or C, and all other pages would have PageRank zero. Page A is assumed to link to all pages in the web, because it has no outgoing links.

    นั้นหมายความว่ายิ่งเรามีลิงก์กลับมาหน้าของเว็บเรามากเท่าใด ก็ยิ่งได้รับ PR(E) สูงมากขึ้นเท่านั้น แต่เราต้องผสมกับการใช้ SEO เข้าร่วมด้วยเช่นกัน

    ถ้าจะให้สรุปง่ายก็คือ SEO นั้นทำให้ Crawler เข้ามา index ข้อมูลของเราได้ง่ายมากขึ้น และนำข้อมูลของเราไปจัดอันดับ โดยอ้างอิงจาก PR(E) ด้วยเช่นกัน โดยการที่จะได้ PR(E) สูง ๆ นั้นเว็บของเราต้องมีลิงก์ที่อยู่บนเว็บที่มี PR(E) ที่สูงกว่ามาก ๆ เพื่อช่วยดึงค่า PR(E) ของเว็บของเราให้สูงขึ้นตามไปด้วย ซึ่งบางเว็บที่อยากให้เว็บตัวเองมีค่า PR(E) สูง ๆ มักทำ spam comment หรือ content ขึ้นมาเพื่อสร้างลิงก์ต่าง ๆ ให้วิ่งเข้าหาเว็บหลักของตัวเอง ซึ่งตาม blog หรือ community มักจะโดย spam กันอยู่ในช่วงหลายปีที่ผ่านมานี้นั้นเองครับ

    ปล. ข้อมูลต่าง ๆ ใน entry นี้เป็นระดับเบื้องต้นครับ การจัด PR(E) ของ Google นั้นมีตัวประกอบอื่น ๆ อีกมากมายครับ แต่ที่ผมนำเสนอนี้เป็นส่วนหลักของการทำงานของ PageRank โดยรวมครับผม

    เอกสารอ้างอิง