ชีวิตการฝึกงานของผม นายแบงค์ชาติ อาลัย

feature_full03

ผมนายแบงค์ชาติ อาลัย นักศึกษา คณะวิศวกรรมศาสตร์และสถาปัตยกรรมศาสตร์ สาขาวิศวกรรมคอมพิวเตอร์ ชั้นปีที่ 4 จากมหาวิทยาลัยเทคโนโลยีราชมงคลอีสาน จังหวัดนครราชสีมา ได้เข้าปฏิบัติงานสหกิจศึกษาในภาคการศึกษาที่ 1/2557 ระหว่างวันที่ 18 สิงหาคม พ.ศ.2557 ถึงวันที่ 4 ธันวาคม พ.ศ.2557 โดยงานที่ได้รับมอบหมายต่าง ๆ นั้นเกี่ยวข้องกับการพัฒนาโปรแกรมหรือเว็บไซต์ด้วย Open source technologies โดยรายละเอียดของงานที่ได้รับมอบหมายสามารถอธิบายได้ดังต่อไปนี้

1. ศึกษาการใช้งานคำสั่งพื้นฐานต่าง ๆ บนระบบปฏิบัติการ Ubuntu เพื่อช่วยในการเขียนโปรแกรม ในระหว่างที่ทำการศึกษาค้นคว้าก็ใช้ google กระหน่ำกันแบบสุด ๆ เพื่อหาขั้นตอนการใช้คำสั่งนั้นคำสั่งนี้แต่ คำสั่งหรือชื่อคำสั่งเหล่านั้นไม่มีอยู่ในสมองเลย เพราะสิ่งที่เห็นตรงหน้าคือ เราอยากให้เป็นแบบนั้นเป็นแบบนี้ หรือเรียกง่าย ๆ ว่าทำยังไงดีถึงจะออกมาได้อย่างที่เราต้องการ ก็ยิ่งทำให้การค้นคว้าลำบากขึ้นไปอีกหนึ่งเท่าตัวเพราะต้องค่อย ๆ คิดคีย์เวิร์ด ที่ตรงกับสิ่งที่เราต้องการ ในที่สุดก็เจอ และจำกันไปอีกนาน

2. ศึกษาการใช้งาน Vi Text Editor ที่ถูกติดตั้งมาพร้อมกับระบบปฏิบัติการ Ubuntu เพื่อช่วยในการ เขียนโปรแกรม เหมือนจะง่ายมากแต่มันไม่ได้ง่ายอย่างที่คิดแค่ลองเผลอพิมพ์ตามปกติอย่างที่เคย ๆ พิมพ์มา โค้ดโปรแกรมอาจจะเละเอาได้ง่าย ๆ ก็ต้องใช้เวลาอยู่นานกว่าจะเริ่มชินและใช้คำสั่งต่าง ๆ ได้พอที่จะโค้ดโปรแกรมได้อย่างสบายใจมากขึ้น และพอใช้งานไปได้สักพักใหญ่ ๆ ก็เริ่มถูกใจและติดใจ ความเป็น shortcut ความไวในการกระโดดข้ามไปมา ความอิสระเสรีในหน้าจอดำๆ ที่เราอยากจะลบหรืออยากจะไปโผล่ที่ไหนก็ได้ในพื้นที่นั้น แต่ก็ไม่ใช่ว่าจะไม่มีข้อเสียเลย ในการทำงานจริงก็ยังจำเป็นที่จะต้องใช้ Editor ที่ดีกว่านี้รองรับการทำงานต่าง ๆ มากมาย เช่น Eclipse เป็นต้น แต่ไม่ว่าจะยังไงถ้าอยากเขียนโปรแกรมให้สนุกหรือแก้โจทย์ปัญหาด้านอัลกอลิทึมต่าง ๆ การเขียนโค้ดด้วย Vi ก็เป็นทางเลือกที่น่าสนใจสำหรับผม

3. ออกแบบเว็บไซต์ด้วย Html และ Css การออกแบบหรือจิตนาการในการสร้างสรรค์ความสวยงามนับว่าผมอ่อนหัดและอ่อนด้อยที่สุด แต่ไม่ว่าจะไปทางไหนหรือทำงานอะไรความสวยงามก็ยังเป็นสิ่งที่สำคัญเสมอเพื่อดึงดูดให้คนสนใจในงานของเราหรือผลิตภัณฑ์ของเราเพื่อเพิ่มโอกาสในการนำลูกค้ามารู้จัก และนำไปสู่การปิดการขาย ดังนั้นการออกแบบก็เป็นสิ่งสำคัญไม่แพ้การเขียนโค้ด โปรแกรมประมวลผลการทำงานเช่นกัน ในช่วงแรกๆ ที่ผมได้เข้ามา ก็แก้ครับ แก้จนกว่าจะดีจนกว่าจะมองแล้วสบายตาดูไม่ขัดกับวัตถุประสงค์ของเว็บเพจที่ได้ทำการสร้างขึ้น

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

