มือใหม่ที่กำลังมองหาคำแนะนำในการเขียนโปรแกรมโดยทั่วไป [ปิด]


28

ต้องการให้บางคนจำย้อนเวลาที่คุณอาจจะเขียนโปรแกรมไม่ดี ...

รับงานใหม่ของฉัน (ในฐานะนักพัฒนาซอฟต์แวร์) สักสองสามเดือนแล้วผ่านช่วงทดลองงาน มีประสบการณ์การเขียนโปรแกรมน้อยมาก (C ++ เท่านั้น) และกำลังทำงานกับ asp.net MVC และ Silverlight ดังนั้นจึงมีเว็บไซต์ที่ บริษัท ดำเนินการอยู่และฉันได้เข้าร่วมในความพยายามที่จะทำให้ดีขึ้นขจัดข้อผิดพลาดและอื่น ๆ

ปัญหาคือ - เรียนรู้เกี่ยวกับระบบ / เว็บไซต์ที่ทำไปแล้วผ่าน visual studio ฉันมักจะรู้สึกหงุดหงิดอย่างมากไม่เคยรู้เลยว่าควรจะค้นหาส่วนไหนของบรรทัดนี้และโดยทั่วไปแล้วจะมีปัญหามากมายในการรับภาพรวม Visual studio นั้นเป็นสิ่งที่ฉันพบว่ายากที่จะเข้าถึงได้โดยไม่ต้องพึ่งกรอบ asp.net

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

ฉันไม่ได้โง่ฉันได้อ่านและฝึกฝนแนวคิดการเขียนโปรแกรมพื้นฐานมากมาย ... ฉันแค่กลัวเลือดกับกรอบการด่านี้ ฉันมองมันและรู้สึกเป็นอัมพาต

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

ฉันเป็นคนประเภทที่หยิบสิ่งต่าง ๆ ได้ช้า แต่ด้วยความใส่ใจในรายละเอียด อดีตที่ฉันคิดว่าทำให้ฉันดูไร้ความสามารถ

ทุกคนมาถึงที่ที่ฉันมาจากโปรดบอกว่ามีประโยชน์ .... ฉันกลัวที่จะสูญเสียงานของฉันในไม่กี่เดือนหรือบางสิ่งบางอย่าง ...


3
ฉันเริ่มต้นด้วยการเริ่มต้นที่asp.net aspspider.com/tutorials pluralsight-training.net/microsoftฯลฯ ฉันชอบวิดีโอแบบฝึกหัดที่ดีในการเรียนรู้อย่างรวดเร็ว
Birey

3
จากการอ่านคำถามของคุณและความคิดเห็นของคุณด้านล่างดูเหมือนว่าคุณเป็นเพียงการสุ่มข้อบกพร่องที่ได้รับมอบหมายเพียงเพื่อให้คุณไม่ว่างและจากผมอาวุโส สถานการณ์อาจเป็นไปได้ว่า "ผลไม้แขวนลอยต่ำ" ทั้งหมดได้รับการเลือกแล้วและข้อบกพร่องเพียงอย่างเดียวที่เปิดได้นั้นยากมากหรือยาก ข้อผิดพลาดประเภทนี้เป็นเรื่องปกติใน ASP.NET ดังนั้นอย่าท้อแท้มากเกินไป ด้วยการพูดว่ามันไม่ได้ดูเหมือนว่าคนอาวุโสจะเป็นประโยชน์เกินไป แต่สำหรับการทำงานเพียง 2 เดือนพวกเขาจำเป็นต้องลดความหย่อนของคุณ ดูเหมือนพวกเขาจะลืมสิ่งที่มันต้องการเป็นนักพัฒนาระดับต้น
maple_shaft

2
ความรุ่งโรจน์ในการรับงาน ASP.NET ด้วยประสบการณ์ C ++ เพียงเล็กน้อย ฉันคาดการณ์ว่าการเปลี่ยนอาชีพเป็นการขายและการตลาดในอนาคตของคุณ :)
CheckRaise

การเขียนโปรแกรมเป็นคล้ายกับการพูดในภาษาอื่น ... ขณะที่การแก้ปัญหา ในตอนแรกมันจะเป็นเรื่องยากเพราะมันเหมือนคุณพยายามแก้ปัญหาที่เขียนเป็นภาษาเยอรมัน
Jake Berger

คำตอบ:


17

