Forum

เหมือนว่า Facebook เราจะกลายเป็น Blog ไปแล้ว (แต่อันไหนมีสาระมากๆ ก็จะพยายามไปใส่ใน [Google+](https://plus.google.com/108003073552145737788/posts) ด้วย)

ช่วงปิดเทอมนี้กำลังจะพยายามเขียนเว็บบอร์ดใน [menome](http://menome.sunburn.in.th) อยู่ มันเป็นความคิดชั่ววูบว่าน่าจะเขียนบอร์ดเองและใส่แนวคิดแปลกใหม่ลงไปบ้าง

ผมเองเห็นบอร์ดที่ไอเดียดีมากๆ มาจาก Pantip3G เป็นตัวแรก ตอนนี้มันยังไม่ออก แต่ผมชอบไอเดียของเขาที่ว่ากระทู้ไม่ได้มีแค่กระทู้ไล่ลงมา แต่มันมีกระทู้รายงานสด กระทู้โพสต์รูป ฯลฯ อีก แต่ละแบบการแสดงผลหัวข้อ และโพสต์คำตอบมันต่างกันออกไป

ตอนผมทำ bd2.in.th ก็เคยได้โจทย์นี้ อยากทำ gallery ผมว่ามันเกะกะเลยไม่ทำแล้วทำเป็น gallery tag ไปในบอร์ดแทน ซึ่งจะมีการแสดงที่สวยกว่าเอา img tag เรียงๆ กันทั่วไป แต่นั่นคือสิ่งที่เราทำได้ในเว็บบอร์ดแบบทั่วๆ ไป (traditional forum software)

ต่อมาผมเปลี่ยน bd2.in.th ไปใช้ Vanilla Forum ซึ่งผมเห็นไอ้นี่มานานแล้ว แต่ตอนได้ลองเอง มันเป็นบอร์ดที่ความคิดสดใหม่มาก คือมันเหมือนเฟสบุ๊คในรูปแบบของบอร์ด

– หน้ารวมกระทู้ อันนี้บอร์ดทั่วไปไม่ค่อยมี คือแสดงทุกหมวดรวมกัน
– Profile มี Wall
– ระบบ Messaging มันสุดยอด! เวลา PM มันจะจัดกลุ่มเป็น thread แล้ว thread นึงมีมากกว่า 2 คนได้ สามารถลากคนเพิ่มเข้าไปได้ด้วย
– Notification มันก็เด็ด เหมือนเฟสบุ๊ค เวลามีอะไรมันจะเด้งด้านล่าง หรือจะกดไปดูย้อนหลังก็ได้ สามารถตั้งได้ว่าเด้งแค่ไหน เช่นกระทู้นี้มีคนตอบให้เด้ง อันนี้ผมเอาไปต่อยอดใน bd2.in.th ทำ site wide notification ([บล็อคเก่า](/node/876))
– ระบบ user ยืดหยุ่นมาก LDAP ก็ได้ แต่ที่เจ๋งคือ Facebook/Twitter ก็ได้ แล้วก็ยังมีแบบ Connect plugin ให้ระบบอื่นเป็น auth source เลยก็ได้ (เราใช้กับ WordPress)
– Wall ของเว็บ มีคนเปลี่ยน avatar มีกระทู้ก็จะขึ้น หรือจะไปเขียนเองก็ได้
– Wall comment เป็นแบบเฟส คือ threaded ชั้นเดียว

ผมว่าไอ้นี่อะมันคือชุมชนขนาดย่อมได้เลย โดยเฉพาะ wall ที่ทำให้ชุมชนมันใกล้ขึ้น แต่เสียงส่วนมากจากผุ้ใช้ที่ผมได้ยินคือมันใช้ยาก อันนี้ผมเถียงตายเลย มันไม่ใช่บอร์ดที่คุณชินในฟอร์แมตที่คุณเคยใช้ แต่ผมว่ามันใช้ง่ายกว่าเยอะมาก

ทีนี้มาถึง menome ผมนึกไปถีง Google Wave แล้วว่าเออ ไอ้นี่มันเจ๋ง เหมาะมาทำบอร์ด แต่จะทำแบบนั้นก็ยากไป ผมก็ไม่ไหว (Wave ใช้เวลาเขียนสองปีนะครับ และมันคือเวลาอิสระ 40% ของ Full-time engineer ส่วนผมตอนทำงานชอบคิดว่ามีเวลาแบบนั้นทั้งๆ ที่ไม่มี) ก็เมื่อกี้ผมก็เลยไปสำรวจบอร์ดอนิเมะที่ดังๆ อย่าง tirkx แล้วผมเห็นดังนี้

– หัวกระทู้มักจะยาวและมีสาระ (แต่จากประสบการณ์บางกระทู้หัวกระทู้มีแค่คำว่า “เหมือนหัวข้อ”)
– comment 60% จะเข้ามาโฮกกกกกกแล้วก็จากไป หรือเป็น comment ที่แบบว่าไม่อ่านก็ได้
– comment ที่เหลือจะไม่ค่อยมีสาระเท่าหัวข้อกระทู้
– “คิดว่า” การตอบกระทู้ใช้แค่ @mention พอแล้ว ไม่ต้องขนาด quote
– คนจะตอบกระทู้กันประมาณ 2-4 บรรทัด แต่จริงๆ แล้วคิดว่าเอามารวมกันก็อ่านได้ เพียงแต่ที่เขาเหลือเยอะ เลยกดให้มันอ่านง่าย
– category ที่มีสาระกว่าอนิเมะหน่อยอย่างห้องไอทีจะต่างจากนี้สิ้นเชิง comment น้อยแต่สาระเยอะ

ปัญหาที่ผมเห็นชัดๆ คือทำไมเข้ามาโฮกกกกกซายากะะะะะแค่นี้ทำไมต้องแสดงโพสต์ขนาด 400px ทั้งๆ ที่ใช้เวลาอ่านประมาณ 500ms ฉะนั้น ผมเลยได้ spec บอร์ดตัวเองแบบนี้

– หัวกระทู้เป็นแบบ traditional (แบบชาวบ้านเขาใช้กัน)
– comment ผมใช้ระบบ quick reply ถ้าใช้ quick ตอบต้องจบใน 1 บรรทัด ความยาวอาจจะสัก 500 ตัว และจะแสดงเป็น comment เล็กๆ แบบใน stackoverflow
– upvote comment ได้ และต่อไปอาจจะมีการตั้ง threshold
– comment มีโหมดพิมพ์ยาว 10k ตัว comment ที่เขียนในโหมดนี้จะแสดงผลแบบปกติ คือมีชื่อคนโพสต์ avatar และใช้ที่แสดงผลมากกว่า

ทีนี้เลยคิดว่าอีกจุดขายนึงของ Wave คือ realtime ฉะนั้นผมกำลังชอบ ก็เลยจัด socket.io server มาตัวแล้วทำให้ comment รับส่งกันแบบ realtime ไปเลย! ระบบ quick reply ก็จะกลายเป็น chat ไปในตัว ช่วยให้การสนทนาน่าสนใจไปอีก

พอมาเป็น chat ปัญหาที่จะเกิดคือ

– message มันจะเก็บไว้ถาวร เพราะมันคือ comment ในกระทู้ ไม่ใช่ห้องแชทที่เขียนแล้วหายไป ฉะนั้นมันจะรกมาก อันนี้กำลังคิดว่าจะดูจาก upvote ถ้าไม่ถึงก็ hide แต่ comment ในสตรีมให้มันไหลไปเลยไม่มี filter
– message ใหม่มันมาข้างล่าง ซึ่งมันคือหน้าสุดท้าย แต่ถ้าจะอ่านหน้าแรกของกระทู้สิบหน้าต้องกด load more เก้าครั้ง อันนี้คงไม่ใช่ วิธีที่คิดออกตอนนี้คือ unread อยู่ไหนก็โหลดจากหน้านั้นไป ถ้าไม่ถึงหน้าล่าสุดสตรีมจะยังไม่โหลด
– reply แบบเต็มอาจจะไม่ซ่อน
– flooding อันนี้คิดว่า rate limit อาจจะคิดตามความยาวของ post เพราะแน่นอนว่าโพสต์ยาวก็ต้องใช้เวลาพิมพ์มาก ถ้าคุณจะ copy paste ยาวๆ มาฟลัดมันจะติดลิมิตแต่คนทั่วไปถ้าไม่พิมพ์เร็วมากก็ไม่ควรติด
– เมื่อกี้ทดสอบแชทมา พบว่าพอเป็น realtime สิ่งต่อมาที่ต้องมีคือ “user online”

ไม่รู้จะจบโพสต์นี้ยังไงดี เอาเป็นว่าจบห้วนๆ แบบนี้แล้วกัน เพราะบอร์ดเองก็ยังไม่เสร็จ ไว้เขียนแล้วเจออะไรจะเก็บมาเล่าอีกแล้วกันนะครับ

ปล. unread ยังคิดไม่ออกเลยว่าเก็บยังไงดี คือเก็บอะได้ แต่ยังไงให้ efficient

SBG: What I learned

“การเรียนทำให้มีงานทำ กิจกรรมทำให้ทำงานเป็น”

ผมเคยถามพ่อว่าผมเขียน PHP เป็นตั้งแต่ป. 4 (ไปเที่ยวแล้วไม่อยากไป ตอนนั้นบ้านไม่มี laptop เลยตัดสินใจซื้อหนังสือ PHP มาอ่านมาทำ แต่ผมก็จำไม่ได้นักหรอกว่าเขียนเป็นคือเขียนตามหนังสือหรืออะไร แต่ว่าผมเริ่มจากตรงนั้น) เนี่ยผมจะเขียนได้มั้ยว่าวันนี้ประสบการณ์ PHP ผม 7 ปี พ่อบอกว่า ถ้าเขียนแล้วมันมีคนใช้มันมีคนให้ทำอันนั้นสิถึงจะนับ (ก็คงอาจจะต้องเริ่มนับจาก project scale ใหญ่อันแรกของผม Monster Land v1 ตอนป. 6)

ตอนทำ project scale โตๆ พวกนี้ผมทำแบบ Bodyslam ครับ Bodyslam บอกว่า “ชื่อวงเรามาจากที่เราขึ้นคอนเสิร์ทเราจะทุ่มสุดตัว” เช่นเดียวกันผมทิ้งเวลาให้เลย เช่นตอนป. 6 กลับจากโรงเรียนผมไม่สนใจเรื่องโรงเรียนแล้วทำ Monster Land อย่างเดียว เขียน Beta 2 ในสามวัน เขียน Beta 3 และรุ่นสุดท้ายเป็นสัปดาห์ สมัยนั้นผมเปิคดอมหลังเลิกเรียนไม่ได้ผมก็ต้องแอบเปิดและทำเพื่อให้งานมันเสร็จ บางทีพ่อมาปิดปลั๊กทันที

Monster Land ทุกครั้งที่ผ่านมาทำให้ผมเห็นคำว่า Trust ผมเชื่อมั่นว่าเขาโค้ดได้เขาจะมาช่วยงานผม สุดท้ายเขาโค้ดได้ไก่เขี่ย เขาไม่เคยเข้าใจเอนจิ้นเกมสักตัว แม้แต่ระบบสมัคร ระบบ invite ทำงานยังไงก็ไม่รู้ เค้ารู้แค่ว่า admin ui ทำงานยังไง เข้า ftp ยังไง และวันนึงเค้าทำระบบมันพัง ผมต้องเข้าไปแก้หลังเลิกเรียน สุดท้ายพอถึง beta 3 ออกมาเขาบอกว่าผมทำทำไมเสียเวลาทำแล้วตัดของออกแล้วคนเล่นเลิกเล่นหมด ผมวางแผนว่า beta 3 เป็น rewrite ui ใหม่และให้ 4 ออกมาสมบูรณ์แบบซึ่งเอนจิ้นรุ่น beta 2 ไม่มีทางทำได้ ปรากฎว่าได้ยินคำนี้ไปผมเสียกำลังใจและตัดสินใจปิดเกมในวันนั้น..

หลายปีต่อมาเราได้คุยกันอีกครั้งหลังจบป. 6 ไป วันนั้นที่จบป. 6 มีการแจกภาพรุ่นของห้อง ผมให้เพื่อนๆ เซ็นหลังภาพ แล้วหลังกิจกรรมของโรงเรียนผมกลับบ้านไปโดยไม่ได้บอกลาใครเลย แม้เราจะไม่ได้เจอกันอีกเลยหลังจากวันนั้น วันที่ผมเจอเขาอีกครั้งเขาชวนผมทำเกมอีก ผมก็โอเคทำก็ทำเพราะผมเบื่อๆ อยู่ เลยทำเกมขึ้นมาใหม่ คราวนี้ผมใช้ Python ซึ่งเขาทำอะไรไม่ได้แน่ แต่คือผมบอกเองเลยว่าผมเห็นจาก Monster Land แล้วว่าผมทำงาน scale ใหญ่ไม่ได้ถ้าไม่มีคนเร่ง ตอนนั้นเพื่อนผมโทรมาถามความคืบหน้าเกือบทุกวัน ก็เลยต้องยอมให้เขามาทำและสุดท้ายมันซนเอารหัสในฐานข้อมูล (ไม่มี salt) ไปใส่ md5 cracker เล่นแล้วเอามาล็อคอิน ผมตัดสินใจทันทีที่มันเอารหัสผมมาอวดกดปิดเซิร์ฟเวอร์ทันที และหลังจากนั้นเกมนี้ก็หายไปจากโลกไม่มีอีกเลย

หลังจากนั้นมี project DEngine อีก แต่ผมจำไม่ค่อยได้ว่าเราเลิกกันไปเพราะเหตุผลอะไร

ครั้งสุดท้ายที่เราร่วมงานกันคือ DBot ผมบอกว่าผมเห็นแล้วอยากบอต เลยเขียนบอตมา ตอนแรกผมลองแล้วล้มเหลวเขาก็โทรมาหลายๆ ครั้งจนผมคิดว่าเอาวะก็ได้ เลยเปลี่ยนวิธีการและก็เปิดซอร์สการพัฒนามาตลอดบน github แต่แน่นอนว่าไม่ใช่ทุกคนที่จะหัว open source เพื่อนผมต้องการ monetize โครงการ ผมตกลงว่าผมจะ ship core + example เท่านั้น ส่วนฟีเจอร์ advance ให้ไปเขียนเอาเอง ซึ่งที่ผม ship คือออกจากเมืองไปตีมอนในด่านนอกเมืองแล้วฮีลได้ ซึ่งระบบตีและระบบฮีลเป็น core engine ปรากฎว่าเขาพยายามจะแก้ไขแต่ด้วยความที่เขียนโปรแกรมไม่เป็นเลยได้แต่เปลี่ยน string อะไรนิดหน่อยและมันไม่ work เขาว่าของผมไม่ดี ขนาด captcha มันยังถอดไม่ได้ (ต่อมาผมบอกว่าผมทำให้ว่า captcha ขึ้นแล้วขึ้นเตือนแล้ว เขาก็บอกว่าไม่ดีพอ) สุดท้ายผมโมโหว่าถ้าคุณไม่คิดจะเขียนอะไรเลยจะมาหลอกใช้ผม แถมจะเอาสิ่งที่เป็นไปไม่ได้คุณก็ไปทำเอาเอง

เวลาผ่านไปผมรู้จักเพื่อนกลุ่มใหม่และเราจัดตั้งทีม Sunburn Group กัน ตอนแรกเราคุยเรื่องจะทำนิตยสารกัน เราแนะนำว่าจะทำ HTML5 ไปเลย ในกลุ่มก็โอเคกัน ต่อมาผมแนะนำกันในกลุ่มนักพัฒนาในกรุ๊ปว่าจะทำ myAnimeList clone และเพื่อให้มีทีมงานเลยเอาเข้า SBG กันและก็เป็นที่มาของ menome

เวลาผ่านไปหนึ่งเดือน ผมทำงานเช้าเย็นเหมือนที่เคยทำแบบ DEngine และ OvzCP นั่นคือเวลามากที่สุดที่ผมจะทุ่มให้ project ใดๆ แม้แต่งานลูกค้าเข้ามาผมก็ต้องตอบปฎิเสธไปว่าผมไม่ว่าง จนมาถึงต้นเดือน พ.ย.​วันที่โครงการมันเริ่มเสร็จและถึงขั้นตกแต่งด้วยฟีเจอร์เล็กน้อย

ผมเริ่มเฟสตัวเองออกและให้ทีมกราฟฟิคทำงานได้เต็มที่ แต่ด้วยปัญหาอุทกภัยเราต้องย้ายกันไปทำให้เน็ตเราไม่ได้เต็มสปีด ทีมกราฟฟิคที่ควรจะเริ่มงานแล้วก็หยุดหายไปมาเป็นระยะๆ และปลายเดือนหายไปเลย ผมเริ่มบ่นๆ กับเพื่อนเรื่องนี้และพอพ่อถามผมก็เล่าให้ฟัง พ่อบอกว่า โครงการนี้มันมีแต่คนอยากเห็น แต่ไม่มีคนอยากทำ เลิกทำเถอะ ผมก็ทวิตไปตามที่ได้ยินมานั้นก็ทำให้โครงการนิตยสารมันกระตุ้นมาอีกครั้ง หลังจากประชุมสุดท้ายกำหนดวันออกไว้เดือนนี้แล้วก็เงียบหาย ผมทวงไปสองสามรอบว่าจะเอาคอลัมน์ก็ไม่มีใครทำ สุดท้ายผมได้เจอพี่ผมที่ทำงานที่ mars magazine เลยได้ไอเดียมาลองทำเอง ทำเองหมายถึงว่าผมทำทั้งหมดคนเดียวตั้งแต่กราฟฟิค layout content พอออกมาได้รับเสียงตอบรับ “คำแปลไม่ดีเหมือน Google Translate” มีคนมาช่วยเหลือจากนอกกลุ่ม แต่ผมเองชอบคำแปลอันนั้น (ผมไม่ได้รู้ญี่ปุ่นเลยไม่รู้ว่าคำแปลมันดีแค่ไหน แต่ว่ามันเป็น first impression เลยมีค่าสำหรับผมอยู่บ้าง) ก็เลยไม่ได้ตอบไป (จริงๆ คือผมเห็นแล้วแต่ว่าพอมันไม่ใช่ format ที่ผมสนใจเลยปิดเลยแล้วก็ไม่ได้ตอบอะไรเพราะในทวิตก็ไม่ได้เมนชั่นผม) แล้วก็มางอนผมซะอีกว่าเสียเวลาให้แล้วผมไม่ยอมทำอะไร ผมไปขอโทษเค้าก็คงงอนแล้วและไม่ได้ตอบอะไร ก็เลยเอาเถอะช่างมันแล้วกัน แต่ผมก็คิดอยู่ว่าในสถานะตอนนี้เราไม่ได้อยู่ในสถานะที่เลือกได้ว่าคนนี้ช่วยเรารับมั้ยหรือไม่รับ

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

จนมาถึงวันนี้ที่ทำให้ผมยั้วะจนต้องมาเขียนบล็อคอันนี้ ผมทำ .anime อยู่ตามที่กำหนดไว้และบอกว่าใครก็ได้ไปอัพเดตข้อมูลใน menome ให้หน่อย เพราะเรื่องที่เป็นตอนๆ มันต้องอัพเดตตลอดถ้ายังฉาย ผมทำทุกวันเสาร์แต่วันเสาร์ผมไม่ค่อยมีเวลาเพราะทำ .anime ด้วย สิ่งที่ผมได้? Like หนึ่งอันและสุดท้ายผมต้องนั่งคีย์เอง

แถมวันก่อนตอนผมทำ .anime ผมบอกว่าใครก็ได้จับภาพ ben-to มาให้หน่อยของผมมันเป็น hardsub คำตอบที่ได้ “ไปโหลด raw มาแคปเอง”

นี่มันอะไร.. ผมตำแหน่งอะไรกันแน่ ผมไม่ใช่พระเจ้าผมมีขีดจำกัดอยู่ สุดท้ายทั้งหมดที่ผมเขียนไปผมก็ทำเองได้ แต่ว่าถ้าผมหยุดและทำงานเท่ากับคนอื่นจะเกิดอะไรขึ้น? ที่ผมไม่ทำแบบนั้นเหลือเพียงแค่เหตุผลเดียวคือผมรักสิ่งที่ผมสร้าง menome เป็นเหมือนลูกรักที่ผมต้องดูแลให้รอดในช่วงทารกแบบนี้ แต่ .anime ไม่ใช่ ถ้าผมเสร็จเล่มนี้แล้วถ้ายังทำตัวแบบนี้ผมไม่รับประกันว่าเล่มหน้าผมยินดีจะออกให้อีก แล้วผม *เชื่อ* ว่ามันจะมีคนมาทำแบบตอนผมทวงงานว่าเฮ้ยทำไมส่งงานแล้วไม่ยอมทำ กลายเป็นว่าผมเป็นตัว blocker อีก

สิ่งที่ผมได้จากการทำงานเป็นกลุ่มกับนักเรียนคือ

– นักเรียนทำงานแบบทำการบ้าน ผมเคยพูดเล่นๆ ไปแล้วว่าทำอันนี้คือเราทำด้วยใจไม่มีใครบังคับ อย่าทำส่งมาแบบการบ้านที่แบบว่าครูสั่งเปิดเทอมให้ส่งก่อนสอบแล้วใกล้สอบค่อยทำแล้วบอกไม่มีเวลา ตอนแรกผมก็คิดว่าเออกลุ่มนี้น่าจะเข้าใจเพราะทุกคนชอบอนิเมะ แต่กลายเป็นว่าสุดท้ายมีเรากับพี่แมวที่ทำตลอดถ้ามีคำสั่งนอกนั้นทุกคนลอยตัว
– Assign อะไรจี้ถึงตัวเท่านั้น ถ้าผมบอกใครก็ได้ปุ๊บมันจะไม่ใช่ธุระกูแล้วสุดท้ายไม่มีใครรับไปทำแล้วมันก็ไม่เสร็จ ที่ผมไม่ชี้ตัวเพราะไม่รู้จะชี้ใครและมันไม่ดีเพราะเขาจะมองว่าทำไมต้องเป็นกู (เสียใจด้วยเธอเป็นแพะรับบาปที่ทั้งกลุ่มไม่ยอมทำงาน)
– Roadmap เขียนให้ชัดเจนเสมอให้เราเห็นว่างานยังอีกเยอะ งานนี้เสร็จแล้วทำอันนี้ ตอนนี้ไม่มี roadmap .anime ผมต้องมาถามเรื่อยๆ ว่าเสร็จอันนี้แล้วเนี่ยให้ทำอะไรต่อ ไม่มีคำตอบผมก็ลอยตัวบ้างละ
– Issue tracker เป็นกุญแจสู่ความสำเร็จ ตอน OvzCP ผมใช้ bugzilla file ทุกงานไว้ วันนึงผมตื่นมาผมบอกตัวเองว่าวันนี้จะทำอะไรก็ได้แต่ต้องปิด 1 issue และ issue บางอันง่ายขี้ไก่ทำห้านาทีเสร็จก็มี ผมก็ถือว่าทำแล้ว บางทีดึกๆ มาปิดเองอีก 1 issue ก็มีเพราะมันสนุก แต่คือพอถึงวันนึง issue ขี้ไก่จะโดน issue ยากๆ block และผมไม่มีทางเลือกนอกจากจะทำ สุดท้ายงานจึงเสร็จตามกำหนดเวลาได้แน่นอนและมีคุณภาพเพราะไม่ได้ฝืนตัวเอง ตอน DEngine ผมก็ใช้ model นี้ สำหรับกลุ่มนี้ผมเคยลากเข้าไป issue ทีนึงสุดท้ายไม่มีใครใช้เป็นและเลิกใช้กัน ผมเคยหลายครั้งแล้วที่พาเด็กมัธยมเข้าไปใช้ issue tracker แต่ไม่เคยรอดกลับมาสักครั้ง กลุ่มนี้ก็เหมือนกันผมเคยลากเข้าไปและไม่มีใครใช้สุดท้ายใช้ fb docs อยู่ดี แต่มัน assign ชี้เป้าหมายไม่ได้
– VCS สำคัญมากเวลาทำงานกลุ่ม ผมต้องมานั่ง sync ขึ้น sync ลงเสียเวลา บางทีอัพทับกัน บางทีต้องรอคนโน้นทำงานให้เสร็จไฟล์นี้เพียงแค่ข้ออ้างว่าคอมแรงไม่พอจะรัน git (ขอโทษ เครื่อง 333MHz ram 256 ผมมี svn git hg และรัน apache mysql นะครับ) แต่ปัญหาอีกอันนึงที่จะเจอคือ programmer ไม่มาจากสาย unix จะไม่เข้าใจ vcs อันนี้ผมไม่รู้จะแก้ยังไง จะบอกใช้ gui ก็จะบอกเครื่องไม่แรง จะบอกใช้ github for mac ก็ไม่มี mac -_-‘ ทั้งๆ ที่จริงๆ ถ้าเข้าใจแล้วจะพบว่าใช้แค่ add commit push
– อันนี้จากประสบการณ์ที่โรงเรียนคือหัวหน้ากลุ่มควรจะ assign งานให้เป็นเพราะถ้าปล่อยไว้สมาชิกในกลุ่มจะลอยตัว ผมก็ลอยตัว คือถ้าเข้าไปยุ่งเหมือนจะไปเสือกงานเขา เหมือนแกว่งเท้าหาเสี้ยนมากกว่าเลยไม่มีใครอยากยุ่ง ฉะนั้นคนที่เป็นหัวหน้าจะต้อง assign ชี้ไปเลย หรือไม่ชี้ก็ต้องตกลงกันให้ได้ว่าใครจะทำเดี๋ยวนั้น ถ้าแปะ task ไว้หนึ่งอันไม่มีใครหยิบไปหรอก