Не верь, не бойся, не проси - [entries|archive|friends|userinfo]
phantom

[ website | My Website ]
[ userinfo | ljr userinfo ]
[ archive | journal archive ]

[Dec. 30th, 2020|09:43 pm]
Previous Entry Add to Memories Tell A Friend Next Entry
LinkLeave a comment

Comments:
[User Picture]
From:[info]_______
Date:January 6th, 2021 - 08:29 pm
(Link)
>т) Если ты переводишь книгу, то нужно быть скучным, как традиционно переводят
>на русский книги по программированию. То есть тупо "условный тип данных" и
>сноску из лучших побуждений: "в миру это обычно называется так". Кстати, автор
>имеет в виду не совсем "условный тип данных", а "условные данные", но это ещё
>корявей.

Об том и речь, что «условный» выглядит неудачно.

>р) Нахрена, вообще, книги переводить? Дети ли, взрослые, всем учить
>английский, койне современного мира. Кто не знает, учить на предмете этих же
>вот книг, а по программированию - это самые простые для изучения языка книги.
>Кто не выучит, останется провинциалом, а в программировании, вообще, работать
>не сможет.

Прекрасно, ага. Значит ли это, что вся учёба должна быть за пределами школы и
универа? Потому что в школе я точно не могу от них требовать читать книги на
английском. В моём личном случае на первом курсе нам препод советовал книги на
английском, но говорил, что у него нет права строить программу курса на
английских книжках, поэтому основной книгой была выбрана какая-то дебильная
переведённая из серии head first. Я им конечно постоянно говорю, что без
английского вам дальше делать нечего, и читать надо именно самим, а не целиком
скармливать яндекс/гугл переводчику целые страницы. Но это так себе работает,
по-моему.

>Современная же тенденция отойти от схемы и прийти к питону, начиная с МИТ, и
>кончая вот этой книгой с "пиретом", не радует. Насаждает бардак уже в головах
>учащихся.

Ну надо сказать, что Шрирам сам ругает Python и не считает его пригодным для
обучения программированию, насколько я знаю. И от Scheme он сам не отходит,
есть версии курсов Bootstrap для школьников как с Pyret, так и с WeScheme[1].

>т) Вообще, тот тип называется обычно ADT = algebraic data type =
>алгебраический тип данных. Можно начать со статьи:
>https://en.wikipedia.org/wiki/Algebraic_data_type и там по ссылкам. Но кто как
>называет его и частные случаи... Также переводить ли "условный тип данных" или
>"условные данные" зависит от взглядов автора и переводчика на типизацию и
>вывод типов. Есть нюансы, и хорошо бы в них разбираться при переводе: часто
>путают динамическую типизацию и нетипизированность (я уж молчу про "слабую"
>типизацию).

Про ADT я в курсе конечно, да.

>р) Область молодая, терминология неустоявшаяся. Да если даже если и устоялась,
>что с того. Найди свои названия, и не бойся быть непонятым. Особенно если не с
>кем говорить на эту тему. Если цель не перевести книгу для кого-то, а самому
>разобраться, то своя терминология будет "наиболее правильной".

Я у самого Шрирама спрашивал например про название одной из глав[2],
выяснилось, например, что «Sub-Domains» у него это ограничение областей
функций. Типа есть `max :: List -> A`, так вот у неё область ограничена в
том смысле, что на пустом списке функция смысла не имеет, поэтому не
определена.

Надо мб и про conditional спросить у него же, чтобы подробнее расписал.

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

[1] https://bootstrapworld.org/materials/spring2021/en-us/courses/algebra-wescheme/
[2] https://papl.cs.brown.edu/2016/processing-lists.html#%28part._struct-prob-sub-dom%29
From:[info]phantom
Date:January 6th, 2021 - 09:45 pm
(Link)
Так спроси, раз он отвечает. Интернет ведь не только для качалова, а и средство коммуникации. Даже с оригинальными авторами, кто ещё жив.