กระบวนการที่ผู้คนควรทำในการจ้างงานใหม่

  1. เริ่มแรกดูรหัส
  2. แก้ไขข้อบกพร่องเล็ก ๆ
  3. แก้ไขข้อผิดพลาดที่ใหญ่กว่า
  4. คำขอคุณสมบัติ - เพิ่มบางสิ่งบางอย่างไปยังชิ้นส่วนที่มีอยู่ของปริศนา
  5. สิ่งใหม่ - การสร้างบางสิ่งบางอย่างจากอะไร

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

อยู่ที่นั่น


ขอบคุณ ฉันทำจนถึงข้อ 4 ถึงแม้ว่าจะเป็นลูกเล่นเล็ก ๆ และมักจะเริ่มต้นจากศูนย์เมื่อเทียบกับผนวกเข้ากับระบบที่มีอยู่
user974685

14

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

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

  • ที่ทำงานก่อนอื่นให้นึกถึงสถาปัตยกรรมทั่วไปของแอปพลิเคชันทั้งหมด ไม่จำเป็นต้องลงรายละเอียดเลย เพียงระบุบล็อคหลักของรหัส เช่นที่ส่วนติดต่อผู้ใช้คืออะไร ส่วนใดที่เข้าถึงฐานข้อมูล การตัดสินใจทางธุรกิจแบบใด อย่ากลัวที่จะถาม แสดงให้พวกเขาเห็นว่าคุณกระตือรือร้นที่จะเรียนรู้และผู้คนโดยทั่วไปจะตอบสนอง หากมีเอกสารที่ดี (และล่าสุด) รอบใช้มัน
  • ตอนนี้คุณรู้บิตที่สำคัญแล้วถึงเวลาที่จะเจาะลึกลงไปเล็กน้อย พยายามเริ่มต้นที่ปลายด้านใดด้านหนึ่ง ส่วนต่อประสานผู้ใช้หรือเลเยอร์ฐานข้อมูลจากนั้นทำงานไปยังส่วนอื่น ๆ ลองดูสิ่งที่คุณกำลังศึกษาอยู่ รับความรู้สึกเกี่ยวกับวิธีการทำงาน ฟังก์ชั่นและวิธีการที่มันเปิดเผย รายละเอียดสามารถมาภายหลัง จดบันทึกมากมายวาดกราฟและผังงานทำอะไรก็ได้ที่จะช่วยให้คุณมองมันในภายหลัง
  • เฉพาะเมื่อคุณรู้สึกว่าคุณเข้าใจว่าตรรกะไหลในแอปพลิเคชันคุณสามารถเริ่มดูรหัสได้อย่างไร นี่เป็นเวลาที่ดีในการทำความคุ้นเคยกับ Visual Studio คลิกขวาที่วัตถุ / ฟังก์ชั่นใด ๆ ในรหัสและคุณจะได้รับเมนูบริบทที่เป็นประโยชน์มาก "ไปที่คำจำกัดความ" และ "ค้นหาการอ้างอิงทั้งหมด" นั้นมีประโยชน์และทรงพลังมาก หากดูเหมือนว่าคำสั่งที่เป็นความลับให้คุณคลิก F1
  • ที่บ้านหรือในเวลาว่างของคุณอ่านเพิ่มเติมเกี่ยวกับ ASP.NET MVC และ Silverlight (หรือแพลตฟอร์มใดก็ตามที่คุณใช้) โดยเฉพาะอ่านเพิ่มเติมเกี่ยวกับบิตที่คุณเห็นในที่ทำงานวันนี้
  • เมื่อคุณเข้าใจแพลตฟอร์มและโครงการมากขึ้นคุณจะเห็นโอกาสมากขึ้นในการมีส่วนร่วมกับรหัส ยึดช่วงเวลาเหล่านั้น!

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


+1 สำหรับการให้คำแนะนำที่เป็นประโยชน์จริงเกี่ยวกับวิธีแก้ไขปัญหาของ OP ไม่ใช่เพียงแค่คำเห็นอกเห็นใจที่ให้กำลังใจ ฉันจะโหวตมันอีกครั้งถ้าทำได้
greatwolf

5

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

คุณแน่ใจเรื่องนี้แค่ไหน? ฉันถามว่าเป็นคนที่โดยทั่วไปเมื่อคุณเริ่มต้นสิ่งใหม่ ๆ มีการเรียนรู้ทุกชนิดที่คุณอาจไม่รู้ คุณคุ้นเคยกับ Visual Studio ดีแค่ไหน? ฉันจำได้ว่ามันค่อนข้างน่ากลัวที่จะเรียนรู้ IDE ตั้งแต่เริ่มต้นเมื่อฉันเริ่มทำงานในปี 1998 แต่มันเป็นช่วงเวลาที่น่าสนใจในบางวิธี คุณรู้จักซอฟต์แวร์ติดตามบั๊กได้ดีแค่ไหน? คุณคิดยังไงกับคนต่าง ๆ ในทีม? อาจมีมากกว่าสองสามสิ่งที่คุณกำลังเรียนรู้แม้ว่าคุณอาจไม่เห็นว่ามันเป็นเรื่องใหญ่ที่จะเรียนรู้

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


