การศึกษา 6 คอร์สสอน Serverless Computing ออนไลน์เพื่อสร้าง apps ขั้นเทพ

6 คอร์สสอน Serverless Computing ออนไลน์เพื่อสร้าง apps ขั้นเทพ

Serverless Computing คือการที่ผู้ให้บริการ Cloud Server รับผิดชอบหน้าที่ทั้งหมดในส่วนของ Cloud Infrastructure หรือ Server ทำให้นักพัฒนาไม่จำเป็นต้องกังวลในส่วนของหลังบ้านเลยแม้แต่น้อย

อีกจุดเด่นของ Serverless Computing ก็คือการคิดค่าบริการจะแตกต่างออกไปจากค่าเช่า Server หรือ Hosting ตามปกติ กล่าวคือค่าใช้จ่ายจะถูกคิดตามจำนวน bandwidth ที่คุณใช้งานในแต่ละเดือน หรือว่าจำนวนทรัพยากรที่คุณใช้ไปเท่านั้น โดยจะไม่มีการจอง Bandwidth ไว้ล่วงหน้าแต่อย่างใด

ข้อดีของจุดเด่นนี้คือจะทำให้นักพัฒนาสามารถ scale up หรือ scale down ได้อย่างอิสระ โดยที่ไม่มีความกังวลว่าจ่ายค่า server แล้วเงินจะสูญไปโดยเปล่าประโยชน์ เพราะค่าใช้จ่ายขึ้นอยู่กับจำนวนทรัพยากรที่คุณใช้จริงนั่นเองครับ

สรุปแล้วเราจะเห็นชัดเจนว่า Serverless ไม่ได้แปลว่าไม่มี Server ทุกอย่างยังมีเหมือนเดิมครับ

Image by Bethany Drouin from Pixabay

ขณะที่ Serverless Framework คือ web framework ที่ถูกเขียนขึ้นโดยใช้ Node.js และใช้เพื่อสร้างและ compile รวมไปถึง package โค้ดสำหรับการ deploy แบบ serverless บน Cloud Server

เดิมที Framework ตัวนี้ถูกสร้างขึ้นเพื่อสร้าง applications ต่างๆ บน AWS Lambda ซึ่งเป็น Serverless Computing platform ของ Amazon แต่ในปัจจุบันสามารถใช้กับผู้ให้บริการอื่นๆ ด้วย ไม่ว่าจะเป็น Microsoft Azure หรือ Google Cloud และอื่นๆ อีกมากมายครับ

การเรียนรู้การใช้งาน Serverless Framework/Computing เป็นทางเลือกที่น่าสนใจสำหรับนักพัฒนายุคใหม่ เพื่อตอบรับความต้องการของลูกค้าที่อาจจะต้องการความยืดหยุ่นที่เพิ่มมากขึ้น และประโยชน์อื่นๆ ด้วยเช่นกัน

ดังนั้นในโพสนี้ ผมจะมาแนะนำคอร์สสอน Serverless Computing/Framework ออนไลน์ที่น่าสนใจ เราไปดูกันดีกว่ามีคอร์สไหนบ้าง

ข้อควรทราบ:

  • ราคาและเงื่อนไขต่างๆ ในคอร์สอาจจะเปลี่ยนแปลงไปได้ โปรดตรวจสอบอีกครั้งหนึ่งก่อนซื้อเพื่อความชัดเจนครับ
  • แต่ละคอร์สจะมีสิ่งที่ควรเรียนมาก่อนที่แตกต่างกัน ในส่วนนี้ผมจะระบุไว้อย่างละเอียดในแต่ละคอร์สครับ

แนะนำแพลตฟอร์ม

คอร์สส่วนใหญ่ที่ผมจะแนะนำล้วนแต่อยู่ใน Udemy และ Coursera ถ้าใครไม่รู้จักสามารถไปอ่านได้ที่บทความที่อธิบายถึงแพลตฟอร์มเรียนออนไลน์ที่ผมเขียนขึ้นครับ ซึ่งจะอธิบายข้อมูลทุกอย่างที่คุณต้องทราบในการเรียนกับแพลตฟอร์มเหล่านี้

สำหรับทุกคอร์สที่ผมจะแนะนำจะมีแค่ Provider อย่าง AWS เท่านั้นครับ ส่วนหนึ่งเพราะผมยังไม่เจอคอร์สสอนการใช้ Provider อื่นที่ดีพอ แต่ถ้ามีเมื่อไร ผมจะอัพเดตให้ภายหลังครับ

Udemy

คอร์สที่ 1-5 อยู่ในแพลตฟอร์มของ Udemy

Udemy มีการลดราคากว่า 90% ที่ทำให้คอร์สเหลือเพียง 330-500 บาท และมีบ่อยแทบทุกสัปดาห์

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

