ช่วงวันหยุดหยิบหนังสือ The Passionate Programmer มาอ่าน
โดยเนื้อหาในหนังสือประกอบไปด้วย 5 ส่วนรวมทั้งหมดมี 53 หัวข้อ
จึงทำการสรุปไว้นิดหน่อย
น่าจะมีประโยชน์สำหรับการพัฒนา software บ้าง
ส่วนที่ 1
- ต้องทำการศึกษาเทคโนโลยีใหม่ ๆ อยู่อย่างเสมอ
- ต้องรู้ด้วยว่าความต้องการในตลาดงานเป็นอย่างไร อะไรเป็นที่ต้องการและไม่ต้องการ
- ต้องเข้าใจในตัว business ด้วยนะ
- อย่าเป็นคนที่น้ำเต็มแก้ว ต้องเรียนรู้จากผู้อื่นเสมอ
- ทำการเรียนรู้เพื่อเข้าใจแต่ละภาษาโปรแกรมว่าแตกต่างกันอย่างไร มีเป้าหมายอย่างไร
- อย่ากลัวที่จะตัดสินใจ เพราะว่าความกลัวทำให้เราไม่กล้าลงมือทำอะไร
- ต้องทำการ update สิ่งที่รู้และไม่รู็อยู่อย่างสม่ำเสมอ เพื่อให้เรารู้ตัวเอง
- ต้องลงในรายละเอียดของแต่ละภาษาโปรแกรม แต่ละเทคโนโลยีที่ใช้งาน
- พยายามใช้เทคโนโลยีที่แตกต่าง ทั้งระบบใหญ่และระบบเล็ก เพื่อให้เข้าใจในตัวเทคโนโลยีต่าง ๆ
- Love it or Leave it ดังนั้นถ้าชอบสถ้ารักสิ่งใดต้องทำให้มันเต็มที่
ส่วนที่ 2
- ต้องเรียนรู้ พัฒนาและปรับปรุงในเครื่องมือและเทคโนโลยีที่ใช้ในงานปัจจุบัน
- ต้องเรียนรู้เพิ่มเติมว่า จะทำอย่างไรให้ business มันดีขึ้นกว่าเดิมอยู่เสมอ
- หา mentor ซะ
- จงไปเป็น mentor ให้คนอื่นด้วย แล้วคุณจะเข้าใจมากยิ่งขึ้น
- ต้องฝึกฝนอย่างสม่ำเสมอ ตัวอย่างเช่นเป็น developer คุณทำการฝึกเขียน code บ้างหรือไม่ ?
- ต้องทำการเรียนรู้และเข้าใจเกี่ยวกับกระบวนการในการพัฒนา software เพื่อเข้าใจจุดแข็งและจุดอ่อน และนำมาใช้งาน
- ทำการเรียนรู้การเขียน code ด้วยการอ่าน code ของคนอื่น
- งานอะไรที่มันต้องทำซ้ำ ๆ ก็ทำให้มันทำงานแบบอัตโนมัติ (หัดขี้เกียจบ้าง)
ส่วนที่ 3
- ถ้าต้องการหรืออยากได้อะไร ก็ให้ลงมือทำเดี๋ยวนี้ อย่ามันแต่หาข้ออ้าง
- Predict the future
- ควรทำการ review process และ ปัญหาต่าง ๆ ในทุก ๆ วัน
- ต้องรู้และเข้าใจเป้าหมายของบริษัท
- ทำการตั้งเป้าหมายระยะยาวของงานที่ทำอยู่ เช่นในสัปดาห์ต่อไปจะทำอย่างไรให้ดีขึ้นกว่าเดิม มีเป้าหมายเพื่อให้งานสำเร็จ
- จงทำงานที่น่าเบื่อให้มันสนุกขึ้น เช่นการเปิดให้เห็นว่าแต่ละคนทำอะไรกันอยู่บ้าง ซึ่งอาจจะมีคนที่รู็และทำได้ดีกว่า
- ทำสิ่งต่าง ๆ ให้คุ้มค่า รวมทั้งเราทำงานคุ้มเงินค่าจ้างหรือไม่
- ทำการแบ่งปันความรู้ในสิ่งที่เราทำแก่คนอื่น ๆ ทั้งทีมและหัวหน้า
- ต้องทำการวัดผลอยู่อย่างเสมอ เพื่อทำการปรับปรุงให้ดีขึ้น (Measure => Improve => Measure)
- ทำงานให้คุ้มกับการว่าจ้าง เช่นในเวลางานก็ตั้งใจทำงาน
- เรียนรู้ที่จะผิดพลาด เพื่อให้รู้เข้าใจและระวัง
- ถ้าไม่รู้ก็บอกว่าไม่รู้
- จงอย่ากลัวหรือกระต่ายตื่นตูมเกินไป
- พูดได้ ก็ต้องทำได้ และแสดงออกมาให้เห็น
ส่วนที่ 4
- ต้องรู้เสมอว่าคนรอบตัวคิดกับเราอย่างไรบ้าง
- เป็นคนอ่อนน้อมถ่อมตน เข้ากับคนง่าย ๆ
- ให้ทำการสรุปไว้ด้วยว่าเราทำการตัดสินใจอะไรไปบ้าง อย่างไร เพื่อนำมาวิเคราะห์เพื่อหาวิธีการปรับปรุงต่อไป
- เน้นการสื่อสารด้วยการพูดคุยแบบเห็นหน้ามากกว่า email และ chat
- รู้จักพูด สรุปให้ชัดเจนไม่ต้องมากความ
- ทำอะไรต้องมีเป้าหมายเสมอ เพื่อทำให้คุณรู้ว่าต้องทำอะไรบ้างเพื่อไปยังเป้าหมายนั้น
- ถ้ายังไม่เขียน blog ก็ให้มาเขียนกันเถอะนะ อย่ามีข้ออ้างเลย
- ทำการสร้างตัวตนของเราขึ้นมาบ้าง
- เข้าไป contribute กับ opensource บ้าง
- ลองทำบางสิ่งบางอย่าง จากที่เคยทำนานเป็นสัปดาห์ให้เหลือวันเดียวดูบ้างสิ เริ่มต้นจากส่วนเล็ก ๆ นะ
- ทำการ contribute กลับไปยัง software ที่เราใช้กันบ้าง หรือแนะนำ feature ใหม่ ๆ ไปยังผู้สร้าง
ส่วนที่ 5
- ต้องทำการ update เทคโนโลยีต่าง ๆ ที่ใช้อยู่อย่างเสมอ เพราะว่าสิ่งที่ใช้ในวันนี้พรุ่งนี้อาจจะล้าสมัยหรือเลิกใช้ไปแล้ว
- ลองทำอย่างอื่นดูบ้าง เช่นถ้าเป็น programmer ให้ลองทำเหมือนเป็น tester, manager ดูบ้าง ไม่ใช่เปลี่ยนงานแต่ลองทำอะไรที่แตกต่างดูบ้าง
- เส้นทางระหว่างการเดินทางสวยงามกว่าเป้าหมายปลายทางเสมอ
- ทำการสรุปสิ่งที่ผ่านมา ปัจจุบันและอนาคต พร้อมสรุปที่ต้องการศึกษาเพิ่มเติม
- ให้ศึกษา trend และ ตลาดด้วยว่าเป็นอย่างไร อย่าเป็นกบในกะลา
- Feedback จากเพื่อร่วมงานนั้นสำคัญมาก ๆ เป็นเหมือนกระจกบานใหญ่สะท้อนตัวเราเอง
- อย่างเชื่อมั่นใจบางสิ่งบางอย่างมากจนเกินไป รวมทั้งอะไรที่ไม่ชอบก็ให้ลองนำมาใช้งานดูบ้าง
- อย่างวางแผนแบบ Waterfall และอย่าทำอะไรที่ลูกค้าไม่ต้องการ
- จงทำให้ดีกว่าเมื่อวาน หรือ ดีกว่าเดิมอยู่อย่างเสมอ
- ออกไปทำอย่างอื่นบ้างเถอะ ให้ตัวเองเป็นอิสระบ้าง