Ask Blognone

ถึงเทศกาลเปิดเทอมกันอีกครั้ง ปีนี้ก็ได้เวลาที่น้องๆ ปีสี่ตามมหาวิทยาลัยต่างๆ จะหาหัวข้อทำโปรเจคอีกครั้ง และคงเป็นเทศกาลประจำปีที่ผมจะมาถามไอเดียของชาว Blognone ว่ามีอะไรจะเสนอแนะน้องๆ กันบ้างหรือไม่

ก่อนหน้านี้เราเคยเสนอไปแล้วสองครั้ง (1,2) ครั้งนี้ผมเสนอต่างออกไป คือให้เราเสนอ "เครื่องมือ" มาพร้อมๆ กับ "หัวข้อ" โปรเจคกัน

ผมเสนอเช่นนี้เพราะพบความจริงว่านักศึกษาระดับปริญญาตรีนั้นมีจำนวนมากที่ไม่สามารถ จับคู่ระหว่าง "ปัญหา" และ "เครื่องมือ" ที่จะใช้แก้ปัญหาได้ โดยมากแล้วน้องๆ มักจะมีความสามารถในเครื่องมือบางตัว เช่น C/C++, C#/.NET, Java, VHDL, PHP, SQL, วงจรไฟฟ้า ฯลฯ แต่หลายครั้งที่เราให้ปัญหาไปตรงๆ เช่น ระบบตัดคำไทย, multi-touch ด้วย WiiMote ฯลฯ หลายคนกลับมีคำถามว่าแล้วจะได้ใช้เทคโนโลยีตัวไหน ทำอย่างไร ฯลฯ

ดังนั้นเรามาช่วยกัน__ยกตัวอย่าง__ให้กับน้องๆ ว่าปัญหาเช่นไรเราจึงเลือกเทคโนโลยีใด

ตัวอย่าง

  • ปัญหา: กล้องจับวงจรปิดจับภาพเมื่อมีการเคลื่อนไหว ส่งภาพผ่าน WiFi
  • เทคโนโลยี/เครื่องมือ: CHDK, Canon Powershot, Eye-Fi
  • แนวคิด: ใช้สินค้า off-the-shelves ให้มากที่สุดเพื่อลดต้นทุน, สินค้าราคาถูกๆ สำหรับตลาดใหญ่ๆ มีประสิทธภาพดีกว่าสินค้าเฉพาะทางราคาแพงในบางแง่มุม

Hiring! บริษัทที่น่าสนใจ