มันเหมือน "แก้ไขข้อผิดพลาดนี้ควรรับเพียงเส้น" และจากนั้นฉันใช้เวลานานแค่หาที่ฉันคิดว่าบรรทัดควรจะไป

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

  • มันอาจเป็นการประมาณและคนอาจลืมกรณีแปลก ๆ ที่ทำให้การแก้ไขเป็นเรื่องไม่กี่บรรทัด ฉันรู้ว่าฉันมีเวลาที่ฉันคิดว่า "ควรทำในบรรทัดของรหัสอย่างใดอย่างหนึ่ง" เท่านั้นเพื่อค้นพบสิ่งที่ฉันพลาดในภายหลัง

  • โค้ดบางบรรทัดอาจมีความซับซ้อนอย่างน่าขัน เคยดูไหมว่ามีวงเล็บอยู่หลายสิบตัวในการบังคับใช้ตรรกะบางอย่างซึ่งใช้เวลาอ่านเงื่อนไขอย่างถูกต้องหรือไม่? ฉันรู้ว่าฉันมี

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


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

4

มันต้องใช้เวลา สองสามเดือนเป็นเวลาสั้น ๆ หากคุณไม่เห็นอนาคตใน บริษัท ปัจจุบันของคุณฉันจะให้เวลามากขึ้น

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

ขอให้โชคดีกับงานใหม่ของคุณ


5
นอกจากนี้การทำงานกับระบบใหม่เอี่ยมไม่จำเป็นต้องเป็นเรื่องทั้งหมด การแก้ไขบั๊กอาจทำให้คุณหงุดหงิด แต่มีข้อดีหลายอย่าง: สิ่งที่คุณควรทำคือชัดเจนกว่ากำหนดเวลาผ่อนคลายมากขึ้นและคุณเรียนรู้วิธีทำงานกับโค้ดของผู้อื่นซึ่งมีค่ามาก
millimoose

ใช่ฉันรู้ว่ามีอะไรมากมายที่ต้องเรียนรู้จากการแก้ไขข้อผิดพลาด ... ฉันคิดว่ามันทำให้ฉันหงุดหงิดที่ข้อบกพร่องมากมายที่ฉันพบเกิดขึ้นเป็นข้อบกพร่องซึ่งฉันอาจไม่รู้วิธี squish - ใน asp.net สิ่งที่ต้องทำ การตั้งค่าโครงการหลัก / web.config / ไฟล์แคชที่มีอยู่ฉันไม่มีความคิดเช่น โดยพื้นฐานแล้วมันยังดูเหมือนว่า 'วิเศษ' ...
user974685

@ user974685 นี่คือเหตุผลที่ฉันคิดว่าโครงการ ASP.NET เป็นสิ่งที่น่ากลัวเริ่มต้นเพราะเป็นกรอบความตั้งใจเพียงอย่างเดียวที่จะเข้าใจยากและโปร่งใสสำหรับนักพัฒนา มันพยายามที่จะซ่อนการร้องขอ / การตอบสนองตามธรรมชาติไร้สัญชาติของ HTTP และทำให้มันรู้สึกเหมือนเป็นแอปพลิเคชัน Win Forms ให้กับนักพัฒนา ในความเป็นจริงเมื่อคุณพบข้อผิดพลาดในการแคชหรือความผิดพลาดทางกราฟิกที่แปลกประหลาดอาจทำให้ INFURIATING แม้กระทั่งสำหรับนักพัฒนาระดับอาวุโส
maple_shaft

@maple_shaft: สิ่งที่คุณพูดเกี่ยวกับ ASP.NET การซ่อนลักษณะที่แท้จริงของเว็บนั้นเป็นจริงสำหรับ ASP.NET WebForms แต่ไม่ใช่สำหรับ ASP.NET MVC (ซึ่งเป็นสิ่งที่ user974685 ใช้) ASP.NET MVC นั้นดีมาก ๆ คุณเขียนเว็บแอปอย่างไร้สัญชาติ
Hector Correa

