เริ่มเขียนโปรแกรมใน Leopard

ตอนนี้เริ่มเขียนโปรแกรม หรือว่าลงโน่นลงนี่ใน Leopard แล้ว ตามที่ตั้งใจไว้ แล้วจะเขียนลงใน

ThaiMacDev.com

เรื่อยๆ นะครับ ตอนนี้ก็เพิ่งจะมีเรื่องประสบการณ์การแก้ปัญหา libGL.dylib แต่ว่าถ้ามีเรื่องใหม่ๆ (โดยเฉพาะการเล่นกับ API ด้วยตัวเอง และการรีวิว Xcode กับ Interface Builder ใหม่) ก็จะเขียนลงในนั้นเช่นกัน

จับภาพหน้าต่างใน Leopard

หลายคนที่เคยใช้ command+shift+4+space ในการจับภาพหน้าต่างใน Mac OS X คงจะชอบแฮะ เพราะว่าตอนนี้มี shadow รอบหน้าต่างแล้ว ไม่ต้องไปทำเอง

(ไอ้กรอบขาวๆ รอบๆ นี่ไม่เกี่ยวนะ อันนั้น HTML table code กับ theme ของ blog นี้ ส่วนที่ ​Leopard เพิ่มเนี่ย เฉพาะตรงเงา)แต่ว่าก็แล้วแต่งานนะ ถ้าต้องการเรียบๆ อาจจะไม่ชอบ ต้องไปหาวิธีทำอย่างอื่น แต่ว่าสำหรับผม OK เพราะว่ามันทำให้เวลาเราเอารูปหน้าต่างลงในบทความ ในหนังสือ หรือว่าใน Web แล้วมันดู distinguishable มากขึ้นเยอะ

Leopard Notes