Carmen Software company cover
Carmen Software
Hotel Financial Solutions
Next Innovation (Thailand) Co., Ltd. company cover
Next Innovation (Thailand) Co., Ltd.
We are web design with consulting & engineering services driven the future stronger and flexibility.
KKP Dime company cover
KKP Dime
KKP Dime บริษัทในเครือเกียรตินาคินภัทร
Kiatnakin Phatra Financial Group company cover
Kiatnakin Phatra Financial Group
Financial Service
Fastwork Technologies company cover
Fastwork Technologies
Fastwork.co เว็บไซต์ที่รวบรวม ฟรีแลนซ์ มืออาชีพจากหลากหลายสายงานไว้ในที่เดียวกัน
Thoughtworks Thailand company cover
Thoughtworks Thailand
Thoughtworks เป็นบริษัทที่ปรึกษาด้านเทคโนโยลีระดับโลกที่คว้า Great Place to Work 3 ปีซ้อน
Iron Software company cover
Iron Software
Iron Software is an American company providing a suite of .NET libraries by engineer for engineers.
CLEVERSE company cover
CLEVERSE
Cleverse is a Venture Builder. Our team builds several tech companies.
Nipa Cloud company cover
Nipa Cloud
#1 OpenStack cloud provider in Thailand with our own data center and software platform.
Bangmod Enterprise company cover
Bangmod Enterprise
The leader in Cloud Server and Hosting in Thailand.
CIMB THAI Bank company cover
CIMB THAI Bank
MOVING FORWARD WITH YOU - CIMB is the leading ASEAN Bank
Bangkok Bank company cover
Bangkok Bank
Bangkok Bank is one of Southeast Asia's largest regional banks, a market leader in business banking
MuvMi (Urban Mobility Tech Co.,Ltd.) company cover
MuvMi (Urban Mobility Tech Co.,Ltd.)
Shape the future of urban mobility towards affordable, clean, and safe solutions
T.N. Digital Solution Co., Ltd. company cover
T.N. Digital Solution Co., Ltd.
TNDS has been involving in every first move of banking’s major digital transformation.
KBTG - KASIKORN Business-Technology Group company cover
KBTG - KASIKORN Business-Technology Group
KBTG - "The Technology Company for Digital Business Innovation"
Siam Commercial Bank Public Company Limited company cover
Siam Commercial Bank Public Company Limited
"Let's start a brighter career future together"
Icon Framework co.,Ltd. company cover
Icon Framework co.,Ltd.
Global Standard Platform for Real Estate แพลตฟอร์มสำหรับธุรกิจอสังหาริมทรัพย์ครบวงจร มาตรฐานระดับโลก
REFINITIV company cover
REFINITIV
The Financial and Risk business of Thomson Reuters is now Refinitiv
H LAB company cover
H LAB
Re-engineering healthcare systems through intelligent platforms and system design.
The Gang Technology Co., Ltd. company cover
The Gang Technology Co., Ltd.
We're a Digital Agency that helps our customers transform their business into digital with ease.
LTMH company cover
LTMH
LTMH มุ่งเน้นการพัฒนาผลิตภัณฑ์ที่สามารถช่วยพันธมิตรของเราให้บรรลุเป้าหมาย
Seven Peaks company cover
Seven Peaks
We Drive Digital Transformation
Wisesight (Thailand) Co., Ltd. company cover
Wisesight (Thailand) Co., Ltd.
The Best Choice For Handling Social Media · High Expertise in Social Data · Most Advanced and Secure
MOLOG Tech company cover
MOLOG Tech
We are Modern Logistic Platform, Specialize in WMS, OMS and TMS.
Data Wow Co.,Ltd company cover
Data Wow Co.,Ltd
We enable our clients to realize increased productivity by solving their most complex issues by Data
LINE Company Thailand company cover
LINE Company Thailand
LINE, the world's hottest mobile messaging platform, offers free text and voice messaging + Call
LINE MAN Wongnai company cover
LINE MAN Wongnai
Join our journey to becoming No.1 food platform in Thailand

จิ๊กมาจากเพื่อนสนิทที่เรียนวิศวะฯ อิอิ
ปัญหา: สร้างเครื่องมือเก็บและส่งข้อมูลสภาพอากาศในตัวเมืองเชียงใหม่เข้า Server หลักผ่านระบบไร้สาย
เทคโนโลยี/เครื่องมือ: ZigBee ฯลฯ (จำไม่ได้ เดี๋ยวไปถามเพื่อนมาให้)
แนวคิด: ต้องการลดต้นทุนอุปกรณ์ให้มากที่สุด และสร้างให้มีขนาดเล็กกระทัดรัด, ฝึกการออกแบบ PCB และการใช้ Micro Controller

โอ๊ะ... edit ไม่ได้ งั้นต่อเลยละกันครับ

เครื่องมือที่ใช้ ก็มี ZigBee, gogoBoard แล้วก็คาดว่าในอนาคตจะเชื่อมต่อกับระบบ GSM ครับ
ภาษา C เขียน micro controller ครับ

revolz Fri, 11/06/2010 - 03:53

ณ โรงเรียนพาณิชย์ที่เน้นคอมพิวเตอร์แห่งหนึ่ง... ก็ยังคงกำหนดโจทย์ระดับชั้น ปวส ให้เป็น Microsoft Access อยู่

