Tags:
Node Thumbnail

ความเดิมตอนแรก มาต่อตอนที่สองกันเลย สำหรับตอนนี้ผมได้เข้าห้องแยกของแต่ละเทคโนโลยีเฉพาะทางอีก 4 ห้อง

Android

ห้องแรกสุดเป็นเรื่อง Android ของ Mike Jennings คนเดิมที่เปิดตัว Android Phone ไปเมื่อคราวก่อน

สื่อประกอบการบรรยาย มีทั้งสไลด์และวิดีโอ

เนื้อหาที่พูดไม่มีอะไรใหม่นัก เป็นเรื่องพื้นฐานว่าทำไมกูเกิลถึงทำ Android ซึ่งคำตอบคือกูเกิลต้องการแพลตฟอร์มมือถือแบบเปิดจริงๆ ที่ทุกคนสามารถนำไปใช้ได้

  • ค่ายมือถือหรือผู้ให้บริการมือถือ สามารถนำไปปรับแต่งได้ตามต้องการ แถมฟรี
  • นักพัฒนาสามารถสร้างแอพพลิเคชันได้อิสระ ไม่ต้องขออนุมัติจากแอปเปิลเพื่อลง App Store และอนุญาตให้แก้ทุกส่วนของ Android เช่น ไม่ชอบใจหน้าจอโทรออกที่เป็นเลข 1-9 อยากทำหน้าปัดหมุนแทน ก็สามารถทำได้เลย
  • เจ้าของเครื่องก็เล่นกับโทรศัพท์ของตัวเองได้อิสระ อยากลงอะไรก็ตามสะดวก

สถาปัตยกรรมทางเทคนิคของ Android อ่านในตอนก่อน Android Developer Challenge - โอกาสทองของเด็กไทย ท่ีเปลี่ยนไปชัดเจนจาก Android เวอร์ชันแรกๆ คือ XMPP โดนตัดออกไปด้วยเหตุผลด้านประสิทธิภาพ อย่างไรก็ตาม Jennings บอกว่าถ้าคุณอยากได้ XMPP ก็เขียนใส่เข้าไปเองได้เลย

กูเกิลบอกว่าการพัฒนาโปรแกรมบน Android นั้นทำได้ง่ายและทรงพลัง

  • เขียน UI ด้วยภาษาแบบ markup (เหมือน HTML/XUL/XAML)
  • ตัวแพลตฟอร์มออกแบบมาให้สร้างแอพพลิเคชันจริงๆ บนมือถือ กูเกิลใช้คำล้อแอปเปิลว่า "Not just Ajax on phone"
  • สนับสนุน API และโปรโทคอลหลายชนิด เช่น JSON, GData, XML-RPC เป็นต้น
  • ไม่มีระบบ certificate เหมือนกับ Symbian ที่ต้องเสียเงิน

Mike Jennings ย้ำว่าการลงโปรแกรมบน Android สามารถทำได้หลายวิธิี ไม่จำกัดเฉพาะ App Store เหมือนของ iPhone อาจจะเป็นดาวน์โหลดผ่านเบราว์เซอร์ของ Android, ส่งทาง USB หรือ SD card ก็ได้

