SoSaaS (Same old Software, as a Service) บริการซอฟต์แวร์บน Cloud แบบเดิมๆ ที่เราเข้าใจผิดว่าคือ true SaaS

10830574_418142598333086_2678415922263012096_o

ผู้ผลิตซอฟต์แวร์ในปัจจุบันจำนวนมากต่างก็พยายามบอกว่า ซอฟต์แวร์ของตัวเองเป็น Cloud และให้บริการบน Cloud แล้ว พอถามไปถามมาบางทีก็เป็นเพียงแค่ Web Application รันอยู่บน Server ของบริษัท บางรายก็แค่เปลี่ยนรูปแบบการคิดราคาซอฟต์แวร์จากการขาย License เป็นการเช่าแบบ  Subscription ที่จ่ายเป็นรายปี แต่รูปแบบ Architecture ของซอฟต์แวร์ยังเป็นแบบเดิม ซึ่งจากที่พบมาซอฟต์แวร์ส่วนใหญ่มักจะไม่ใช่ซอฟต์แวร์บน Cloud ที่เป็น SaaS อย่างแท้จริง

image

SaaS (Software as a Service) คือหนึ่งในสามรูปแบบของการให้บริการบน Cloud (อีกสองบริการคือ IaaS และ PaaS) หลักการของ Cloud ส่วนหนึ่งคือ On-Demand และ Resource Pooling ซึ่งซอฟต์แวร์แบบเดิมที่เป็น Client/Servcer Architecture หรือ Web Architecture มักจะไม่ได้ออกแบบมาในลักษณะแบบนี้ การทำซอฟต์แวร์แบบ SaaS ที่สำคัญที่สุดเรื่องหนึ่งคือการมีคุณสมบัติ Multi-Tenant ซึ่งจะช่วยในเรื่องของการทำ Demand Poolingโดย SaaS ที่แท้จริง (true-SaaS) จะต้องให้ผู้ใช้สามารถทำ configuration สำหรับใช้ซอฟต์แวร์ที่ต่างกันได้ แต่ฟังก์ชั่นของซอฟต์แวร์จะต้องเหมือนกันสำหรับผู้ใช้ทุกคน แต่ผู้ใช้แต่ละรายมีที่เก็บข้อมูลที่ต่างกัน การมี configuration  ที่แตกต่างกัน ไม่ได้หมายความว่าผู้ใช้แต่ละรายจะสามารถปรับซอฟต์แวร์  (customization) ให้มีฟังก์ชั่นต่างกัน ข้อสำคัญอีกอย่าง true-SaaS จะทำงานอยู่บนกลุ่มของ  Instance ชุดเดียวกัน ไม่ใช่แยก Instance ในแต่ละผู้ใช้ ซึ่งการมีสถาปัตยกรรมแบบ Multi-Tenant on same instance group จะทำให้ง่ายต่อการขยายระบบ (scalability) และทำให้เกิด Economy of Scale

ดังนั้นการพัฒนาซอฟต์แวร์เดิมขึ้น Cloud จึงจำเป็นต้องมีการปรับปรุงโปรแกรมเดิมหรือเรียกว่า Re-engineering เพื่อให้รองรับการทำ Multi-tenant ซึ่งนักพัฒนาซอฟต์แวร์จำนวนมากก็จะเลือกที่จะใช้ PaaS (Platform as a Sevice) อย่างบริการของ Microsoft Azure, IBM Bluemix, Google App Engine, Heroku หรือ Openshift  เพราะ PaaS จะช่วยทำให้การพัฒนา SaaS เป็นไปได้โดยง่าย เมื่อเทียบกับการใช้  IaaS (Infastructure as a Sevice) หรือการใช้ Private Cloud ของตัวเองที่จะต้องไปหาวิธีจัดการซอฟต์แวร์ให้รองรับ  Multi-tenant

แต่เนื่องจากการปรับซอฟต์แวร์เป็นเรื่องยากบริษัทซอฟต์แวร์ที่มีซอฟต์แวร์แบบ Client/Server  หรือ Web Architecture จึงเลือกที่จะย้ายซอฟต์แวร์ตัวเองไปรันบน IaaS ทีมีผู้ให้บริการอย่าง  Amazon Web Services, Window Azure, IBM SoftLayer หริอ  Digital Ocean ที่คิดค่าบริการแบบ Pay-as-you-go  ซึ่งผู้ให้บริการเหล่านี้มักจะมีบริการพร้อมที่จะรองรับการติดตั้งซอฟต์แวร์ที่มีสถาปัตยกรรมเป็น  Client/Server  และสามารถทำงานแบบ Auto-scale ได้ แต่ลักษณะการติดตั้งของบริษัทจะเป็นในรูปแบบที่ลูกค้าที่จะใช้ซอฟต์แวร์แต่ละรายจะมี  instance ที่ต่างกันถ้าบางรายใช้งานเยอะก็อาจจะมีหลาย Instance  ระบบแบบนี้จะเป็น Multi-instance  มากกว่าที่จะเป็น Multi-tenant ทำให้การขยายซอฟต์แวร์เป็นไปได้ยาก และบริษัทซอฟต์แวร์จะต้องใช้บริการของผู้ให้บริการ  IaaS รายใหญ่ๆเท่านั้นเพราะจะต้องสามารถรองรับ Instance  จำนวนมากที่แปรผันตามจำนวนผู้ใช้ได้ เราเรียกการบริการแบบนี้ว่า  SoSaaS (Same old Software, as a Service) ซึ่งแน่นอนราคาของ SoSaaS ถึงได้สูงกว่า  true SaaS  เพราะบริษัทซอฟต์แวร์ต้องมีต้นทุนการเช่า instance ที่สูงกว่า  (ระบบ Multi-tenant อาจมีผู้ใช้ 1,000 รายที่รันบน  100  instance  แต่ระบบ SoSaaS  จะต้องมีอย่างน้อย 1,000 instance สำหรับผู้ใช้ 1,000 ราย)

SoSaaS ก็มีข้อดีในการที่ทำให้ซอฟต์แวร์แบบเก่าสามารถขึ้นมาให้บริการบน  Cloud ได้ ซึ่งถ้าพิจารณากันจริงๆแล้ว ระบบนี้เป็นแบบ Managed Hosting  มากกว่า SaaS  แต่ก็มีข้อดีรายประการเช่น

  • ผู้ใช้สามารถที่จะใช้ Application เดิมได้โดยไม่ต้องมาเรียนรู้ Application ใหม่
  • บริษัทซอฟต์แวร์สามารถที่จะย้ายซอฟต์แวร์ขึ้น Cloud ได้โดยไม่ต้องเรียนรู้ทักษะการพัฒนาโปรแกรมใหม่ เป็นเพียงการติดตั้ง Middleware และ Software เดิมบน IaaS
  • ผู้ใช้สามารถเลือกที่จะให้ผู้ให้บริการปรับซอฟต์แวร์ (customization) ตามความต้องการได้
  • ระบบเสมือนเป็นแบบ  on-premise ที่ผู้ให้บริการสามารถที่จะบริหารจัดการเสมือนติดตั้ง server บนระบบ DataCenter ของตัวเองได้
  • ผู้ใช้สามารถจะวางแผนการ Upgrade ซอฟต์แวร์เองได้ ซึ่งต่างกับการ upgrade ซอฟต์แวร์ SaaS ที่ผู้ให้บริการจะต้อง Upgrade ให้ผู้ใช้ทุกคนพร้อมๆกันเพราะเป็นระบบแบบ  Multi-tenant
  • การบริหารระบบความปลอดภัยจะดีกว่าแบบ  SaaS  ที่ผู้ใช้รายจะใช้กลุ่มของ Instance ชุดเดียวกัน

แต่ SoSaaS  ก็มีข้อด้อยหลายประการเมื่อเทียบกับ  true SaaS  อาทิเช่น

  • ต้นทุนของผู้ให้บริการจะสูงกว่ามาก
  • การขยายระบบเป็นไปได้ยาก เพราะต้องขยายให้กับลูกค้าแต่ละราย ยกเว้นจะมีระบบ Auto-Scaling แต่ก็จะเพียงการเพิ่มหรือลด instance ตามที่ผู้ใช้กำหนด ซึ่งยังไม่ยิดหยุ่นแบบ true SaaS  ที่ผู้ใช้รายๆหลายอาจใช้ instance แต่ละตัวร้วมกัน
  • การบำรุงรักษายากกว่ามากเพราะบริษัทซอฟต์แวร์จะต้องมาดูแยกดูแลลูกค้าแต่ละรายแยกตาม instance)

จากที่กล่าวมาทั้งหมดผู้ที่จะใช้บริการ SaaS  คงต้องตรวจสอบให้ดีว่าให้ว่า SaaS  ที่จะเรียกใช้เป็นซอฟต์แวร์แบบใด true-SaaS  หรือ SoSaaS ถ้าเป็น  SoSaaS ก็คงต้องถามต่อว่าแล้ว Server ใช้บริการของ IaaS ที่ใด ถ้าบอกว่าติดตั้งเอง ฟันธงนะตรงนี้ได้เลยครับว่าระบบแบบนั้นขยายไม่ได้ ไม่สามารถรองรับลูกค้าจำนวนมากได้ เว้นเสียแต่ว่าบริษัทจะต้องลงทุนค่า Infrastructure มหาศาล

ธนชาติ นุ่มนนท์

IMC Institute

ตำแหน่งงานด้านไอทีที่มีผลกระทบจากการเข้ามาของ Cloud Computing

เช้านี้ผมจะเดินทางไปสนามบิน ผมก็เลยต้องใช้โปรแกรม GrabTaxi เพื่อเรียก Taxi ซึ่งเป็นโปรแกรมบนมือถือที่ผมสามารถติดต่อกับคนขับได้โดยตรง และเมื่อถึงสนามบินก็มีอีเมล์ส่งใบเสร็จค่าโดยสารมาให้ผม ซึ่งระหว่างที่นั่งรถออกไปตอนเช้ามืด ผมเห็นคนขี่มอเตอร์ไซค์มาส่งหนังสือพิมพ์ ผมตั้งคำถามอยู่ในใจว่า อาชีพเหล่านี้เริ่มมีคนทำน้อยลง จำนวนผู้รับก็ไม่ได้มากเหมือนเดิม แล้วก็มานั่งคิดถึงตัวเองว่า นานแค่ไหนแล้วที่ไม่ได้ไปธนาคารเพราะทุกวันนี้ทำธุรกรรมส่วนใหญ่ผ่านอินเตอร์เน็ต ตัวเองเลิกซื้อหนังสือพิมพ์ที่เป็นเล่มมา 4-5 ปีแล้ว จำไม่ได้ว่าซื้อหนังสือพิมพ์ครั้งสุดท้ายเมื่อไร เพราะเดี๋ยวนี้ซื้อผ่าน Tablet และทุกเช้าต้องโหลดหนังสือพิมพ์มาอ่าน 4-5 ฉบับ ไม่ต้องพูดถึงร้านถ่ายรูป หรือ Travel Agent ว่าไม่ได้ไปนานแค่ไหน

