ฉันจะช่วยให้เด็กมีแรงจูงใจในการเรียนรู้โปรแกรมได้อย่างไร


39

ฉันจะช่วยเด็กอัจฉริยะอายุสิบสาม (ก่อนวัยรุ่น) เรียนรู้การเขียนโปรแกรมได้อย่างไร เขาทำได้ดีในโรงเรียนและเขาได้ข้าม 2 เกรดและเป็นคนที่ชอบเก็บตัวโปรเฟสเซอร์ เขามีความสนใจในการพัฒนาเว็บไซต์และเข้าใจพื้นฐานของHTML , CSSและJSซึ่งฉันไม่รู้อะไรเลย (ฉันไม่ใช่โปรแกรมเมอร์) เขาสร้างเว็บไซต์ส่วนตัวจากความรู้ของเขา เขาได้เรียนรู้สิ่งนี้จากอินเทอร์เน็ตในเว็บไซต์กวดวิชาต่างๆและ Stack Overflow

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

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

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

(ไม่ใช่ผู้ปกครองตัวเอง)


41
อืมห้ามเพียงและพวกเขาจะสนใจอย่างมากในหัวข้อ
ต่อ Alexandersson

เพื่อนของฉันเขียนโพสต์บล็อก ( davidketcheson.info/2014/12/09/teaching_kids_to_program.html ) เกี่ยวกับวิธีที่เขาสอนให้ลูกรู้จักโปรแกรมที่อาจเป็นประโยชน์กับคุณ
Jeff

3
ฉันเรียนรู้การเขียนโปรแกรมด้วยตัวเองตั้งแต่อายุยังน้อยมาก พ่อของฉันซื้อเครื่องมือให้ฉัน (วันนี้คุณสามารถรับ visual Studio รุ่นฟรี) และหนังสือ เขาไม่จำเป็นต้องเขียนโปรแกรมอย่างมืออาชีพเพื่อให้สนุกกับการทำ ฉันสนุกกับการสร้างเกมเริ่มต้นด้วยการผจญภัยแบบข้อความแล้วเกมยิง 2D ด้วย visual studio เขาสามารถเพิ่มความซับซ้อนของเว็บไซต์นี้โดยทำให้เป็นแบบไดนามิก
the_lotus

เรียนรู้ที่จะรหัสกับเขา กิจกรรมสนุก ๆ ให้คุณทำด้วยกัน ด้วยวิธีนี้คุณสามารถทำส่วนที่น่าผิดหวังสำหรับเขาในการเริ่มต้น
Evorlor

9
the fundamentals of HTML, CSS, and JS, which I don't know anything about (I'm not a programmer) กล่าวว่าบุคคลที่มีชื่อเสียง 4k SO และมีแท็กยอดนิยมที่เป็น HTML, CSS และ JS
Santa Claus

คำตอบ:


25

ก่อนอื่นในแง่ของการช่วยให้เด็กเรียนรู้:

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

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

  3. เช่นเดียวกับ # 1 / # 2 โฆษณากวดวิชาถ้าคุณสามารถซื้อได้ วิชาเอก CS ที่ยากจน แต่ยอดเยี่ยมอาจสนุกกับการสอนวัยรุ่นที่ฉลาดก่อนวัยเรียนมากกว่าคนรุ่นอายุน้อยที่ฉลาดกว่าปกติ ฉันรู้ว่าฉันทำ ความท้าทาย (นอกเหนือจากความจริงที่คุณต้องจ่าย) คือการหาคนที่เก่งในการสอน - ควรมีการขอประสบการณ์การสอนหรือการติวก่อนล่วงหน้ารวมทั้งความสามารถในการทำงานกับเด็กที่อายุน้อยกว่า

  4. หลักสูตรออนไลน์ (Coursera และอื่น ๆ ... ) เป็นเรื่องที่ดีโดยเฉพาะอย่างยิ่งสำหรับ nerd ที่ขัดจังหวะ ( ฉันมองในกระจก )

  5. เพื่อท้าทายพวกเขาชี้ไปที่รหัส Rosettaและรหัสตรวจสอบเว็บไซต์Stackexchange

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

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

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


