มาถึงก็ต้องลงทะเบียนกันก่อน…

ของผมเป็นแบบ Early Bird Student Pass จะได้อะไรมาบ้าง

  • บัตร
  • Cardboard
  • หนังสือหนึ่งเล่ม
  • เสื้อ 1 ตัว

Agenda

Source : droidconbkk.com

มีการจัดเวทีได้อย่างอลังการตามแบบของ Google

Session แรกของคุณ​ Ben King, Country Manager Google Thailand

โดยมาพูดใน 3 หัวข้อหลักๆดังนี้

  • The evolution of Android
  • Android Platform Updates
  • Backend Development for Android Updates

มาเริ่มกันที่

The evolution of Android

https://4.bp.blogspot.com/-gJgio2rWQGA/V8WpJZ9HXcI/AAAAAAAACSg/24jB0Qbej7sg_-volh-Vsb4G092_UEfTwCLcB/s1600/android_nougat_new_android_addition.jpg

เป็นการพูดถึงที่มาที่ไปของ Android แต่ละรุ่นนั้นเองว่ามีความเป็นมาอย่างไร

โดยมี Market Share ในเมืองไทยประมาณ 87% เลยทีเดียว

และมีการแนะนำถึง Feature ใหม่ที่พึ่งเพิ่มเข้ามาใน Android Nugat นั้นคือ Day Dream ซึ่งเป็น Platform VR ใหม่ที่พึ่งเปิดตัวมาได้ไม่นานนั้นเอง

และมีการพูดถึงแนวโน้มของ IoT Developers ในปี 2020 อาจมีถึง 9.2 ล้านคนเลยทีเดียว

ถัดมาเป็นของ คุณ Thye Yeow, Bok — Google Developer Relations Ecosystem (Regional Lead, Thailand)

โดยได้มีการพูดถึงผลิตภัณฑ์ที่มาแรงในขณะนี้อย่าง Firebase นั้นเอง

Firebase Analytics

เป็นบริการที่ทำให้ผู้พัฒนานั้นสามารถเก็บข้อมูลต่างๆของแอพตัวเองได้หลังจากปล่อยขึ้น Store ไปแล้วว่าผู้ใช่นั้นใช้งานเป็นอย่างไรมีปัญหาอะไรเกิดขึ้นบ้าง… และอื่นๆ…

Fabric + Google

โดยไม่นานนี้ Google ได้ประกาศการเข้าซื้อกิจการ Fabric จาก Twitter อย่างเป็นทางการซึ่งเป็น Service คล้ายๆ Firebase นั้นเองเท่ากับว่าเราอาจจะได้เห็นอะไรใหม่ๆใน Firebase อีกเร็วๆนี้

Mobile first to AI first — Sundar Pichai, CEO of Google

เป็นแนวโน้มใหม่ที่พึ่งจะเริ่มมาเป็นที่สนใจไม่นานมานี้โดยคุณ Sundar Pichai, CEO of Google ก็ได้ให้ความสนใจเหมือนกันจึงมีผลิตภัณฑ์อีกตัวที่ชื่อว่า Tensorflow

ซึ่งเป็น Framework สำหรับ AI โดยเฉพาะและเป็น Open Source อีกด้วย ต่อไปเป็น

Session ของคุณ Apirut Vancha-Am, KBTG หัวข้อ “ Designed for All “

โดยพูดถึงการออกแบบ UX/UI เพื่อทุกคนสามารถใช้งานได้แม้แต่ผู้พิการทางสายตานั้นเองและกลุ่มอื่นๆ เพื่อให้ทุกคนเขาถึงได้

Innovative User Experience เป็นแนวคิดของทาง KBTG โดยตั้งชื่อว่า Beacon Interface เน้นความชัดเจนและ Contrast ของสีรูปร่างที่แยกออกได้อย่างชัดเจนนั้นเอง

แม้แต่ผู้พิการทางสายตาก็สามารถเข้าถึงได้โดยใช้เสียงในการโต้ตอบกับ Interface โดยมี Architecture ดังนี้

และคนอื่นๆก็สามารถนำมาใช้ได้โดยมีแนวทางการใช้งานดังนี้

Session ถัดไป Introduction to Tango and Daydream โดยคุณ Wim Meeussen — Sr. Software Engineer at Google