อาชีพหลายๆอาชีพกำลังเปลี่ยนไปเพราะเทคโนโลยี การเข้ามาของ smart phone, Internet และ IT Technology ทำให้อาชีพหลายๆอย่างน่าจะลำบากขึ้นในอนาคต Financial Online ระบุว่าตำแหน่งงาน 10 อย่างที่อาจจะหายไปใน 10 ปีข้างหน้าคือ

  • พนักงานเก็บเงิน (Retail Cashier)
  • Telemarketer
  • Freight/Stock
  • คนส่งหนังสือพิมพ์
  • Travel Agent
  • บุรุษไบรษณีย์
  • เจ้าหน้าที่ศูนย์บริการเรียก Taxi (Taxi Dispatcher)
  • พนักงานพิมพ์เอกสาร (Wordprocessor/Typist)
  • บรรณารักษ์
  • ผู้จัดการด้าน Social Media

พอมาถึงตรงนี้คนไอทีก็อาจจะรู้สึกมั่นคงในอาชีพตัวเองเพราะ เทคโนโลยีไอทีเป็นเรื่องจำเป็นทุกอาชีพก็จะต้องนำไอทีเข้ามาใช้งาน ดังนั้นงานด้านไอทีก็ควรจะเป็นตำแหน่งที่น่าสนใจ และในปัจจุบันหลายๆหน่วยงานก็ยังต้องการบุคลากรด้านนี้อยู่มาก แต่ข้อเท็จจริงแล้วงานด้านไอทีก็มีผลกระทบอย่างมากเช่นกัน เนื่องจากการเปลี่ยนแปลงของเทคโนโลยีโดยเฉพาะเรื่องของ Cloud Computing ซึ่งผมเองก็เคยเขียนบทความเรื่อง คนไอทีต้องใส่ใจ Cloud ก่อนที่ฝั่งธุรกิจจะไม่ใส่ใจคนไอที ดังนั้นก็ไม่แน่เหมือนกันว่าตำแหน่งงานไอทีที่ทำอยู่ในองค์กรปัจจุบัน จะหายไปใน 10 ปีข้างหน้าหรือไม่

คราวนี้ลองมาดูซิว่างานไอทีด้านใดจะมีผลกระทบและมีความต้องการน้อยลงเนื่องจากการเปลี่ยนแปลงของเทคโนโลยีสู่ยุค Cloud Computing แต่ขณะเดียวกัน IDC ก็ระบุว่าเทคโนโลยี Cloud Computing ก็จะทำให้เกิดตำแหน่งงานใหม่ๆถึง 14 ล้านตำแหน่งในระหว่างปี 2012-2015 แนวโน้มของตำแหน่งงานต่างๆด้านไอทีสามารถสรุปได้ดังนี้

  • System Administrator ตำแหน่งผู้ดูแลระบบที่เคยมีหน้าที่ดูแลเครื่อง Server หรือระบบไอทีในองค์กร จะมีความจำเป็นน้อยลง เพราะองค์กรต่างๆก็จะย้ายระบบจำนวนมากขึ้น Cloud แต่ตำแหน่งงานด้านนี้ก็ยังเป็นที่ต้องการของ Cloud Service Provider
  • Database Administrator เหตุผลเช่นเดียวกับ System Administrator เพราะต่อไประบบและซอฟต์แวร์จำนวนมากจะอยู่บน Cloud ความต้องการระบบ Database ในองค์กรก็จะน้อยลง
  • IT Support / HelpDesk งานทางด้านนี้ในองค์กรก็จะย้ายไปอยู่กับ Cloud Provider แม้จะมีตำแหน่งด้านนี้อยู่บ้างแต่ก็จะน้อยลงไปมาก เพราะระบบส่วนใหญ่จะไปอยู่ Cloud การติดตั้งและการใช้งานของผู้ใช้ก็จะง่ายขึ้น
  • Programmer หน่วยงานอาจจะมีความจำเป็นน้อยลงที่จะต้องมีนักพัฒนาโปรแกรมเอง เพราะองค์กรจะไปใช้งานซอฟต์แวร์แบบ SaaS มากขึ้น แต่ตำแหน่งงานนี้จะยังมีอยู่ในบริษัทซอฟต์แวร์ที่จะผลิตซอฟต์แวร์ที่เป็น SaaS หรือองค์กรขนาดใหญ่ที่จะต้องมี in-House Application แต่นักพัฒนาซอฟต์แวร์ก็จะต้องมีทักษะในการพัฒนาซอฟต์แวร์ขึ้น Cloud
  • Business analysts นักวิเคราะห์ระบบธุรกิจยังมีความจำเป็นอยู่มาก เพราะแม้จะมีระบบ Cloud อย่าง SaaS แต่องค์กรก็ยังต้องเก็บ User Requirement ต้องทำการเลือกผู้ให้บริการ Cloud ที่สอดคล้องกับความต้องการ และ Application ก็ยังต้องเชื่อมโยงกับ Business Process ขององค์กร
  • Cloud Architect ตำแหน่งงานใหม่นี้ก็เหมือนกับคนที่เป็น Enterprise Architect ขององค์กร แต่จะต้องมีความเข้าใจเรื่อง Cloud Computing มีความรู้เรื่องของ SOA (Service Oriented Architecture) รวมถึง Enterprise Architecture
  • Cloud Technologist คือนักไอที่ที่มีความเชี่ยวชาญด้าน Cloud ในการที่จะพัฒนา Cloud คือผู้ที่ต้องมีความรู้ด้านเทคโนโลยี Cloud, Virtualization ต่างๆ ซึ่งตำแหน่งงานด้านนี้จะเป็นที่ต้องการอย่างมากสำหรับหน่วยงานที่ต้องการพัฒนา   Cloud เช่น องค์กรใหญ่ๆที่ต้องทำ Private Cloud หรือ Cloud Service Provider
  • DevOps ตำแหน่งงานใหม่นี้จะเป็นที่ต้องการอย่างมาก ซึ่งจะหมายถึงบทบาทหน้าที่ในการที่จะทำงานร่วมกันระหว่าง Developer กับเจ้าหน้าที่ Operations ซึ่งงานนี้ต้องมีความเข้าใจใน Tools ใหม่ๆและการพัฒนาซอฟต์แวร์/บริหารระบบบน Cloud
  • Security Specialist การเข้ามาของ Cloud ทำให้องค์กรต้องคำนึงถึงระบบความปลอดภัยมากขึ้น องค์กรจะต้องมีผู้เชี่ยวชาญด้าน IT Security ที่จะเข้าใจขั้นตอนการใช้งาน Cloud อย่างปลอดภัย
  • Financial Engineering การใช้ระบบ Cloud จะต้องมีการประมาณการและควบคุมค่าใช้จ่าย การพิจารณา SLA จากผู้ให้บริการ Cloud องค์กรจะต้องมีตำแหน่งงานด้านสำหรับคนด้านไอทีที่มีความรู้ด้าน Cloud เพื่อทำงานร่วมกับคนในองค์กร และ Cloud Service Provider เพื่อบริหารจัดการเรื่องการใช้ Cloud  ที่จะเปลี่ยนแปลงค่าใช้จ่ายตามการใช้งาน

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

ธนชาติ นุ่มนนท์

IMC Institute

  • มีความรู้ทางด้านนี้เพื่อทำงานร่วมกับคนในองค์กร และ Cloud Service Provider

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

10 ทักษะด้านไอทีที่มีรายได้เฉลี่ยดีสุดในปี 2014

Screenshot 2015-01-13 08.34.13

ผมจำได้ว่าตัวเองเริ่มเขียนภาษา Java  ตั้งแต่ปี 1999 แล้วก็ไปสอบ Certified Java Programmer ในยุคงานทางด้าน Java น่าสนใจ พอคนเริ่มสนใจที่จะทำ Web Application ผมก็ต้องเริ่มขยับตัวเองมาศึกษา Java Servlet, JSP และ EJB สมัยนั้นคนมีความรู้ทางด้านนี้ในต่างประเทศก็จะมีรายได้ที่ดี พอเป็นยุคของ Mobile ผมก็เริ่มเล่น Java ME เขียนโปรแกรมบนมือถือตั้งแต่ปี 2003 แล้วก็กลายเป็นยุคของ Web Services, Service Oriented Architecture พอมาถึงจุดหนึ่งก็ต้องมาเล่นเรื่อง Cloud Computing มาหัดพัฒนาโปรแกรมบน Cloud Platform จำได้ว่าเรื่มเขียนและสอนการพัฒนาโปรแกรมบน PaaS ตัวแรกคือ  Google App Engine ก็ 6-7  ปีแล้ว ตอนหลังก็มาเล่น IaaS อย่าง Amazon AWS มา 2-3 ปีหลังกระแส Big Data มาแรงก็ต้องมาเล่น Hadoop มาสอนการพัฒนาโปรแกรม Map/Reduce

โลกของไอทีไม่เคยหยุดนิ่งและเปลี่ยนแปลงอย่างรวดเร็ว ในยุคสมัยหนึ่งก็มีความต้องการนักพัฒนาโปรแกรมด้าน Java อย่างมากมาในตอนนี้ คนที่เขียนโปรแกรม Java อย่างเดียวก็อาจจะเริ่มไม่ได้มีรายได้สูงนักและอาจจำเป็นต้องศึกษาด้าน  Big Data ต้องมาพัฒนาโปรแกรมบน Hadoop หรือไม่ก็ต้องพัฒนาบน PaaS และ Mobile Platform  ดังจะเห็นได้จากตัวอย่างในรูปที่ 1 ซึ่งแสดงความต้องการคนทางด้าน Hadoop  ที่เพิ่มขึ้นอย่างรวดเร็ว

Screenshot 2014-11-24 08.54.00

รูปที่  1  แนวโน้มตำแหน่งงานด้าน Hadoop

วันก่อนมีโอกาสได้อ่านบทความเรื่อง  “The Best Skills To Have On A Tech Resume — Ranked By Salary” ของ Business Insider ที่ตีพิมพ์เมื่อเดือนมีนาคมปี 2014 ซึ่งระบุทักษะด้านไอทีที่ควรมีโดยจัดอันดับจากอัตราเงินเดือนที่จะได้รับ ข้อมูลที่น่าสนใจคือทักษะ 10  อันดับแรกเปลี่ยนแปลงจากเมื่อ 4-5 ปีก่อนไปมาก แต่ที่น่าดีใจคือเมื่อผมดูทักษะทั้ง 10 แล้วก็มีวิชาต่างๆที่ผมได้ผลักดันให้เกิดการอบรมขึ้นโดยสถาบันไอเอ็มซี (IMC Institute) ก็เลยยังรู้สึกดีที่ทักษะของเราเองไม่ได้ตก Trends ยังมีความรู้ที่พอจะไปประกอบอาชีพตามความต้องการยุคใหม่ได้ และหลักสูตรที่สถาบันเปิดสอนก็มีส่วนช่วยประเทศในการพัฒนาบุคลากรให้ตรงกับตวามต้องการในปัจจุบัน ลองมาดูซิว่า 10 ทักษะที่ว่ามีด้านใด้บ้าง