5. ศึกษาการใช้งาน Git เคยเจอปัญหาโค้ดหายบ้าง เขียนโค้ดใหม่ทับโค้ดเก่าบ้าง ทำตัวเองมาก็บ่อยมาก แต่พอได้มารู้จักเจ้าตัวนี้ทำให้เรื่องการดูแลรักษาโค้ดเป็นสิ่งที่ง่ายและสะดวกขึ้นกว่าแต่ก่อนเยอะ แต่ในความสะดวกก็ยังคงมีสิ่งที่ลำบากแสนเข็ญหลบซ่อนอยู่เสมอ การใช้งาน Git ไม่ใช่แค่ว่าคลิกๆ ตามปุ่มไปเรื่อย ๆ เราต้องเข้าใจหลักการทำงานของ Git ให้มากพอ เพื่อที่จะใช้งานมันได้อย่างเต็มประสิทธิภาพ ส่วนตัวผมตอนนี้ก็ยังทำได้แค่ เอาโค้ดไปเก็บแล้วดึงลงมา หรือสลับโค้ดไปมาระหว่างคนอื่น จริงอยู่ที่ว่าการรู้เพียงเท่านี้ก็อาจจะเพียงพอแต่ก็ยังจำเป็นที่ต้องศึกษาเพิ่มเติม เพราะยังมีหลายอย่างหลายเทคนิคในเรื่องนี้ที่น่าสนใจและจำเป็นอย่างยิ่งในการศึกษา

6. ศึกษาการใช้งานฐานข้อมูล MySQL ก็ยังคงเป็นสิ่งที่เคยใช้งานมาก่อนหน้านี้บางเล็กน้อย แต่ก็เป็นอีกหนึ่งสิ่งที่ผมลืมอยู่เสมอๆ คือพวกคำสั่งSql ในฐานข้อมูล MySQL ทั้งๆ ที่มันสำคัญมากในการพัฒนาโปรแกรม ผมต้องคอยเปิด google ค้นหาอยู่บ่อย ๆ แปลกมากที่พวก syntax ของ Java หรือ Javascript ก็ไม่ได้ต้องค้นหาอะไรบ่อยเท่านี้เลย แต่ก็ยังโชคดีที่ได้เอาเวลามาทบทวนรื้อฟื้นความจำต่าง ๆ ที่ลืมทิ้งไว้ที่ไหนสักแห่งนานมาก แล้วดึงมันกลับมาใช้งานได้อีกครั้ง จากโจทย์ด้านโปรแกรมแกรมมิ่งต่าง ๆ ที่ได้รับมอบหมายมา แล้วนำมาประยุกต์ใช้ร่วมกัน

7. ศึกษารูปแบบการเขียนโปรแกรมแบบ OOP ด้วย Java การมองทุกอย่างให้เป็นวัตถุผมอาจจะคุ้นเคยในชีวิตประจำวันแต่พอได้ลองหยิบความคุ้นเคยเหล่านี้มาใส่ไว้ในโค้ดของเราทำไมมันเป็นสิ่งที่ต้องคิดแล้วคิดอีกว่ามันใช่รึป่าว เราคิดละเอียดพอรึยัง หรือเราคิดมากเกินไปจนมันกลายเป็นสิ่งที่ผิดอย่างร้ายแรงอันนี้ก็เป็นอารมณ์ความรู้สึกที่เคยได้ลองหัดลองทำ แต่ไม่ว่าจะยังไงในการพัฒนาโปรแกรมด้วยภาษาอะไรก็ตามแนวคิดเรื่อง OOP ก็ยังคงเป็นรากฐานที่สำคัญเสมอในการพัฒนาโปรแกรม และสุดท้ายถึงจะฝึกงานเสร็จสิ้นไปแล้ว ในเรื่องแนวคิด OOP สำหรับผมต้องใช้เวลาไปกับมัน ฝึกฝนมันจนกว่าจะเคยชินและใช้มันได้อย่างเป็นธรรมชาติที่สุด

To be continue……………..

No Comments

Sorry, the comment form is closed at this time.

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ นโยบายความเป็นส่วนตัว และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ ตั้งค่า

Privacy Preferences

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

Allow All
Manage Consent Preferences
  • คุกกี้ที่มีความจำเป็น (Necessary Cookies)
    Always Active

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

  • คุกกี้ประสิทธิภาพ (Performance Cookies)

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

Save