@Hector ขอโทษของฉันฉันพลาดในคำถามที่ผู้ใช้ระบุว่าพวกเขากำลังใช้ ASP.NET MVC
maple_shaft

2

ถามคำถามต่อไป แต่แสดงให้เห็นถึงความคิดริเริ่มเช่นกัน ทำมากที่สุดเท่าที่จะทำได้ก่อนที่คุณจะถาม มันเหมือนกับถามคำถามที่นี่ใน Stack Exchange


2

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


2

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

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

ใช้ StackOverflow และ Google - อย่าเป็น "Copy and Paste Programmer" แต่จงตระหนักว่ามีคนฉลาดมากมายบน SO และที่เหลือของเว็บที่เต็มใจพร้อมและยินดีให้ความช่วยเหลือ นอกจากนี้คำตอบ SO หรือโพสต์บล็อกจะไม่บ่นคุณหรือทำให้คุณดูสกปรกถ้าคุณอ่านมันซ้ำ ๆ เพื่อให้แน่ใจว่าคุณได้รับมัน

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

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

ให้เครดิตกับตัวเอง - คุณสามารถเปลี่ยนประสบการณ์ใช้งาน C ++ ให้กลายเป็นงานที่ทำงานร่วมกับ ASP.NET MVC และ Silverlight คุณอยู่ที่ programmers.stackexchange มองหาความช่วยเหลือ คุณกำลังทำงานและพยายามทำสิ่งที่คุณทำได้เพื่อให้ดีขึ้น คุณทำสิ่งที่ถูกต้องและคุณก็เป็นส่วนที่ดีอยู่แล้วโดยอาศัยข้อเท็จจริงที่ว่าคุณสามารถทำงานเขียนโปรแกรมได้ เก็บไว้และจะได้ง่ายขึ้น

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

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

need some of you to remember back to a time when you might have been bad at programming...

ฉันยังเป็น! เราทุกคนเป็น! เราเพียงแค่ให้ทำงานที่มันและพยายามที่จะดูดน้อยลงทุกปี


1

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


1

ฉันคิดว่าคุณเป็นห่วงจริง ๆ แต่คุณไม่ควรกังวลมากเกินไป

ในฐานะพนักงานใหม่แน่นอนว่าคุณจะได้งานที่ไม่มีใครอยากทำ เหมือนงานที่ต้องทำนั่นคืองานที่มีกลไกและน่ารังเกียจ

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

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

และยังเป็นผู้ป่วย มันใช้เวลาพอสมควร แต่มันก็คุ้มค่า


1

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


0

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

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

แน่นอนฉันไม่ได้บอกว่าคุณควรยอมแพ้ มีโอกาสที่ดีที่คุณเพียงแค่ต้องใช้เวลาเพิ่มในการข้ามส่วนที่แย่ที่สุดของกราฟความยากลำบากไปยังจุดที่ทุกอย่าง "คลิก"

ข้อสังเกตอื่น ๆ แบบสุ่ม:

ฉันมักจะรู้สึกหงุดหงิดอย่างมากไม่เคยรู้เลยว่าควรจะค้นหาส่วนไหนของบรรทัดนี้และโดยทั่วไปแล้วจะมีปัญหามากมายในการรับภาพรวม

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


0

การเขียนโปรแกรมเป็นกระบวนการเรียนรู้ที่ไม่มีที่สิ้นสุด ฉันจะไม่เข้าไปในสิ่งที่จะทำให้คุณดีขึ้น แต่ฉันจะจัดการกับความรู้สึกที่ท่วมท้นอยู่ที่นั่นและบางครั้งก็รู้สึกอย่างนั้น เพื่อกระโดดเข้าสู่โครงการใหญ่ในขณะที่เรียนรู้ IDE และเทคโนโลยีที่ใช้งานอยู่นั้นเป็นตันในการจัดการ ฉันอยู่ในงานที่ฉันใช้ VS 2010, C #, WPF, SQL Server และ MVVM เป็นครั้งแรก ดังนั้นไม่มีอะไรง่ายถ้าไม่มี Google Googling

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

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

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

สุดท้าย - ฉัน 6 ปีและยังคงเรียนรู้ บางครั้งเมื่อฉันไม่ "รับ" ทันทีฉันก็รู้สึกแย่ลง ฉันก็แค่บอกตัวเองว่า: 'ใจเย็น ๆ โลกก็ไม่สิ้นสุด เป็น. Net เพื่อประโยชน์ของพระเจ้า '


0

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