ลง Leopard ไปเมื่อคืน เพิ่งจะเสร็จตอนนี้ และนี่คือ impression คร่าวๆ และ installation notes กับตัวเอง (ไม่เรียงลำดับ คิดอะไรได้ก่อนเขียนก่อน)

  • Bash เป็น version 3.2.17(1) ไม่ต้องหาของใหม่มาลงแล้ว ไอ้นี่เป็นสิ่งแรกที่ check เลย ตอนที่เข้าไปใน iStudio ที่ใกล้บ้านที่สุด (ปิ่นเกล้า) … ผมคงเป็นไม่กี่คนในโลกที่เมื่อลองเล่น Leopard สิ่งแรก ที่ทำคือหา Terminal มาดู version ของ Bash
  • อันดับต่อไปก็ uname -a ได้ข้อสรุปว่า Darwin 9.0.0
  • และแล้ว Terminal มี tab ซะที
  • พอเริ่มลง อืมมม Installer แปลกตาไปแฮะ แต่ว่าก็ไม่ได้มีผลอะไรกับการลงง่ายลงยาก เพียงแต่บริเวณ active window มันมากขึ้น
  • มี Ruby 1.8.6 และ Rails 1.2.3 แต่ว่าก็ต้องลง MySQL เพิ่มเข้าไปเพราะว่ามันไม่มีให้ ก็เอา binary ของ Tiger มาใช้ได้เลย (warning: ยังไม่ได้ทดสอบ!) แต่ว่า Preference Pane มันจะไม่ work ต้องใช้งานผ่าน command line อย่างเดียว แล้วก็อีกอย่างก็ต้องแก้ symbolic link นิดหน่อย ตามนี้ อ่อ อ่าน troubleshooting นี่ด้วยนะ
  • มี PHP 5.2.4
  • Apache เป็น 2.2.6
  • Mail.app เร็วมาก เมื่อเทียบกับของเก่า แต่ว่ายังไม่ได้ลองใช้ ​RSS
  • Fink ประกาศรองรับ Leopard (สมควร) แต่ว่าตอนนี้ยังไม่มีอะไร ก็ bootstrap ใหม่ หรือว่า selfupdate (ทำที่ ม. ไม่ได้) แต่ว่าตอนนี้ก็ยังไม่มีอะไร และเนื่องจากที่ ม. ใช้ MacPorts ไม่ได้ ด้วยเหตุผลเดียวกัน ก็เลยต้องลงโน่นนี่ที่จำเป็นจาก source เอาเอง
  • Menu bar ใหม่ ทำให้เรื่องมากกับการเลือก background มากขึ้น เพราะว่าจะต้องเลือกให้ menu bar มันสวย อ่านออกง่าย ฯลฯ ด้วย เฮ้อ เป็นภาระนะเนี่ย แต่ว่ามันก็สวยดีอ่ะนะ
  • ลองทำ Dock เป็น 2D แล้ว กลายเป็นรำคาญเส้นขาวๆ ที่อยู่ตรงขอบมันแฮะ สรุปว่าก็เลยใช้มันแบบนี้แหละ
  • ยังไม่ได้ลองเล่น Xcode ใหม่ กับ Core Animation ทั้งๆ ที่เป็น priority หลัก (ตอนนี้ไล่ compile พวก lib ที่จำเป็นกับงานอื่นๆ ก่อน จะต้องทำไว้ให้พวกผู้ช่วยใน lab ด้วย)
  • Preference ใหม่หลายตัวเลย งงๆ กับตัว Network นะ มันทำให้ต้อง click มากขึ้นโดยใช่เหตุหรือเปล่าก็ไม่รู้ แต่ว่าก็มองเห็นภาพรวมดีขึ้นนะ สรุปว่าสำหรับผู้ใช้ทั่วไปที่ไม่ได้ยุ่งกับ advanced settings มากนักคงจะดี
  • ในที่สุดสีมันก็ Unified เสียที ปุ่มบนบาร์ก็ดูเนียนขึ้นเป็นส่วนมาก ความรู้สึกที่ว่ามันจะวิสต๊าวิสต้า น้อยลงไปเยอะ
  • Spaces ใช้งานร่วมกับ Desktop Manager 0.5.4r1 ได้เนียนดี ซึ่งเป็น plus มากสำหรับผม ที่ชินการตั้ง key combination ของ Desktop Manager และชอบที่เห็น visual ของ desktop ทั้งหมดที่ตัวเองมีอยู่บน Menu bar
  • QuickSilver ใช้ได้ไม่มีปัญหาอะไร (จริงๆ สำหรับ version นี้ Apple ประกาศเลยว่าจะให้ Spotlight เป็น Application Launcher ได้ด้วย … ก็ลองใช้ดูแล้วก็ OK นะ แต่ว่ายังชอบ QuickSilver มากกว่า มันฉลาดกว่ากับการพิมพ์ผิด)
  • แต่ว่า Spotlight รุ่นนี้ก็ on-steriod พอควรนะ ใช้เป็นเครื่องคิดเลขได้ด้วย
  • ชอบตอน unzip/untar.gz ไฟล์นะ มันจะขึ้นเป็น folder มาวางซ้อนกับ file ที่เรา unzip ไม่ต้องไปหาที่ไหนไกล แต่ว่าข้อเสียมันคือ ถ้ามันเป็นคนละชื่อกัน มันก็จะเป็นเหมือนเดิม คือไปวางเป็น folder ต่อตรงปลาย ซึ่งตรงนี้ทำให้เกิดพฤติกรรมที่ไม่ consistent เท่าไหร่
  • โปรแกรมส่วนมากที่ใช้ทำงานประจำก็ใช้ได้นะ แต่ว่า ecto (โปรแกรมที่ผมใช้เขียน blog) กลับมีปัญหาซะงั้นน่ะ ก็เลยต้องเอา version 3 มาลง ดีนะที่ serial เก่าที่เราซื้อมามันใช้ได้ ไม่งั้นต้องเสียตังค์ซื้อใหม่อีก (แต่ว่าพอตัวจริงออกมาจะต้องเสียตังค์ upgrade หรือเปล่าไม่รู้ ตอนนี้มัน beta อยู่)
  • Finder screams! เจ๋งโคตร เร็วมาก Cover flow เร็วและเนียนมาก และมีประโยชน์จริงสำหรับไฟล์ที่ใช้ visual แบ่งแยกได้ง่ายๆ
  • QuickLook ก็เป็น killer อีกอย่างหนึ่งที่ทำให้ Finder รุ่นนี้มัน killer มากขึ้นตามไปด้วย
  • ส่วนที่กังขากันมานาน ก็คือ มันช่วยให้ดู source code ได้หรือเปล่า คำตอบคือ ได้ แต่ไม่มีประโยชน์ เพราะว่าพี่ท่านเล่นให้ดูทั้งหน้า(แทนที่จะเป็นหัวไฟล์) ทำให้ตัวอักษรมันเล็กมาก….. และไม่มี syntax highlighting สงสัยต้องแงะ SDK ดูว่ามันทำ QuickLook plugin ได้หรือเปล่า (ถ้าเอา sense มาพูด ก็คงได้)
  • อ่อ สิ่งที่เคยเป็นคอขวดที่งี่เง่ามากใน Finder รุ่นก่อน คือการทำงานกับ network ก็ไม่เจออีกแล้วในรุ่นนี้ เนียนมาก

