12:30 เดินทางถึงอ.พบพระ จ.ตาก แวะพักทานข้าวข้างทาง มีป้าย "ห้ามคุยเรื่องการเมืองที่นี่" ติดไว้หลายจุด .. ผมกินนมกับโยเกิร์ต เพราะรู้ว่ามื้อเย็นนี้มีอาหารเมืองลำๆ รออยู่ :-P
คลื่นมือถือกำลังใกล้จะหมด...
|
ต้นกล้า
UsableLabs อีเมลติดต่อ |
|
12:30 เดินทางถึงอ.พบพระ จ.ตาก แวะพักทานข้าวข้างทาง มีป้าย "ห้ามคุยเรื่องการเมืองที่นี่" ติดไว้หลายจุด .. ผมกินนมกับโยเกิร์ต เพราะรู้ว่ามื้อเย็นนี้มีอาหารเมืองลำๆ รออยู่ :-P คลื่นมือถือกำลังใกล้จะหมด... |
|
เริ่มแล้วกิจกรรมจิตอาสาโกทูโน ชาวคณะสายกทม. ออกเดินทางจากรังสิตเวลา 8.00 น. ประกอบด้วยรถตู้สองคัน คันหนึ่งคณะนักศึกษามศว.ล้วน ส่วนอีกคันประกอบด้วยผม พี่เอก พี่พิมพ์ พี่ฝน พี่เปี้ยง และพี่คนขับ (ลืมถามชื่อ) ... เมื่อเช้าเกือบตกรถ มารอพี่เอกที่ปั๊มเชลล์ตั้งแต่ 6 โมง แต่ดันบอกไปว่ารออยู่ปั๊มคาร์ลเท็กซ์ พี่เอกว่าถ้าเป็นเด็กกทม. จะให้นั่งรถตามไปให้เข็ด แหะๆ : ) |
|
|
|
วันนี้ไปหาหนังสือชื่อ "Introduction to Modern Information Retrieval" ในห้องสมุด ซึ่งเป็นหนังสือที่ถูกอ้างอิงในงานเขียนทางวิชาการมากเป็นอันดับ 1 เขียนตั้งแต่ปี 1983 ปีผมเกิดพอดี พบว่าอยู่ในซอกหลีบที่ไม่มีใครสนใจ ฝุ่นจับเขรอะ ต้องนับว่าเป็น "modern" ที่ไม่มีลุ้นเอาเสียเลย |
|
[KMarket]:[Django] 2 วันนี้ศึกษาและเขียนส่วน form ที่ได้หลงทางไปก่อนหน้านี้ ซึ่งได้ใช้ FormBuilder แล้วบังเอิญติดปัญหา จึงได้ลองดูโค้ดจากโปรเจ็ค Portals ของอ.ธวัชชัย และพบว่าเราหลงทาง ... พอจะรู้ว่ามี FormBuilder ให้ใช้ แต่ไม่คิดว่ามันจะสามารถสร้างจาก model ได้โดยตรง โค้ดของอาจารย์สร้างความงุนงงพอสมควร เพราะ function มันเรียกกันหลายต่อหลายทอด แถมยังมี Python Decorator ให้เล่นเพิ่มอีก กว่าจะจับจุดได้เล่นเอาเหนื่อยเหมือนกัน ... คิดว่าส่วน form และการจัดการกับ CRUD ไม่มีปัญหาแล้ว วันจันทร์จัดการกับส่วน R (read) และ CSS |
|
ระหว่างหาสถิติของ Gotoknow ให้ทีม content ก็พบบันทึกผิดปกติ (http://gotoknow.org/blog/penjun-g2/22806) ที่มีคนเข้าชมมากถึง 91,446 ครั้ง และยังมีคนเข้าชมเรื่อยๆ ไม่ขาดสาย .. น่าสงสัย |
|
ช่วงสองวันนี้ได้ต้อนรับโปรแกรมเมอร์ (เต็มเวลา) ใหม่ 2 คนพร้อมกัน วันนี้ได้ปูพื้นฐานลินุกซ์ให้น้องๆ แต่รายละเอียดมันเยอะมาก จับจุดไหนก็มีเรื่องที่สมควรจะอธิบาย ... การส่งผ่านความรู้จากรุ่นสู่รุ่นเป็นสิ่งที่สวยงาม แต่สงสัยให้ถามจะดีกว่า ลดการใช้พลังงาน จากนั้นมาดู Ruby on Rails กับน้อง พบว่า User.find(:all).size ทำงานนานมาก นานผิดปกติ แถมยังใช้ทรัพยากรจนหมดอีก สุดท้ายได้รู้ว่าต้องใช้ User.count(:all) ... ผลลัพธ์เหมือนกัน แต่กระบวนการต่างกัน (มหาศาล) จากนั้นมาเขียน Django ต่อ พบว่า Django template มีกรอบค่อนข้างมาก ตั้งใจจะออกแบบให้เป็น tableless แต่ยังทำไม่ได้ ... ชอบ View สบายๆ แบบ RoR มากกว่า |
|
วันนี้อ่านวิธีเขียน dissertation ชอบประโยคที่เขาบอกว่า There is no advantage to be gained by making something obscure. The scientific value is not enhanced by complicated words and prose, and to someone that knows the field, you don’t sound any more knowledgeable. If you look at some of the best journals, they are typically written in a very dry, boring, direct, and terse style. It tends to be the weaker journals where creative writing flourishes! อืมมม จริง ถ้าจะเอาคุณค่าทางวรรณศิลป์ อย่ามาอ่านวิทยานิพนธ์ ... แต่ประเภทน้ำท่วมทุ่งเพื่อเพิ่มจำนวนหน้านี่ก็มีถมไปนะครับ ผมก็เคยทำ หุหุ |
|
KnowledgeVolution: ศึกษาแนวทางการนำ Ruby on Rails 2.2 มาใช้กับ KV โดยเฉพาะฟีเจอร์ i18n edge rails ตัวล่าสุดของวันนี้ยังมีปัญหาหลายอย่าง เช่น มีปัญหากับ Ruby Gettext เท่าที่หาวิธีแก้ปัญหา เขาบอกว่าเป็นที่ตัว Ruby Gettext เอง ซึ่งจะต้อง patch หรือรอเวอร์ชันหน้าเลย RoR 2.2 ใช้ tag translate หรือ t และรับ parameter เป็น symbol สำหรับคำที่ต้องการแปล เช่น <%= t :symbol %> จากนั้นจึงไปสร้างคำแปลไว้ใน lib/locale/th.yml อีกที นอกจากนี้ยังไม่พบวิธีการ maintain ที่สะดวกอย่าง updatepo ของ gettext ณ ตอนนี้ คิดว่าเป็นปัญหาสำหรับโปรเจ็คเก่าที่ต้องการใช้ฟีเจอร์ i18n ของ RoR 2.2 |
|
Django Today: - จัดการ pagination เสร็จแล้ว สรุปว่าใช้วิธีเขียน inclusion tags เอาเอง โดยเอาโค้ดจาก Digg-style pagination in Django มาแก้ไขนิดหน่อย - plug-in django-pagination (คาดว่า)มีบั๊ก คือจะไม่แสดง pagination ขณะ page=1 - แก้ HTML, CSS ง่ายกว่าแก้โค้ด python จึงเลือกวิธีแรก - กว่าจะทำ pagination ได้ จำเป็นต้องศึกษา inclusion tags, generic views (object_list) ทำให้มีความเข้าใจ Django เพิ่มขึ้น |
|
พบปัญหาการใช้งาน Django 2 อย่าง 1. การติดตั้งโปรแกรมของ python ทำได้ไม่ง่ายนัก เมื่อเทียบกับ ruby-gems โปรแกรมบางตัวไม่สามารถติดตั้งผ่าน setup.py ได้ ต้องใช้วิธีเถื่อนคือทำ symbolic link ไปไว้ใน site-packages เอง 2. Pagination ที่มากับ Django core ใช้งานง่ายดี ง่ายกว่า will_paginate แต่การแสดงผลใน template ยังไม่ดี จำเป็นต้องเขียน custom tag เอง มีคนสร้าง pagination plug-in ไว้แล้ว สงสัยคงไม่ชอบตัวที่มากับ core เหมือนเรา - นอกจากนี้ยังพบวิธีที่น่าสนใจ เช่น Paginator Tag และ Digg-style pagination in Django อ่านดูแล้วยังไม่เข้าใจ ต้องไปศึกษา Inclusion Tag ก่อน |
|
ปัญหาการเขียน PHP แบบ MVC model ที่สร้างความรำคาญใจมาโดยตลอดคือเรื่อง context (การส่งค่าจาก Controller ไป View) จนถึงทุกวันนี้ก็ยังไม่เห็นวิธีที่เจ๋งๆ RoR ได้ @ (instance variable) ของ Ruby + ApplicationController ที่สามารถยัดค่าได้แบบครอบจักรวาล ส่วน Django มี Context Processor ที่เจ๋งไปอีกแบบ |
|
Healthy.in.th (Django)
|
|
[Django] ได้เรียนรู้ TEMPLATE_CONTEXT_PROCESSORS เพื่อจัดการกับตัวแปรที่จะส่งจาก view ไปหา template สาเหตุเพราะต้องการส่งผ่านตัวแปร request ให้ง่ายกว่าที่เป็นอยู่ ขอบคุณ อ.มะนาว (jittat) ครับ : ) |
|
MapJack มี "แม่ฮ่องสอน" กับ "ปาย" แล้ว .. หะรูหะราจริงๆ : ) |