ทำไมคุณไม่ทำอย่างที่คิดไว้ [ปิด]


26

ฉันมักจะเริ่มต้นวันด้วยการคิดว่า "ฉันจะทำสิ่งนี้ให้เสร็จในตอนท้ายของวัน" และกำหนดสิ่งที่ดูเหมือนว่าเป็นเป้าหมายจริง

แล้วทำไมฉันถึงไม่ตีมันล่ะ งานจะสิ้นสุดลงโดยใช้เวลานานขึ้นอีก 3 เท่าเนื่องจากข้อบกพร่องที่ไม่คาดคิดการเปลี่ยนแปลงในนาทีสุดท้าย ฯลฯ

มันเป็นแค่ฉันเหรอ? ฉันดูเหมือนจะไม่ได้รับการทำนายที่ดีขึ้นว่าสามารถทำได้ในวัน


8
มันไม่ใช่แค่คุณ ดูกฎหมาย Hofstadter ของ
Peter Boughton

18
เพราะคุณกำลังเสียเวลาของคุณถามคำถามเกี่ยวกับ P.SE แทนการทำผลงานของคุณ :) :)
Jas

2
ครั้งต่อไปที่คุณประเมินงานให้คูณผลลัพธ์ด้วย 3 และคุณจะปลอดภัย;)

3
ฉันไม่ได้วางแผนที่จะทำอะไรและฉันจะชนะเสมอ ฉันปรับขนาดข้อบกพร่องทั้งหมดของฉันให้เป็นอินฟินิตี้ดังนั้นความเร็วของฉันจึงไม่ได้ถูกกำหนดเสมอ
งาน

1
เจ้านายเก่าของฉันใช้ในการพูดคำพูดเวลาของฉันอยู่ในปีที่ผ่านมาแมว ฉันคิดว่าเขาเพิ่งจะพูดทุกคำพูดด้วยคำสั่งขนาดเดียว ชั่วโมง -> วัน; วัน -> สัปดาห์ สัปดาห์ -> เดือน เดือน -> ลูกค้าคืนเงิน
Orbling

คำตอบ:


17

เพราะคุณไม่เคยสอนวิธีการวางแผน

การวางแผนเป็นทักษะเช่นเดียวกับการเขียนโค้ดหรือการเขียน แต่อย่างใดที่เหลือจากเกือบทุกหลักสูตร

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

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

ฝึกมันและใครจะรู้คุณก็อาจจะดีขึ้น


8
นอกเหนือจากการไม่วางแผนสำหรับคนกินมื้อเล็ก ๆ น้อย ๆ ทุกวันในการวางแผนอย่างหนักการวางแผนยังเป็นทักษะที่ไม่สนุกที่จะเรียนรู้ เมื่อคุณทำข้อผิดพลาดการเข้ารหัสคุณจะได้รับข้อบกพร่องและคุณจะแก้ไขได้และคุณได้เรียนรู้บทเรียน เมื่อคุณได้รับข้อผิดพลาดการวางแผนคุณล้มเหลว !!! การเลื่อนไปตามกำหนดเวลาทำให้คุณรู้สึกแย่และทำให้คุณรู้สึกล้มเหลวผู้คนจำนวนมากไม่ได้วางแผน เมื่อต้องการโต้กลับนี้ฉันเริ่มเก็บรายละเอียดรายการสิ่งที่ต้องทำรายการ แต่ฉันให้เวลาพิเศษกับตัวเองเสมอ จากนั้นฉันก็รู้สึกว่าประสบความสำเร็จจริง ๆ เพราะฉันมีงบประมาณ จำกัด ตรงเวลาเสมอ!
CodexArcanum

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

