Как интересно рассказать о профессии программиста детям младшей школы?
========================================================================

 В школе, где обучается сын, есть уроки, на которые приходят родители и рассказывают о своей профессии. Через неделю - моя очередь. 40 минут, без проектора, дети 9 лет (3-ий класс).  

Ищу интересные примеры, что-то с эффектом "Аха!", что бы заинтересовать детей.  

Что-то вроде вертолета Леонардо да Винчи или таблицы умножения на 9. Быть может что-то из теории игр, например игра 1-2-3 (15 спичек, двое по-очереди берут 1, 2 или 3 спички)? Что можно рассказать за 2-3 минуты и что способно удивить? 

 1. Показать что программирование это не где-то там 3 гика в подвале, это уже везде вокруг.  

Пример: Предложить посчитать количество микропроцессоров вокруг ребенка. И для каждого микропроцессора нужны люди которые напишут для него программу.  
  

2. Рассказать как компьютеры и программирование ускорили научный прогресс. Технологическая сингулярность.  

Пример: Рассказать как изменился мир до компьютеров и после (раньше читали книги, сидя в читальном зале библиотеки, теперь на youtube любой человек найдет обучающие видео на любой вкус. Раньше ездили на примитивном авто, теперь умные автопилоты и т.п.)  
  

3. Рассказать, что программирование приносит деньги. Привести примеры добившихся успехов известных людей.  
  

4. Объяснить что программировать несложно и нескучно.   

Пример: Нарисовать на доске простой алгоритм: проснулся - почистил зубы - покушал - пошел в школу. Добавить условия: если воскресенье - идти не в школу, а играть. Т.е. каждый ребенок уже может составить алгоритм. 

**Трюк №1: Сумма ряда**  
**Задача:** показать подсчёт суммы ряда разными алгоритмами, сравнив их скорость.  
  

1. Просите их посчитать сумму цифр от 1 до 100: 1+2+...+100 и засечь время. Кто первый - пусть поднимет руку и Вы тихо подойдёте и посмотрите ответ и ход решения - без огласки верного ответа.  
  

2. Просите каждого сосчитать сумму следующих в ряду по порядку 4-х/5-и чисел (100/[кол-во учеников]) и засечь время. Как все будут готовы - пусть каждый встаёт по порядку и называет свою сумму. Вы записываете на доске и суммируете.  
  

Фиксируете время расчёта на доске по 1-му и 2-му алгоритму и резервируете поле для оставшегося 3-го - вашего.  
  

Затем, показываете им **свой магический алгоритм** на доске:   

Переворачиваете ряд и складываете первую цифру исходного и перевёрнутого рядов: 1+100=101  

Затем, умножаете на кол-во элементов в одном ряду: 101*100=10100 и делите на 2.  

10100/2=5050 и...  
**Следите за реакцией!)))**  
  
  
**Трюк №2: Нужный цвет**  
**Задача:** показать наглядно, как работает нейросеть на 2-х полярных и на 2-х триггерных нейронах.  
**Нейросеть будет постепенно учиться распознавать нужный цвет.**  
  

Нужно 4 непрозрачных стакана, 12 шариков красного и 12 шариков синего цвета.  
  

В два стакана насыпаем по 10 шариков: по 5 каждого цвета (5красных + 5синих).  

Рядом с каждым - кладём шарик с нужным цветом для обозначения входов - это будут маркеры выходных нейронов (кладём так, чтобы хорошо их видели все).  

Ещё два оставшихся, пустых стакана - ставим чуть правее и левее от предыдущих 2-х - это будут триггеры.  
  

Пусть кто-нибудь выйдет к столу и, не глядя в стакан, случайно будет доставать нужный шарик, который Вы будете ему показывать (это оставшиеся 2 из 24 - это ваши, для демонстрации).  
  

Несколько ошибок - Вы демонстрируете, что всё случайно и нейросеть не обучена.  
  
**Затем, начинаете демонстрацию самообучения нейросети с помощью распределения сигналов выходных нейронов, используя их же маркеры.**  
  

Достаём из двух стаканов (случайным образом) одновременно 2 шарика, смотрим:  

1. Если у них один цвет - кладём их все в пустой стакан, находящийся рядом с тем же цветом.  

2. Если разные и цвета совпадают с маркерами - кладём эти шарики обратно.  

3. Если разные и противоположные цвета - меняем шарики местами и опускаем в эти же стаканы.  

Проделываем это 3 раза.  
  

Передаём состояние триггера выходным нейронам - высыпаем боковые стаканы с шариками одного цвета (если они были) в стаканы с выходными нейронами. Таким образом, процент верных - значительно возрастёт.  
  

Снова показываем: какого цвета нужно вытащить шарик.  

Ученик, снова, согласно маркеру, берёт из стакана шарик случайным образом.  

У него это уже получается лучше: цвет совпадать стал чаще ...и все это видят.  
  

Повторяете обучение НС ещё 4-5 раз (это и есть эпохи эволюции).  
  

В итоге (в идеальном случае!), в одном стакане с красным маркером - будут только красные шарики, в синем - только синие, а в стаканах-триггерах - будет пусто.  
  
**И, при показе вами синего шарика, ученик вытаскивает случайным образом из стакана с синим маркером всегда синий шарик и, также, с красным.**  
  

Вот так Вы покажете, как обучаются нейросети буквально "на пальцах". 

 - Ну что, щеглы, майнкрафт видели?  

- Ага!  

- Программистами сделан. 

 В своё время мне нравилась идея, что программист может всё. В смысле, может создать модель всего, любые виртуальные предметы, явления или даже целый мир. 

 Принести настолку про программирование: [edurobots.ru/2016/08/pyat-nastolnyx-igr-pro-roboto...](http://edurobots.ru/2016/08/pyat-nastolnyx-igr-pro-robotov-i-programmirovanie/)  

Её можно самому сделать за час - полтора.