ประการที่สองพิสูจน์ให้กับตัวเอง (และไม่มีใครอื่นฉันทำซ้ำไม่มีใครอื่นนอกจากคุณ) ที่คุณไม่ได้เป็น noob อีกต่อไปและคุณสามารถถอดรหัสสร้าง debug โค้ดที่สกปรกที่สุดและเลวร้ายที่สุด คุณสามารถเติมชาร์ตคาดว่าค่าจ้างที่สูงขึ้นจากการที่ดีของคุณ 'OL บอสทั้งหมดโดยการพิสูจน์กับตัวเองว่าคุณไม่ได้ Noob อีกต่อไป

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

รับข้อมูลพื้นฐานที่ถูกต้องของคุณ เปลือกของ OOP ควรรวมอยู่ในสมองของคุณ

รหัสการออกแบบ (ในสถานที่ของปราสาท) ในอากาศ ฉันรู้ว่ามันฟังดูบ้า แต่การดูล้อของรถยนต์เป็นฟังก์ชั่นที่ช่วยให้สมองของมนุษย์คุ้นเคยกับโลกแห่งการเข้ารหัส!

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

ออกแบบโครงการของคุณเอง ใช่ ไม่ว่าจะเป็นเครื่องคิดเลขตาม CLI ออกแบบรหัสของคุณเอง ทำให้เป็นเอกลักษณ์ ทำไมโปรแกรมพิเศษของคุณเอง? เพราะมันจะบังคับให้คุณคิดว่า 'ฉันควรทำยังไงดี' และอย่าบังคับให้คุณหงุดหงิด และเมื่อคุณมีข้อสงสัยให้ถามเฮอร์เบิร์ตชิลด์ (ยกโทษให้ฉันหากการสะกดไม่ถูกต้อง) หรือ Google หรือวางคำถามที่นี่ นี่เป็นวิธีที่ดีที่สุดในการศึกษาด้วยตนเองและปรับปรุงทักษะของคุณ

เมื่อฉันรู้จักกับ C ฉันก็มีช่วงเวลาที่เลวร้ายเช่นกัน โดยเฉพาะอย่างยิ่งกับโครงสร้างและตัวชี้ n Blahs n blahs ฉันได้เรียนรู้สิ่งเหล่านี้ทำงานล่วงเวลา .. วิธีที่ยากถ้าคุณอาจเรียกมันว่า และเมื่อฉันถูกทำลายฉันก็ไม่สูญเสียความหวัง ฉันซื้อหนังสืออ้างอิงและเริ่มทำโปรแกรมที่ฉันต้องการเสมอ หลังจาก 3 เดือน (ใช่คุณสามารถหัวเราะได้!) ในที่สุดฉันก็สร้างโปรแกรมรุ่น CLI ที่จะใช้ชื่อของคุณเป็นข้อมูลป้อนเข้าและจะแสดงบุคลิกภาพของคุณว่าเป็นผลลัพธ์ Acrophonology

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

ความเชื่อส่วนบุคคลของฉัน: หากคุณมีตรรกะในสมองของคุณและคุณเข้าใจความรู้สึกสามัญคุณสามารถเป็น coder ที่ดี

และข่าวดีก็คือคุณมีทั้งคู่! เพราะถ้าคุณไม่ได้รับมันคุณจะไม่ได้ทำตามขั้นตอนที่ถูกต้องด้วยการแบ่งปันปัญหาของคุณกับเรา!

ถ้าคุณรู้สึกดีตอนนี้ฉันมีความสุข และใช่ตอนนี้คุณสามารถละเว้นบรรทัดแรกของคำตอบนี้ .. จำเป็นแล้ว .. ไม่จำเป็นตอนนี้! ไชโย!


0

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

เวลาที่คุณอาจเขียนโปรแกรมไม่ดี

ฉันยังคงไม่ดีที่มัน ไม่มีความคิดที่สอง

ฉันรู้สึกว่าเพราะเพื่อนร่วมงานของฉันมีประสบการณ์มากกว่าฉัน ..

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

ฉันมองมันและรู้สึกเป็นอัมพาต

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

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

เข้าควบคุม

ในฐานะที่เป็นคนใหม่ที่คุณจะประสบปัญหาในการที่จะรู้ว่าเครื่องมือที่คุณทำงานด้วย (VB, ASP ฯลฯ ) และสิ่งที่คุณทำงานบน (the กรอบ ) นี่เป็นเรื่องธรรมชาติ เราทุกคนเผชิญกับมัน สิ่งสำคัญอันดับแรกของคุณควรดำเนินต่อไป

เรียนรู้ภาษาอย่างต่อเนื่องถามคำถามดูกรอบและทำซ้ำ!

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.