ส่วนที่ยังไม่ได้ทำ แต่ว่าอยู่ใน list ก็คือ

  • ลง Qt, ImageMagick, RMagick ซะ คิดว่าคงต้องลงจาก source หมด สบายใจดี
  • เล่น Finder มากกว่านี้ ขุดหา limitation มันมากกว่านี้หน่อย ตอนนี้ก็มีเรื่องไม่ค่อยจะชอบใจมันบ้างล่ะนะ แต่ว่าไม่รู้ว่าเป็นเพราะเรายัง set มันไม่เป็นเองมากกว่าหรือเปล่า
  • เล่นกับ Developer Tools
  • ทดสอบ App ที่มันซีเรียสกว่านี้
  • ทดสอบ Time Machine และ potential ที่จะเอามาประยุกต์ใช้กับงานหลายๆ แบบว่ามันเหมาะสม/ไม่เหมาะสมยังไง
  • ทดสอบ OpenGL และ Core Animation
  • หา Usability flaws (ท่าทางจะว่างงาน)
  • เตรียมทำ dualGeek podcast ตอนพิเศษเรื่อง Leopard โดยเฉพาะ

คงแค่นี้ก่อนล่ะครับ มีอะไรจะมา post เพิ่มเติม

Smallest Turing Machine Found & Proved!

Alex Smith นักศึกษาปริญญาตรีจากมหาวิทยาลัย Birmingham ได้พิสูจน์ว่า Turing Machine ที่มี 2 states และ 3 colors (symbols) เป็น Universal Turing Machine (UTM) ซึ่งเป็น UTM ที่เล็กที่สุดที่จะเป็นไปได้

การพิสูจน์นี้ทำให้ Alex ได้เงินรางวัล $25,000 จาก Wolfram Research Prize และเป็นการสิ้นสุดการหา UTM ที่เล็กที่สุดที่จะเป็นไปได้ (มีการค้นหากันมาครึ่งศตวรรษแล้ว) และมันเป็น fact ที่รู้กันว่า ไม่มี Turing Machine ที่มี 2 states, 2 symbols จะเป็น Universal ได้

ซึ่งการพิสูจน์นี้เป็น insight ที่อาจจะส่งผลให้มีการเปลี่ยนแปลงบางอย่างในโลกของ computing เช่นอาจจะนำไปสู่การสร้าง computing machine ที่ระดับโมเลกุล เป็นต้น ซึ่ง comment นี้สามารถอ่านได้จาก blog ของ Stephen Wolfram เอง

นอกเรื่องนะ…..

ผมรู้สึกเฉยๆ และค่อนไปทางไม่ค่อยจะชอบ Stephen Wolfram เท่าไหร่ เพราะว่าอะไรหลายๆ อย่าง ตอนแรกก็ admire นะ แต่ว่าพอหนังสือ A New Kind of Science (หนังสือ online full version จากเจ้าของเอง) ออกมานี่ค่อนข้างจะ negative เพราะว่า claim ผลงานชาวบ้านเป็นของตัวเองเยอะเหลือเกิน โดยเฉพาะการพิสูจน์ว่า Cellular Automata กฏ 110 ซึ่งเทียบเท่ากับ Turing Machine มี 2 states, 5 symbols ว่าเป็น UTM ที่ Wolfram claim ว่าเป็นของตัวเอง ทั้งที่จริงๆ คนที่พิสูจน์ได้จริงๆ คือ Matthew Cook ซึ่งทำงานเป็นผู้ช่วยวิจัยให้กับ Wolfram

