เล่าเรื่องระบบภาระงานคณาจารย์

รายงานภาระงานคณาจารย์
รายงานภาระงานคณาจารย์

30 ส.ค.53 พัฒนาระบบกรอกข้อมูลภาระงานคณาจารย์ ที่แบ่งหมวดสำคัญไว้ 3 หมวดหลัก คือ การเรียนการสอน การวิจัย และด้านอื่น ซึ่งด้านอื่นแบ่งย่อยเป็น 6 หมวด สำหรับการประมวลผลที่สำคัญคือการ insert กับ update แต่พบปัญหาส่งระเบียนข้อมูลว่างเป็นระเบียนล่าสุดโดยไม่ทราบสาเหตุสำหรับบางคน จึงใช้วิธีเรียกข้อมูลจากที่เคยบันทึกไว้ใน log และกู้คืนตามเวลาที่ต้องการโดยเจ้าของประวัติ เมื่อใช้งานไปอีกระยะหนึ่งพบปัญหาใหม่คือ ไม่มีข้อมูลเข้าในหัวข้อสุดท้ายของสมาชิก และเป็นหัวข้อไม่สำคัญ ตรวจพบภายหลังว่าชื่อเขตข้อมูลผิด แต่โปรแกรมใช้การ include จึงไม่แสดงอาการผิดพลาดระหว่างตรวจสอบ
การแก้ปัญหา insert ระเบียนที่เป็นค่าว่างเข้า master file เกิดได้หลายกรณี  แต่วิธีหนึ่งที่น่าจะแก้ไขได้คือ การยกเลิกระบบ update แต่ใช้การ insert เข้า log แล้วเรียกระเบียนสุดท้ายมาเสมอ แทนการสั่ง update ไปยัง master file แต่ก็ไม่ได้ทำ เพราะเวลาจำกัด และจะปิดรับข้อมูลในวันรุ่งขึ้น คาดว่าหลังปิดระบบจะพัฒนาส่วนนี้ต่อไป  เพื่อป้องกันปัญหาการใช้งานระบบนี้ในอนาคต จึงใช้เวลาที่เหลือพัฒนาระบบรายงาน สำหรับติดตามการส่งข้อมูล แล้วรวบรวมเสนอผู้บริหารตามลำดับชั้นต่อไป
ทำให้ปัจจุบันมีโปรแกรมสำหรับระบบนี้ 5 โปรแกรม คือ ฟอร์มหลัก โปรแกรมเพิ่มข้อมูล โปรแกรมพิมพ์แบบฟอร์ม โปรแกรมแสดงสถานะ และโปรแกรมแสดงรายงาน ถ้ามีโอกาสจะทำ demo แสดงการวางแผน และพัฒนาโปรแกรมชุดนี้ครับ เพื่อให้นักศึกษาที่สนใจการพัฒนาโปรแกรมด้วย php กับ mysql ได้เรียนรู้อีกมุมหนึ่งของการพัฒนาระบบ

ระบบฐานข้อมูลข้อตกลงภาระงานคณาจารย์

23 ส.ค.53 ฟอร์มภาระงานรุ่นแรกใช้งานได้แล้ว พัฒนาผ่านโปรแกรม 3 ตัวหลัก ตามที่คุณธรณินทร์ ออกแบบไว้ คือ parakit.php parakit_add.php phptoword.php แล้วทำงานกับตารางข้อมูลอย่างน้อย 8 ตารางใหม่ มีเขตข้อมูลพื้นฐานประมาณ 2 ร้อยกว่าตัว โดยมี 1) parakit.php รับข้อมูลหรือนำข้อมูลที่เคยกรอกไว้ขึ้นมานำเสนอ โดยควบคุมด้วย javascript 2) phptoword.php ใช้รับค่าจากฟอร์มแปลงเป็น word สำหรับ print และเซ็นเสนอตามลำดับชั้น 3) parakit_add.php ถูก include ที่ส่วนหัวของ phptoword.php เพื่อเก็บข้อมูลเข้าระบบฐานข้อมูล ซึ่งข้อมูลที่ถูกจัดเก็บจะถูกดึงขึ้นมาแสดงใน parakit.php สำหรับการเข้าระบบครั้งต่อไป
งานที่ค้าง คือ แบบฟอร์มทั้งหมดเป็นรุ่นทดสอบ แบบฟอร์มล่าสุดผ่านการประชุมผู้บริหารวันนี้ และต้องปรับระบบฐานข้อมูล และโปรแกรมทั้งหมดใหม่ และนำเสนอวันต่อไปในที่ประชุมอาจารย์ สิ่งที่ต้องแก้ไขคือ  1) แก้ไขโครงสร้างแฟ้มในระบบฐานข้อมูลที่อนุมัติเย็นนี้ 2) แก้โปรแกรมที่มีการใช้ select, insert และ update ทั้งหมด 3) ปรับ javascript ให้ทำงานกับฟอร์มใหม่ที่จะพบในวันรุ่งขึ้น 4) แก้ปัญหาความเสถียรของระบบฐานข้อมูลที่ควรแก้ไขให้ทันการใช้งานจริง