3
Many/most schools have computer clubsฉันขอไม่เห็นด้วย
ซานตาคลอส

ฉันต้องเห็นด้วยกับ @SantaClaus ในอันนี้ โดยเฉพาะในเท็กซัสมีกลุ่มโปรแกรมไม่มาก ฉันไม่พอใจอย่างมากเมื่อฉันพบว่าโรงเรียนมัธยมในท้องถิ่นของฉันไม่มีสโมสร เราพยายามพูดถึงมันและพวกเขาปฏิเสธเพราะการระดมทุน พวกเขามีสโมสรกีฬามากกว่า 20 แห่ง เห็นได้ชัดว่านี่เป็นความจริงกับโรงเรียนส่วนใหญ่ในเท็กซัสยกเว้นโรงเรียนในเมืองชั้นใน
ดาเมียนโบคคาเรฟ

12

สองสิ่งที่จะเพิ่มไปยังคำตอบที่ยอดเยี่ยมของ user3143:

เครื่องมือ เครื่องมือไม่ใช่สิ่งทดแทนประสบการณ์หรือความรู้ แต่ช่างฝีมือ / ผู้หญิงทุกคนชื่นชมเครื่องมือที่ดีและพวกเขาเป็นสิ่งที่คุณในฐานะผู้ปกครองที่ไม่ได้เขียนโปรแกรมสามารถช่วยได้ บางที่ดีที่สุดได้ฟรี แต่ถ้าเด็กอยาก IDE ที่ห้องสมุดโปรแกรม ฯลฯ ที่ค่าใช้จ่ายใด ๆ จำนวนที่เหมาะสมของเงินขอพิจารณารับมัน ฉันพบว่า Photoshop เป็นสิ่งที่มีค่าสำหรับการพัฒนาเว็บ (งานของฉัน) ให้เด็ก ๆ ใช้เทคโนโลยีมือถือเพื่อการพัฒนา ไม่จำเป็นต้องมีราคาแพงและคุณไม่จำเป็นต้องเชื่อมโยงกับแผนข้อมูลโทรศัพท์มือถือและแท็บเล็ตอายุ 2 ปีที่ใช้จะทำ

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

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

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


2
ที่เกี่ยวข้อง: coding2learn.org/blog/2013/07/29/kids-cant-use-computers
Unihedron

1
ฉันจะกัด Hobbiests ต้องการ SCM (Git ดีที่สุด IMO) หากพวกเขาต้องการมีสติ
เลิกทำ

2
นั่นเป็นเหตุผลที่ฉันพูดว่า 'เนื้อหา' ผมเคย cowboyed แน่นอนตัวเองในมุมสองสามครั้งในโครงการส่วนบุคคลโดยการคิด 'ฉันจะไม่รำคาญกับการควบคุมแหล่งที่มาเกี่ยวกับเรื่องนี้โปรแกรมใบปลิวน้อย' :)
Jared สมิ ธ

11

คำตอบอื่น ๆ ที่นี่ดี แต่ฉันกังวลว่ามีความจริงที่สำคัญอย่างหนึ่งที่ทุกคนมองเห็น:

คนเก็บตัวตายตัวแบบเก็บตัว

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


1
นี่เป็นจุดที่ดีมากที่ต้องจำไว้ กำลังมองหาสโมสรการเขียนโปรแกรมหรือ extracurriculars ว่าการเขียนโปรแกรม incorporate (เช่น FIRST LEGO ลีก) สามารถช่วยให้เขาพัฒนาทั้งผลประโยชน์ที่เห็นได้ชัดของเขาและทักษะการขัดเกลาทางสังคมของเขา
Acire