Какова цель школьного образования? Привить человеку "ядро культуры". Можно ли усвоить современное "ядро" без английского? Нет. Значит, нужно научить английскому в дошкольном и начальном школьном образовании, чтобы к середине школы, и уж точно к университету, он читал техлитературу без словаря. Я, вот, осилил к универу, и это было непросто, помнится. Как сейчас, не знаю, надеюсь, эта идея пробивается в РОНО и получает поддержку, или кто там рулит сейчас. Как учить эффективно языку - другой вопрос. Я бы использовал естественную лёгкость освоения второго языка "как родного" в самом юном возрасте (дошкольном).

Программирование нужно осваивать, упражняясь. С упором на практику, язык учебника не так важен, учебник вторичен. Да и язык программирования не так важен.

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

Сам я начинал с бейсика, традиция, освящённая веками. Это ещё хуже питона засоряет мозг. Долгие годы чистил сознание, выработка стройной системы была затруднена этим самым бейсиком.

И это общее мнение, что с бейсика начинать - программистов будущих портить. Значит, важен первый язык. Я бы начал с самых чистых языков. И если это физматшкола, то лучше всего - функциональный ЯП. И чем чище, тем лучше. Даже схема недостаточно чиста, там императивные конструкции допускаются. Хаскелл, может быть? В некоторых университетах его как первый язык учат:
https://wiki.haskell.org/Haskell_in_education#Haskell_as_a_first_language

Тут я также утверждаю, что освоить "чистые" варианты, "грязные" сам уже студенто освоит... В общем, я против "практичного" подхода плодить "быдлокодеров" со школьной скамьи.
[User Picture]
From:[info]_______
Date:January 6th, 2021 - 10:18 pm
(Link)
>Какова цель школьного образования?

Школа, армия, тюрьма. Ну ты понял. И я в своё время так и воспринимал её, а
всем интересным занимался сам в свободное время за пределами школы.

>Можно ли усвоить современное "ядро" без английского? Нет. Значит, нужно
>научить английскому в дошкольном и начальном школьном образовании, чтобы к
>середине школы, и уж точно к университету, он читал техлитературу без словаря.
>Я, вот, осилил к универу, и это было непросто, помнится.

Да всё понятно, я ж только за. У них вот, по их же словам, английский со 2
класса, а что толку-то, если они даже кейворды типа else читают неправильно.
Есть подозрение, что это потому, что у них вместе с этим ещё пытаются немецкий
преподавать (поэтому каша в голове), но нахуя, спрашивается, если русский
толком ещё не доучили. И вот то же else они читают так, как будто это немецкое
слово.

>Как сейчас, не знаю, надеюсь, эта идея пробивается в РОНО и получает
>поддержку, или кто там рулит сейчас.

Ага, конечно. Сейчас модно soft skills, вся вот эта убогая болтология ни о чём,
рассчитанная на дебилов, видимо.

Единственное, что радует, --- это свобода. Могу в поурочном планировании писать
одно (по утверждённым учебникам), а в реальности заниматься совсем другим.

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

Да, после Pyret будет точно Python, потому что неизбежно, потому что удобный
язык для быстрого скриптования каких-то вещей, для ЕГЭ им пригодится (можешь
глянуть, как оно будет в 2021 году, всё на компьютере). Для сравнения ещё можно
показать например Haskell, который будет многим похож кстати на Pyret, ADT
например или pattern matching они должны опознать. Ну и основное --- не
инструкции, а выражения, которые редуцируются. Это типа в первой же главе
книжки описывается подробно. И типа вот, есть два подхода: Python и Haskell.
Возможно, ещё Prolog какой-нибудь, но его я сам не трогал, и не знаю, стоит ли.

Параллельно с этим ещё дал им задание в прошлой четверти поставить Линукс
какой-нибудь на виртуалку, и там научиться базовым вещам в терминале. Мотивация
была озвучена такая: оно (а) нужно более-менее всем людям, чья работа связана с
IT сейчас; и (б) посмотрите на учебный план топовых факультетов типа ФКН ВШЭ
или ФМКН СПбГУ и заметьте, что в 1 или максимум 2 семестре есть предмет,
посвящённый Линуксу, и лучше эти вещи выучить заранее, т. к. ничего сложно в
них нет. Ну и предполагается, что они должны также заметить, что многие вещи
проще намного делать в терминале. Всяческая обработка текста например (отсюда
вытекает важность представления информации в plain text везде, где это можно).