แก้ปัญหาไม่แสดงชื่อนักศึกษาใน moodle

23 ส.ค.53 รับแจ้งจากหัวหน้าว่า รายชื่อนักศึกษาในระบบ e-learning ที่ใช้สคริปต์ของ Moodle หายไปหมด และงานนักศึกษาก็ยังตรวจไม่เรียบร้อย ผมจึงตั้งสมมติฐานว่าตารางหนึ่งในระบบฐานข้อมูลเสียอีกแล้ว เคยเกิดขึ้น และใช้โปรแกรม EMS  SQL Manager for MySQL เข้าไป Repair แต่ครั้งนี้ผมจะเปลี่ยนวิธี เพราะระบบฐานข้อมูล MySQL มีโปรแกรมที่สามารถซ่อมผ่าน Command Line จึงไม่ใช้โปรแกรมเสริมจากภายนอกอย่าง EMS

เข้า MySQL ผ่าน Command Line แล้ว use moodle; (แต่ไม่มีคำสั่งตรวจสอบตารางทั้งหมดอัตโนมัติ ถ้าจะเขียน php หรือ Shell script ก็จะยุ่งยากมากไป) จึงใช้ show tables; แล้วคัดลอกรายชื่อตารางไปไว้ใน notepad แล้วแทนที่สัญลักษณ์ | ด้วยสัญลักษณ์ , เนื่องจากคำสั่ง check table สามารถตรวจตารางพร้อมกันได้หลายตารางโดยใช้เครื่องหมาย , ขั้นระหว่างชื่อตาราง ผมจึงคัดลอกข้อมูลจาก notepad มาวางต่อคำสั่ง check table ก็พบตารางที่ error แบบ  corrupt มีจำนวน 2 ตาราง คือ  mdl_log และ mdl_user_students เมื่อสั่ง repair table mdl_user_students; ก็พบว่า moodle กลับมาแสดงรายชื่อนักศึกษาได้ตามปกติ
+ http://www.thaiall.com/mysql

ซีดีจันทรา กับข้าวไข่เจียว

เปรียบเทียบซีดีจันทรา (compare of chantra cd)
เปรียบเทียบซีดีจันทรา (compare of chantra cd)

22 ส.ค.53 ความรับรู้สำคัญกว่าความจริง หรือเปรียบเทียบว่า ทานข้าวไข่เจียวมาทั้งชีวิต เปลี่ยนไปทานข้าวไข่ลูกเขยสักมื้อจะเป็นไรไป แล้วกลับมาทานข้าวไข่เจียวกับชีวิตที่เหลือก็ยังได้ .. ดังนั้นการรับรู้ว่าซีดีจันทราคืออะไร เขามีอะไรดี รัฐบาลถึงแจกให้ทุกโรงเรียน และคนไทยที่สนใจนำไปใช้ จะมีค่าพอแก่การรับรู้หรือไม่