โดยมีการพูดถึงเทคโนโลยี AR และ VR

โดยมีชื่อดังนี้

  • Daydream (VR)
  • Tango (AR)

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

โดยราคาก็ไม่แรงนักหากแทบกับอุปกรณ์ VR ระดับ Hi-end นั้นเอง

ปัจจุบันมีค่ายโทรศัพท์ที่มีการรองรับแล้วพอสมควร

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

โดยมี Best Practices ว่าให้จำลองว่า User นั้นนั่งอยู่บนเก้าอี้การให้วัตถุไปอยู่ข้างหลังทำให้ User ต้องหันมากเกินก็จะทำให้การใช้งานนั้นไม่สะดวกสบายนั้นเอง

No Motion — นั้นก็เหมือนการนั่งอยู่เพื่อชมทั่วๆไป

Moderate Motion — จะเริ่มมีการเดินขึ้นมาบ้าง

Intense Motion — เป็นการที่เหมือนเข้าไปอยู่ในตรงนั้นจริงๆเช่น การเล่น Adventure เป็นต้น

ในโลกความจริงการยืนอยู่บนที่สูงก็น่ากลัวฉะนั้น VR ก็น่ากลัวด้วย…

Tango เป็น Platform AR บนโทรศัพท์เช่นกัน

โดยมีการเห็นวัตถุต่างๆและวิเคราห์ออกมาเป็น Guide Line ประมาณนี้

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

Motion Tracking — คือการที่วัตถุนั้นไม่ลอยอยู่บนอากาศนั้นเองให้มีความสมจริงว่ามีแรงโน้มถ่วงอยู่

Depth Perception — เป็นคำนวนความใกล้หรือไกลทำให้ขนาดของวัตถุนั้นต่างออกไป

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

Keeping it Simple โดยคุณ Per-Erik Bergman — Head of Mobile จาก 7 Peaks Software

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

โดยสมมุติว่าเราแบ่งไฟล์งานต่างๆเป็นหมวดหมู่ตามหน้าที่ของมันล่ะ ไม่เอามารวมกันมันก็จะดูง่ายขึ้นเยอะเลยตามในรูปด้านล่าง

S.O.L.I.D — The First 5 Principles of Object Oriented Design

โดยแต่ละตัวมีความหมายในตัวมันเอง

  • S — Single-responsiblity principle
  • O — Open-closed principle
  • L — Liskov substitution principle
  • I — Interface segregation principle
  • D — Dependency Inversion Principle

โดยแต่ละตัวมีความหมายคร่าวๆ

  • SRP: แต่ละคลาสต้องทำหน้าที่แค่อย่างเดียว
  • OCP: โค้ดทุกอย่างควรที่จะนำไปใช้งานต่อยอดได้ แต่ไม่ต้องแก้ไขโค้ดเดิม
  • LSP: คลาสที่มาจาก Interface เดียวกันควรจะนำมาใช้แทนที่กันได้เลย โดยโปรแกรมไม่ควรทำงานผิดพลาด
  • ISP: ให้สร้าง Interface ย่อยหลายๆ อันเพื่อนำไปใช้ แทนที่จะใช้ Interface อันเดียวสำหรับแต่ละคลาส
  • DIP: ให้สร้างสิ่งต่างๆ บน Interface ที่ใช้งานร่วมกัน แทนที่จะไป Extend Implementation ของคลาสอื่นๆ มาใช้โดยตรง

ความหมายคร่าวๆโดย Phoomparin Mano

ถ้าเขียนอธิบายโดยละเอียดคงยาวเกินไปแน่นอนเลย 555 จึงขอฝาก Reference ไว้เผื่อใครสนใจนำไปศึกษาต่อ https://scotch.io/bar-talk/s-o-l-i-d-the-first-five-principles-of-object-oriented-design

Deep Android Integrations — Ty Smith (Mobile Tech Lead at Uber)

โดยคุณ Ty Smith ได้มีการพูดถึง Deeplinks และ Applink ในการ Develop แอพเพื่อให้มีการทำงานที่สอดคล้องกับเว็บมากขึ้นทำให้ผู้ใช้งานนั้นสะดวกในการใช้งานและลดปัญหาความยุ่งยากในการใช้งานออกไป

Material Design Support Library — Yuichi Araki

