ในความเป็นจริงแล้ว โปรแกรมเมอร์ไม่ได้มีหน้าที่เขียนซอฟต์แวร์เพียงอย่างเดียวครับ พวกเขาเหล่านั้นยังมีงานอื่น ๆ ที่เกี่ยวข้องซึ่งจำเป็นต้องทำด้วย แต่ส่วนใหญ่แล้วพวกเขาไม่ชอบทำกันซักเท่าไหร่ ผมเองเคยร่วมงานกับโปรแกรมเมอร์ทั้งไทย, จีน และอินเดียมากมายหลายคนครับ พบว่าพวกเขามีลักษณะของงานที่ไม่ชอบทำ (แต่จริง ๆ ต้องทำ) เหมือนกันเลย ซึ่งผมพอจะแจกแจงได้ครับ แต่ว่าไม่ได้เรียงความไม่ชอบจากมากไปหาน้อย หรือน้อยไปหามากนะ เพราะแต่ล่ะคนก็รู้สึกชอบไม่ชอบต่างกัน โดยมีสิ่งที่ไม่ชอบทำดังต่อไปนี้ โปรแกรมเมอร์ไม่ชอบ… ไม่ชอบ..เขียนโปรแกรมออก Report ไม่ชอบ..ทำคู่มืออธิบายขั้นตอนการใช้งานโปรแกรม ไม่ชอบ..ทำเอกสารอธิบายกลไกทางเทคนิคของโปรแกรม ไม่ชอบ..ซ่อมแซมหรือปรับปรุงโปรแกรมของโปรแกรมเมอร์คนอื่น
Category: Programming
พูดคุยแต่เรื่องสร้างซอฟต์แวร์
ช่วงนี้เห็นมีข่าวต้มตุ๋นเยอะเหลือเกินครับ สองสามวันนี้รายการเรื่องเล่าเช้านี้ทางช่องสาม ก็เอาเรื่องทำนองนี้มาออกอากาศเหมือนกัน ไอ้การหลอกให้เหยื่อเปิดเผยข้อมูลที่อ่อนไหว, ข้อมูลส่วนที่สำคัญ หรือข้อมูลทางการเงินอันเป็นความลับ ก็ยังมีอยู่เน้อะ ตราบได้ที่เรายังทำให้ทุก ๆ คนรู้เท่าทันกันไม่ได้ ผมคิดว่า geek คอมพิวเตอร์อย่างพวกเราคงไม่หลงกลไปกับ phishing นะครับ ถ้ามีนี่ก็ไม่รู้จะพูดยังไงเหมือนกัน!!! เท่าที่ผมสังเกตุดูก็พบว่า ในทางคอมพิวเตอร์และอินเตอร์เน็ตนั้น การพยายามจะหลอกให้เหยื่อเปิดเผยข้อมูลก็ยังใช้วิธีพื้น ๆ อยู่เหมือนเดิม โดยการส่งอีเมลล์ไปยังเหยื่อ แล้วให้เหยื่อกดตามลิงค์ซึ่งอยู่ในอีเมลล์ไปยังเว็บไซต์ที่สร้างล่อเอาไว้ เพื่อหลอกให้เหยื่อใส่ข้อมูลอันเป็นความลับ ที่วายร้ายเหล่านี้ต้องการ
คนที่เขียนบล็อกบางคนไม่ใช่คนที่จบคอมพิวเตอร์ คนที่จบคอมพิวเตอร์บางคนก็ไม่เขียนบล็อก ไม่ใช่ทุกคนที่เขียนบล็อกจะใช้ wordpress และก็ไม่ใช่ทุกคนที่ใช้ wordpress แล้วจะเขียน plugins เป็น หลาย ๆ คนเขียนบล็อกก็เพื่อพรรณาข้อความ แปะรูป แปะคลิปวีดีโอ วางลิงค์ แต่ก็มีหลาย ๆ คนที่อยากได้ขีดความสามารถในการควบคุมบล็อกมากกว่านั้น ผมเองก็อยากได้ขีดความสามารถที่มากกว่าเหมือนกัน แต่ผมก็ขี้เกียจไปเขียน plugins เพื่ออำนวยความสะดวกเฉพาะอย่าง ๆ ที่ผมอยากได้ งั้นทำไงดี???
เมื่อวานผมเอาคลิปวีดีโอมาทดสอบแปะในบล็อก คลิปวีดีโอที่ผมนำมาแสดงในบล็อก สามารถแสดงผลได้โดยอาศัย plugins ที่ชื่อว่า wordTube ไอ้เจ้า plugins ดังกล่าว ก็ไม่ได้ทำงานอย่างเดียวดาย มันทำงานตามลำพังไม่ได้ มันจำเป็นต้องเรียกใช้ FLV Player อีกทอดนึง FLV Player ถูกสร้างโดย Jeroen Wijering ในขณะที่ wordTube ถูกสร้างโดย Ruben Boelinger
สำหรับคนที่เรียนจบมาทางคอมพิวเตอร์นั้น ถ้าใครเคยเรียนวิชา Assembly มา คงจะจำหลักการพื้นฐานได้อย่างหนึ่ง นั่นก็คือ … Low Data Low Address High Data High Address ความหมายง่าย ๆ ถ้าแปลเป็นไทยก็ ข้อมูลต่ำ ๆ ก็ต้องอยู่ที่ต่ำ ๆ ส่วนข้อมูลสูง ๆ ก็ต้องอยู่ที่สูง
ถ้ามีภาษาคอมพิวเตอร์เกิดขึ้นมาใหม่หนึ่งภาษา แล้วภาษาคอมพิวเตอร์ดังกล่าวมีไวยากรณ์ที่ดีมาก มีตัว IDE ที่ดีสนับสนุน มีตัว Compiler ที่แข็งแกร่ง อีกทั้งยังเป็นภาษาที่สนับสนุนได้หลาย platform ภาษาคอมพิวเตอร์ดังกล่าวมีคำสั่งเป็นพัน ๆ คำสั่ง มี class เป็นร้อย ๆ class มีเอกสาร SDK ที่ใช้อธิบายไวยากรณ์ของทุกคำสั่งและทุก class อย่างละเอียดยิบ แต่ …
เดี๋ยวนี้ถ้าจะแบ่งประเภทของ SaaS จากเทคนิคการให้บริการ น่าจะแบ่งได้เป็นสองประเภท ประเภทแรก ผู้รับบริการต้องเข้าไปที่หน้าเว๊ปของผู้ให้บริการ SaaS ถึงจะเข้าถึงบริการได้ และประเภทสอง ผู้ให้บริการ SaaS จะปล่อย “ปรสิต” ของตนเอง ไปอยู่ตามหน้าเว๊ปต่าง ๆ เพื่อให้บริการทั้งแก่เจ้าของเว๊ปไซต์ และผู้เยี่ยมชม บล็อกของผมเองก็มี “ปรสิต” อยู่ 3 ตัว ซึ่งผมเองนั่นแหล่ะ ที่อนุญาติให้มันฝังตัวอยู่ภายในบล็อกของผมได้
ปรกติแล้วคนที่เขียนบล็อกจะบรรจุอะไรเข้าไปในบล็อกตัวเองบ้าง ถ้าไล่เรียงกันแบบหยาบ ๆ ก็คงจะเป็น … หนึ่ง ข้อความพรรณา, สอง รูปภาพ, สาม เสียง และ สี่ คลิปวีดีโอ แต่โดยส่วนใหญ่แล้วจะเน้นข้อความพรรณาและรูปภาพกันซะมากกว่า!!! สำหรับรูปภาพนั้น เราสามารถแสดงความเป็นเจ้าของได้ โดยการใช้ซอฟต์แวร์กราฟิก ทำการบันทึกลายน้ำจาง ๆ ผนึกไว้ในภาพ ต่อให้มีใครจิ๊กภาพเราไปใช้ ก็คงจะลบลายน้ำซึ่งผนึกอยู่ในภาพของเราออกยาก แต่สำหรับข้อความพรรณานั้น จะให้ใส่ลายน้ำแสดงความเป็นเจ้าของเข้าไปได้ยังไงล่ะเนี่ย???
ตอนที่เรียนหนังสืออยู่ ท่านอาจารย์สอนผมเอาไว้ว่า Don’t re-invent the wheel ซึ่งหมายความว่า จงอย่าประดิษฐ์ล้อ ถ้ามีคนประดิษฐ์มันไปแล้ว ผมเองก็เชื่อตามนั้น เชื่อว่าแทนที่เราจะไปประดิษฐ์ล้อ ซึ่งคนอื่นเขาประดิษฐ์ได้ไปแล้ว เราก็เปลี่ยนไปเอาหัวคิดว่าจะใช้ล้อให้เกิดประโยชน์สูงสุดยังไงดีกว่า เดี๋ยวนี้เราจะพบว่า ซอฟต์แวร์เจ๋ง ๆ ถูกสร้างขึ้นมากมายบนโลกนี้ แถมมีเยอะด้วยที่เป็น opensource คิดซะว่ามีคนเก่ง ๆ ทำงานให้เราครับ อย่าไปคิดว่าเราต้องทำทุกอย่างเองถึงจะถือว่าเราเก่งเลย ^o^ [tags]ซอฟต์แวร์,คอมพิวเตอร์,opensource[/tags]
โปรแกรมเมอร์ไม่ว่ากี่ยุคกี่สมัย ก็มีอุปนิสัยคล้าย ๆ กันนะครับ นั่นก็คือชอบสร้างประตูหลังให้กับระบบซอฟต์แวร์ที่ตนเองสร้างขึ้น (นัยว่าจะให้ตัวเองแอบเข้ามาได้ในภายหลัง) ผมเองในฐานะที่ต้องดูแลการนำซอฟต์แวร์ขึ้นระบบจริง ก็จำเป็นต้องมากลั่นกรองเรื่องนี้เหมือนกัน ซึ่งถ้าหากว่าประตูหลังดังกล่าวถูกกำหนดขึ้นโดยนโยบาย ก็คงไม่ว่าอะไรกันซักเท่าไหร่ แต่หากว่ากำหนดขึ้นโดยโปรแกรมเมอร์เองนี่สิ บางทีก็มีแย่เหมือนกัน จากประสบการณ์ที่เคยเจอนะครับ ก็พอสาธยายได้บ้างว่าประตูหลังที่เหล่าบรรดาโปรแกรมเมอร์ชอบทำเอาไว้นั้น มีอะไรบ้าง 1. ฝัง Login กับรหัสผ่าน ซึ่งสามารถทำให้มีศักดิ์และสิทธิ์เทียบเท่ากับ Administrator เอาไว้ในโค้ดโปรแกรมเลย 2. แอบสร้างจุดพิเศษอะไรไว้ที่หน้า Login