เรื่อง Cook กับ Wolfram และการพิสูจน์กฏ 110 นี่ควรหาอ่านได้ยาวๆ จากหลายๆ ที่บน internet แต่ว่าเพราะ Wolfram ไล่ฟ้องชาวบ้านเค้าทั่วไปหมดที่พูดเรื่องนี้ทำให้อาจจะหาไม่ค่อยจะได้

อ่อ ลืมไป ใครคิดจะอ่าน A New Kind of Science นี่ พยายามลองหา review ของนักวิทยาศาสตร์ที่เป็น critiques มาลองอ่านดูก่อนก็ดีนะครับ เพราะว่ามันมีอะไรหลายๆ อย่างที่ อืมมมมม ไม่ค่อยจะดีเท่าไหร่ แต่ว่าคนที่ไม่รู้ deep technical หรือว่า deep theoretical understanding มาก่อนเลย อาจจะได้รับความรู้อะไรหลายอย่างผิดๆ ไปเยอะพอควร เช่น

  • review ของ Lawrence Gray อันนี้เจ๋งมาก
  • หรือของ Cosma Shalizi
  • หรือว่า ใน slashdot แต่ว่าเลือกเชื่อ comment/review ใน slashdot เอาเองนะ …

จริงๆ มีเยอะกว่านี้เยอะ แต่ว่าไม่ได้เก็บ link ไว้เลย ตอนนี้ขี้เกียจหา แต่คิดว่าหาไม่ยาก

อีกอย่าง หนังสือเล่มนั้น dismissed prior knowledge แทบจะทั้งหมดเลย ทั้งๆ ที่อะไรหลายๆ อย่างมีคนค้นพบมาก่อนแล้ว และเป็น known facts เสียด้วยซ้ำ โดยเฉพาะเรื่องที่ระบบที่มีกฏพื้นฐานที่เรียบง่าย สามารถมีพฤติกรรมที่ซับซ้อนยากยิ่งต่อความเข้าใจ และเรื่องอื่นๆ ฯลฯ อ่อ ใช่ หนังสือเล่มนั้น (edition ที่ผมมี) ไม่มี reference เลยนะครับ และ Wolfram พูดถึงทุกอย่างใน passive tone มาก

A New Kind of Science (NKS) ก็เป็น interesting read ครับ แต่ว่าอย่าไปเชื่อมันมากนัก เพราะว่าหลายๆ อย่างในนั้นก็ไม่ได้ significant ขนาดที่คนเขียนหนังสือพยายามจะให้มันเป็น

แต่ว่าการที่พิสูจน์ได้ว่า TM ขนาด 2 states, 3 symbols เป็น UTM นี่ significant ครับ โดยไม่เกี่ยวกับ Stephen Wolfram :-P และครั้งนี้ผมเห็นด้วยและยินดีที่ Wolfram ให้ credit ที่ถูกต้องกับคนที่ค้นพบความจริงข้อนี้ครับ

อ่าน PDF ของการพิสูจน์ ของ Alex Smith ครับ

[update 1]: เพิ่ม list ของ review หนังสือ A New Kind of Science

ภาษาโปรเกรียน

โอ๊ย อ่านแล้วขำสุดๆ กลิ้งไปกลิ้งมา

สุดยอดมาก ยกนิ้วโป้งให้สองนิ้วเลย

สรุปให้นิด ว่าทำเหมือนกับว่าภาษาโปรแกรมแต่ละภาษาเป็นคน แล้วเอาข้อดีจริงๆ หรือว่า hype หรือว่า buzz ของตัวเองมาข่มกันไปมา แถมมีการแขวะกันแบบตลกร้ายมากๆ ด้วย ชอบตรงนี้น่ะ

Ruby: Dude! I just wrote a full working clone of Google while you were giving your riveting little speech there! (โอ๊ย ระหว่างที่พวกเอ็งโม้กันอยู่เนี่ย ข้าเขียน Google clone เสร็จแล้วนะเฟ้ย)

Moderator: Oh, bravo, Ruby! I’d like to see that. Where is it deployed? (เจ๋งมากรูบี้! ขอดูได้มั้ย เอาไปติดตั้งไว้ที่ไหนเหรอ?)

Ruby: Umm…. (เอ่อ…..)

จริงๆ ขำทั้งเรื่องน่ะแหละ สุดๆ

2D Dock กับ Leopard

