เดิมผมชอบเขียนโปรแกรมคอมพิวเตอร์ เพราะผมรู้สึกสนใจใคร่รู้ในการสั่งงานเครื่องจักรที่เรียกว่าคอมพิวเตอร์ โดยตอนแรกก็เรียนรู้การเขียนภาษาคอมพิวเตอร์แบบง่าย ๆ จนกระทั่งพัฒนาไปเรียนรู้การเขียนภาษาคอมพิวเตอร์ชั้นสูง
จากนั้นผมก็พบว่าการเขียนโปรแกรมคอมพิวเตอร์มันเริ่มไม่ใช่ เพราะถึงแม้ผมจะเรียนรู้ภาษาคอมพิวเตอร์ใด ๆ จนถ่องแท้แล้ว ผมก็มักพบความเปลี่ยนแปลง คือพบว่ามันมีคนที่ฉลาดกว่าผม เก่งกว่าผม มีความคิดสร้างสรรค์และความพยายามมากกว่าผม ได้คิดค้นและสร้างภาษาคอมพิวเตอร์ใหม่ ๆ ขึ้นมา แล้วภาษาคอมพิวเตอร์พวกนั้นมันก็ทั้งดีและทันสมัย จนกระทั่งมีคนใช้อย่างกว้างขวาง และทำให้ผมต้องเพียรพยายามไปเรียนรู้มันให้แตกฉานอยู่ร่ำไป
มันทำให้ผมรู้สึกว่าผมคิดอะไรเองไม่เป็น ต้องคอยตามคนอื่นไปเรื่อย ๆ อยู่แบบนั้น!!!
ผมเคยเบนเข็มไปให้ความสนใจกับ “ภาษาเครื่อง” แทน เพราะมันเป็นอะไรที่ทั้งดิบและเถื่อน มันเป็นการปฏิวัติตัวเองจากการให้ความสนใจในภาษาคอมพิวเตอร์ชั้นสูง ไปสู่ภาษาคอมพิวเตอร์ระดับล่างสุดที่ใกล้ชิดกับกลไกพื้นฐานของหน่วยประมวลผล
คือปรกติแล้วคนที่เรียนภาษาคอมพิวเตอร์ชั้นสูง มันก็แทบจะพูดคุยกับคนทั่วไปไม่รู้เรื่องอยู่แล้ว แต่นี่ผมกลับไปสนใจในภาษาคอมพิวเตอร์ระดับล่างสุด มันเลยทำให้นอกจากจะพูดคุยกับคนทั่วไปไม่รู้เรื่องแล้ว ยังทำให้พูดคุยกับคนเขียนโปรแกรมคอมพิวเตอร์ด้วยกันเองไม่รู้เรื่องเข้าไปใหญ่!!!
นอกจากนี้ผมก็พบว่า การเีรียนรู้ภาษาคอมพิวเตอร์ระดับล่างอย่างภาษาเครื่อง มันเป็นอะไรที่เฉพาะไม่ยืดหยุ่น เพราะภาษาคอมพิวเตอร์ระดับล่างมันถูกออกแบบมาเฉพาะสำหรับ “หน่วยประมวลผล” แต่ล่ะชนิด แต่ล่ะยี่ห้อ แต่ล่ะสถาปัตยกรรม ถึงแม้ว่าในขณะที่ผมให้ความสนใจเรียนรู้ภาษาคอมพิวเตอร์ระดับล่างนั้น เป็นยุคสมัยที่หน่วยประมวลผลของอินเทลในรุ่น X86 กำลังรุ่งเรื่องอยู่ และมีส่วนแบ่งตลาดสูง จนกระทั่งผมไม่ต้องเรียนรู้ภาษาคอมพิวเตอร์ระดับล่างสำหรับหน่วยประมวลผลอื่นก็ตาม แต่นั่นก็ไม่ใช่เรื่องจริงเสมอไปในยุคนี้ ยุคที่หน่วยประมวลผลสำหรับอุปกรณ์พกพากำลังกินส่วนแบ่งการตลาดมากขึ้นเรื่อย ๆ จนการเรียนรู้ภาษาคอมพิวเตอร์ระดับล่าง ไม่ได้ถูกผูกขาดอยู่กับอินเทลอีกต่อไป
ที่สำคัญก็คือ ต่อให้ผมแตกฉานในภาษาคอมพิวเตอร์ระดับล่าง มันก็ไม่ได้ช่วยให้ผมได้รับ ลาภ ยศ สรรเสริญ ใด ๆ เพราะเมืองไทยมันไม่มีห่วงโซ่อุปทานของอุตสาหกรรมหน่วยประมวลผล ดังนั้น คนที่แตกฉานในภาษาคอมพิวเตอร์ระดับล่าง จึงเป็นสิ่งไม่จำเป็น และที่สำคัญยิ่งขึ้นไปอีกก็คือผมไปผิดทาง ศึกษาผิดทาง เพราะการศึกษาภาษาคอมพิวเตอร์ระดับล่างมันเป็นบทบาทของผู้จบทางด้านวิศวกรรมคอมพิวเตอร์ ไม่ใช่ผู้จบทางด้านวิทยาการคอมพิวเตอร์เช่นผม
แล้ววิทยาการคอมพิวเตอร์มันคืออะไร?
หลังจากค้นหาคำตอบอยู่นาน ในที่สุดผมก็ได้คำตอบว่า วิทยาการคอมพิวเตอร์ คือ สาขาวิชาที่ศึกษาค้นคว้าทฤษฎีการคำนวณสำหรับคอมพิวเตอร์ และ ทฤษฎีการประมวลผลสารสนเทศ
งั้นก็แสดงว่าการเรียนภาษาคอมพิวเตอร์ ไม่ว่าจะเป็นชั้นสูงหรือชั้นล่าง ล้วนยังไม่ใช่แก่นแท้ของวิทยาการคอมพิวเตอร์ เพราะแก่นแท้ของวิทยาการคอมพิวเตอร์คือ “การศึกษาค้นคว้าทฤษฎีการคำนวณสำหรับคอมพิวเตอร์ และ ทฤษฎีการประมวลผลสารสนเทศ”
หลังจากผมได้คำตอบแล้ว มันทำให้ผมรู้สึกดีขึ้นมาก ๆ มันทำให้ผมรู้สึกว่าคำตอบนี้มันยิ่งใหญ่ เพราะถ้าผมเดินตามแนวทางการศึกษาค้นคว้าทฤษฎีการคำนวณสำหรับคอมพิวเตอร์ และ ทฤษฎีการประมวลผลสารสนเทศ มันย่อมแสดงว่าผมมีอิสระ สิ่งที่คิดค้นขึ้นมาจะมีอิสระ ไม่ล้าสมัยง่าย ๆ ไม่ยึดโยงต่อแกนเวลา และไม่ยึดติดกับภาษาคอมพิวเตอร์ใด ๆ
มันดีจริง ๆ