Комментарии 131
Советская школа, которую мы помним, которая выпускала хороших математиков, физиков и химиков была уничтожена. И на смену её пришло НЕЧТО, единственная цель которого занять детей на 10 лет, и за это время обучить расписываться и считать сдачу в магазине. Шутить про обслуживающий персонал нефтяной трубы, которому больше ничего знать не нужно не хочется, но факт остаётся фактом.
Так что пока единственный приемлемый вариант, который я нашёл — это домашнее обучение в хорошей школе, даже если она сама находится за 1000 км от места проживания моего ребёнка.
Хотя все больше убеждаюсь — ребят учит не учитель, и не школа, а то, что их окружает. Они очень плохо поддаются убеждениям взрослых, но, практически всегда, подражают им. Домашнее обучение — это каждая минута, проведенная дома, и вы — родители, каждую минуту, тоже учителя.
Еще круто, когда дома изучается программирование, все-таки не поспоришь, алгоритмическое мышление развивает очень сильно.
Сражайтесь — от этого точно будет толк.
Я в школе последние 3 года учебы уроки не делал практически совсем — т.к. успевал их делать или после урока или на перемене — и так все, кто соображал быстро.
Да, были факультативы, но это не массовое явления, а желание учителя. Так что не надо сильно возвеличивать советскую школу.
Страну, в которой наблюдается нехватка рабочей силы, очень легко узнать: в ней появляются армии приезжих специалистов. Надо ли напоминать, чем конкретно «приезжие специалисты» в основной массе занимаются в России? Вот где нехватка ресурсов, а не в IT и не в производстве.
Гуманистический посыл автора я разделяю: повышать, улучшать, развивать. Но давайте всё же здраво смотреть на реальность, а то получается апокалиптическая картина: всё разваливается, потому что работать некому. Это не так: желающих работать найти всегда есть где (взять у соседа), и если этого не происходит, значит, спрос слаб и небогат. Стало быть, недостаточно образованные кадры — это плохо, но ничего радикально они нам не испортят, так как портить особо и нечего.
Так что, по моим наблюдениям, у нас больше проблема в не адекватной оплате труда, а не в как таковом отсутствии спроса.
А неадекватная оплата труда — это не «спрос», а хотелки. Если слушать тех, кто хочет иметь сотрудников, но не может себе позволить их нанять, то во всех странах мира они будут жаловаться, ничего удивительного.
Лет через 10 ни кому не будут нужны водители, или большинство врачей, или продавцы в магазинах. Их всех заменят компьютерами. Соответственно сейчас детям надо изучать программирование, учиться работать с паяльником/феном, учиться многим другим вещам из сферы IT, что бы просто смочь найти хоть какую-то (а лучше хорошую) работу в будущем. Но шансов этого добиться с нашей системой образования — не много.
Кто после учёбы решит уехать где лучше — так тому и быть. И не все уезжают из тех, кто может.
P.S. IT — это больше шансов без помощи «мохнатой лапы» преуспеть в жизни. Не больше, но и не меньше.
Население Японии сравнимо с населением Мексики, и компьютеры везде одинаково актуальны. Тем не менее, я не верю, что Мексика нуждается в таком же количестве квалифицированных инженеров, что и Япония. Если бы наша промышленность отчаянно нуждалась в хороших кадрах, она бы оптом завозила их откуда-нибудь из-за границы, но этого не происходит, а значит, всё устраивает (на государственном уровне).
При этом конкретный человек, конечно, может быть неудовлетворён качеством образования, желая большего. Я просто пытаюсь снизить дискуссию с уровня государства до уровня отдельных людей. Хочешь найти себя в современном мире — да, учись, ищи возможность стать специалистом. Но на государственном уровне никто слишком сильно переживать не будет, потому что в глобальном масштабе эта проблема не просматривается.
Нет, погодите, вы беспокоитесь о том, что специалист в IT с нашим образованием уедет за границу и окажется, что его образование неадекватно? Ну так это его личные проблемы, а не нашего государства.Улыбнулся.
Давайте разделим государство от наших личных желаний.
Кого из нас проблемы государства волнуют сильнее наших собственных проблем?
Статья, на мой взгляд, не о проблемах государства, а о проблемах учеников, учителей и родителей.
Тут описано что государство, как обычно, только лишь мешает своими программами и ограничениями.
Самому не нравится приводить такие примеры. Но если посмотреть на некоторые вакансии на «Моем круге», то мы увидим, что некоторые компании стараются привлечь программистов не только большими зарплатами, но и медицинской страховкой, помощью при переезде или в приобретении жилья. Большая зарплата снимает много проблем, но не все. Адекватные работодатели это прекрасно понимают.
Хороший диплом, определенно, повышает шансы найти хорошую работу. Но хорошее образование позволяет самому создавать работу, развивать свои прибыльные и полезные идеи. Этому тоже есть масса примеров на Хабрахабре.
У меня самого доводов в вашу пользу гораздо больше чем в свою. Поэтому и чувствую себя идиотом, если честно. Обещаю Вам, следующие статьи будут более конструктивными и прикладными.
А по поводу «самому создавать рабочие места» — собственно, мне ректор регионального вуза так и говорил. Я понимаю, что он не от хорошей жизни так рассуждает (какие ещё варианты?), но в целом это попытка построить мост с середины: пусть пока серёдка повисит, а мы края построим. Да, есть примеры фирм, созданных студентами, но обычно они вырастают в хорошей питательной среде, да и не могут такие случаи быть основой развития.
Проблема врачей решается только наличием хорошего конкурса на соответствующую специальность как среди студентов, так и среди преподавателей
Я конечно извиняюсь что снова встреваю, но Вы вообще знаете хоть что-то про проблемы нашей медицины? Это не просто работа за 3 копейки. Это выматывающая работа за 3 копейки с огромной ответственностью. Заоблачное количество пациентов, время на каждого регламентировано — часто мягко говоря не достаточно, что бы даже разобраться с историей болезни. А если врач выдаёт что-то рецептурное, то тут вообще подстава на подставе и со стороны больного/его родственников, и со стороны проверяющих. Все слышат про врачей-светил, у которых за 3-4 часа работы «котлета на кармане», но таких не более 1-2%. Остальным повезло не так сильно.
Соответственно отучившись многие, лучшие, через пару лет банально уходят. Кто-то в частную практику, кто-то вообще в другую область. А остальным становится просто всё равно. Ведь их основные клиенты — это наркоманы и алкашня. Ну и бабки, которые придумывают болезни, лишь бы пообщаться с кем-нибудь.
с огромной ответственностью.
Ну, «огромность ответственности» зависит от отношений врача с завотделением и главврачом. Главное — заноси когда надо и сколько надо, и будет все тип-топ, и погоны уйдут с бумагой «факты правонарушений не подтвердились, в возбуждении дела отказать».
Хочется учить — займитесь репетиторством, за много денег.
Сейчас при всём небогатстве россиян ситуация такова, что владеющий компьютером человек, скорее всего, имеет (как минимум) интернет-подключение и мобильный телефон, и стало быть, его месячные расходы даже на не самые базовые потребности уже превышают цену книг.
Иными словами, я не верю, что обычная нормальная семья не может себе позволить купить 2-3 книги по программированию в год (мы говорим о достаточно массовой литературе для новичков, которая стоит существенно дешевле узкопрофессиональных книг). Кроме того, школьные учебники сейчас тоже денег стоят. Если у семьи не найдётся, скажем, 70 долларов в год на такую литературу, это совсем не тот контингент людей, которому актуально обучение ребёнка программированию. У них явно задачи куда скромнее.
Большинство из них понимают, что возможностей вырваться из нищеты, кроме образования у них нет.
Вы сами себя переоцениваете и это у вас задачи куда скромнее. Но комментарий классный, отправьте его в ЮНИСЕФ, там оценят. Надеюсь, иронию поняли.
Давайте так:
1) Есть семья с компьютером, мобильным телефоном, и дети, которые ходят в школу, накормленные и обеспеченные учебниками. Они заплатят за книжку.
2) Есть семья или мать-одиночка без компьютера, мобильника, еле-еле сводит концы с концами, дети кое-как одеты и кое-как питаются.
Так вот, да, я согласен, что для вторых хорошее образование — это реальная возможность социального лифта. Но вот скажите, вы и в самом деле считаете, что для таких людей открытый викиучебник решит вопрос? Если так, то вот где фантастический идеализм и розовые очки. У этих людей нет ни компьютера, ни интернета, они даже прочесть онлайн-учебник не смогут. Поднимать таких детей можно только в рамках учебного заведения, где они будут общаться с более благополучными детьми, проникаться их интересами, получат доступ к компьютеру и учебным материалам. А если таких заведений нет, значит, всё для них будет плохо, к огромному моему сожалению и печали, но не надо на меня набрасываться, не моя в том вина.
Из еды — каждый день:
Макароны — несколько раз в день, молочный/яичный порошок, лук, капуста, картошка, сахар, мука, растительное масло. Но в достаточно голодных количествах.
Иногда: яйца, сало, курица наверно раз-два в месяц (не курица, а крылья, потроха). Что бы понимали, я только пару лет назад начал снова макароны есть, смотреть на них не мог, прошло более 20 лет отвращения.
Вопрос, где 2й группе детей читать вики учебник? Есть бесплатный доступ к дисплеям? В школе наверняка компьютеры после уроков будут сдавать обеспеченным детям за деньги, что бы они на них в игры играли, а нищим учебного времени не хватит ни для чего.
Для меня решение было таким — моя мама педагог, возможно потому она мне купила книги — по математике, где была математика и геометрия за все классы, по которой я сам мог заниматься, и IT-книгу для старшеклассников (а я тогда не был старшеклассником) которую я тоже освоил самостоятельно. Затем, когда я знал что такое компьютеры и программирование, и у меня появился интерес, я пошел по детским, школьным и взрослым библиотекам, мне повезло, нашлись нужные книжки.
Учил командную строку, файловую систему, утилиты и тд, в основном под DOS, всякое программирование, прерывания 21h, керниган+ричи, паскаль и тд.
Так случилось, что тогда был бум всяких игровых компьютерных клубов, я туда ходил и смотрел, не как играют, хотя это тоже, а как за компьютерами работают и настраивают.
Потом я пошел работать админом, потому что программисты были в городе не нужны, где с целью поучить что нибудь полезное дальше для себя учил программирование. Кстати была вакансия в исполком на pascal не помню за сколько, долларов за 20 в месяц наверное, я пошел, выяснил что программист увольняется потому что не платят, мне там выложили что хотят по требованиям, ну я туда не захотел идти на такую ЗП и к их идиотизму, бабка-начальница мерзкой показалась. В общем на работе был 1С, поработал админом, пописал отчеты на 1С, дальше пошел вдругие фирмы, потом ушел из 1С сферы, в общем через администрирование на предприятии, я вошел в программирование за деньги. А сколько админов лентяев или просто кто не хочет программировать, даже скрипты. Но это уже другая тема.
Поднимать таких детей можно только в рамках учебного заведенияЯ, предвзято считаю что в заведениях ничему не научат. По опыту, ни в школе на доп занятиях, ни во «дворце пионеров», где были якобы крутые преподы, других детей не научили, может буквально единиц научили программировать, за 5 лет.
где они получат доступ к компьютеру и учебным материалам.Доступ нужен, хотя я и без него первое время, по теории учился. А каким учебным материалам? Медиа или бумажным? Как выход можно выпускать недорогие бумажные книги.
будут общаться с более благополучными детьми, проникаться их интересами,Что же, время когда я учился примерно в 6м классе — дети у которых были деньги — пили алкоголь, курили табак, курили дурь. Причем дети «важных» людей, в том числе из правоохранительных органов.
У кого не было — дышали бензином, краской, растворителем.
В 8м классе несколько человек пробовали гер*ин или кок*ин, я не разбираюсь, так же «баловались» маком.
Мне постоянно был нагоняй, чтобы я с ними не тусовался, а то вырасту наркоманом или попаду в тюрьму.
Мама оказалась права, больше половины из параллельных классов и ближайших дворов, в последствии, стали акванавтами, наркоманами, некоторые сели в тюрьму.
Почему? Я не знаю, возможно потому что тогда я увлекался научной фантастикой, хотел быть физиком-теоретиком, писать программы которые бы обрабатывали данные с синхрофазотрона, а мои товарищи не видели ни одного пути ни способа для своего развития, ни для законного обогащения.
Интересно, насколько научно-популярная литература является идеологической литературой, как по мне так ничем не хуже (лучше) какой нибудь библии.
Книга была «юный радио любитель» издательство где всё было еще на лампах.
Дворцы пионеров были в полном упадке. Сейчас это не так (сам был приятно удивлён, когда побывал пару недель назад). Компьютеры стоили таких денег, что для бедных людей это был в принципе не вариант, и вообще для простого человека идея «отдать ребёнка в программисты» не была нормальной, слишком непонятно и далеко.
Можно было читать теоретические книги по Бейсику, а потом уже на машине наверстать (когда появится), но сейчас это тоже не вариант, компьютер нужен.
Книги же по радиоаппаратуре или электротехнике стоили вменяемых денег, да и на руках у людей их оставалось много с советских времён, их можно было просто «раздобыть», всё равно по факту приходилось иметь дело со старой советской элементной базой.
Но на самом деле это всё обсуждения темы по касательной. Давайте упростим. Допустим, для новичка (школьника) требуется 5 книжек по программированию, чтобы дать ему толчок в обучении. Это совсем немаленький объём. Если средняя книга стоит 15-25 долларов (см. Амазон, так и есть), то этот комплект обойдётся в 100 долларов. Далее уже можно читать открытые источники по более узким темам, которых масса.
Получается, что ув. uchitel бьётся за бесплатный комплект знаний ценой в ~100 USD и по сути считает, что вот этой суммы матери-одиночке не хватает для того, чтобы обеспечить ребёнку социальный лифт (!) Ну вот не могу я поверить, что всё реально упирается в эту сумму. Я как программист пытаюсь понять, где bottleneck, и вижу, что он не здесь.
У детей, на низах, серьезные проблемы, во всем. С ними можно работать, главное показать им, что у них получается, неважно что, но получается. Хотя, по началу они и требуют больше внимания и времени, но потом… для многих, желание вырваться — это серьезная мотивация.
А у меня проблема следующая, такие дети и другие тоже иногда приходят во время занятий, если компьютеры свободные, то конечно разрешаю позаниматься. Но у меня занятия, времени им не уделишь. И краем глаза видно, как у них, что-то не получается. Да есть книги очень простые, но и с ними у них возникают трудности и требуется помощь. Иногда им начинают помогать ребята постарше, если мне некогда. Будь для них самоучитель, просто поймите, самоучитель для ребенка. Не книга, а именно самоучитель, со всеми подробностями и тонкостями. Мне было бы на много проще и им тоже. Пусть даже не в Викиучебнике или Викиверситете. Скачанные книги и ютуб выручают, но КПД получается меньше чем мог бы быть.
Для меня этот вопрос оказался сложнее, чем в момент публикации статьи. Многое осталось за кадром, многое трудно выразить в тексте. И, правда, для меня это все очень эмоционально и трудно не терять самообладание.
Просто начинает казаться, что не только большим чинам класть на детей и образование в целом, но и нам тоже.
начинает казаться, что не только большим чинам класть на детей и образование в целом, но и нам тоже.С чего вы взяли что вам это кажется? Это не кажется, это так и есть. Государству — плевать. Мне — жалко, но плевать. Всем плевать.
Родителям плевать на своих собственных детей, многие не знают и не хотят знать что делать с их детьми.
Всех вам не вытянуть. Не разрушайте себе нервную систему.
Посылайте в библиотеки, пусть читают книжки, пусть в тетрадки записывают вопросы, приходят к вам, вы им расскажите те вопросы которые они не поняли.
Если дети не умеют/не хотят читать, то у вас не хватит времени всем всё рассказать, пусть учатся читать.
Более того, меня бесило, что учителя так медленно и мало дают, потому я сам читал забегая в перед.
Если уж совсем непонятно что детям искать в библиотеке, может найдут книгу «Вершинин О. Е. За страницами учебника информатики: Кн. для учащихся 10-11 кл. сред. шк. — М.: Просвещение, 1991г. — 352с.», книга так себе, но её можно самостоятельно понять, там много воды, есть basic, но есть важные вещи, типа двоичной системы, двоичной логики, дополнительного кода отрицательных чисел, блок-схем, циклов, логических схем, триггеров, ассемблера. Там много гуманитарной мути — всякой истории и подобной ерунды, но если найдут книгу получше, пусть расскажут. Кому интересны принципы схемотехники пусть в библиотеке поищут того же автора Вершинин О. Е. Пусть поищут в библиотеке книги по паскалю, остальные императивные языки все одинаковые.
Бедным детям главное прочно дать важные основы-теорию, за дешево. Библиотечные книги это бесплатно.
В этом учебном году, решил побольше времени уделить созданию учебных материалов. Что-то, думаю, может оказаться интересным для других. Вскоре напишу еще статью, уже о Scratch.
В общем, не так уж мы и разобщены, хоть и кажется, что это так.
А у меня проблема следующая, такие дети и другие тоже иногда приходят во время занятий, если компьютеры свободные, то конечно разрешаю позаниматься. Но у меня занятия, времени им не уделишь. И краем глаза видно, как у них, что-то не получается.
Один коллега рассказывал, что из числа топовых учеников назначает дежурного, который на уроке должен во время выполнения самостоятельных заданий помогать всем (и своим и пришлым) в технических вопросах: у кого-то комп завис и т.д.
А в университете я осознал, что преподаватели (в основном связанных с математикой) опираются на то, что студенты способны осознать абстрактные формулы без каких либо затруднений, в то время как все обстоит иначе.
Как правило, ученики, дальше развиваются так, что мне самому приходится у них учиться.
Я думаю, что если бы таких пособий «Преодоление первой ступени для чайников» было больше, то и начинаний, соответственно, тоже.
Возможностей много, было бы желание, при условие, что есть высшее педагогическое образование(это для школ). Так же брали учителями, людей с высшим профильным из регионов, считалось, что там им дали универсальное образование. Лет шесть назад прошла переаттестация учителей, те требовалось подтвердить свой диплом.
Рад за вас. Весь этот мой негативный опыт, действительно, не нужен. Может я и сам виноват.
А вы бы хотели принять участие в создании контента для детей на Викиучебнике? Да и вообще, хотелось бы узнать ваше мнение именно по этому поводу.
Пожалуй, единственный минус, в том, что ты никакой определенной, материальной выгоды не получаешь. На гитхабе, тоже достаточно обучающих материалов, но практически все они, точно не для школьников. А для студентов — это да, там действительно можно интересного много чего найти.
О рекламе даже думать не хочется, но если прижмет, то да, ничего не поделаешь.
Согласен с утверждением, что проблемы в образовании огромные. Но с тем, что справится с этим нам помогут новые технологии — категорически нет. Т.к. корень проблемы мне видится не в недостатках технологий, а в отсутствии потребности общества в высоко квалифицированных кадрах. Поэтому и реформа образования придерживается линии оболванивания — государству не нужны инженеры, творцы. С упомянутом уже СССР не было никаких WEB X.Y, но нужны были подготовленные кадры, и их готовили.
Естественно, при подготовке специалиста нужно использовать передовые достижения и в методиках преподавания, и в науках. Но заработает это все только тогда, когда станет нужно правящему классу — в нашем случае, представителям крупного капитала.
Я не предлагаю легкого, быстрого, волшебного решения этой задачи. Но я предлагаю решение. Я не знаю, как сделать так, что бы профессионалы начали совместно работать над образовательным контентом, пускай даже не в Вики. Возможно, что-то можно почерпнуть из истории создания Python или Processing. Но знание — это нечто, что-то более трудное в обращении чем языки программирования и технологии в целом.
В знании есть потребность. Ребята у меня просят знаний и не всегда я могу их дать, даже не всегда могу указать к ним путь.
И если понимать как все устроено, то стирается грань между языками программирования: они становятся просто клонами интерпретируемых и компилируемых языков из 70-х с добавкой нескольких быдло-фич, и пары библиотек. Ни каких больше изменений или новшеств не было. От слова вообще. Зато начинаешь отлично видеть маркетологов, заливающих 105 раз одно и тоже тебе в уши на новый лад.
Всякие там Scratch — согласен, полезны, но лишь на определённом этапе начальной школы, ну что бы максимума визуальности добиться. Но если превратить это в фетиш — на выходе получим очередного зомби-терминатора, который может n-1 раз переписать библиотеку std::*, но больше не способен ни на что.
Если у вас получится разместить это на Викиучебнике или Викиверситете, то я найду ваши знания в пять щелчков мыши. Я смогу не просто читать ваши материалы, я смогу их править: приводить больше примеров, добавлять иллюстрации, придумывать новые задания, разъяснять сложные моменты. Если вам это не понравится, то вы всегда сможете все вернуть к предыдущей версии. В конце-концов, я могу начать развивать параллельно свои учебные материалы, или создавать приложения к вашим.
Говоря о истории создания Python и Processing, я имел в виду успешный опыт совместного создания замечательных продуктов. Хорошие учебные материалы — это тоже продукт, который в одиночку трудно создавать и развивать. Я предлагаю объединиться и подумать, не над тем, что нас отличает и разъединяет, а над тем что мы можем предпринять в этой ситуации.
У меня пока материалов нет, и их в ближайшее время в открытом доступе не будет. Пока мой проект в самом начале. Возможно когда-то я его начну публиковать, но пройти ещё должны годы для этого. Когда я увижу, что это работает хорошо.
А так, еще занимаюсь переводом документации к SymPy и Matplotlib. Пробовал готовить учеников к ЕГЭ по математике с этими библиотеками, ничего не получилось, но это только от того, что сам толком не готовился.
По образованию я физик, но по большей части, занимался в основном математикой (криптографией), поэтому и крен у меня в больше на математику.
robboclub.ru/franchise
Сейчас я вижу что it-компании создают дублирующие часто друг друга площадки. Хотя это можно было бы делать на одной, в здании, который изначально создавался для обучения специалистов
Лучше делать много дублирующей работы, но что бы потребитель выбирал что именно ему нравится.
Каждому типу ученика свой тип учителя.
При всем уважении к автору, идею создания "единого учебника по scratch" с нуля считаю утопией.
Во первых, почему именно scratch?
Почему вообще учебник по основам программирования должен быть заточен на какой-то язык?
Эти самые основы вполне универсальны и общеизвестны. Можно взять любой язык, у которого есть отладчик.
Во вторых, а вы уверены, что такого учебника нет? Может быть он есть, но на английском?
В третьих, чтобы результативно учить по чужому учебнику, нужно не просто знать его содержание. Нужно знать кому и в каком порядке подавать материал.
Например, каждый педагог должен иметь свой сайт и демонстрировать на этом сайте не только свои достижения, но и созданные самостоятельно учебные материалы.
Самостоятельно созданные учебные материалы это не "вклад в общее дело". Это "вклад в свое личное понимание материала". Нельзя просто так взять готовые учебные материалы и начать учить по ним. Когда преподаватель написал где-нибудь свои учебные материалы, тогда он знает что делать в каждой конкретной ситуации на уроке.
В четвертых, 250 уроков это довольно большой объем. Как вы определили, что нужно именно столько?
По поводу, написания своих материалов, и согласен и нет, зависит от цели написания. Что-то пишется для галочки, что-то для реального дела. Считаю, что способность импровизировать и есть показатель того, что преподаватель действительно знает, что делать в каждой конкретной и даже не конкретной ситуации. Хотя импровизация требует от преподавателя значительно большей подготовки к занятиям.
250 уроков = 170 уроков во 2-6 классах (по 34 в год на класс) + 40 на внеурочку в 5 классе + 40 на внеурочку в 6-ом. Не могу сказать, что у меня хорошо получается преподавать Scratch, но кое какой опыт есть. И опыт показывает, что учебник лишним бы точно не стал.
Это больше чем утопия — на создание одного урока уходит 3-4-5 часов.
А что вообще должны уметь школьники 2-6 класса в программировании?
Другими словами, какие проблемы должен решать учебник?
Школьникам вряд ли нужен процесс подключения к СУБД, обработки результаты SQL запроса с рисованием таблички на форме. А ведь этот навык кормит довольно много людей. Сомневаюсь, что он устареет через 10 лет, что бы там ни говорили про замену кодеров на ИИ.
В основном это детские задачи, по другим предметам, в основном, 70% по математике. В остальных 30% чего только нет.
Собственно задача в этом и состоит. А остальное уже в основной и средней школе.
function divide (a, b) { // input
let count = 0;
let rest = 0;
while (a >= b) {
count = count + 1;
a = a - b;
}
rest = a;
console.log(`count: ${count}, rest ${rest}`); // output
}
Детям еще бы английский, такой который в школе не дают, во всяком случае мне не дали.Вот можно начать с McSimych или с Английские времена за 30 минут
Ознакомился с программой для школьников 2-6 классов по математике.
Для решения задач на этом этапе, программирование будет использовано просто как калькулятор. Отличаться от обычного он будет только в способе оформления вычислений.
Я думаю, что лучше копать не в сторону вычислений, а в сторону команд какому-нибудь наглядному исполнителю. Примерно такой же уклон есть и в том же учебнике по скрачу от MIT. Соответственно в голову приходят всем известные Arduino, майнкрафт/minetest и конструктор-mindstorms. Последний скорее всего есть в местном государственном кружке юных техников. Ну, по крайней мере, в моем сибирском городе есть.
Опыт преподавания младшим школьникам у меня нулевой, но я как то занимался конструированием мигающих светодиодов на ардуино с племянником. В глаза бросилось, что он медленно печатает. Хотя компьютер дома есть, в интернете сидит, в игрушки играет.
Если вы дадите детям возможность освоить навык быстрой печати, то вы точно им очень поможете. Плюс это не будет отнимать ваше время во время занятий с другими.
У ребят 5-6 класса, уже все немного посерьезнее. 5 класс — это работа с координатной плоскостью и рисованием. В 6 классе, обыкновенные дроби, НОД НОК, простые числа.
Я постараюсь написать несколько статей о Scratch. У него огромный потенциал. Но опять же, у меня ощущение, что я что-то не так делаю и что-то не до конца понимаю
По моему скромному мнению, если ваша цель — сделать так, чтобы ваш опыт был использован кем-то еще, то логичнее будет писать не "как писать на Scratch", а "как объяснить человеку как писать на Scratch". Не просто "как написать игру", а "какие задачи нужно предварительно научиться решать, чтобы написать игру". Ту самую методику, с необходимостью которой вы были согласны.
Почему это важно?
Посмотрите выдачу поисковика по запросу "как объяснить циклы". Результатов вроде много, но, в лучшем случае, там будет описан синтаксис циклов.
Я по вечерам веду курсы со взрослыми и точно знаю, что одного синтаксиса достаточно далеко не всем.
как объяснить циклы
По моему скромному опыту следующая тривиальная программа, помогает лучше многословных объяснений:
writeln('Цикл 1:');
for i:=1 to 5 do
writeln(i);
writeln('Цикл 2:');
for i:=3 to 7 do
writeln(i);
writeln('Цикл 3:');
for i:=1 to 1 do
writeln(i);
writeln('Цикл 4:');
for i:=1 to 0 do
writeln(i);
Увы, но нет. Хотя я согласен, что многословные объяснения неэффективны.
randomize;
for i:=1 to n do
for j:=1 to n do
m[i,j] := random (10);
...
Объясняю, что такое транспонированная квадратная матрица. И предлагаю за 10 минут написать программу для транспонирования. Первый получает 5. Не все успевают быстро решить, но понимание приходит ко многим.
Расскажите, пожалуйста, как вы определяете, что все слушатели усвоили ваше объяснение и способны применить цикл в другой задаче?
Типичная ситуация: рассказываешь, показываешь. Все кивают, что поняли. Даешь задачку и начинаются затыки. Решает 1 из 10 и то, только потому что выиграл в лотерею при рождении (и, возможно, воспитании).
Все кивают, что поняли. Даешь задачку и начинаются затыки. Решает 1 из 10
«Ok. Молодец! Отлично. Только объясните, пожалуйста, свое решение, чтобы все поняли.»
После его объяснений спрашиваю: «Все поняли? Или ничего не поняли, тогда задавайте вопросы докладчику». Если вопросов нет, то предлагаю добровольцу повторить объяснение — можно по-своему, или хотя бы сказать в чем основная идея решения — нпр., в задаче транспонирования матрицы идея поменять индексы.
В случае тотального непонимания возвращаюсь к первому примеру:
writeln('Цикл 1:');
for i:=1 to 5 do
writeln(i);
И объясняю технику раскрытия циклов, записав эквивалентный код:
i := 1; writeln(i);
i := 2; writeln(i);
...
Предлагаю желающему раскрыть следующий цикл. А дальше стоит вернуться к теме циклов на следующем занятии, тем более, что пока ничего не говорили про циклы с пред- и пост-условиями.
Вот эти два пункта очень интересно связаны.
Бывают стеснительные — догадывается, как решить, но если решит неверно — над ним могут смеяться, а если верно — будет выглядеть выскочкой, и то и это ему нежелательно, поэтому молчит, как партизан на допросе
и
Решает 1 из 10 «Ok. Молодец! Отлично. Только объясните, пожалуйста, свое решение, чтобы все поняли.»
Необходимость без подготовки объяснять всей группе свое решение совершенно не мотивирует стеснительных людей что-либо решать. А таких людей в программировании немало.
Основы программирования это все таки не основы ораторского искусства. У меня студенты если и объясняют кому-то, то только соседу и только если он сам спросит. Плюс я отговариваю спрашивать у соседей потому что у соседей может быть неправильное понимание.
По вашему методу я раньше тоже рассказывал, но однажды пришел к выводу, что так меня понимают только сильные. А им особенно и объяснять не нужно. Средние и слабые не понимали, а значит со своей работой я не справлялся. Потом пришел к нынешнему методу. Количество понимающих заметно выросло, но тема увеличилась в объеме и на нее уходит 2-3 занятия.
При объяснении циклов начинаю с того, что вы делаете в конце. Сначала расписываю действия, а потом показываю как перейти к оформлению цикла. Задача сводится к поиску закономерности во множестве похожих действий.
Студенты так не просто знакомятся с оформлением циклов, они узнают ситуации, в которых его применение полезно. У них есть список понятных шагов к написанию.
Плюс так очень удобно подсказывать решения. Пишу первые 3-5 шагов цикла как последовательность действий, а мыслительное усилие по определению закономерности и написанию цикла студенты делают уже сами.
Домашнее задание это всякие упражнения в виде "напиши ряд чисел от меньшего к большему", "от большего к меньшему", "с вводимыми границами" и т.п. Заданий много и они ранжированы по сложности. Самые сложные (и необязательные) в конце — чтобы сильные далеко вперед не убегали.
Транспонирование матрицы сразу после того, как рассказал циклы никогда не даю. Это не тривиальная задача и перед ней есть несколько подготовительных, более простых задач.
Ситуация, когда аудитория НЕ хочет понять — у меня очень редкая. Может у вас они просто сдаются после второго-третьего занятия?
Основы программирования это все таки не основы ораторского искусства.
Ответ с места и у доски — одна из основных форм обучения с первых уроков в начальной школе. Ни от первоклассника, ни от студента, ни от аспиранта, ни от инженера или научного сотрудника обычно не ждут ораторского мастерства. Но ИМХО каждый человек должен уметь внятно устно и письменно излагать свои мысли. Когда человек пытается изложить свои мысли, он лучше понимает, что хочет сказать. ИМХО школьная литература большинству школьников нужна именно для того, чтобы научится излагать мысли на заданную тему, а не чтобы зазубрить, какое отчество у Татьяны Лариной — далеко не все станут литературоведами.
И как экзамены сдавать, если не научился формулировать свои мысли? Или все экзамены нужно заменить тестами с галочками на правильных ответах?
Возможно, транспонирование матрицы и не всегда стоит сразу давать — зависит от аудитории. Всегда пытался найти «золотую середину», чтобы последние не выключились из-за полного непонимания, но и чтобы первые не заскучали и тоже не отключились.
С современными тенденциями я тоже не знаком и, если честно, даже не знаю где знакомиться.
Я обращаю ваше внимание на то, что в этой ситуации студент у доски рассказывает новое и без подготовки. Цель занятия ведь в том, чтобы изучить новую тему, а не в спонтанной импровизации.
Если хочется потренировать у них навыки публичного выступления, то лучше дать задание на подготовку какого-нибудь реферата к следующему занятию. Чтобы выступать пришлось всем, и была возможность подготовиться и отрепетировать.
в этой ситуации студент у доски рассказывает новое и без подготовки.Аналогичная ситуация обычна для школьных уроков математики, физики, химии, когда ученика вызывают решить задачу. Она для него обычно новая.
В учреждениях средне-специального и высшего образования есть разделение практики и теории. На практике не вызывают к доске для демонстрационного решения. А на теории не приходится решать задачи. Для тренировки публичных выступлений устраивают рефераты.
Школу я плохо помню. Кажется вызывали не тех, кто только что "смог", а тех, у кого не хватало оценок, или тех, кто поднял руку. В первую очередь с целью "поставить оценку". К тому же в школе тоже приходилось выступать с рефератами.
Рефераты, на мой взгляд, наименее эффективная форма, особенно в эпоху тотального инета. Иногда, не разобравшись в выдаче поисковика, получаю реферат. В 99% полный кошмар.
Школу помню хорошо — учился в отличной физмат школе, но история КПСС достала.
Может знаете, есть книга из Библиотечки Квант «Введение в теорию групп» П. С. Александрова. Когда ее читал, то даже не задумывался, насколько все легко и понятно. И только недавно, когда снова перечитывал, понял в чем дело — в огромном количестве хороших примеров и разъяснений. После этого сам начал стараться искать и приводить понятные примеры.
Более-менее полноценные игры, делаем только на внеурочке. На уроках, только некоторые игровые элементы, да и то не всегда. Вообще, стараюсь делать так, что бы каждый урок ребята чему-нибудь удивлялись. Но это тоже не всегда получается. Бывают уроки… ужасные иногда бывают уроки.
На мой не профессиональный в преподавании взгляд, хорошо бы начать с чего то визуального, в смысле схем.
Типа графического представления: Логических Схем, Пересечений в теории множеств, Блок Схем, или Форм Бэкуса — Наура, а так же таблиц. Всё это для 6 — 8 классника доступно и мне было понятно.