2
ตกลง ฉันอาจจะได้มากกว่าหนึ่งปีของโรงละครในโรงเรียนมัธยมกว่าชั้นเรียนอื่น ๆ นอกเหนือจากสิ่งที่เกี่ยวข้องกับคอมพิวเตอร์ มันสอนให้ฉันรู้ถึงวิธีรับมือกับความหวาดกลัวบนเวที, วิธีการพูดโพล่งออกมาในสถานการณ์ทางสังคมที่ตึงเครียดและทุกประเภทของ "ทักษะที่อ่อนนุ่ม" ที่มีประโยชน์ตลอดเวลา และ "กิ๊กดราม่า" นั้นก็เป็นสายพันธุ์ย่อยอีกประเภทหนึ่งดังนั้นการโต้ตอบกับเพื่อนร่วมชั้นและเกี่ยวข้องกับพวกเขาจะไม่เป็นเรื่องยากสำหรับเด็กอย่างที่ควรจะเป็นกับรูปแบบชีวิตมนุษย์ต่างดาวอื่น ๆ ของโรงเรียนมัธยมทั่วไป คุณควรสนับสนุน (แต่ไม่ผลัก ) ให้เขาแสดงละครแน่นอน
Mason Wheeler

6

ในฐานะโปรแกรมเมอร์และในระดับหนึ่งว่า 'เด็กคนนี้' ฉันพูดได้ว่าชุดอุปกรณ์ฝังตัว (ราคาถูก) เช่น Raspberry Pi หรือ Arduino เป็นวิธีที่จะไป ชุดเหล่านี้มักจะค่อนข้างถูก (Pi ประมาณ $ 30 และใช้พลังงานจากเครื่องชาร์จโทรศัพท์)

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

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

พวกเขามีแรงบันดาลใจในการเล่นและพวกเขาอาจเล่นในขณะที่พวกเขายังเป็นเด็กและในขณะที่พวกเขาต้องการที่จะทำ

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

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


5

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

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

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

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


นี่คือแหล่งข้อมูลที่ดีที่สุดที่ฉันค้นพบในการเรียนรู้โปรแกรม:

  1. YouTube: นี่อาจดูเหมือนคำแนะนำที่ไม่ดี แต่ให้ฉันอธิบาย ค้นหา "[ภาษาใดก็ตามที่เขาต้องการเรียนรู้] บทช่วยสอน" และเลือกเพลย์ลิสต์ มีแบบฝึกหัดที่ยอดเยี่ยมมากมายสำหรับหลายภาษาบน YouTube ตั้งแต่เริ่มต้นจนถึงขั้นสูง
  2. Khan Academy: ฉันไม่พบสิ่งนี้จนกระทั่งปีที่แล้ว แต่ Khan Academy มีหลักสูตรการเขียนโปรแกรมฟรี ฉันอ่านผ่านหลักสูตรและดูเหมือนจะเป็นหลักสูตรที่ดีมากสำหรับโปรแกรมเมอร์มือใหม่ ครอบคลุมแนวคิดพื้นฐานและเข้าใจได้ง่ายมาก มันอาจเป็นทรัพยากรที่ดีสำหรับเขา
  3. "TeachMeComputer": TeachMeComputer เป็นชื่อ YouTube ของผู้ชายที่สร้างบทเรียนที่ยอดเยี่ยมสำหรับ Visual Basic .NET และ PHP เขาได้จัดทั้งหมดของพวกเขาและให้การเพิ่มเติมเนื้อหาในwww.HowToStartProgramming.com ด้วยความสนใจของเด็ก ๆ ในการพัฒนาเว็บไซต์นี่อาจเป็นทรัพย์สินที่มีค่าสำหรับการเรียนรู้ PHP ฉันเชื่อว่า VB.NET เป็นภาษาการเขียนโปรแกรมเริ่มต้นที่ดีดังนั้นชุดบทเรียนอาจมีประโยชน์กับเขาเช่นกัน

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


4

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

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

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

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

นั่นคือสองเซ็นต์ของฉัน


3

เริ่มต้นด้วย Scratch: http://scratch.mit.edu/

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


