Jacob Baytelman

Building software since 1998

Innovations of Tomorrow Projects Contact me

Школа рока - информатика


Ранее я рассказал, почему нет смысла преподавать в средней школе бейсик, паскаль или С. А сейчас буду утверждать, что преподается в школе на уроках информатики - полный беспросветный бред и мрак. Эти "знания" нельзя использовать, они морально устарели еще 10 лет назад. Школьная информатика не сделает никого ни программистом, ни даже уверенным юзером поэтому, чтобы не "протрачивать" время зря, надо учить вот чему:

  • делать бэкапы (т.е резервные копии)
  • конвертировать файлы: Word в PDF, jpeg в png, png в jpeg и т.д.
  • разрезать картинку, вырезать из нее фрагмент и т.д.
  • убирать “красные глаза" с фотографии
  • извлекать текст из PDF
  • переносить контакты, календарь, почту из iPhone в Android и наоборот
  • переносить фото с телефона на компьютер
  • пересылать большие файлы
  • организовывать одновременную работу нескольких человек над одним файлом
  • сделать простейшую веб-страницу с формой, получать инфо из этой формы на электронную почту
Надо донести до детей принципы
  • RTF форматирования (а не запоминать кнопки в экранах и Word-а)
  • работы электронной почты (а не зубрить экраны и меню Аутлук Экспресса)
  • монетизации контента (Youtube как пример)
  • работы поисковых систем, основ SEO


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

Умение составлять алгоритмы зависит от абстрактного мышления, от способности оперировать "черными ящиками", не зная, что там внутри. Это выбор нужных свойств из определенных наборов в зависимости от каких-то условий, чему должен предшествовать анализ этих условий. Но стоп, знакомо звучит, не правда ли? Где-то мы уже это проходили. Кажется, на физике.

Читаем условие задачи про движение шариков, их столкновение и результат. Анализируем, выбираем подходящие формулы из всего изученного материала. Рисуем схему со стрелочками. Абсолютно пренебрегаем тем, что внутри этих шариков. Не интересуемся, откуда взялись константы для формул, да зачастую и происхождением самих формул тоже не интресуемся. Просто знаем, что для такого типа задач применяют такие формулы. Дальше расписываем рассчеты, получаем результат, проверяем.

Абсолютно то же самое происходит в программировании, поэтому если хотим научить кого-то программировать, начинать надо со школьного курса физики, с самих азов типа расстояние = скорость, деленная на время. Принципы анализа условий, выбора инструментов, оформления решения и контроля результата не меняются. Меняются наборы команд и синтаксис языков программирования. Но без глубокого понимания принципов зубрежка команд и эксперименты с синтаксисом бессмыслены.

Кстати, задачи по математике и химии соответствуют всем тем же критериям. И, как ни странно, грамматика английского языка тоже (но о роли изучения иностранных языков для развития навыков программирования поговорим отдельно).

Тут я писал о "протухшей" системе образования, а сейчас настаиваю на полезности физики и химии с математикой. Как же так? А очень просто. Физика с математикой - не для всех, как и программирование, или игра на скрипке, или бальные танцы. Знать о существовании скрипичного ключа и 3й позиции должны как-бы все, а вот практически освоить под силу только тем, кому это реально в кайф.

Открытым остается кадровый вопрос. И если в январе 2018 года школьных учителей, способных преподавать Objective C или даже Android, днем с огнем не найти, то "физики" и "математички" еще не перевелись ни в "этой стране", ни в буржуйском забугорье.

Продолжение следует, а пока напишу пару слов о трудах, раз уж школьная программа не может без них.

Продолжение уже есть - кто научит программировать.

"Технический директор о стартапах":
Команда, Идея, Инвесторы, Минимальный продукт, Универсальный солдат (aka Мастер на все руки aka full stack developer)





J.Baytelman January, 2018