วันเสาร์ที่ 27 ตุลาคม พ.ศ. 2561

ทำไม DEVELOPER จำเป็นต้องมี “PRACTICE HOURS”


HOME › ทำไม DEVELOPER จำเป็นต้องมี...Practice Hours
บทความนี้เขียนโดย Stephanie Winn Provence ซึ่งเธอได้ถ่ายทอดประสบการณ์ของตนเองเกี่ยวกับว่า ทำไม Developer จำเป็นต้องมี “Practice Hours” (งานที่ทำนอกเหนือจากงานหลักเพื่อเรียนรู้/ฝึกฝนในสิ่งที่คุณต้องการ) เรามาดูกันว่าเธอทำอย่างไรบ้าง
หากคุณเป็น นักดนตรี จะรู้ว่าคุณจำเป็นต้องมีการฝึกซ้อมฝีมือ พวกเขาไม่ได้ทำเพราะเป็นศิลปิน เพื่อผู้ฟัง หรือเพื่อวง แต่พวกเขาทำเพื่อตนเอง มันเป็นช่วงเวลาที่พวกเขาจะนั่งลงแล้ว Focus ถึงเทคนิค หรือเพลงที่พวกเขาอยากเรียนรู้ หรืออะไรก็ตามที่พวกเขาต้องการ และแน่นอนว่า Developer ก็ต้องการ Practice Hours ด้วยเช่นกัน
ช่วงที่ Stephanie เพิ่งเรียนรู้การ Coding ใหม่ๆ เธอใช้เวลา 60-70 ชั่วโมงต่อสัปดาห์ใน Coding Bootcamp ของเธอ เธอได้เรียนรู้มากมายและเชี่ยวชาญมากขึ้นจนสามารถเรียนรู้สิ่งต่างๆ ได้อย่างรวดเร็ว แต่สุดท้าย เธอรู้สึกหมดไฟกับมันในที่สุด
หลังจากที่ Stephanie เรียนจบ เธอก็หยุดพักไปช่วงหนึ่ง เธอไม่ได้ทุ่มเทเวลาในการเขียน Code ไปมากมายเหมือนอย่างแต่ก่อนแล้ว จากนั้นเธอได้ทำงานเป็น Developer บริษัทที่เธอทำงานมี Open Source JavaScript framework เป็นของตัวเอง และพวกเขาก็ใช้ Craft CMS เธอใช้เวลาช่วง 2-3 เดือนแรกโดยมุ่งเน้นไปที่การเรียนรู้ Tools ของบริษัทเสียเป็นส่วนมาก
หลังจากที่ได้ทำงานระยะหนึ่ง เธอทราบว่ามี เทคโนโลยีใหม่ๆ ที่น่าสนใจ ซึ่งเธอเองอยากที่จะเรียนรู้มัน และเธอยังพบอีกว่า เธอต้องการเรียนรู้เกี่ยวกับ Back-end Language และพวก Concepts ต่างๆ เธอจึงตัดสินใจที่จะหา Practice Hours ให้ตัวเองจนได้
กิจวัตรของ Stephanie
Stephanie เริ่มต้นจากการ Coding Random Apps และแน่นอนว่าเธอเริ่มใช้ GitHub แต่ด้วยเหตุที่ไม่มี Project Manager หรือ Trello board เพื่อคอย Track การทำงาน มันทำให้เธอไม่สามารถทำได้ตามกำหนดที่วางไว้ได้ เธอจังหันไปใช้วิธีแบบง่ายๆ และซื้อสมุดโน้ตธรรมดาๆ สำหรับทุก Practice Session ซึ่งคุณเองสามารถทำอะไรก็ได้หรือวิธีไหนก็ได้ที่คุณจะรู้สึกดีกับมัน
Stephanie เริ่มต้นด้วยการ Review สิ่งที่ได้ทำใน Session ก่อนหน้านี้ และเขียนสิ่งที่จะ Focus สำหรับ Session ใหม่ ซึ่งโดยคร่าวๆ เธอทำตามสูตรต่อไปนี้:
วันนี้ ฉันต้องการเรียนรู้เกี่ยวกับ ________________ ฉันจะอ่าน/ใช้ ______________ เพื่อช่วยในการเรียนรู้
เธอใช้การจดโน้ตในสมุด หรือใน markdown editor ในขณะที่กำลังทำงานอยู่ และเมื่อเธอทำงานเสร็จ เธอก็รู้สึกดีเกี่ยวกับสิ่งที่ได้เรียนรู้ไป เมื่อทำงานจบ Session เธอจะทำสิ่งนี้:
วันนี้ฉันได้เรียนรู้/สร้าง _______________ และฉันรู้สึก _________________
การสรุปสิ่งที่ได้เรียนรู้ไปแล้ว ถือว่ามีความสำคัญมาก เมื่อเธอกำลังค้นคว้าบางสิ่งบางอย่างอยู่ ความตั้งใจแรกที่วางไว้ มักจะไม่ใช่สิ่งที่เธอได้เรียนรู้จริงๆ เธอพบว่า Topic ที่เธอเลือก มักนำเธอไปสู่ Concept อื่นๆ ด้วย การเขียนความรู้สึกลงไปในทุกๆ Session ก็ถือเป็นสิ่งที่มีสำคัญต่อความก้าวหน้าเช่นกัน เธอสามารถ Track Topic ที่ทำให้รู้สึกว่า เธอได้บรรลุเป้าหมายแล้ว หรือรู้สึกสิ้นหวังกับมัน ในช่วงหลังๆ เมื่อเธอต้องการหาใครสักคนที่จะมาเพื่อช่วยให้เธอเข้าใจ Concept ได้ดีขึ้น การดู Online Tutorials จะช่วยให้คุณได้รู้และไปได้ไกลยิ่งขึ้น
วิธีเริ่มต้น Practice Hours ที่ดีที่สุดคือ เริ่มจาก Session ขนาดเล็กๆ ก่อน คุณควร Focus ว่าจะใช้เวลาทำมันนานเท่าไหร่ จนเมื่อคุณพัฒนาฝีมือจนติดเป็นนิสัยแล้ว คุณก็สามารถเพิ่มเวลาได้ เมื่อคุณพร้อมที่จะเพิ่ม Practice Hours แล้ว คุณสามารถหันไปใช้ Idea ของ Malcolm Gladwell เกี่ยวกับ กฏ 10,000 ชั่วโมงได้ โดยคุณสามารถอ่านเรื่องนี้เพิ่มเติมได้จากหนังสือ Outliers ของเขา
สิ่งที่ Stephanie แนะนำ ก็คือให้พิจารณาไปที่เป้าหมาย, เวลาที่คุณมี และความตั้งใจของคุณ บวกกับ Idea 10,000 ชั่วโมงด้วย ซึ่งถือว่าเป็นส่วนผสมที่ดี ถ้าคุณเป็นประชากรส่วนน้อยที่ต้องการใช้ชีวิตที่เต็มไปด้วยพลังและมีความสร้างสรรค์ คุณจะต้องมองในเรื่องของความเป็นจริง มุ่งมั่นเพื่อความก้าวหน้า แต่ไม่ต้องสมบูรณ์แบบ ถ้าทำได้แบบนี้เชื่อว่าคุณจะสามารถบรรลุเป้าหมายของคุณได้
เพิ่มเติม : นี่เป็นตัวอย่าง คำถามสั้นๆ เกี่ยวกับ Practice schedule
1. ฉันพร้อมที่จะไปให้ถึงเป้าหมายของฉัน:
A) ต้องการไปให้เร็วที่สุดเท่าที่จะทำได้ ฉันพร้อมที่จะทำมันแล้ว
B) ฉันก้าวเดินสายกลาง ฉันมีความทะเยอทะยาน แต่ยินดีที่จะรอผลที่จะได้รับ
C) ฉันไม่รีบ ความสำเร็จต้องใช้เวลา! มันเป็นเรื่องของการเดินทาง
2. ฉันเข้าใจว่าความสำเร็จหมายถึง:
A) Work hard, ทุ่มเทเวลาทำงาน และยินดีกลับบ้านดึก
B) ทำงานอย่างมีประสิทธิภาพ, ใช้เวลา และรอโอกาสดีๆ
C) ทำงานกับคนอื่นได้ดี, Focus ในระยะยาว และอยู่กับปัจจุบัน
3. ฉันต้องการอยู่ในกลุ่มคนระดับ Top:
A) 2 %
B) 25 %
C) 50 %
4. ชีวิตของฉันตอนนี้:
A) เน้นการ Focus
B) รู้สึกยุ่ง มีอะไรต้องทำหลายอย่าง
C) อยู่กับ ณ ปัจจุบัน
5. ฉันยินดีที่จะทุ่มเทและอุทิศตนเอง:
A) เพื่อทุกสิ่ง
B) ช่วงกลางคืนหลังเลิกงาน (แล้วแต่โอกาสเหมาะสม)
C) อุทิศเวลาเหรอ ไม่มีทาง!
ถ้าคำตอบส่วนใหญ่ของคุณคือ A
ยินดีด้วย คุณเป็นคนกระหายความสำเร็จ คุณเป็นคนไม่มีทางหยุดจนกว่าจะไปถึงเป้าหมาย จึงขอแนะนำคร่าวๆ ให้คุณใช้ Practice hours ประมาณ 4-5 วัน/สัปดาห์ วันละ 3-4 ชม. เชื่อว่าคุณน่าจะทำได้และคุณอาจจะทำมันมากกว่านี้ด้วยซ้ำ
ถ้าคำตอบส่วนใหญ่ของคุณคือ B
คุณเป็นคนมีแรงผลักดันและพร้อมไล่ตามเป้าหมายที่วางไว้ ขอแนะนำคร่าวๆ ให้คุณใช้ Practice hours ประมาณ 2-3 วัน/สัปดาห์ วันละ 1-2 ชม. เชื่อว่าน่าจะเหมาะกับแนวของคุณ
ถ้าคำตอบส่วนใหญ่ของคุณคือ C
คุณพร้อมที่จะก้าวสู่ความสำเร็จ คุณเดินบนเส้นทางแบบไม่เร่งรีบนัก จึงขอแนะนำแผนฝึกฝนแบบสบายๆ โดยใช้เวลา Practice hours ประมาณ 1-2 วัน/สัปดาห์ วันละ 30 นาที - 1 ชม.
ถ้าคำตอบส่วนใหญ่ของคุณเฉลี่ยๆ กันไป
ดู work schedule, project cycles และเวลาว่างของคุณ เริ่มต้นด้วยเป้าหมายขนาดเล็กก่อน แล้วพยายามสร้างความสม่ำเสมอในช่วงเวลาที่ฝึกฝน มันจะช่วยให้คุณปรับสมดุลได้เหมาะสม
หากคุณอยากก้าวหน้า Practice Hours ถือเป็นสิ่งสำคัญที่คุณควรทำควบคู่กับงานหลักของคุณ และคุณควร Focus ไปที่เป้าหมายเพื่อที่คุณจะได้ไม่ออกนอกแผนที่วางไว้

Set MongoDB in the windows path environment

  Let’s set MongoDB in the windows environment in just a few steps. Step 1: First download a suitable MongoDB version according to your mach...