5
Ew ฉันถูกบังคับให้ใช้ Scratch ในหลักสูตร "ความรู้คอมพิวเตอร์" ในชั้นประถมศึกษาปีที่ 6 และมันแย่มาก ทำไมคุณบังคับให้ฉันต้องใช้เม้าส์มาก ๆ เพียงแค่ให้ฉันพิมพ์อักษร
Doorknob

1
หากสิ่งเดียวที่คุณเรียนรู้จากการทำงานกับ Scratch คือคุณไม่ชอบเม้าส์คุณก็พลาดประเด็นไป มันเป็นเครื่องมือที่ยอดเยี่ยมสำหรับการเรียนรู้แนวคิดการเขียนโปรแกรมพื้นฐาน และมันก็สนุกมากที่ได้ทำการทดลอง ทั้งลูกของฉันชอบมันและพวกเขาก็เรียนรู้การเขียนโปรแกรมจริง กุญแจไม่ใช่ว่าใช้เมาส์หรือไม่ กุญแจสำคัญคือมันเป็นวิธีที่สนุกในการเริ่มต้นซึ่งอาจนำพวกเขาไปสู่การเรียนรู้เพิ่มเติม
james.garriss

5
Scratch เป็นจุดเริ่มต้นที่ดีพอสมควรสำหรับการแนะนำพื้นฐานของการเขียนโปรแกรมลอจิก แต่อาจจะเป็นเรื่องเล็กน้อยสำหรับเด็กก่อนวัยรุ่นที่เริ่มต้นแล้ว นอกจากนี้ยังเป็นวิธีที่ดีในการทำให้พวกเขาคุ้นเคยกับภาษาการเขียนโปรแกรมด้วยภาพซึ่งสามารถใช้ในอาชีพการงานได้ (เช่น LabVIEW)
Acire

3

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


3

อย่าลืมว่ามีสองเป้าหมายซึ่งบางครั้งอาจขัดแย้งกัน

  • ขอให้สนุกกับการเขียนโปรแกรม
  • เป็นนักพัฒนาซอฟต์แวร์ที่ยอดเยี่ยม

จำสองคนนั้นไว้เพราะถ้าคุณตัดสินใจโดยไม่ใส่ใจว่าคุณกำลังจัดลำดับความสำคัญแบบใดคุณอาจไม่ได้รับความสมดุล การจัดลำดับความสำคัญเดิมมากกว่าสิ่งอื่นจะไม่ดี

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

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

กระตุ้นให้เด็กมีส่วนร่วมในโครงการโอเพ่นซอร์สเนื่องจากสามารถให้ประโยชน์หลายประการ:

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

มีโครงการโอเพ่นซอร์สจำนวนมากดังนั้นจึงเป็นไปได้ว่าจะมีโครงการหนึ่งที่น่าสนใจสำหรับเด็ก

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

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

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

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


2

ตอนนี้ฉันยังเด็กและเขียนโปรแกรมมาหลายปีแล้ว

ฉันถูกนำเข้าสู่ C เป็นครั้งแรกเมื่อฉันอายุประมาณแปดขวบแม้ว่าฉันจะไม่ได้ใช้ภาษามากนัก ฉันให้ความสำคัญกับการพัฒนาและออกแบบเว็บไซต์มากขึ้นแม้ว่าฉันจะมีความรู้พื้นฐานเกี่ยวกับ Java สำหรับBukkit APIและฉันก็จะขยายไปสู่ ​​Objective C หรือ Swift

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

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

ฉันจะคัดลอกรหัสจากวิดีโอและสำรวจวิธีการทำงาน ฉันจะวิจัยฟังก์ชั่นบางอย่างและทดสอบด้วยภาษาจนกว่าฉันจะมีความรู้ระดับกลางของมัน

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

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

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

ฉันหวังว่าข้อมูลของฉันจะช่วยได้แม้ว่าจะเป็นข้อมูลที่ค่อนข้างกว้าง

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