Screenshot 2014-11-24 21.36.14

รูปที่  2  Top 10 IT Skills จาก Business Insider และหลักสูตรต่างๆของ IMC Institute ที่สอดคล้องกัน

1) Salesforce Architect จ่ายเงินเดือนระหว่าง $180,000 – $200,000 ต่อปี จริงๆแล้ว Salesforce เป็น SaaS ที่ทำด้าน CRM แต่มี Platform ที่ให้เราสามารถพัฒนา Enterprise Application บน  Salesforce Platform ได้คือการใช้ Force.com และ Salesforce เองก็ยังมีระบบอื่นๆอีกอาทิเช่น Salesforce1 สำหรับการพัฒนาบนอุปกรณ์เคลื่อนที่ หรือมีภาษาอย่าง APEX ในการพัฒนา User Interface ทาง  IMC Institute ก็มีหลักสูตรทางด้านนี้คือ Force.com Development Quick Start 

2) Security Architect จ่ายเงินเดือนระหว่าง $150,000 – $175,000 ต่อปี เรื่อง IT Security เป็นสิ่งที่ทุกฝ่ายมีความกังวลอย่างมาก ดังนั้นงานทางด้านนี้จึงเป็นที่ต้องการอย่างสูงโดยเฉพาะคนที่จะมาเป็น Architect ทางด้านนี้

3) DevOps จ่ายเงินเดือนระหว่าง $135,000 – $170,000 ต่อปี แนวทางการพัฒนาโปรแกรมปัจจุบันที่ต้องรวมส่วนของ  Development และ Operations เข้ามาด้วยกัน โดยมีเครื่องมือใหม่ๆหลายตัวที่ทำด้านนี้ทำให้คนที่มีทักษะด้าน DevOps เป็นที่ต้องการอย่างมาก ทาง IMC Institute ก็ได้นำเครื่องมืออย่าง AWS OpsWorks เข้ามาสอนในวิชาการพัฒนาโปรแกรมอย่าง Large Scale Java Web Programming on Cloud Platform

4) Android Developer จ่ายเงินเดือนระหว่าง $135,000 – $165,000 ต่อปี  ความต้องการนักพัฒนาโปรแกรมบน Android Platform ยังมีอีกมากโดนเฉพาะเมื่ออุปกรณ์เคลื่อนที่ส่วนมากจะรันบน Android  และจะมีอุปกรณ์  Internet of Things  ที่รันบน Android  อีกมาก

5) Front-End Developers With Javascript Libraries จ่ายเงินเดือนระหว่าง $140,000 – $150,000 ต่อปี  การพัฒนาโปรแกรมด้าน Front-end มีการเปลี่ยนแปลงและต้องการผู้ที่เข้าใจ Javascript Libraries ต่างๆอาทิเช่น AngularJS, EXT-JS หรือ Node.JS ทาง  IMC Institute ก็มีหลักสูตรที่เกี่ยวข้องกับทางด้านนี้เช่น Real-time Social Cloud/Web Application with Node.js Server-side JavaScript

6)  iOS Developer จ่ายเงินเดือนระหว่าง $120,000 – $150,000 ต่อปี  ความต้องการของนักพัฒนาซอฟต์แวร์โมบายบนแพลตฟอร์มของ Apple ก็ยังมีมากเช่นเดิม

7) Project Manager  จ่ายเงินเดือนระหว่าง $110,000 – $150,000 ต่อปี งานด้านการบริหารโครงการไอทียังเป็นที่ต้องการอย่างสูง  IMC Institute ก็เปิดหลักสูตรทางด้านนี้มาอย่างต่อเนื่องเช่น Project Management Essentials

8) Data Architect จ่ายเงินเดือนระหว่าง $110,000 – $150,000 ต่อปี หนึ่งในแนวโน้มของเทคโนโลนีด้านไอทีคือเรื่อง Big Data ดังนั้นงานทางด้านการออกแบบบริหารข้อมูลจึงเป็นเรื่องสำคัญ และอาจมีความต้องการ Chief Data Officer มากขึ้นในอนาคต IMC Institute เองก็จะเปิดหลักสูตร Big Data Certification ระยะเวลา 120 ชั่วโมงเพื่อเน้นเรื่องของ Big Data และสร้างนักไอทีทางด้านนี้

9) Big Data Engineer จ่ายเงินเดือนระหว่าง $125,000 – $145,000 ต่อปี เทคโนโลยี Big Data กำลังเข้ามาจึงจำเป็นต้องการบุคลากรไอทีที่มีความรู้เทคโนโลยี อย่าง Hadoop, Netezza หรือ Cloudera ซึ่งทาง IMC Institute  ก็ได้เปิดหลักสูตรที่เกี่ยวข้องกับ Hadoop  อยู่หลายหลักสูตร

10)Data Scientist จ่ายเงินเดือนระหว่าง $125,000 – $145,000 ต่อปี เทคโนโลยี Big Data ทำให้มีความต้องการ Data Scientist มากขึ้น โดยเฉพาะคนที่รู้เรื่อง Big Data และ Machine Learning ทาง IMC Institute จึงเปิดหลักสูตรทางด้านนี้ในปีหน้าเพื่อเรียนรู้เทคโนโลยีอย่าง R และ Mahout บน Hadoop เช่นหลักสุตร Introduction to Data Scientist

ธนชาติ นุ่มนนท์

IMC Institute

Screenshot 2015-01-24 22.30.12

IMC Institute ปรับปรุงหลักสูตรด้าน Big Data ในปีหน้า เพื่อสร้างคนไอที

IMC Institute  เปืดมาได้สองปี นอกเหนือจากงานด้่าน IT Market Research และ IT Consult งานหลักอีกด้านที่ทางสถาบันทำคือการจัดฝึกอบรมเพื่อพัฒนาบุคลากรด้านไอที ที่พยายามสร้างความแตกต่างด้วยการเน้นเรื่องของ Emerging Technology ซึ่งด้านหนึ่งที่เราทำการอบรมคือ Big Data ในรอบสองปีที่ผ่านมาเราเปิดอบรมหลักสูตรต่างๆ ตั้งแต่ Introduction to Big Data, Hadoop, Business Intelligence, Big Data Strategy  ที่เราทำการอบรมทั้งกลุ่มคนที่เป็นคนไอที คนดูแลระบบ นักพัฒนาโปรแกรม ผู้บริหารด้านไอที ร่วมถึงทำโครงการ  Train the trainers  และบางครั้งเราก็ร่วมกับพันธมิตรอย่าง Oracle  หรือ Computerlogy ในการจัดฟรีสัมมนาให้ความรู้ด้าน  Big Data ให้กับคนทั่วไป

ผมพยายามทำข้อมูลมาดูตัวเลขเฉพาะกลุ่มคนที่เราอบรมหลักสูตรตั้งแต่หนึ่งวันขึ้นไปในหลักสูตรที่เกี่ยวข้องกับ  Big Data มีถึง 633 คน โดยวิชาที่มีคนมาอบรมมากที่สุดก็คือ Big Data Using Hadoop ตามมาด้วย Business Intelligence Design and Process นอกจากนี้เรายังมีการอบรมอาจารย์สถาบันอุดมศึกษาต่างๆจำนวน 28  คนเพื่อให้ทราบเรื่อง Cloud Computing และ Big Data รวมทั้งมีการทำ in-House ในหน่วยงานต่างๆทั้งที่เป็นสถาบันการเงิน และผู้ให้บริการโทรศัพท์เคลื่อนที่

Screenshot 2014-11-20 07.45.14

รูปที่ 1 จำนวนผู้อบรมหลักสูตรด้าน Big Data กับ IMC Institute

Big Data  เป็นเทคโนโลยีที่ทุกหน่วยงานจะมองข้ามไปไม่ได้ และธุรกิจจะต้องให้ความสำคัญกับเรื่องนี้ หน่วยงานที่สามารถเอาข้อมูลมาวิเคราะห์และใช้ Big Data ในการทำ Predictive Analytics จะได้เปรียบเหนือคู่แข่ง แต่อย่างไรก็ตามบ้านเรายังขาดคนทางด้านนี้อีกมาก ในปีหน้าทาง IMC Institute ก็จะให้ความสำคัญกับการอบรมทางด้านนี้โดยจะเน้นการปรับปรุงหลักสูตรให้มีคุณภาพให้ดียิ่งขึ้นดังนี้

  • เชิญวิทยากรที่เชี่ยวชาญทางด้าน Big Data มาร่วมกับทางสถาบันมากขึ้น
  • ใช้ระบบ Virtual Server  บน Public Cloud อย่าง Amazon Web Services ในการอบรม เพื่อให้ผู้อบรมสามารถฝึกการสร้าง Big Data Cluster ได้จริง
  • เปิดการอบรมด้าน Data Scientist เพื่อให้คนไอทีเข้าใจการทำ Predictive Analytics
  • เปิดการอบรมสำหรับผู้บริหารเพื่อให้เข้าใจการวางแผนกลยุทธ์ด้าน Big Data
  • สนับสนุนการอบรมบุคลากรในสถาบันอุดมศึกษา เพื่อจะได้ช่วยกันสร้างบุคลากรด้านนี้

ซึ่งในปีหน้าทาง  IMC Institute  จะเปืดหลักสูตรต่างๆทางด้าน Big Data ดังนี้

  • Train the Trainers: Cloud Computing & Big Data Workshop: หลักสูตร 5 วันนี้ทาง IMC Institute เน้นจัดอบรมให้กับอาจารย์ในสถาบันอุดมศึกษา เพื่อจะเตรียมหลักสูตรให้สอดคล้องกับ Emerging Technology ทางด้าน Cloud และ  Big Data โดยเก็บค่าอบรม  5,500 บาท
  • Big Data Certification Course: หลักสูตร 120 ชั่วโมง เริียนทุกวันพฤหัสบดีเย็นและวันเสาร์ทั้งวัน เป็นเวลา 4  เดือน เริ่มตั้งแต่กลางเดือนมีนาคม เป็นหลักสูตรที่ต้องการพัฒนาคนไอทีีให้เข้าใจเรื่อง Big Data  การใช้เครื่องมือต่างๆทั้ง NoSQL, Hadoop, R, Mahout  และเรียนรู้เรื่องของ BI กับ  Data Scientist
  • Big Data in Actions for Senior Management: หลักสูตรสำหรับผู้บริหาร ที่ต้องการเข้าใจเรื่อง  Big Data  การวางแผนกลยุทธ์ทางด้าน Big Data  รวมถึงการเรียนรู้เทคโนโลยีต่างๆที่เกี่ยวข้องกับ Big Data
  • Introduction to Data Scientist: หลักสูตรสอนหลักการของ Data Science โดยจะอบรมด้าน Machine Learning พร้อมการใช้ R และ  Mahout
  • Business Intelligence Design and Process: หลักสูตรด้าน  BI ของสถาบันที่จะสอนให้รู้จักการวิเคราะห์ข้อมูล การทำ Data Mining และการใช้  Data Warehouse
  • Big Data using Hadoop Workshop: หลักสูตรนี้สอนการติดตั้ง Hadoop และแนะนำ Hadoop Eco-System โดยจะมีการติดตั้งบน Local Machine  และสร้าง Hadoop Cluster จากระบบจริงบน Cloud พร้อมทั้งเรียนการใช้งาน Big Data as a Service บน  Cloud
  • Big Data Programming using Hadoop for Developers: หลักสูตรการพัฒนาโปรแกรมสำหรับ  Big Data บน  Hadoop โดยใช้ Map/Reduce, Hive, Pig และปฎิบัติจริงกับ Hadoop Cluster บน  Amazon EMR

