สร้าง HTML5 Apps สำหรับมือถือทุกค่ายด้วย PhoneGap

PhoneGap เป็นแพลตฟอร์มการเขียน Application โดยใช้ HTML5 และ Javascript ซึ่งคุณสามารถใช้ในการสร้าง Application บนมือถือได้หลากหลายแพลตฟอร์ม เช่น iPhone, Android, BlackBerry, webOS, Windows Mobile และ Symbian เป็นต้น PhoneGap จะมาพร้อมกับ PhoneGap API เพื่อใช้ในการเขียน App และ Plugin ต่างๆ ซึ่งทำให้คุณสามารถสร้าง HTML5 Application ได้ง่ายๆ และที่สำคัญหากคุณเขียน Application เป็น HTML5 + PhoneGap API อยู่แล้ว คุณสามารถใช้ PhoneGap Builder ช่วยสร้าง App สำหรับแพลตฟอร์มอื่นๆ ได้เลย โดยไม่ต้องแก้ไขซอร์สโค้ดแต่อย่างใด





สำหรับท่านที่อยากทดลอง ก็สามารถเข้าไปดาวน์โหลด PhoneGap ได้ที่ http://www.phonegap.com สำหรับ PhoneGap Builder สามารถใช้งานได้ที่ https://build.phonegap.com

Tablet เด็กประถม 10 นิ้วกำลังดี

เรื่องสืบเนื่องมาจากอาทิตย์ที่แล้ว หลังจากได้ Blog เรื่อง Tablet เด็กประถมไม่ต้อง 100 เหรียญก็ได้ ทาง MICT ก็ส่งเครื่องตัวอย่างมาให้ติดตั้งโปรแกรม ซึ่งมีหลากหลายยี่ห้อ หลากหลายขนาดกันเลยทีเดียว แต่ประเด็นที่สำคัญที่สุดคือมาจากประเทศจีน เนื่องจากมีเวลาได้จับเพียงแค่ 1 วัน เท่าที่จำได้มียี่ห้อและขนาดดังนี้

  1. TCL 7 นิ้ว
  2. SCOPE 7 นิ้ว
  3. ZTE 7 นิ้ว
  4. HaiPad (PAD001) 7 นิ้ว
  5. Huawei MediaPad 7 นิ้ว
  6. ZhiQi TEN2 9.7 นิ้ว
  7. Lenovo k1 10.1 นิ้ว

เท่าที่ได้ทดสอบพบว่า Tablet จากจีนยิ่งมีขนาดเล็ก spec ก็จะเล็กตามไปด้วย ส่วนจอใหญ่ก็มี spec ที่ดูพอเหมาะกับราคา ซึ่งจอ 9.7 นิ้วขึ้นไปจะใช้จอแบบ Capacitive เป็นส่วนใหญ่และ CPU มีความเร็วอยู่ราวๆ 800 Mhz – 1 GHz นอกจากจะได้ Tablet มาลองติดตั้งโปรแกรมกันแล้วยังพบปัญหาจุกจิก เช่น

  1. ไม่มี SD Card Slot
  2. เสียบ USB แล้วไม่เห็นเป็น Mass Storage
  3. ไม่มี Android Market มีแต่ AppChaina, IdeaStore ฯลฯ