(เรื่องจริงครับ)

joomla Fri, 11/06/2010 - 09:20

In reply to by revolz

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

พาณิชย์ที่เน้นคอมพิวเตอร์ <-- นี่คือคำตอบครับ
ถ้าอยากจะเก่งคอมจริงๆก็ไปเรียนต่อเนื่องที่เกี่ยวกับคอมพ์เลยดีกว่า

ปล.อย่าลืมว่า จบ ปวส แล้วทำงานเทพๆก็มีเยอะครับ

ส่วนมากชอบให้ innovate .. แต่ส่วนตัว คิดว่าน้องๆ เค้าไม่ได้ลงลึก จบคือจบ เว้นใครต่อโทเรื่องนั้น ซึ่งน้อย
ถ้าอยาก innovate ต้องมี passion ทำต่อเนื่องทำยาว ทำแยกขนานไปน่าจะดีกว่า ไม่ใช่ทำเอาหน้าฉาบฉวย

"หัวข้อ" innovate ก็ดี ได้น่าสนใจ มีแรงจูงใจในการทำ.. แต่ควรเน้นที่ process ไม่ใช่ตัดงานวิจัยอาจารย์มา
ณ จังหวะนี้ อยากให้เป็นโอกาสที่น้องๆ ได้บูรณาการและประยุกต์สิ่งที่เรียนมา เพื่อเป็นพื้นฐานการทำงานต่อ
อยากให้เน้นการใช้ process จะได้รู้ practice จนเกิด skill มากกว่า.. ส่วน innovate ก็มีพอหอมปากหอมคอ

ดังนั้น ขอ expectation ก่อน.. "น้องๆ ปีสี่ตามมหาวิทยาลัยต่างๆ" ควรทำอะไรได้บ้าง ควรมีทักษะอะไรบ้าง
ส่วนตัวไม่มีอะไรที่(อยาก)จะเสนอแนะน้องๆ .. อยากให้น้องๆ ลองเสนอ "หัวข้อ" พร้อม "data flow คร่าวๆ"
(หรือจะเรียก use cases, storyboard etc. ก็ได้.. หรือทำออกมาเป็น demo, prototype etc. เลยก็ไม่ห้าม)

และจาก data flow เมื่อระบุวิธีจัดการ data ณ process ต่างๆ ใน flow ได้ ก็จะระบุ "เครื่องมือ" ที่ต้องใช้ได้
ซึ่งบาง process อาจจัดการ data ด้วย องค์ความรู้ และ ทักษะ ที่เรียนมา (เช่น Data Structure, Algo, DB)

ส่วน process ที่ใช้สิ่งที่เรียนมาจัดการไม่ได้ ปกติก็น่าจะค้นวิธีได้จากในเนต (เป็นทักษะที่ระดับนี้ควรมีแล้ว)
ไม่งั้นน้องๆ ก็ลอง "เสนอ" รายละเอียด.. แล้วส่วนที่ขาด คงอยู่ในวิสัยที่อาจารย์/พี่ๆ เห็นควรที่จะ "แนะ" ให้

แต่อาจตอบด้วย url เดียวนะ แล้วอ่านต่อเอง ไม่อธิบายมาก.. คิดว่าที่จะถาม คงเป็นเรื่องที่มีแนวทางแก้แล้ว
แค่น้องๆ นึกคำค้นไม่ออก ก็เลยหาไม่เจอ/เจอขยะ.. ณ ระดับนี้ ไม่หวังว่าจะต้องเป็นโจทย์ใหม่เอี่ยมของโลก

ที่ระดับนี้.. คงดูแค่ complexity เหมาะสมมั้ย feasible มั้ย กับสิ่งที่เรียนมา รวมถึงภาระจากวิชา/กิจกรรมอื่นๆ
กะเผื่อโหลดที่น้องๆ ต้องไป ค้นคว้า/ศึกษา/ทดลอง เพิ่มเติม.. แถม project management practice อีกนิด
ส่วน business process & practice, user behavior หรือ quality attribute อื่นๆ .. น้องระดับนี้คงยังไม่เน้น