ก็หวังว่าหลักสูตรต่างๆของ IMC Institute  จะเป็นประโยชน์ต่อการพัฒนาคนอุตสาหกรรมไอที เพื่อสามารถแข่งขันในด้าน Emerging Technology ได้

ธนชาติ นุ่มนนท์

IMC Institute

พฤศจิกายน 2557

คนไอทีต้องใส่ใจ Cloud ก่อนที่ฝั่งธุรกิจจะไม่ใส่ใจคนไอที

11709430_522234144590597_5709026408869460786_n

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

ทุกวันนี้หน่วยงานส่วนใหญ่ไม่มีความจำเป็นต้องผลิตไฟฟ้าใช้เอง ไม่ต้องผลิตน้ำประปาเอง สิ่งเหล่านี้เป็นโครงสร้างพื้นฐานในการทำธุรกิจในองค์กร แต่ก็อดมีคำถามไม่ได้ว่าแล้วทำไมเราต้องมีหน่วยงานไอทีในหน่วยงาน ทำไมเราต้องผลิตไอทีมาใช้เองละ ทำไมไม่ใช้บริการจากผู้ให้บริการ เหมือนอย่างที่เราใช้น้ำจากการประปานครหลวง ใช้ไฟฟ้าจากการไฟฟ้า หรือใช้โทรศัพท์จาก TOT หรือผู้ให้บริการโทรศัพท์เคลื่อนที่

ในอดีตบทบาทของแผนกไอทีในองค์กรก็จะมาช่วยบริหารไอทีในองคกร  ไล่มาตั้งแต่ด้าน Front end แผนกไอทีจะทำหน้าที่เป็น Help Desk ให้กับบุคลากรในหน่วยงาน จัดหาคอมพิวเตอร์ให้ใช้ ติดตั้งโปรแกรม ทำการซ่อมบำรุงเครื่องหรือแก้ปัญาด้านโปรแกรมที่ติดตั้งบนเครื่อง แต่พอพูดถึงเทคโนโลยียุคปัจจุบัน Smartphone Tablet เริ่มเข้ามา องค์กรก็เริ่มจะมีการเน้นการทำ BYOD มากขึ้น โปรแกรมก็ติดตั้งง่ายขึ้น มี Application Store ที่ผู้ใช้จะทำการติดตั้ง ลบ หรือ update โดยง่าย มีโปรแกรมที่อยู่บน Cloud ทำให้การติดตั้งโปรแกรมทำได้ง่ายขึ้น เครื่องก็เสียน้อยลง ความจำเป็นที่ต้องการ help desk สำหรับงานในองค์กรก็เริ่มน้อยลง เว้นเสียแต่เป็นองค์กรใหญ่มากหรือหน่วยงานเราเน้นระบบความปลอดภัยด้านไอทีอย่างมาก

แล้วแผนกไอทีต้องทำอะไรอีกละ ในอดีตอาจเป็นคนดูเครื่อง Server ดูแล Data Center แล้วถ้า Application ส่วนใหญ่มาใช้ Public Cloud ละ ความจำเป็นที่จะต้องมี Server ในองค์กรก็จะน้อยลง และถ้าองค์กรมาใช้ Virtual Server บน IaaS Cloud ก็จะยิ่งทำให้ความจำเป็นของแผนกไอทีในการดูแล Data Center ยิ่งน้อยลง

บางท่านอาจจะนึกได้ว่าแผนกไอทีก็เป็นคนพัฒนาระบบ Application ให้กับฝั่งธุรกิจใช้นี่ แผนกไอทีเคยเป็นคนติดตั้งระบบ E-mail โดยการจัดหา Server ติดตั้งซอฟต์แวร์และดูแลระบบอีเมล์ให้ แต่พอวันนี้มีระบบ SaaS Cloud ฝ่ายธุรกิจสามารถติดต่อกับผู้ให้บริการ Cloud โดยตรง และสามารถจัดหาระบบอีเมล์มาใช้ได้โดยง่าย โดยไม่ต้องผ่านแผนกไอที เช่นเดียวกันสมัยก่อนแผนกไอทีอาจเป็นคนพัฒนา Application หรือจัดหาซอฟต์แวร์และติดตั้งซอฟต์แวร์บนเครื่อง Server  ให้กับฝั่งธุรกิจ แต่พอวันนี้มีหลาย Application สามารถใช้งานจาก Public SaaS ฝั่งธุรกิจก็สามารถติดต่อกับผู้ให้บริการโดยตรง

จากที่กล่าวมาทั้งหมดแล้ว ดูเหมือนว่าแผนไอทีขององค์กรจะมีความสำคัญน้อยลงในยุคของ Cloud Computing หรือว่าแผนกไอทีกำลังจะหายออกไปจากองค์กรที่ไม่ใช่ธุรกิจไอที จริงๆคำกล่าวนี้อาจจะเป็นจริงสำหรับองค์กรขนาดเล็กอย่างกลุ่ม SME เพราะการลงทุนที่จะต้องมาจัดหาไอทีเอง จัดตั้งแผนกไอที หาคนมาทำงานด้านไอที ไม่ใช่เรื่องง่าย ดังนั้นการใช้ไอทีจากผู้ให้บริการ Cloud ขององค์กรแบบนี้จะช่วยทำให้ธุรกิจมีความคล่องตัวขึ้น และจะได้มุ่งเน้นงานในธุรกิจของตัวเองและปล่อยให้งานไอทีเป็นของผู้ให้บริการทีืมีคุณภาพซึ่งอยู่นอกองค์กร แต่คำกล่าวนี้อาจจะไม่เป็นจริงสำหรับองค์กรขนาดใหญ่ที่มีระบบไอทีอยู่มาก แต่แผนกไอทีต้องไม่ได้ละเลยกับเทคโนโลยี Cloud Computing และเราอาจเห็นระบบ Hybrid Cloud ในองค์กรที่การทำงานแผนกไอทีที่อาจเป็นการพัฒนาระบบ On-Premise หรือ Private Cloud ไปควบคู่กับการใช้ Public Cloud. ภายนอก

n4g_cloud-computing

แผนกไอทีจะต้องให้ความสนใจกับเทคโนโลยี Cloud Computing ทำหน้าที่เป็นคนกลางระหว่างฝั่งธุรกิจและผู้ให้บริการ Cloud เป็นคนที่จะช่วยในการคัดเลือกผู้ให้บริการ Cloud เป็นผู้ที่จะประมาณการค่าใช้จ่าย Cloud ช่วยในการต่อรองเรื่อง Service Level Agremment (SLA) และอาจช่วยเป็น Monitor และดูแลการใช้ Cloud. ของฝั่งธุรกิจ ดังนั้นเราจะเห็นได้ว่าแม้บริการ Public Cloud จะเข้ามาแทนที่งานของแผนกไอทีเดิมเป็นจำนวนมาก แต่บทบาทความสำคัญของคนไอทียังไม่หายไปจากองค์กร ถ้าคนไอทีมีความเข้าใจเรื่อง Cloud และมีทักษะใหม่ๆในการบริหารและใช้งาน Cloud

แต่ในทางตรงข้ามถ้าคนไอทีไม่ใส่ใจและละเลยกับเทคโนโลยี Cloud computing ไม่ให้ความสำคัญกับเรื่องนี้ ไม่เข้าใจการเปลี่ยนแปลงของเทคโนโลยี ฝั่งธุรกิจก็จะละเลยแผนกไอทีแล้วก็จะไปติดต่อใช้งานกับผู้ให้บริการ Cloud โดยตรง ซึ่งผมก็เห็นตัวอย่างมาในบางองค์กรที่ฝั่งธุรกิจจัดหาซอฟต์แวร์บน Cloud อย่างระบบอีเมล์ ระบบบริหารงานลูกค้า หรือแม้แต่ระบบ Business Inteligence มาใช้งานโดยผ่านผู้ให้บริการ Cloud โดยตรง และไม่ปรึกษาแผนกไอที ก็ด้วยเหตุผลว่าไม่เห็นคุณค่าของแผนกไอทีในเรื่องนี้ และคิดว่าแผนกไอทีล่าช้าไม่สามารถพัฒนา Application ที่ตรงใจเหมือนกับ Application ของผู้ให้บริการ Cloud

ครับวันนี้คนไอทีต้องใส่ใจ Cloud ก่อนที่ฝั่งธุรกิจจะไม่ใส่ใจคนไอที

ธนชาติ นุ่มนนท์

IMC Institute

ความเข้าใจผิดบางประการเกี่ยวกับ Big Data

ผมเคยเขียนบทความเรื่อง ความเข้าใจผิดบางประการเกี่ยวกับ Coud Computing มาระยะหลังผมได้ศึกษาเรื่อง Big Data มากขึ้น มีโอกาสได้ไปบรรยายและให้คำปรึกษาเกี่ยวกับเรื่องนี้ในหลายๆที่ ก็เลยพบว่าหลายๆคนมีความเข้าใจคาดเคลื่อนเกี่ยวกับ Big Data เช่นเดียวกัน วันนี้จึงขอรวบรวมมาสรุปความเข้าใจผิดบางประการเกี่ยวกับ Big Data ดังนี้

  • Big Data คือข้อมูลขนาดใหญ่ หลายๆคนแปลคำว่า Big Data แบบตรงตัวแล้วสรุปเอาตรงเลยว่า Big Data ก็คือข้อมูลที่มีขนาดใหญ่ ซึ่งจริงๆแล้วก็มีส่วนถูกอยู่บ้าง แต่ความหมายของ Big Data ประกอบด้วย 3 องค์ประกอบคือ Volume ข้อมูลมีขนาดใหญ่ Velocity ข้อมูลเปลี่ยนแปลงไปอย่างรวดเร็ว และ Variety ข้อมูลมีหลากหลายรูปแบบทั้ง structure และ unstructure จากองค์ประกอบทั้งสามนี้ทำให้เราไม่สามารถที่จะใช้วิธีการจัดการข้อมูลในปัจจุบันมาใช้ได้ หากต้องการได้ประโยชน์จาก Big Data อย่างแท้จริง
  • Big Data สามารถบริหารจัดการได้โดยใช้ฐานข้อมูล RDBMS แบบเดิม จริงๆแล้วเวลาเราพูดถึง Big Data ข้อมูลจะมีขนาดใหญ่มากหลายร้อย TeraByte หรืออาจเป็น PetaByte  และก็มีทั้งแบบ Structure หรือ unstructure ทำให้เราจำเป็นต้องปรับปรุงโครงสร้างเทคโนโลยีด้านข้อมูล (Information Infrastructure) โดยนำเทคโนโลยีใหม่เช่น NoSQL, NewSQL หรือ Hadoop เข้ามาใช้ ตัวอย่างเช่นทุกวันนี้บริษัทผู้ให้บริการมือถือที่ต้องเก็บ CDR (Call Detail Record) ที่มีข้อมูลหลาย TB ต่อวันทำให้ไม่สามารถเก็บไว้ใน RDBMS ได้ในระยะเวลานานได้ จึงต้องมีการนำเทคโนโลยีอย่าง Hadoop มาเพื่อให้สามารถเก็บข้อมูลได้นานขึ้น และนำข้อมูลระยะยาวมาวิเคราะห์ได้
  • Hadoop คือเครื่องมือในการทำ Big Data ข้อเท็จจริงคือว่า Big Data จะต้องมีการบริหารข้อมูลขนาดใหญ่ในหลายรูปแบบ Hadoop ก็เป็นเพียงเครื่องมือหนึ่งที่น่าสนใจถ้าต้องการเก็บ unstructure data ขนาดใหญ่ที่เก็บข้อมูลได้เป็น PetaByte และสามารถที่จะใช้ร่วมกับ RDBMS และ EDW (Enterprise Data Warehouse) นอกจากต้นทุนในการเก็บข้อมูลจะต่ำกว่ามากดังแสดงในรูปที่ 1  ทำให้ Hadoop เป็นเทคโนโลยีืที่น่าสนใจมากถ้าเราต้องการทำ Big Data แต่ Hadoop ก็จะไม่ได้มาแทนที่เทคโนโลยีการเก็บข้อมูลแบบเดิมเช่น RDBMS และ EDW

