สำหรับผม น่าจะเป็นการ "กินอาหารหมาในเวลาที่เหมาะสม" ครับ
โปรเจ็กต์ที่แนวคิดนี้ใช้ได้ผลมีดังนี้...
-
โปรแกรมพิสูจน์ฟีเจอร์สำหรับเครื่องมือพัฒนาภายในที่ทำขึ้นเพราะอึดอัดกับการพัฒนาในบริษัท ออกมาได้ภายใน 2 สัปดาห์ แล้วก็พัฒนาไปพร้อมกับใช้งานมันจริง ใช้แล้วพอใจ ก็ขยายต่อบนเครื่องมือนั้น ใช้เองจริง เปิดเผยสู่สาธารณะ.. วนแบบนี้มา 1 ปี ตอนนี้ใช้งานได้ดีมากครับ เพราะใช้อย่างต่อเนื่อง เลยทำจุดที่น่าจะโอเคแบบคร่าว ๆ ก่อน แล้วพอลองใช้ดู ถ้าดีค่อยเกลาในตอนท้าย เลยออกมาดีมั้งครับ
-
เพราะรู้สึกว่าตารางชีวิตของผมส่วนใหญ่ค่อนข้างเดิม ๆ ( ไปทำงาน => พัฒนา => กลับบ้าน => พัฒนา/เล่นเกม/เขียน => นอน ) เลยลองทำตัวจับเวลา Pomodoro อัตโนมัติขึ้นมาครับ เจ้าตัวนี้ก็ทำอยู่ 2 สัปดาห์ แล้วลองใช้ต่ออีก 2 สัปดาห์ แต่เมื่อเทียบกับของที่มีอยู่ในตลาดแล้ว ผมไม่รู้สึกว่ามันมีข้อดีมากพอ สุดท้ายเลยทิ้งไปครับ
-
ตอนนี้กำลังทำโอเพนซอร์สโปรเจ็กต์ชื่อ
cron for notionซึ่งเป็น "ตัวสร้างเอกสาร Notion อัตโนมัติตามตารางเวลา" ครับ เป้าหมายใหญ่ของเจ้านี่คือรองรับแพลตฟอร์มจำนวนมากที่มี REST API สำหรับสร้างเอกสารได้ โดยให้จัดตารางผ่าน Web frontend ส่งตารางไปที่ backend แล้วผ่านโลจิกมหาศาลสุดโหดเพื่อสร้างเอกสารได้... แต่ตอนนี้มันยังเป็นโปรแกรมน่ารัก ๆ ที่ถ้าส่ง JSON ผ่านบรรทัดคำสั่ง CLI เข้าไป ก็จะพิมพ์เอกสารสวย ๆ ออกมาครับ เจ้าตัวนี้ก็ทำช่วงเวลาพัก 2 สัปดาห์เหมือนกัน ถึงชื่อจะเป็นแบบนั้น แต่มันรองรับ YouTrack ด้วย และถึงจะไม่ใช่ cron แต่ต้องเรียกผ่าน CLI แทน ก็ทำให้ผมตระหนักได้ว่ามันใช้งานได้ดีมาก
โปรเจ็กต์ที่แนวคิดนี้ใช้ไม่ได้ผลมีดังนี้...
-
ตอนมัธยมปลาย ผมอยากสร้าง MMORPG แบบโอเพนเวิลด์ขนาดใหญ่... แล้วก็เล่นอยู่กับตัวละครที่วิ่งในทุ่งโล่ง ๆ นาน 8 สัปดาห์ก่อนจะเลิกไป
-
เคยทำเกมแนว Super Smash Bros. + ยิงปืน โดยใช้ฟิสิกส์เอนจินครับ แต่พอพัฒนาเสร็จก็ต้องส่งเลย เลยทำให้เกมที่น่าจะสนุกกว่านี้มาก กลายเป็นแค่เกมธรรมดา ๆ ไป
-
ตอนมัธยมปลาย ผมเคยคิดว่าถ้ามี RPG บนมือถือที่เล่นด้วยท่าทางบนหน้าจอสัมผัสได้ คงจะเท่มาก อย่างน้อยในแผนที่ผมเขียนไว้มันเท่มาก แต่พอผ่านไป 6 เดือนแล้วได้ลองเล่นเกมที่รองรับแนวคิดนั้น ผมก็เข้าใจเลยว่า: อ้อ มันไม่เวิร์กนี่นา! ตลอด 6 เดือนนั้นผมเขียนอยู่แต่ระบบรู้จำ gesture อย่างเดียว สุดท้ายก็เลยไม่ผ่านการประกวดนั้นครับ
-
และโปรเจ็กต์อีกมากมายที่ตายไปทั้งที่ยังไม่ได้ตั้งชื่อด้วยซ้ำ
แล้วของทุกคนล่ะครับ ในบรรดาประสบการณ์พัฒนา side project ที่น่าพึงพอใจ มีจุดร่วมอะไรกันบ้าง ㅁ ?
1 ความคิดเห็น
ก็คล้ายกับที่คุณพูดถึงเรื่อง dogfooding นั่นแหละครับ
สมัยที่ผมยังสะสม CD ผมเคยทำเครื่องมือสำหรับแท็กข้อมูลอัลบั้มลงใน MP3 แล้วก็ปล่อยให้คนอื่นใช้ด้วย และผมเองก็ใช้มันอยู่นาน แต่พอเปลี่ยนมาใช้สตรีมมิงแล้วไม่ซื้อ CD อีก ทุกวันนี้ก็เลยไม่ได้ใช้แล้วครับ ถึงอย่างนั้นก็ยังมีคนที่จำเครื่องมือนี้ได้อยู่
ตอนที่เว็บแนว One a Day มีเยอะขึ้น ผมก็เคยทำตัวช่วยช็อปที่รวบรวมมาแสดงให้ดูในที่เดียว ซึ่งก็เป็นสิ่งที่ทำขึ้นเพราะความต้องการของตัวเองเหมือนกัน พอของที่น่าซื้อมีน้อยลงและจำนวนเว็บก็ลดลง ก็เลยเลิกใช้ไปครับ
สิ่งสำคัญคือ "ถึงจะทำขึ้นเพราะความต้องการของตัวเอง แต่ก็เป็นเครื่องมือที่คนอื่นนำไปใช้ได้ด้วย" ดูเหมือนว่าสิ่งแบบนี้จะอยู่ได้นานที่สุด
ตัวช่วยช็อปนั้นเคยมีรายได้เล็กน้อยจาก affiliate ด้วย แต่สำหรับ side project ต่าง ๆ ผมคิดว่าน่าจะดีกว่าถ้าลองทำโมเดลรายได้ที่หลากหลาย แทนที่จะติดโฆษณาอย่างเดียว แบบนั้นน่าจะช่วยให้ดำเนินต่อได้ยาวนานกว่า