Skip to main content

เรียนโปรแกรมมิ่งพื้นฐานฟรี ๆ ที่ Udacity

คนที่สนใจด้านนี้ก็คงอยากรู้ว่าโปรแกรมมิ่งคืออะไร แต่ก็ยังคงติดปัญหาว่าจะไปหาอ่าน หรือเรียนที่ไหนดี? แถมยังไม่อยากเสียเงินไปซื้อหนังสือหรือคอร์สแพง ๆ อีกด้วย

คำถามเหล่านี้ นอกจากผมจะบอกให้ไปหาตาม YouTube ก็จะแนะนำ Udacity ด้วย ซึ่งส่วนตัวผมใช้บ่อยมากตอนช่วงก่อนเข้าปี 1 เพราะมีสอนโปรแกรมมิ่งพื้นฐานหลากหลายด้านมาก และที่สำคัญเลยคือ ฟรี!

Udacity คืออะไร

Udacity เป็นแพลทฟอร์มเรียนออนไลน์ หนึ่งในผู้ก่อต่อคือ Sebastian Thrun ที่ก่อตั้ง Google X ที่เป็นทีมพัฒนารถยนต์ไร้คนขับ ซึ่งเนื่อหาใน Udacity ส่วนใหญ่จะเกี่ยวกับเทคโนโลยี ทั้งโปรแกรมมิ่ง, AI, Data Science หรือ Cloud Computing มีหมด! (ในบทความนี้จะพูดถึงโปรแกรมมิ่งเป็นส่วนใหญ่)

คอร์สตัวอย่างในหมวดโปรแกรมมิ่ง

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

อยากรู้เรื่องโปรแกรมมิ่งเริ่มที่คอร์สไหนดี?

หากไม่รู้เกี่ยวกับโปรแกรมมิ่งเลยพอเห็นคำว่า syntax, front-end, back-end, git พวกนี้คืออะไร เค้าคุยอะไรกันอยู่? แล้วทำไม HTML ถึงไม่ใช่ภาษาโปรแกรมมิ่ง? ถ้ามีคำถามพวกนี้อยู่ในหัว ผมขอแนะนำเป็นคอร์สนี้เลย

What is Programming? — โปรแกรมมิ่งคืออะไร?

คอร์สนี้เป็นคอร์สสั้น ๆ ใช้เวลาประมาณ 1-2 ชั่วโมง ที่จะพูดถึงสิ่งที่ควรรู้เกี่ยวกับโปรแกรมมิ่งให้ฟังคร่าว ๆ แบ่งเป็นห้วข้อย่อยตามนี้

  • Web Development Languages: พูดถึงว่าโปรแกรมมิ่งคืออะไร อะไรคือ front-end, back-end, full-stack? โดยจะใช้ภาษาที่ไว้พัฒนาเว็บไซต์มาประกอบการสอน
  • Programming: จะเป็นการมาดูภาพรวมแบบกว้าง ๆ จะพัฒนาโปรแกรมจะต้องใช้อะไรบ้าง และทำอะไรบ้าง
  • Standards: เป็นเรื่องเกี่ยวกับภาษาโปรแกรมมิ่งต่าง ๆ ว่าแต่ละภาษามีหลักการอะไร แล้วใครเป็นคนกำหนดเรื่องเหล่านั้น
  • Version Control: เป็นการตอบคำถามว่า เมื่อพัฒนาโปรแกรมอะไรแล้วจะเก็บโค้ดไว้ที่ไหน? แล้วทำงานร่วมกันจะจัดการโค้ดยังไง?
  • Disparate Web Terms: หัวข้อนี้จะพูดถึงเรื่องการพัฒนาเว็บไซต์ว่าประกอบไปด้วยอะไรบ้าง เช่น ภาษาที่ใช้, ประเภทของฐานข้อมูลที่ใช้, อะไรคือ API / Request / Debug?

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

เรียนจบแล้วยังไงต่อดี?

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

คอร์สอื่น ๆ ที่น่าสนใจ

