- คอร์สเรียนฟรี
- 1. Intro to Programming - บทนำของสายอาชีพพัฒนาโปรแกรม
- 1. ก้าวแรกสู่การเป็นโปรแกรมเมอร์ ต้องเตรียมตัวอะไรบ้าง?
1. ก้าวแรกสู่การเป็นโปรแกรมเมอร์ ต้องเตรียมตัวอะไรบ้าง?
- ความยาวของวิดีโอ: 32 นาที 50 วินาที
ทำความรู้จักกับเทคโนโลยี และคอมพิวเตอร์ ที่สำคัญต่อการดำรงชีวิตของเราในรูปแบบใด และหน้าที่บทบาทของโปรแกรมเมอร์
สิ่งที่จะได้เรียนรู้ในบทนี้:
- เรียนรู้และเข้าใจถึงเหตุผลการเป็นโปรแกรมเมอร์มากขึ้น
- ทำความรู้จักกับหน้าที่และบทบาทของโปรแกรมเมอร์
- สำรวจทักษะที่จำเป็นสำหรับการเป็นโปรแกรมเมอร์
- แนวทางการเลือกซื้ออุปกรณ์สำหรับการพัฒนาโปรแกรม
- รู้จักกับแหล่งเรียนรู้ที่มี เพื่อการพัฒนาโปรแกรม
เราจะเป็นโปรแกรมเมอร์เพื่ออะไร?
จากหัวข้อนี้จะ สำคัญอย่างมาก เพราะเราอยากมาเป็นโปรแกรมเมอร์ก็ต้องมีเหตุผลดีๆ ที่จะ ช่วยกระตุ้นให้เราอยากเรียนรู้ และ มีความสนุกสนาน ในการที่จะเป็นโปรแกรมเมอร์ด้วย
โดยเราอาจจะแบ่งเหตุผลดังนี้
- คิดว่าสามารถสร้างรายได้
- คิดว่าเป็นเรื่องสนุก
- คิดว่าเราเหมาะสมกับทักษะทางนี้
ตรงนี้เราอาจจะมีเหตุผลเพียงเรื่องเดียว หรือทั้งหมดก็ได้ เพราะต่างก็เป็นส่วนสำคัญจุดเริ่มต้นแรกๆ ที่จะทำให้เรา อยากเป็นโปรแกรมเมอร์ได้
โปรแกรมเมอร์เรียกอย่างไรได้บ้าง
ในทางเทคนิคแล้ว แต่ละคำอาจจะมีบทบาทต่างกันเล็กน้อย แต่ถือว่า สามารถเรียกทดแทนด้วยกันได้ทั้งหมด เช่น
- Coder
- Developer
- Programmer หรือ Computer Programmer
- Software Engineer หรือ Software Developer
ผมส่วนใหญ่จะเรียกว่า โปรแกรมเมอร์ หรือ นักพัฒนาโปรแกรม
โปรแกรมเมอร์ทำอะไรบ้าง?
- หน้าที่หลักๆคือการสร้างและพัฒนา ซอฟต์แวร์ (Software)
- จำเป็นต้องมีการศึกษาและติดตามข่าวสารด้าน เทคโนโลยีคอมพิวเตอร์ (Computer Technology)
- อาจจะใช้ความสามารถหลากหลายทางคอมพิวเตอร์ โดยเฉพาะส่วนของ ภาษาโปรแกรม (Programming Language)
- จากนั้นนำความรู้ที่มีทั้งหมด ประยุกต์ใช้งาน ให้เกิดประโยชน์กับสิ่งต่างๆ หรือใช้ร่วมกับอาชีพอื่นๆ
ทำในสิ่งที่เราชอบและถนัด
- การเลือกทำใน สิ่งที่เราชอบและถนัด จะช่วยให้เรามีความสามารถด้านนั้นๆได้ดี
- ดังนั้นเราจึง ควรมีความชอบหรือถนัดในสิ่งที่เกี่ยวกับคอมพิวเตอร์ด้วย เช่น
- ชอบการเล่นวิดีโอเกม
- ชอบค้นดูและใช้งานเว็บต่างๆ
- ชอบดูสื่อผ่านออนไลน์ และใช้เครื่องมือต่างๆให้เกิดประโยชน์ในโลกออนไลน์
- เข้าใจวิธีการนำแอปมือถือ หรือโปรแกรมบนคอม มาใช้งานให้เกิดประโยชน์ต่างๆ
- สามารถศึกษาและใช้งานโปรแกรมซับซ้อนในระดับหนึ่งได้ และไม่รู้สึกยากหรือน่าเบื่อ อย่างการใช้โปรแกรมทำเอกสารและกราฟฟิคแบบง่าย เช่น Microsoft 365 (ชื่อเก่า Microsoft Office) หรือสมัยใหม่แล้วก็จะใช้ Canva มากขึ้น
- อย่างไรก็ตาม บางคนสิ่งที่ชอบก็คือ “เงิน” ขอแค่ทำรายได้ให้เยอะเข้าไว้ ไม่ว่าอาชีพไหนก็อยากทำ ดังนั้นเราก็อาจจะนำเหตุผลนี้ในการเป็นโปรแกรมเมอร์ได้เช่นกัน เพราะสายงานนี้มีรายได้สูงจริง (ตามความสามารถ)
โปรแกรมเมอร์ต้องมีทักษะอะไรบ้าง
จะไล่ลำดับตามความสำคัญ โดยข้อแรกคือสำคัญที่สุด
ภาษาอังกฤษ
- การอ่าน สำคัญที่สุด เพราะการเรียนรู้ผ่านออนไลน์
- การเขียน มีความสำคัญในด้านการเขียนโค้ด เพราะจะเป็นภาษาอังกฤษทั้งหมด แต่ก็ไม่จำเป็นต้องเขียนบทความภาษาอังกฤษได้ แค่รู้คำศัพท์พื้นฐานทั่วไป
- บางครั้งอาจจะเริ่มสำคัญต่อการพูดคุยกับชาวต่างชาติ เช่น สอบถาม และแจ้งปัญหาต่างๆ แต่เราสามารถใช้ Generative AI ในยุคนี้ในการช่วยเขียน โดยแปลจากไทยเป็นอังกฤษ และสั่ง AI ให้ใช้คำพูดที่เหมาะสมร่วมกับตรวจสอบแกรมม่าได้
- การฟัง มีความสำคัญเฉพาะการเรียนรู้ผ่านคอร์สเรียนออนไลน์แบบวิดีโอ
- อย่างไรก็ตาม หลาย Platform ที่ไว้เรียนออนไลน์ก็มักจะมี Closed Caption (Subtitle) ให้ ที่นำคำพูดภาษาอังกฤษขึ้นแสดงข้อความให้อ่านพร้อมกันได้ ทำให้เราสามารถที่จะใช้ทักษะการอ่านอย่างเดียวได้ เพราะทักษะการฟังค่อนข้างยาก
- หาก Platform ออนไลน์ที่เราเรียนไม่มีระบบนี้ สามารถเปิด Live Caption ได้
- การพูด ในกรณีปกติจะไม่มีความจำเป็นใดๆ นอกจากเราจะทำงานกับชาวต่างชาติ
- เนื่องจากข้อมูลในออนไลน์ ส่วนมากจะเป็นภาษาอังกฤษประมาณ 50% ภาษาไทยจะมีเพียง 0.5% เท่านั้น ดังนั้นเราจะสามารถเข้าถึงเนื้อหาภาษาอังกฤษได้มากกว่าและหลากหลายกว่า จึงจำเป็นต่อการเรียนรู้สูงอย่างมาก
- ไม่ต้องอายที่จะใช้ Google Translate หรือเครื่องมือแปลภาษาอื่นๆ เพราะใครๆก็ใช้กันทั้งนั้น
เทคโนโลยีคอมพิวเตอร์
- ควรเข้าใจคำศัพท์พื้นฐานหลายอย่าง ส่วนนี้เราสามารถเรียนรู้ผ่าน Wikipedia ได้ ดังลิงก์ที่คอร์สเรียนนี้ได้
- มีความเข้าใจการใช้งานของ อุปกรณ์คอมพิวเตอร์ ต่างๆ
- ทักษะการเขียนโค้ด ออกแบบโปรแกรม การนำโปรแกรมไปใช้งานด้วยวิธีต่างๆ
คณิตศาสตร์
- ขึ้นอยู่กับประเภทและความซับซ้อนของโปรแกรม หากมีความซับซ้อนสูงอาจจะมีความจำเป็นต้องเก่งคณิตศาสตร์อย่างมาก
- โปรแกรมที่เกี่ยวข้องกับข้อมูลสถิติ
- การสร้างกราฟฟิค และพัฒนาเกมบนคอมพิวเตอร์
- Cryptography
- Data Science
- Machine Learning (ML)
- Artificial Intelligence (AI)
- งานวิจัยอื่นๆ
- สำหรับโปรแกรมประเภทอื่นๆ อาจจะไม่ได้ต้องการคณิตศาสตร์ที่ซับซ้อนอะไร เพราะกระบวนการหลายอย่างสามารถเลือกใช้สิ่งที่มีอยู่แล้ว จากการเลือกใช้ Library, Third-party ต่างๆ เช่น
- สร้างกราฟทางคณิตศาสตร์ด้วย Apache ECharts
- การเข้ารหัสความปลอดภัยทางคณิตศาสตร์ด้วยการใช้ bcrypt
- การสร้างแอนิเมชั่นด้วย GSAP
โปรแกรมเมอร์จำเป็นต้องมีอุปกรณ์อะไรบ้าง
คอมพิวเตอร์
- อาจจะใช้แค่ Smartphone หรือ Tablet ก็ได้ เพราะทั้งสองตัวนี้จัดว่าเป็น คอมพิวเตอร์
- ควรเป็น Desktop หรือ Notebook (Laptop) เพราะ สามารถต่ออุปกรณ์ที่ซับซ้อนได้มากกว่า เนื่องจากพัฒนาโปรแกรมมักจะเป็นงานที่ต้องเชื่อมต่ออุปกรณ์เสริม เช่น คีย์บอร์ด หรือต่อหลายจอ
- สเปคสูงก็ยิ่งดีเป็นธรรมดา แต่ตามหลักแล้วหากเราต้องการพัฒนาโปรแกรมเริ่มต้นพื้นฐาน เราสามารถเลือกราคาถูกที่สุดก็ทำงานได้
- แต่ละสายงานพัฒนาโปรแกรม จะต้องการประสิทธิภาพต่ำและสูงต่างกันไป ควรศึกษาก่อนเลือกซื้อ เช่น
- การพัฒนาเว็บ, โปรแกรมประยุกต์ทั่วไป, พัฒนาระบบอย่างง่าย ใช้สเปคคอมทั่วไป
- การพัฒนาเกม (ขึ้นอยู่กับประเภทเกมด้วย), AI, ML จะ ใช้สเปคคอมสูงอย่างมาก
- บางครั้งถ้าเรามีสเปคคอมไม่ถึง เราสามารถใช้บริการเช่าคอมพิวเตอร์ผ่านออนไลน์ เพื่อรีโมตการใช้งานระหว่างคอมช้าๆของเรา ไปใช้คอมแรงๆแบบชั่วคราวได้เช่นกัน โดยมีค่าใช้จ่ายตามจำนวนเวลาใช้งาน
อินเทอร์เน็ต
- ไม่จำเป็นต้องมีความเร็วสูง แต่ช้าเกินไปก็อาจจะทำให้ทำงานช้าลงได้เช่นกัน
- ส่วนมากใช้เพื่อการศึกษาออนไลน์ ค้นหาวิธีแก้ไขปัญหาโค้ดที่เราเจอ และการดาวน์โหลดโปรแกรมที่จำเป็น รวมทั้งบางงานก็ต้องการเชื่อมต่อออนไลน์ตลอดเวลา
วิธีการเริ่มต้นเป็นโปรแกรมเมอร์
โดยทั่วไปเราสามารถเรียนรู้การพัฒนาโปรแกรมได้หลายที่ เช่น
- การค้นหาข้อมูลและศึกษาผ่านเว็บออนไลน์ เช่น
- YouTube
- Wikipedia (ลองเริ่มจากหน้า Computer และค่อยๆศึกษาตามหัวข้อที่สนใจต่อจากลิงก์ในเนื้อหา)
- GitHub (โดยเฉพาะในส่วนของ Awesome)
- freeCodeCamp
- Codecademy
- CHULA MOOC
- และแน่นอน เว็บนครโค้ด ของเรา
- หนังสือสอนการพัฒนาโปรแกรมต่างๆ ทั้งแบบ E-book หรือร้านหนังสือในประเทศไทย
- การเข้าเรียน Bootcamp ที่เปิดในประเทศไทย
- การเรียนระดับมหาวิทยาลัย ในคณะและสาขาที่เกี่ยวข้อง เช่น
- วิศวกรรมคอมพิวเตอร์ (วิศวกรรมซอฟต์แวร์)
- วิทยาการคอมพิวเตอร์ (วิทยาศาสตร์คอมพิวเตอร์)
บทสรุป
ไม่ว่าเราจะอยากเป็น โปรแกรมเมอร์ หรืออะไรก็ตาม ก็ไม่ใช่เรื่องยากมากเพราะเรามีข้อมูลในอินเทอร์เน็ต ที่มีประโยชน์ในสายอาชีพต่างๆมากมาย จะเป็นที่ตัวเราเองจะต้องกระตือรือร้นในการเรียนรู้เรื่องต่างๆ และค้นหาตัวเองว่าเหมาะกับสิ่งนั้นหรือไม่ เพราะแต่ละคนก็จะมีสิ่งที่ตัวเองถนัด หรือมีสิ่งที่ชอบทำต่างกันไป
- Tags:
- programmer
- getting-started
- first-step
- โปรแกรมเมอร์
- ก้าวแรก
- เตรียมตัว
- เริ่มต้น
- การเป็นโปรแกรมเมอร์
- วิธีเป็นโปรแกรมเมอร์
- เรียนโปรแกรมมิ่ง
- ทักษะโปรแกรมเมอร์
- เริ่มเขียนโค้ด
- เตรียมตัวเป็นโปรแกรมเมอร์
- programming
- coding
- become-a-programmer
- programmer-skills
- learn-to-code
- beginner-programmer