Moving Dots++
เดิมคิดว่าจะเขียนโปรแกรมนี้เองเพื่อความมันส่วนตัว แต่ว่าผมติดบรรยายในวันที่ 1 กรกฎาคมที่ มช. เลยคิดว่า opensource ความคิดนี้ซะเลย เผื่อจะขยายไปพัฒนาใช้กับหลายๆ platform ได้
เดี๋ยวนี้มีสมาร์ทโฟนที่สมรรถนะสูงขึ้น เริ่มทำอะไรเป็นประโยชน์ได้มากขึ้น หลังเหตุการณ์เครื่องบินชนตึกที่อเมริกาในปี 2544 กสทช.สหรัฐ (FCC) ออกกฏให้โทรศัพท์มือถือที่ขายในสหรัฐ จะต้องมีเครื่องมือช่วยระบุตำแหน่งของโทรศัพท์มือถือ เอาไว้ช่วยคนหายหรือคนที่ติดอยู่ในซากตึก คุณลักษณะนี้เรียกว่า A-GPS
ถึง A-GPS จะไม่แม่นเท่าไหร่ แต่ก็ไม่จำเป็นต้องรับสัญญาณจากดาวเทียม เนื่องจากใช้สัญญาณจาก cell site ของโทรศัพท์มือถือแทนได้ นอกจากนั้น ก็ยังมีค่ายโทรศัพท์มือถือที่เปิดแพ็คเกจ Mobile Internet ที่ใช้งานในลักษณะเหมาจ่าย ไม่ขึ้นกับเวลาหรือปริมาณข้อมูลในการเชื่อมต่ออินเทอร์เน็ต
ดังนั้นผมจึงเสนอความคิดเกี่ยวกับโปรแกรม Moving Dots++ ดังนี้
- เมื่อผู้ใช้เปิดโปรแกรมนี้บนมือถือ โปรแกรมเตือนว่าใช้ในขณะขับขี่ยานพาหนะ อาจเกิดอันตรายต่อตัวเองและผู้อื่นได้
- ติดต่อเซอร์เวอร์ ขอ token มาเป็น Unique ID อันหนึ่ง ไม่เปิดเผยว่าใครเป็นผู้ติดต่อไป (anonymize ทุกอย่าง)
- จากนั้นโหลดแผนที่ (เช่น Google Maps) มาจากเน็ต โดยกึ่งกลางแผนที่อยู่ที่ My Location ซึ่งเป็นตำแหน่งของตัวมือถือเอง
- thread แรก: โปรแกรมส่งตำแหน่งของตัวเองไปยังเซอร์เวอร์ทุก 5 นาที โดยระบุว่าเป็นตำแหน่งของ token ที่ขอมาใน 2. จนกว่าจะปิดโปรแกรม
- thread ที่สอง: โปรแกรมขอพิกัดของ token อื่นๆ จากเซอร์เวอร์ ตามพิกัดของแผนที่ — ซึ่งประกอบไปด้วยจุดกึ่งกลางแผนที่และ zoom level — เซอร์เวอร์ส่งพิกัดของ token อื่นๆ ที่อยู่ใน scope ของแผนที่กลับมา
- thread ที่สาม: เป็นเรื่องของการแสดงผล ถ้าเริ่มต้นเปิดโปรแกรม หรือเริ่มจาก My Location โปรแกรมแสดงแผนที่ที่มีจุดกึ่งกลางเป็นตำแหน่งของมือถือ ซึ่งแผนที่อาจขยับไปตามการเคลื่อนที่ได้ ซูมเข้าซูมออกได้; แต่เมื่อไหร่ที่เลื่อน (pan) ไปดูพื้นที่อื่น จะทำงาน ตาม 5. โดยแผนที่ไม่เลื่อนตามตำแหน่งของมือถืออีกต่อไป (จนกว่าจะกด My Location)
ใน 6. จะเห็นตำแหน่งของ token ต่างๆ ซึ่งคิดว่าแต่ละ token แสดงเป็น จุดสี่จุดที่ลากเส้นถึงกัน @-@-@-@ จุดที่ใหม่สุดสีเข้ม จุดที่เก่าที่สุดสีอ่อน สีของจุดแสดงทิศทางการเคลื่อนที่ได้ (แม้ว่าตำแหน่งที่ได้จาก A-GPS จะไม่แม่นซึ่งเมื่อแสดงบนแผนที่แล้วอาจไม่อยู่บนถนน ก็ไม่เป็นไร) ส่วนเส้นที่เชื่อมต่อระหว่างจุด แสดงด้วยสีที่แตกต่างกันซึ่งใช้แทนความเร็วในการเคลื่อนที่
ผมยังไม่วาดอะไรลงไปในรูปทางขวาหรอกครับ ลองคิดกันดูก็แล้วกัน
โปรแกรมแบบนี้ จะช่วยให้เข้าใจสภาพการเคลื่อนที่ในเมือง หรือสภาพการจราจรตามถนนหลวงในหน้าเทศกาล; ทางด้าน client มีหลาย platform เพราะมือถือมีหลายแบบ ส่วนทางฝั่ง server ก็มีงานเหมือนกัน เวลาซูมออกไปดูภาพใหญ่ (เช่นถนนหลวง) แทนที่จะส่งทุกๆ token น่าจะจัดกลุ่ม (cluster analysis) แล้วส่งภาพรวมไปแทน
เพราะว่าจะแสดงผลเป็นจุดที่เคลื่อนที่ จึงเรียกว่า Moving Dots มี s เพราะมีหลาย dot; ส่วน ++ นั้นขอยืมมาจากเครือข่ายพลังบวกครับ จะมีประโยชน์มากหากมีคนใช้กันมาก จึงจะแจกฟรี — ต่างคนต่างให้ข้อมูลแก่คนอื่น และรับข้อมูลจากคนอื่น เป็นประโยชน์ร่วมกัน ไม่งอมืองอเท้ารอใครมาบอกหรือมาทำให้
โปรแกรมนี้ จะให้ข้อมูลกับการจัดสภาพการจราจรของเจ้าหน้าที่และสถานีวิทยุที่รายงานสภาพการจราจร เป็นการเสริมการทำงานแก่ผู้ที่ทำหน้าที่บริการสังคม ซึ่งทำให้ผู้ที่ไม่มีสมาร์ทโฟนหรือไม่ใช้โปรแกรมนี้ ได้รับประโยชน์ไปด้วยในทางอ้อม
หากมีปริมาณข้อมูลมากพอเชื่อถือได้ ก็อาจจะอัพเดตสภาพการจราจรในเวลาจริงขึ้น traffic server ต่างๆ ทั้งของทางราชการ (ยังสงสัยอยู่เพราะไม่ค่อยฟังประชาชน) และของต่างประเทศได้ และโปรแกรมแบบนี้ ใช้งานได้ทุกพื้นที่ทั่วโลกครับ
« « Prev : ย้ายบ้านจาก Symbian ไป Android
Next : เดินทีละก้าว กินข้าวทีละคำ ทำทีละอย่าง » »
8 ความคิดเห็น
ถ้าช่วยพวกหลงกรุงได้บ้าง จะสุดยอดเลย อิ
ช่วงนั้นพี่ก็อยู่ที่ เชียงใหม่ ไปดูงานเรื่องพลังงานที่ มช.(คนข้างกายเขาพาทีมงานไปศึกษาดูงานเลยติดไปด้วย)
#2 มีคนชวนผมไปพูดในงาน Commart ที่เชียงใหม่ครับ ปีนี้จัดที่หอประชุมใหญ่ มช. แล้วให้พูดก่อนพิธีเปิดด้วย — เมื่อถามว่าทำไมพูดก่อนพิธีเปิด ก็ได้คำตอบว่าถ้าพูดหลังพิธีเปิด VIP ที่อยากให้ฟังอาจจะหายหมด อิอิ เค้าเชิญผู้หลักผู้ใหญ่ในวงราชการและการศึกษามาฟัง แต่มาสักครึ่งก็หรูแล้วครับ
โอ๊ะ มาพูดงาน commart เหรอครับ สงสัยต้องเข้าไปฟังด้วย
ส่วนเรื่อง Longdo map น่าจะคล้ายกันนะครับ ยอดจริงๆ งานเสร็จตั้งแต่ยังไม่ได้ลงมือเลย ถ้าเห็นโผล่มา จะขอสเป็คการส่งพิกัด (Track Me) เข้าไปที่ longdomap ด้วยครับ
Longdo เอาคงข้อมูล (ที่อยู่ใกล้กัน ไปยำรวมกันแล้ว) แสดงสถานะออกมาเป็นสีแทนสภาพการจราจรในแต่ละถนน ซึ่งเมื่อทำอย่างนี้ ก็ต้องวาดเส้นตามถนน ซึ่งคิดว่าจะขยายออกไปทั่วประเทศยากนะครับ — ที่ผมเสนอมันถึกกว่านั้นอีก คือจะเห็นเหมือนแมลงวันบินไปตามถนน คนดูตัดสินใจเอง เพราะว่าถนนแต่ละถนน ก็อาจมีสถาพการจราจรต่างกัน
ลองคุยกะทีม longdo ดูซิครับ ผมว่า น่าจะเอาไปใช้ในกรณ๊ภัยพิบัตได้นะครับ เช่นถ้าเรารู้ว่ามีเขตภัยพิบัติอยู่บริเวณไหน ก็สามารถรู้ได้ทันทีว่า คนที่อยู่ตรงนั้นที่อาจจะใช้ longdo map อยู่ตรงไหนบ้าง
แต่ app แบบง่ายๆ ของผม ก็จะเขียนต่อ ชักมันแล้ว เป็นการเรียนรู้การเขียนโปรแกรมสำหรับ Android ด้วย — ไม่ได้ใช้งานก็ไม่เป็นไรครับ
โปรแกรมบ้าๆ บอๆ เป็นการทำความรู้จักกับมือถือที่ดูดีมีราคา Galaxy S ซึ่งไฮโซเหลือเกิน แล้วก็ตามประสาไฮโซ มักไม่ค่อยได้เรื่องอยู่แล้ว อิอิ
ต้องใช้ Android 2.1 (API level 7) ครับ กดให้ต่ำกว่านี้ก็น่าจะได้ เพียงแต่อันนี้ทำเล่นระหว่างดูบอล โหลดได้ที่นี่ครับ
เมื่อไม่ให้โหลดแล้ว จะมาลบความคิดเห็นนี้ออกไป