1. AWS Serverless APIs & Apps – A Complete Introduction

คอร์สสอน Serverless Computing โดยใช้ AWS ของ Maximilian Schwarzmüller หนึ่งในครูผู้สอนที่ได้รับความนิยมสูงสุดใน Udemy

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

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

สิ่งที่คุณจะได้เรียนในคอร์สนี้คือ

  • แนะนำพื้นฐานของ AWS และ Serverless Services
  • การสร้าง REST API โดยใช้ API Gateway และ AWS Lambda อย่างละเอียดทุกขั้นตอน
  • การใช้ DynamoDB ในการเก็บข้อมูล (Data Storage)
  • การทำ User Authentication โดยใช้ Cognito และ API Gateway Authorizers
  • การ Host ตัว SPA (Single Page Application) แบบ Serverless
  • อธิบายการใช้ Serverless Framework อย่างเช่นการทำให้ Node/Express app ของคุณเป็นแบบ Serverless หรือการดูแลเรื่องความปลอดภัยของ Serverless app
  • และอื่นๆ อีกมากมาย

โดยรวมแล้วคุณจะได้เรียนเนื้อหากว่า 7.5 ชั่วโมงทางวีดิโอ ซึ่งถือว่ากระชับกว่าคอร์สอื่น เหมาะกับคนที่ไม่อยากเรียนอะไรที่ละเอียดมากเกินไป

ในการเรียนคุณควรจะต้องมีพื้นฐานของ API และ SPA มาก่อนที่จะเรียนคอร์สนี้ครับ แต่ไม่จำเป็นต้องมีความรู้เกี่ยวกับ AWS มาก่อนแต่อย่างใด

สำหรับเรื่องเสียงในคอร์สถือว่าดีเยี่ยม สำเนียงของครูก็ฟังง่ายครับ จากที่ลองตรวจสอบดูพบว่าไม่มีปัญหาแต่อย่างใด

คอร์สนี้เก็บคะแนนรีวิวไป 4.7/5.0 จากนักเรียนกว่า 56,600 คน

2. AWS Lambda and the Serverless Framework – Hands On Learning!

คอร์สสอน Serverless Framework และ AWS Lambda ของ Stephane Maarek นักพัฒนาซอฟต์แวร์ที่เป็น AWS Hero (ผู้ที่ได้รับการยอมรับว่าเป็นผู้เชี่ยวชาญจากทาง AWS) รวมไปถึง AWS Certified Solutions Architect/DevOps Professional (ควบสอง) อีกด้วย

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

ภายในคอร์สเขาจะสอนสิ่งต่อไปนี้ครับ

  • แนะนำ AWS Lambda และ Serverless (การ Deploy Function ฯลฯ)
  • การสร้างและ deploy REST API
  • แนะนำฟีเจอร์และฟังก์ชันต่างๆ ของ AWS Lambda อย่างเช่น Load Balancer, Event Source Mapping, Asynchronous Invocations
  • การใช้ AWS API Gateway (Stages and Deployment, Caching, Monitoring, Authentication ฯลฯ)
  • การใช้ AWS Cognito (User Pools vs Identity Pools)
  • และอื่นๆ อีกมากมาย

ภายในคอร์สจะมีเนื้อหาประมาณ 7 ชั่วโมง อย่างไรก็ดีเนื้อหาในส่วนของ AWS Lambda, API Gateway และ Cognito จะซ้ำซ้อนกับคอร์ส AWS Certified Developer ของผู้สอนคนเดียวกัน

ผมจึงแนะนำว่าถ้าคุณลงคอร์สนั้นไปแล้ว คอร์สอื่นน่าจะเป็นทางเลือกที่ดีกว่าคอร์สนี้ แต่ถ้าไม่เคยลง การลงคอร์สนี้ก็เป็นทางเลือกที่ดีเยี่ยมครับ

ก่อนที่จะเรียนคุณควรจะมีความรู้ Python หรือ Node.js (อย่างใดอย่างหนึ่ง), การใช้ Command Line รวมไปถึง AWS Cloud ด้วยครับ

คอร์สนี้ได้คะแนนรีวิวสูงไม่แพ้คอร์สแรก โดยได้ไป 4.6/5.0 จากนักเรียนกว่า 29,500 คน

3. AWS Lambda & Serverless Architecture Bootcamp (Build 5 Apps)

คอร์สนี้จะเหมาะกับใครที่อยากเรียน Serverless Computing แบบละเอียดมากกว่า 2 คอร์สด้านบน ตัวคอร์สสอนโดย Riyaz Sayyad นักพัฒนาประสบการณ์เกือบ 20 ปีที่เป็น AWS Certified Database Specialist ครับ

