Обновить
5
0.4
Алексей Десятник @alexdesyatnik

учитель информатики

Отправить сообщение

Аргументы какие-то из пальца высосанные. Если зазеваться как следует, можно что угодно пропустить. В современном паскале (PascalABC.NET), кстати, стандартная библиотека цельнотянутая из .NET, там есть всё то же, что и в C#. Или он, как и питон, не годится по причине "можно случайно массив отсортировать"?

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

По пункту (2) категорически не согласен: информации в интернете слишком много, а нередко она уже давно устарела. Грамотный курс (или учебник) фильтрует информацию.

Готовые функции то да, но смысл огород городить ради одного раза. А вот насчёт читабельности - субъективно. Я не то чтобы очень много функциональщиной занимался, но определённый опыт есть, так что само слово reduce сходу говорит, что сейчас будет какая-то поэлементная обработка с агрегированием результата, а уж дальше выцепить шаблонное условие ничуть не сложнее обычного цикла. Если же говорить о какой-то более сложной обработке, то цепочка типа .map(...).filter(...).reduce(...) может оказаться в разы читабельней реализации через циклы и условия, т.к. каждый шаг чётко говорит, что именно он делает.

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

И нет, map/reduce это не костыли, это инструменты, которые позволяют выразить мысль гораздо более явным образом, нежели циклы. Абстракция более высокого уровня.

Перечисленные вами вещи есть в школьной программе профильного уровня, разве что кодирование с плавающей точкой разбирается поверхностно (впрочем, там столько тонкостей, что в школе подробно разбирать IEEE 754 как-то рановато как по мне). Другое дело, что далеко не всё из этого есть в ЕГЭ (соответственно, нет мотивации тратить много сил на то, что не нужно для экзамена), и далеко не все школьные учителя обладают необходимыми знаниями (я думаю, вы сами понимаете, что знать на уровне "проходил в институте сто лет назад" и "могу объяснить школьнику" - это два совершенно разных уровня знания).

Это да, школьная программа на самом деле существенно шире того, что покрывает ЕГЭ. В нём ещё нет ничего по архитектуре компьютеров, например. Учебник Полякова/Еремина на самом деле спроектирован как этакий конструктор для учителя, чтобы можно было достаточно свободно варьировать содержание фактической программы, там действительно материала даже больше, чем надо, от корки до корки его нереально изучить даже при нагрузке в 5-6 часов в неделю - разве что заниматься только теорией без практики, что просто глупо.

Выбирают технический профиль (раньше назывался физико-математический или информационно-математический) при поступлении в 10-11 класс, в основном. Это 4-5 часов информатики в неделю, вполне достаточно для подготовки. Если нет такой возможности (школа не предоставляет такой профиль) - репетиторы, дополнительные занятия, самостоятельная подготовка, наконец.

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

Информатика не нужна на нетехнические специальности (точнее, некомпьютерные и нематематические).

Хотелось бы уточнить, каких именно знаний вам показалось мало в учебнике Полякова/Еремина для подготовки к ЕГЭ. Мне казалось, что там всего более чем достаточно, но у меня искажённый взгляд, т.к. я почти всё это знал задолго до, и вещи, которые мне кажутся понятными и доступными, на самом деле таковыми могут и не быть. У меня шкурный интерес: я учитель, и стараюсь работать лучше :)

Чудес не бывает. Без профильного курса информатики мало того что не получится сдать ЕГЭ, так это ещё и бессмысленно будет: вузы ожидают определённых базовых знаний. Так что либо профильный курс, либо факультативы, либо репетиторы. Кто-то особо одарённый может и сам подготовиться, но это большая редкость.

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

Вы не тот учебник критикуете. В настоящее время существует ровно один нормальный учебник (линия учебников, точнее) за авторством К.Ю. Полякова и Е.А. Еремина. У него есть свои минусы, но в целом он хорош. Остальное годится разве что для непрофильных классов, где информатика преподаётся для общего развития.

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

Посмотрел версию 3.8, действительно, автоформатирование завезли. Последний раз я смотрел версию 3.6, что ли, там ещё не было. Та же 3.6, собственно, и падала: что на уроках, что на олимпиадах постоянно приходилось напоминать, чтобы сохранялись. Нет, к указателям это отношения не имело, просто повисание на ровном месте. Если сейчас исправили, ну хорошо.