ส่วนนำเสนอของ Jennings จบเร็วมาก ที่เหลืออีกเกือบชั่วโมงเป็นการตอบคำถาม ซึ่งคนถามแต่ละคนยิงคำถามกันโหดมาก (Jennings บอกว่าโหดที่สุดที่เคยเจอ) ผมเองก็แจมไปด้วย 2-3 คำถาม คัดเอาคำตอบมาแบบสรุปๆ

  • Mike Jennings ไม่ตอบคำถามในเชิงธุรกิจทั้งหมด บอกว่าเขาไม่ได้รับอนุญาตให้พูด ทำให้ข้อสงสัยหลายอันไม่เคลียร์
  • มีคนถามว่า ผู้ให้บริการมือถือมีแนวโน้มจะผูกมัดไม่ให้เจ้าของเครื่องทำโน่นนี่ ไม่เปิดจริงอย่างที่กูเกิลต้องการ แบบนี้จะทำอย่างไร Jennings ตอบว่าวิธีคิดมันต่างกัน และกูเกิลจะพยายามเปลี่ยน
  • กูเกิลกำลังทำระบบ App Marketplace ตามข่าวเดิมที่ออกมา และหวังว่าคนจะมาใช้ แต่ไม่ห้ามการตั้ง App Marketplace เองของนักพัฒนา
  • เบราว์เซอร์บน Android ไม่ใช่ Chrome แต่มีแนวคิดบางอย่างใกล้เคียงกัน และใช้ WebKit เหมือนกัน
  • คำถามเรื่องความปลอดภัยเป็นเรื่องที่คนถามกันมาก กรณีที่มีโปรแกรมบนมือถืออาจจะโทรออกอัตโนมัติหรือถ่ายภาพเรากลับไปยังคนทำ จะป้องกันอย่างไร คำตอบคือหลังการติดตั้งโปรแกรมเสร็จ Android จะถามผู้ใช้ว่า โปรแกรมนี้ต้องการสิทธิ์อะไรบ้าง และเราสามารถเลือกอนุญาตได้
  • มีคำถามต่อว่าการอนุญาตเป็นสิทธิ์ๆ ไป จะยากเกินไปสำหรับผู้ใช้ระดับทั่วไปหรือไม่ Mike Jennings ตอบไม่ได้ อารมณ์ว่าไม่ได้รู้ทั้งหมดใน Android
  • นักพัฒนามีสิทธิ์แก้ไขตัวซอร์สของ Android และนำไปแจกจ่ายได้อย่างไม่จำกัด แต่ถ้าอยากใช้ชื่อ Android จะต้องผ่านกระบวนการทดสอบมาตรฐาน ซึ่งจะออกตามมาทีหลัง
  • คุณ @chanwit/cblue ฝากคำถามมาทาง Twitter ว่าเวอร์ชวลแมชีน Dalvik จะเปิดซอร์สโค้ดหรือไม่ คำตอบคือ เปิดในอนาคต
  • Android จะสนับสนุน pushmail
  • เอา Android ไปรันบนอุปกรณ์ฝังตัวแบบอื่นที่ไม่ใช่มือถือได้หรือไม่ คำตอบคือ ทำไมจะไม่ได้ล่ะ

ปิดท้ายด้วย เจ้าหุ่น Android ของจริง

alt="Android Robot"

App Engine

สไดล์

วิดีโอ

session นี้เล่าถึง App Engine ในภาพรวม ไม่ค่อยมีอะไรใหม่นัก

  • คำถามยอดฮิตคือภาษาอื่นๆ นอกจาก Python คำตอบคือ บอกไม่ได้
  • เงื่อนไขในการใช้งาน (Service License Agreement - SLA) ของ App Engine ยังไม่มี ทำให้การนำไปใช้จริงยังเกิดยาก
  • ในเร็วๆ นี้จะเปิดให้ดาวน์โหลดผลลัพธ์ทีละหลายๆ ไฟล์ (bulk download) ตอนนี้ยังมีแต่อัพโหลด

Google Visualization API

session นี้ผมนั่งอยู่ไกลมากๆ ไม่มีภาพสไลด์ มีแต่วิดีโอที่กูเกิลถ่ายไว้เอง

เชื่อว่าหลายคนคงเคยเล่น Google Chart API กันมาแล้ว อันนี้เป็นภาคต่อ Google Visualization API จะช่วยให้เราทำ visualization แบบเดียวกับ Google Finance ที่มีกราฟแสดงหุ้น หรือ gadget ใน iGoogle ได้ วิธีการแสดงผลมีหลายชนิดมาก ทั้งใช้แผนที่จาก Google Maps มาประกอบ หรือถ้าเป็นตาราง spreadsheet ก็สามารถทำ pivot table ได้ (ดูตัวอย่าง ง่ายกว่า)

ปัจจุบัน Google Visualization API ยังสนับสนุนเฉพาะข้อมูลที่อยู่ใน Google Spreadsheet

V8

เอนจินสำหรับจาวาสคริปต์ที่ร้อนแรงที่สุดในตอนนี้ คนพูดคาดว่าเป็นทีมของกูเกิลในเดนมาร์กตามข่าวของ Chrome

สไลด์

วิดีโอ