ภายในเนื้อหากว่า 25.5 ชั่วโมง คุณจะได้เรียนการใช้ Serverless Architecture อย่างละเอียดด้วยการสร้าง Serverless Apps ถึง 5 ตัวด้วยกัน การเรียนจะผสมผสานไประหว่างภาคทฤษฎีและปฏิบัติครับ

สิ่งที่ครูของคุณจะสอนมีดังต่อไปนี้

  • พื้นฐานและโครงสร้างของ Serverless Computing ใน AWS รวมไปถึงประโยชน์และการใช้งานในแง่มุมต่างๆ
  • การใช้งาน AWS Lambda และ Amazon API Gateway
  • วิธีการใช้ DynamoDB อย่างละเอียด
  • เจาะลึกในส่วนของ AWS Step Functions (function orchestrator ของ AWS Lambda Functions)
  • การใช้ AWS SAM ในการเพิ่มความเร็วของ Serverless Development
  • การใช้ Serverless Framework ในการช่วยในการพัฒนาให้รวดเร็วและมีประสิทธิภาพมากขึ้น
  • การใช้เครื่งอมือ AWS CI/CD ในการ Deploy แบบอัตโนมัติ
  • อธิบายเพิ่มเติมเกี่ยวกับ AWS Serverless Architecture
  • ปิดท้ายคอร์สด้วยการทำโปรเจคอย่างเช่นการสร้าง Serverless REST API โดยใช้ Serverless Framework, สร้าง Serverless Web App โดยใช้ S3 และ CloudFront, สร้าง IoT Button App โดยใช้ AWS Lambda
  • และอื่นๆ อีกมากมาย

คอร์สนี้ถือว่าละเอียดกว่าคอร์สอื่นอย่างชัดเจน เพราะจะแนะนำการใช้เครื่องมืออื่นๆ ในการสร้าง Serverless App ด้วยนอกเหนือจาก AWS Lambda และ API Gateway

ในเรื่องทรัพยากรที่คอร์สนี้ให้ ผมก็ยังไม่เห็นคอร์สไหนเหนือกว่าเช่นเดียวกันครับ ดังนั้นถ้าคุณชอบเรื่องความละเอียด คอร์สนี้น่าจะเป็นตัวเลือกอันดับ 1 ของคุณเลยครับ ส่วนสิ่งที่ควรเรียนมาก่อนก็มีแค่ JavaScript เท่านั้นเอง

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

คะแนนรีวิวคอร์สนี้อยู่ที่ 4.5/5.0 จากนักเรียนกว่า 18,700 คนครับ

4. Go Serverless with AWS Lambda and Azure Functions

คอร์สนี้เป็นคอร์สเดียวที่สอน Serverless Computing ที่ใช้ Azure Functions คู่กับ AWS Lambda ซึ่งจะช่วยเพิ่มตัวเลือกให้กับคุณอย่างมากในการสร้าง app

ตัวคอร์สจัดทำโดย Ranga Karanam และทีมงานของ in28Minutes ที่มีความชำนาญในการใช้งาน Cloud Infrastructure และ DevOps (Docker และ Kubernetes) ครับ

ภายในคอร์ส คุณจะได้เรียนสิ่งต่อไปนี้

เนื้อหาในส่วนของ AWS

  • ปูพื้นฐาน AWS, Serverless และ AWS Lambda
  • เริ่มต้นการใช้งาน AWS API Gateway และ Lambda Functions
  • เรียนรู้คำแนะนำพิเศษในการจัดการค่าใช้จ่ายของ AWS
  • การสร้าง REST API โดยใช้ AWS Lambda และ API Gateway
  • ใช้ AWS SAM ในการสร้าง Serverless Apps
  • วิธีการใช้ Lambda Function และ Serverless Framework ในการสร้าง Serverless Apps

เนื้อหาในส่วนของ Azure Functions

  • ปูพื้นฐานของการสร้าง Serverless Apps ใน Azure Functions
  • การสร้าง Azure Functions ใน VS Code
  • เชื่อม Azure Functions เข้ากับ MongoDB และตัวอย่าง Front End ที่สร้างขึ้น (ใช้ Angular)
  • การ Deploy App ไปยัง Azure
  • การจัดการ Azure API
  • การทำ Authentication โดยใช้ Azure Active Directory B2C

รวมเนื้อหาของทั้งสองส่วนจะประกอบด้วย 12 ชั่วโมง ซึ่งถือว่าน่าสนใจมากสำหรับใครที่อาจจะคุ้นเคยกับ Azure มากกว่า AWSครับ ในการเรียนคอร์สนี้ไม่จำเป็นต้องมีพื้นฐานใดๆ มาก่อนทั้งสิ้นครับ

สำหรับเรื่องการบรรยาย ผมมองว่าครูผู้สอนพูดได้ชัดดีครับ สำเนียงของเขาไม่ได้สวยหรูเหมือนกับเจ้าของภาษา แต่ก็ไม่มีปัญหาในการฟังแต่อย่างใด