จะเน้นที่.. จาก input/output data ของปัญหาตามที่ระบุไว้ใน "หัวข้อ" สามารถแยกออกมาเป็น flow ได้มั้ย
และเมื่อแยกปัญหาเป็น IPOT (input data / data processing / output data / data transfer) ย่อยๆ แล้ว
ก็เลือก "เครื่องมือ" มาใช้ในแต่ละส่วน.. ซึ่งควรเลือกมาหลายๆ ตัว แล้วเอามาให้อาจารย์/พี่ๆ ชี้แนะเพิ่มเติม

ให้หมั่นส่ง progress มาบอกเล่าให้อาจารย์/พี่ๆ บ่อยๆ .. จะได้รับคำแนะนำไปเยอะๆ ได้ความรู้เพิ่มเติมมากๆ
อะไรที่ติดขัดไม่แน่ใจ ก็อย่ามาถามแบบรอคำตอบ ให้คุ้ยแนวมาเสนอด้วยหลายๆ ทาง ให้มาแบบขอคำชี้แนะ

.. ก็เท่านั้น

ถ้าน้องๆที่เรียนป.ตรีต่อเนื่อง หรือปวส. หรือพวก IT มาอ่านเจอ แล้วข้อมูลส่วนใหญ่ใช้ภาษาแบบนี้อาจจะท้อเอาง่ายๆนะครับ ผมเป็นโปรแกรมเมอร์เป็นอาจารย์ยังอ่านไม่ค่อยจะรู้เรื่องเลยแหะๆ แถมโดน ใช้ภาษาไทยก็ได้มั๊งครับบาง

ผมเจอ reply ด้วยภาษาแบบนี้บ่อยใน www.narisa.com หลังๆ มาอ่านแล้วเคืองๆก็มีการแจ้งผู้ตอบไปบ้างว่าน่าจะใช้ภาษาไทยที่อ่านเข้าใจง่ายๆหน่อย บางที่ก็มีตอบกลับมาแบบประชดประชันก็มี

แนะนำ 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 เป็นสีแดง เราอยากให้ทั้งเว็บเปลี่ยนเป็นสีอื่น หรือรูปแบบอื่นได้ก็คงจะดี

นึกออกเดี๋ยวมาบอกใหม่ ไปแล้วจ้า

มีคนทำแล้วไม่ใช่ประเด็นครับ เราสามารถค้นคว้า มาปรับปรุง หรือใช้วิธีการที่ต่าง แล้วนำผลมาเปรียบเทียบได้ครับ

+1 ครับ มีคนทำแล้วไม่ใช่ประเด็น