На мой взгляд, очень удачное учебное пособие: С.М.Окулов, Программирование в алгоритмах, М.: БИНОМ, 2004. В предисловии автор отмечает, что книга в первую очередь предназначена для учителей и учащихся школ с углубленным изучением информатики. Упор делается на алгоритмику, причем на широко известные классические задачи, а не на выдуманные только для учебных целей. Реализация — простейшая: Паскаль. Как бы его ни критиковали, но этот «устаревший» язык зарекомендовал себя в качестве учебного языка и языка публикаций (в последнем случае сейчас чаще используется Pascal-like псевдокод). Выучить Паскаль для школьного применения гораздо проще и быстрее, чем многие другие языки. А строгости языка дисциплинируют учащихся в стилевом плане. Поняв основы, т.е. основные идеи алгоритмики и реализации, тем, кто захочет дальше учится программированию (в ВУЗах, на курсах, самостоятельно) будет гораздо проще осваивать новые технологии и современные языки. Без этих основ учащийся может не увидеть за деревьями леса.
Ради любопытства нашел эту книгу и "полистал". Книга явно разработана для того, чтобы готовить олимпиадников. После освоения материала из этой книги, дальнейшее изучение программирования будет выражаться в освоении прикладных технологий, развитию софт-скилов и основ бизнес-анализа.
Вряд ли школьникам 2-6 классов такие задачки будут по силам.
В контексте настроений автора статьи стоит еще упомянуть, что социальный лифт для детей из бедных семей это не обязательно "из грязи в князи разработчики Яндекса". Это может быть "из грязи во фриланс" или "из грязи в линейного программиста на аутсорсе" или даже "из хирурга в тимлиды". В этих путях важны немного не те навыки, которые оттачиваются на олимпиадах. При этом эти варианты выглядят более доступными и реалистичными.
Книга явно разработана для того, чтобы готовить олимпиадников.
ИМХО в книге навыки строго обязательные для хорошего специалиста, будь он на ЗП или фрилансер.
После освоения материала из этой книги, дальнейшее изучение программирования будет выражаться в освоении прикладных технологий, развитию софт-скилов и основ бизнес-анализа.
Не вижу оснований для такого вывода. Наоборот: после освоения материала из этой книги, дальнейшее изучение будет выражаться в углубленном изучении уже освоенных алгоритмов и освоении новых. И в освоении ООП и соответствующих языков для реализации этих алгоритмов. При этом главное — осознание дополнительных возможностей которые дают ООП, многопоточное программирование и т.д. Прикладные технологии при этом могут осваиваться, но это не главное.
Вряд ли школьникам 2-6 классов такие задачки будут по силам.
Сложный вопрос. Может не все задачки. Может не всем, а только заинтересованным. У учителя есть материал для эксперимента (в хорошем смысле слова, нпр., двоек не ставить, добровольное участие учеников и т.д.).
В этих путях важны немного не те навыки, которые оттачиваются на олимпиадах.
Олимпиады не самоцель, а только стимул для углубленного изучения. На мой взгляд во всех честных путях знание алгоритмики важнее знания последней спецификации HTML. А на других путях: по знакомству бывает возможно возглавить отдел программирования не зная никакого языка кроме русского-бюрократического.
Олимпиадные алгоритмы в повседневной разработке иногда бывают полезны. Реже, чем хотелось бы, но полезны. Так что вы правы в этом.
Сложный вопрос. Может не все задачки. Может не всем, а только заинтересованным. У учителя есть материал для эксперимента (в хорошем смысле слова, нпр., двоек не ставить, добровольное участие учеников и т.д.).
Касательно этого вопроса, я уверен, что школьники 2-6 класса не осилят олимпиадные задачки на комбинаторику и теорию графов. Не каждый взрослый поймет их, чего уж говорить о детях, которые учатся умножать и делить.
Можно, конечно, их сначала подготовить к понимаю графов, а потом уже грузить задачками на них. Но в процессе подготовки может выясниться, что школьники уже не в 6 классе, а в 9, а в классе вас понимают не 20 человек, а 2.
Замечу, что повышать СРЕДНИЙ уровень школьного образования не обязательно путем повышения верхней границы. Повышение нижней границы тоже даст определенные результаты. Эти люди может быть никогда не будут работать в IT. но кому в работе будет лишним умение последовательно и точно излагать мысли?
Олимпиадные алгоритмы в повседневной разработке иногда бывают полезны.
Давайте не будем называть алгоритмы арифметики неограниченной разрядности, поиск кратчайшего пути в графе и т.п. олимпиадными! Это классические алгоритмы, нужные и важные очень многим профессиональным спецам совсем не для олимпиад. Иначе, пожалуй, книги Кнута нужно переименовать в олимпиадные задачники ;)
Не каждый взрослый поймет их, чего уж говорить о детях
В полном объеме теория графов — одна из сложнейших областей современной математики. Но на начальном уровне понятие графа предельно наглядно. Школьная тригонометрия гораздо сложнее. (Не случайно, нпр., задача 4х красок пользуется такой популярностью у полных дилетантов — решают все: от пионеров до пенсионеров).
повышать СРЕДНИЙ уровень школьного образования не обязательно путем повышения верхней границы.
Совершенно согласен. И именно это (вслед за Окуловым) и предлагаю: изучать не новейшие технологии и сложнопродвинутые языки, а основы — алгоритмы начиная с Евклида и Эратосфена.
Эти люди может быть никогда не будут работать в IT. но кому в работе будет лишним умение последовательно и точно излагать мысли?
Да. Именно это и дает изучение алгоритмов. А как составной оператор записать — фигурными скобками или begin-end — это большинству школьников потом будет неважно.
Ребята очень разные, некоторые, вообще никакие, некоторые одаренные. Честно говоря некоторые ребята меня вообще ставят в тупик — наверно бывают мозги просто идеально заточенные для программирования.
Задания стараюсь давать разные, кому-то полегче, кому-то посложнее. Хотя личностно-ориентированными, занятия вообще не назовешь. Нужно самому, больше готовиться к занятиям, а это большая удача, если на это находится время.
Но по сути, во многих книгах удается найти фрагменты, которые могут оказаться полезными на уроке. И вот эта фрагментация и есть тот пазл, который приходится собирать.
Кстати, побежал ка я на урок… 6 «Б», последний урок в четверти, вместо контрольной, проект на свободную тему. В следующем комментарии расскажу, что получилось.
По Питону, книг достаточно много хороших, Майкла Доусона, например. По алгоритмам, только одна (на русском), остальное приходится перерабатывать для Питона самостоятельно.
А по поводу языков, то тут, конечно, можно долго спорить. Но разница между тем как мы программировали на Паскале и как программируем на Питоне очень большая.
разница между тем как мы программировали на Паскале и как программируем на Питоне очень большаяЭто интересно, а в чем разница? В REPL?
По алгоритмам, только одна (на русском), остальное приходится перерабатывать для Питона самостоятельно.
Вот именно. Книга хорошая, только без ООП она была бы проще для школьников. ООП, к сожалению, отвлекающий фактор для понимания сути алгоритма. И, с другой стороны, на тривиальных задачах плохо видна мощь ООП, и им не понятно, зачем оно нужно.
ООП — сложная штука, но если в дебри не лезть, то вполне посильна школьникам тем что постарше. Хотя, я слышал, что в некоторых школах преподают C#, учеников не много, но есть.
Но все это действительно отвлекает от сути алгоритмов.
Тогда вне дебрей — у ООП есть три кита: инкапсуляция, наследование и полиморфизм. И как эти киты видятся школьнику, когда определяется class Graph только для того, чтобы проиллюстрировать поиск в ширину. Где там необходимость этих китов? Лишние сложности с описанием класса, и не более того. Извините за нескромность, но так совпало, что недавно привел простой пример с поиском в ширину, где ООП действительно полезно, т.к. сравниваю разные методы представления графов. Очевидно, как записать всё тоже самое без ООП, но код будет хуже.
К ООП в Питоне ничто не принуждает, хотя чего в нем только нет для ООП (мн. наследование в том числе). В школе без ООП можно обойтись, действительно можно, но и игнорировать его, как делаю я, скорее всего, тоже не правильно.
ООП -это все таки для стратегического программирования, для долгосрочного сопровождения и развития кода. Его начинают ценить школьники, которые сами несколько лет подряд пишут какой-нибудь свой проект. Но остальным объяснить его ценность очень и очень непросто.
ИМХО общеобразовательная школа не должна и не может давать проф.ориентацию, она должна дать только кругозор, необходимый для выбора проф.ориентации по окончании школы.
Есть еще одна прекрасная штука — Anaconda, IPython и Jupyter. С помощью того же Питона и с минимальными (просто самыми далекими представлениями) знаниями об ООП, мы можем строить классные графики с NumPy и MatPlotLib. С SymPy нам доступны символьные вычисления и компьютерная алгебра. Не говоря уже о том как легко работать, например, с изображениями, serial-портом, перехватом событий клавиатуры и мыши.
Общеобразовательная школа не может давать профессиональную ориентацию но педагоги могут. Верно подмечено, что это всего-лишь ориентация — это, реально, просто направление в котором надо копать. Они и копают. Не всем, некоторым, реально интересно (и надо), они и копают.
Допустим хотел один мой ученик научиться 3-д моделированию и печати. Я установил блендер, немного поигрался, потом с блендером мы поигрались уже вместе с учеником. Теперь он умеет моделировать и печатать, а я нет. И если что-то нужно напечатать, то все мы просим это сделать именно его. Тоже самое с bootstrap, pillow, C++, ИИ и другой всякой-всячиной. Стоит им немного помочь начать, а дальше они сами копают, копают, копают. Ситуации, когда я сам, что-то спрашиваю или уточняю у своих учеников уже стали нормой. По сути, я их и учу-то не так уж и много — мы вместе разбираемся в том, что интересно или нужно.
По, поводу алгоритмов, еще хочу добавить, что они еще и хорошей математики требуют, а с математикой в школах просто жесть. Ну, просто нереальная жесть. Хотя в подтягивании математики, нам опять помогает тот же Питон.
Я думаю, что если бы, что-то подобное было у aleshqqa1337, то возможно и его статьи бы не появилось.
В школах надо, (простите за сленг), «мутить» что-то новое, но стараться, что бы это был «реальный замут». На Питоне, на Паскале, на Яве, на С++, на РНР, на С#. Да хоть на Фортране. Лишь бы потенциал и особенности учеников были реализованы на 100% (хотя бы 70%).
минимальный синтаксис, динамическая типизация, высокий уровень абстракции и обязательные отступы
Ключевых слов в Питоне больше, чем в Виртовском Паскале. Другое дело, что Вы можете использовать подмножества этих языков. Достоинства и недостатки динамической типизации для профессионального программирования — вопрос далеко выходящий за рамки данного обсуждения, если ограничиться школьным программированием, то она представляется излишним усложнением, могущим испортить стиль программирования у начинающего:
Статическая типизация позволяет уже при компиляции заметить простые ошибки «по недосмотру». Для динамической типизации требуется как минимум выполнить данный участок кода. Википедия.
И слишком высокий уровень абстракции школьнику не нужен. Про отступы и среди профессионалов нет единого мнения.
некоторые задачи можно решать за одну строчку кода
А это достоинство? В С/С++ в одну строчку можно сгородить такое, что не всякий опытный программист сразу поймет. А ранее ПЛ/1 был знаменит заумными конструкциями. ИМХО для школьников это очень вредная практика.
30-40 строчек кода на Паскале, против 10-15 на Питоне
Можете привести убедительный пример — образец для подражания, т.е. как должен школьник написать на отличный ответ — на Паскали и то же на Питоне?
перехватом событий клавиатуры и мыши
Опять то же самое: вместо изучения алгоритмических основ отвлекаемся на технологии работы с устройствами. Можно еще многопоточное программирование взять и т.д.
Общеобразовательная школа не может давать профессиональную ориентацию но педагоги могут.
Согласен. Действительно, это основная цель каждого педагога. Факультативно можно и нужно давать учащимся заинтересовавшие их технологии, специфические подходы и т.д.
По, поводу алгоритмов, еще хочу добавить, что они еще и хорошей математики требуют, а с математикой в школах просто жесть.
Это очень серьезно! Плохое знание школьной математики может обесценить все знания по информатике.
Да хоть на Фортране.
ИМХО это делать не надо. Уж слишком специфично — не для начинающих.
Паскаль — хороший язык. Но его использование в качестве первого языка программирования — это просто традиция от которой очень трудно избавиться.
Питон не призван учить программированию в самом кристально-чистом виде. Но та скорость на которой он позволяет кодить, огромнейшее количество уже готовых (даже не самых лучших) библиотек, позволяют очень быстро воплотить в жизнь, то что на Паскале просто не представляется возможным для школьника. По сути, для школьника главное не знания а мозги заточенные под добычу и переработку знаний.
Программирование — это всего-лишь инструмент. И если у вас есть (а он есть) опыт программирования на Паскале — то это хорошо. Если есть (а как я понял есть) опыт обучения этому языку — это тоже здорово. Но что бы спорить, нужен опыт обучению Питону и программированию на нем.
Скажем так, в Хакасии (где я проживаю), на сколько я знаю — я единственный учитель, который обучает Питону. Когда я всем говорю, как это круто, то мне тоже никто не верит! И все говорят то же самое что и Вы. Хотя в тоже время, благодаря Питону мы выиграли много конкурсов, а приверженцы Паскаля нет. Мы ни разу не выигрывали олимпиад по программированию — это да. Но и победители, тех же самых олимпиад использовали не Паскаль и не Питон, а С++.
От традиций очень сложно избавляться. Все наше образование — одна большая традиция, которой уже не место в 21 веке. Мы просто так устроены, что нам трудно.
И напоследок, решение перейти с Паскаля на Питон у меня заняло почти полтора года, но это было самое лучшее решение за всю мою педагогическую карьеру.
Просто попробуйте написать программку для нахождения чисел Фибоначи на Питоне.
Одно из решений:
fib = lambda n: fib(n - 1) + fib(n - 2) if n > 2 else 1
ИМХО для школьника это ненаглядно, хотя и коротко. Но м.б. я пристрастен.
огромнейшее количество уже готовых (даже не самых лучших) библиотек
Ср.:
Как преподаватель в области обработки изображений, я заставляю своих студентов первые полгода изобретать велосипеды, а не пользоваться библиотеками. Потому что если студент не понимает внутреннего устройства библиотечных методов, и допускает глупые ошибки, он бесполезен для серьёзной работы в грантах/проектах.
Далее:
Программирование — это всего-лишь инструмент. И если у вас есть (а он есть) опыт программирования на Паскале — то это хорошо. Если есть (а как я понял есть) опыт обучения этому языку — это тоже здорово. Но что бы спорить, нужен опыт обучению Питону и программированию на нем.
Я согласен, что всего лишь инструмент, особенно в школе. Именно поэтому (извините, что повторяюсь) в школе ИМХО нужно учить не языку, а алгоритмическим основам. Я сам в основном программирую в IDE Delphi-7, во многом по причине повторного использования собственного кода. Однако возникают задачи для CUDA — С++. А бывает, что нужен и ассемблер. Относительно недавно были проекты в VBA для МС Офиса и на JS для одного сайта. Сейчас думаю над AI-проектом в Unity (C#). И т.д. Но это не учебные проекты. И я, нпр., не думаю, что школьников нужно учить Delphi.
Паскаль — хороший язык. Но его использование в качестве первого языка программирования — это просто традиция от которой очень трудно избавиться.
ИМХО от хороших традиций избавляться не нужно.
Все наше образование — одна большая традиция, которой уже не место в 21 веке.
Очевидно, что цикл статей разных авторов на тему «Необразованная молодёжь» вызван проблемами в образовании. Может, мне кажется, что раньше эти проблемы столь остро не стояли? И может, причина не в следовании традиции, а в отказе от нее, в ее утрате?
Вот в этом плане Питон очень хорош. Причем я бы не сказал, что мы его прямо учили (по моим ощущениям, оно как-то само происходит). Ребята начинают что-то делать, если что-то не получается разбираемся, и делают дальше. Игру с уменьшением строчек кода, тоже не я придумал («Плоское, лучше чем вложенное» Дзен Питона). Но что бы сделать следующий шаг в этой игре, нужно понять предыдущий — значит понимают.
На Питоне, так же как и на Паскале можно учить алгоритмическим основам. Это реально возможно. Просто, на паскале я не могу показать ребятам то что им реально интересно. Голые алгоритмы — это одно зевание на занятии и попытки не уснуть. Но когда, они что-то попробовали, а потом из-за незнания алгоритмов у них что-то перестает работать, то тут их отношение к алгоритмам в корне меняется… начинает преобладать самообразование.
Наверное, мы можем долго спорить, какой язык лучше в образовании. Пожалуй здесь слишком много факторов. Но наверное, больше всего их в самом педагоге. Если педагог прекрасно владеет каким-нибудь языком и способен на огромное КПД в обучении программированию на нем, то это круто. Я сам не отношусь к их числу, поверьте. Но значительная доля учителей информатики (!) даже не умеет программировать. Поэтому в данной ситуации, даже учитель преподающий на Фортране, окажется не таким уж и фриком.
По поводу традиций, абсолютно согласен. Но не совсем, излишний консерватизм — это тоже зло. Должна быть какая-то золотая середина.
Если раньше (традиционно) учителя или преподавателя считали авторитетом, относились к ним уважительно и даже побаивались, то сейчас, кто угодно может стребовать с них все что угодно.
По поводу традиций — это вы прямо в точку попали.
По поводу традиций — это вы прямо в точку попали.
Ok. Очень-очень хорошо, что наши мнения по такому ключевому вопросу совпадают, иначе продолжать разговор не имело бы смысла. И я согласен:
излишний консерватизм — это тоже зло.
Да. Зло. Каждую идею можно довести до абсурда, в том числе и излишним консерватизмом.
Наверное, мы можем долго спорить, какой язык лучше в образовании.
Да. Именно так. Можно инфинитно спорить, какой язык лучше. В том числе и в образовании. Гугл или другой поисковик выдаст кучу ссылок на подобные холивары, которые всегда заканчиваются ничем. Я иначе ставлю вопрос: ИМХО язык — не главное в школьной информатике. Поэтому, если Вам удобнее Питон, а кому-то Фортран, а кому-то Ада, то пусть так и будет. Т.к. ИМХО цель – алгоритмы, а не язык. В конце концов, Евклид и Эратосфен сформулировали свои великие алгоритмы на естественном языке, не зная искусственных – не было тогда ЯП. Много позже определенную роль сыграл, нпр., и Русский алгоритмический язык. Однако сейчас у школ другие возможности, и вряд ли стоит возвращаться к этому ЯП. Но мне кажется, что при возможности лучший выбор будет в пользу языка, который минимально отвлекает школьников от основной цели (см. выше – от алгоритмики). Код должен быть максимально нагляден для школьника. К сожалению, на любом языке можно написать путаный код. Мне кажется, что и ЯП, и учитель первым делом должны этому препятствовать. Т.е. не играть «с уменьшением строчек кода». Например, Вы не прокомментировали мое замечание про решение для чисел Фибоначчи на Питоне:
для школьника это ненаглядно, хотя и коротко.
Из чего сделал вывод, что и Вы того же мнения про случай, где игра в уменьшение строчек кода превращается в самоцель. Тут мы переходим к проблеме игры в школе. Вы сказали:
Просто, на паскале я не могу показать ребятам то что им реально интересно. Голые алгоритмы — это одно зевание на занятии и попытки не уснуть.
К сожалению, интересно и нужно – разные вещи, которые не всегда совпадают. Прежде всего, с большой долей уверенности могу предположить, что некоторым ребятам будет наиболее реально интересно узнать про майнинг и про взлом игр с помощью Артмани. Тут ЯП вообще не нужен. В принципе возможно строить уроки исключительно как игры. Каждый урок – своеобразная викторина, командное соревнование и личный зачет. И не только в информатике. На уроках по русскому языку можно играть в слова, нпр., я недавно написал про одну игру из большого множества таких игр: получение из мухи слона. На уроках литературы можно решать кроссворды. Для математики и физики тоже известно множество занимательных головоломок. В частности, в качестве учебника подойдет замечательная книга Я. Перельмана «Занимательная физика». На химии за основу можно взять рубрику журнала Наука и жизнь «Химический иллюзион» и добавить как можно больше пиротехники. Если на таких уроках учитель сумеет справиться с функцией массовика-затейника, то ученикам точно не будет скучно, никто не заснет, и все будут довольны. К сожалению, такое веселое времяпрепровождение не даст сколь-нибудь систематичного знания азбучных основ и т.о. не обеспечит достижения основной цели общеобразовательной школы, упомянутой выше:
общеобразовательная школа […] должна дать только кругозор, необходимый для выбора проф.ориентации по окончании школы.
Поэтому на информатике нужны голые алгоритмы, на математике — голые теоремы с доказательствами, на физике — голые физические законы, а на химии — голый периодический закон, как основной для химии. Конечно, по возможности и по своим способностям учителям следует стремиться сделать каждый урок максимально увлекательным. Однако и тут всем мил не будешь. Даже в случае игры. Какую игру ни возьми – нравится не всем и не всегда: кто-то обожает решать кроссворды, а кто-то не будет, даже если ему за это заплатить. Игра Тома Сойера в покраску забора — один из довольно уникальных случаев (когда почти все стали участвовать). Впрочем, Марк Твен не сказал, сколько товарищей Тома прошло мимо, не включившись в игру. К примеру, сводный брат Тома Сид на протяжении всей книги регулярно следит за Томом. Сид бы не включился, т.к., несмотря на свои подлые наклонности, а м.б., увы, благодаря им, он один из наиболее разумных персонажей книги (включая взрослых).
Но когда, они что-то попробовали, а потом из-за незнания алгоритмов у них что-то перестает работать, то тут их отношение к алгоритмам в корне меняется… начинает преобладать самообразование.
Про самообразование недавно писал:
Самообучению в детском воспитании обычно отводится второстепенная роль. Конечно, бывают талантливые дети, и известно много случаев, когда заинтересовавшийся школьник самостоятельно по книгам осваивает что-то не входящее в школьную программу. Однако такие случаи обычно рассматриваются как исключения, пусть и довольно многочисленные, из общего правила. При этом обычно отмечается, что знания, полученные школьником в результате подобного самообучения, обычно поверхностны и не систематичны, а иногда и ошибочны, если не сумел разобраться или не так понял. Очевидно, что для взрослого достаточно образованного человека самообучение обычно проходит гораздо плодотворнее.
— пока никто не оспорил. Добавлю, что если основная надежда на самообразование, то школа не нужна.
Если раньше (традиционно) учителя или преподавателя считали авторитетом, относились к ним уважительно и даже побаивались, то сейчас, кто угодно может стребовать с них все что угодно.
Это наиболее печальный момент. Пока учителя не вернут себе традиционный авторитет, ничего у них не получится. Конечно же, речь про настоящих учителей, а не про «учителей информатики», не умеющих программировать. В «Парне из преисподней» наставник Гепард вызывает у землянина Корнея почти полное крайнее неприятие, за исключением уважения как к талантливому педагогу. Возможно, в наши дни подобное отношение у многих к А. С. Макаренко. Выдуманный Гепард и реальный Макаренко имели почти абсолютный авторитет у своих крайне не простых учеников, добиваясь его не бесспорными методами. Никто, конечно, не призывает учителей с пистолетами ходить, тем более что плохому учителю даже пистолет не поможет.
… самое странное, что каждый знает, «что» должно быть в образовании. Практически любую ситуацию мы соотносим со своим жизненным опытом, со своей историей, и на основе этого принимаем, как нам кажется, «правильные» решения и делаем «верные» выводы. Мы все уверены, что нам нужен опыт и история — хотя это не всегда здравый смысл и рациональность.
Сегодня ко мне приходил в гости ученик. Через неделю он уходит в армию. В университет он не поступил, и во многом из-за меня — мы слишком увлеклись не тем чем надо (конкретно забили на математику, хотя могли подготовиться). Самое интересное, он и не расстроился, и даже не собирается никуда поступать. Увлекся обработкой естественных языков, сделал несколько переводчиков. Хорошо понимает чем Алиса отличается от Сири. Прикольно поболтали.
Для меня большой авторитет Монтессори, и, сегодня я с ней окончательно согласился — университет, да и учитель не нужен. Если человек, говорит: «Помоги мне это сделать самому» — то ему нужно помогать. А мы отвечаем: «Нет, тебе нужно вот это! А вот это, ты просто обязан знать! Так что учи».
Мы сами запрограммированы социумом. И сами, так же программируем тех кто помладше. Очень и очень редко сомневаясь в правильности всего этого.
Может я не прав. Да и ответил не в тему.
В общем, я к тому, что мы сами как старый софт, который давным давно уже надо обновить. Причем мы не плохой софт. Мы хороший, проверенный временем, испытанный в бою софт — но старый.
Прошу прощения за такой ответ — сильно устал.
Если хочется, чтобы от ООП остались не просто вызубренные термины про инкапсуляцию, полиморфизм и наследование, то надо вводить эти термины постепенно и с объяснением "зачем".
Сначала инкапсуляцию. Показать как классно уменьшается простыня кода, если описать АТД с парой методов и полей.
Потом наследование. Сделать несколько родственных АТД с пачкой похожих методов. Показать как упрощается написание каждого отдельного АТД при выделении родительского класса.
Потом полиморфизм. Все те же АТД вперемешку сложить в коллекцию и попробовать поработать с ними.
А картинки на доске и многословные объяснения плохо откладываются в памяти. Все доходит через руки. Главная проблема — на маленьких программах ООП малополезно. А большие программы писать значительно дольше, ориентироваться в них сложнее и нужно уметь кормить им много данных и автоматически тестировать. Плюс само задание к ним будет уже смахивать на полноценное ТЗ.
"Использование только функций" это все еще процедурное программирование. Настоящее функциональное может быть даже сложнее, чем ООП.
Я в своем городе миллионнике и университете федеральнике, уже не один раз говорил, что проблема в школе. У нас не будет годных студентов ИТ-шников, пока мы не начнем отчислять неумелых студентов и массово готовить школьников. Да, у нас есть доп образование при ВУЗе и даже очень приличное, но оно не массово. А нужно поднять грамотность по всему городу, чтобы появилась конкуренция и грамотные потенциальные абитуриенты. Я устал бороться за образование в лицее в 2013г…
Удачи во всем uchitel! Сделай суперучебник и пусть у тебя все получается!
Еще немного поразмыслив, пришел к выводу, что в программировании еще очень важно решать четыре типа головоломок:
- Найди 10 отличий
- Определи закономерность
- Замени одни фрагменты выражения на другие, получив эквивалентное выражение
- Соверши неизвестный заранее набор действий с известными блоками для получения известного результата.
Может быть еще какая-нибудь типичная головоломка есть. Пока что только это в голову пришло.
Третья головоломка это школьная алгебра 7-9 классов. Четвертая тренируется головоломками типа пентамино. А вот первые две — не припоминаю в программе. На образовательных сайтах для школьников определение закономерности превращается в задачу на смекалку, где нужно просто знать ответ. Есть ли книга с подобными задачками на примете?
А вот по первому пункту, тут, наверное, придется самому все придумывать. Можно сделать две программы, которые делают одно и то же, но по разному.
Возможно среди зарубежной литературы, что-то можно найти.
Необразованная молодёжь. Вавилонские младенцы