มีโปรแกรมมากมายในซีดีจันทรา แบ่งกลุ่มเป็น 8 กลุ่ม คือ 1) โปรแกรมด้านสำนักงาน * Dia * FreeMind * GanttProject * OpenOffice.org 3 * PDFCreator  2) โปรแกรมด้านอินเทอร์เน็ต * มอซิลลา ไฟร์ฟอกซ์ (Firefox) * มอซิลลา ทันเดอร์เบิร์ด (Thunderbird) * พิดจิน 3) โปรแกรมด้านกราฟิก * Blender * GIMP * Inkscape * Open Clip Art 4) โปรแกรมด้านมัลติมีเดีย * Avidemux * Audacity * VLC  5) โปรแกรมด้านความบันเทิง * LBreakout2 * Super Tux 6) โปรแกรมอรรถประโยชน์ * 7 Zip * InfraRecorder * Notepad++ * PuTTY * Subversion 7) โปรแกรมด้านพัฒนาเว็บ * Drupal * FileZilla * Joomla * Kompozer * SMF * XAMPP 8) โปรแกรมด้านการศึกษา * Celestia * Moodle * Tux Paint * Tux Typing 2 * TuxMath
+ http://www.thaiall.com/article/chantra.htm
+ http://www.chantra.in.th/download

ประสบการณ์ติดตั้ง Linuxsis 6.0.1 เพิ่มต่อ windows

18 ส.ค.53 วิธีติดตั้ง Linuxsis อีก 1 ตัว เริ่มจากหลังบูทเครื่องด้วย CD Linuxsis 6.0.1 ก็กด Enter เพื่อเข้าสู่การ Boot 1) เลือกแบ่งพาร์ทิชันในดิสก์ ของผมเลือกแบบแบ่งเอง เพราะเคยมี windows อยู่แล้ว และเคยแบ่งแบบไม่ใช้ให้กับบาง partition ไว้แล้ว 2) พบว่า #1 ไพรมารีแบ่ง 40 GB:ntfs ที่เหลือเป็นลอจิคัล ประกอบด้วย #5 แบ่ง 20 GB:ntfs แล้ว #6 แบ่ง 19 GB:ext3 แล้ว #7 500 MB:swap เลือก #6 แล้ว double click 2.1)กำหนดใช้เป็นระบบแฟ้ม journaling ext3 2.2) สั่ง ฟอร์แมต #6 2.3) ตำแหน่งเมานท์เป็น / 2.4) แล้วกดสิ้นสุดการตั้งค่าพาร์ทิชัน แล้วกดต่อไป แล้วกดเลือก สิ้นสุดการแบ่งพาร์ทิชันและเขียนลงดิสก์ แล้วกดต่อไป 3) พบว่าระบบจะ format #6 แล้วเลือก ใช้ แล้วกดต่อไป 4) ติดตั้งระบบพื้นฐาน รอประมาณ 5 นาที 5) เลือก linux-image-2.6.18-6-686 แล้วรออีก 5 นาที 6) เครื่องของผม reboot แล้วพบ grub 7) เลือกเข้า windows พบว่า ทุกระบบทำงานได้ปกติ 8) บูทใหม่แล้วเข้า linux รุ่นนี้ชื่อ Capricon ด้วย u:root p:123456 9) เข้าห้อง /boot/grub แก้ menu.lst เปลี่ยนจาก 0 เป็น 3 เพราะใน grub ผมต้องการกำหนดให้ boot windows เป็น default

การเข้าระบบด้วย root หรือ admin ในครั้งแรกใช้รหัสผ่านคือ 123456 แต่ถ้าเข้า root จะพบกับ Shell Prompt แต่ถ้าใช้ admin จะพบ xwindows แล้วเข้า Firstboot screen แต่ผมก็ใส่รหัสเป็น 123456 ตัวเดิม เพราะเกรงว่าจะลืม รวมทั้งรหัสผ่านของ LDAP แล้วเข้าสู่ WebAdminTools เมื่อ Login ด้วย admin เข้าไปแล้วก็จะเลือก connect type เป็น DHCP เพื่อรับ ip จาก router เพราะ default static คือ 192.168.212.1 หลังจาก restart network ก็ได้ ip จาก router เป็น 192.168.1.3 แล้วปิดเครื่องด้วย shutdown -h 1

+ http://www.opentle.org/th/downloadcat/view/59
+ ftp://ftp.opentle.org/pub/linuxSIS/5.5/manual/sis5.5.5_manual.pdf

ขั้นตอน Reinstall Plawan Central Log