ถ้ามัวแต่คิดว่า มีคนทำแล้วแล้วเราไม่ทำตามมันคงเจริญยากครับ ทำเหมือนพวก ไต้หวัน เกาหลีใต้ เป็นการ benchmark กันดีกว่า ทำให้ได้เท่ากันหรือดีกว่าก็เก่งแล้วครับ

  • Case Study การเขียนโปรแกรมแบบ Utilize Multi-Core CPU ด้วย .NET 4.0 (Parallel API) เช่น ทำโปรแกรม image processing ง่ายๆ หรือการคำนวนใหญ่ๆ เช่น การ manipulate vertex จำนวนมากในเกม 3D

  • หรือถ้าจะเป็นพวกอาร์ตๆหน่อย ก็ ลองทำโปรแกรม UI สำหรับ Tablet PC โดย concept คือทำระบบแบบ Courier Tablet ของ Microsoft

  1. หัวข้อปัญหา - การแก้ปัญหาโปรแกรมเชิงเส้นโดยใช้ความสามารถของโปรเซสเซอร์ประมวลผลกราฟิก
  2. อธิบายปัญหาคร่าวๆ - เป็นการพัฒนาซอฟต์แวร์ประเภท optimization solver ให้สามารถแก้ปัญหาโปรแกรมเชิงเส้น (linear programming) โดยใช้สมรรถนะของโปรเซสเซอร์ประมวลผลกราฟิก (หรือ GPU)
  3. เครื่องมือในการพัฒนา - CUDA (แนะนำว่าควรใช้ C/C++ binding ของ CUDA เนื่องจากเป็นโค้ดที่เสถียรสุด)
  4. ทักษะในการพัฒนา 1. ภาษา C/C++ 2. เข้าใจ simplex method 3. เข้าใจพื้นฐานการพัฒนาโปรแกรมแบบขนาน (parallel programming) อย่างไรก็ตาม ข้อ 2. กับ 3. พัฒนาหรือรื้อฟื้นกันได้
  5. งานที่เกี่ยวข้อง - ลองอ่านผลงานชื่อ Linear Programming on modern GPUs อย่างไรก็ดี เราควรหาแนวทางที่แตกต่าง อย่าเช่นเราควรพัฒนา optimization solver ที่สนับสนุนให้ผู้ใข้สามารถแก้ปัญหาโปรแกรมเชิงเส้นด้วยเครื่องมือหรือภาษาทางคณิตศาสตร์ที่ได้รับการยอมรับหรือใช้อย่างกว้างขวาง เช่น MATLAB OCTAVE หรือ GNU MathProg ซึ่งจะทำให้ซอฟต์แวร์ใช้ได้กับปัญหาโปรแกรมเชิงเส้นแบบทั่วไปได้อีกด้วย
  6. ตัวอย่างของผลลัพธ์ที่คาดหวัง - ได้ออกมาเป็น optimization solver ที่สามารถแก้ปัญหาเชิงเส้นด้วยการเขียนสคริปต์ของ MathProg ด้วยการใช้ GPU และความเร็วที่ได้ควรเร็วกว่า CPU อย่างมีนัยสำคัญ
  7. แนวทางที่พลิกแพลงได้ - ถ้าหากค้นคว้างานที่เกี่ยวข้องเพิ่มเติมเองแล้ว พบว่ามีคนทำไปแล้ว ลองพิจารณาปัญหาประเภท non-linear programming, quadratic programming, และ integer programming ดูก็ได้ งานนี้จึงสามารถพัฒนาแตกแขนงจากรุ่นหนึ่งไปสู่รุ่นหนึ่งได้เรื่อยๆ

