Конструктивна Магія. Частина 0 — вступ

Ну що ж, тепер цей період наступив у мене — хочу вчити дітей програмуванню. Ех, а ще тільки 30 років...

Спочатку ідея була проста — оскільки я девелопер зі стажем, то потрібно спробувати передати накопичені за ці роки знання у якомусь зручному вигляді. Менторство над великим проектом, скрінкасти як я пишу купу коду, просто передача знань по рандомним темам. Але це не спрацювало.

Багато причин, чому не спрацювало, можливо не такий я уже й «девелопер». Але я помітив одну штуку — дуже мало дітей викупають, в чому сенс програмування. Навіть якщо прямо про це казати, все-рівно не викупають. І якщо заохочувати через всякі мотиваційні штуки — ну, деякий час працює, але на перших же складнощах кінець навчання.

Все, звісно, індивідуально, але по якій же причині більшість не викупає математику та програмування? А вам не цікаво які це причини? А чому не цікаво?

А от мені цікаво. Тому я вирішив дослідити це питання та переписати туторіали/підручники по Пайтону на новий лад. А ви вже оціните, як воно у мене виходить, або не виходить. Або не оціните.

Наукові дослідження в педагогіці інформатики та програмування

Що таке педагогіка? Без поняття, не вчився на педагога. Але я знаю, що україномовна наукова педагогіка — лайно, яке краще не читати. Був би радий якби мене переконали в зворотньому, але поки-що я зупинився на англомовній науковій навколопедагогічній публіцистиці.

І якщо перейти одразу до суті, то існує один документ, який описує практично від і до всі нюанси проблеми навчання програмуванню. Це тезис (докторська) під назвою

Visual Program Simulation in Introductory Programming Education, Juha Sorva

lib.tkk.fi/...​s/2012/isbn9789526046266

Найкраще як описати цей твір, то це мета-огляд тисяч різних наукових праць в усіх навколозв’язаних темах. Хоч результатом тезису був хитрий візуальний дебаггер для Пайтона, цьому присвячена частина документу в самому кінці, а ось перша половина — must read для тих, хто хоче зрозуміти механіку навчання.

До-речі, про конструктивістів. До прочитання цього тезису я був конструктивістом, тобто, підтримував проектний підхід з старту, «кидай їх в воду, хай одразу вчаться плавати». Знання кожен повинен виробити для себе сам, працюючи над реальними проблемами, ага. Після прочитання я став більше консерватором і тепер підтримую саме інкрементальний, структурований та нарративний підхід.

Другий документ, який так чи інакше пригодиться починаючим вчителям, то це

Teaching Tech Together. How to create and deliver lessons that work and build a teaching community around them, Greg Wilson

teachtogether.tech/en/index.html

Він перетинається з тезисом вище (хоча б тому, що написаний пізніше у часі), але торкається широкого набору тем саме класної роботи.

Все інше — по бажанню. Особисто мені ще сподобався набір вибраних статтей

Applying science of learning in education: Infusing psychological science into the curriculum, 2014

scholars.unh.edu/...​1286&context=psych_facpub

де описується навчання навчанню та наукове підгрунтя щодо ефективних методів навчання. Дуже добре, що науковці думають і над такими питаннями.

Чи потрібно вводити в айті, може най самі вайдуть?

Звісно, ми всі недолюблюємо вайтішників. І тому це бажання — робити кроки для збільшення кількість програмістів — здається дивним. Але моя позиція дещо інша.

Я хочу, щоб «програмування» стало базисом, must have для всіх людей, всіх спеціальностей. І як наслідок, хочу щоб всі хіміки, юристі, лінгвісти, інженери, фермери, політики стали хіміками-інформатиками, legal informatics specialists, інженерами-автоматизаторами, технофермерами, технократами і тд і тп. Хочу буст інженерної думки, додати обертів в рух прогресу.

Хочу, щоб збільшилась кількість гарних опенсорс проектів. Хочу більше рук для фіксів багів в існуючих опенсорс проектах.

І звісно, я не хочу щоб бізнес отримав дешеву розумову робочу силу. Я думаю, якщо всі будуть трошки програмістами, то скоріше бізнесменам доведеться ділитись з наймитами, а не навпаки.

І звісно, я не хочу понизити планку якості навчання в користь масовості. Спочатку потрібні якісні матеріали, а потім думати як зробити їх більш масовими.

Існуючі курси по Python

Чому я вирішив писати свій курс, а не взяти існуючий?

1. Вибір курсів зараз такий великий, що не ясно що саме вибрати. Ті курси, які публічні, щодо них не публікується статистика успішності навчання, так би мовити ККД курсу. Може, він такий низький що встидно публікувати? Або може ККД високий, але це бо орієнтований на еліту мат-факультету? Де високо-ККД-шний курс для дітей та підлітків, га?

2. Я сам вчив Пайтон «на льоту». І хотів би вчити саме вмінню вчитись «на ходу». Де курс, який вчить автодидактизму, га?

3. Окремо є проблема з завданнями до курсів. Велика проблема --- немає централізованого сховища навчальних завдань, якоїсь вікіпедії по завданням. Але ж навчання якраз і відбувається під-час самостійної роботи.