Screenshot 2014-11-17 16.27.33

รูปที่ 1 ราคาเปรียบการเก็บข้อมูลต่อ TB โดยใช้เทคโนโลยีต่าง [Source: Monetizing Big Data at Telecom Service Providers]

  • Strucure Data ในองค์กรเพียงพอต่อการทำ Big Data ข้อมูลในปัจจบันมีแนวโน้มที่จะเป็น unstructure data มากกว่า structure data โดยมีการประมาณการว่า 85% ของข้อมูลทั้งหมดคือ unstructure data ที่อาจเป็นข้อมูลที่เป็น text, รูปภาพ, อีเมล์, social media หรือ semistructure data อย่าง JSON และ XML ดังนั้นหากองค์กรต้องการจะได้ประโยชน์จาก Big Data ก็ต้องมีการนำ unstructure data มาใช้ และอาจต้องให้ความสำคัญข้อมูลภายนอกองค์กรพอๆกับข้อมูลที่เก็บไว้ในองค์กร
  • Big Data คือการนำข้อมูลมาเก็บและแสดงผลแบบ BI  จริงๆแล้วคุณค่าของการทำ Big Data คือการนำข้อมูลจำนวนมหาศาลมาวิเคราะห์คาดการณ์อนาคต (predictive analytics)  ที่ไม่ใช่เพียงแค่การทำ static report ที่เป็นการนำข้อมูลในอดีตมาประมวลผลและสรุปในมิติต่างๆที่เราจะเน้นในการทำ Business Intelligence
  • Data Scientist ก็คือ Business Analyst งานสองอาชีพนี้แตกต่างกันมากเพราะ Data Scientist คือผู้ที่จะนำข้อมูลมาทำ Predictive Analytics จึงต้องมีความรู้ด้านคณิตศาสตร์ที่เป็นโมเดลคณิตศาสตร์ในการวิเคราะห์อัลกอริทึม มีความรู้ด้านการพัฒนาโปรแกรม และมีความรู้ในธุรกิจที่จะวิเคราะห์ข้อมูล ขณะที่ Business Analyst อาจเป็นนักสถิติหรือทีมงานที่สามารถนำข้อมูลในอดีตมาประมวลผลในหลายมิติ แล้วสามารถทำเป็นรายงาน หรือรูปภาพกราฟฟิกต่างๆได้
  • Predictive Analytics ต้องทำกับ BigData เท่านั้น จริงๆแลัวการทำ Predictive Analytics สามารถจะใช้กับข้อมูลใดๆก็ได้ และเป็นการเน้นเรื่องของ Algorithm ที่มาคาดการณ์ในด้านต่างๆ แต่การมีข้อมูลในการมาวิเคราะห์ที่มีขนาดใหญ่ก็จะมีคาดแม่นย้ำในการคาดการณ์ที่ดีขึ้น เหมือนระบบ e-commerce ที่เมื่อมีจำนวนลูกค้ามาซื้อสินค้ามากขึ้นก็สามารถที่จะดูพฤติกรรมการซื้อของกลุ่มคนที่ใกล้เคียงกันได้ และสามารถแนะนำสินค้าที่น่าจtซื้อต่อไป (Next Thing to Buy) ได้ดียิ่งขึ้น
  • Hadoop เป็นเรื่องยากจะต้องเขียนโปรแกรมภาษาจาวาในการประมวลผลและทำงานแบบ Batch เท่านั้น เรื่องนี้อาจถูกต้องถ้ากล่าวถึง  Hadoop 1.0 แต่ก็มีการพัฒนาภาษาคล้าย SQL อย่าง Hive QL, Impala มาทำให้ประมวลผลได้ง่ายขึ้นโดยไม่ต้องเขียนโปรแกรม และถ้าพูดถึงเวอร์ชั่น 2.x ในปัจจุบัน  Hadoop ได้พัฒนาไปมาก ทำให้เราสามารถที่จะประมวลผลแบบ Realtime หรือใช้โปรแกรมภาษาอย่างอื่นเช่น Python มาช่วยประมวลผลได้

ธนชาติ นุ่มนนท์

IMC Institute

พฤศจิกายน 2557

งานสัมมนา IT Trends: Strategic Planning for 2015 วันที่ 2-3 ธ.ค. นี้

Screenshot 2014-11-13 08.31.12

ทุกๆสิ้นปีผมมักจะจัดงานแนะนำ IT  Technology Trends สำหรับปีต่อไป ทั้งนี้ก็เพื่อให้ธุรกิจได้วางแผนด้านไอทีและเทคโนโลยีด้านอื่นๆสำหรับรองรับการทำงานในปีต่อๆไปได้ดีขึ้น ปีที่แล้วทาง IMC Institute ก็จัดงานอบรมเชิงสัมมนา IT trends 2014 โดยมีเนื้อหาที่น่าสนใจมากมายและผมก็เคยได้เขียนบทความสรุปการสัมมนาไว้ดังนี้

สำหรับแนวโน้มในปีหน้า หลายๆคนก็อาจจะนึกถึง Mega Trends อยู่สามเรื่องคือ Cloud Computing, Internet of Things และ Big Data ซึ่งทางสำนักวิจัยอย่าง Gartner เองก็ได้ออกรายงานเรื่อง Top 10 strategic IT Trends 2015 ที่ครอบคลุมด้านต่างๆเหล่านี้ และผมเองก็เคยเขียนบทความเรื่อง Big Data Trends กับ Cloud Computing Trends 2015 เพื่อให้ทราบถึงแนวโน้มในเทคโนโลยีบางด้านมาให้อ่านกัน

แต่การจัดสัมมนาฟังความเห็นของวิทยากรหลายๆท่านที่เชี่ยวชาญในแต่ละด้าน จะได้ประโยชน์และเห็นแนวโน้มได้ดียิ่งขึ้น ปีนี้ทาง IMC Institute จึงได้จัดงานสัมมนาแบบนี้อีกครั้ง ภายใต้ชื่องาน IT Trends: Strategic Planning for 2015 ในวันที่ 2-3 ธันวาคม 2557 ที่โรงแรมแมนดารินตรงใกล้สถานีรถไฟฟ้าใต้ดินสยาม งานมีสองวันและมีวิทยากรทั้งหมด 17 ท่าน ซึ่งสามารถดูรายละเอียดของงานได้ที่ www.imcinstitute.com/ittrends โดยมีหัวข้อต่างๆดังนี้

  • Technology Trends 2015: ผมได้เชิญ ดร.มนู อรดีดลเชษฐ์ อดีตผอ. SIPA และหนึ่งในคณะที่ปรึกษาของรองนายกรัฐมนตรีมาบรรยายแนวโน้มของเทคโนโลยีในปีหน้า
  • Computing Everywhere & The Internet of Things หัวข้อนี้ได้คุณปฐม อินทโรดม ประธานเจ้าหน้าที่บริหาร บริษัท เออาร์ไอพี จำกัด (มหาชน) ผู้ผลิตสื่อไอทีหลายๆเล่มและผู้จัดงาน commart มาบรรยายให้ฟังว่ามีเทคโนโลยี IoT อะไรบ้างที่น่าจับตามอง
  • Social Networks Trends 2015: คุณอรนุช เลิศสุวรรณกิจ ผู้ร่วมก่อตั้งและกองบรรณาธิการ Thumbsup.in.th เว็ปไซต์ข่าว ที่เชี่ยวชาญด้านนี้จะมาพูดถึงแนวโน้มของ Social  Networks ของโลกและในบ้านเรา
  • Cloud-Clent Architecture: เรื่องนี้เป็น IT Trends ที่ Gartner ได้กล่าวถึงมาสองปีติดกันแล้ว ผมเองจะมาเจาะลึกให้เห็นว่าเรื่องนี้คืออะไร
  • E-Commerce Trends 2015: เรื่องแนวโน้มของ E-Commerce คงหนีไม่พ้นที่จะต้องให้เจ้าพ่อวงการอย่าง คุณภาวุธ พงษ์วิทยภานุ กรรมการผู้จัดการและผู้ก่อตั้งเว็บไซต์ บริษัท TARAD.com และนายกสมาคม E-commerce มาเป็นผู้บรรยาย
  • Big Data Analytics: How and Trends: เป็นอีกเรื่องที่กล่าวขานกันมาก นอกจากผมแล้วผมได้เชิญผู้เขี่ยวชาญด้าน Big Data อีกสองท่านมาร่วมเสวนาคือ ผศ.ดร.ภุชงค์ อุทโยภาศ ผู้ช่วยอธิการบดีมหาวิทยาลัยเกษตรศาสตร์ และ คุณวัชระ เอมวัฒน์ CEO ของบริษัท Compterlogy โดยมี คุณพันธุ์ทิตต์ สิรภพธาดา ผู้บริหารบริษัท Ebistoday และผู้จัดรายการวิทยุ เป็นผู้ดำเนินการเสวนา
  • IT Enterprise planning 2015 on Cloud Computing and Big Data: เรื่อง Cloud Computing กับ Big Data ทำให้องค์กรต้องวางแผนงานด้านไอทีให้ดียิ่งขึ้น ผมจะมาอธิบายให้ฟังว่าปีหน้าเราต้องทำอย่างไร
  • Web-Scale IT: สถาปัตยกรรมทำ Web Application วันนี้มีความซับซ้อนมากขึ้น เพราะจะมีจำนวนผู้เข้าใช้งานพร้อมกันมหาศาล เราจะต้องออกแบบอย่างไรมาฟังแนวโน้มเรื่องนี้จาก ผศ.ณัฐวุฒิ หนูไพโรจน์ จากวิศวกรรมคอมพิวเตอร์ และรองคณบดีฝ่ายสารสนเทศของคณะวิศวกรรมศาสตร์ จุฬาลงกรณ์มหาวิทยาลัย
  • Dev-Op Trends: เรืิ่องหนึ่งที่กล่าวถึงกันมากคือการทำ Application ที่รวมด้าน Development และ Operation มาบริหารจัดการร่วมกันหรือที่เรียกว่า Dev-Op  หลายๆค่ายพูดถึงเรื่องนี้ลองมาฟัง คุณวรรณา ศฤงคารบริบูรณ์ Technical Director  จาก CA Solutions (Thailand)
  • Digital Economy and IT Market Outlook 2015: ฟังเสวนาเรื่องนี้จากมุมมองของคุณอดิเรก ปฎิทัศน์ นายกสมาคม ATCI และประธานกรรมการบริษัท MFEC, คุณศุภชัย สัจกิจไพบูลย์ เลขาธิการสมาคม ATCI, และ ดร.กษิติธร ภูภราดัย ผู้อำนวยการฝ่ายอาวุโส ฝ่ายวิจัยและนโยบาย ผู้ที่ทำการสำรวจตลาดไอซีทีในประเทศไทยมาโดยตรง โดยมีคุณวิชัย วรธานีวงศ์ ผู้จัดรายการ CEO Vision และที่ปรึกษารายการทีวี IT 24 Hours Show ทางทีวีช่อง  3 เป็นผู้ดำเนินการเสวนา
  • Risk-Based Security and Self-Protection: ฟังมุมมองจากผู้เชี่ยวชาญด้าน IT Security อย่างคุณนรินทร์ฤทธิ์ เปรมอภิวัฒโนกุล (ไชยกร อภิวัฒโนกุล)  กรรมการสมาคมความมั่นคงปลอดภัยระบบสารสนเทศ (TISA)
  • Software Defined Infrastructure and Applications: อีกแนวโน้มหนึ่งที่มีการกล่าวถึงกันมากคือเรื่องนี้ ผมได้เชิญคุณฐิติธร เสมาเงิน IT Architect จาก Oracle (Thailand) มาบรรยาย
  • Smart Machines: เรื่องสุดท้ายนี้เชิญเจ้าเทคโนโลยีอย่าง IBM Watson โดยคุณธนะพงษ์ จารุเวคิน ผู้เชี่ยวชาญทางเทคนิค จาก IBM (Thailand) มาบรรยาย