ผมได้แผ่นสื่อการสอนเด็กประถมจากกระทรวงศึกษาธิการมาด้วย 1 แผ่น พบว่าสื่อการสอนเป็นไฟล์ flash ก็พยายามทำให้มัน run ได้บน Android Tablet อยู่พักใหญ่ สรุปได้เลยว่า Flash ต้องการ spec เครื่องที่สูงเอาการ และการแสดงผลผ่านจอขนาด 7 นิ้วทำได้ไม่ค่อยดีนัก (ภาพแตกๆ เส้นไม่คม) ในรุ่นที่ไม่มี GPU จะทำงานช้าและ crash อีกประเด็นที่ไม่ค่อยแปลกใจนักคือเรื่องสื่อการสอนที่ทำมาเพื่อใช้งานกับ เครื่องคอมพิวเตอร์แล้วพยายามยัดลงมาใน Tablet นั้นทำงานได้ไม่ดีนัก ตำแหน่งในการ Touch กับการ Click ของเครื่องคอมพิวเตอร์และ Tablet แตกต่างกัน ทำให้กดยังไงก็ไม่ขยับไปไหนและหากจอมีขนาดเล็ก 7 นิ้วก็ยิ่งใช้งานได้ยาก แต่หากเปรียบเทียบกับโปรแกรมเพื่อการศึกษาที่เป็น Apps บน Tablet จริงๆ ตัวอย่างเช่น Baby Bus จะพบว่าทำงานได้ดีกว่าและไหลเลื่อนกว่ามาก ถ้าคิดว่าจะ reuse สื่อการสอนเดิมก็คงต้องทบทวนกันใหม่ล่ะครับ จากการได้ทดสอบ Tablet ทั้ง 7 รุ่นทำให้รู้ได้เลยว่านอกจากจีนที่เป็นแหล่งแรงงานผลิตสินค้าที่เป็น ฮาร์ดแวร์แล้วยังสามารถพัฒนาต่อยอดระบบปฏิบัติการบน Tablet ของตัวเองได้ด้วย อ้ออย่างลืม AppChaina ที่เป็น Market ของตัวเองด้วย เห็นแล้วก็น่าทึ่งจริงๆ ครับ

Tablet เด็กประถม ไม่ต้อง 100 เหรียญก็ได้

ผมสนใจเรื่องอุปกรณ์ฝังตัวอยู่นิดหน่อย ทางรัฐบาลก็ประกาศเรื่อง Tbalet สำหรับเด็กประถมออกมาก็ทำให้รู้สึกน่าสนใจ แต่เท่าที่ตามข่าวแล้วรู้สึกไม่ค่อยคืบหน้ามากนัก ก็เลยมาคิดเล่นๆ ว่า สมมุติว่าผมอยากได้ Tablet ตัวเล็กๆ ให้หลานๆ เครื่องมันจะเป็นแบบไหน สำหรับผมแล้วคิดว่าน่าจะได้ใช้นานซัก 3 ปี ตัวเครื่องไม่จำเป็นต้องเป็น iPad หรือ Tablet ราคาแพงๆ CPU คงเป็น ARM A9 1Ghz, RAM อย่างต่ำ 512MB, จอขนาด 7 นิ้ว, สามารถเชื่อมต่อ Wifi, เสียบ USB ได้, ต่อออกจอภาพได้ เพราะเด็ก ป. 4 ทำ presentation กันแล้วครับ 🙂 การเก็บข้อมูลคงเก็บลง SD Card มี Internal Storage อย่างต่ำคง 4 GB และแน่นอนระบบปฏิบัติการต้องเป็น Android ครับ เพราะสามารถปรับแต่งหน้าจอน่ารักๆ ได้หลายแบบ ผ่าน Launcher ต่างๆ ได้ เช่น Go Launcher เป็นต้น และติดตั้งโปรแกรมเพื่อการศึกษาน่ารักๆ อย่าง Baby Bus 🙂 สำหรับการอัพเดทเนื้อหาก็คงติดตั้งผ่าน Education Market เฉพาะ App การศึกษาที่เลือกมาแล้วเท่านั้น ถอด Vender App และ Apps อื่นๆ ใน Android ออกหมด ก็จะเหลือแค่ App ของ Baby Bus, Browser, Youtube, E-Book Reader, Gallery, Camera, Setting เป็นต้น นี่แหละครับ Tabel เล็กๆ สำหรับเด็กที่ผมอยากได้ สำหรับคลังหนังสือเรียนแบบ Multimedia คงต้องรอนักพัฒนาเนื้อหาอิเล็คทรอนิกส์เข้ามาช่วยกันออกแบบและพัฒนา เพราะเรื่องนี้ไม่ได้ใหม่มาก แต่ปัญหาคือทำยังไงให้มีขนาดเล็กและเก็บลงใน Nand Flash ขนาด 4GB ได้หลายเรื่อง 🙂 เก็บหนังสือ Multimedia ได้ประมาณ 200 เล่ม ก็น่าสนใจอยู่นะครับ ถ้ากดเครื่องคิดเลขเล่นๆ เจ้าเครื่องนี้ก็จะราคาประมาณ 4,000-5,000 บาท คงไม่ต้อง 100 เหรียญก็ได้ครับ หรือว่าจะรอ OLPC XO-3 ออกก่อนก็ได้ คิดแล้วก็น่าสนุก ว่างๆ ผมอาจจะเดินหาอุปกรณ์มาประกอบเป็น Tablet สำหรับเด็กประถมดูบ้าง 🙂

