สิ้นสุดระบอบเผด็จการ การเรียนรู้ของสังคมไทย

วันนี้เป็นวันประชุมครั้งสุดท้ายของ คมช. ต่อเนื่องจากการโปรดเกล้าแต่งตั้งคณะรัฐมนตรีเมื่อวานนี้ เลยมาสรุปความคิดตัวเองไว้สักหน่อย

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

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

คนที่อ่านรัฐธรรมนูญขาดในยุคนั้นและวางตัวได้ถูกต้องคงมีแค่สองคน คือ ทักษิณกับบรรหาร คนแรกนั้นเสนอตัวเข้ามาอย่างถูกจังหวะ อีกคนนั้นรักษาตัวไว้จนรอดมาได้อย่างถูกจังหวะอีกเหมือนกัน

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

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

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

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

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

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

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

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

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

ผมหวังว่าการแก้รัฐธรรมนูญจะเสร็จลงโดยเร็ว โดยเฉพาะอย่างยิ่งในประเด็น สว. สรรหา และไม่ว่าเราไม่ชอบยังไงคงต้องยอมรับความจริงว่าเราต้องให้เวลาสังคมไทยเรียนรู้จักกับประชาธิปไตย และกระบวนการนี้ต้องใช้เวลาเพื่อเดินหน้าต่อไป

อ่านประวัติศาสตร์ฝรั่งเศสที่กว่าจะมีประชาธิปไตยที่เข้มแข็งนั้นใช้เวลานับร้อยปีแล้ว อาจจะเครียดเรื่องการเมืองไทยน้อยกว่าเดิม……

 

Plausible Deniability

พอดีวันนี้โปรแกรม TrueCrypt 5.0 ออกมา เลยนึกถึงเรื่องหนึ่งที่เคยนั่งคิดเอาไว้ คือเรื่องของการปฏิเสธความรับผิดชอบได้อย่างสมบูรณ์

แนะนำก่อนว่า TrueCrypt นั้นเป็นโปรแกรมเพื่อการเข้ารหัสดิสก์ ที่หากไม่มีรหัสที่ถูกต้องแล้ว แม้จะได้ตัวดิสก์ไป ก็ไม่สามรถอ่านข้อมูลใดๆ ขึ้นมาได้

โดยเรื่องของการเข้ารหัสข้อมูลทั้งหมดในดิสก์นั้น ทางฝั่งวินโดวส์เองก็มีนานานพอดูแล้ว แต่ว่า EFS (Encrypted File System) ของทางวินโดวส์นั้นมีเพื่อการรักษาความลับของข้อมูลเพียงเท่านั้น หากตามพรบ. แล้ว เจ้าหน้าที่ก็จะสามารถสั่งให้มีการถอดรหัสออกมาได้

แต่จะเกิดอะไรขึ้นถ้าเจ้าหน้าที่ ไม่สามารถพิสูจน์ได้ว่ามีข้อมูลในดิสก์อยู่จริง!!!!

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

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

แต่ที่น่าสนใจคือไม่มีใคร ที่ไม่มีรหัสผ่านที่สอง จะบอกได้เลยว่าไม่มีข้อมูลซ่อนอยู่ในพื้นที่ที่ดูเหมือนจะเต็มไปด้วยขยะนั้น

น่าสนใจมากกว่ามีใครพยายามทำวิจัยแก้เรื่องนี้กันบ้างแล้วรึยังนะ?

 

IDE

IDE ตัวสุดท้ายที่ผมได้ใช้งานอย่างจริงจังคือ Turbo Pascal สมัยเรียนมหาวิทยาลัยปีหนึ่ง และที่ใช้งานในยุคนั้นมีเหตุผลเดียวคือผมไม่รู้จักคอมไพล์เลอร์ว่ามันจะไปอยู่แยกจากเอดิตเตอร์ได้ยังไง (แล้วจะสั่งคอมไพล์ตรงไหน????)

ต่อมาเมื่อเข้าสู่โลกของ vim, gcc, และ make แล้ว ผมก็ไม่ได้กลับไปใช้ IDE ใดๆ อีกเลย ด้วยความที่คิดว่าพิมพ์มือเอาเร็วกว่าที่ต้องไปนั่งไล่เมนู

ทุกวันนี้ตัวช่วยในการเขียนโปรแกรมของผมจึงกลายเป็น jEdit ที่ต้องคอยเปิด header ต่างๆ เอาไว้เพื่อให้สามารถทำ autocomplete ได้

