Blog

Diary and my think

Online Courses from World’s Experts | Udemy

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

Common sense

20120424-225516.jpg

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

ผ่อนมือถือนาน 18 เดือน

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

น่ารันทดใจกับการทำให้เด็กเป้นหนี้สินยิ่งนัก

ร้อน~~~~

เห็นเค้าบ่นกัน เราก็บ่นกับเค้าบ้าง :) แล้วก็เลยแต่งรูปออกแนวร้อนๆ มาให้ดูด้วย โอ้ย ยิ่งดูยิ่งร้อน

ร้อนๆแบบนี้ ไปกูสาวๆใส่ บิกินีดีกว่า แว๊บ!!!

Travis-ci.org

วันนี้มาแนะนำเว็บ Tool ตัวหนึ่ง ที่มีความสำคัญมากจริงๆสำหรับ Developer และองค์กร คือ http://travis-ci.org/

Travis CI คืออะไร

Travis CI is a hosted continuous integration service for the open source community.

หาคำแปลเป็นภาษาไทยยาก ถ้าเป็น developer develop งานหนึ่งชิ้น จำเป็นต้อง test และการ build ขึ้นมา test แต่ละส่วน หรือ Unit test จะทำได้โดยการเขียน Test ขึ้นมาแล้วสั่งให้ Test

หลังจากที่แต่ละคนทำแต่ละส่วนขึ้นมา ก็ถึงเวลาที่ต้องเอาแต่ละส่วนมาทำงานร่วมกัน ตรงนี้แหละที่ travis CI มีบทบาท เข้ามาช่วยได้อย่างมาก

หากเขียนโปรแกรมแต่ละส่วนและเอามาทำงานร่วมกัน ต้องหา resource เพื่อที่จะทำการ test ให้ทำงานร่วมกันได้ และการ build หลายๆรอบ เพื่อให้ผ่านจนกว่าจะทำงานได้ทั้งหมด ก็ต้องทำหลายรอบ และหลายรอบ :)

ตัว Travis CI จะเข้ามาเป็น กึ่ง automatic เพื่อให้สามารถ build ได้เรื่อยๆ และทำการรายงานผลออกมาว่าผิดพลาดตรงใหนบ้าง

ภาษาที่รองรับ

  • Clojure
  • Erlang
  • Groovy
  • Haskell
  • Java
  • JavaScript (with Node.js)
  • Perl
  • PHP
  • Python
  • Ruby
  • Scala

รูปแบบการทำงานของ Travis CI

  • Travis Hub – ทำหน้าที่ติดต่อกับแหล่งที่อยู่ของ source code เพื่อนำ code เข้ามา test โดยตอนนี้ support github เป็นอย่างดี
  • Travis Server – ทำหน้าที่ในการนำ repository ของ sorcode เข้ามาจัดการ ว่าต้องทำงานที่ใหนอย่างไร โดยการกระจาย code ตามรูปแบบการ config ที่เขียนไว้ ให้ทำงานตรงตามงานที่ต้องการ และตรงตาม Travis Worker ที่เป็น
  • Travis Worker – ตรงตามชื่อ คือทำหน้าที่ในการทำงานหลัก
  • Travis Listener – ทำหน้าที่ในการติดต่อ message notification กับ github และ การจัดคิวงานต่างๆ
  • Travis Boxes – เครื่องมือสำหรับสร้าง VM เพื่อตอบสนองงานต่างๆของ Travis CI

ตรงนี้ไม่ต้องสนใจมากเพราะสิ่งที่เราต้องการคือ การเอา code ไป Test นั่นเอง :)

หลักการคร่าวคือเราจะเขียน config ลงไป ว่าเราทำงานกับภาษาใหน ใช้ environment อะไรบ้างและ test อย่างไรบ้าง เช่น PHP

Tool ในการ test คือ phpunit เพราะฉนั้นเราก็เขียน config ของ Travis CI ให้ทำงานบน PHP version อะไรและ script สำหรับ phpunit ไว้

จากนั้นเราก็เปิดให้มีการเอาไป Test บน Travis CI แค่นั้น :)

วันนี้แนะนำกันแค่นี้ก่อน ถ้าสนใจอ่าน Document ก่อนคร่าวๆ ที่ http://about.travis-ci.org/docs/