دلهره آور است كه باعث مي شود آموزش برنامه نويسي كامپيوتر خود را از پنجره بيرون بياندازيد. ساده و واضح نگه داشتن آموزش اوليه براي ايجاد اعتماد به كدنويسي دانش آموزان بسيار مهم است.
معرفي زبان، چارچوب ديگر يا اضافه كردن حواسپرتيهايي مانند git قبل از اينكه دانشآموز با زبان اول خود كنار بيايد، گيجكننده است و ميتواند اعتماد به نفس او را كاهش دهد. اكنون، اينكه كدام زبان برنامه نويسي بايد ابتدا آموزش داده شود، به خودي خود يك سوال پيچيده است - برداشت ما را مي توانيد در اينجا بخوانيد.
مراقب تعصبات و فرضيات باشيد
عليرغم بهترين نيت ما، مهم است كه به خاطر داشته باشيم كه تعصبات و مفروضات مختلف ممكن است به آموزش ما نفوذ كنند. يك فرض خطرناك كه ممكن است قبلاً شنيده باشيد، "ژن گيك" است. اين افسانه به اين ايده اشاره دارد كه برخي افراد به طور طبيعي در كدنويسي استعداد دارند. كساني كه اين ژن را دارند براي موفقيت مقدر هستند و كساني كه ندارند - شانس سختي! در واقعيت، وجود داردهنوز هيچ آموزش برنامه نويسي استدلال مبتني بر شواهد براي اين ايده وجود ندارد، اين باور ممكن است به طور ناخودآگاه بر آموزش تأثير بگذارد.
متأسفانه، "شواهد" از توزيع نمره CS دانشگاه اغلب براي پشتيبان اين ادعا استفاده مي شود. توزيع نمرات براي مدارك CS به صورت دووجهي در نظر گرفته ميشود - يك گروه كه نمره بسيار بالايي ميگيرند (كساني كه «آن را دريافت ميكنند») و گروهي ديگر از دانشآموزاني كه نمره ضعيفي ميگيرند (آنهايي كه نميگيرند). پتيتزاس، برلين، كريگ و ايستربروك (2016) درك توزيع نمره و آنچه را كه آنها نگران كننده بود را بررسي كردند.
آنها دريافتند كه تنها 5.8 درصد از نمرات دوره مقدماتي محاسبات چندوجهي بودند. توزيع احتمال دو يا چند حالت. با وجود اين، اعضاي هيئت علمي CS اگر معتقد بودند نتايج از يك دوره برنامه نويسي گرفته شده است، توزيع ها را به صورت دووجهي درك مي كردند. اين تأثير بيشتر در اعضاي هيئت علمي ديده شد كه به اين ايده معتقد بودند كه برخي از يادگيرندگان به طور طبيعي براي موفقيت در علوم كامپيوتر مناسب تر هستند.
فرض ديگر اين است كه تازه كارها متخصص نيستند. البته مربيان اين موضوع را به خوبي مي دانند. با اين حال، از آنجايي كه ما بر مهارت هاي خاصي تسلط داريم، مي توان به راحتي روزهايي را كه شروع كرديم فراموش كرد. طرز فكر ما در مورد كد از مبتدي تا متخصص بسيار تغيير مي كند. كدنويسان بسيار ماهر دانشي را آموزش برنامه نويسي ذخيره كرده اند كه در صورت مواجهه با مشكل به راحتي قابل دسترسي است.
تلاش براي حل يك مشكل يا اشكال زدايي به مقدار معيني دانش پايه از نحوه عملكرد يك تكه كد متكي است. در مبتديان، اين دانش پايه هنوز در حال شكل گيري است و مي تواند شكننده باشد. توجه به اين فرض ارزشمند است. منابع مفيد زيادي وجود دارد كه به بررسي باورهاي غلط برنامه نويسي رايج مي پردازد - ما ميزبان يك وبينار مهمان با لوكا چيوديني بوديم كه دقيقاً اين موضوع را پوشش مي داد!اجازه دهيد دانش آموزان تلاش كنند و دوباره تلاش كنند
تفاوت ديگر بين مبتديان و متخصصان مربوط به موثرترين انواع ارزيابي است. براي كمك به ايجاد پايه اي قوي از دانش برنامه نويسي، مبتديان به تكاليف مكرر، كوچك و ساده نياز دارند كه متكي به داشتن درك گسترده از بسياري از مفاهيم مختلف نباشد. همانطور كه آنها درك عميق تري از كدگذاري به دست مي آورند و اعتماد به نفس بيشتري پيدا مي كنند، تكاليف مي توانند جزئي تر شوند، مانند استفاده از كتابخانه هاي تخصصي.
طراحي تكاليف مناسب براي آموزش برنامه نويسي سطوح مختلف كدنويس ها نيز به اعتماد به كدنويسي دانش آموزان كمك مي كند. در كنار محتواي تكاليف، سيستم مورد استفاده نيز نقش مهمي ايفا مي كند. هنگام شروع، ممكن است يك محيط كدنويسي بصري و بدون حواسپرتي ترجيح داده شود، در حالي كه در ادامه، يك محيط استاندارد صنعتي توصيه ميشود.
دانش آموزان بايد بتوانند به صورت تكراري كدنويسي كنند. اگر يك زبان آموز كد خود را ارسال كند و مجبور شود يك هفته منتظر دريافت بازخورد باشد، روند يادگيري طولاني و دردناك مي شود. دريافت بازخورد (تقريباً) آني به دانش آموزان اجازه مي دهد تا اشتباهات خود را ببينند، آنها را تصحيح كنند و دوباره ارسال كنند. البته، آموزش كدگذاري با كيفيت بالاتر منجر به افزايش حجم كار براي معلمان مي شود. اينجاست كه انتخاب پلتفرم مناسب آموزش برنامه نويسي و ابزارهاي پشتيباني مطرح مي شود (اطلاعات بيشتر در مورد آن را اينجا بخوانيد).