Ask Blognone: เทคโนโลยีไหนที่น้องๆ น่าใช้ทำโปรเจคจบ 3.0
ถึงเทศกาลเปิดเทอมกันอีกครั้ง ปีนี้ก็ได้เวลาที่น้องๆ ปีสี่ตามมหาวิทยาลัยต่างๆ จะหาหัวข้อทำโปรเจคอีกครั้ง และคงเป็นเทศกาลประจำปีที่ผมจะมาถามไอเดียของชาว Blognone ว่ามีอะไรจะเสนอแนะน้องๆ กันบ้างหรือไม่
ก่อนหน้านี้เราเคยเสนอไปแล้วสองครั้ง (1,2) ครั้งนี้ผมเสนอต่างออกไป คือให้เราเสนอ "เครื่องมือ" มาพร้อมๆ กับ "หัวข้อ" โปรเจคกัน
ผมเสนอเช่นนี้เพราะพบความจริงว่านักศึกษาระดับปริญญาตรีนั้นมีจำนวนมากที่ไม่สามารถ จับคู่ระหว่าง "ปัญหา" และ "เครื่องมือ" ที่จะใช้แก้ปัญหาได้ โดยมากแล้วน้องๆ มักจะมีความสามารถในเครื่องมือบางตัว เช่น C/C++, C#/.NET, Java, VHDL, PHP, SQL, วงจรไฟฟ้า ฯลฯ แต่หลายครั้งที่เราให้ปัญหาไปตรงๆ เช่น ระบบตัดคำไทย, multi-touch ด้วย WiiMote ฯลฯ หลายคนกลับมีคำถามว่าแล้วจะได้ใช้เทคโนโลยีตัวไหน ทำอย่างไร ฯลฯ
ดังนั้นเรามาช่วยกันยกตัวอย่างให้กับน้องๆ ว่าปัญหาเช่นไรเราจึงเลือกเทคโนโลยีใด
ตัวอย่าง
neizod
#183184
จิ๊กมาจากเพื่อนสนิทที่เรียนวิศวะฯ อิอิ
ปัญหา: สร้างเครื่องมือเก็บและส่งข้อมูลสภาพอากาศในตัวเมืองเชียงใหม่เข้า Server หลักผ่านระบบไร้สาย
เทคโนโลยี/เครื่องมือ: ZigBee ฯลฯ (จำไม่ได้ เดี๋ยวไปถามเพื่อนมาให้)
แนวคิด: ต้องการลดต้นทุนอุปกรณ์ให้มากที่สุด และสร้างให้มีขนาดเล็กกระทัดรัด, ฝึกการออกแบบ PCB และการใช้ Micro Controller
ปัญหา: สร้างเครื่องมือเก็บและส่งข้อมูลสภาพอากาศในตัวเมืองเชียงใหม่เข้า Server หลักผ่านระบบไร้สาย
เทคโนโลยี/เครื่องมือ: ZigBee ฯลฯ (จำไม่ได้ เดี๋ยวไปถามเพื่อนมาให้)
แนวคิด: ต้องการลดต้นทุนอุปกรณ์ให้มากที่สุด และสร้างให้มีขนาดเล็กกระทัดรัด, ฝึกการออกแบบ PCB และการใช้ Micro Controller
l
แนะนำ 1 หัวข้อครับ ถ้าใครเรียน CS ผมแนะนำให้ลองทำ โปรแกรมคล้ายๆ PhpAdmin แต่เราเอามาสร้าง NoSqlAdmin แทนครับ อาจจะใช้ php ก็ได้ หรืออาจจะทำ C# เป็น GUI กราฟฟิกให้จัดการข้อมูลได้ง่าย
น้องๆหลายคนอาจจะสงสัยว่า NoSQL คืออะไรลอง Google ดูนะครับ แล้วจะรู้ว่าน่าสนใจ
ตัวที่น่าสนใจก็จะมี Cassandra กับ TokyoTyrant
เรื่องนี้สามารถทำเป็นวิชา Seminar ได้ด้วยนะครับ เชื่อว่าอาจารย์ครึ่งนึงก็ยังไม่รู้จักเรื่องพวกนี้
ถ้าเรียนสาย IT ผมแนะนำว่า ใช้ PHP นี่แหละ แต่ทำ Mobile Web พวกระบบส่งงานหรือราคาสินค้า การหาสินค้า แต่ทำเป็นให้เหมาะใช้สำหรับพวก โทรศัพท์มือถือดีกว่า เน้นตลาด mobile
อีกเรื่องที่คิดออกก็ทำ Plug-in Firefox หรือพวก chrome ซะเลย ผมคิดออกสองสามเรื่อง ก็จะเป็นพวก Color Blind Filter คือเปลี่ยนสีเว็บทั้งหมดให้อยู่ในสีที่คนตาบอดสีอ่านได้ ผมว่าส่งประกวดได้สบายๆเลยนะ ไม่ยากด้วย
หรือจะทำ โปรแกรมที่สามารถเปลี่ยน CSS ของเว็บได้ทั้งเว็บ พวก Web Customize คืออย่างเราเห็นเว็บ sanook เป็นสีแดง เราอยากให้ทั้งเว็บเปลี่ยนเป็นสีอื่น หรือรูปแบบอื่นได้ก็คงจะดี
นึกออกเดี๋ยวมาบอกใหม่ ไปแล้วจ้า
way_javaboom
เป็นเหมือน life log เสร็จแล้วก็ export เพื่อเอาไปเขียน blog หรืออื่นๆ
cs16panitw
- หัวข้อปัญหา - การแก้ปัญหาโปรแกรมเชิงเส้นโดยใช้ความสามารถของโปรเซสเซอร์ประมวลผลกราฟิก
- อธิบายปัญหาคร่าวๆ - เป็นการพัฒนาซอฟต์แวร์ประเภท optimization solver ให้สามารถแก้ปัญหาโปรแกรมเชิงเส้น (linear programming) โดยใช้สมรรถนะของโปรเซสเซอร์ประมวลผลกราฟิก (หรือ GPU)
- เครื่องมือในการพัฒนา - CUDA (แนะนำว่าควรใช้ C/C++ binding ของ CUDA เนื่องจากเป็นโค้ดที่เสถียรสุด)
- ทักษะในการพัฒนา 1. ภาษา C/C++ 2. เข้าใจ simplex method 3. เข้าใจพื้นฐานการพัฒนาโปรแกรมแบบขนาน (parallel programming) อย่างไรก็ตาม ข้อ 2. กับ 3. พัฒนาหรือรื้อฟื้นกันได้
- งานที่เกี่ยวข้อง - ลองอ่านผลงานชื่อ Linear Programming on modern GPUs อย่างไรก็ดี เราควรหาแนวทางที่แตกต่าง อย่าเช่นเราควรพัฒนา optimization solver ที่สนับสนุนให้ผู้ใข้สามารถแก้ปัญหาโปรแกรมเชิงเส้นด้วยเครื่องมือหรือภาษาทางคณิตศาสตร์ที่ได้รับการยอมรับหรือใช้อย่างกว้างขวาง เช่น MATLAB OCTAVE หรือ GNU MathProg ซึ่งจะทำให้ซอฟต์แวร์ใช้ได้กับปัญหาโปรแกรมเชิงเส้นแบบทั่วไปได้อีกด้วย
- ตัวอย่างของผลลัพธ์ที่คาดหวัง - ได้ออกมาเป็น optimization solver ที่สามารถแก้ปัญหาเชิงเส้นด้วยการเขียนสคริปต์ของ MathProg ด้วยการใช้ GPU และความเร็วที่ได้ควรเร็วกว่า CPU อย่างมีนัยสำคัญ
- แนวทางที่พลิกแพลงได้ - ถ้าหากค้นคว้างานที่เกี่ยวข้องเพิ่มเติมเองแล้ว พบว่ามีคนทำไปแล้ว ลองพิจารณาปัญหาประเภท non-linear programming, quadratic programming, และ integer programming ดูก็ได้ งานนี้จึงสามารถพัฒนาแตกแขนงจากรุ่นหนึ่งไปสู่รุ่นหนึ่งได้เรื่อยๆ
kurosame
เขียนแอพมือถือ(เช่น แอนดรอย) ให้บันทึกตำแหน่ง GPS ทุกๆ 10 นาทีก็จะได้แอพ stalker ย่อมๆ
แล้วเอาไป sync กับ google map วาดออกมาเป็นกราฟครับ
แล้วเอาไป sync กับ google map วาดออกมาเป็นกราฟครับ
Nosql project ไม่ก็ adobe flex ครับ
ผมมองว่าโปรเจคพวก innovate อะไรแปลกๆมันก็น่าสนใจแต่หากจบไปจะเอาดีด้าน developer ผมว่าน่าจะทำอะไรที่เหมาะกับด้านนี้ดีกว่าครับ
ผมมองว่าโปรเจคพวก innovate อะไรแปลกๆมันก็น่าสนใจแต่หากจบไปจะเอาดีด้าน developer ผมว่าน่าจะทำอะไรที่เหมาะกับด้านนี้ดีกว่าครับ
Voice/Speech Recognition แบบใช้งานได้จริงครับ อาจจะลองเก็บ Corpus ของโทรศัพท์มือถือ (หรือขอ NECTEC ได้ข่าวว่าเก็บอยู่แล้ว) หรือลองประยุกต์ Speech Recognition ในแบบ domain ที่จำกัดหน่อย เพื่อใช้งานกับพวกรีโมตคอนโทรล โดยใช้ Hardware จริง
อีกอันที่อยากเสนอคือ วิธีการ input ภาษาไทยแบบ romanized (หรือเรียกง่ายๆ ว่าภาษาคาราโอเกะ) เอาไว้ใช้งานกับโทรศัพท์มือถือที่มีแป้นพิมพ์แบบ QWERTY ที่มีปุ่มจำกัด เช่นพวกมีปุ่มแค่ 3 แถว (ไม่ครบ 4 แถวแบบแป้นพิมพ์ไทย) โดยใช้พวก 2-gram 3-gram มาประยุกต์การเดาคำด้วยก็ดี (แบบ T9)