И знаете, вот ровно такую же аргументацию я использовал, когда ученики возмущались тому, что им предстоит изучать Паскаль. Не помогало. Как я говорил, кому не надо - тем пофиг что изучать, а заинтересованные всё равно самостоятельно начинали копать Си++, Джаву или тот же Питон. В итоге я сам в эту аргументацию перестал верить, почему и перешёл на Питон, как только появилась легальная возможность это сделать в основной учебной программе, а не только на факультативах (вышел учебник Полякова). Алгоритмы можно изучать на любом вменяемом языке.

Какое отношение динамическая типизация имеет к чисто алгоритмической задаче обращения матрицы, вообще непонятно. Если человек не умеет мыслить алгоритмически, он не умеет это делать вне зависимости от изученного языка. Пресловутый индусский код - это ведь вполне себе статическая Джава в основном. На информатиксе (informatics.msk.ru) я насмотрелся на самые разные решения, в основном там Си++ и Паскаль, Питон на далёком третьем месте - и что-то вот незаметна связь между выбранным языком и стройностью решения.

Эм, я бы не сказал, что я с госсофтом очень много сталкивался, но из того, что сталкивался - там C# или Java. В особо клинических случаях сразу и то и другое (справочник избирательных участков из комплекта ПО для проведения выборов - там сам справочник на C#, но для парсинга XML использовалась Java, судя по тому, что я увидел в дистрибутиве).

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

Физ-мат лицей в Тамбове уже давно преподаёт C++ в качестве первого, у них там это класса с 7, если не ошибаюсь. Ничего, полёт нормальный. Я пробовал преподавать и C++, и C#, нормально заходят, но Python в целом получше.

Не поймите меня неправильно, PascalABC.NET - вполне нормальная среда для обучения, помимо минусов среды разработки, у него есть немало и плюсов. Главный минус вот по моему опыту в том, что все прекрасно знают, что Паскаль используется только для обучения. Тем, кто изучает программирование только потому что оно есть в школьной программе, в принципе-то без разницы, а вот людей, которых программирование интересует, это напрягает. Когда я преподавал Паскаль, постоянно были вопросы, почему мы не изучаем что-то более современное, всё равно, мол, придётся потом переучиваться.

Да, конечно, вы правы. Я сам отношусь к этой категории, мне очень нравится работать учителем :) По ряду причин, на мне нет обязанностей по содержанию семьи и обеспечению достойного будущего своих детей, поэтому меньших по сравнению с разработкой денег хватает (тем более я работаю в достаточно элитной школе, с финансами у нас существенно лучше, чем в среднем по региону). Есть у других людей и другие причины не гнаться за деньгами, я в этом уверен. Как уверен и в том, что между достойным будущим семьи и работой в школе большинство людей всё-таки выберут первое.

Для Питона есть хорошие варианты: PyCharm для более продвинутых, Thonny для совсем начинающих. C# и C++, конечно, с Visual Studio (единственный вариант, кстати, помимо Паскаля ЭйБиСи, в котором сообщения об ошибках на русском языке), но по ним маловато учебных материалов школьного уровня.

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

Вы в целом предлагаете достаточно разумные вещи (к некоторым деталям можно было бы придраться, но не буду). Проблема в том, что это всё уже есть. Просто откройте любой пробный ЕГЭ по информатике этого года, там все изменения в правильном направлении. Откройте профильный учебник К.Ю.Полякова и Е.А. Еремина, там более чем достаточно материала, а главы, которые касаются программирования, доступны в версиях для Питона, Паскаля и Си++.

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

В PascalABC.NET есть. Среда разработки у него довольно убогая, к сожалению, но именно в языковом плане он достаточно свежий (недавно вроде бы локальный вывод типов и лямбды завезли; ну по сути они копируют фишки C#). Ещё одно немаловажное достоинство - достаточное количество учебных материалов школьного уровня и доступная опять же для школьного уровня графическая библиотека, которая позволяет сделать что-то интересное.

Это глубокий оффтопик, конечно, но не могу не ответить, так как познал на собственном печальном опыте истину "в здоровом теле - здоровый дух". Мозг функционирует неотрывно от остального тела, а тело у людей так устроено, что ему просто необходимы как минимум умеренные физические нагрузки на постоянной основе. Если не практиковать собственную физиологию за пределами уровня "ходить по необходимости", гарантированно получите целый спектр проблем в том числе и со снижением качества мышления (к сожалению, сейчас из головы не могу накидать ссылок, так что просто anecdotal evidence).

Информация

В рейтинге
2 269-й
Откуда
Мичуринск, Тамбовская обл., Россия
Дата рождения
Зарегистрирован
Активность