ผมไม่ค่อยจะถูกชะตากับ new 3D Dock ของ Mac OS X 10.5 Leopard ตั้งแต่มันถูกประกาศแล้ว เพราะว่านอกจาก eye-candy แล้วไม่เห็นมันจะช่วยให้ usability มันดีขึ้นตรงไหน เผลอๆ จะทำให้แย่ลงด้วยซ้ำ เพราะว่ามันทำให้ Dock มัน high-profile ขึ้น มันมีความรู้สึก in-your-face มากขึ้น มัน visible มากขึ้น ซึ่งพวกนี้มักจะไม่ค่อยดีต่อ usability เท่าไหร่ (ในกรณีนี้)

จากข่าวล่าสุด สำหรับ build 9A581 (ที่น่าจะเป็น Gold-master) รู้สึกว่า Dock มันจะกลายเป็น 2D เมื่อวางไว้ด้านข้างของจอ (macrumors.com) ก็ลองเทียบกันดูกับ build เก่าๆ ที่ยังเป็น 3D อยู่แล้วกัน ว่ามันดูดีกว่ากันแค่ไหน




(ภาพจาก macrumors.com และ rogueamoeba.com ตามลำดับ)

ไม่พอ มีคนเจอ ว่าถ้าต้องการจะเอา 3D ออกแม้ว่าจะอยู่ข้างล่าง ก็ยังคงทำได้โดยอาศัย trick เก่าๆ บน Terminal แล้วก็พวก defaults write [option] ทั้งหลายแหล่ที่มีมาตั้งแต่โบราณ (สมัย NeXT โน่น)

defaults write com.apple.dock no-glass -boolean YES

จากนั้นก็ restart Dock ใหม่ (อาจจะ killall Dock ไปเลยก็ได้) แล้วก็จะได้ 2D Dock ที่ “เกือบ” เหมือนเดิม


(ภาพจาก lime.quickshareit.com)

ซึ่งจริงๆ แล้วก็ยัง high-profile อยู่ดี เทียบกับ Dock ตัวปัจจุบัน เพราะว่ามันยังมีขอบ มี texture มีอะไรมากเกินไป แต่ว่าก็ยังน่าจะดีกว่า 3D Dock ล่ะนะ

Kinokuniya ที่ Central World, และ Historical Dynamics

คราวก่อนเขียนถึง Kinokuniya ที่ Siam Paragon ไปแล้ว พร้อมกับความตะลึงว่ามันมีหนังสือ popular science และหนังสือแนววิชาการหนักๆ หรือเข้าทำนอง hard-core text มากมาย …. ผมก็ได้มีเวลาแวะไป Kinokuniya ที่ Central World โซน Isetan ซึ่งเป็นสาขาที่ผมไปบ่อยที่สุด (เนื่องจากไปดู magazine ญี่ปุ่น)

ผมเคยเห็นหนังสือคณิตศาสตร์หรือฟิสิกส์ของสำนักพิมพ์ Dover (ซึ่งได้ชื่อว่า หนังสือเนื้อหาดี คุณภาพเล่มห่วย ปกไม่สวย อ่านยาก แต่เจ๋ง และราคาถูกโคตร เทียบกับสำนักพิมพ์อื่น) วางขายอยู่บ้าง เล่มนึงก็ไม่แพงเท่าไหร่ ราคาประมาณ 600-1000 บาท ซึ่งนับว่าถูกมากสำหรับหนังสือที่มี content แบบนั้น

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

“ลด 50-70%”

จะรอช้าไปทำไม ก็รีบรื้อกองสิครับ ก็เลยได้มาเกือบ 10 เล่ม ในราคาเล่มละ 200 บาทเท่านั้น (ของ Dover นะ ผมไม่ค่อยได้ดูหนังสืออื่นๆ) ถูกสุดๆ ที่ซื้อมาก็เช่น

  • Information Theory and Statistics
  • The Theory of Groups
  • Probability, Statistics and Truth

อะไรทำนองนี้ แต่ว่ามีเล่มหนึ่งซึ่งผมเห็นว่าน่าสนใจเป็นพิเศษ คือ


Historical Dynamics: Why States Rise and Fall