>Я бы начал с самых чистых языков. И если это физматшкола, то лучше всего -
>функциональный ЯП. И чем чище, тем лучше. Даже схема недостаточно чиста, там
>императивные конструкции допускаются. Хаскелл, может быть? В некоторых
>университетах его как первый язык учат:

А ты посмотри на Pyret-то, там чисто функциональщина же, выражения и значения
как результат их вычисления. Функции для повторяющихся выражений, тесты(!) для
функций пишутся до написания тела функции, выглядит так:

fun f(a, b):
  a + b
where:
  f(1, 2) is 3
  f(-1, 1) is 0
  f(0.1, 0.2) is 0.3
end


Есть сопоставление с образцом:

fun my-len(l):
  cases (List) l:
    | empty      => 0
    | link(f, r) => 1 + my-len(r)
  end
end


За две четверти дошли до главы про списки https://papl.cs.brown.edu/2019/processing-lists.html
From:[info]phantom
Date:January 6th, 2021 - 11:37 pm
(Link)
Не, вообще, всё замечательно, и главный компонент - это ты. В школьном возрасте учитель-энтузиаст - это счастье ученика.

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

Насчёт soft skills, это, боюсь, не болтовня, а проза жизни. Как питон. Если идёт чел наниматься быдлокодером, его, в первую очередь, оценят как "коммуникатора", "тим-плеера" и пр., потом спросят за питон и "веб". А уж знание ФП только минусом будет. Мне кажется, это два противоположных направления - учить практиков-прагматиков-питонистов, и учить лисперов-адептов-брахманов.
From:[info]phantom
Date:January 6th, 2021 - 11:44 pm
(Link)
Я пролистнул книгу, неплохая с виду. И Кришнамурти и схемерам можно доверять в плане ФП и квалифицированности.

Я даже, помню, как-то пробовал, кажется, онлайн курс по ЯП брать у него. Кажется, по его книге или по EoPL. Только быстро забил, домашние задания не понравились, и я понял, как мне самому двигаться к совершенству, альтернативным способом.

Да, ещё для детей, мотивации и развлечения, я бы посоветовал geogebra-у попробовать, для обучения геометрии по-новому. Впрочем, ты, кажется, под влиянием, Вербицкого и ко., а он геометрию школьную за предмет не держит, и учебник Погорелова презирает, как оказывается.
[User Picture]
From:[info]_______
Date:January 6th, 2021 - 11:58 pm
(Link)
Geogebra можно, да, но я математику у них не веду. И их училка про
существование Геогебры знает вроде. Я со своей стороны хочу им подсунуть
например такое --- https://math.ru/lib/files/pdf/rasomn.pdf --- этого точно у
них на математике нет и не будет, а знать надо, на первом курсе легче будет.

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

Я не то чтобы под влиянем, я классе в 7 помню как не понимал, зачем заучивать
наизусть какую-то «теорему», какое-то и без того очевидное предложение --- это
был один из первых уроков геометрии, заучить формулировку теоремы было
домашкой. С тех пор у меня с планиметрией как-то не очень. Хотя в 11 классе
конечно мы решали много задач, и по стереометрии тоже, для ЕГЭ, и я их успешно
на экзамене решил, но осадок остался.

А тут же --- про функции/множества --- всякие шокирующие факты типа того, что в
квадрате столько же точек, сколько и в отрезке. Мне кажется, такое больше
должно внимания привлечь.
From:[info]phantom
Date:January 7th, 2021 - 02:25 am
(Link)
Да уж, ЕГЭ и Болонская система - это дегуманизация, механизация образования, не поддерживаю.

Теоремы не заучивать надо, а доказывать. Обычно это доступно только в университете, к сожалению (не в смысле, что не хватит ума, а в смысле "нематематичности" школы, ориентации на заучивание).

Должно привлечь, по-любому. Но я бы посоветовал "школу Опойцева", по-моему, это то, что надо. Его книга "Интуиция и математика" (под псеводнимом Босс) на меня произвела неизгладимое впечатление. По школьной программе его не продвинулся, но кажется, это то, что доктор прописал.