สำนวนควรรู้ในการพัฒนาซอฟท์แวร์
ตั้งแต่มาเรียนป.โทจนทำงานกับฝรั่งก็เจอคำเหล่านี้กรอกหูกันบ่อยๆครับ รู้ไว้ซะหน่อยเวลาพูดมาจะได้ไม่งง
Barking up the wrong tree / เห่าผิดต้น
คิดหรือทำอะไรโดยได้รับแนวทางที่ผิด [reference]
เปรียบเทียบว่าเหมือนหมาที่ยืนเห่าต้นไม้เพราะถูกหลอกว่าเหยื่อปีนขึ้นไป
บางครั้งสำนวนนี้ใช้ร่วมกับ “red herring” ได้เวลาพูดถึงการแก้บั๊ก. “He followed the red herring and spent time barking up the wrong tree.”
The ball is in your court / บอลอยู่ฝั่งคุณแล้ว
ฉันทำส่วนของฉันแล้ว คราวนี้ตาคุณจัดการต่อ [reference]
มาจากกีฬาเทนนิส ถ้าบอลข้ามมาฝั่งเราแล้ว เราต้องตีกลับไป
Ballpark / สนามเบสบอล
ตัวเลขโดยประมาณ [reference]
เช่น ผู้บริหารถามว่าเรามีพนักงานเป็นผู้หญิงกี่คน เอาแค่ ballpark estimation ก็พอ ไม่จำเป็นต้องเป๊ะ
ทฤษฎีนึงบอกว่าคำพูดนี้มาจากสมัยอเมริกากับรัสเซียแข่งไปอวกาศ ซึ่งตอนนั้นยังคำนวณจุดลงจอดได้ไม่แม่นยำ ถ้ายานอวกาศกลับมายังโลกในบริเวณที่เตรียมไว้ ถือว่ายังอยู่ในสนามเบสบอล (ballpark) เพราะ เหมือนกีฬาเบสบอลถ้าตีลูกแล้วยังอยู่ในสนามก็ยังเล่นต่อได้
อีกทฤษฎีหนึ่งบอกว่ามันหมายถึงการที่ผู้บรรยายในสนามเบสบอลประกาศตัวเลขผู้ชมโดยประมาณในแต่ละนัด
Bikeshedding / เพิงเก็บจักรยาน
การถกเถียงกันไม่ยอมจบในประเด็นหยิบย่อยเพราะใช้ความรู้น้อย ทุกคนจึงมีความเห็น แทนที่จะสนใจประเด็นหลักที่ต้องใช้ความคิดมากกว่า [reference]
ตัวอย่างคลาสสิกคือ คณะกรรมการสร้างโรงไฟฟ้าพลังงานนิวเคลียร์มัวแต่เถียงกันในประเด็นว่าจะสร้างเพิงเก็บจักรยานของพนักงานอย่างไร จะใช้วัสดุอะไร จะทาสีอะไร แทนที่จะถกกันเรื่องการออกแบบตัวโรงไฟฟ้า ซึ่งสำคัญกว่ามากแต่ก็ต้องใช้ความรู้และความคิดมากในการวิจารณ์และถกเถียง
Build a better mousetrap / สร้างกับดักหนูที่ดีกว่า
คิดค้นสิ่งที่ดีกว่าสิ่งที่มีอยู่แล้วและใช้กันอย่างแพร่หลาย [reference]
มาจากคำกล่าวเต็มๆที่ว่า “ถ้าคุณสร้างกับดักหนูที่ดีกว่าใคร ทั้งโลกจะแห่กันมาหน้าระตูบ้านคุณ”
Call it a day / พอละวันนี้
เลิกงานเร็ว หยุดทำงานในวันนั้น [reference]
มาจาก “call it half a day” (นับครึ่งวันละกัน) ที่เคยบันทึกว่าถูกใช้ตั้งแต่ปี 1838
Drink the Kool-Aid / ดื่มคูลเอต
ก. เชื่อความคิดหรือแนวทางที่ถูกบอกอย่างสุดใจ ไม่ว่าจะถูกหรือผิด ข. ยอมทำตามที่คนส่วนใหญ่ทำ มักใช้เมื่อตอนแรกไม่เห็นด้วยแล้วยอมย้ายข้างในที่สุด [reference]
สำนวนนี้มาจากการฆ่าตัวตายหมู่ตามความเชื่อในปี 1978 ที่กียานา Jim Jones ผู้นำกลุ่มชักชวนสาวกกว่า 900 คนให้ดื่มเครื่องดื่มรสองุ่นยี่ห้อ Kool-Aid ซึ่งผสมยาพิษ
ตัวอย่างเช่น หลังจากไม่ยอมเปลี่ยนไปเขียน javascript เวอร์ชั่นใหม่มาหลายเดือนในที่สุดจิมก็ยอมดื่มคูลเอตย้ายตามคนรอบตัวที่เปลี่ยนกันไปหมดแล้ว
Drop the ball / ทำบอลหล่น
ก่อความผิดพลาด [reference]
มีที่มาจากเกมอเมริกันฟุตบอล ซึ่งห้ามทำบอลหล่นในขณะเล่น
Eat your own dogfood / Dogfooding / กินอาหารสุนัขของตัวเอง
หมายถึงการที่บริษัทใช้ผลิตภัณฑ์ของตัวเองเหมือนกับลูกค้าเพื่อทดสอบการใช้งาน [reference]
ที่มาบ้างก็ว่ามาจากโฆษณาอาหารสุนัข Alpo ที่นักแสดงคนหนึ่งกล่าวว่าเขาให้หมาของเขากิน Alpo บ้างก็บอกว่า มาจากประธานบริษัทอาหารสัตว์ Kal Kan ที่พูดกันว่ากินอาหารหมาโชว์ในการประชุมผู้ถือหุ้น
ในปี 1988 ที่ไมโครซอฟท์Paul Maritz ส่งอีเมล์บอก Brian Valentine ที่เป็นผู้จัดการทีมทดสอบ โดยตั้งหัวข้ออีเมล์ว่า “Eating our own Dogfood” เสนอให้เขาเพิ่มการใช้งานของผลิตภัณฑ์ไมโครซอฟท์เองภายในบริษัท นับแต่นั้นคำว่า dogfood ก็แพร่หลายไปทั่วบริษัท
In Layman’s terms / พูดภาษาชาวบ้าน
อธิบายเรื่องยากๆหรือซับซ้อน โดยใช้คำศัพท์ที่คนทั่วไปที่ไม่ได้มีความรู้ในสาขานั้นๆสามารถเข้าใจได้ [reference]
ต้นตอมาจากการเผยแพร่ศาสนา “layman” เป็นสมาชิกทั่วไปของโบสถ์ที่ช่วยงานพระ ในอดีตการเทศน์จะใช้ภาษาละติน ซึ่งน้อยคนที่ไม่ใช่พระจะเข้าใจ ดังนั้น การเทศน์โดยใช้ภาษาพื้นบ้านของ layman จะช่วยให้ศาสนาเข้าถึงพวกเขาได้มากขึ้น
Low hanging fruits / ผลไม้ที่ห้อยต่ำ
เป้าหมายที่ทำให้สำเร็จได้ง่ายโดยไม่ต้องใช้ความพยายามมาก [reference]
เปรียบเปรยผลไม้ที่กิ่งห้อยต่ำ ว่าหยิบง่าย ไม่ต้องเปลืองแรงปีนเก็บ
แต่เอาเข้าจริงๆพวก low hanging fruits นี่ดูง่ายแต่พอลงมือแล้วกุมขมับทุกที
Play it by ear / เล่นตามสถานการณ์
แทนที่จะวางแผนไว้ก่อนล่วงหน้า รอดูว่าอะไรเกิดขึ้นก่อน แล้วปรับแผนตามสถานการณ์ [reference]
มาจากการเล่นดนตรีโดยไม่อ้างอิงโน้ต
Problem Exists Between Keyboard And Chair / ปัญหาน่ะอยู่ระหว่างคีย์บอร์ดกับเก้าอี้
ปัญหาเป็นความผิด (โง่) ของผู้ใช้ [reference]
มีหลายคำที่หมายความแบบเดียวกัน
- PEBKAC (ตัวย่อ “Problem Exists Between Keyboard And Chair”),
- POBCAK (ตัวย่อของรัฐบาลสหรัฐ “Problem Occurs Between Chair And Keyboard”),
- PICNIC (ตัวย่อ “Problem in Chair; Not in Computer”)
- ID-10-T error — พอสะกดจะได้คำว่า “IDIOT” (ไอ้งั่ง) เรียกสั้นๆว่า “Ten-T error” หรือบางทีก็เขียน “ID:10T error”.
Ring a bell / สั่นกระดิ่ง
รู้สึกคุ้นๆถึงสิ่งที่กล่าวถึง [reference]
ทฤษฎีแรกบอกว่ามาจากการทดลองของ Pavlov กับสุนัข เมื่อป้อนอาหารแล้วสั่นกระดิ่ง เมื่อเวลาผ่านไป สุนัขก็จำเสียงสั่นกระดิ่งว่าเกี่ยวกับอาหาร พอได้ยินเสียงกระดิ่ง น้ำลายก็ไหลแม้ว่าจะไม่มีอาหารก็ตาม
อีกทฤษฎีบอกว่า กระดิ่งเป็นอุปกรณ์ที่มีไว้เตือนความจำอยู่แล้ว ไม่ว่าจะเป็นกระดิ่งเลิกเรียน นาฬิกาปลุก ฯลฯ
Rocket science / สร้างยานอวกาศ
ใช้เปรียบถึงอะไรก็ตามที่ซับซ้อน [reference]
เพราะสร้างยานอวกาศนี่ฟังดูปวดหัวใช้ได้เลยทีเดียว
อีกแบบที่คนชอบใช้คือเปรียบว่ามันไม่ซับซ้อนเหมือนสร้างยานอวกาศหรอก แต่พอพูดอีหรอบนี้นะ อธิบายเสร็จหัวหมุนทุกที
Reinvent the wheel / คิดค้นล้อใหม่อีกครั้ง
เสียเวลาสร้างสิ่งที่มีคนสร้างไว้ดีแล้วใหม่ [reference]
เป็นที่รู้กันว่า ล้อ เนี่ยได้ถูกประดิษฐ์ขึ้นตั้งแต่สมัยโบราณ มีใช้กันแพร่หลาย ถ้าอยู่ดีๆมานั่งคิดค้นล้อ (ราวกับไม่เคยเห็นล้อมาก่อน) ก็เอาเวลาไปทำอย่างอื่นดีกว่า
แต่ถึงอย่างงั้นก็เถอะ ชาวโลกเราก็ชอบเขียนอะไรซ้ำๆกันประจำ
Red herring / ปลาแฮร์ริ่งแดง
บางอย่างที่ทำให้เข้าใจผิดหรือหลงประเด็นสำคัญ [reference]
ต้นตอมาจากการฝึกม้าให้ลากซากหมาจิ้งจอกหรือแมว แต่ถ้าหาซากไม่ได้ก็เอาปลารมควันไปใช้แทน
ใช้บ่อยเวลา debug แล้วเจอ error message ที่ไม่เกี่ยวข้องกับปัญหาที่แท้จริง
Murphy’s Law / กฎของเมอร์ฟี่
อะไรก็ตามที่สามารถผิดพลาดได้ มันจะเกิดขึ้น [reference]
ถ้าออกแบบระบบโดยที่มีกรณีนึงพังแน่ๆ แล้วคิดว่ากรณีนั้นไม่เกิดขึ้นหรอกเพราะโอกาสต่ำมาๆ ระวังตัวไว้ครับ เพราะถ้ามันมีโอกาสเกิดไม่ว่าจะต่ำแค่ไหนมันก็เกิดได้
มีที่มาจากวิศวกรคนหนึ่งชื่อ Murphy สร้างอุปกรณ์แล้วพอใช้พังอนาถ จบงานแกพูดทำนองนี้ออกมา คนในหน่วยงานเลยเอามาตั้งเป็นกฎซะเลย
Shit happens / ความเหี้ยเกิดขึ้นได้
เมื่อบางอย่างเกิดขึ้นนอกเหนือความควบคุมของคุณแล้วทำให้เกิดสถานการณ์เลวร้าย [reference]
เช่น demo งานให้ทั้งบริษัทฟัง แล้ว server เกิดพังกะทันหันทำให้ demo พังไม่เป็นท่า หลังจากนั้นหัวหน้าก็ปลอบใจว่า เออ ไม่เป็นไร shit happens!
Show [someone] the ropes / สอนใช้เชือก
อธิบายหรือสอนวิธีทำ [reference]
มาจากการเดินเรือ เชือกเป็นอุปกรณ์สำคัญในการควบคุมเรือ ชาวเรือที่มีประสบการณ์ก็จะสอนเด็กหัดใหม่ให้ใช้เชือกให้เป็น จะได้เดินเรือได้
Technical debt / หนี้ทางเทคนิค
การสะสมโค้ดที่เขียนไว้ไม่ดีนักเนื่องจากการเลือกทางลัดหรือการตัดสินใจทางเทคนิคแย่ๆในอดีต [reference]
เปรียบเทียบเหมือนกับหนี้ทางการเงิน ว่าถ้าไม่จ่ายหนี้ก็จะสะสมดอกเบี้ยไปเรื่อยๆ ดอกเบี้ยในที่นี้คือความลำบากในการเพิ่มเติมสิ่งใหม่ๆในภายหลัง และทำให้เพิ่มต้นทุนในการทำโครงการในปัจจุบันและอนาคต
The whole enchilada / เอนชิลาด้าทั้งอัน
สถานการณ์โดยรวม, ภาพรวม, แผนโดยรวม, ทั้งหมดที่มี [reference]
“enchilada” เป็นชื่ออาหารเม็กซิกัน แต่ที่มาว่าทำไมถึงกลายเป็นสำนวนนี้ยังเป็นปริศนาอยู่
Yak shaving / โกนขนจามรี
พอจะทำอะไรอย่างนึงแล้วต้องไปทำขั้นตอนอื่นๆอีกหลายๆขั้นตอนจนกว่าจะได้ทำสิ่งที่ตั้งใจไว้ตอนแรก [reference]
“อยากล้างรถ” “แต่น้ำยาหมด ต้องไปซื้อ” “แต่จะซื้อต้องไปขึ้นทางด่วน ถ้าไม่มีบัตรทางด่วนขี้เกียจรอคิวจ่ายเงิน” “เราไม่มีบัตร แต่ข้างบ้านมี” “แต่เพื่อนบ้านคงไม่ให้ยืมเพราะทำหมอนขนจามรีที่ยืมมาพัง เพื่อนบ้านยังโกรธอยู่” “งั้นไปสวนสัตว์โกนขนจามรีกัน!”
ถ้ามีสำนวนอื่นๆเสนอมาได้ใน response ข้างล่างเลยครับ