ถ้าสนใจรายเลียดเพิ่มเติมการบรรยายนี้ติดต่อมาได้ที่คุณขวัญหทัย ถาวรพงษ์ เบอร์ 087-593-7974, 088-192-7975 , 090-992-9916 และ 02-610-3687

ธนชาติ นุ่มนนท์

IMC Institute

Screenshot 2014-11-16 11.29.48

Screenshot 2014-11-16 11.30.05

Cloud Computing Trends 2015

วันก่อนผมต้องไปบรรยายให้กับ Inet และ I am Consulting เรื่องของ Cloud Computing Trends ในตอนแรกผมก็พยายามจะดูว่ามีสำนักวิจัยค่ายไหนบ้างที่พูดถึง Trends ในปีหน้า แต่หลังจากค้นไปค้นมาเลยมานั่งคิดว่า ตัวเองก็ศึกษาและดูแนวโน้มเรื่อง Cloud Computing พอควร ก็ควรที่จะเป็นคนหนึ่งที่บอกแนวโน้มได้ เลยทำ Slide กำหนด 10 Trends เองเลยดังนี้

1) ตลาด Cloud Computing ของทั่วโลกกำลังโตขึ้น (Global cloud computing
is growing)

ตลาดด้านไอทีกำลังเปลี่ยนจากภาคฮาร์ดแวร์สู่ภาคบริการ (Service) ซึ่งก็สอดคล้องกับเทคโนโลยี Cloud Computing ซึ่งทาง Gartner คาดว่าตลาดจะโตถึง 250,000 ล้านเหรียญสหรัฐในปี 2017 ทั้งนี้ถ้ามองเฉพาะตลาดหลักอย่างบริการ IaaS, SaaS และ PaaS โดยไม่รวมบริการอย่าง Consulting หรือ  Cloud Advertising  ทาง IDC คาดว่าตลาดจะโตถึง 107,200 ล้านเหรียญสหรัฐในปี 2017 โดยตลาดส่วนใหญ่จะเป็น  SaaS ทั้งนี้ผู้ให้บริการรายใหญ่ยังเป็น Amazon Web Services ที่ยังโตต่อเนื่องโดยมีการคาดการณ์ว่าจะมีรายได้สูงถึง 9,200 ล้านเหรียญสหรัฐในปี 2015 และสำหรับตลาดในเอเซียนิตยสาร Forbes คาดว่าจะมีมูลค่าสูงถึง 31,982 ล้านเหรียญสหรัฐในปี 2020  โดยตลาดส่วนใหญ่เกือบ 50% อยู่ในญี่ปุ่นและเป็นมูลค่า SaaS  ถึง 16,405 ล้านเหรียญสหรัฐ

Screenshot 2014-11-13 07.35.59

รูปที่  1  มูลค่าตลาด Cloud Computing ในเอเซีย [ข้อมูลจาก http://www.forbes.com]

2) จะมีบริการใหม่ๆบน Cloud Computing ที่ทำให้การใช้งานเติบโตมาก (New services make cloud more than mature) 

การบริการของ  Cloud Computing  จะมีมากกว่าแค่ IaaS, PaaS  และ SaaS  ผู้ให้บริการจะแข่งกันออก Service  ใหม่ๆอย่างต่อเนื่อง และทำให้เราสามารถที่จะใช้บริการ Cloud แทนที่จะต้องมาสร้าง IT Infrastructure ขนาดใหญ่ในองค์กร อาทิเช่น Service ที่หลากหลายของ Amazon Web Services ทำให้เราสามารถที่จะสร้าง Larger Scale Web Application Architecture ได้อย่างน้อย นอกจากนี้ผู้ให้บริการแต่ละรายก็จะมีตลาด App Store ของตัวเองอาทิเช่น AWS Application Market และ Salesforce AppExchange

3)  ยังจะมีผู้ให้บริการ  Cloud ในแต่ละประเทศแต่จะเป็นขนาดเล็กกว่าหรือบริการเฉพาะ (Regional/Local cloud smaller or boutique cloud)

แม้ผู้ให้บริการรายใหญ่ระดับโลกจะมีคุณภาพและราคาที่ถูกกว่า และการเป็นผู้ให้บริการ IaaS จำเป็นต้องมีการลงทุน  Data Center ที่สูงมากและเน้นมีลูกค้าจำนวนมาก แต่ความต้องการของหน่วยงานรัฐบาลหรือบริษัทหลายๆประเทศยังจะให้ความสำคัญกับตำแหน่งที่ตั้งของ Data Center ในการเก็บข้อมูล ดังนั้นก็ยังจะมีผู้ให้บริการ IaaS  ขนาดเล็กที่จะคอยให้บริการกลุ่มองค์กรเหล่านี้อยู่ และก็อาจจะมีบริการเฉพาะด้านทีี่อาจเรียกว่า Boutique cloud สำหรับรายเล็กๆที่อาจแข่งขันกับรายใหญ่ได้เช่นการพัฒนา  NoSQL as a Service หรือการทำ  SaaS เฉพาะด้านของแต่ละภูมิภาค

4)  ตลาดโมบายและ Internet of Things จะกระตุ้นตลาด Cloud (Mobile Devices & IoT
booth cloud market)

มีการคาดการณ์ว่าจะมี  smartphone ถึง 4,000 ล้านเครื่อง และจะมีอุปกรณ์ Internet of Things ถึง 50,000 ล้านเครื่องในปี 2020 จำนวนที่มากขึ้นเหล่านี้หมายถึงการที่จะมีข้อมูลมากขึ้น มีการใช้ Personal Cloud  และ Cloud Applications ที่มากขึ้น เพราะจะมีความต้องการให้ข้อมูลตามผู้ใช้ไปได้ทุกที่ ทุกเวลา และทุกอุปกรณ์

5) องค์กรจะมีการพัฒนา Hybrid Cloud  มากขึ้น (More hybrid cloud adoption)

การจะ Migrate ทุกอย่างขึ้นสู่  Cloud ย่อมเป็นเรื่องที่ยาก ดังนั้นเราจะเห็นว่าองค์กรใหญ่ๆจะมีการใช้งาน Public/Private Cloud ผสมกับระบบที่เป็น  on-Premise ดังนั้น IT Architecture ก็จะถูกออกแบบให้ทำงานทั้งสองระบบร่วมกันได้ ทาง Gartner เองก็คาดการณ์ว่า 50%  ของหน่วยงานต่างๆทั่วโลกจะมี Hybrid Cloud ในปี 2017

6) SaaS จะกลายเป็นรูปแบบหลักในการซื้อ ซอฟต์แวร์ (SaaS becomes de facto for buying new applications)

ซอฟต์แวร์แบบเดิมจะขึ้น Cloud โดยมีรูปแบบของ License และการซื้อขายที่เปลี่ยนเป็น Pay per use โดยทาง IDC  คาดการณ์ว่าในปี 2016 รายได้ของบริษัทซอฟต์แวร์ทั่วโลกถึง 21.3% จะเป็น SaaS  โดยทาง PwC ก็มีรายงานที่ชี้ให้เห็นว่่าบริษัทต่างๆก็เริ่มสัดส่วนรายได้จาก SaaS ที่สูงขึ้น หลายบริษัทมีรายได้มากกว่า 80% จาก SaaS เช่น Salesforce, Google  หรือ Amazon

7) การพัฒนาซอฟต์แวร์ใหม่ๆจะมุ่งสู่ Cloud (New SW development will be mainly on cloud) 

เนื่องจากจะมีผู้ใช้ซอฟต์แวร์ในอนาคตที่มากขึ้น ทำให้ซอฟต์แวร์แต่ละตัวจะต้องอยู่บน IT Infrastructure  ขนาดใหญ่ จึงทำให้นักพัฒนาซอฟต์แวร์จะต้องเรียนรู้การพัฒนาซอฟต์แวร์บน PaaS หรือ IaaS ซึ่งทาง IDC คาดการณ์ว่าตลาด PaaS จะมีมูลค่าสูงถึง 14,000  ล้านเหรียญสหรัฐในปี 2017 และ 85%  ของซอฟต์แวร์ในปัจจุบันได้ถูกพัฒนาบน Cloud แล้ว นอกจากนี้ทาง Evans Data  ระบุว่า 1 ใน 4 ของนักพัฒนาซอฟต์แวร์ทั่วโลกจำนวน 18 ล้านคนกำลังพัฒนาซอฟต์แวร์บน Cloud

