เรื่องหนึ่งที่ผมพูดบ่อยมาก ก็คือ “พื้นฐาน (Basic) ไม่ง่าย” ซึ่งสวนกับความเข้าใจหรือความคิดโดยทั่วไปของคนส่วนมาก (เท่าที่รู้จัก) ว่า “Basic = ง่าย” และ “Advance = ยาก”
ทำไมเป็นงั้นล่ะ? พื้นฐานน่าจะเป็นเรื่องง่ายๆ ใครๆ ก็ต้องทำได้ ส่วนเรื่องระดับสูง น่าจะยากกว่า เพราะอย่างน้อยมันต้องต่อยอดจากพื้นฐานไม่ใช่เหรอ?
อันที่จริงแล้ว “พื้นฐาน” ที่ดี จะเป็น “การรู้” เกี่ยวกับ “อะไร ที่ไหน เมื่อไหร่ ทำไม” หรือ What, Where, When, Why มากกว่า “อย่างไร” หรือ How ซึ่ง “การรู้” นี้จะได้มาจาก “การลงมือทำ โดยรู้ว่าตัวเองทำอะไรอยู่” ไม่ใช่เพียงแค่ “ลงมือทำ เพื่อให้ได้ผลลัพธ์” นั่นคือ
“การลงมือทำ ในระดับพื้นฐานนั้น ผลลัพธ์ที่ได้และควรใส่ใจ คือ การรู้ว่าอะไร ที่ไหน เมื่อไหร่ และทำไม ไม่ต้องสนใจผลลัพธ์อย่างอื่นของมัน”
ยกตัวอย่างเช่น เรื่อง “Differential Calculus” ที่เป็นไม้เบื่อไม้เมากับนักเรียนนักศึกษาส่วนมาก หลายคนมองว่า d(x^2)/dx = 2x เป็นท่าพื้นฐานที่ใครๆ ก็ต้องทำได้ และแบบฝึกหัด d(2x^3)/dx จะสนใจว่าได้คำตอบเท่าไหร่ … ซึ่งเป็นการศึกษาพื้นฐานที่ผิดวิธีมากๆ
เพราะเรื่องพื้นฐานจริงๆ นั้น จะต้องสนใจ “นิยาม” ของ Differential Calculus ว่าเครื่องมือที่ใช้ในการมองอะไรอย่างไร เช่นเราจะมองผลของการเปลี่ยนแปลงของอะไรเมื่ออะไรเปลี่ยนแปลงไปบ้าง แม้ว่าการเปลี่ยนแปลงนั้นจะเล็กน้อยที่สุดเท่าที่เป็นไปได้ ก็จะมีผลอย่างไรบ้าง เป็นฟังก์ชั่นที่กระทำกับฟังก์ชั่นได้ผลลัพธ์เป็นฟังก์ชั่น ไม่ใช่กระทำกับค่า (Value) และอื่นๆ อีกมากมายไม่ใช่แค่นี้ และแบบฝึกหัด d(2x^3)/dx ก็ไม่ต้องสนใจว่ามันจะตอบว่า 6x^2 เท่ากับที่จะต้องสนใจว่า “เห็นหรือเปล่า ว่า 2x^3 เป็นฟังก์ชั่นของ x และ 6x^2 ก็เป็นฟังก์ชั่นของ x เมื่อดูการเปลี่ยนของฟังก์ชั่นของ x ตัวหนึ่ง (ฟังก์ชั่นเหตุ) ว่าเมื่อ x เปลี่ยนไปเล็กน้อยที่สุดเท่าที่มันเป็นไปได้ แล้วผลของมันจะเปลี่ยนแปลงไปยังไง (ฟังก์ชั่นผล)”
เห็นอะไรหรือเปล่าครับ นี่ผมยังพูดถึงพื้นฐานของ Differential Calculus ในเชิง What, Where, When, Why ไม่หมดเลยนะครับ ยังเหลืออีกเยอะ นี่คือ “เปลือก” ของพื้นฐานเท่านั้นเอง
ลองดูปริมาณบรรทัดที่ใช้ในคำอธิบาย ลองดูสิ่งที่อธิบายออกมาเป็นพื้นฐาน เทียบกับสิ่งที่หลายคนคิดว่าเป็นพื้นฐาน d(2x^3)/dx = 6x^2 ว่ามันต่างกันเยอะแค่ไหน
ประเด็นสำคัญก็คือ พื้นฐาน เป็นเรื่องของความเข้าใจ ที่จะต้องลึกขึ้นเรื่อยๆ ตามการกระทำจริง ที่ทำแล้วได้ความเข้าใจพื้นฐานเพิ่มเติม ซึ่งก็คือผลลัพธ์ในเชิงความเข้าใจ (อะไรคือ Calculus มันคือเครื่องมือที่ใช้อะไรเป็น Input และให้อะไรเป็น Output และเราจะใช้มันกับโลกรอบๆ ตัวได้ยังไง) ไม่ใช่ผลลัพธ์จากเทคนิค (6x^2)
ดังนั้น ในการศึกษาพื้นฐานหลายต่อหลายครั้ง จำเป็นที่จะต้องมี “ตัวอย่างเชิงเทคนิคที่ง่าย” หรือตัวอย่างที่ไม่เน้นการใช้ How เพราะตัวอย่างที่ง่ายและไม่ซับซ้อนนั้น จะทำให้เราชี้ถึงประเด็นของ What, Where, When, Why ได้ง่ายกว่าตัวอย่างที่ซับซ้อน ที่จะทำให้หลงไปในเทคนิคของวิธีการได้ง่าย
แต่อนิจจา …. สำหรับบ้านเรา ที่เน้นผลลัพธ์ที่จับต้องได้ (6x^2) มากยิ่งกว่าอะไรทั้งปวง รวมถึงผลลัพธ์เชิงความเข้าใจ (อะไรคือ Calculus ฯลฯ) นั้น การสนใจแต่ “ทำอย่างไร” กลายเป็นเพียงจุดเดียวที่สนใจ และหลายต่อหลายคนก็พยายามหาสูตรลัดหรือทางลัดไปยังคำตอบของวิธีการ สนใจแต่เรื่อง How และเทคนิคการได้มาซึ่งผลลัพธ์ที่จับต้องได้ … ดังนั้นจึงกลายเป็นว่า “พื้นฐานเป็นของง่าย” ไม่ใช่เพราะมันง่ายนะ แต่เป็นเพราะว่า “มันใช้ How ง่ายๆ”
คำพูดติดปากผมในช่วงหลังๆ ก็คือ
มันไม่มีอะไรยากหรอก ถ้าคุณคิดว่ามันยาก “ก็เพราะว่าคุณไม่มีพื้นฐานมากพอที่จะทำให้มันง่าย”
และ
สิ่งที่ยากที่สุด คือ “พื้นฐาน”
ยิ่งศึกษาอะไรที่มันระดับสูงขึ้นไปเท่าไหร่ โดยไม่ใช่แค่สักแต่จะทำให้มันได้ผลลัพธ์ที่จับต้องได้ แต่เพื่อให้ได้ผลที่ใหญ่กว่านั้น คือความเข้าใจถึงสิ่งนั้นๆ ที่ลึกยิ่งขึ้น มองเห็นมันมากขึ้น จับต้องมันได้ในมโนภาพและจินตนาการมากขึ้น มันจะยิ่งส่งผลกลับไปยังพื้นฐานมากยิ่งขึ้นเรื่อยๆ
ที่สำคัญมาก …
พื้นฐานที่ดี จะต้องชัดเจน ไม่คลุมเครือ และมักจะเรียบง่ายกว่าความซับซ้อนเชิงเทคนิคต่างๆ ที่เรามองเห็น
ทั้งนี้ผมจะต้องขอสร้างความชัดเจน 1 จุดตรงนี้ คือ
“เรียบง่าย = Simple” นะ ไม่ใช่ “ง่าย = Easy”
คำว่า “เรียบง่าย” เป็นคำๆ เดียว แยกไม่ได้ ไม่ใช่ Easy นะ คนละเรื่อง คนละเรื่อง และคนละเรื่อง … การจะมองหาและทำความเข้าใจอะไรให้เรียบง่าย เป็นเรื่องที่ยากมาก และต้องมีพื้นฐานที่ดีมาก ถึงจะฉีกหน้ากากของความซับซ้อนเชิงเทคนิค มองทะลุฉากหน้าทั้งหลายทั้งแหล่ลงไปได้
ถึงผมจะยก Calculus มาเป็นตัวอย่าง แต่ทุกอย่างมันก็เข้าข่ายแบบนี้ทั้งนั้น ไม่ว่าจะเป็นการศึกษาดนตรี การเขียนโปรแกรม การเล่นกีฬา การศึกษาวิทยาศาสตร์หรือปรัชญา การศึกษาสังคม ฯลฯ
ป.ล. ฝากไว้ตรงนี้นิดหน่อย: “หนังสือ iOS Application Development ฉบับ Remake Edition สำหรับ iOS 6 SDK ที่ผมกำลังเขียนอยู่นั้น เป็นหนังสือ ‘พื้นฐาน’ มากๆ และแน่นอนว่า ‘มันไม่ใช่หนังสือที่ง่าย’ (Know-How อาจจะง่าย แต่ Know What, Where, When, Why หนักมากแน่นอน)”