โปรเจคน่าสนใจครับ แต่อยากให้น้อง ๆ ระวังนิดว่าต้องหาเครื่องที่ชิพ Nvidia เตรียมไว้พรีเซนท์ด้วย หรืออย่างน้อย ๆ ก็ต้องหาตัว GPU ล่ะ (แล้วไปใช้ OpenCL แทน ... พอได้มั้ยเนี่ย??) เอาที่เป็นโน๊ตบุ๊คน่ะครับ อย่าคิดที่จะแบกคอมทั้งชุดไปพรีเซนท์เหมือนตอนที่ผมทำโปรเจค 3D เชียว (เพราะมันพังก่อนพรีเซนท์มาแล้ว - -')

แต่คิด ๆ มันก็ค่อนข้างวัดดวงเหมือนกัน โดยเฉพาะถ้าจะวัดความเร็วกับ library ที่ใช้กันทั่วไป (ซึ่งทำงานบน CPU) คือมันมีสิทธิที่ lib บางตัวอาจจะเขียนมาดีมาก และการที่ย้ายไปใช้ GPU แทนอาจจะทำงานได้ช้ากว่าได้ ถ้าจะเล่นอย่างปลอดภัยคือเราต้องเขียนตัวเปรียบเทียบขึ้นมาเอง แต่ก็อีกนั่นล่ะครับอาจจะเป็นช่องโหว่ในการพรีเซ็นท์ได้

คือผมแอบกังวลว่า บางทีเขียนบน SIMD อาจจะให้ผลลัพท์ออกมาดีกว่าบน GPU (ทั้ง ๆ ที่ปรกติ SIMD ทำได้ช้ากว่าบน GPU) นั่นล่ะครับ

ปล. ผมยังไม่ได้ดูรายละเอียดของโจทย์เลย อาจจะเอื้อกับทาง GPU มากกว่า CPU ก็ได้

จากที่ติดตามงานที่เป็น GPU และ optimization อย่าง linear programming เท่าที่ผมดูผลการทดลองของพวกเขาพบว่า ได้ผลดีกว่า SIMD CPU เยอะพอสมควรครับ (แต่ก็อย่างที่คุณ mr_tawan กล่าวไว้ครับคือ ส่วนใหญ่เขาเริ่มพัฒนาโค้ดตัวใหม่สำหรับบน GPU และ CPU แล้วก็เทียบกัน) อีกอย่าง GPU มันมีคอขวดจากข้อจำกัดด้านหน่วยความจำ บางเปเปอร์เขาพบว่า ถ้าแอพพลิเคชันมีขนาดใหญ่มากๆ (หรือ data-intensive) มันไม่ค่อยเหมาะกับ GPU ซึ่งวิธีการแก้ของเขาคือ ทำ block partition แต่ก็ต้องเกิด overhead ให้กับขั้นตอน synchronization ระหว่าง block ที่โดนแบ่ง เรื่องนี้เป็นงานวิจัยที่เปิดอยู่ครับ

โดยรวม GPU มันก็มีสถาปัตยกรรมในแนวเดียวกับ SIMD แต่มันมีจำนวนคอร์ที่เยอะมากๆ เช่น Tesla เป็นต้น เมื่อเทียบราคาและการกินไฟของ GPU กับจำนวนคอร์ของ CPU ที่เท่ากันจะพบว่า GPU มีประสิทธิภาพกว่า แต่ GPU ก็ยังต้องพึ่ง CPU เพราะมันยังขาดชุดคำสั่งอีกมากมายที่สำคัญ เช่น I/O เป็นต้น

ที่คุณ mr_tawan แนะนำมาเรื่องพรีเซ็นท์เป็นเรื่องสำคัญมากๆ ในแง่ R&D แล้วอาจเป็นตัวตัดสินชะตาของผลงานว่าจะมีทิศทางต่อไปหรือไม่ เพราะแม้เราพัฒนาผลิตภัณฑ์ได้ดี แต่สื่อสารไม่ดี ท้ายที่สุดก็ไม่โดนใจกรรมการ(และตลาด)

ป.ล. ถ้าใครสนใจทำงานนี้แล้วอยากทดลองงานกับ Tesla ก็ติดต่อผมได้ครับ ที่ทำงานผมมี GPU cluster ที่มี 8 การ์ด การ์ดละ 240 คอร์ รวมแล้วได้ 1,920 คอร์ครับ แต่ในขณะที่พัฒนาและพรีเซ็นท์ ผมคงแนะนำให้ลองกับ laptop/PC ที่มีการ์ดจอสนับสนุน CUDA ไปก่อนแล้วกันครับ

ถ้ามีอะไรเกียวกับกับ CUDA ขอคำปรึกษาได้ไหมครับ ตอนนี้ผมกำลังสนใจ ทำหัวข้อ Thesis ที่เกี่ยวกับ CUDA, 3D Reconstruction อยู่ครับ ตอนนี้ผมก็ไปด้วย laptop ครับ

ให้คำปรึกษาได้ครับ แต่ผมทราบแต่ภาคทฤษฎีของ GPU หรือพวก parallel นะครับ แต่ผมมีเพื่อนทีมงานที่เซียน CUDA อยู่ครับ

อีกครั้งตามที่แจ้งไว้ด้านบน คือว่า ถ้าคุณสนใจใช้ Tesla เชิญเข้ามาลองได้ครับ เราอยากเห็นตัวอย่างงานหลายๆแบบว่า ให้ speedup เป็นอย่างไร เราต้องการทำ profiling ของงานที่หลากหลาย และเราอยากทราบว่าเมื่อรันบนเครื่องแบบ hybrid ที่มีทั้ง CPU เป็นหลักร้อยกว่าคอร์และ GPU เป็นหลักพันกว่าคอร์ มันให้ผลเป็นเช่นไร

ลดขอบเขตของงานก็ได้นะ เช่น เอาไปประยุกต์กับปัญหาที่เฉพาะเจาะจง 1 ปัญหาเลยก็ได้ เป็นต้น เหตุที่ผมคิดหัวข้อดังกล่าว เพราะจริงๆแล้ว ผมอยากใช้ครับ lol

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

หรือถ้าเอาง่ายๆก็ให้ใช้ CMS สร้างเวบไปเลยแต่เพิ่มความยากของโจทย์เข้าไปแทน

เคยเขียนไว้หลายปีก่อนเรื่องโปรเจกต์จบ (ที่ไม่ได้ทำ)
ใครอยากได้ไอเดียเชิญเอาไปใช้ได้เลยครับ (เสร็จแล้วบอกกันด้วย อยากไปลองเล่น :P)

  1. Automatic Music Analyse คือทุกวันนี้มีปัญหามากเวลาเปิดใน library บน iTunes แล้วอยากจะฟังเฉพาะเพลงช้า .. หรืออยากฟังเฉพาะเพลงเร็ว เพลงที่มีเสียงเปียโน เพลงที่ไม่มีเสียงร้อง

ถ้ามีวิธีที่เราเอาเพลง เข้าไปในกล่องนึง แล้วออกมาพร้อมกับ tag ว่าเพลงนี้คือเพลงช้า มีเสียงกีตาร์ ไม่มีเสียงร้อง และน่าจะเ็พลง Classic มันคงเจ๋งมากเลย

  1. Good Looking Guys/Girls Filtering คือโปรแกรมที่สามารถกรองรูปคนหมื่นคนมาเหลือ 100 คนที่หน้าตาดีสุดได้ โดยไอเดียคือใช้หลักโหงวเฮ้งที่เอาแค่โครงหน้า คิ้ว จมูก ปาก และ pattern ของคนหน้าตาดี กับไม่ดี สามารถสร้าง tag ให้กับรูปที่มีหน้าคนได้

เป้าหมายคือเอาไปขายให้ search engine ใช้ได้

เขียนแอพมือถือ(เช่น แอนดรอย) ให้บันทึกตำแหน่ง GPS ทุกๆ 10 นาทีก็จะได้แอพ stalker ย่อมๆ
แล้วเอาไป sync กับ google map วาดออกมาเป็นกราฟครับ
เป็นเหมือน life log เสร็จแล้วก็ export เพื่อเอาไปเขียน blog หรืออื่นๆ

ผมตั้งชื่อให้ว่า My Love Tracker เอาไว้คอยตรวจดูพฤติกรรมแฟน (ฮา)

อูย มีแฟนเหมือนมีแม่เลยงานนี้ (ผมว่าสาว ๆ จะชอบโปรแกรมประเภทนี้นะ)

ผมเริ่มคิดว่าแล้วคุณ Mc_Jewel เป็น Masochism (M) 555

ปรกติเขามีแต่ไม่อยากให้แฟนจับได้ นี่ยอมให้แฟนจับแต่โดยดี :D รักจริงรักทนรักยาวรักนานแน่ ๆ ครับแบบนี้

ผมกระทุ้งการศึกษานิดๆ อยากให้มีโปรเจคเป็นลักษณะการต่อยอด opensource ไม่จำเป็นต้องเป็นทาง software ก็ได้ ยุคสมัยมันเปลี่ยนไปแล้ว แถม นศ ที่ทำโปรจเจคมีโอกาส เจอสิ่งเหล่านี้ในการทำงานจริงๆสูงทีเดียว

Nosql project ไม่ก็ adobe flex ครับ
ผมมองว่าโปรเจคพวก innovate อะไรแปลกๆมันก็น่าสนใจแต่หากจบไปจะเอาดีด้าน developer ผมว่าน่าจะทำอะไรที่เหมาะกับด้านนี้ดีกว่าครับ

ความคิดผมน่ะครับ
หากอยากทำงานด้าน developer หรือจะหากินกับ web app ล่ะก็
ผมว่าน้อง ๆ ลองดูเรื่อง SAAS ดูน่ะครับ ผมว่ามันเป็นอะไรที่น่าสนใจอยู่น่ะครับ

เราไม่จำเป็นต้องเก่งในทุกเรื่อง แต่เราควรเก่งสักเรื่องเพื่อเติมเต็ม....

ขอบคุณครับ

ผมได้หัวข้อเขียน app บน iphone อะครับ
ต้องเป็น app ที่ต้องไปบนข้อมูลมาจากตัว server อะครับ
ยังคิดไม่ออกเลยว่าจะทำ app เกี่ยวกับอะไรดี

ผมว่าไม่ยากนะ อืม ... เยอะแยะครับ

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

ส่วนเทคโนโลยี อ่า ......... iPhone ก็คงมีทางเลือกไม่มากหรอกครับ - -' ตามที่ป๋าจ๊อปแกพูดไว้น่ะล่ะว่าอะไรใช้ได้หรือไม่ได้ 55

ส่วนข้อมูลดึงที่ไหน ... ผมไม่ทราบเหมือนกัน Weather Underground ดึงได้มั้ย ??

ถ้าเป็น Android แล้วเขียนเป็น Widget ไปเลยจะเท่ห์มากครับ แต่ผมว่าคงมีคนทำแล้วล่ะ 555

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

น้องๆ ที่จะเขียน app ที่ต้องมีระบบ plug-in ของตัวเองด้วย
แนะนำให้ใช้ MEF http://mef.codeplex.com/ จะทำให้เขียนระบบ plug in ของ app ได้ง่ายขึ้นมาก

ต้องเป็น .NET นะ

oakyman Mon, 14/06/2010 - 14:46

Voice/Speech Recognition แบบใช้งานได้จริงครับ อาจจะลองเก็บ Corpus ของโทรศัพท์มือถือ (หรือขอ NECTEC ได้ข่าวว่าเก็บอยู่แล้ว) หรือลองประยุกต์ Speech Recognition ในแบบ domain ที่จำกัดหน่อย เพื่อใช้งานกับพวกรีโมตคอนโทรล โดยใช้ Hardware จริง

อีกอันที่อยากเสนอคือ วิธีการ input ภาษาไทยแบบ romanized (หรือเรียกง่ายๆ ว่าภาษาคาราโอเกะ) เอาไว้ใช้งานกับโทรศัพท์มือถือที่มีแป้นพิมพ์แบบ QWERTY ที่มีปุ่มจำกัด เช่นพวกมีปุ่มแค่ 3 แถว (ไม่ครบ 4 แถวแบบแป้นพิมพ์ไทย) โดยใช้พวก 2-gram 3-gram มาประยุกต์การเดาคำด้วยก็ดี (แบบ T9)

เจ๋งนะคะ เหมือนที่ภาษาจีนเค้ามี pinyin ใช่ไหม แต่ว่าคนไทยก็มีการสะกดภาษาคาราโอเกะที่ว่านี่แตกต่างกัน เช่นว่า
mak loey
mak loi
ทั้งสองอันอ่านเป็นไทยคือ "มากเลย" ก็อาจจะต้องวิเคราะห์หรือหาหลักการเขียนไทยเป็นromanized ที่เป็นหลักสากลก่อนรึเปล่า(ซึ่งโดยส่วนตัวคิดว่ายากอยู่นะ ><")