จะว่าไป ถ้าจะมีเรื่องใดเรื่องหนึ่งที่เปลี่ยนชีวิตผมไปมากมายมหาศาล ก็คือวันที่ผมเข้าไปนั่งฟัง lecture เรื่อง Chaos Theory ของอาจารย์ James B. Cole ที่ ม. Tsukuba น่ะแหละ แกสอนเรื่อง Dynamical system กับ Chaos แล้วเราก็เริ่มสงสัยว่าเรื่องนี้เป็ฯ metaphor ที่เอาไว้อธิบาย “ประวัติศาสตร์” ได้หรือเปล่า นั่นก็คือ ในทางหนึ่งประวัติศาสตร์เป็นบันทึกของโลก ซึ่งก็เป็น Dynamical system ที่เราอาจจะไม่มีวันหา model ที่ดีที่สุดของมันได้ เป็น Dynamical system ที่ compute ตัวเองอยู่ตลอดเวลา … แล้วการที่เหตุการณ์หนึ่งๆ ในประวัติศาสตร์ที่มันเกิดขึ้น มันส่งผลมากมายกับปัจจุบันที่เรารู้จักกัน นั่นคือ มันควรจะ sensitive กับ initial condition หรือว่าการเปลี่ยนแปลงหนึ่งๆ แม้ว่าจะเล็กแค่ไหน ก็จะกลายเป็น frozen accident หรือรอยแผลเป็นที่ไม่มีวันลบออกได้ของระบบ และผลที่เกิดจากมันก็จะใหญ่ขึ้นเรื่อยๆ ตามกาลเวลา (เข้าทำนอง Butterfly Effect) …. ผมก็เลยเข้าไปคุยกับอาจารย์ Cole หลัง class และเนื่องจากคุยกันถูกคอดี แกเลยแนะนำให้ผมไปศึกษาเรื่อง Chaos Theory เพิ่มเติม และผมก็ไล่ไปเรื่อยๆ จากเรื่องนั้นน่ะแหละ จนถึงเรื่องของ Complex system theory, Computation theory, Information theory ฯลฯ และสุดท้าย Quantum computation ….. จะว่าไป เรื่องที่ผมรู้และสนใจ ส่วนมากจะมีจุดเริ่มมาจากจุดนั้นทั้งนั้นแหละ นี่แหละ Frozen accident ในชีวิตผม

เรื่องนั้นช่างมัน แต่ว่านี่ทำให้ผมหยิบหนังสือเล่มนั้นขึ้นมาจากกองโดยไม่ลังเล ราคามันก็แค่ 600 เท่านั้นเอง แบบนี้ไม่รีบซื้อไม่ได้แล้ว

จริงๆ ก็ยังมีหนังสือในกองนั้นที่อยากได้อยู่อีกหลายเล่ม ทั้งที่อยากจะอ่านจริงๆ หรือว่าอยากได้เพราะเก็บไว้ก่อนเถอะน่า อาจจะได้ใช้หรือว่าได้อ่านก็ได้ อะไรทำนองนั้น เพราะว่าราคาแบบนี้ กับหนังสือระดับนี้ หายากมากๆ

ใครผ่านก็ลองไปแวะดูกันนะครับ

IDS 110 จาก UC Berkeley

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

ตอนนี้มี podcast ที่ฟังติดมากเลยอันนึง คือ podcast ของวิชา IDS 110: Introduction to Computers โดยอาจารย์ Americ Azevedo (รู้สึกตอนนี้จะเปลี่ยนรหัสเป็น E 110 แล้ว ชื่อวิชาเหมือนเดิม) ที่ผมไป subscribe มาจาก iTunes-U

เนื้อหาในวิชาก็ไม่ได้มีอะไรที่ผมยังไม่รู้มากมายนักหรอก แต่ว่าผมรู้เป็นแบบ tacit knowledge มากไป คือ พูดออกมาเป็นประเด็นๆ ให้เห็นชัดเจน และหนักแน่นไม่ได้แบบอาจารย์ Azevedo และส่วนมากผมจะเป็นคนเริ่มพูดไม่ได้ คือ ต้องเห็นอะไรบางอย่าง ต้องมีคนทำอะไรบางอย่าง แล้วพอดีมันไปตรงกับสิ่งที่เรารู้เป็น tacit knowledge ถึงจะพูดออกมาได้ …

เนื้อหาก็เป็นเรื่องของ networks, information, society และมีเรื่องของการศึกษา เรื่องประเด็นต่างๆ ที่เทคโนโลยีทางคอมพิวเตอร์และสารสนเทศได้เปลี่ยนโลกไป มีการเชิญคนหลายคนที่น่าสนใจมาพูด topics ของวิชาค่อนข้างกว้างและได้ overview ที่ broad เอาเรื่อง