2
+1 ถึงการแก้ไขของคุณ นี่คือข้อร้องเรียนที่ใหญ่ที่สุดของฉันต่อการใช้ IDE บางอย่างเมื่อเรียนรู้ ถ้า IDE เขียนโค้ดส่วนใหญ่ให้คุณคุณจะเรียนรู้อะไร ฉันระมัดระวังเมื่อแนะนำ Visual Basic .NET เนื่องจากปัญหานี้ Visual Studios สำหรับ VB.NET มักจะเขียนรหัสคีย์จำนวนมากโดยอัตโนมัติและแนะนำสิ่งที่ต้องเขียนในส่วนที่เหลือ นี่เป็นเรื่องปกติถ้าผู้ใช้เรียนรู้ว่าโค้ดที่สร้างขึ้นอัตโนมัติ / เสร็จสมบูรณ์ทำอะไรได้จริง แต่ถ้าผู้ใช้ไม่ได้แสวงหาความรู้นี้ด้วยตนเองพวกเขาจะไม่เรียนรู้อย่างถูกต้อง ดังนั้น +1 ถึงคำแนะนำของคุณกับสิ่งต่าง ๆ เหล่านี้
Spencer D

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

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

เฮ้ใช่ เห็นด้วยอย่างยิ่งกับที่
โปรไฟล์

2

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


1

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

ฉันคิดว่ามีเพียง 2 สิ่งที่ต้องระวัง: การสูญเสียความสนใจเนื่องจากขาดความท้าทายหรือถูกครอบงำด้วยความท้าทาย

