ทุกคนควรโค้ดได้ จริงหรือ?

เมื่อวานได้สนทนาธรรมกับมิตรสหายท่านหนึ่ง ท่านได้แชร์ว่า อไจล์โค้ชบางท่านเคยให้ความเห็นว่า “ทุกคนควรโค้ดได้ หรืออย่างน้อยก็ควรอ่านโค้ดได้” ผมฟังแล้วรู้สึกติดขัด แต่ก็ยังไม่ตกผลึกว่าทำไมจึงรู้สึกไม่ค่อยจะเห็นด้วยเท่าไร เช้านี้รุ้สึกแว้บขึ้นมา เลยเกิดอารมณ์อยากขีดเขียน ด้วยคอนเซ้ปต์ “ทำทันที” แล้วจะรออะไร ลงมือทำเลย

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

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

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

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

ในเชิงการพัฒนาซอฟแวร์ ก็เช่นเดียวกัน หลายท่านอาจะเกิดทันยุคที่เราต้องเข้าใจเรื่อง Memory address ของ hardware แต่ละชิ้น, หมายเลข interrupt, port number ฯลฯ เพื่อจะเขียนโปรแกรมให้ได้สักชุดหนึ่ง ทุกวันนี้สิ่งเหล่านี้ซ่อนอยู่ภายใต้ library ที่ง่าย ดูและอำนวยความสะดวกให้เรา ไม่ต้องคอยตรวจสอบสถานะของสิ่งเหล่านี้เอง เราสะดวกสบายขึ้นในการสร้างซอฟแวร์ จากที่เคยต้องใช้เวลาหลายสัปดาห์หรือหลายเดือน สิ่งเดียวกันอาจทำได้ในไม่กี่นาทีเท่านั้นเอง

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

Q.E.D.

Advertisements

ใส่ความเห็น

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s