เมื่อเร็วๆ นี้ฉันได้พูดคุย "พูดคุย" กับชั้นเรียน Full Stack ของ "Kyle Coberly" ที่ Galvanize การพูดคุยเป็นแบบปลายเปิดโดยสิ้นเชิง “มาบอกชั้นเรียนของฉันเกี่ยวกับตัวคุณหรือประสบการณ์ของคุณในโลกการพัฒนาซอฟต์แวร์” เป็นคำแนะนำเดียวที่ฉันได้รับ

กลายเป็นว่าการได้พูดคุยถึงตัวคุณเองกับกลุ่มนักพัฒนาหน้าใหม่ถือเป็นรางวัลสำหรับคุณทั้งคู่ สำหรับฉัน สิ่งนี้นำมาซึ่งการไตร่ตรองเกี่ยวกับเส้นทางของฉันในฐานะนักพัฒนา ซึ่งเป็นหัวข้อที่ฉันไม่เคยใช้เวลาพิจารณามากนัก ฉันเคยทำงานหลายอย่างในอาชีพระยะสั้น [ค่อนข้าง] ของฉัน และฉันโชคดีที่มีเจ้านายที่คอยส่งเสริมและสนับสนุนพฤติกรรมนั้น แม้ว่านักพัฒนารายอื่นอาจทำให้นักพัฒนาซอฟต์แวร์รายอื่นกลัวที่จะนึกถึงวิศวกรเฟิร์มแวร์ที่เขียนแอปพลิเคชัน Javascript แบบเต็มสแต็ก (จริงๆ แล้วฉันกลัวนะ) แต่ก็เป็นคำอธิบายที่ฉันชอบมาก

ขณะที่ฉันเดินผ่านชีวิตนักพัฒนาของฉัน ฉันคิดถึงความก้าวหน้าของฉันผ่านเทคโนโลยีและภาษา — เฟิร์มแวร์ C/Assembly ระดับต่ำ, C++ สำหรับการประมวลผลบนเซิร์ฟเวอร์องค์กร, C# ในฐานะไคลเอนต์ที่ต้องพบปะกับผู้ใช้, ปลั๊กอิน Atlassian ใน Java, Backbone ตัวแรก .js ตามด้วยเว็บแอปพลิเคชัน Ember.js เพื่อนร่วมงานของฉันจะสังเกตเห็นข้อยกเว้นที่ชัดเจนอย่างหนึ่งจากรายการนั้น: Python

Python ไม่เหมาะกับความก้าวหน้าเพราะมันถูกถักทอไว้ทั่วทั้งงานและโครงการของฉันในรูปแบบใดรูปแบบหนึ่ง สคริปต์แบบใช้ครั้งเดียว, งานของผู้ปฏิบัติงานที่ไม่มีหัว, การบูรณาการอย่างต่อเนื่องแบบกระจาย, PyQt GUI, แอป CherryPy และ Django มีเกือบทุกอย่างเพียงเล็กน้อย เป็นภาษาที่ฉันใช้เมื่อนึกถึงปัญหา

ช่างเป็นแนวคิดที่ทรงพลังจริงๆ! นักพัฒนาซอฟต์แวร์ทุกคนมี "ภาษาที่เป็นธรรมชาติ" นักพัฒนาหลายคนสามารถพูดได้หลายภาษา แต่ฉันเดาว่าส่วนใหญ่จะมีหนึ่ง (หรืออาจจะสอง) ที่เป็นรายการโปรดของพวกเขา สิ่งที่ทำให้แนวคิดนี้มีประสิทธิภาพคือการรู้ภาษาธรรมชาติของนักพัฒนาสามารถเปลี่ยนวิธีที่คุณมีส่วนร่วมกับเขา/เธอได้ มันเป็นรูปแบบหนึ่งของการ “เอาตัวเองเข้าข้างพวกเขา” ที่ช่วยให้คุณพิจารณาว่าพวกเขาจะคิดอย่างไรและ [หวังว่า] จะแก้ปัญหาที่ได้รับได้ ในบทบาทผู้นำหรือเจ้าของผลิตภัณฑ์ คุณสามารถประเมินว่าพวกเขาอยู่ในจุดใดในการค้นพบและให้คำแนะนำหรือคำแนะนำอย่างทันท่วงที ในฐานะผู้ทำงานร่วมกัน คุณสามารถคาดการณ์และบรรเทาปัญหาทั้งในการค้นพบและการพัฒนาได้

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

แล้วภาษาธรรมชาติของคุณคืออะไร?