Відгадати, що це навряд чи поширене питання, але цікаво, чи хтось бачив матеріал, який чітко зроблений для вирішення цієї аудиторії змістовно.
Відгадати, що це навряд чи поширене питання, але цікаво, чи хтось бачив матеріал, який чітко зроблений для вирішення цієї аудиторії змістовно.
Відповіді:
Відключена комп’ютерна наука адреси дітей (та вчителів) у початковій школі.
Веселий спосіб вивчити -рахунок:
... Ця гра являє собою нетипізоване обчислення лямбда. Голодний алігатор - це лямбда абстракція, старий алігатор - це дужки, а яйця - змінні. Правило прийому їжі відповідає бета-зменшенню. Правила кольорів відповідає (надто обережному) перетворенню альфа. Правило старого віку говорить, що якщо пара круглих дужок містить один термін, дужки можна видалити ....
На мій досвід, не важко викладати основні теми з комбінаторики, теорії графів, програмування, алгоритмів та подібних тем.
Ви можете переглянути теми, що висвітлюються в конкурсах IOI та національних змаганнях. Є літні школи та майстер-класи, пов’язані з змаганнями з ІОІ, починаючи з досить раннього віку.
Моя особиста улюблена тема таких семінарів - комбінаторна теорія ігор, оскільки її легко мотивувати, граючи в ігри з аудиторією.
Також перевірте АСМ K-12 CS навчальних ресурсів , в зокрема , стор.11 і 12 типовою навчальною програми для K-12 .
деякі ідеї. мені здається, стався вибух високоякісних, але недорогих варіантів для дітей, які цікавляться інформатикою. відзначимо міцний зв’язок із STEM, так званою науково-технічною освітою з математики. (Я думав, що, можливо, CS-сторона може бути підкреслена / пропагується новим ключовим словом STEAM, де A означає алгоритміку.)
спробуйте концепцію булевої логіки для відображення математичних операцій. такі речі, як перетворення двійкових у десяткові, десяткові в двійкові та багатоступеневі додавачі з перенесенням від EE побудова довільних функцій з CNF або DNF. навіть маленька дитина може зрозуміти поняття функціональної повноти за допомогою І, АБО, НЕ. деякі набори радіошаків для таких предметів, як недорогі мікроконтролери. див., наприклад, базовий комплект штампів. Для цієї мети є кілька вільних / відкритих вихідних схем. на жаль, поки що я не міг знайти жодного розповсюдженого з бібліотеками компонентів. logisim - одна популярна.
є ця класна гра, яка працює в різних системах, включаючи ПК / ps3 / і т.д. під назвою Crazy Machines. це можна використовувати для розуміння фізичного моделювання в програмному забезпеченні та змусити дитину думати про системи взаємодіючих компонентів та ланцюгових реакцій. нова версія ps3 має купу електричних та логічних компонентів, включаючи вимикачі та ворота.
робототехніка. спробуйте, зокрема, робототехніку Lego mindstorms . складне програмне забезпечення, яке дозволяє такі речі, як петлі, умовні умови, підпрограми. підпрограми містяться у графічних блоках, тобто її система візуального програмування, яка років тому була дуже актуальною (тепер це іграшка). для натхнення на YouTube є багато відео з робототехнічними вирішеннями на кубі рубіків, такі як цей сучасний кубстормер II . Дизайн принаймні одного є у широко доступній книзі, наприклад, lego mindstorms nxt мислячих роботів Daniele Benedettelli. також нещодавно я побачив цю пневматичну робочу руку безлічі ступенів свободи . див. також Першу лігу змагань з робототехніки .
написання базового коду для простих речей. наприклад сортування. проведення емпіричних досліджень різних алгоритмів сортування та перегляд / графік результатів (наприклад, графік продуктивності сортування міхура проти qsort для збільшення розмірів вводу - див. наприклад, анімацію на цій сторінці Вікіпедії для сортування вставки). сортувати анімацію. акуратний графічний аналог - сортувати колоду карт замість цілих чисел або рядків. також багато графічних або геометричних операцій, таких як малювання фігур у коді, є відмінними вправами.
ігрове програмування. це можна зробити в деяких чудових іграх. наприклад, у Little Big Planet є кілька складних підсистем, де діти можуть створювати власні ігри зі складною вбудованою системою побудови та компонентами. можна навіть вивчати взаємодіючі / виникаючі явища таким чином. їх можна завантажувати в Інтернет та ділитися ними. інша мова для цієї мети називається скретч . класичний від Паперта з багато академічним вивченням його ефективності - Logo
використовуючи в них імітатори машин та побудови програм. є кілька. вони приходять з деякими програмами. чим графічніше, тим краще. деякі написані професорами для занять. ось один, написаний на JavaScript . насправді хотілося б знати найкращих в цій галузі [можливо, ще одне питання для цього]
Залежить від людини, якої ви навчаєте, та області цього діапазону.
12-14-річний, з яким ХОЧЕ ВМОЖИТИ впоратися майже з чим завгодно, але він повинен втягувати його в свій час, ви не можете реально підштовхувати складні поняття до молодих людей (або більшої частини когось).
Я слухаю iWoz в цей момент (який, здається, орієнтований на цю вікову групу і був би досить натхненний), до цього віку він збирав досить просунуту схему - але батько тільки коли-небудь відповідав на питання, ніколи не передавав його нові концепції, до яких він не був готовий)
Або він може бути абсолютно незацікавленим, і ви нічого з цим не зможете зробити.
Діти можуть бути дуже вражені чимось простим. Якщо ви знайшли якусь гру, яка йому сподобалася, і допомогли йому відтворити її (навіть на дуже поверхневому, але все ж графічно подібному рівні), ви можете дійсно змусити його йти.
Або, що ще краще, якщо ви знайшли існуючу гру з відкритим кодом, яка йому може сподобатися, дайте йому пограти, а потім покажіть йому, як зробити невеликі модифікації, з якими ви зможете його збудити. (Модифікації завжди здаються найкращим способом розпочати роботу)
Я насправді викладав літній табір, в основному містив 4-х, п’ятикласників, хоча у мене був один 2-й і 3-й класник (ваша цільова вікова група). У таборах тривали тиждень, і я навчав XNA, показуючи їм основи, якщо, інакше, як і просте для викладу разом з фотошопом. Проблема з XNA полягала в тому, що я повинен був допомогти їм програмувати трохи до кінця тижня. Інші табори, у яких ми проводили, включали лего робототехніку та GameMaker, обидва досі мають саму кореневу теорію CS і діти люблять це.
Існує відеоігра SpaceChem, заснована на принципах програмування. Більше про це можна прочитати тут: http://gangles.ca/2011/06/19/programming-in-spacechem/
Дивно, що ніхто не згадав, використовуючи множення, щоб пояснити поняття обчислювальної інтрактабельності. Ми констатуємо, що множення є простим, оскільки у нас є стандартний швидкий алгоритм підручника для множення, тоді як зворотна функція пошуку простих факторів є складною, оскільки не існує відомих швидких алгоритмів, а найкращий відомий алгоритм не є значно швидшим, ніж вичерпний пошук.
Хорошим джерелом проблем, щоб змусити молодих людей думати про теорію в КС та вирішувати самі проблеми, є серія "Комп'ютерна наука відключена" http://csunplugged.org/ . Ми ходимо до шкіл і займаємось дітьми, або вони приїжджають до Uni, щоб зробити їх разом з нами.
Він триває роками та роками, перекладений на багато мов ---, а статті дають інформацію про те, як проводити сеанси, які матеріали потрібні та підказки для людей, які їх раніше проводили.
Настійно рекомендується!