เรียนออกแบบงาน 3D ด้วย Blender ภาค 2

เมื่อประมาณกลางปีได้มีโอกาสหัดเรียน Blender เพราะมีโครงการเล็กๆ ที่เกี่ยวกับ render farm บน cloud ที่ใช้ Blender เป็นตัว render ตอนนี้ Blender 2.6.1 ออกแล้วมาพร้อมกับ render engine ตัวใหม่ที่ชื่อว่า Cycles ก็เลยกลับมาเรียน Blender และหัดใหม่กันอีกรอบ แหล่งความรู้ที่สามารถช่วยในการเรียนของผมได้นอกจากที่แนะนำไว้เมื่อครั้งที่แล้ว มีแหล่งความรู้เพิ่มเติมอีก 5 แหล่งได้แก่

และผลงานจากการเรียนในรอบนี้ก็ต้องเอามาให้ดูกันอีกเช่นเคยครับ




Plugin WordPress สำหรับทำ Membership ให้กับเว็บไซต์

พยายามหา WordPress Plugin ทำ Membership อยู่นาน ทดลองหลายตัวสุดท้ายมาจบที่ s2member ซึ่งเจ้าตัวนี้รองรับการสมัครสมาชิกหลาย Level มี Register Form ที่ปรับแต่งได้ง่าย กำหนดเนื้อหาสำหรับสมาชิกในแต่ละ Level ได้ และที่สำคัญ สมาชิกสามารถจ่ายเงินผ่าน PayPal ได้ 🙂 อ้ออีกอย่างผู้พัฒนามี Video แนะนำ แถม Video สอนวิธีการใช้งานและการปรับแต่งยาวกว่า 50 นาทีให้ด้วย สำหรับท่านที่สนใจทดสอบ/ทดลอง ก็ดาวน์โหลด s2member ไปลองเล่นกันได้

พัฒนา Web App บน Cloud ด้วย Zend Developer Cloud

มค้างบทความเรื่อง PaaS สุด Hit อีกตัวหนึ่งไว้ ดองไว้นานไม่ได้เขียนสักที PaaS ตัวนี้มีชื่ออย่างเป็นทางการว่า Zend Developer Cloud หรือในชื่อที่คุ้นหูว่า PHP Cloud ใช่ครับ Platform as a Service โดย Zend บริษัทผู้พัฒนา PHP นั่นเอง ผมได้คำเชิญจากทีมพัฒนา PHP มาได้ 2 เดือนแล้ว พอมีเวลาว่างก็ได้ลองเล่นดู พบว่าสนุกและทำงานได้ง่ายกว่า Cloud ที่เป็น PaaS ของค่ายอื่นๆ มาก PHP Cloud คงไม่ต้องบอกว่าให้บริการ Platform ใด หลักๆ ก็เป็น PHP บน Zend Server มีเครื่องมือครบ ได้แก่ Zend Platform, Zend Optomizer, Zend Gard, MySQL, PHPMyAdmin เป็นต้น ในส่วนการเชื่อมต่อกับนักพัฒนามีได้หลายช่องทาง ไม่ว่าจะเป็น Zend Studio, Eclipse, Git และ SFTP ในส่วน Platform ยังมี App เพื่อรองรับการพัฒนาแบบสำเร็จรูปยังมี Zend Framework, Drupal, Joomla, WordPress, Magento, PHPBB ให้ด้วย สำหรับนักพัฒนาที่พัฒนา Mobule หรือใช้ App เหล่านี้ในการพัฒนาซอฟต์แวร์ต่อยอด

ในขณะที่เขียนบทความนี้ PHP Cloud ยังอยู่ในช่วงของ Technology Preview ซึ่งผู้ที่จะได้ใช้งานต้องได้รับการ Invite จาก Zend สำหรับท่านที่สนใจก็สามารถไปกรอกข้อมูลเอาไว้ก่อนได้เช่นกัน ลงทะเบียนได้ที่ http://www.phpcloud.com จากนั้นก็รอจดหมายตอบรับจาก Zend เมื่อได้จดหมายตอบรับแล้วจะมี Link ที่มี Invitation Key ให้ เมื่อคลิกแล้วก็จะกระโดดมาที่หน้า Login ของ Zend