session นี้พูดถึงเหตุผลที่กูเกิลต้องพัฒนาเอนจินจาวาสคริปต์ขึ้นมาเอง ซึ่งก็คือเอนจินเดิมๆ มีปัญหาเรื่องประสิทธิภาพ ไม่เพียงพอต่อความต้องการของกูเกิล ส่วนเทคนิคที่นำมาใช้เร่งความเร็วก็เป็นเทคนิคในวงการเวอร์ชวลแมชีนและคอมไพเลอร์ (บางอันผมก็ฟังไม่เข้าใจนัก) ถ้าดูในสไลด์หรือวิดีโอ เทคนิคสำคัญคือการสร้างคลาสจำลอง (hidden class - จาวาสคริปต์ไม่มีคลาส) เพื่อเวลาที่สร้างตัวแปรลักษณะเดียวกัน จะได้ไม่ต้องจองหน่วยความจำหรือประมวลผลใหม่

  • V8 จะแปลงโค้ดจาวาสคริปต์ออกมาเป็นไบนารีเลย ไม่มีภาษาคั่นระหว่างกลางแบบไบต์โค้ดหรือ CIL
  • ขั้นตอนการทำงานของเอนจินจาวาสคริปต์แบ่งเป็น 2 ส่วน คือการอ่านโค้ด (parsing) กับการแปลงโค้ด (compiling) ในขั้นแรกนั้นเอนจินทุกตัวทำงานได้เร็วเท่ากัน แต่ V8 ไปเน้นการเร่งความเร็วในส่วนหลัง
  • ปัจจุบัน V8 สามารถคอมไพล์โค้ดออกมาได้ 2 แบบ 2 สถาปัตยกรรม คือ x86 และ ARM (เดาได้ว่ามันลงไปอยู่ในมือถือแน่)
  • V8 สำหรับแมคและลินุกซ์เสร็จแล้ว แต่ที่ Chrome ยังใช้ได้เฉพาะวินโดวส์ เป็นเพราะระบบส่วนอื่นๆ ยังไม่เสร็จ
  • V8 สนับสนุน JavaScript 1.5 (ECMAScript 3) เท่ากับ SquirrelFish/JavaScriptCore ต่างกับ SpiderMonkey/TraceMonkey ที่สนับสนุน JavaScript มาถึง 1.8 แล้ว (แต่มีเฉพาะ Firefox ตัวเดียวที่สนับสนุนเวอร์ชันใหม่ๆ)

ในงานนี้ยังมีห้องอื่นที่น่าสนใจอีกมาก แต่ด้วยข้อจำกัดด้านเวลาผมเลยเลือกฟังได้แค่ 4 ห้อง ถ้าสนใจหัวข้ออื่นอย่างเช่น Google Maps, Gears, OpenSocial, Google Data API ลองดูวิดีโอได้จาก YouTube เป็นของกูเกิลถ่ายเองทั้งหมด ภาพชัดเสียงดี ตัดสไลด์ประกอบเป็นระยะ แถมมีเวอร์ชันความละเอียดสูงอีกด้วย

Get latest news from Blognone

Comments

By: gudgee
iPhoneAndroidWindows
on 22 September 2008 - 10:02 #65653
gudgee's picture

ผมว่า SLA ของ app engine เป็นเรื่องด่วนที่ต้องทำเหมือนกันนะ

By: mk
FounderAndroid
on 22 September 2008 - 14:37 #65692 Reply to:65653
mk's picture

ผมคุยกับหลายๆ คนก็ได้อารมณ์ประมาณกันว่า App Engine ยังเป็นเหมือนห้องทดลองขนาดใหญ่ของกูเกิลอยู่ ยังไม่เหมาะกับการเอางานจริงไปรัน เพราะติดเงื่อนไขโน่นนี่มากมาย เช่น ขนาดไฟล์ เวลาที่รัน ไลบรารี ภาษา รวมถึง SLA แถมยังพังเป็นระยะๆ คงต้องรออีกสักพักกว่าจะนิ่ง หรือไม่อย่างนั้นก็ใช้ S3/EC2 ไปก่อน

By: javaboom
WriteriPhone
on 23 September 2008 - 12:01 #65821 Reply to:65692
javaboom's picture

SLA เป็นเรื่องคำมั่นสัญญา เห็นด้วยครับว่า App Engine ยังเป็นห้องทดลองอยู่ ถ้าเริ่มใช้ SLA แล้วทำไม่ได้ตามสัญญาคนก็หมดความเลื่อมใส แถมโดนค่าปรับสำหรับลูกค้า Premium ด้วย ที่ผ่านมา Gmail กับ Google Apps ก็ล่มมาแล้วครับ ดังนั้น Google เลยต้องระวังในเรื่องคำมั่นสัญญา

Sivadon Chaisiri (JavaBoom)
http://javaboom.wordpress.com


My Blog

By: khajochi
WriteriPhoneIn Love
on 22 September 2008 - 11:53 #65665
khajochi's picture

อยากไปฟัง่ง คงต้องนั่งดูจาก youtube แทน

V8 กับ visual api น่าสนใจดีครับ

---
Khajochi Blog : It's not a Bug ... It's a Feature


แฟนพันธุ์แท้สตีฟจ็อบส์ | MacThai.com