1
ไม่เพียง แต่มันไม่สนุกที่จะเรียนรู้มันมักจะรู้สึกเหมือนเสียเวลา ฉันเรียกมันว่า "metawork" - ใช้เวลาวิเคราะห์หรือจัดระเบียบงานของคุณ เมื่อมีอะไรให้ทำมากมาย metawork อาจรู้สึกว่าคุณกำลังสร้างถ้ำที่หุ้มฉนวนใต้หิมะถล่มแทนที่จะพยายามขุดตัวเองออกไป แต่สิ่งที่คุณกำลังทำจริง ๆ คือการลับคมเครื่องมือของคุณเพื่อเตรียมงานล่วงหน้า
nlawalker

ขณะที่เขียนนี้มี 11 คนที่ upvoted คำตอบนี้ ซึ่งหมายความว่ามี 11 คนที่อยู่ภายใต้การหลอกลวงว่าจริง ๆ แล้วสิ่งนั้นเป็นแผนการที่จะประมาณการเวลาที่ต้องการได้อย่างถูกต้อง
Robert Harvey

@nlawalker: ไม่สนุกที่จะเรียนรู้? หากฉันไม่ได้เรียนรู้สิ่งใหม่ในหนึ่งวันนรกในทุก ๆ ชั่วโมงของวันที่ตื่นฉันก็ถือว่าวันนั้นเป็นวันที่ล้มเหลว
Orbling

26

ยากที่จะเชื่อว่าไม่มีใครพูดถึงกฎหมายของ Hofstadterเลย

ฉันคิดว่าคำตอบที่แท้จริงคือการวางแผนของคุณมักจะเป็นสถานการณ์ที่ดีที่สุดราวกับว่าทุกอย่างทำงานได้ทันทีไม่มีการหยุดชะงักเกิดขึ้น ในชีวิตจริงคุณเริ่มต้นการเข้ารหัสจากนั้น telefone ดังคุณจะเสียสมาธิเป็นเวลา 5 นาทีใช้เวลาอีก 15 นาทีใน stackoverflow หรือโปรแกรมเมอร์โปรแกรมเมอร์การสับเปลี่ยนแลกเปลี่ยนเพื่อสงบสติอารมณ์และปรับโฟกัสทำโค้ดบางอย่างทำงานเป็นพฤติกรรมที่ไม่คาดคิดของ API บางอย่าง googling ใช้เวลา 2 ชั่วโมงในการทดสอบวิธีแก้ปัญหาที่เป็นไปได้เป็นต้น

ในคำอื่น ๆ : "กรณีที่ดีที่สุด" จะเกิดขึ้นในฝันของคุณเท่านั้น


1
ดูความคิดเห็นของ @Peter Broughton (5 ชั่วโมงก่อนคำตอบของคุณ!)
ChrisF

ใช่คุณพูดถูก ChrisF จะต้องพลาดอย่างใดอย่างหนึ่ง
281377

+1 นี่คือเหตุผลที่ฉันไปโดยใช้ "ทำการประเมินที่สมเหตุสมผลแล้วเพิ่มเป็นสองเท่า" กฎ และถึงแม้จะใช้เวลานานกว่าก็ตาม อาจารย์คนหนึ่งในมหาวิทยาลัยของฉันเคยพูดว่า "สามเท่า" ดังนั้นฉันเดาว่าฉันโอเค :)
Bobby Tables

10

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

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

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

วันนั้นเป็นวันที่สมบูรณ์แบบนั่นคือสิ่งที่เราคิดว่าเราจะมีทุกครั้งที่เราต้องประเมินอะไร


7

อย่าลืมเกี่ยวกับการประชุมผู้คนที่ขัดขวางคุณ ฯลฯ ข้อบกพร่องที่ไม่คาดคิดนั้นยากที่จะคาดเดา แต่เมื่อเวลาผ่านไปคุณจะสามารถทราบได้ว่ามีข้อบกพร่องกี่ตัวที่คุณค้นพบภายในระยะเวลาหนึ่ง เมื่อประเมินว่าจะใช้เวลานานแค่ไหนคุณต้องพิจารณาบริบท Ie "สมมติว่าฉันไม่ได้รับการขัดจังหวะหรือเปิดเผยข้อบกพร่องฉันควรจะสามารถทำบางสิ่งบางอย่างในระยะเวลา X"