15 ส.ค.53 ไม่ได้ใช้ระบบของ Plawan มาหนึ่งปีเต็ม และลืมรหัสผ่านทั้งของ root และ user สำหรับเข้าจัดการระบบลีนุกซ์ แม้พยายาม recover root account ผ่าน single mode ด้วยการกด e แล้วแก้ในบรรทัด kernel ก็ยังเข้าไม่ได้ เพราะสุดท้ายก็ถามรหัสผ่าน root อยู่เช่นเดิม ตัดสินใจลง plawan ใหม่ทับตัวเดิม
ขั้นตอนการติดตั้ง Plawan 8.04 kernel 2.6.24-19 (Beta2 404 MB) ทับ Plawan ตัวเดิมที่เคยติดตั้งไปแล้ว (หลัก download โปรแกรมจาก plawan.com มาเขียนลงซีดี) มีดังนี้ 1) Boot ด้วย CD แล้วเข้า Start Plawan in Graphic Mode 2) โปรดอดใจรอนานกว่า 10 นาที และพบตัวเลือก ซึ่งมีทั้งหมด 7 Step ซึ่งมีรายละเอียดดังนี้ Step 1. เลือกภาษา English Step 2. เลือกที่อยู่ Bangkok Step 3. เลือกแป้นพิมพ์  Thailand Step 4. แบ่งพื้นที่ Manual เพราะเคยแบ่งไว้แล้ว  (/dev/sda1:ntfs:42GB /dev/sda5:ntfs:80GB /dev/sda6:ntfs:35GB /dev/sda7:ext3:20GB /dev/sda8:swap:2GB) Step 5. กำหนดชื่อ ผมใส่คำว่า plawan ทุกช่องครับ กันลืม Step 6. Migrate อะไรบ้างจาก sda1 .. ผมไม่เลือกเลย Step 7. Ready to Install หมายความว่า ถ้ากดปุ่ม Install ก็จะเริ่มติดตั้งโปรแกรม แล้วผลการติดตั้งจะทำลายข้อมูลใน sda7 และ sda8  (ซึ่งผมต้องการให้ทำลายของเดิมใน 2 partition นั้น) โดยใช้เวลาอีกประมาณครึ่งชั่วโมง .. แล้วพบกับ installation is complete พร้อมกับ restart .. หลัง restart ไม่พบปัญหาใดกับ OS ตัวอื่นที่เคยลงในเครื่อง
ผลการ reinstall คือ บูทเครื่องแล้วพบ grub ถามเข้า Plawan 8.04 หรือ Windows NT/2000/XP เมื่อเข้า windows ก็จะถามว่าเข้า windows ตัวใด เพราะเครื่องผมลง windows หลายรุ่น แต่ลง linux รุ่นเดียวคือ plawan สำหรับเครื่องนี้ .. เนื่องจากผมใช้ windows มากกว่า linux จึงต้องไปแก้ไขให้เปิดขึ้นมาแล้วเข้า Windows เป็นค่า Default
ดำเนินการมีขั้นตอนดังนี้ Desktop Right Click พบเมนูแล้วเลือก Application, Shells, Bash พบ $ แล้วพิมพ์ cd /boot/grub แล้ว sudo chmod 777 menu.lst แล้ว vi menu.lst แล้วเปลี่ยน default 0 เป็น default 3 แล้ว sudo chmod 644 menu.lst แล้ว exit แล้ว restart
ถ้าเป็นรหัสผ่านของ linuxsis ใช้ user=admin password=123456 แต่ถ้าเป็น plawan ผู้ใช้เป็นผู้กำหนดในขณะติดตั้ง ถ้าลืมก็ต้องหาทางเข้าผ่านประตูหลังให้ได้ แต่พบว่าประตูทั้งหมดถูกปิด ผมจึงต้องเลือกลื้อบ้านทิ้งครับ แล้วสร้างใหม่ทับของเดิมไปเลย .. เล่าสู่กันฟัง

รายงานความพยายามหยุดยิงเมลจาก server

