ช่างฝีมือทุกคนเริ่มการเดินทางด้วยชุดเครื่องมือพื้นฐานคุณภาพดี ช่างไม้อาจต้องการไม้บรรทัด, เกจวัด, เลื่อยสักคู่, กบเหลาไม้ดีๆ, สิ่วคมๆ, สว่านและด้ามจับ, ค้อนไม้ และแคลมป์ เครื่องมือเหล่านี้จะถูกเลือกมาอย่างพิถีพิถัน สร้างมาเพื่อให้ทนทาน ทำงานเฉพาะอย่างโดยไม่ทับซ้อนกับเครื่องมืออื่น และที่สำคัญที่สุดคือ เมื่อหยิบมาใช้งานแล้วจะรู้สึกเข้ามือสำหรับช่างไม้ที่กำลังพัฒนาฝีมือ

แล้วกระบวนการเรียนรู้และปรับตัวก็ตามมา เครื่องมือแต่ละชิ้นจะมีเอกลักษณ์และมีลูกเล่นเฉพาะตัว และต้องการการจัดการที่พิเศษในแบบของตัวเอง แต่ละชิ้นต้องลับคมด้วยวิธีที่ต่างกัน หรือถือในตำแหน่งที่ต่างกัน เมื่อเวลาผ่านไป แต่ละชิ้นจะสึกหรอตามการใช้งาน จนด้ามจับดูเหมือนแม่พิมพ์ที่หล่อมาจากมือของช่างไม้ และพื้นผิวที่ใช้ตัดจะอยู่ในแนวที่สอดคล้องกับมุมที่จับเครื่องมือพอดิบพอดี ณ จุดนี้ เครื่องมือเหล่านั้นจะกลายเป็นสื่อกลางจากสมองของช่างไปสู่ผลิตภัณฑ์ที่เสร็จสมบูรณ์—พวกมันได้กลายเป็นส่วนขยายของมือไปแล้ว เมื่อเวลาผ่านไป ช่างไม้จะเพิ่มเครื่องมือใหม่ๆ เข้ามา เช่น เครื่องเจาะรูเดือย (biscuit cutters), เลื่อยตัดองศาแบบมีเลเซอร์นำทาง (laser-guided miter saws), จิ๊กทำหางเหยี่ยว (dovetail jigs)—ทั้งหมดนี้คือเทคโนโลยีที่ยอดเยี่ยม แต่เชื่อเถอะว่าพวกเขาจะมีความสุขที่สุดเมื่อได้ถือเครื่องมือดั้งเดิมเหล่านั้นไว้ในมือ และรู้สึกได้ถึงกบเหลาที่ 'ร้องเพลง' ขณะที่มันไสผ่านเนื้อไม้อย่างลื่นไหล

เครื่องมือช่วยขยายความสามารถของคุณ ยิ่งเครื่องมือดีเท่าไหร่ และคุณรู้วิธีใช้พวกมันเก่งขึ้นเท่าไหร่ คุณก็จะมีความสามารถในการผลิตได้มากขึ้นเท่านั้น เริ่มต้นด้วยชุดเครื่องมือพื้นฐานที่ใช้งานได้ทั่วไป เมื่อคุณมีประสบการณ์มากขึ้นและพบความต้องการพิเศษ คุณจะเพิ่มเครื่องมือเข้าไปในชุดพื้นฐานนี้ เช่นเดียวกับช่างฝีมือ จงเตรียมพร้อมที่จะเพิ่มเครื่องมือใหม่ๆ เข้าไปในกล่องเครื่องมือของคุณอย่างสม่ำเสมอ จงมองหาวิธีการที่ดีกว่าในการทำสิ่งต่างๆ อยู่เสมอ หากคุณตกอยู่ในสถานการณ์ที่คุณรู้สึกว่าเครื่องมือที่มีอยู่ไม่สามารถจัดการได้ ให้จดบันทึกไว้เพื่อมองหาบางสิ่งที่แตกต่างหรือมีพลังมากกว่าที่น่าจะช่วยได้ ให้ความต้องการเป็นตัวขับเคลื่อนการจัดหาเครื่องมือของคุณ

โปรแกรมเมอร์มือใหม่หลายคนพลาดตรงที่หันไปพึ่งพา 'เครื่องมือทรงพลัง' (Power Tool) เพียงชิ้นเดียว เช่น Integrated Development Environment (IDE) บางตัว และไม่เคยออกจากหน้าตาการใช้งาน (Interface) ที่แสนสะดวกสบายนั้นเลย นี่เป็นข้อผิดพลาดจริงๆ คุณต้องทำตัวให้ชินกับขอบเขตที่กว้างไปกว่าข้อจำกัดที่ IDE กำหนดไว้ วิธีเดียวที่จะทำได้คือรักษาชุดเครื่องมือพื้นฐานให้คมและพร้อมใช้งานอยู่เสมอ

ในบทนี้เราจะมาคุยกันเรื่องการลงทุนในกล่องเครื่องมือพื้นฐานของคุณ เช่นเดียวกับการคุยกันเรื่องเครื่องมือที่ดี เราจะเริ่มต้น (ในหัวข้อที่ 16, พลังของ Plain Text) โดยการดูที่วัตถุดิบของคุณ สิ่งที่คุณจะต้องขัดเกลามัน จากนั้นเราจะย้ายไปที่โต๊ะทำงาน หรือในกรณีของเราคือคอมพิวเตอร์ คุณจะใช้คอมพิวเตอร์ของคุณอย่างไรเพื่อให้ได้ประโยชน์สูงสุดจากเครื่องมือที่คุณใช้? เราจะมาคุยกันในหัวข้อที่ 17, Shell Games เมื่อเรามีวัสดุและโต๊ะทำงานแล้ว เราจะย้ายไปยังเครื่องมือที่คุณน่าจะใช้บ่อยกว่าชิ้นอื่นๆ นั่นคือ Editor ของคุณ ในหัวข้อที่ 18, Power Editing เราจะแนะนำวิธีที่ทำให้คุณทำงานได้อย่างมีประสิทธิภาพมากขึ้น

เพื่อให้แน่ใจว่าเราจะไม่สูญเสียงานอันมีค่าของเราไป เราควรใช้ระบบ Version Control (หัวข้อที่ 19, Version Control) อยู่เสมอ—แม้แต่เรื่องส่วนตัวอย่างเช่นสูตรอาหารหรือบันทึกย่อต่างๆ และเพราะสุดท้ายแล้วกฎของเมอร์ฟี (Murphy's Law) นั้นเป็นมุมมองในแง่ดีเกินไปเสียด้วยซ้ำ คุณจะเป็นโปรแกรมเมอร์ที่ยอดเยี่ยมไม่ได้จนกว่าคุณจะเชี่ยวชาญในหัวข้อที่ 20, Debugging

คุณจะต้องมี 'กาว' เพื่อผูกโยงความมหัศจรรย์ส่วนใหญ่นี้เข้าด้วยกัน เราจะพูดถึงความเป็นไปได้บางอย่างในหัวข้อที่ 21, Text Manipulation

สุดท้ายนี้ แม้แต่หมึกที่จางที่สุดยังดีกว่าความทรงจำที่ดีที่สุด จงคอยติดตามความคิดและประวัติของคุณ เหมือนที่เราอธิบายไว้ในหัวข้อที่ 22, Engineering Daybooks

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