В одній статті висказується така думка. Лектори приділяють 80% часу створенню лекцій, і 20% часу створенню завдань, в той час як виконання самостійних завдань відповідає за 80% успішності навчання, а лекції --- тільки за 10% (ще 10% --- це вплив самого вчителя). WAT

Тож де практико-орієнтовані курси, га?

Так-то я не проти взяти існуючий курс. Лиш би це був ефективний курс.

Що за «конструктивна магія»?

А це метод мотивації.

А що як вчити дітей не програмуванню, а мистецтву магії? Стоп, а хіба магія існує?

Правда в тому, що існує. Слово «магія» древнього походження, тому і дивитись треба на речі з точки зору древніх. Всі ці сьогоднішні смартфони та інші продукти технологій виглядатимуть як магія для якогось середньовічного пересічного. Тобто, для оттих людей минулого правда в тому, що магія існує. Але це не просто ілюзія, або надприродні сили, ні. Це Конструктивна Магія, каузальність Всесвіту, яка через мозок людей утворює предмети, котрі змінюють реальність.

Я думав над тим, можливо математика — це і є та магія, яка це дозволяє? Ну, можливо, але більше схоже на те, що computation та mathematics йдуть паралельно одна одній. Наприклад, доведення (proofs) в математиці ізоморфні компутаціям, але сучасні компутації зооовсім не схожі на математичні доведення. Навіть в Хаскелі, простір програм які перетворюють

IO () -> IO ()
 величезний. Це зовсім не схоже на доведення теореми.

Та й самі «закони Природи», котрі скурпульозно витягуються фізиками з реальності, вони описують співвідношення. Але ж ці співвідношення повинні якось виконуватись одне за одним? Або паралельно? А де виконання, там і компутація. То може компутація (конструктивна магія) і є тим рушієм законів Природи?

Як кажуть розумні люди, це виглядає як чудо, що закони Природи дозволяють структури, котрі можуть досліджувати власне вищезгадані закони Природи (це я про людей та майбутній штучний інтелект). А де чудо, там і магія, конструктивна магія компутацій.

Простіше кажучи, нічого погано не станеться, якщо ми будемо відчувати себе трохи магами, чародіями та чародійками. Головне, щоб не захоплювались чорною магією.

Підсумок

Отже, я починаю (почав уже) писати цей новий курс по конструктивній магії. По закінченню кожної логічної частини буду її викладати, а по дорозі роз’яснювати ті чи інші моменти.

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Я хочу, щоб «програмування» стало базисом, must have для всіх людей, всіх спеціальностей.

Это отличное желание, я считаю. Хотя многие переживают, что вайтишники демпингуют зп, снижают качество кода и создают прочие неудобства «настоящим программистам», но мне это напоминает период всеобщего обучения людей грамоте — умению писать и читать, когда писать и читать умели далеко не все.

С тех пор прошло лет 100-150, навыки чтения и письма стали обязательными для любого взрослого человека и подростка, но при этом профессии писателей, копирайтеров и журналистов никуда не исчезли, потому что одно дело «просто писать», а другое — писать хорошо, лучше большинства.

Так и с кодом. Если программировать будут уметь все, то все равно у кого-то это будет получаться намного лучше, чем у остальных. Вот они-то как раз и будут пользоваться спросом.
В общем-то, начало этого наблюдается уже сейчас. Джуном, по сути, может стать каждый, но многие так и остаются вечными джунами. А хантят в основном мидлов и сеньоров — то есть людей, с уровнем скилов более высоким, чем есть и когда либо будет у большинства людей, даже если это большинство освоит какой-нибудь язык программирования.

Для этого желания в программировании нужна хоть какая-то стабильность, а не мания применять всё новое дерьмо на проектах, плевать что оно в стадии «вечная альфа», а документация по принципу «твой кролик написал»

Класна підбірка для читання.

2 роки тому я теж вірив в

кидай їх в воду, хай одразу вчаться плавати

ми спробували це з однією групою і зрозуміли що це працює далеко не для всіх. А швидше для тих хто вже інкрементально щось вивчив і це кидання в воду для них теж інкрементальне ускладнення.

Зараз у всіх групах тільки інкрементальне структуроване навчання.

иди в жж и ищи создателя программы черепашка, он там четко описывает что дети до 12 лет плохо оперируют абстрактными понятиями и категориями, и они это все в институтах изучали и ставили эксперименты почему эта черепашка не всем заходила хотя казалось бы — детский персонаж, управляй им и тд. И когда они это поняли — тогда появились спец классы в советских школах и спец интернаты куда собирали спец детей. Тоесть не создавали курс для всех средних детей а выбирали шарящих и улучшали их. Ну вообщем если ты не знаешь этой истории то ты пытаешься наступить на теже грабли.

1. 11-12 років — мій орієнтир.
2. черепашки в курсі не буде.
3. Абстрактне абстрактному рознь. «Магія» не абстрактна, а то Гаррі Поттер би не заходив дітям.

Підписатись на коментарі