ผมฟังของตั้งแต่ Spring 06, Fall 06, Spring 07 เห็นว่าเนื้อหาไม่ค่อยจะซ้ำกัน ซึ่งเป็นเรื่องดี ส่วน topics ที่ฟังแล้วคิดว่าได้อะไรเป็นพิเศษก็คงจะเป็น

  • Re-engineering Education via Socratic Cultureware อันนี้ใครที่เคยฟัง/อ่าน/ดูผมพูดเรื่องการศึกษาน่าจะชอบมาก เพราะว่ามีหลายประเด็นที่จี้ใจดำ
  • Ivan Tam – Open Source Production in Non-Software Environment
  • Time, Technology, and Disappearing Students
  • Life in the Media Caves
  • We Are the Media; They Are the Media
  • Jaron Lanier – Computers and Culture ชอบเรื่องนี้มากเหมือนกัน
  • Existential Crisis of the Internet: Dangers and Opportunities
  • Pervasive Digital Media and the Postmodern World
  • Time, Money, and Love in the Age of Technology
  • Seth M. Andrzejewski: Principles of Usability
  • Plato’s Cave & Nature of Data, Information, Knowledge, and Wisdom

จริงๆ ก็ชอบเกือบหมดน่ะแหละ เนื้อหา overview ดีและไม่ได้ลงไปใน details มาก แต่ว่าฟังแล้วต้องคิด คิด คิด และคิดตามจริงๆ อ่อ จรริงๆ แล้วมันมี webcast ด้วย แต่ว่าไม่เคยเข้าไปดู เพราะว่า net ที่ ม. ในส่วนที่ใช้มันค่อนข้างห่วย แล้วก็การดู video มันไม่ค่อยจะ passive เหมือนกับฟัง podcast/เพลง น่ะ

ฟัง podcast วิชานี้แล้วชักอยากจะกลับไปนั่งเรียนแฮะ ……. อยากกลับไปเรียน ป.ตรี ใหม่ด้วยซ้ำไป

[update 1]: เพิ่ม topic เข้าไปอีกอัน

Pattern ของการ post blog

ดูลักษณะการ post blog ของตัวเองแล้ว เดือนนี้มีอะไรประหลาดๆ แฮะ

เคยบ่นตัวเองอยู่บ่อยๆ ว่า post blog ไม่ค่อยจะสม่ำเสมอเท่าไหร่ บางเดือนนี่ยังกะกำลังนั่งจ้อง sparse matrix (matrix ที่เต็มไปด้วย 0 และแทบไม่มีข้อมูลอื่นอยู่เลย) ไม่มีผิด… แต่ว่าเดือนนี้ประหลาดแฮะ เพราะว่ามันเอียงข้างหนึ่งอย่างเห็นได้ชัด อืมมม ผมไม่มีการ post ในวันศุกร์ เสาร์ และอาทิตย์เลยหรือนี่

นี่มันหมายความว่ายังไงกัน?

ท่าทางคงจะต้องลองมานั่งหา governing function กับการ post blog ของตัวเองซะล่ะมั้ง แล้วก็ลองหา distribution function ของมันซะหน่อย บางทีอาจจะบอกได้มั้ง ว่าปกติแล้วจะมี pattern ของความขี้เกียจที่ช่วงไหนของสัปดาห์ ของเดือน ของปี บ้าง…. ไอ้นี่ก็ maniac ไปหน่อยละมั้ง

แต่ว่าบางที การ post blog น้อยในบางช่วงนี่มันแปลว่า ช่วงนั้นยุ่งเรื่องอื่นหรือเปล่าหว่า? (นั่น เข้าใจทำตัวให้ดูดีอีกนะคนเรา …. ไม่ post ก็คือไม่ post ไม่เห็นต้องมาพยายามหาข้ออ้างในการไม่ post เลยนี่นา)

[update 1]: สุดท้ายถ้านั่งหา pattern ไปๆ มาๆ ก็ไม่พ้นบอกว่า มันอยู่ในบริเวณ Complex น่ะแหละ (ตรงที่อยู่ระหว่าง order/periodic กับ chaos หรือว่าเห็นได้ง่ายๆ จาก class IV ของ Cellular Automata) :-P