กรอก Username และ Password ที่ได้ลงทะเบียนไว้ ก็จะเข้าสู่หน้าจอแนะนำ PHP Cloud การใช้งานและการเชื่อมต่อกับเครื่องมือพัฒนาซอฟต์แวร์ต่างๆ

PHP Cloud จะให้เราสร้าง Application Container สำหรับรองรับ App ต่างๆ ที่เราจะพัฒนา ใน Container จะมี Zend Server และ Git มาให้ มาสร้าง Container กันก่อน

เมื่อสร้างเสร็จจะพบว่ามี App Default มาให้ 1 ตัว เอาไว้ทดสอบพร้อม Public URL ผมสร้าง Application Container ชื่อ redlinesoft ก็จะมี Public URL เป็น http://redlinesoft.my.phpcloud.com


หากเพิ่ม App ลงไปก็จะเป็นชื่อ App URL ต่อท้าย เช่น WordPress ก็จะเป็น http://redlinesoft.my.phpcloud.com/wordpress เป็นต้น สำหรับวิธีการเอาไฟล์ขึ้นลงก็ใช้ผ่าน Zend Studio หรือไม่ก็ใช้ Git สำหรับ IDE ตัวอื่นๆ อย่าง Eclipse ก็ใช้ผ่าน Git Plugin สำหรับการทำงานผ่าน Git ก็ง่ายๆ ครับ ตรงปุ่ม Git Access จะมี Git URL ให้เอา Git URL มาใช้
ตัวอย่างเช่น ผมมี App ชื่อ I am Petdo – Jquery Feed อยู่ ก็ใช้ Git Clone เพื่อดึงโค้ดลงมา

git clone https://redlinesoft@redlinesoft.my.phpcloud.com/git/iampetdo.git iampetdo-jqfeed

โดยไดเรคทอรีที่ได้จะเป็น iampetdo-jqfeed มีไดเรคทอรี public อยู่ข้างใน หากต้องการเพิ่มไฟล์ใหม่ก็สั่ง

git add ชื่อไฟล์ที่ต้องการเพิ่ม

และ git commit เพื่อกำหนดว่า commit อะไร เขียน log ในการ commit แต่ละครั้งด้วย เช่น

git commit -m "fix feed via jqfeed plugin"

จากนั้นก็เอาไฟล์ขึ้น โดยสั่ง git push

git push

เป็นอันจบขั้นตอนการเอาไฟล์ขึ้นไปที่ Container สำหรับการทดสอบก็เข้าผ่าน Public URL ของ App แต่ละตัว สำหรับการเพิ่ม App เข้าไปยัง Container ก็กด Link add/remove more apps จะเข้าสู่หน้า App Catalog ดังนี้

อยากได้ตัวไหนก็กดเลยครับ ยกตัวอย่างเป็น WordPress นะครับ เมื่อกดปุ่ม Deploy Application ก็จะเข้าไปยังหน้าตั้งค่าดังนี้

ใส่ข้อมูลให้เรียบร้อยคุณก็จะได้ App WordPress มาอยู่ที่หน้า App Container ดังนี้


จากนั้นก็ทดสอบผ่านทาง Public URL ได้เลย

ในหน้า App Container คุณยังสามารถทำ Snapshot ของ Container ได้สามารถนำเอา Snapshot ไป Deploy ยัง Container ใหม่ได้เล่นกัน เหมาะกับการทำ HA ได้ง่ายๆ สำหรับการย้าย App จาก Container ไปยัง AWS EC2 และ Cloud Provider อื่นๆ ทาง Zend ยังไม่ได้มีการเปิดให้ทดสอบ ถ้าได้มีโอกาสได้ทดสอบก้อจะเอามาเล่าให้ฟังกันอีกรอบครับ สำหรับช่วง Technology Preview นี้ยังไม่มีค่าใช้จ่าย สร้าง App Container ได้เรื่อยๆ หลังจากนี้อาจได้แค่ 1 Container และซื้อเพิ่ม คงต้องรอข่าวจาก Zend กันอีกรอบครับ สำหรับท่านที่ได้ Invite แล้วก็อยากให้ลองเล่นลองทดสอบดูครับ อย่างน้อยก็ได้สัมผัส Zend Cloud ในรูปแบบ PaaS ซึ่งหาใช้กันไม่ได้ง่ายๆ
 