ก็เป็นการแนะนำการใช้ Material Design Support Library ในการทำ Animation ต่างๆ ทำให้ Layout ต่างๆไม่ต้องมีการคำนวนใหม่ในการที่จะทำ Animation ใช้ Transformation Property ทำให้ลดภาระได้ทั้งตัวเครื่องและนักพัฒนาด้วย

Kaidee.com Application Journey — Poohdish Rattanavijai

เป็นการเล่าประสบการณ์กว่าจะมาเป็น Kaidee.com ได้อย่างทุกวันนี้นั้นเจออะไรมาบ้าง โดยเริ่มจากปี 2013 สมัยยังเป็น dealfish

มีการออกแอพเวอร์ชั่นแรก มีการดาวน์โหลดไปกว่าห้าหมื่นครั้ง แต่ที่น่าตกใจที่สุดคือ มีผู้ใช้เพียง 5% เท่านั้นที่ใช้งานได้อย่างไม่มีปัญหาใดๆเลย

ในปีนั้นจึงมาการนำ Crash Analytic เข้ามาใช้งานเพื่อดูว่าปัญหาจริงๆนั้นคืออะไร

ปี 2014 มีการเพิ่มจำนวนของสินค้าและผู้ขาย สร้างแบรนด์ใหม่ที่มีชื่อว่า OLX

มีการทำ UI ขึ้นมาใหม่เพื่อให้มีการใช้งานที่ง่ายขึ้นลื่นขึ้นและปัญหาน้อยลง

มีการปรับปรุงในเรื่องของการจัดเก็บข้อมูลและเพิ่ม Library Dagger ลงไป

มีการนำ TDD เข้ามาใช้งานและภายในหนึ่งปีนั้นสามารถเพิ่มจากที่มีผู้ใช้เพียง 5% ที่ไม่มีปัญหาเป็น 85% เป็นการก้าวกระโดดครั้งใหญ่มาก

ปี 2015 มีการ Re branding อีกครั้งเป็น Kaidee.com นั้นเอง

โดยมีการพัฒนาเพิ่มช่องทางติดต่อกับผู้ขายได้โดยตรงเลยผ่านตัวแอพทำให้ผู้ซื้อนั้นติดต่อผู้ขายง่ายขึ้นและมีผลลัพธ์ที่ดีขึ้น

ปี 2016 เป้าหมายหลักสองอย่างเลยคือ เพิ่มความเป็นส่วนตัวให้กับผู้ขายและเพิ่มยอดขายนั้นเอง

มีการนำ Automate UI Testing เข้ามาใช้เพื่อให้สามารถทดสอบแอพและรู้ผลได้รวดเร็วและหลากหลายมากขึ้น มีการสร้าง Device Lab ของตัวเองขึ้นมาใหม่ด้วย

มีการเพิ่ม Event Tracking เพื่อติดตามพฤติกรรมการใช้งานของ User นั้นเองทำให้ได้ข้อมูลกลับมากปรับปรุงได้มากขึ้น

Features ใหม่ Top Ad เป็นเหมือนทำให้สามารถโฆษณาสินค้าให้ขึ้นมาเป็นลำดับแรกและ E-Money ใช้งานภายในแอพ

ในปี 2017 นี้อาจมีการย้ายไปทำการ Test บน Firebase แทนที่จะ Test บน Local Farm เพราะเรื่องค่าใช้จ่ายที่อาจถูกลงมากนั้นเอง

Android Things — Leonid Olevski

เป็นการแนะนำ Android Things ว่ามีความสามารถอย่างไรบ้างและมี Demo ในรูปแบบวิดีโอให้ดูด้วย

Networking Party

อันนี้ไม่ได้อยู่แต่เข้าใจว่าตามชื่อเลยเพราะลงไปกลุ่มเพื่อนๆ :D

ก็จบกันไปอีกหนึ่งวันกับงาน DroidconBKK 2017 เป็นงานที่ดีมากสาระเยอะมากอัดแน่นเลยก็ว่าได้

ก็ได้ซื้อ Figure Android มาสองตัวตอนแรกแอบหวังๆนิดๆว่าจะได้ Secret Design อิอิ สำหรับวันนี้ขอตัวไปพักผ่อนเตรียมงานวันรุ่งขึ้น แล้วพบกันครับ ^^