คอร์สนี้ได้คะแนนรีวิวไป 4.6/5.0 จากนักเรียนเกือบ 800 คน

5. Serverless React with AWS Amplify – The Complete Guide

คอร์สที่ 5 นี้จะเหมาะสำหรับใครที่คุ้นเคยกับการใช้ React และสนใจที่จะเปลี่ยนให้ React apps ของคุณอยู่ในรูปแบบ Serverless ตัวคอร์สสอนโดย Reed Barger นักพัฒนาที่ชำนาญในเรื่องการพัฒนา app ทั้งในรูปแบบของ Web และ Mobile ครับ

รูปแบบการสอนคือ project-based หรือคุณจะได้เรียนผ่านการสร้าง Marketplace App และ Notetaker App ซึ่งทั้งสอง app จะเป็นแบบ Serverless โดยคุณจะได้ลองทำจริงในทุกขั้นตอนครับ

เรามาดูสิ่งที่เขาจะสอนคุณกันดีกว่าครับ

  • เนื้อหาเบื้องต้นของ AWS Amplify CLI และ Set up ในส่วนของ GraphQL
  • การทำ Authentication โดยใช้ AWS Cognito
  • จัดการในส่วนของ GraphQL (Executing GraphQL Queries, Async GraphQL Operations ฯลฯ)
  • Deploy App โดยใช้ S3 Hosting
  • สร้าง GraphQL API และ Serverless REST API
  • Customize ตัว component ต่างๆ ของ React และ Amplify
  • Integrate React Hooks เข้ากับ Amplify
  • ใช้ AWS Elasticsearch เพื่อให้เพิมประสิทธิภาพของการค้นหาสินค้า
  • เก็บและจัดการข้อมูลโดยใช้ DynamoDB
  • แนะนำ Lambda Functions (ใช้ในการ process คำสั่งซื้อ ฯลฯ)
  • สร้างระบบ Transactional Email โดยใช้ Amazon Simple Email Service
  • และอื่นๆ อีกมากมาย

เนื้อหาแบบวีดิโอทั้งหมดมีกว่า 8.5 ชั่วโมง คอร์สนี้จัดว่าน่าเรียนมากสำหรับ React Developer ทั้งนี้ผู้เรียนควรจะมีความรู้ React มาเท่านั้น อย่างอื่นไม่จำเป็นเลยครับ

จากที่ผมทดสอบพบว่า เสียงและสำเนียงของผู้สอนชัดเจนมากเช่นเดียวกับเจ้าของภาษาทั่วไป ดังนั้นเรียนได้อย่างสบายๆ ครับ

คะแนนรีวิวอยู่ที่ 4.5/5.0 จากนักเรียนที่ลงคอร์สนี้ไปแล้วกว่า 5,100 คน

Coursera

คอร์สที่ 6 อยู่ในแพลตฟอร์มของ Coursera

6. AWS Fundamentals: Building Serverless Applications

คอร์สนี้เป็นคอร์สย่อยใน Coursera ซึ่งเป็นส่วนหนึ่งของหลักสูตร AWS Fundamentals Specialization ผู้จัดทำคอร์สนี้คือทาง AWS เองครับ ดังนั้นในเรื่องคุณภาพนั้นไม่มีข้อสงสัยใดๆ อย่างแน่นอน

ภายในคอร์สย่อยนี้ คุณจะได้เรียนสิ่งต่อไปนี้

  • พื้นฐานของ Serverless Computing
  • การใช้ Amazon Lex ซึ่งเป็น Conversational AI สำหรับ Chatbot
  • ลองสร้าง Serverless Website โดยใช้ Amazon S3
  • การใช้งาน Amazon CloudFront และ Amazon API Gateway
  • การใช้ AWS Lambda ใน Serverless Computing
  • พื้นฐานการใช้ Amazon DynamoDB

สรุปแล้วคุณจะใช้เวลาเรียนคอร์สนี้ให้จบประมาณ 11 ชั่วโมง (แต่เนื้อหาแบบวีดิโอมีแค่ 2 ชั่วโมงเศษเท่านั้น)

ผมมองว่าโดยตัวคอร์สจะช่วยคุณปูพื้นฐานในการสร้าง Serverless Apps โดยใช้ AWS ได้ดีระดับหนึ่ง แต่ความละเอียดนั้นเทียบกับ 5 คอร์สที่ผมแนะนำไปใน Udemy ไม่ได้ครับ

สำหรับค่าเรียนจะอยู่ที่ $39 หรือประมาณ 1,170 บาทต่อเดือน แต่คุณจะสามารถเรียนคอร์สอื่นๆ อีก 3 คอร์สในหลักสูตรได้ด้วยครับ

error: Content is protected !!