สอบตกวิชาเขียนโปรแกรมก็เป็น Developer ได้
จากนิสิตที่เคยสอบตกวิชาเขียนโปรแกรม (ได้ 13 เต็ม 300!) ไม่เคยมีพื้นฐานหรือความรู้อะไรเกี่ยวกับการเขียนโปรแกรมเลย แต่ในที่สุดกลับเลือกเรียนสาย Computer

Search for a command to run...
จากนิสิตที่เคยสอบตกวิชาเขียนโปรแกรม (ได้ 13 เต็ม 300!) ไม่เคยมีพื้นฐานหรือความรู้อะไรเกี่ยวกับการเขียนโปรแกรมเลย แต่ในที่สุดกลับเลือกเรียนสาย Computer

No comments yet. Be the first to comment.
คนที่ไม่มีหัวด้านศิลปะ ไม่ค่อยมีความคิดสร้างสรรค์ ไม่เก่ง Design จะสามารถเขียน Web ได้ไหม บทความนี้มีคำตอบครับ

สอนติดตั้ง Prettier (Install) และตั้งค่า (Setups) บน Visual Studio Code ทำตามได้ทั้งบน MacOS และ Windows

พาทุกคนติดตั้ง Visual Studio Code สำหรับ Windows และ MacOS

Software developer หรือ นักพัฒนา Software ทำอะไรได้บ้าง เป็นอาชีพที่มีความน่าสนใจขนาดไหน เรามาทำความเข้าใจไปด้วยกันครับ

การติดเกมส์อาจไม่แย่เสมอไป ผมได้เรียนรู้อะไรบ้างจาก 400 ชั่วโมงในเกมส์ Monster Hunter World Iceborne

ผมเคยเป็นคนที่ไม่เคยรู้อะไรเลยเกี่ยวกับการเขียนโปรแกรมจริงๆครับ
อาจจะเป็นเพราะว่าที่โรงเรียนมัธยม วิชาเขียนโปรแกรมเป็นวิชาที่ถูกละเลย
อาจารย์ก็สอนบ้างไม่สอนบ้าง บางครั้งก็ปล่อยเด็กเล่นเกมส์บ้าง และแน่นอนครับผมก็เป็นหนึ่งในเด็กที่เล่นเกมส์ในห้องเรียนเช่นกัน
เอาง่ายๆคือวิชาคอมพิวเตอร์ทำให้ผมเล่นเกมส์เก่งขึ้นโข แต่เขียนโปรแกรมไม่เป็นซักนิด...
เนื่องจากผมมีความถนัดในวิชาคณิตศาสตร์และวิทยาศาสตร์อยู่บ้าง และก็ไม่ได้แน่ใจว่าตัวเองอยากจะเรียนอะไรจริงๆ ผมเลยตัดสินใจเตรียมตัวสอบ คณะวิศวฯ ที่มหาวิทยาลัยจุฬาฯ
ที่ผมเลือกสอบเข้าที่จุฬาฯก็ด้วยเหตุผลง่ายๆครับ ไม่ใช่เพราะว่าผมเก่ง แต่เพราะว่าจุฬาฯเป็นหนึ่งในมหาวิทยาลัยที่มีคณะวิศวฯที่ดีที่สุดในประเทศไทยนั่นเอง (ถ้าอยากรู้เกี่ยวกับการเตรียมตัวสอบเข้า วิศวฯจุฬาฯ ในอนาคตผมอาจจะได้มาเขียนเล่าให้ฟังทีหลังครับ)
หลังผ่านการเตรียมตัวสอบอย่างหนัก ทั้งเรียนพิเศษและอ่านหนังสืออย่างเอาเป็นเอาตาย ก็ทำให้ผมเข้าวิศวฯจุฬาฯได้ในที่สุด ตอนนั้นทั้งกดดันทั้งเครียด จนเป็นโรคกระเพาะเลยหล่ะครับ แต่ว่าผลที่ออกมาก็ถือว่าคุ้มค่าเพราะผมได้เข้าเรียนในมหาวิทยาลัยที่ดีที่สุดแห่งหนึ่งของประเทศไทย ทุกอย่างดูเหมือนว่าจะเป็นดั่งหวัง และดูเหมือนว่าจะจบอย่างสวยงาม แต่ที่ไหนได้ ความจริงชีวิตเพิ่งจะเริ่มต้นต่างหาก...
เมื่อเริ่มเรียนวิศวฯปี 1 (ตอนนั้นปี 2016 - 2017 นี่หล่ะครับ) ผมก็พบว่าการเรียนที่นี่ยากกว่าที่คิดไว้ ถึงแม้ว่าจะตั้งใจอย่างมากจนทำคะแนนได้ดีหลายวิชา แต่แล้วก็ต้องมาเจอของแข็งเข้าจนได้
ใช่แล้วครับ ผมกับการเขียนโปรแกรมได้โคจรมาเจอกันอีก วิชาที่ผมเคยชอบที่สุดสมัยมัธยม (แน่สิเพราะได้นั่งเล่นเกมตลอดเลยไง...)