สับสน … ชื่อภาษาโปรแกรม?

ช่วงนี้ตรวจข้อสอบเด็กเยอะแยะ ตาลาย ไม่พอ ยังไม่วายเข้าไปดูตาม webboard หลายที่ …​ ก็เจอเรื่องที่คาใจมาน้านนาน คือ มักที่จะเจอคนเรียก IDE หรือ Editor ปนกับชื่อภาษาโปรแกรม โดยเฉพพาะเมื่อตัว IDE นั้นๆ มันดันมีชื่อภาษาปนอยู่ด้วย เช่น

  • ภาษา Turbo C
  • ภาษา Dev-C++
  • ภาษา Visual C++
  • ภาษา RadRails
  • ยังมีอีก ฯลฯ

ซึ่งอ่านไปอ่านมาก็ตลกดี คิดในบางแง่มันก็อาจจะ make sense เนื่องจาก

  • ภาษาหลายภาษา (เช่น C, C++) เป็นเพียงแค่ข้อตกลง ข้อกำหนด เท่านั้น บางอย่างก็จะเป็น vendor-specific โดยเฉพาะในจุดที่ไม่นิยามในตัวข้อกำหนดมาตรฐานจริงๆ (undefined by standard) ซึ่งจะทำให้ภาษาเหล่านี้แตกต่างกันไปตาม vendor
  • Vendor หลายเจ้า โดยเฉพาะ Microsoft มักจะมีปัญหาประจำแหละ เรื่องนี้ คือไม่ได้ implement C++ ของตัวเองตามมาตรฐานของ C++ เสียทีเดียว อะไรหลายๆ อย่างที่มันถูกต้องตาม standard C++ ก็ไม่ถูกใน C++ ของ Microsoft
  • บางทีมันก็เป็นเรื่องของ library ด้วย คือ vendor หลายเจ้ามักจะ implement อะไรหลายๆ อย่างเพิ่มเข้าไปจากที่จำเป็นต้องมีอยู่แล้วใน standard library (ถ้าเป็น C ล่ะก็ ตัวยอดนิยมคงจะไม่พ้น itoa() ใน stdlib.h กระมัง)

แต่ว่ายังไงๆ ก็ตาม เราก็น่าจะเรียกตามชื่อ vendor ของมันมากกว่าจะเรียกตามชื่อ IDE ไม่ชื่อหรือ ไอ้พวก “ภาษา ​Turbo C” นี่คงไม่เท่าไหร่ เพราะว่า implementation ของ C ตามแบบนั้น คงจะไม่มีคนทำ IDE ขี้นมาใช้นอกจาก Turbo C เอง (แต่ว่าก็ไม่แน่ เพราะว่าจริงๆ ก็สามารถทำ modern IDE ขึ้นมาเรียกการทำงานของส่วน compiler ใน Turbo C ก็ได้)จริงๆ แล้ว Borland ก็มี compiler สำหรับ Windows นะ ให้ใช้งานได้ฟรีๆ นะ แต่ว่าเป็น command line ซึ่งจำเป็นต้องหา IDE มาครอบใช้งานเอง (เช่น JFE หรือ CPad ผมเคยใช้แต่ตัวหลัง ตัวแรกลองแล้วไม่ค่อยชอบ) โดยสำหรับตัว compiler ตัวนี้ผมเข้าใจว่าตัวนี้เป็น compiler ตัวเดียวกับที่ใช้ใน C++ Builder แต่ว่าไม่แน่ใจ เพราะว่าไม่มี C++ Builder แต่ว่านั่นแหละ ถ้าเป็นตัวเดียวกันจริง ก็จะมีคนเรียกมันว่า “ภาษา C++ Builder” แทนที่จะเป็น “ภาษา C++ ของ Borland” (Borland’s implementation of C++)เช่นเดียวกับการเรียก “ภาษา Visual C++” แทนการเรียก “ภาษา C++ ของ Microsoft” (Microsoft’s implementation of C++)แต่ว่าเจ้า “ภาษา Dev-C++” นี่สิ เรื่องใหญ่ ทั้งๆ ที่เรียกใช้งาน GNU GCC ซึ่งเป็น GNU’s implementation of C/C++ นะ … Misleading มากเลย