ลองออกกำลังกายเล็กน้อยเพื่อตัวเองลองทำสิ่งต่อไปนี้:

  • ในตอนต้นของวันเขียนเป้าหมายของคุณคืออะไรและเวลาที่ประเมินไว้
  • ทุกครั้งที่มีการขัดจังหวะ (การประชุมการพูดคุยร่วมงาน ฯลฯ ) ให้จดระยะเวลาโดยประมาณ
  • ทุกครั้งที่คุณพบข้อผิดพลาดใหม่ให้จดไว้เป็นงานที่ไม่ได้วางแผนไว้พร้อมกับระยะเวลาที่ใช้ในการพัฒนา

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

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


+1 หากฉันจดทุกการหยุดชะงักที่ฉันได้รับนอกเหนือจากการสั่งซื้อสเตชันเนอรีบ่อยขึ้นฉันจะสูญเสียส่วนที่สำคัญของวันไปเป็นสัญกรณ์
Orbling

3

คุณอาจต้องการขยายกรอบเวลาในการคาดการณ์ของคุณ คุณสามารถกำหนดสิ่งที่คุณสามารถทำได้ในหนึ่งสัปดาห์? หากงานทุกอย่างใช้เวลานานกว่าที่คุณคิดสามเท่าดูเหมือนว่าคุณสอดคล้องกันพอที่จะคาดเดาได้ คุณต้องปรับด้วย 3x;)


+1 ผิดอย่างต่อเนื่องยังคงสอดคล้อง! ผล.
Orbling

2

เพราะคุณไม่สนใจความจริงที่ว่าข้อผิดพลาดที่ไม่คาดคิดอาจเกิดขึ้นได้

ทำสถิติบางอย่างเกี่ยวกับเวลาเฉลี่ยที่คุณใช้ในข้อบกพร่องและใช้เวลาเหล่านั้นในการพิจารณาเมื่อคุณวางแผน


1

เพราะคุณวางแผนไม่ถูกต้อง อุ๊ยตาย

ฉันพนันว่าถ้าคุณรักษาจำนวนเงินที่คุณจัดส่งไว้ (บนกระดาษเสมอ) จากนั้นปรับค่าประมาณของคุณเป็น% คุณจะสามารถวางแผนได้อย่างถูกต้อง

FWIW ซอฟต์แวร์เป็นเรื่องยากที่จะประเมิน McConnell (จาก Code Complete fame) มีหนังสือเล่มหนึ่งอยู่


1

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



1

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


ฉันมักจะคิดว่าสิ่งที่น่าสนใจที่สุดมีความสำคัญมิฉะนั้นแล้วทำไมพวกเขาถึงน่าสนใจ แค่ความคิด


1
ปัญหาของฉันกับเทคนิคนั้นมักจะมองไม่เห็น "มิติที่สาม": สิ่งที่น่าสนใจเป็นอย่างไร น่าเสียดายสำหรับฉันความน่าสนใจสำคัญกว่าเร่งด่วนและความสำคัญทุกครั้ง
timday

0

นั่นเป็นคำถามที่ดีและคำถามหนึ่งที่ฉันครุ่นคิดอยู่ตลอดเวลา ฉันมักจะคิดว่า

  • มันง่ายมากที่จะตัดสินว่าฟีเจอร์การทำงาน X นั้นต้องใช้จำนวนเท่าใด
  • ฉันไม่เคยวางแผนสำหรับข้อบกพร่องหรือการเดินทางไปที่กาต้มน้ำ
  • ไม่ว่าคุณจะทำอะไรมาก ๆ โดยใช้โค้ดเพียงเล็กน้อยหรือไม่มีอะไรที่จะทำได้มากมายและดูเหมือนว่าจะไม่มีอะไรเกิดขึ้นระหว่างนั้น
  • บางครั้งคุณสูญเสีย 'โซน' ของคุณบางครั้งสิ่งที่ต้องคิด
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.