โปรแกรมเมอร์

. . . . . . . .สำหรับโปรแกรมเมอร์ ต้องสามารถเขียน Pascal หรือ C ได้ พื้นต้องแน่นพอสมควรละครับ ถ้าจะให้ดีเขียนเก่งไปเลย รับรองไปบรี๋อ.....เพราะว่าการเขียนโปรแกรมต้องอาศัย ความชำนาญในการเขียนพอสมควร ต้องขยันด้วย ไม่ขยันเกิดเจอ BUG แบบตกม้าตายอย่างนี้ ถ้าท้อก็แย่เลยกับความพยามยามที่เราอุตสาห์ทำมา แต่ถ้าเราแก้ไปเรื่อยๆ จนได้นี่ ถือว่าเป็นประสบการณ์อย่างหนึ่งเลยละครับ ยิ่งเจอ BUG แล้วแก้ได้ เราก็จะยิ่งเก่ง แต่ถ้ายิ่งแก้ยิ่ง BUG อันนี้ก็แสดงว่าเราไม่ไหวกับการเขียนโปรแกรมแล้วละ แต่ถึงยังงัยขยันเขียนบ่อยๆ ก็เก่งเองละครับ และที่ผมให้เขียนโปรแกรมด้วยภาษา C ก็เนื่องมาจากควา่มหลากหลายกับความยืดหยุ่นของภาษา C นี่ละครับ ก่อนหน้านั้นผมติด Pascal มาก ประเภทกว่าจะแยกออกมาได้ ฮือๆๆ ทำใจอยู่พอสมควรละครับ Pascal เข้าใจง่ายเป็นภาษาโครงสร้างที่มีระเบียบ มีรูปแบบที่ตายตัวแถมยัง compile กับ like เร็วมากๆ เลย ตอนลองไป compile ด้วยภาษา C ประเภทแค่ compile ช้าก็ไม่อยากเตะแล้ว...ยิ่งถ้าเจอ ERROR ตอน Compile นะยิ่งไปใหญ่เลย ก็เลยยังจับ Pascal อยู่ แต่พอมาลองเขียนภาษา C แล้วก็อดทนปรับสภาพตอน compile หน่อย เดี๋ยวก็ชิน ผมเองก็ไม่รู้ชินตอนไหนนะ อิอิ แต่เวลาเขียนโปรแกรมด้วยภาษา C รู้สึกว่ามันจะเพลินกว่า Pascal นะครับ มันกะทัดรัดดี และถ้าใครเคยเขียน Assembly มาก่อนแล้วละก็จะรู้สึกได้ว่าเวลาเขียน C นี่จะเหมือน Assembly เลยครับเพียงแต่ C เขียนเป็นโครงสร้างที่เข้าใจง่ายมาก กว่า Assembly เท่านั้นเอง ใครก็บอกว่า Assembly เร็ว อันนี้จริงครับแต่เวลาเรา compile โปรแกรมของเราให้เป็น FILE Assembly แล้วละก็ code assembly ก็ไม่ค่อยจะแตกต่างกับภาษา C เท่าไรครับ และภาษา C ก็สามารถใช้ Assembly ในตัวได้เลย สำหรับคนที่เขียน Pascal ตัว Pascal เองก็มีภาษา Assembly ในตัวเหมือนกัน ทั้งยังทำงานได้ดีทั้งสองตัว แต่ C + Assembly มันจะทำงานเข้ากัน ดีกว่านะ ฮ่า ฮ่า ฮ่า และย้อนกลับมาเรื่องการเขียนเกมบ้าง เกมที่เราส่วนใหญ่จะถูกเขียนด้วยภาษา C ทั้ง PC หรือ Play station ก็เขียนด้วยภาษา C การเขียนก็ไม่แตกต่างอะไรกันมากนัก เพียงแต่ตัวแปรภาษาของทั้ง PC และ Play station ทำมาเฉพาะ CPU ของเราก็เป็นคำสั่งในตระกูล x86 ส่วน Play station ก็เป็นอีกแบบหนึ่ง ถ้าเคยใช้โปรแกรม SNES หรือโปรแกรม EMULATE ที่เราแปลงเกม play station มาเล่นกันนั่นละ จะเห็น code ภาษาเครื่องของมัน เองเลย ซึ่งมันก็แตกต่างกันไปตาม CPU ของเกม แล้วเวลาเขาเขียนเกมก็เหมือนกับเรานั่นละ เขียนเป็นภาษา โครงสร้างเหมือนกัน ทั้งภาษาเครื่องกับภาษาขั้นสูง จะว่าไปแล้วการเขียนโปรแกรมก็ไม่ยากอะไรจริงๆ แค่เข้าใจการทำงานของโปรแกรมว่ามันทำงานยังงัย มันไปทำอะไรบ้าง ทำอะไรกับอะไร ฮ่า ฮ่า ฮ่า ไม่รู้จะยากไป สำหรับมือใหม่หรือเปล่า ต้องลองเขียนเองถึงจะรู้ ถ้าพูดว่าจะเริ่มๆ แต่ยังไม่ลงมือ มันก็ไม่ยังไม่เป็น นะจิ ..ลงมือได้แล้วใครที่อยากเขียนโปรแกรม มีให้เลือกว่าคุณจะเขียนแนวไหน อยากทำโปรแกรมบัญชีก็ไปหัดเขียน FOXPRO, DBASE อยากเขียนง่ายๆสูง ก็ DELPHI, Visual Basic แต่ถ้าอยากเก่งนะครับ Pascal, C กับ Assembly เลือกได้เลยตามถนัด จริงๆผมอยากให้เขียนภาษา C กันนะครับ เป็นการพัฒนาโปรแกรม ไม่ใช่คอยใช้แต่โปรแกรม ที่เขาผลิตอย่างเดียว เราก็น่าจะผลิตเองบ้าง คนไทยเก่งๆหลายคน สามารถเขียนระบบปฏิบัติการได้ เขียน compiler ได้ เขียนเกมได้ งัดแงะระบบได้ คิดค้นหรือพัฒนาสิ่งแปลกๆใหม่ๆ ไม่แพ้ใครในโลกเหมือนกัน เพียงแต่ขาดแรง สนันสนุนจากผู้มีกะตังค์ ไม่เห็นความสำคัญของทรัพย์ทางปัญญาเลย รู้แต่ว่าผมจ้างคุณมาเขียนโปรแกรม 3 เดือนต้องเสร็จ ไม่เสร็จไล่ออก หรือเสร็จแล้วก็ไล่ออก ขายดีก็ไล่ออก ขายไม่ดีก็บีบออก โอ้ย...อะไรกันวะ ไม่ส่งเสริมกันเลย เกินหน้าเกินตาไม่ได้ ให้ลูกน้องรวยหน่อยก็ไม่ได้ เห็นเงินเดือนขึ้นหน่อยก็เริ่มบีบๆๆๆๆ อยู่ได้ ที่สำคัญคนไทยบางคน อะไรออกจะอิจฉากันเหลือเกิน ฉันเก่งกว่าก็ยอมรับสิ ไม่ใช่เลียเจ้านายบอกให้ไล่มันออก ไปหน่อย มันเก่งกว่าชั้น มันเงินเดือนสูงกว่าชั้น บางคนยิ่งแล้ว อยู่แผนกบัญชี เห็นโปรแกรมเมอร์ได้ค่าโปรแกรม เป็นแสนเป็นล้านก็อยากได้ ทำไม่ชั้นทำบัญชีมาตั้งนานไม่เห็นได้ ไม่เข้าใจ อย่าว่าแต่คุณเลยที่ไม่เข้าใจ ผมยังไม่เข้าใจเลย รู้แต่ว่า อยากได้เงินเยอะก็ไปเป็นโปรแกรมเมอร์สิคุณเธอ ...แหม...ตามความสามารถครับ แต่ก็ใช่ว่าจะเป็นเช่นนี้เสมอไป บางทีโปรแกรมเมอร์บางคนก็ท้อนะครับ เพราะเจ้านายอมค่าโปรแกรม จ่ายแต่เงินเดือนก็มี ทำเอาโปรแกรมเมอร์หงุดหงิดเหมือนกัน อย่าไปแกล้งโปรแกรมเมอร์เขาเลยรู้แต่ว่าเวลา โปรแกรมมีปัญหา ใครเป็นแก้ ใครเป็นคนเขียน ถ้าเกิดคุณไปแกล้งเขามากๆ เกิดเขาไม่ทำละ จะไล่ออก ก็จะให้ใครแก้ จะจ้างคนอื่นก็มั่นใจเหรอว่าจะสานต่อได้ ทำงานด้วยกันต้องแฟร์ๆ ถ้าคุณเล่นระบบเถ้าแก่ ไม่สนใจลูกน้องนะ คิดผิด...!!! ซะแล้วละ จริงอยู่คุณสบาย แต่ปัญหาก็มีเยอะมากมายให้คุณแก้ คุณปวดหัว ลูกน้องโกงบ้าง ขโมยบ้าง แหมคุณเล่นตั้งเงินเดือนตามวุธ ไม่ได้ตั้งตามความสามารถประสบการณ์ นิ.....คุณมองคนที่การศึกษาสุงเท่านั้นหรือ ค่าของคนอยู่ที่ผลงาน ครับ ใครที่คิดว่าตัวเองทำงานกับเถ้าแก่ ก็อย่าหวังอะไรไปมากกว่างานที่ทำเลยครับ จงคิดว่าเรามาฝึกฝน ฝึกงาน เรียนรู้ ผมเคยทำงาน Part time กะเถ้าแก่มาเหมือนกัน ก็ทำไปเรียนไป คาบไหนเรียน COM ก็ขออาจารย์มาทำงาน อิอิ ก็ไม่ได้หวังอะไรไปมากกว่า การเรียนรู้ ช่วงนั้นก็เริ่มเขียน Pascal ละครับ ฮี่ ฮี่ เงินเดือนไม่เดิน 2000 แน่นอน เคยได้สูงสุดก็ 1800 ไม่สิ 2500 ฮ้า ใช่แล้วเป็นแตะเอียนะ ดีใจๆๆๆๆๆ ดีใจโว้ย.........แต่ก็แค่นั้น ค่าครองชีพมันไม่ใช่แค่นั้นนะสิ เคยคุยกับพี่บางคน ทำงานถ่ายวีดีโอนอกสภานที่ ทั้งขับรถ แบกของ ถ่ายภาพ พอเงินเดือนออกได้ 500 บอกว่าหักนู้นหักนี่ ค่านู้นค่านี่ พี่แกบอกผมว่า แกประชดด้วยการ ไปซื้อเบียร์มากินซะหมดเลย ฮ่า ฮ่า ฮ่า อันนี้ก็เถ้าแก่เหมือนกัน ยิ่งนี่เลยระบบผูกขาดโดยเถ้าแก่ สถานศึกษาใดถ้าใคร มีอาจารย์เป็น 1 ในผู้ถือหุ้นของบริษัทคอมพิวเตอร์อะไรนะ นักศึกษาจะเห็นคอมพิวเตอร์ไม่เกิน 2 ยี่ห้อ แถมยี่ห้อนั้นยังเป็นของบริษัทที่อาจารย์ถือหุ้นซะด้วยสิ ก็ไม่เข้าใจว่าจะส่งเสริมอาจรย์ หรือส่งเสริมนักเรียนกันแน่ ครูคือผู้เสียสละ ผมได้ยินมาอยากนั้น สงสัยเสียสละเวลาสอน ให้นักเรียนมีเวลาพัก เด็กกำลังเจริญเติบโต แล้วอาจารย์ไปประชุมผู้ถือหุ้น โอ้ว...ลีจิงๆๆๆๆ ลี ลี ลี......ยังมีอีกนี่......หนูทำได้ โปรแกรมเมอร์เก่งๆที่อยาก จะไต่กะไดแซงรุ่นพี่ พยามยามที่จะทำแทนรุ่นพี่ให้ได้ แล้วก็บีบรุ่นพี่ออกไป พี่แกก็ใจดีซะนี่เสียสละ ลาออก ให้เด็กใหม่ไฟแรงมาแทนที่ สุดท้ายก็แป๋ว......เพราะรุ่นพี่เขียน routine เอง วางระบบเอง รุ่นน้องยังใช้ routine รุ่นพี่อยู่เลย ระบบก็ระบบพี่ เอาไปเลยน้องพี่ไม่หวง ให้ source code ต่างหาก แต่แกะเองนะ ไปละบาย....เจ้านายก็ดีใจใหญ่ มีคนมาทำแทนโปรแกรมเมอร์คนเดิมที่สั่งก็ยาก คุมก็ยาก แต่สุดท้าย ก็ไปไม่รอด...ทั้งรุ่นน้องและเจ้านาย เคยฟังประสบการณ์จากชายลึกลับคนหนึง จริงแล้วไม่ลึกลับหรอก Boss ผมเอง อิอิ แกเป็นคนตั้งแผนกซอฟท์แวร์ ให้กับบริษัทยักษ์ใหญ่แห่งหนึ่ง ในประเทศไทย แต่แกก็ต้องเนรเทศตัวเอง ออกจากบริษัทนั้น อันเนื่องมาจากความงกของบริษัท ได้ 1 อยากเอา 100 Order 20 ก็จะทำไม่ไหวแล้ว บอกอยากได้ 60 คนแค่ 10 คนนี่นะ แหมตั้งใจทำยอดจริงนะ รู้สึกว่าปีนนั้นจะทำยอดได้ 40 กว่าล้านจากโปรแกรมบัญชีที่ Boss ผมเขียนและปัจุบันก็ยังขายอยู่ ฮ่า ฮ่า ฮ่า ยอด 40 กว่าล้าน ไม่แบ่งโปรแกรมเมอร์เลย เอาไปแบ่งผู้บริหารกันดีกว่า เห็นมั๊ยผลงานผมๆ ผลงานผู้จัดการ ทุเรศจริงๆ ทีตอนแรกไม่สนใจ พอขายได้ก็โลภซะไม่มี อะไรวุ้ย......Jakkkkkkk อะไรหว่า ฮ่า ฮ่า ฮ่า รู้สึกจะนอกเรื่องไปหน่อยแฮะ แต่ก็อยากจะเล่าสู่กันฟัง จากประสบการทำงาน ทั้งเจอเองกะได้ยินเขาเล่ามาอีกที ฮือๆๆๆ นี่และรสชาดของชีวิต ของลูกจ้างเมืองไทย แต่ใช่ว่าเมืองนอกจะดีนะครับ การแข่งขันเมืองนอกยิ่งกว่าเมืองไทยอีก เพราะคนเก่งเขาเยอะๆ เยอะมากจนด๊อก ยังต้องนอนข้างถนนเลย แต่ฝรั่งเขาสวัสดิการดีครับ ค่าจ้างแฟร์ๆ ตามความสามารถ อีกอย่างเขาทุนหนา จ้างแพงได้ แต่เป็นระบบเซ็นสัญญา นะครับ หลังเสร็จงานแล้ว ตัวใครตัวมัน นอกเสียจาก จะทำต่อ ไม่รู้ว่าจะใช้กับเมืองไทยได้หรือเปล่า ฮ่า ฮ่า ฮ่า ชักติดลม...เอาละกลับมาเรื่อง การเขียนโปรแกรมต่อ..( เอาน่าๆ วันหลังจะมาเล่าสู่กันฟัง เรื่องประสบการณ์ ลูกจ้างเมืองไทย อิอิ ) การเขียนโปรแกรมนี่ เราไม่ต้อง ไปจำคำสั่งหรือวิธีใช้ทั้งหมดหรอกครับ จำเท่าที่ใช้งานก็พอ นี่เชื่อมั๊ยผมเขียนโปรแกรมยังไม่แนใ่จเลยว่า getch กะ scanf นี่ใช้ยังงัยเพราะไม่เคยใช้ ส่วนมากจะเขียน ใช้งานเองทั้งหมดและมันก็ไม่ยากอะไรที่เราจะทำเอง มันเสียเวลาก็จริง แต่สิ่งที่เราทำเองมันก็ควบคุมได้ดีกว่านี่ จะเพิ่มจะเติมอะไรก็ได้ สบาย ฮ่า ฮ่า ฮ่า การเขียนโปรแกรมอย่ามัวแต่ไปอ่านหนังสือ แล้วจำคำสั่งอยู่เลย การเขียนโปรแกรม ไม่ใช่การอ่านหนังสือนะครับ การเขียนคือการลงมือปฏิบัติ เราค่อยเขียน ค่อยๆแก้ ค่อยๆเรียนรู้ทีละคำสั่ง ผมก็อ่านหนังสือการโปรแกรมด้วย Pascal การโปรแกรมด้วย C มาเหมือนกันแต่ ยิ่งอ่านยิ่งงง หนังสือก็เยอะแยะไปหมด วู้...เราโง่หรือหนังสือผิดก็ไม่รู้ บางทีหนังสืออาจารย์ดังๆ หลายท่านที่เราอ่านนั้น เป็นผลงานนักศึกษาทำการเปิดดิกแปล แล้วแปะชื่ออาจารย์ ติดวุธนิดหน่อยก็ขายได้แล้ว แหม.......หนังสือวิชาการ ก็น่าจะทำดีกันหน่อย คำศัพย์เฉพาะก็เฉพาะเถอะ เพราะภาษา COM พอแปลเป็นภาษาไทยแล้ว มันตลกอ่ะ อย่างหน่วยความจำแบบพลวัต นี่อะไรรู้มั๊ย มันคือหน่อยความจำแบบ Dinamic งัย แล้วถ้าจะเรียกเครื่อง Computer ว่าเครื่องคณิตกรหรือเครื่องคำนวณ มันก็ออกจะแปร่งๆ ไป ไม่ต้องไปแปลมันหรอกเพียงแต่ท่านอธิบายเฉยๆ ว่ามันคืออะไรทำงานอย่างไรก็พอ นี่คนอ่านภาษาไทย ยังต้องแปลภาษาตัวเองอีกหรือเนี่ย การเขียนโปรแกรม บางคนว่าน่าจะเริ่มจาก BASIC ก่อน ไม่ก็เริ่มที่ Pascal เลยเพื่อการเรียนรู้ จริงๆแล้ว ผมอยากให้เริ่มที่ภาษา C เลยนะ C นี่จะว่ายากก็ยากจะว่าง่ายๆก็ง่าย มันเป็นอะไรที่กลางๆ นะผมว่า เพียงแต่ถ้าคุณเจอ WARNING หรือ ERROR ของภาษา C ก็อย่าได้ท้อละ ไม่ได้ก็ถามเพื่อนสิ ไม่ใช่เลิกไปเฉยๆ แล้วจะเก่งได้ยังงัย ภาษา C เป็นภาษาที่กระทัดรัด จริงๆ เทียบกับภาษาที่เขียนมาแล้วนะ อีกทั้งความหลากหลายก็เยอะ Library เพียบมีให้ใช้งานมากมาย อืม.....ลองดูไม่ลองไม่รู้อิอิ แต่ด้วย HomePage นี่ก็จะพยายามสอนเรื่องการเขียนโปรแกรมบ้าง เป็นการสนับสนุนเยาวชนไทย ให้รักการเขียนโปรแกรม อิอิ อีกทั้งสนับสนุนให้มีการพัฒนาซอฟท์แวร์ ในประเทศไทยกันบ้าง และยังมีเทคนิค การเขียนโปรแกรมแต่จะเน้นไปทางการเขียนเกมซะส่วนใหญ่นะครับ ก็พวกกราฟฟิก การแสดงผล Pixel ทำยังงัย การแสดงภาพการ Loadรูป Bitmap อะไรเนี่ยละ พร้อมทั้ง Source code ไว้ศึกษานะครับ แต่ก็คงจะไม่ใช่แต่ผมคนเดียว ยังมีเพื่อนๆอีกหลายคนพร้อมที่จะแลกเปลี่ยนความรู้กัน ซึ่ง HomePage นี้จะ Link ไปหาด้วยครับ เป็น HomePage ที่เราเลือกสรรแล้ว ไม่ under แน่นอน