ว่างๆ น่าจะได้ลองเอามาทำอะไรเล่น

ว่างๆ น่าจะได้ลองเอามาทำอะไรเล่น

จัดการมือถือผ่านเบราเซอร์ด้วย AirDroid

ช่วงนี้มี Apps ใหม่ๆ เยอะที่น่าสนุกหลายตัว วันนี้เลยหยิบโปรแกรมที่คิดว่าน่าจะมีประโยชน์สำหรับท่านที่ใช้มือถือและ Tablet ที่เป็น Android มาให้ได้ลองเล่นกัน หลายท่านมักจะลืมพกสาย USB หรือตัวแปลง Mini SD Card ทำให้การทำงานระหว่างเครื่อง PC Desktop กับมือถือหรือ Tablet เริ่มจะไม่ค่อยคล่องตัว ซึ่งผมเองก็มีปัญหานี้ประจำเพราะต้องใช้ Tablet ที่ไม่มี USB Adapter ในการแลกเปลี่ยนไฟล์ที่มีขนาดใหญ่กับเครื่องคอมพิวเตอร์จึงทำได้ลำบาก แต่ผมก็มี Apps ช่วยเลยได้เอามาแนะนำให้ได้ลองกันครับ Apps นี้ชื่อ AirDroid เป็นโปรแกรมเล็กๆ ที่มีคุณสมบัติครบถ้วนที่จะให้คุณจัดการมือถือหรือ Tablet Android ได้ง่ายๆ ผ่านเว็บเบราเซอร์กันเลยทีเดียว มาดูคุณสมบัติของ Apps นี้กันครับ

  • จัดการไฟล์
  • จัดการ SMS
  • จัดการโปรแกรม
  • จัดการภาพถ่าย
  • แบ่งปันคลิปบอร์ดระหว่างมือถือกับคอมพิวเตอร์
  • จัดการข้อมูลติดต่อ
  • จัดการ Ringtone
  • จัดการเพลง

วิธีการใช้งานก็ง่ายมากครับ เพียงแต่ติดตั้ง AirDroid ลงมือถือหรือ Tablet ของคุณ จากนั้นเปิดโปรแกรมขึ้นมา โปรแกรมจะเริ่มต้น web services และแสดงข้อมูล URL ในการเชื่อมต่อพร้อมทั้ง password ในการล็อกอิน ตัวอย่างดังภาพ

จากนั้นเปิดเว็บเบราว์เซอร์ขึ้นมาเข้าตาม URL ที่โปรแกรมบอกจะได้หน้าจอประมาณนี้

ให้กรอก Password ก็จะเข้าหน้าจอหลัก

ที่เหลือก็จัดการไฟล์ รูปภาพ เพลง ฯลฯ ได้สบายขึ้นละครับ



ใครมีมือถือหรือ Tablet ที่เป็น Android ต้องลองครับ 🙂

แสดงการกดแป้นพิมพ์ด้วย Screen Key

Screen Key เป็นโปรแกรมแสดงแป้นพิมพ์ที่เรากดบนหน้าจอเหมาะสำหรับการทำ Video Tutorial เพราะไม่ต้องมานั่ง Insert คำสั่งหรือแป้นพิมพ์บนหน้าจอตอนตัดต่ออีกรอบ ทำให้ง่ายในการทำ Video Tutorial มากขึ้น หลายคนอาจประยุกต์ใช้ในงานอบรมกลุ่มใหญ่ๆ ก็ได้เช่นกัน มาดูการทำงานกันครับ

ติดตั้ง Screen Key ก็ง่ายมาก ดาวน์โหลดไฟล์ .deb ที่เว็บโครงการ แล้วติดตั้งกันได้เลย 🙂

แต่งตัวใหม่ให้ Gnome3

เมื่อวันก่อนนั่งแก้ theme กับเขียน Gnome Shell Extension เลย นึกสนุกแต่งตัวใหม่ให้ Gnome3 หน้าตาออกมาเป็นอย่างที่เห็นใน Video นี่และครับ