อาจารย์สอนภาษา Python ซึ่งผมเข้าไปเรียนแบบไม่รู้เรื่องอะไรเลย อาจารย์ก็สอนไป ผมทำได้บ้างไม่ได้บ้าง ไม่ได้สนใจหรือรู้สึกว่าเป็นวิชาที่สนุกแต่อย่างใด
แต่ทว่าวิชานี้ไม่ได้ให้คะแนนกันง่ายๆหน่ะสิครับ...
การให้คะแนนมาจากการสอบทั้งหมด 100%! และเป็นการสอบโดยต้องเขียนโปรแกรมจริงกับคอมพิวเตอร์ทั้งหมด!
โดยการสอบแบ่งออกเป็น 4 ครั้งให้คะแนนครั้งละ 25% ของเกรด
ถามว่าผมกลัวมั้ยกับวิชานี้...
กลัวสิครับ! กลัวมากๆด้วย!
ผมพยายามเตรียมตัวสอบเท่าที่ทำได้ โดยที่ตอนแรกกก็ไม่ได้รู้วิธีหรอกว่าการเตรียมตัวสอบประเภทนี้ต้องทำยังไงบ้าง ผมพยายามอ่าน Sheet ที่อาจารย์สอน และสิ่งที่ตัวเองจดมาโดยที่ไม่ได้เข้าใจ อ่านแล้วอ่านอีก ท่องแล้วท่องอีกจนคิดว่ามั่นใจในการสอบ
และแล้วการสอบครั้งแรกก็มาถึง
เวลาทั้งหมดที่ให้ในการสอบคือ 1 ชั่วโมง กับอีก 30 นาที โดยจะมีโจทย์ทั้งหมด 4 ข้อ ให้คะแนนข้อละ 100 คะแนน แต่อาจารย์อยากได้แค่ 300 คะแนนเท่านั้นในการสอบแต่ละครั้ง (ฟังดูเหมือนง่ายใช่มั้ยหล่ะ ให้ทำได้ตั้ง 400 คะแนน แต่เก็บแค่ 300)
แต่! การเก็บคะแนนจะเลือกเก็บจาก 3 ข้อที่ทำคะแนนได้มากที่สุดจาก 4 ข้อ
ยกตัวอย่างง่ายๆให้ดู สมมติว่าผมทำคะแนนออกมาอย่างนี้
ข้อ 1 ได้ 100/100
ข้อ 2 ได้ 50/100
ข้อ 3 ได้ 20/100
ข้อ 4 ได้ 80/100
ผมจะได้คะแนนทั้งหมด 230 คะแนน เต็ม 300 คะแนน มาจากการเลือกคะแนนข้อ 1, ข้อ 2, และ ข้อ 4 มารวมกัน (100 + 50 + 80 นั่นเอง)
แต่น่าเสียดายว่าคะแนนข้างต้นเป็นแค่เรื่องสมมติ เพราะคะแนนที่ผมจริงๆหน่ะหรอ 555...
13 เต็ม 300 ...
ใช่ครับผมไม่ได้พิมพ์เลข 0 ตกไป ผมได้ 13 เต็ม 300 จริงๆ โดยผมทำคะแนนได้จากโจทย์ข้อแรกเพียงข้อเดียว ได้ 13/100 คะแนน ส่วนข้อ 2 ถึง 4 หน่ะหรอ ได้ 0 ไงครับ...
และเนื่องจากเป็นการใช้คอมพิวเตอร์ตรวจ นิสิตทุกคนจึงรู้ผลสอบทันทีเลยหลังสอบ
วันนั้นเป็นหนึ่งในวันที่ผมรู้สึกแย่กับผลสอบที่สุดในชีวิต จากคนที่ปกติก็ค่อนข้างทำได้ดี หรือไม่ก็ไม่น่าเกลียด แต่ว่าได้ 13/300 นี่เรียกว่าน่าเกลียดอาจจะยังน้อยไป...
ผมไม่กล้าเอาไปเล่าให้พ่อแม่ฟังเลยหล่ะครับว่ามีสอบและทำข้อสอบได้คะแนนเท่าไหร่
ลุยต่อโดยเตรียมตัวสอบอีก 3 ครั้งที่เหลือและหวังว่าจะได้คะแนนดีขึ้น
ถอนวิชา Computer Programming ซะแล้วค่อยมาว่ากันใหม่เทอมหน้า
ถ้าเป็นคุณจะเลือกทางไหนครับ?
ผมเองก็เกือบเลือกเส้นทางที่ 2 เช่นกัน เพราะว่ารู้สึกว่าตัวเองไม่เหมาะกับการเขียนโปรแกรมที่สุด ทั้งๆที่คิดว่าอย่างน้อยจะได้ซัก 100/300 ในการสอบครั้งแรกด้วยซ้ำ
แต่ว่าเพราะผมได้ยินคำพูดจากเพื่อนคนนึงที่สอบได้ 300 เต็ม ครับ
เป็นคำพูดที่เจ็บแต่จริงที่พูดว่า
ข้อสอบมันไม่ได้ยากหรอก แต่มึงพยายามพอรึยัง?
คำพูดของเพื่อนผมกลับมาดังก้องอยู่ในหัวของผมอยู่ตลอด จนผมได้คำตอบว่า
ก็จริงของมันนะ เราเองอาจจะยังพยายามไม่พอเองก็ได้
ผมเลยตัดสินใจว่าจะลองอีกซักตั้งนึง
ผมฮึดสู้ขึ้นมาอีกครั้ง และคราวนี้ผมจะต้องไม่ทำพลาดแบบเดิมอีก
วิธีการอ่านหนังสือจาก Sheet และสิ่งที่จดแบบเดิม ทำแล้วมันไม่เวิร์คก็เลิกทำ ใช้วิธีอื่นแทน แล้วจะใช้วิธีไหนหล่ะ?
ถ้าไม่รู้ก็ถามคนที่รู้สิครับ!
ผมก็ถามเจ้าเพื่อนคนที่ได้คะแนนเต็มนั่นแหละ ว่าต้องเตรียมตัวยังไงเพื่อที่จะได้คะแนนเต็มเหมือนเพื่อน (ไม่ง่ายนะครับสำหรับผมที่จะถามเพื่อนในตอนนั้น เพราะว่าเราก็อายุเท่ากัน การถามเพื่อนแบบนั้นก็คือการยอมรับว่าเราไม่มีปัญญาเรียนรู้เองแบบเลี่ยงไม่ได้)
แต่ว่าตอนนั้นไม่ใช่เวลามาคิดถึงเรื่องศักดิ์ศรีแล้วหล่ะครับ เพราะว่าเป้าหมายใหม่ของผมคือการทำคะแนนสอบ อีก 3 คร้ังที่เหลือให้ได้คะแนนเต็ม
เพื่อนผมคนนั้นจึงแนะนำว่า
การที่จะเขียนโปรแกรมให้เก่งและสอบให้ได้คะแนนเต็มนั้นมีวิธีง่ายๆวิธีเดียวเลย...
ก็คือต้องฝึกซ้อมโดยการเขียนโปรแกรมจริงๆจนชำนาญเท่านั้น!
นั่นสินะ ทำไมแค่นี้เราคิดไม่ได้เพราะมันก็คือวิธีพื้นฐานที่สุดในการเรียนรู้ของมนุษย์อยู่แล้ว
ก็คือการลงมือทำนั่นเอง!
ลองสังเกตุดูสิ
ถ้าคุณอยากขี่จักรยานให้เป็น สิ่งที่คุณต้องทำก็คือ... ขี่จักรยาน
ถ้าคุณอยากเตะฟุตบอลให้เป็น สิ่งที่คุณต้องทำก็คือ... เตะฟุตบอล
ถ้าคุณอยากฟังภาษาอังกฤษให้เก่ง สิ่งที่คุณต้องทำก็คือ... ฟังภาษาอังกฤษ
.
ไม่มีทารกคนไหนเดินได้ตั้งแต่เกิด และรู้มั้ยว่าทารกใช้วิธีไหนให้ตัวเองเดินได้ อ่านหนังสือวิธีการหัดเดินหรอ?
เปล่าเลย ทารกก็แค่เดิน!
เดินแล้วล้ม ล้มแล้วก็ลุกขึ้นมาเดินใหม่ ล้มจนหัวเข่าช้ำกันทุกคน แต่สุดท้ายแล้วทุกคนก็เดินได้ รวมถึงผมและคุณด้วย เพราะเราเองก็เคยเป็นทารกมาก่อน
ผมเข้าใจสิ่งที่เพื่อนผมต้องการจะสื่ออย่างถ่องแท้ ที่เหลือก็แค่เริ่มลงมือทำ...
มันไม่ง่ายเท่าที่พูดหรอกครับ แต่มันคุ้มค่าแน่นอน และถ้าผมทำได้ คุณก็ทำได้เช่นกัน!
ผมใช้เวลาทุกวันวันละนิดวันละหน่อยในการฝึกคิดและทำโจทย์ด้วยภาษา Python และลงมือเขียนโปรแกรมจริงๆ ลองรันดูผลลัพธ์จริงๆ โดยทำติดต่อกันแบบนี้อยู่เป็นเดือนๆ และด้วยความที่ผมเป็นคริสเตียน ผมก็อธิษฐานกับพระเจ้า เพื่อขอให้พระองค์ประทานกำลังให้กับผมในการฝึกเขียนโปรแกรม
และเชื่อมั้ยครับว่าในที่สุดแล้วผมก็ทำได้...
ผมสามารถสอบรอบที่ 2 ได้ 300/300 ไม่สิความจริงผมได้ 400/300 ด้วยซ้ำเพราะทำ 3 ข้อแรกเสร็จแล้วยังมีเวลาเหลือให้ทำอีกข้อนึงเล่นๆได้อีกด้วย
และเช่นเดียวกันกับการสอบครั้งที่ 3 และครั้งที่ 4 ผมก็ได้คะแนนเต็มทั้งหมด
ยิ่งไปกว่านั้นก่อนที่ผมจะสอบรอบที่ 2 อาจารย์ออกนโยบายออกมาช่วยนิสิตได้ได้คะแนนสอบครั้งแรกน้อย โดยให้ Option เพิ่มว่า ถ้าใครอยากจะเปลี่ยน Weight คะแนนสอบของคะแนนครั้งที่ 1 กับครั้งที่ 2 สามารถทำได้โดยมีเงื่อนไขว่า สามารถเพิ่ม Weight ของคะแนนครั้งที่ 2 ขึ้น จาก 25% เป็นมากที่สุด 40% ได้ โดยที่ Weight คะแนนของครั้งที่ 1 จะลดลงไป และรวมกันได้ 50% (อย่างในกรณีนี้คือ ถ้าเลือก Weight ครั้งที่ 2 ให้เป็น 40% ครั้งที่ 1 ก็จะเหลือ 10% นั่นเอง)
ซึ่งการตัดสินใจปรับ Weight คะแนนนี้จะต้องทำก่อนสอบครั้งที่ 2 เท่านั้น (ก็คือเราต้องตัดสินใจก่อนที่จะเห็นข้อสอบของการสอบครั้งที่ 2 นั่นเอง)
และแน่นอนครับคนที่ได้คะแนนสอบครั้งแรกน้อยอย่างผมก็ต้องเลือกปรับน้ำหนักให้ครั้งที่ 2 เป็น 40% และครั้งที่ 1 เหลือ 10% อยู่แล้ว
และนั่นเองทำให้ผมได้ A มาในวิชา Computer Programming นี้
และนอกจากนั้นระหว่างทางผมยังพบว่าความจริงแล้วการเขียนโปรแกรมเนี่ยสนุกกว่าที่ผมคิดไว้เยอะมากๆเลยอีกด้วย
.
และเพราะเหตุนี้เองครับ หลังจากการที่ผมได้ลองพยายามให้เวลากับการฝึกเขียนโปรแกรมอย่างเต็มที่ โดยที่ไม่ยอมเลิกล้มความตั้งใจง่ายๆ
ทำให้จากคนที่ไม่มีความรู้เรื่องเขียนโปรแกรมเลย และเคยสอบตก มีประสบการณ์ที่ไม่ดีกับการเขียนโปรแกรม กลับค่อยๆเริ่มชอบมากขึ้น จากการที่ค่อยๆเรียนรู้ ทีละเล็กละน้อย ค่อยๆฝึกทำโจทย์ไปทีละข้อๆ
จากง่ายไป ปานกลาง
จากปานกลาง ไปยาก
และในที่สุดสามารถพิชิตข้อสอบได้ แต่ว่ามันไม่ได้จบที่การทำข้อสอบได้คะแนนเต็มหรอกครับ
สิ่งที่ติดตัวผมตลอดมาตั้งแต่ตอนนั้นก็คือความชอบในการเขียนโปรแกรมนั่นเอง
ตั้งแต่นั้นมาผมจึงเลือกที่จะเข้าเรียนต่อปี 2, 3, และ 4 ในสาขา วิศวฯคอมพิวเตอร์ และได้มีโอกาสฝึกงานในบริษัท Startup แห่งหนึ่งในประเทศไทยในตำแหน่ง Software developer (ซึ่งปัจจุบันผมทำงาน Full-time กับที่นี่อยู่ครับ)
.
จะว่าไปแล้วพอนึกย้อนกลับไปมันก็ไม่ง่ายเลยนะครับ ในการฝึกฝน แต่สิ่งที่สำคัญคือเราต้องไม่ยอมแพ้เร็วเกินไป การลองทำอะไรแค่ครั้งเดียวแล้วเลิก ไม่ใช่วิธีที่จะทำให้คนเราสำเร็จได้หรอกครับ
แต่เราต้องลองทำสักระยะนึงต่างหาก อาจจะเป็น 1 สัปดาห์, 2 สัปดาห์, หรือ 1 เดือน ถึงอาจจะเริ่มบอกได้ว่าเราชอบมันหรือเปล่า หรือเราสามารถไปต่อได้มั้ย
และเชื่อผมครับ ถ้าสิ่งนั้นมีความหมายเพียงพอ วันที่คุณทำมันได้สำเร็จ คุณจะรู้ว่ามันคุ้มค่ากับความพยายามอย่างแน่นอน
.
สุดท้ายนี้มีสิ่งที่ผมอยากจะบอกทุกคนอยู่ครับ
นั่นก็คือ ไม่ว่าทุกคนมีความคิดอยากที่จะทำอะไร หรือเปลี่ยนแปลงตัวเองในด้านไหน
อย่าเพิ่งด่วนสรุปว่าคุณทำไม่ได้
ไม่ว่าความคิดนั้นอาจจะมาจากความคิดของคุณเอง หรือมีคนรอบข้างมาบอกคุณว่าคุณทำไม่ได้ก็ตาม
เพราะความจริงแล้ว ทุกๆคนมีความสามารถพอที่จะทำสิ่งที่คุณหวังไว้ได้ ขอแค่เพียงเรามีแนวทางที่ถูกต้องและวินัยในการลงมือทำ
.
ขอพระเจ้าอวยพรทุกคนนะครับ