เพื่อต่อสู้กับการจมแสดงความสนใจในสิ่งที่เขาทำเพื่อเขาจะได้ภาคภูมิใจในความก้าวหน้าของเขา (หรืออย่างน้อยก็รู้ว่ามีความคืบหน้า และหากมีการท้าทายไม่ได้พูดถึงสิ่งที่เขาสามารถทำได้ (เช่นทำงานกับ mod สำหรับเกมที่เขาชอบซื้อ Raspberry PI ฯลฯ ) แต่อย่าผลักดันงานของเขา - ให้เขาเป็นคนที่ ตัดสินใจว่าเขาต้องการจะทำอย่างไร


1

เขาต้องการโครงการส่วนตัวที่น่าสนใจโอเพ่นซอร์สนั้นยอดเยี่ยม การสร้างเกมเป็นเรื่องที่ยอดเยี่ยม แต่แน่นอนว่าเป็นการสั่งที่สูงที่สุด

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

แต่ถ้าเขาเป็นคนโง่เขาก็จะรักเกมเช่นกัน เกมยังทำกำไรได้ ฮ่า ๆ ๆ


1

ฉันคิดว่าคำแนะนำส่วนใหญ่ที่นี่นำไปสู่ทิศทางที่ผิด

จากข้อเท็จจริงที่ว่าเขาดูเหมือนจะสามารถรับความรู้หรือทักษะที่เกี่ยวข้องสำหรับโครงการด้วยตนเองฉันขอแนะนำสองสิ่งต่อไปนี้:

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

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


1

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

  1. ก่อนอื่นขอแนะนำว่านี่เป็นทักษะที่ยอดเยี่ยม!

    โปรแกรมเมอร์ระดับเริ่มต้นสามารถเริ่มต้นที่ $ 30,000-50,000 ต่อปีขึ้นอยู่กับพื้นที่ โปรแกรมเมอร์ขั้นสูง (มักจะมีชื่อว่าเป็นวิศวกร) สามารถทำให้ตัวเลขหกหลักนั้นง่าย

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

    ฉันแนะนำโยคะอย่างหนักแน่นและในรูปแบบที่ง่ายที่สุดเพียงทำการค้นหาบน YouTube และยืดเส้นยืดสาย 15 นาทีทุกวันที่ไม่ได้ไปโรงเรียนหรือทำกิจกรรมอื่น ๆ

    เขาอาจคิดว่าฉันล้อเล่น (โดยเฉพาะอย่างยิ่งเมื่ออายุ 14 ปี) แต่อุตสาหกรรมนั้นหนักมาก .... ส่วนใหญ่เป็นเพราะโปรแกรมเมอร์นั่งในตำแหน่งและประเภทเดียว สร้างนิสัยที่ดีในขณะนี้

ลิงค์รัก:

  • http://www.codecademy.com/
  • http://code.org/learn
  • https://www.khanacademy.org/ <- เรียนรู้อะไรก็ได้
  • http://robocode.sourceforge.net/ <- สร้างหุ่นยนต์ต่อสู้ของคุณเอง (ฉันทำสิ่งนี้ในวิทยาลัยหลายชั่วโมงสนุก :)
  • https://stackoverflow.com/ <- ขอความช่วยเหลือจากเพื่อนของคุณ
  • http://www.w3schools.com/ <- เอกสารช่วยเหลือสำหรับภาษาที่ดีหลายภาษาที่เกี่ยวข้องกับการพัฒนาเว็บ (HTML / CSS / JavaScript ฯลฯ )
  • http://notepad-plus-plus.org/ <- IDE พื้นฐานฟรี (สภาพแวดล้อมการพัฒนาแบบรวม (ที่ที่คุณเขียนโค้ด)
  • https://www.youtube.com/results?search_query=how+to+program <- YouTube มีวิดีโอสำหรับทุกสิ่ง สิ่งนี้มีประโยชน์มากในการติดตั้งสิ่งต่าง ๆ ในครั้งแรกเป็นต้น

มีทรัพยากรอีกมากมายที่นั่น แต่เมื่อเขาดูสิ่งเหล่านี้เขาจะสามารถค้นหาเพิ่มเติมได้จากลิงก์ ฯลฯ



0

หากเขาเก่ง HTML CSS และ JS โดยไม่แจ้งให้ทราบว่าเขามีความสามารถพิเศษอยู่แล้ว ถ้าเขาต้องการที่จะเพิ่มความคมชัดทักษะของเขาทำไมไม่ชี้ให้เขาCodeEval ? เมื่อทำสิ่งที่ท้าทายเหล่านี้เสร็จเขาจะรู้สึกได้ถึงภาษาที่เขาหยิบขึ้นมาและถ้าเขาหยิบภาษาที่ดีกว่านี้มาหลายภาษา (ภาษาการเขียนรหัสก็เหมือนภาษาของมนุษย์ทุกคนยิ่งคุณรู้จักมากขึ้นเท่าไหร่ )

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


ขออภัย -1 ในฐานะนักพัฒนามืออาชีพไม่มีอะไรเลวร้ายไปกว่าการที่คนที่คิดว่าการเล่นกอล์ฟเป็นสิ่งที่ดี และในฐานะคนที่สอนการเขียนโปรแกรมการตีกอล์ฟเป็นวิธีที่เหนือกว่าสิ่งที่มือใหม่ควรได้รับ
user3143

@ user3143 จุด, ลบลิงก์กอล์ฟ CodeEval (อย่างน้อยความท้าทายสำหรับผู้เริ่มต้น) เป็นวิธีที่ดีในการรับกลและทำงานผ่านอัลกอริธึมพื้นฐาน
Sidney

0

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

ฉันทำงานหนึ่งในพื้นที่ของ Sallins, Naas (ใน Co Kildare. Ireland) และจากเด็ก 4 คนเมื่อสองปีที่แล้วตอนนี้เรามีเด็ก 50+ คนต่อสัปดาห์จาก 6 ถึง 17 ทุกคนทำงานด้วยภาษาและเครื่องมือต่าง ๆ ตั้งแต่เริ่มต้น และ MineCraft, Python และ PyGame, กับ Java, Blender, Unity, Eclipse และอื่น ๆ

ฉันหวังว่าคุณจะสามารถติดต่อกับกลุ่มเพื่อเพิ่มประสบการณ์ให้สามารถแบ่งปันความตื่นเต้นของประสบการณ์การเรียนรู้อย่างต่อเนื่องและเพื่อแสดงแต่ละโครงการใหม่ :-) JK


