Thursday, November 21, 2013

ทำไมมันขายไม่ออกวะ

ครับ หลังจากที่ผมเอาTDDไปขายแล้วเกิดอุบัติเหตุดราม่าขึ้นมาจนเซ็งไปหลายวัน
พอจิตใจเริ่มสงบ + ไประบายใน Testing Wednesday มา ก็ได้มุมมองและข้อคิดกลับมา (ดราม่าจนเสียการเสียงานแล้วต้องได้อะไรกลับมาบ้างเนอะ :)))) ถ้ามีโอกาสก็ไปกันนะครับ อิอิ

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

ก่อนอื่นเลย มันเกิดอะไรขึ้นกับการขายของผม?

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

เอาล่ะครับ ถึงเวลา อ่ะ มาทำกัน เอาน้องๆมาทำด้วย เริ่มแรกก็ดีครับ ไปได้เรื่อยๆ

เริ่มมาก็เขียนเทสก่อน เขียนสเปคลงไป 1 ข้อ
เสร็จแล้วก็ไปเขียนโค้ด ตอนแรกยังไม่มีคลาสเลย ก็ไปสร้างคลาส
สรุปว่าทำตามกระบวนการจนเคสแรก ผ่าน ก็ commit
แล้วก็ทำซ้ำวนไปเรื่อยๆ จนผมคิดว่า เอาล่ะ น่าจะใช้ได้แล้ว ก็รันขึ้นมาเลย แล้วก็ดูว่าได้ผลมั้ย
โอเค ผ่าน

กำลังจะทำต่อไป ตรงนี้แหละครับ
ยกตัวอย่าง สมมติว่าผมกำลังทำ undo/redo command ถ้าเราจะทำ undo ได้ เราก็ต้องเก็บ state ก่อนหน้าเอาไว้ใช่มั้ยครับ ผมก็บอกว่า ให้เพิ่มเทสลงไปอีก 1 ข้อ นั่นคือ ตัว command ต้องเก็บ state เอาไว้
อันที่จริงผมวางแผนเอาไว้ว่า ตรงนี้เทสมันเริ่มเยอะแล้วใช่มั้ยล่ะ ควรจะแตกคลาสที่เป็นตัว operation ออกไปดีมั้ย

แต่..

กลับถูกแย้งมาว่า ไม่เห็นต้องเทสข้อนี้เลย แค่ do แล้ว undo ได้ก็น่าจะพอแล้วนี่

โอ้พระเจ้า พี่พูดอะไรออกมาน่ะ(นึกถึงเสียงพากย์ในละครเกาหลีไว้นะฮะ)

นี่มัน unit test นะ สิ่งที่กำลังขอให้ทำมันไม่ใช่แล้ว โลกแตกแน่ถ้าทำอย่างที่ว่า

และต่อจากนี้คือดราม่าครับ ไม่อยากเล่า...อาย ขอรวบๆเลยละกัน สิ่งที่ได้มา
  • ท่าเยอะไปไหน กว่าจะทำเสร็จ Performance/Efficiency ทั้งทีมไม่หายไปหมดเหรอ
  • ทำไมต้องแตก Class มั้นเปลืองมั้ย
  • Function ยาวๆ ไม่ extract ได้มั้ยล่ะ เขียน comment เอา
  • Static method มันบาปยังไง
  • Code quality มันคืออะไร? ไม่ใช่ว่าเขาไม่เข้าใจนะ แต่ขอให้ผมอธิบาย ตอนนั้นก็อธิบายออกไปไม่ได้เลย
  • เอาบทความนี้มาให้ดู http://37signals.com/svn/posts/3159-testing-like-the-tsa
  • วิธีถ่ายทอดของผมห่วยแตกมาก พาเพื่อนเซ็ง
  • ใช้คำพูดไม่ดี เวลาไม่ได้ดั่งใจ
  • ตกลงมึงอยากทำงาน หรือทำ TDD!!!
  • มีอีกนะ แต่นึกไม่ออก มันเบลอไปหมดตอนนั้น

ข้อรองสุดท้ายมันสะเทือนใจผมมาก มันอะไรกัน ที่ขวนขวายหาวิธีการอะไรต่างๆเยอะแยะก็เพราะอยากให้งานมันดีขึ้นนะเฮ้ย!

แต่ดูเหมือนจะไม่มีใครมองอย่างนั้น

ผมดูเป็นคนบ้าตำรา ประณีประนอมไม่ได้ ไม่ได้สนใจทีมหรืองานเท่าไหร่หรอก

นี่มันยิ่งกว่าโดน Stun 10วิ หรือโดนรุมตุ๋ยกลางป่าอีกครับ ผมแทบอยากจะออกจากเกมเสียเดี๋ยวนั้นเลย

เสีย Self ครับ บอกตรงๆ

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

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

แน่นอน ผมไม่ได้อยากให้เป็นอย่างนี้เลย

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

ถ้ามันวอดวาย เราก็ค่อยรอตบทีหลัง

สวัสดีครับ
OK bye





No comments:

Post a Comment