8) ราคาการให้บริการ  Cloud จะลดลง (Cloud pricing is decreased)

ผู้ให้บริการ Cloud ส่วนใหญ่ก็จะลดราคาการให้บริการ Cloud อย่างต่อเนื่อง โดยเราจะเห็น Amazon เป็นผู้นำในการตัดราคาลง โดยในปี 2013  Amazon ลดราคาบริการต่างๆถึง 12 รายการ ทำให้รายอื่นๆต้องลดราคาแข่งตาม ทำให้ในปัจจุบันราคา Computing Service หรือ  Storage Service มีราคาถูกลงมาก อาทิเช่นราคา Storage ของ Amazon S3 มีราคาเพียง $0.03  ต่อ GB ต่อเดือน

9) Big Data as a Service (BDaaS)

ประเด็นสำคัญหนึ่งในการประมวลผลข้อมูล Big Data คือการลงทุนจัดหาเครื่องคอมพิวเตอร์ Server จำนวนมากเข้าใช้งาน ซึ่งต้องลงทุนสูงและอาจไม่คุ้มค่า จึงเริ่มมีการให้บริการการประมวลผลบน Cloud Service มากขึ้น ตัวอย่างเช่นการใช้ Hadoop บน Cloud ที่ในปัจจุบันมีผู้ให้บริการรายหลายอาทิเช่น Amazon EMR, Microsoft Azure HDInsight, IBM Bluemix และ Qubole นอกจากนี้ก็อาจจะมีบริการ  Analytics as a Service อย่างเช่น Jaspersoft BI หรือ Birst

10)  จะมีการยอมรับระบบความปลอดภัยบน Cloud มากขึ้น (Cloud security is more acceptable)

แม้ผู้คนจำนวนมากจะมีความกังวลเรื่องระบบความปลอดภัยบน Cloud ซึ่งข้อมูลสำรวจจาก Rightscale หรือของ IMC Institute ก็พบว่าความเห็นที่สอดคล้องกันว่า องค์กรส่วนใหญ่ยังคงกังวลเรื่องความปลอดภัย แต่ถ้าเป็นองค์กรที่ใช้บริการ Cloud แล้วการสำรวจพบว่าจะกังวลน้อยลง และในปัจจุบันผู้ให้บริการส่วนใหญ่ก็มีระบบความปลอดภัยที่ดีขึ้น และมีมาตรฐานหลายด้านเกี่ยวกับ Cloud Security ที่ออกมาใหญ่

ธนชาติ นุ่มนนท์

IMC Institute

เมื่อ Amazon Web Services (AWS) เปลี่ยนโลกไอที

สัปดาห์ที่ผ่านมาผมไปนั่งเรียนหนังสือสองหลักสูตรของ Amazon Web Services คือ AWS Essentials และ Architecturing on AWS รวมสี่วัน แต่ก็มีเข้าๆออกๆไปประชุมบ้าง ไปบรรยายบ้าง ผู้เรียนโดยมากก็เป็น System Admin จากที่ต่างๆ แถมยังมีต่างชาติมาเรียนอีก 2-3 ท่าน ดูลักษณะผมค่อนข้างจะแปลกแยกกับผู้เรียนท่านอื่นๆ เพราะบางวันต้องผูกไทร์ใส่สูทไปเรียน

Screenshot 2014-11-08 10.43.08

รูปที่ 1 การประมาณการรายได้ของบริษัท Amazon Web Services

AWS เป็นบริษัทลูกของ Amazon เป็นผู้ให้บริการ Cloud ที่เป็น Infrastructure as a Service. (IaaS) ที่มีรายได้ต่อปีหลายพันล้านเหรียญสหรัฐ และเติบโตขึ้นเรื่อยๆ โดยในปี 2013 มีรายได้ประมาณ 3.800 พันล้านเหรียญสหรัฐ โดยมีการคาดการณ์ว่าถ้ารวมมูลค่าการบริการ Cloud ให้กับภายในบริษัทแม่ (Amazon) อาจสูงถึง 19 -30 พันล้านเหรียญสหรัฐ และคาดการณ์ว่ารายได้ในปีนี้จะโตขึ้นเป็น 6.2พันล้านเหรียญสหรัฐดังแสดงในรูปที่  1 แต่เมื่อรายได้เทียบกับบริษัทแม่ Amazon ที่มีสูงถึง 74.4 พันล้านเหรียญสหรัฐแล้วนั้น AWS ถือว่ายังเล็กกว่ามาก ถ้ากล่าวถึงการจัดอันดับผู้ให้บริการ Cloud IaaS ทาง Gartner ได้จัดให้ AWS เป็นผู้ให้บริการที่อยู่ใน Top Quadrant ดังแสดงในรูปที่ 2 นำหน้ารายอื่นๆพอสมควร เพราะมี Service ต่างๆที่หลากหลายกว่า และ มีโครงสร้างพื้นฐานที่ดีมาก

Screenshot 2014-11-08 10.50.17

รูปที่ 2 Magic Quadrant ของ Gartner ด้าน Cloud IaaS

AWS มีจำนวนเครื่อง Server จำนวนมาก ทั้งนี้เคยมีรายงานจาก United Nations เรื่อง Information Economy Report 2013  ประมาณการว่า Amazon น่าจะมี Server ประมาณ 250,000 เครื่องในปี  2012 และเมื่อเร็วๆนี้ก็มีนักวิจัยจาก Accenture คาดการว่า AWS น่าจะมี Server ประมาณ 454,000 เครื่อง จากช้อมูลของ AWS ระบุว่ามี Region ที่ตั้ง Data Center อยู่ 11 แห่งทั่วโลก โดย 4 แห่งอยู่ในสหรัฐอเมริการ ทั้งนี้มีแห่งหนึ่งให้ใช้เฉพาะรัฐบาลอเมริกา มีในยุโรป 2 แห่ง โดยเมื่อเดือนที่แล้วเพิ่งประกาศ Region แห่งใหม่ในประเทศเยอรมัน ในอเมริกาใต้มี 1 แห่งในบราซิล และมีอีก 4 แห่งในเอเซีย-แปซิฟิก ที่รวมทั้งในประเทศจีน ซึ่งกำหนดการใช้งานโดยรัฐบาลจีน  Region ที่ใกล้บ้านเรามากที่สุดคืออยู่ในประเทศสิงคโปร์ AWS กำหนดให้ในแต่ละ Region ต้องมี Availability Zone (AZ) อย่างน้อยสองแห่ง  ซึ่งแต่ละ AZ เป็น Cluster ของ Data Center อยู่กันคนละที่ตั้ง ใช้ Power Supply ต่างกัน การเดินสาย Network ที่ต่างกัน ดังนั้นแม้จะเกิดภัยวิบัติในAZ แห่งหนึ่ง ก็อาจจะไม่กระทบ AZ อีกแห่งหนึ่ง ทำให้ระบบของ AWS มีความเสถียรมากพอควร นอกจากนี้ AWS. ยังมี Edge Location สำหรับที่ช่วยลด  Latency และเพิ่มประสิทธิภาพการเข้าถึงระบบอีก 52 แห่ง

Screenshot 2014-11-08 11.00.32

รูปที่ 3 ตำแหน่งที่ตั้ง Regionและ  Edge Location ของ AWS [ยังไม่รวมที่ประเทศเยอรมัน]

AWS ได้เปลี่ยนแปลงการทำงานของคนไอทีอย่างมากมาย และกำลังทำให้โลกของการพัฒนาระบบไอทีเปลี่ยนไป ถ้าเราแค่ว่าจะหา Server มาใช้งานซักตัว การใช้ผู้ให้บริการ Cloud อย่าง AWS กับผู้ให้บริการรายอื่นๆหรือแค่การทำ Virtualization ย่อมไม่ต่างกันมากนัก บางทีอาจแทบจะไม่ต่างกับแบบ on premise ที่จัดหา Server มาใช้งานเองด้วยซ้ำไป แต่ถ้าคำนึงถึงระบบความปลอดภัย ความเสถียรของระบบ การทำAuto-Scability หรือสถาป้ตยกรรมที่ดีสำหรับระบบ Server แล้วระบบ  Cloud IaaS ของ AWS ต่างกับผู้ให้บริการ Cloud รายเล็กอย่างมาก และยิ่งเห็นความแตกต่างเมื่อผู้ให้บริการ Cloud อย่าง AWS มีระบบ  Portal ที่เป็น self service ที่ช่วยให้เรา config ระบบต่างๆได้เอง โดยไม่ใช่เป็นเพียงผู้ให้บริการ Cloud ที่เพียงจัดหา Server ให้เราใช้แล้วต้องผ่าน Call Center ที่คอยมา config เครื่อง Server ให้เราบางเครื่อง แล้วเราไม่สามารถบริหารจัดการได้เอง

Screenshot 2014-11-08 11.13.56

รูปที่ 4 ตัวอย่างของ  Web Application Hosting Architecture โดยใช้  AWS

การเรียนหลักสูตร  Architecturing on AWS  ทำให้เราสามารถสร้างระบบ Server ที่มีสถาปัตยกรรมขนาดใหญ่ดังตัวอย่างของ Web Application Hosting Architecture ในรูปที่ 4 นี้ได้ ซึ่งถ้าเป็นแต่เดิมผมบอกได้เลยว่าการเรียนเพื่อที่จะสร้างระบบ Server ขนาดใหญ่แบบนี้และต้องมา config ระบบจำนวนมากอย่างนี้ โดยได้ปฎิบัติจริงในห้องเรียนแทบเป็นไปไม่ได้เลย เพราะเราต้องหาระบบ Hardware จำนวนมากมาทดลอง และต้องมาทำงานจริงๆใน Data Center ที่ต้องมีเครื่องนับสิบเครื่อง แต่ AWS ได้เปลี่ยนโลกของไอที ในหลักสูตรสี่วันที่ผมไปเรียนทำให้ผมสามารถสร้างระบบแบบนี้ได้ ข้อสำคัญระบบที่สร้างขึ้นเป็นระบบที่ใช้งานได้จริงๆ