0

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


0

ฉันไม่สามารถพูดได้ว่าฉันอ่านคำตอบทั้งหมด แต่ไม่กี่คนแรกที่ทำให้ฉันเศร้าใจอย่างมาก ไม่มีจริงของสักคนคอมพิวเตอร์ที่ทันสมัย ​​(คิดว่าเกตส์, งาน ฯลฯ ) ตัดฟันของพวกเขาในระดับสูงของนามธรรม (เช่นเทคโนโลยีบนเว็บ) พวกเขาทั้งหมดลงและสกปรกกับฮาร์ดแวร์ ผู้เชี่ยวชาญด้านการไปสู่ในทีมใด ๆ มักจะเป็นคนที่มีความรู้ระดับต่ำสุดที่ลึกที่สุด

หากคุณต้องการให้เขาเรียนรู้การคำนวณจริงและทำให้เขาตื่นเต้นเกี่ยวกับเรื่องนี้ให้เขารับของเล่นที่จำเป็น (มัลติมิเตอร์คุณภาพดีและ CRO (มือสองที่ดี 50 MHz หน่วย Tektronix จะทำอย่างดี) คณะกรรมการพัฒนาที่ดี (Raspberry PI, Intel Edison ฯลฯ ) และระดมสมองโครงการเจ๋ง ๆ ให้เขาทำบางอย่างเช่นอาจเชื่อมต่อเซ็นเซอร์ตรวจจับความเคลื่อนไหวและส่งอีเมลรูปถ่ายห้องนอนของเขาเมื่อตรวจพบการเคลื่อนไหวใด ๆ ไร้จุดหมายโดยสมบูรณ์ แต่สนุกดีและเจ๋ง เพื่อนของคุณ

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


Sparkfun เป็นสถานที่ที่ดีในการเริ่มต้นกับสิ่งเหล่านี้ โปรเจ็กต์หุ่นยนต์ก่อนรีดจำนวนมาก ฉันกำลังคิดเกี่ยวกับการแนะนำหุ่นยนต์ / สิ่งฝังตัวเอง
ไทเลอร์

0

จากประสบการณ์ของฉันฉันสามารถพูดได้ว่าคุณต้องทำให้มันเรียนรู้ด้วยตัวเองเหมือนที่ฉันทำฉันเริ่มเห็นสิ่งที่คนอื่นทำอ่านวิกิดูบทเรียนและพยายามทำความเข้าใจกลไกของพวกเขาแล้วเริ่มพยายามทำเองและที่นี่ ฉัน. ฉันได้เรียนรู้บางสิ่งบางอย่างจาก codeacademy.com มันเป็นพื้นฐานของฉันสำหรับ html, css, javascript, php และ ruby ที่สำคัญที่สุดของทั้งหมดที่คุณต้องให้คอมพิวเตอร์อินเทอร์เน็ตเวลามากความเข้าใจและแน่นอนว่าเขาต้องการแรงบันดาลใจ (เช่นโครงการของเขาเองหรือสิ่งที่สำคัญสำหรับเขา) และไม่เคยบอกเขาว่าจะทำอย่างไรถ้าเขาบอกว่าเขา รู้วิธีที่จะทำในขณะที่เขาต้องการที่จะหาทุกคนคิดว่าตัวเองเพื่อเรียนรู้นอกจากนี้เขายังสามารถรับโดเมนย่อยฟรีและโฮสติ้งที่http://api.hostinger.co.uk/redir/3586817(<- ฉันใช้อันนั้น) และเขาไม่ต้องการเครื่องมือพิเศษสำหรับการเขียนโค้ดเพราะมันง่ายต่อการเรียนรู้เมื่อคุณทำมันในตัวแก้ไขไฟล์ธรรมดา แต่ที่จริงแล้วคุณรู้แล้วไม่ต้องทำอะไรที่เขาไม่ขอ

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