แนวทางการเรียนรู้สำหรับมือใหม่พัฒนาเว็บไซต์สาย Open Sourceหลายต่อหลายครั้งที่เพื่อนๆ มือใหม่หลายคนใฝ่ฝันอยากจะเข้าทำงานในบริษัทรับทำเว็บไซต์หรือ SEO แต่ว่าไม่มั่นใจว่าแนวทางที่ตนเองศึกษามานั้น สามารถนำไปใช้งานจริงได้หรือเปล่า วันนี้ผมมีคำตอบจากประสบการณ์ตรงในที่ทำงานมาแนะนำคับ
HTML กับ PHPเพื่อนมือใหม่ หลายๆ คน อาจจะยังไม่เข้าใจข้อแตกต่างระหว่าง HTML กับ PHP บ้างก็ว่า ทำเว็บด้วย HTML หรือ PHP ดี ... ใช้ PHP อย่างเดียวเขียนเว็บได้ไหม? ... คำตอบง่ายๆ ที่จะทำให้เราเข้าใจมากขึ้นคือ HTML กับ PHP เป็นภาษาที่ใช้ในการทำเว็บไซต์คนละส่วนกันคับ ไม่สามารถทำงานทดแทนกันได้ โดยที่ HTML เป็นภาษาที่ใช้ในการแสดงผล ไม่ว่าจะเป็นข้อความ, รูปภาพ, การแบ่งสัดส่วนพื้นที่บนหน้าจอ และอื่นๆ ที่เรามองเห็นได้บนหน้าเว็บเพจ ในขณะที่ PHP จะทำงานในส่วนการคำนวณและประมวลผลและการทำงานโต้ตอบกับผู้ใช้งานเป็นส่วนใหญ่ นอกจากนี้ PHP ยังประมวลผลที่เครื่อง Server ในขณะที่ HTML สามารถใช้บราวเซอร์จากเครื่อง Client อ่านได้เลย จึงมักมีข้อสงสัยผิดๆ สำหรับมือใหม่หลายคนที่เขียน PHP แล้วใช้บราวเซอร์เปิดอ่านโดยตรงไม่ได้ ... การจะรัน PHP ได้นั้นจะต้องรันผ่าน Server โดยอาจจะใช้ Hosting ที่เราเช่าอยู่ หรือ จำลองเครื่องเป็น Localhost ในการรันทดสอบการทำงานก็ได้
ข้อสงสัยสำหรับมือใหม่หลายคนเกี่ยวกับการเขียน PHP ลงไปในโค้ด ... หลายคนอาจสงสัยว่า ถ้า View Source ด้วยบราวเซอร์นั้น โค้ดที่เราเขียนคนอื่นจะมองเห็นความลับเหล่านั้นหรือเปล่า ... คำตอบอยู่ที่ข้อความข้างต้นแล้วคับว่าโค้ด PHP จะประมวลผลที่ Server เท่านั้นและส่งออกมาเป็น HTML ล้วนๆ ออกมาเป็น Output Source Code ที่เราเห็นตอน View Source เพราะฉะนั้นเวลาเรา View Source ก็จะมองเห็นเฉพาะ HTML และภาษาอื่นๆ สำหรับ Client คับ
Server กับ Client ต่างกันอย่างไร ทำไมต้องเรียนรู้?ในมุมมองของคนทำเว็บส่วนใหญ่มองเพียงแค่ว่า Server เป็นผู้ประมวลผลและส่งข้อมูล ... Client เป็นผู้รับข้อมูลมาอ่าน ก็พอคับ หลังจากนั้นก็จะเข้าใจภาษาอื่นๆ ในการพัฒนาเว็บมากขึ้น ว่าภาษานั้นๆ จะอยู่ส่วนใดของโครงสร้างการพัฒนาเว็บตามการวางแผนของเรา
แล้วเมื่อใดเราควรใช้ HTML หรือเมื่อใดควรใช้ PHP?การเริ่มทำเว็บทุกครั้งจำเป็นจะต้องใช้ HTML เสมอ อย่างที่บอกล่ะคับว่าเป็นภาษาที่ใช้สำหรับแสดงผล หากเราต้องการทำเว็บไซต์ที่ประกอบด้วยหน้าเว็บเพจไม่เกิน 10 หน้า หรือเว็บไซต์ที่ไม่มีการทำงานโต้ตอบกับผู้ใช้งาน เราสามารถใช้ HTML ล้วนๆ ในการออกแบบเว็บไซต์ได้ โดยเว็บไซต์ลักษณะนี้จะเป็นเพียงเนื้อหาให้ผู้ชมอ่านได้เท่านั้น
แต่หากมีการใช้แบบฟอร์ม มีการบันทึกข้อมูลลงสู่ฐานข้อมูล หรือเป็นเว็บไซต์ที่เกิน 10 หน้า (โดยประมาณ) เราจะเป็นจะต้องใช้ PHP เข้ามาช่วยในการทำงาน โดยที่ PHP จะมีความสามารถในการรับค่าตัวแปรมาประมวลผล หรือทำงานตามเงื่อนไขที่เราต้องการได้ แม้กระทั้งการจัดการฐานข้อมูลร่วมกับ MySQL
PHP กับ ASP แตกต่างกันอย่างไร?PHP กับ ASP เป็นภาษาที่มีการประมวลผลบนเครื่อง Server คับ ในสายตาผมถึงแม้มันจะมีความสามารถ ดีกว่า/ด้อยกว่า กันเล็กน้อยในบางจุด แต่จุดประสงค์โดยรวมแล้วเราเอาไว้ใช้ทำงานเหตุผลเดียวกันคับ ตรงนี้เลยไม่ซีเรียสสำหรับคนที่อยากจะเรียนรู้ PHP หรือเลือกจะเรียนรู้ ASP ... เหตุผลที่มีคนทั่วโลกนิยมใช้ PHP ก็เพราะว่ามันใช้งานฟรี เปน Open Source คับ
HTML กับ CSS = Web Design จริงหรือ?ในสายตาผมคำจำกัดความว่า Web Design ไม่ได้หมายถึงนักออกแบบ Graphic Designer บนเว็บเท่านั้น แต่ครอบคลุมไปถึงการออกแบบระบบ ฟังก์ชั่นการทำงาน ฐานข้อมูล และอื่นๆ ให้ทุกสัดส่วนทำงานร่วมกันได้อย่างมีประสิทธิภาพ
หลายคนคงเข้าใจนิยามของ HTML กับ CSS มาบ้างแล้วจากบทความหรือหนังสือที่เคยอ่าน (ตามหลักทฤษฏี) แต่จะมีสักกี่คนที่เข้าใจนิยามของมันในเชิงปฏิบัติ ว่าเราใช้ CSS เพื่ออะไร และจำเป็นอย่างไร หลายคนบอกว่า CSS คือ Web Design ... แต่จริงๆ แล้วต่อให้ไม่ใช้ CSS ก็สามารถ Design เว็บได้สวยเหมือนการใช้ CSS เป๊ะได้เลยนะคับ^_^ ... ผมเลยไม่ได้มองว่า CSS คือ Web Design
CSS เป็นเพียงตัวช่วยที่ทำให้เราสามารถจัดการกับ คุณลักษณะของ element ได้แบบ dynamic เท่านั้นเอง (มันเป็นเพียงเครื่องทุ่นแรงของ Web Design เ่ท่านั้นจิงๆ) ... เช่น หากคุณเขียน Web Page 10 หน้าด้วย HTML ล้วนๆ และกำหนดตัวอักษรเป็นสีแดงทั้ง 10 หน้า เวลาคุณจะแก้ตัวอักษรเป็นสีน้ำเงิน คุณจะต้องตามแก้ Web Page ทั้ง 10 หน้าเช่นกัน ... แต่หากคุณใช้ CSS เขียนแยกไฟล์เข้ามาช่วยในการจัดการสีตัวอักษร คุณเพียงแทรกไฟล์ CSS นี้ไว้กับ Web Page ทั้ง 10 หน้า เวลาคุณจะแก้สีตัวอักษร คุณแก้ที่ไฟล์ CSS ไฟล์เดียว Web Page ทั้ง 10 หน้าก็จะเปลี่ยนสีให้ทันที
จากกรณีตัวอย่างข้างต้น ... CSS ในมุมมองผมมีแค่นี้คับ...^_^
เลือกเรียนภาษาใดก่อน ตาม Step by Step ถึงจะง่ายมากที่สุด?ถ้าให้ผมแนะนำก็ตามนี้เลยคับ HTML/XHTML > CSS > JavaScript > PHP/MySQL
สำหรับการทำเว็บด้วย Dreamweaver บางคนที่ใช้เก่งก็บอกว่าดีกว่าเขียนมือ ... บางคนถนัดเขียนมือก็บอกว่ามันเข้าใจง่ายกว่าดรีม แต่ในมุมมองผมจะใช้อันไหนก็ไม่สำคัญคับ สำคัญแค่ขอให้รู้พื้นฐานการทำงานของทุกคำสั่งที่จำเป็นให้ได้ก็พอ และถ้าให้แนะนำผมก็คงให้เริ่มต้นเขียนมือสดๆ ด้วย Editplus จนกว่าจะทำเว็บไซต์สวยๆ ได้จริงๆ แล้วต่อไปจะหันไปใช้ดรีม ก็ชิวๆ คับ สบายๆ เพราะสุดท้ายแล้วยังไงเมื่อถึงคราว JavaScript, PHP อื่นๆ ก็ต้องเขียนมืออยู่ดี
DOCTYPE มาตรฐานโครงสร้างที่เลือกในการทำเว็บไซต์?หลายคนเครียดว่าต้องเขียนให้ผ่าน W3 บางคนเลือก DOCTYPE ยากๆ ที่มีกฏระเบียบเยอะในการเขียน ... ถามว่าเขียนยากๆ ไปแล้วได้อะไร ... ผมเชื่อคับว่าหลายคนก็คงตอบไม่ได้ และกำลังสับสนชีวิตหลังอ่านข้อความนี้อยู่ประมาณ 10 วินาที ... จริงๆ แล้ว DOCTYPE แต่ละตัวมีคุณสมบัติในอุปกรณ์หรือเครื่องมือในการเปิดเว็บไซต์ที่แตกต่างกัน มีข้อดี/ข้อด้อย ต่างกันบ้างในแต่ละจุด (หาอ่านได้ใน W3.org) เมื่อรู้ถึงความจำเป็นแล้วว่าเมื่อใดควรใช้ DOCTYPE เป็นอะไร ก็หวังว่าคงเลือกนำมาใช้ในการพัฒนาเว็บ ตามตลาดได้อย่างถูกต้องนะคับ
โค้ดแในงานด้านทำเว็บไซต์ทั่วไป ส่วนมากแต่ละภาษาใช้ทำอะไร?HTML/XHTML - ใช้สำหรับแสดงผล ข้อมูล ข้อความ รูปภาพ คลิปวีดีโอ เพลง อื่นๆ
CSS - ช่วยให้ัจัดการรูปแบบการแสดงผลของ HTML/XHTML ดียิ่งขึ้น
JavaScript - ใช้รับส่งค่าตัวแปรไปยัง PHP (เทคนิค AJAX) และใช้เขียนฟังก์ชั่นอำนวยความสะดวกต่างๆ หรือลูกเล่น เล็กๆ น้อยๆ บนเว็บ
PHP - ใช้รับส่งค่าตัวแปรที่ส่งมาจากลิงค์ (Method GET) และฟอร์ม (Method GET & POST) มาทำงาน, สร้างเงื่อนไขการทำงาน, สร้างฟังก์ชั่นการทำงาน, จัดการฐานข้อมูลร่วมกับ MySQL และ อื่นๆ มากมาย
นอกจากนี้เส้นทางยังอีกยาวไกลให้เรียนรู้ต่อเพื่อพัฒนาตนเองไปเรื่อยๆ คับสำหรับมือใหม่ เกี่ยวกับ เทคนิคอื่นๆ และ Case Study แต่เชื่อผมเถอะคับว่าเมื่อเรียนมาถึงส่วนนี้แล้ว จะหาอ่านบทความเว็บไทยไม่ได้แล้ว จำเป็นจะต้องอ่านเว็บนอกมากขึ้นเืพื่อเติมความรู้ใหม่ๆ ในเชิงลึก
แล้วงานด้าน Graphic ล่ะ?ศึกษาควบคู่ไปพร้อมกับ HTML ได้เลยคับ โปรแกรมยอดนิยมในการตกแต่งภาพเลยก็ Photoshop, วาดภาพ Vector หรือภาพลายเส้นสวยๆ ด้วย Illustrator, หรือจะทำคลิป/เสียง/Animation โดย Flash และโปรแกรมอื่นๆ ตามสะดวก โดยจุดประสงค์หลักๆ ในการทำงานก็คือ ... เราจะต้องตกแต่งภาพได้และทำคลิปวีดีโอลงเว็บได้ ก็เพียงพอแล้วคับ กรณี Flash หากเขียน AS ได้ก็จะดูไอโซในที่ทำงานได้เลยคับ ประมาณว่าเป็นงาน/ทดแทนงาน ได้ทุกด้านเลยล่ะ
SEO จำเป็นที่คนทำเว็บต้องรู้ด้วยมั๊ย?เมื่อหลายปีก่อนคงไม่จำเป็นเท่าไร แต่ในปัจจุบันต้องบอกว่าจำเป็นมั่กๆ ... โดยเฉพาะด้าน Onpage ... เราจะรู้สึกอย่างไร หากที่ทำงานให้เรามีหน้าที่ทำเว็บไซต์ และจ้างที่อื่นทำ SEO ให้ ... แทนที่จะบอกว่า ผมทำ SEO เป็นคับ แต่ว่าขอเงินเดือนเพิ่มให้ผมนะ ^0^ สิ่งนี้จะช่วยทำให้หน้าที่การงานและเงินเดือนก้าวหน้าได้ดีเลยคับ
นิสัยการทำงานที่ดี เมื่อเปนพนักงานใหม่ในองค์กรอันนี้เปนทริคเล็กน้อยคับที่จะทำให้เราทำงานได้อย่างมีความสุขและก้าวหน้าในหน้าที่การงานได้เป็นอย่างดี
1. เลือกบริษัท/องค์กร ที่มีผังงานในสายงานหลายตำแหน่งที่เกี่ยวข้องกับตำแหน่งที่เราสมัคร อนาคตจะได้มีตำแหน่งเหลือให้เราได้ก้าวหน้า ยามมีพนักงานหมุนเวียน
2. ในฐานะพนักงานใหม่ พูดเก่ง ชื่นชมคนอื่น ตั้งใจเรียนรู้ หมั่นพัฒนาตนเอง รู้บอกรู้ ไม่รู้บอกไม่รู้ ... ไม่แสดงอาการกึ่งกลาง(ว่าจะรู้หรือไม่รู้ดี) เพราะจะทำให้เจ้านายไม่มั่นใจ
3. ชวนเพื่อนร่วมงานไปกินข้าว หรือไปเที่ยวนอกเวลางาน

(ยิ่งที่ทำงานมีผู้สาวๆ นะ...^0^)
4. ไม่ทะเลาะกับคนในที่ทำงาน ไม่มองคนที่ภายนอก เข้าใจเพื่อนร่วมงานเสมอว่าเขาโมโหเรื่องอะไร
5. ถ้ามีงานให้เลือกเยอะ ให้เลือกงานที่เดินเดือนพอกินพอใช้พอมีเก็บ แต่มีเวลาว่างให้กับตัวเองมากๆ หรืองานที่ไม่จำเป็นต้องเข้าออฟฟิศทุกวัน จะทำให้เราไม่เครียดมีเวลาหนีเที่ยวได้เยอะ มีเวลาให้ครอบครัว

นานๆ แวะมาตั้งกระทู้พิมพ์ยาวๆ ทีนึง ... หวังว่าคงเป็นแนวทางที่มีประโยชน์สำหรับเพื่อนๆ บ้างไม่มากก็น้อยนะคับ