หลายคนที่เพิ่งเรียนเขียนโปรแกรมอาจจะไม่รู้ว่า โค้ดที่เราเขียนลงไปนั้น มักจะผ่านกระบวนการจากซอฟต์แวร์หลายต่อหลายตัว โดยทั่วไปเท่าที่นึกออกก็จะมี Pre-Processor, Compiler, Assembler, Linker, และ Loader

Pre-Processor นั้นถ้าใครเขียนภาษาซีก็เคยเจอคำสั่งที่อยู่หลังเครื่องหมาย # ทั้งหลาย เช่น define และ include คำสั่งเหล่านี้เป็นคำสั่งที่จะถูกประมวลผลโดยซอฟต์แวร์ตัวนี้ โดยมากแล้วมักเป็นการแทนที่ เช่นเอาตัวเลขไปแทนที่คำที่กำหนด หรือไม่ก็เอาโค้ดจากไฟล์หนึ่งไปวางไว้อีกไฟล์ (include)

Compiler หลายคนเข้าใจผิดว่าคอมไพล์เลอร์ให้ผลลัพธ์เป็นโปรแกรมที่รันได้เสมอ เช่น .exe ในวินโดวส์ แต่แท้จริงแล้วคอมไพล์เลอร์นั้นเป็นตัวแปลงจากภาษาที่เราใช้พัฒนาซอฟต์แวร์ มาเป็นภาษาสำหรับเครื่องซึ่งโดยทั่วไปแล้วก็เป็นภาษาแอสแซมบลี

Assembler ภาษาแอสแซมบลีนั้นอาจจะอ่านยากมาก แต่ที่จริงแล้วภาษาแอสแซมบลีนั้นเป็นภาษาระดับล่างสุดที่คนอาจจะอ่านเข้าใจได้ แต่เครื่องคอมพิวเตอร์ซึ่งเข้าใจแต่เลขฐานสองก็ยังไม่เข้าใจมันอยู่ดี ตัวแอสแซมเบลอนี้เองที่จะเข้ามาแปลงไฟล์เท็กที่เป็นภาษาแอสแซมบลีให้เป็นข้อมูลที่ซีพียูเข้าใจได้จริงๆ

Linker เวลาทำงานจริงซอฟต์แวร์จำนวนมากสามารถใช้ฟังก์ชั่นหลายๆ อย่างร่วมกันได้ อย่างเช่น printf ดังนั้นแล้วจึงเป็นเรื่องที่ดีที่จะแยกไฟล์เหล่านี้เอาไว้ต่างหาก ด้วยเหตุผลด้านพื้นที่ดิสก์ และเวลาที่มีการปรับปรุงในเรื่องของความปลอดภัยจะได้มีผลทีเดียวหลายๆ โปรแกรม ตัว Linker นี้จะรับอินพุตเป็นไฟล์จากแอสแซมเบลอ มีสองแบบคือแบบ static ที่ก่อนโปรแกรมจะทำงานได้ต้องทำการรวมไลบรารีเข้าไว้ในไฟล์ก่อน กับแบบ dynamic ที่เมื่อรันโปรแกรมแล้วจึงมีการเรียก dynamic-linker มาเชื่อมไลบราลีต่างๆ เข้าด้วยกันอีกที แบบหลังนี่หลายๆ คนน่าจะเคยเห็นไฟล์ dll ในวินโดวส์ นั่นหล่ะครับที่มันต้องเอามาเชื่อมกันตอนรัน

Loader เป็นโปรแกรมตัวสุดท้ายที่จะเอาโปรแกรมของเราไปวางไว้ในเมมโมรี ก่อนที่จะเริ่มป้อนโปรแกรมของเราเข้าซีพียู เราไม่ค่อยเห็นโปรแกรมตัวนี้เท่าใหร่เพราะว่ามันมักจะผูกกับระบบปฏิบัติการอย่างแนบแน่น

 

preparing migration

หลังๆ โพสน้อยลงเนื่องจากเหตุผลหลายๆ อย่าง แต่ตอนนี้กำลังเตรียมย้ายจาก wordpress ไปใช้ blogger แทนแล้วครับ

ด้วยความที่มันมีปัญหาหลายๆ อย่าง เดี๋ยวคงได้ไปเจอกันใน WordPress ต่อไป