ด้วยความรักจาก Stepik: แพลตฟอร์มการศึกษา Hyperskill

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

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

ด้วยความรักจาก Stepik: แพลตฟอร์มการศึกษา Hyperskill

การพูดนอกเรื่อง Lyrical

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

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

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

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

แล้วแนวทางไหนดีที่สุด? ในกรณีของอ่างล้างจานและสิ่งอุดตัน - ประการแรกและด้วยเหตุผลเหล่านี้:

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

ปล่อยให้ Masha ผู้น่าสงสารอยู่คนเดียวแล้วก้าวไปสู่กระบวนการเรียนรู้เช่นนี้

การเขียนโปรแกรม: เรียนรู้หรือทำ?

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

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

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

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

Hyperskill: เราสร้าง สร้าง และในที่สุดก็สร้าง

เราคิดเกี่ยวกับปัญหานี้มาเป็นเวลานาน วันที่โพสต์ล่าสุดในบล็อกของเราบ่งบอกว่าเราคิดมานานแค่ไหนแล้ว หลังจากการถกเถียงและพยายามที่จะบูรณาการแนวทางใหม่กับ Stepik เราก็ได้... ไซต์อื่น คุณอาจเคยได้ยินเรื่องนี้มาก่อนในฐานะส่วนหนึ่งของ JetBrains Academy เราเรียกมันว่า Hyperskill ซึ่งสร้างขึ้นในการเรียนรู้ตามโครงงาน เชื่อมโยงฐานความรู้ Java เข้ากับการเรียนรู้ และรับการสนับสนุนจากทีม EduTools และตอนนี้รายละเอียดเพิ่มเติม

ด้วยความรักจาก Stepik: แพลตฟอร์มการศึกษา Hyperskill

เป้าหมายเฉพาะ เรานำเสนอ “เมนู” ของโครงการ เช่น โปรแกรมที่คุณสามารถเขียนด้วยความช่วยเหลือของเรา หนึ่งในนั้นได้แก่ โอเอกซ์ ผู้ช่วยส่วนตัว บล็อกเชน เครื่องมือค้นหา ฯลฯ โครงการประกอบด้วย 5-6 ขั้นตอน ผลลัพธ์ของแต่ละขั้นตอนคือโปรแกรมที่เสร็จสมบูรณ์ “แล้วทำไมเราถึงต้องมีด่านอื่นอีก ในเมื่อทุกอย่างได้สำเร็จไปแล้วในครั้งแรก?” ขอบคุณสำหรับคำถาม ในแต่ละขั้นตอน โปรแกรมจะสามารถทำงานได้มากขึ้นหรือเร็วขึ้น ในตอนแรกโค้ดใช้เวลา 10 บรรทัด แต่สุดท้ายก็อาจไม่พอดีกับ 500 ด้วยซ้ำ

ทฤษฎีนิดหน่อย เป็นไปไม่ได้ที่จะนั่งเขียน Hello World โดยไม่ต้องมีความรู้เกี่ยวกับการเขียนโปรแกรมสักคำ ดังนั้นในแต่ละขั้นตอนของโครงการคุณจะเห็นว่าคุณต้องเชี่ยวชาญพื้นฐานทางทฤษฎีใดบ้างและที่สำคัญที่สุดคือจะหาได้จากที่ไหน ข้อมูลพื้นฐานยังอยู่ใน Hyperskill ในส่วน "แผนที่ความรู้" หากในช่วงแรกของโครงงาน นักเรียนไม่จำเป็นต้องอ่านข้อมูลจากไฟล์ ก็อาจไม่สามารถดำเนินการต่อได้ พวกเขาจะเรียนรู้ด้วยตนเองในภายหลังเพื่อการพัฒนาทั่วไปหรือจะต้องใช้ในขั้นตอนต่อไป

ด้วยความรักจาก Stepik: แพลตฟอร์มการศึกษา Hyperskill

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

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

ด้วยความรักจาก Stepik: แพลตฟอร์มการศึกษา Hyperskill

ตราสาร การเขียนโค้ดเล็กๆ ในหน้าต่างพิเศษบนเว็บไซต์เป็นเรื่องดี แต่การเขียนโปรแกรมจริงเริ่มต้นด้วยการทำงานในสภาพแวดล้อมการพัฒนา (Iบูรณาการ Development Eสิ่งแวดล้อม). โปรแกรมเมอร์ที่มีประสบการณ์ไม่เพียงแต่รู้วิธีเขียนโค้ดเท่านั้น แต่ยังรู้วิธีการออกแบบอินเทอร์เฟซแบบกราฟิก รวบรวมไฟล์ต่างๆ ไว้ในโปรเจ็กต์ ใช้เครื่องมือการพัฒนาเพิ่มเติม และ IDE จะดูแลกระบวนการเหล่านี้บางส่วน ทำไมไม่เรียนรู้ทักษะเหล่านี้ในขณะที่คุณกำลังเรียนรู้การเขียนโปรแกรมล่ะ นี่คือจุดที่ JetBrains มาช่วยเหลือและ IntelliJ IDEA Community Educational เวอร์ชันพิเศษพร้อมปลั๊กอิน EduTools ที่ติดตั้งไว้ล่วงหน้า ใน IDE ดังกล่าว คุณสามารถเข้าร่วมหลักสูตรการฝึกอบรม ตรวจสอบปัญหาที่ได้รับการแก้ไข และดูเคล็ดลับของโครงการ หากคุณลืมบางสิ่ง ไม่ต้องกังวลหากนี่เป็นครั้งแรกที่คุณได้ยินคำว่า "ปลั๊กอิน" หรือ "IDE": เราจะบอกคุณว่ามันคืออะไรและจะติดตั้งลงในคอมพิวเตอร์หรือแล็ปท็อปของคุณได้อย่างไรโดยความทุกข์ทรมานน้อยที่สุด ทำความเข้าใจทฤษฎี จากนั้นไปที่ IDE และทำขั้นตอนต่อไปของโครงการให้เสร็จสิ้น

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

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

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

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

ยินดีต้อนรับ: สวัสดีhyperskill.org เข้ามาดูลองแนะนำชมและวิพากษ์วิจารณ์ เรายังเรียนรู้ที่จะสอนคุณ

ที่มา: will.com

เพิ่มความคิดเห็น