คอร์สฟรีบน Udacity มีให้เรียนถึง 188 คอร์ส สามารถเข้าไปดูได้ที่นี่

โดยคอร์สเหล่านี้เป็นตัวที่ผมเคยเรียนตอนช่วงก่อนเข้าปี 1 ถึงช่วงปี 2 เพื่อเป็นพื้นฐานของบางวิชาที่ (กลัวว่าจะ) ไม่เข้าใจ มีอะไรบ้างไปดูกันเลย

Introduction to Python Programming

ที่มา: ภาพปกคอร์ส Introduction to Python Programming

จะเป็นการให้เรารู้จักว่าคอนเซปต์ของภาษาโปรแกรมมิ่งจะมีอะไรบ้าง โดยใช้ภาษา Python เข้ามาช่วยสอน เมื่อเรียนจบแล้วก็จะได้ไอเดียว่า ภาษาโปรแกรมมิ่งทำงานอย่างไร?, อะไรคือตัวแปร?, ประกาศฟังก์ชันทำไม? เพื่อที่เราจะได้เอาความรู้เหล่านี้ไปต่อยอดเพื่อใช้เรียนภาษาอื่นได้

คอร์สนี้เดิมชื่อว่า Programming Foundations with Python เนื้อหาคล้าย ๆ เดิม แต่เปลี่ยนคนสอน (ใครสนใจตัวเก่าให้เข้าไปที่คอร์ส UD036)

Java Programming Basics และ Object Oriented Programming in Java

ที่มา: ภาพปกคอร์ส Object Oriented Programming in Java

สองคอร์สนี้เหมาะกับคนที่เขียนพื้นฐานคล่องแล้ว อยากลองมาดูว่าถ้าเขียนโปรแกรมแบบ Object-Oriented ละเป็นอย่างไร

  • Java Programming Basics: เกี่ยวกับ Syntax ของ Java และอื่น ๆ เช่น IDE ที่ต้องใช้ เพื่อให้คุ้นเคยกับภาษา Java ก่อน
  • Object Oriented Programming in Java: พูดถึงคอนเซปต์ของการเขียนโปรแกรมเชิงวัตถุว่าอะไรคือ class, object, inheritance, polymorphism? กันแน่ โดยจะมีโปรเจคเล็ก ๆ สองตัวให้ลองเอาความรู้ที่เรียนมาประยุกต์ใช้อีกด้วย

Intro to Statistics และ Statistics

ที่มา: ภาพปกคอร์ส Statistics

สองคอร์สนี้เป็นตัวที่ผมเรียนไม่จบ (เพราะยาวพอสมควร) และตอนนั้นที่เรียนเพราะเรียนวิชา Probability and Statistics บางหัวข้อไม่รู้เรื่อง

เนื้อหาในส่วนที่เรียนไปก็ดีพอสมควร เพราะมีสอนทำโจทย์ พร้อมแบบฝึกหัดให้อีกด้วย ซึ่งก็เห็นได้ว่าใน Udacity ก็ยังมีคอร์สที่ไม่ได้เป็นโค้ดดิ้งโดยตรงด้วย

ส่วนที่(ไม่)ฟรีของ Udacity

พูดถึงของฟรีมาเยอะพอแล้ว มาพูดถึงส่วนที่ไม่ฟรีของ Udacity กันบ้าง นั่นก็คือ Nanodegree Program ที่จะเป็นคอร์สที่เจาะจงไปใน Skill ด้านใดด้านหนึ่ง เรียนรู้ผ่านการทำโปรเจค และเมื่อเรียนจบก็จะยังมี Certificate ให้อีกด้วย

Nanodegree Program ที่เกี่ยวข้องกับคอร์ส Object Oriented Programming in Java

ส่วนตัวผมไม่เคยเรียน Nanodegree Program หากข้อมูลส่วนใดผิดต้องขออภัยด้วยครับ

สรุปส่งท้าย

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

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

อ้างอิง