14 ส.ค.53 สังเกตอาการครึ่งวันที่ผ่านมา ผลเป็นที่น่าพอใจกรณีหยุดยิงออก คือ 1) ผลการรับ และส่งระหว่าง hotmail.com และ gmail.com ได้ระดับหนึ่ง หลังย้าย smtp ของ webmail กลับมาที่เครื่อง it เพราะพบว่าเครื่อง cat ปฏิเสธให้บริการ อาจเป็นเพราะเรายิงมากไป จนเขากรองไม่ไหวเรื่อง black list (ไว้ว่ากันภาคต่อไป) สรุปว่าการติดต่อกับ gmail มีปัญหาทั้งส่งไม่ออกและรับไม่ได้ ส่วน hotmail พบว่าส่งไปหา hotmail แล้วหายไป แต่รับจาก hotmail ได้ เครื่องบริการรับส่งในเครือข่ายได้ รับจาก hotmail และที่อื่นได้ ยกเว้นที่ gmail เป็นต้น (ปัญหา hotmail กับ gmail มีแนวทางแก้ไข จะว่ากันภาำคต่อไป ถ้าเครื่องเราสะอาดแล้ว ย่อมแก้ไขได้) 2) การแก้ไขอาการส่งอีเมลจากเครื่องบริการเป็น junk ไปหาคนอื่น หรือที่เรียกว่าถูกใช้ยิงเมล ซึ่งเป็นปัญหาที่พยายามแก้มา 2 สัปดาห์หายไปแล้ว เพราะใช้ spamassassin จับ postfix ใน master.cf สำหรับขาใน คือ unix 3) การยิงผ่าน squirrelmail ถูกหยุดได้แล้ว โดยใช้ deny from 41.0.0.0/32 กับ virtual host:ssl พบว่าไม่มีการยิงผ่าน compose.php อีก ใช้วิธีการ block ผ่าน apache แทนการ upgrade application 4) สรุปว่าอาจเป็นการพักรบ .. จึงต้อง monitor กันต่อไป ว่า log ตัวใดจะแสดงอาการผิดปกติให้เห็นอีก เพราะที่สังเกตพบ ได้มาจาก maillog และ access_log และ ps -aux และ /var/mail เป็นหลัก
+ http://www.thaiall.com/isinthai

แปลงอักษรจีนลงเว็บเพจ

chinese to unicode number character references
chinese to unicode number character references

10 ส.ค.53 มีโอกาสเกี่ยวข้องกับชาวจีนทางอ้อม ทำให้ต้องใช้ตัวอักษรจีนในเว็บเพจ แต่การปรับภาษาในเว็บเพจทุกหน้าคงไม่สะดวก จึงเลือกการใช้รหัสตัวเลขแทน  (NCRs = Unicode numerical character references) เพราะเป็นรหัสที่ browser จะแปลงและแสดงผลได้อย่างถูกต้อง โดยภาษาที่ทดสอบแปลงคือ Chinese characters และรวมถึง Japanese hiragana, katakana, and kanji; tonal Hanyu Pinyin; and Cyrillic script โดยอาศัยเว็บไซต์ pinyin.info ช่วยในการแปลงตัวอักษร
+ http://pinyin.info/tools/converter/chars2uninumbers.html

การเขียนเว็บเพจ 3 หน้าด้วย DOS

8 ส.ค.53 จัดทำวีดีโอคลิ๊ปสาธิตการเขียนเว็บเพจ 3 หน้าด้วย DOS Command มีขั้นตอนดังนี้ 1) เว็บเพจแรกชื่อ a.htm มีคำว่า ant และเชื่อมโยงไปยัง b.htm 2) เว็บเพจที่สองชื่อ b.htm มีคำว่า boy และเชื่อมโยงไปยัง c.htm 3) เว็บเพจที่สามชื่อ c.htm มีคำว่า cat และเชื่อมโยงกลับมายัง a.htm 4) เปิดเว็บเพจ a.htm ด้วย explorer ซึ่งบทเรียนนี้ไปเกี่ยวข้องกับการใช้คำสั่งดอส การเขียนแบทไฟล์ การเขียนเว็บเพจ และความรู้เบื้องต้นเกี่ยวกับคอมพิวเตอร์
+ http://www.youtube.com/watch?v=LXRUblip8P4
+ http://www.thaiall.com/assembly/internalcmd.htm

ข่าวคืบหน้าการปรับระบบสารสนเทศระดับบุคคล

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