ทำไมสถานีถึงมีเสียง
ทุกสถานีมี "สูตรลับ" ของตัวเอง: เอาชื่อสถานี (ปรับให้เป็นรูปแบบ Unicode NFC ก่อน กันปัญหาสระ/วรรณยุกต์เขียนได้ หลายแบบ) ไปแฮชเป็นตัวเลข แล้วตัวเลขนั้นก็ชี้ไปที่ "บันไดเสียง" แบบเพนตาโทนิก 5 โน้ต (โทนคล้ายเพลงพื้นบ้านโซนเอเชีย — ขอสารภาพตรงนี้ว่า ไม่ใช่บันไดเสียงไทยแท้ๆ เพราะดนตรีไทยจริงๆ ใช้ระบบ 7 เสียงเฉลี่ยเท่า ไม่ใช่เพนตาโทนิก แต่แบบนี้ฟังดูสนุกและเข้าใจง่ายกว่าเยอะ) แฮชอีกชุดหนึ่งกำหนด "ระดับเสียงสูง-ต่ำ" (octave)
ชื่อสถานียาว = โน้ตยาว, ชื่อสถานีสั้น = โน้ตสั้น ส่วนสถานีเชื่อมต่อ(interchange ระหว่างสาย) จะเล่นเป็นคอร์ด 2 เสียงพร้อมกัน เพราะมันคือจุดที่เส้นทางคุณ "แยกทาง" ได้จริงๆ
เพราะเป็นการแฮชแบบตายตัว (deterministic) เส้นทางเดิมจะได้เพลงเดิมทุกครั้ง — ไม่มีการสุ่มระหว่างเล่น เส้นทาง เดียวกัน = เพลงเดียวกัน แชร์ลิงก์ไปให้เพื่อนก็ได้ยินเพลงเดียวกันเป๊ะ
เสียงมาจากไหน
ไม่มีไฟล์เสียงเลยแม้แต่ไฟล์เดียว ทุกโน้ตสังเคราะห์สดในเครื่องคุณด้วย Web Audio API แต่ละสายรถไฟฟ้าได้ "เสียงเครื่องดนตรี" ไม่ซ้ำกัน วนกันไป 4 แบบ: ดีด (pluck), ระนาด (marimba), ระฆัง (bell), และแพด นุ่มๆ (soft pad)
ข้อมูลสถานีมาจากไหน
รายชื่อและลำดับสถานีเป็นการถอดความจากชื่อสถานีจริงของระบบขนส่งมวลชนกรุงเทพฯ (BTS สุขุมวิท, BTS สีลม, MRT สายสีน้ำเงิน, และ Airport Rail Link) พิมพ์มือทีละสถานีตามลำดับที่ผู้เขียนมั่นใจ — ตั้งใจไม่ทำให้ครบทุกสถานีของทุกส่วนต่อขยาย เพราะบางส่วนต่อขยายที่เปิดใหม่ๆ ผู้เขียนไม่มั่นใจลำดับ 100% เลยเลือกตัดออกดีกว่าใส่ข้อมูลผิด (เช่น สายสีม่วง สายสีเหลือง สายสีชมพู ยังไม่ใส่ในเวอร์ชันนี้) จุดเชื่อมต่อระหว่างสาย (สยาม, อโศก/สุขุมวิท, ศาลาแดง/สีลม, พญาไท, เพชรบุรี/มักกะสัน) เป็นจุดเชื่อมต่อที่เปิด ใช้งานจริงและเป็นที่รู้จักกันดี
ทำไมถึงทำแอปนี้
เพราะการเดินทางไปทำงานทุกวันมันน่าเบื่อ แต่ถ้ามันเป็นเพลงได้ล่ะ? แอปนี้ไร้ประโยชน์โดยตั้งใจ และนั่นคือประเด็น — ไม่ได้ช่วยให้คุณถึงที่หมายเร็วขึ้น ไม่ได้บอกเวลารถไฟ แค่ทำให้เส้นทางที่คุณ เดินทุกวันมีเสียงเป็นของตัวเอง