AWS มีบริการสำหรับ  IaaS ที่หลากหลายมาก เพื่อให้เห็นบริการบางอย่างผมขอยกตัวอย่าง บริการที่ใช้ทำ Web Application Hosting Architecture ในรูปที่ 4 มาดังนี้

  • Amazon S3 (Simple Storage Service) เป็น strorage ที่ใช่ในการเก็บข้อมูลขนาดใหญ่ โดยมีค่าใช้จ่ายในการเก็บข้อมูลเพียง  $0.03/GB โดยออกแบบมาให้มี Availability 99.99% สำหรับ Object  ที่เก็บอยู่ และมี 99.999999999% สำหรับ Durability
  • Amazon EC2 (Elastic Compute Cloud) ที่ทำหน้าที่เป็น  Server ซึ่งมีให้เลือกหลายแบบตั้งแต่ขนาดเล็กไปจนเครื่องใหญ่มากๆ ในรูปที่  4 คือเครื่องที่ทำเป็น Web Servers และ App Servers หลายๆเครื่อง
  • Amazon RDS (Relational Database Service) คือเครื่องที่จะทำหน้าที่เป็น Database Server ที่ทาง AWS  เตรียมมาให้เลือกได้หลาย Database เช่น  Microsoft SQL, Oracle DB, PostgreSQL หรือ MySQL
  • Amazon VPC (Virtual Private Cloud) คือบริการที่จะช่วยทำให้เราสร้างระบบบน AWS ใน Virtual Network   ที่เรากำหนดให้มีความปลอดภัยดีขึ้น
  • Amazon IAM (Identity and Access Management ) คือระบบที่จะช่วยในการทำ Authentication และทำ Access Control ผู้เข้าถึงระบบ Server ต่างๆ
  • Amazon ELB (Elastic Load Balance) คือตัว  Load Balance ที่จะช่วยกระจาย Traffic ให้กับ  Server  ต่างๆ
  • Autoscaling  คือระบบที่จะช่วยเพิ่มหรือลดจำนวน EC2  ให้เราอัตโนมัติ ตามเกณฑ์ที่เราตั้งไว้
  • Amazon Route 53 คือ ตัวที่จะช่วยเป็น Domain Name System (DNS) ในการที่ route taffic มายังระบบของเรา
  • Amazon CloudFront คือระบบที่ช่วยทำหน้าที่เป็น Content Delivery Network

นอกจากบริการที่กล่าวถึงข้างต้นแล้ว  AWS ยังมีบริการอื่นๆอีกมาที่ช่วยทำให้เราสร้างระบบไอทีขนาดใหญ่และมีเสถียรภาพได้ ดีกว่าที่จะต้องมาจัดหาเครื่อง  Hardware และลงทุน Infrastructure อื่นๆเอง พอเห็นอย่างนี้แล้ว ปีหน้าผมตั้งใจจะให้การอบรมของ IMC Institute ที่เกี่ยวข้องกับการพัฒนา Application ต่างๆรวมถึงการทำ  Big Data มารันบน Infrastructure  จริงๆใหญ่ๆของ AWS ผู้เรียนจะได้เห็นกันไปเลยว่า  Large Scale Application เป็นอย่างไรจากของจริง

สุดท้ายนี้ต้องขอบคุณทาง  AWS โดยเฉพาะคุณชลตะวัน สวัสดีที่ให้โอกาสทีมของ IMC Institute เข้าเรียนหลักสูตรนี้

ธนชาติ นุ่มนนท์

IMC Institute

API Economy: สร้างเศรษฐกิจดิจิทัลด้วย APIs ตอนที่ 2

IT Trend2020

เมื่อวันก่อนผมเขียนบทความเรืีอง API Econmy ตอนแรก เพื่อชี้ให้เห็นถึงตัวอย่างของบริษัทในต่างประเทศที่ใข้ API ในการเปลี่ยนโมเดลธุรกิจและสร้างนวัตกรรมใหม่ๆ วันนี้เลยขอมาเขียนต่อเพื่อให้เห็นถึงความจำเป็นในการขับเคลื่อนสู่การพัฒนา API รูปแบบของ API ต่างๆ กลยุทธ์การพัฒนา API ขององค์กร และข้อที่ควรคำนึงถึงในการพัฒนา API ขององค์กร

ทำไมต้องพัฒนา API

ในปัจจุบันหลายๆองค์กรก็เริ่มที่จะก้าวเข้าสู่ดิจิทัล มีการพัฒนาระบบไอทีในองค์กร พัฒนาเว็บไซต์ Mobile App แต่สิ่งที่พบก็คือการเปลี่ยนแปลงอย่างรวดเร็วของไอที มีอุปกรณ์ใหม่ๆมากมาย ทำให้การพัฒนาไอทีในองค์กรไม่สามารถตอบสนองความต้องการใหม่ๆได้เพราะจำนวนนักพัฒนาซอฟต์แวร์มีไม่พอ นอกจากนี้การพัฒนาไอทีเองก็ไม่สามารถที่จะทำให้ผู้ใช้ออนไลน์จำนวนมากเข้าถึงระบบเราได้ ลองพิจารณาดูจากรูปที่ 1 จะเห็นว่าถ้าบริษัทต้องทำซอฟต์แวร์เอง สร้างข้อมูลและ Application เอง ก็จะมีผู้เข้าถึงระบบได้เพียงแค่จำนวนหนึ่ง แต่ถ้าเรามีการเปิด Web APIs ให้คนอื่นเข้ามาใช้ได้ จะทำให้เกิดนวัตกรรมใหม่ๆ เช่นเว็บไซต์อื่นๆที่เข้าถึงระบบของเรา Application หรือ Mobile App ที่พัฒนาโดยคนอื่นๆ ทำให้มีผู้เข้าถึงข้อมูลธุรกิจเราได้มากขึ้น ทำให้ธุรกิจโตขึ้นได้มากขึ้นจากนวัตกรรมที่คนอื่นมาช่วยกันพัฒนา

Screenshot 2014-11-04 15.19.33

รูปที่ 1 การเปิด APIs  จะทำให้เราเข้่าถึงผู้คนที่อยู่บนโลกออนไลน์ได้มากขึ้น

เหตุผลหลักๆที่ต้องพัฒนา API มีสองประเด็น

1) การเติบโตของอุปกรณ์โมบายที่มีหลากหลายทั้งในแง่ของ OS และยี่ห้อที่อาจมีขนาดที่แตกต่างกัน และยังมีเรื่องของ Internet  of Things  ที่มีอุปกรณ์ใหม่ๆที่สามารถเชื่อมต่ออินเตอร์เน็ตได้เช่น Smart TV, Smart Watch  ซึ่งในปัจจุบันผู้ใช้อินเตอร์เน็ตอาจเข้าถึงอินเตอร์เน็ตโดยใช้อุปกรณ์เหล่านี้มากกว่าใช้พีซี องค์กรจำเป็นต้องพัฒนาเว็บหรือ Application ให้ใช้กับอุปกรณ์เหล่านี้ ซึ่งการที่จะให้ทีมไอทีในองค์กรมาพัฒนาระบบเองทั้งหมดย่อมเป็นไปได้ยากมาก การเปิด API จะช่วยทำให้มีนักพัฒนาซอฟต์แวร์มาช่วยสร้าง Application ให้กับองค์กรได้มากขึ้น

2) การเชื่อมต่อกับธุรกิจอื่นๆ (B2B Integration) โดยการเปิด APIs เพื่อเปิดโอกาสให้คู่ค้าสามารถเข้าถึงข้อมูลต่างๆของระบบธุรกิจ เป็นการขยายช่องทางธุรกิจและการพัฒนานวัตกรรมใหม่ๆ

ประเภทของ APIs

เราสามารถที่จะแบ่งประเภทของ API ออกมาได้เป็นสี่กลุ่มดังแสดงในรูปที่ 2

Screenshot 2014-11-04 15.38.26

รูปที่ 2 ประเภทของ APIs

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

2) B2B APIs คือ APIs ที่ต้องการเปิดให้กับคู่ค้า (Partner) ในการที่จะให้เข้าถึงระบบหรือข้อมูลของหน่วยงานเรา เพื่อเปิดโอกาสให้นักพัฒนาซอฟต์แวร์ของคู่ค้ามาพัฒนา Application หรือนวัตกรรมต่างๆในการขยายธุรกิจของทั้งหน่วยงานเราและคู่ค้า

3) Open Web APIs คือ APIs ที่เปิดกว้างให้นักพัฒนาซอฟต์แวร์ทั่วไปเข้าไปเรียกใช้ได้ โดยอาจมีโมเดลธุรกิจที่สร้างรายได้ให้กับนักพัฒนาซอฟต์แวร์

4) Product APIs คือ APIs สำหรับผลิตภัณฑ์เช่นซอฟต์แวร์หรือฮาร์ดแวร์ที่ต้องการให้นักพัฒนาซอฟต์แวร์ทั่วไปหรือคู่ค้าสามารถเข้ามาพัฒนาโปรแกรมเิ่มเติมเพื่อใช้ผลิตภัณฑ์เหล่านั้น ทำให้เกิดระบบนิเวศน์(ecosystem) ของผลิตภัณฑ์ ต้วอย่างของ Product APIs มีอาทิเช่น Salesforce APIs หรือ google Glass APIs

โมเดลธุรกิจของการเปิด APIs

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

Screenshot 2014-11-04 16.04.05

รูปที่ 3  โมเดลธุรกิจรูปแบบต่างๆของการเปิด APIs [Source: ProgrammableWeb]

  • นักพัฒนาซอฟต์แวร์ใช้ได้ฟรี: ตัวอย่างเช่น Facebook APIs ที่อนุญาตให้นักพัฒนาซอฟต์แวร์สามารถเรียกใช้งานได้โดยไม่มีค่าใช้จ่าย
  • นักพัฒนาซอฟต์แวร์เป็นผู้จ่าย: ตัวอย่างเช่น AWS APIs ให้นักพัฒนาจ่ายตามบริมาณการใช้งาน หรือ Paypal APIs จะให้นักพัฒนาจ่ายตามจำนวน Transaction
  • นักพัฒนาซอฟต์แวร์เป็นผู้ได้รายได้: ตัวอย่างเช่น Google AdSense APIs จะจ่ายเงินให้นักพัฒนาตามจำนวนครั้งที่ถูกเรียก หรือ Amazon Product Advertise APIs จะแบ่งรายได้จากการโฆษณาให้กับนักพัฒนา
  • นักพัฒนาซอฟต์แวร์ได้รายได้ทางอ้อม: ตัวอย่างเช่นการเรียก content ของ eBay ทำให้นักพัฒนาซอฟต์แวร์ได้รายได้จากการการพัฒนา Application ของตัวเองหรือการใช้ salesforce APIs ทำให้นักพัฒนาสามารถพัฒนา Application ที่ต่อยอดจาก SalesForce.com แลัวมาขายผ่าน Salesforce Marketplace ได้

เครื่องมือการบริหาร APIs

การสร้าง APIs เพื่อเปิดให้กับคนอื่นๆใช้จริงๆแล้วไม่ได้มีความซับซ้อนมาก แต่เรื่องที่ยากคือการบริหาร APIs  การควบคุมการเข้าถึง การบริหารเวอร์ชั่นของ APIs การควบคุม  Life Cycle  การจัดการเรื่องเอกสาร โดยมากเราจะใช้เครื่องมือในการบริหาร APIs ตัวอย่างของเครื่องมือเหล่านี้คือ 3Scale, APIgee  ดังนั้นการพัฒนา APIs จำเป็นต้องเข้าใจการใช้เครื่องมือต่างๆ และการบริหารจัดการ  APIs  มิใช่แค่การสร้าง APIs ที่อาจเป็นเพียงการสร้าง Web Services

Screenshot 2014-11-04 16.11.44

รูปที่ 4  ตัวอย่างของเครื่องมือการบริหาร APIs

ธนชาติ นุ่มนนท์

IMC Institute