Авва
10.9K subscribers
528 photos
30 videos
11 files
1.18K links
Чат на @avvablog_chat, прямая связь @avorobey
Download Telegram
В Италии сделали новый выпуск статистики по смертям:

https://www.istat.it/it/archivio/240401

(о прошлом я писал с месяц назад), и на этот раз, как я надеялся, они дали данные по всем (почти) общинам страны, а не только тем, где смертность повысилась на 20% в сравнении с прошлыми годами - это изначально казалось очень странной стратегией. "Почти" потому что все равно только около 90% населения включены в эти данные, из-за того, что оставшиеся общины до сих пор не подключены к центральной системе отчетности по смертям ANPR. В Италии есть 7904 общин, из которых 6686 в этой системе, и по ним дали полные данные по ежедневной смертности с 1 января до 31 марта этого года. А за прошлые года есть по всем 7904 общинам.

Главный CSV-файл для анализа в этом архиве: https://www.istat.it/it/files//2020/03/Dataset-decessi-comunali-giornalieri-e-tracciato-record.zip. Есть еще отчет по-итальянски со всякими графиками, если кому интересно: https://www.istat.it/it/files//2020/05/Rapporto_Istat_ISS.pdf.

Напомню, что есть также сайты за прошлые годы, где можно посмотреть общую смертность за каждый месяц по всей Италии или отдельно по регионам/провинциям/общинам, они выглядят так:
http://demo.istat.it/bilmens2019gen/index.html http://demo.istat.it/bilmens2018gen/index.html итд. За 2020-й такого естественно нет, надо анализировать данные в CSV-файле.

Я не собираюсь долго анализировать, уже нет, мне кажется, особого смысла, но сделал общие суммы для сравнения. Вот кол-во смертей по всей стране в 2020 и прошлых годах, сначала по первым трем месяцам, потом отдельно по марту. Это, еще раз повторю, покрытие 90% населения страны, но выборка исключительно по признаку "находится или нет в централизованной системе отчетности", а не как раньше, по более высокой смертности. Суммы за 2020 и 2016 год не включают 29 февраля.

1 января - 31 марта:
2015: 163172
2016: 144117
2017: 164493
2018: 158138
2019: 159271
2020: 174037

(Update: я исправил эти цифры, они по ошибке раньше включали также данные за 1-15 апреля - за все годы - по тем общинам, где такие были. Поскольку таких общин только 57%, я решил их не включать)

1 матра - 31 марта:
2015 March: 51751
2016 March: 48619
2017 March: 48352
2018 March: 50821
2019 March: 50335
2020 March: 74644

Какие из этого можно сделать выводы?

1. За первые три месяца 2020 есть прирост примерно в 17 тысячи смертей относительно среднего за прошлые годы, и он с лихвой объясняется данными за март, так что с большой вероятностью это все коронавирус или связанные с ним смерти (с лихвой потому, что в январе-феврале в 2020 как раз очень низкая смертность в сравнении с прошлыми годами - возможно, очень легкая эпидемия гриппа).

2. В марте 2020 есть прирост смертей в полтора раза относительно прошлых лет, 24 тысячи дополнительных смертей. В апреле ожидаю примерно столько же. Это по всей стране, включая те провинции, где коронавируса вообще нет или очень мало, напомню - и это большая часть страны. В Ломбардии прирост намного намного больше, его можно отдельно вычислить.

3. Официальное число смертей от короны в Италии на 31 марта было примерно 12 тысяч. Если почти весь прирост в этих цифрах - смертность от коронавируса в марте (мне кажется вероятным, но можно не соглашаться), то это указывает на то, что смертность занижена примерно в два раза, т.е. где-то половина смертей не попадает в статистику.

4. За апрель в целом умерло примерно столько же людей от коронавируса, сколько за март по официальной статистике, если процент занижения будет примерно такой же, то можно ожидать еще примерно 23 тысячи прироста в апреле, когда эти цифры появятся. Пока есть только до 15 апреля и только у большей части общин, не у почти всех. Поэтому я за апрель не стал сравнивать.
https://www.youtube.com/watch?v=0ff3dAt41pU
В этом видео розыгрыш, который начинается на 1:14 и длится почти целую минуту - это такая мини-драма, ужасно захватывает и я не в шутку болел за одного из игроков (за защитницу, разумеется).
Другие тоже красивые, но в этом есть что-то особенное.
Роберт Ибатуллин, "Роза и червь"

Фантастика по-русски, и при этом интересно читать и не хочется плеваться. Это фантастика!

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

В 23 веке человечество пережило инопланетную бомбардировку и выжило, переселившись в основном на ближние планеты и большие астероиды. Теперь, двести лет спустя, звездолеты, которые послали эти снаряды, долетели до Солнечной системы и прячутся где-то за Юпитером, а земные колонии на разных планетах спорят и воюют между собой, не замечая этой опасности. "Роза и червь" - твердая научная фантастика, с отличным миротворчеством, хорошо продуманными и объясненными особенностями физики, жизни в космосе, генетики, социального устройства колоний, искусственного интеллекта и много еще чего. Книга просто искрит идеями и читать ее очень интересно. Напоминает Питера Уоттса, я бы также сравнил с космическими операми Питера Гамильтона. Есть и недостатки; мне не понравилось грубо, схематично набросанные главные персонажи, которых движет вперед какая-то совсем карикатурная истеричность. Несмотря на это, прочитал с удовольствием и рекомендую; по-моему, намного лучше другой фантастики по-русски, что пытался читать в последние лет 10. Оценка 4/5.

https://www.litres.ru/robert-uralovich-ibatullin/roza-i-cherv/
https://ic.pics.livejournal.com/avva/111931/170735/170735_original.jpg

Это снимок, сделанный с помощью электронного микроскопа. Горизонтальная линия - это фрагмент ДНК, два ее отрывка - два гена. Вертикальные веточки, которые растут от нее вниз и вверх - молекулы РНК. Вдоль ДНК шагают молекулы-полимеразы (мелкие точки, которые можно разглядеть на горизонтальной линии), и от каждой такой полимеразы отходит веточка РНК, и полимераза достраивает ее согласно информации, которую считывает с ДНК. Поэтому веточки удлиняются по мере того, как мы движемся слева направо. Я не понимал, что это происходит настолько "одновременно", вся эта куча веточек, растущих параллельно.
Забавным и интересным показался совет, прозвучавший в дискуссии "Полезные советы для повышения эффективности разработчика" на Hacker News. Перевожу:

"Я записываю себя во время программирования с помощью OBS Studio и притворяюсь, будто я крутой стример (хоть никто это не увидит). Это помогает потому что:

1. Помогает мне не отвлекаться. Есть конкретное задание для этого видео, именно его и выполняю.
2. Я учусь лучше формулировать то, чем занимаюсь, какие есть проблемы, решения итд.
3. Мотивирует. Я же не могу разочаровать свои "тысячи поклонников".
4. Потом могу посмотреть, где я зависал/ошибался и учиться на ошибках.
5. Это прикольно. Я могу шутить, ругаться как хочу (моим зрителям больше 18).
6. Я филиппинец, но записываю по-английски, это помогает практиковать язык."

С моей точки зрения 1 и 3 главное, интересно, насколько такое реально помогает. Я вряд ли буду, но реально интересно. Кто-нибудь пробовал?

Кстати, если у вас есть какие-то неожиданные помогающие вам способы улучшить свою эффективность программиста (любимый редактор? любимая музыка или белый шум? Pomodoro timer? Сложная система самовнушения?), поделитесь в комментариях в чате канала.
This media is not supported in your browser
VIEW IN TELEGRAM
Ну нельзя же так, ну имейте же совесть.
Buck Privates (1941)

Скачал фильм в основном для того, чтобы посмотреть что-то из фильмов Abbott & Costello и составить впечатление. Почти единственное, что я знаю из творчества этого дуэта, это гениальный скетч Who's On First.

Abbott & Costello играют двoих уличных торговцев, которые по ошибке записываются в армию, убегая от полицейского. Во время армейской тренировки они попадают в смешные ситуации. Наверное, половина фильма по времени сплошная пропаганда того, как хорошо быть солдатом в американской армии. Все это было бы скучновато, если бы не прекрасные песенные номера, которые исполняют знаменитые сестры Эндрюс. Их песни и хореография танцев спасают фильм и впечатляют больше, чем шутки и гэги. Не, шутки и гэги тоже некоторые хорошие, просто с песнями намного лучше выходит. В целом рекомендую, если не раздражает очень прямолинейная пропаганда практически в стиле соцреализма.

(Я почитал немного про Andrews Sisters в википедии, и узнал к своему удивлению, что они не умели читать ноты. Бэнд-лидер оркестра, с которым они работали, рассказывал, что он играл им песню и обозначал их голоса аккордами, а они пели в трехголосной гармонии, повторяя эти аккорды, и так выучивали свои партии. Любопытно, что когда сестры пели трехголосную гармонию, оркестр играл в унисон сам с собой, и наоборот, когда сестры пели в унисон, оркестр играл гармонию. Там же рассказывается, что не умел читать нотную запись знаменитый барабанщик Бадди Рич)

Хорошо бы найти качественную фильмографию для знакомства с главными комическими актерами времен классического Голливуда. Чарли Чаплин, Бастер Китон, Лорел и Харди, Три Балбеса (The Three Stooges), Эбботт и Костелло, братья Маркс, итд. итд.. Что-то из этого всего я видел, но мало, смотреть много фильмов с ними всеми я не буду, а вот список типа "один-два наилучших фильма по нашему субъективному выбору" для каждого из таких актеров/коллективов мне бы пригодился.

Интересно... наверное, для многих живших тогда, или знатоков кинематографа сегодня, само перечисление всех этих имен в одну строку уже какое-то кощунство, типа "как можно Чаплина ставить в один список с балбесами" или что-то в этом роде (не знаю, так кто-то реально думает или нет, просто полагаю возможным). А я настолько о всем этом мало знаю, что и не улавливаю, где тут именно кощунство. Я часто вспоминаю, как читал где-то (у Гаспарова? Лотмана?), что к концу 19 века в России в образованных кругах было твердое деление на тех, кто любил Пушкина и тех, кто любил Некрасова, и это были два враждующих лагеря, странно было представить, что кто-то восхищается и тем и этим. Но вот все умерли, прошло много лет, вечные огни этих культурных войн погасли (уступив, увы, место другим, вряд ли менее менее многочисленным), и ничего, можно и Пушкина и Некрасова читать, нормально. Может, и с голливудскими комиками так.
Кратко и точно сказано (из фейсбука):

"От вирусологов и инфекционистов требуют точный ответ: что делать и когда все это безобразие кончится. Они честно отвечают что пока что ничего не понятно и все станет ясно именно когда все закончится, но когда это будет никто не может предсказать.
А вот наглые дилетанты всегда готовы ответить. У них есть и «работающие модели» и «надежные методы лечения». Только модели ничего не предсказывают а лечение не помогает.
Это общий принцип: чем более квалифицированный человек, тем лучше он осознаёт масштаб неизвестного и невозможность серьезных предсказаний. Самый надежный способ осознать «насколько мало я и мы все знаем» это прочитать курс лекций для студентов по этой теме. Вот тогда ты будешь полностью понимать всю бесконечность неизведанного и ничтожный масштаб известного.
А вот люди которые нахватались вершков в паре книжек и постов «экспертов» абсолютно уверены в своей правоте: «ведь это все очевидно!»"
Jonathan Stroud, The Amulet of Samarkand

Я читал на английском, но есть русский перевод. Фентези. Альтернативная Англия наших дней, где у власти волшебники, причем все волшебство заключается в вызове демонов разных видов и разной силы и подчинения их своей воле. Повествование ведется попеременно от лица мальчика-вундеркинда 11 лет, ученика волшебника, и джинна Бартимеуса, которого он тайком вызывает и посылает украсть таинственный Амулет Самарканда...

Хорошо написано. Хорошая проза, отличные описания мест, людей и происшествий, ненавязчивый юмор в виде многочисленных сносок в монологах Бартимеуса, в которых он комментирует сам себя. Вместе с тем система магии не очень хорошо продумана, мотивация главного героя неубедительна, и развязка в конце романа как-то совсем подкачала. Напрашивается сравнение с "Гарри Поттером"; я бы сказал, что Страуд лучший стилист, чем Роулинг, но в его книге почти нет живых персонажей, и не оставляет при чтении пусть, слабое, но постоянное ощущение какой-то механичности, невсамделишности. Общее впечатление скорее положительное, но не настолько, чтобы продолжать дальше читать трилогию. Оценка 4/6.
20200512_113928.jpg
4.3 MB
Приходил настройщик (в маске!), открывал инструмент. Всегда очень интересно видеть, как это внутри (как делают сосиски).
Константин Крылов был очень умный и талантливый человек. Почти весь ум и талант он угробил в самую важную для него, да пожалуй единственно важную тему: "русских все обижают". В отличие от многих других соратников в этом лагере, он не впадал в истерики, не мнил себя пупом земли, не забрасывал дерьмом бывших товарищей. Только сидел и писал очень много, очень ярко, все на эту свою тему, плюс параллельно стебную литературу (под псевдонимом Михаил Харитонов), много виртуальных аккаунтов ипр. ипр. В отличие от многих других, я совершенно не проникся "Буратиной" и прочим литературным творчеством Харитонова и других псевдонимов Крылова.

Когда путинская власть начала кооптировать национализм в своих идеологических целях, Крылов не смог вписаться во властные структуры, вероятно из-за недостатка подлости. Я очень не любил Крылова, частично за идейный и многоликий антисемитизм, но больше за эту бескомпромиссную повернутость на главной теме его жизни - из-за нее 90% всего, что он писал, была агитка - часто риторически блестящая, убедительная, едкая, иногда даже справедливая, но все равно агитка. И все равно, несмотря на эту повернутость, он умел думать, слушать, спорить, как мало кто умеет. Я много лет читал его в ЖЖ, изредка спорил, изредка ругал. Ценил, несмотря на все его взгляды, за порядочность в сетевом общении (и, как пишут, в личном общении тоже), цепкий ум и умение выхватить важное. Жаль, что он умер так рано, и сочувствую семье. Земля пухом.
Гильберт Стрэнг более полувека преподает математику в МИТ, из них 40 лет - линейную алгебру. Автор одного из самых популярных учебников линейной алгебры по-английски.

И вот недавно он решил, что умножение матриц надо преподавать не так, как обычно, а по-другому. Написал об этом статью пару лет назад ("Multiplying and Factoring Matrices"), а в этом году еще и записал шесть видео-уроков с объяснениями этого нового пути и почему так лучше.

Статья: https://sci-hub.tw/https://doi.org/10.1080/00029890.2018.1408378
Ссылки в первом комментарии ниже.
Шесть его кратких видеолекций об этом: https://ocw.mit.edu/resources/res-18-010-a-2020-vision-of-linear-algebra-spring-2020/index.htm

Уроки я не смотрел пока, сразу скажу; статью пролистал.

Главная идея - это что процесс умножения матриц следует преподавать и представлять не как "строки умножить на столбцы", а как "столбцы умножить на строки".

Пусть есть две матрицы A[m x n], и B[n x p]. Тогда

"строки умножить на столбцы": в ячейку [i,j] результата попадает произведение i-й строки A и j-го столбца B.

"столбцы умножить на строки": результат является суммой n матриц вида "i-й столбец A - матрица mx1 - умножить на i-ю строку B - матрицу 1xp". Каждое такое произведение это матрица mxp ранга 1, и их сумма по всем i дает результат.

Стрэнг утверждает, что такое представление умножения матриц помогает студентам понять и усвоить все основные теоремы начального курса линейной алгебры, где матрицы разбиваются на множители:

- исключение переменных по методы Гаусса
- ортогонализация Грама-Шмидта
- спектральная теорема для симметричной матрицы
- спектральное разложение для n независимых собственных значений
- сингулярное разложение

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

https://ic.pics.livejournal.com/avva/111931/171414/171414_original.jpg

Итак, заполнить таблицу цифрами от 1 до 9 по следующим условиям:
- обычные правила судоку (в каждой строке, в каждом столбце и в каждом из 9 больших квадратов встречаются все цифры от 1 до 9 по одному разу)
- нельзя сделать ход шахматным королем и остаться на той же цифре (т.е. все 8 соседей)
- нельзя сделать ход шахматным конем и остаться на той же цифре
- не могут быть на двух соседних клетках (по горизонтали или вертикали) соседние цифры, т.е. отличающиеся на 1.

Задача решается чисто "по логике", без перебора, ответ единственный. Но тяжело. У меня заняло часа полтора.
Сегодня вечером, в 22:00 по Израилю (22:00 Москва, 20:00 Лондон, 15:00 Нью-Йорк), буду сидеть в Зуме по адресу https://zoom.us/j/88675915426, в течение часа или больше, по обстоятельствам. Если хотите меня о чем-то спросить или просто поговорить, заходите. Знакомство необязательно. Я предлагаю поговорить, помимо прочего, о том, как дети учатся математике и как им в этом помогать. Но и все другие темы тоже welcome, включая даже коронавирус.
Я не помню, писал ли об этом уже, но без иронии полагаю Бейсик хорошим первым языком программирования. Причем не любой Бейсик, а такой олдскульный, с номерами строк (не QBasic). Например, GW-BASIC, на котором я когда-то сам учился программировать (если не считать язык Лого с "черепашьей графикой", про который было в какой-то книге - предлагаю не считать). Это было на компьютерах Yamaha, которые в большом количестве установили в классах и институтах СССР во второй половине 80-х, и язык формально говоря назывался MSX-BASIC, но почти не отличался от более известного GW-BASIC.

Почему я так считаю? Ну скорее всего потому что сам на нем учился, и поэтому он окрашен для меня в теплый ламповый свет ностальгии. Нет, на самом деле у меня есть Аргумент, но вы не обязаны с ним соглашаться, можете считать, что все дело в теплом ламповом. Аргумент такой. Один из главных навыков, которым надо научиться, когда учишься программировать с нуля - возможно, самый главный навык - это следить за исполнением программы в уме, понимать, как исполнение проходит по потоку команд, и что при этом находится в разных переменных (включая сюда понимание того, что такое переменная вообще). Те, кому когда-то это далось легко (или тяжело, но они забыли), часто не понимают, как это - не втыкать в эту идею потока исполнения, плывущего по тексту программы.
Можно начать программировать и как-то продвигаться, так и не поняв это, но далеко не дойдешь.

Бейсик с номерами строк, без блоков, ограниченных скобочками, без подпрограмм с названиями, словно создан для того, чтобы направить внимание ученика в эту сторону (а почему "словно создан", собственно? Наверное, специально именно так и создан для этого, его же придумали, как язык для обучения). Чтобы сделать что-то нетривиальное, ученик обязян отслеживать глазами ход работы программы, а номера строк дают ему конкретные "зацепки", облегчающие это дело поначалу. Есть и еще преимущества. Сознательно бедный язык, никакой тебе богатой стандартной библиотеке, никаких "импортов" как в Питоне, но вместе с тем включает все нужное для простой работы с числами, строками и графикой (чтобы дети могли рисовать и игры придумывать). Но главное преимущество - отказ от структурного подхода, номера строк. Если бы не это, я бы предпочел для первоначального обучения использовать Питон или Джаваскрипт. А так - можно начать с Бейсика, и через какое-то время перейти к более серьезным языкам.

(Да, я знаю, есть Scratch, и есть игры типа CodeMonkey для совсем маленьких, и я в общем-то не против, я только за, но это как язык Лого с черепашками в моем детстве. Не совсем то же самое. Не вполне то, что надо. Так мне кажется. Если вам идеально подходит, я только рад)

Не убедил вас? Наверное, не убедил, но если вдруг заинтересовались, то современная среда GW-BASIC, почти полностью совместимая с оригиналом, называется PC-BASIC; или можно взять настоящий GW-BASIC (легко находится, где скачать) и запустить внутри DOSBOX, тоже вполне работает.

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

Кто помнит, какие простые программы/игры можно с ребенком сварганить на Бейсике? Мы только-только начали. Игру "отгадай число от 1 до 100" тоже уже написали. Завтра буду циклы объяснять, может, на примере проверки, простое число или нет. А дальше я уж и забыл, чего надо. Может, простая графика и прямая дорога оттуда к рисованию движущихся точек/линий на экране. А может, остаться еще в тексте и разбираться дальше с числами/строками, если найду интересные идеи для программ.

https://ic.pics.livejournal.com/avva/111931/172896/172896_original.png
Картинка из китайских соцсетей. Спорят две утки:
"Духовка это прекрасно"!
"На гриле лучше!"
Недавно вспомнил в очередной раз о прекрасной игрушке Super Hexagon (писал тут о ней лет пять или шесть назад). И опять стал в нее постоянно играть, что-то типа утренней разминки обычно.


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


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

https://www.youtube.com/watch?v=sKiKkAJHz08
Как-то все очень хреново в Питере, похоже.

"В "нековидной" больнице Петербурга 44 пациента и 34 сотрудника заболели коронавирусом. Врачи тайком просят у волонтеров средства защиты"
https://www.currenttime.tv/a/petersburg-hospital-covid19/30620994.html

Комментарий от врача, который там в прошлом работал:

"Заведующая первой кардиологии - на ИВЛ, на ЭКМО, состояние крайне тяжелое. Заведующая гастроэнтерологией (чудесная и любимая Ф.Ц., которая меня лечила от обострения язвы) - еле выкарабкалась после пневмонии, приходит в себя дома. Зав. 2 травмы и его зам. - тоже самое. Врач-психиатр - на вентиляции легких. Вторая нейрохирургия - практически все врачи заболели. Одна рентген-лаборантка скончалась. И еще, и еще, и еще... до 60 процентов врачей и медсестер вышли из строя.
А начальство? Запрещает об этом рассказывать, запрещает принимать от волонтеров защитную амуницию, запрещает, запрещает и запрещает... И что самое ужасное - все, кроме одного доктора (араба!!) - молчат. Их убивают, а они молчат. Причем я же знаю, это не совсем трусость-то. Это ложно понимаемая идея профессиональной замкнутости, кастовой солидарности. Но именно что - ложно понимаемая.
Формально больница "чистая", то есть короны там нет. Фактически это означает, что медики работают без защиты, больные не проходят тестирование, температура и кашель - "а, подумаешь, ОРВИ". В отчетах все прекрасно. Больница вслед за многими другими превращена в огромную биологическую бомбу."

https://www.facebook.com/mfremderman/posts/2920608531348575
Интересная длинная запись про "Лолиту". Не слушал лекцию Быкова, не знаю, насколько точно о ней сказано, но о "Лолите" и ненадежности Гумберта как рассказчика сказано хорошо, по-моему.

https://niibeth.livejournal.com/153118.html

Начало:

Про что Гумберт?

Я решила послушать лекцию Дмитрия Быкова "Про что "Лолита", но чтобы составить свое мнение о ней, для начала перечитала саму "Лолиту". В юности мне ее горячо рекомендовали как книгу необыкновенно красивую. Потом сюжет и стиль смешался у меня в воспоминаниях с экранизацией Кубрика. В общем, впечатления остались смазанные, примерно такие: красиво, красиво, красиво - в смысле, дрочил в носок!? - опять красиво. А о том, что хотел сказать автор, я тогда решила не задумываться, все-таки не школа.

Для начала о сегодняшнем впечатлении. Роман, конечно, гениальный. Это замечательный взгляд в душу мудака. Гумберт - мудак, и бесить начинает задолго до встречи с Лолитой. Вы помните, что у него до Шарлотты была жена Валерия, на которой он женился за ее девчачью внешность, и которую бил и запугивал? Помните, что он мечтал избить или убить ее, узнав об измене, но ему помешало присутствие любовника? А потом, сидя в тюрьме, злорадствовал, вспоминая, что она уже умерла, и жалел, что в тюремную библиотеку не попадет научный журнал, где описан унизительный медицинский опыт, в котором она участвовала, и где могут быть ее фотографии?

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

По дороге в город, где живет Лолита, он мечтает о том, как совратит 12-летнюю дочь хозяев (не Лолиту, это другая семья). А когда узнает, что дом сгорел и ему придется пожить в другом месте, приходит в с трудом сдерживаемую ярость. Какое там сочувствие к хозяевам, подумаешь, дом-то небось застрахован, а вот ему не удастся подрочить на ребенка, вот это удар судьбы!

продолжение в https://niibeth.livejournal.com/153118.html
Когда обучаешь ребенка программированию с нуля, это, наверное, хороший способ узнать, какие важные принципы или правила кажутся само собой разумеющимися, но на самом деле их надо перенять и впитать. Я писал уже в прошлый раз о том, что очень важно на мой взгляд работать над прослеживанием работы программы у себя в голове. Следующий урок с моей дочкой заставил меня задуматься о том, как мы вообще представляем себе инструкции, которые даем компьютеру. Язык программирования это *язык*, но в отличие от человеческих языков он требует от нас сознательно ограничить себя в том, что мы пытаемся сказать.

Я начал урок с нескольких заданий растущей сложности. Ребенок уже знает, что такое PRINT "something", PRINT X, INPUT X, IF/THEN/ELSE, GOTO, и выражения типа X=X+1, хотя я не уверен пока что, что твердо понимает, что такое переменная в отличие от просто числа.

- Итак, начинаем с программы, которая просто печатает имя JULIA.
- Это легко: 10 PRINT "JULIA".
- Теперь пусть программа распечатает это пять раз подряд.
- Тоже легко: 10 PRINT "JULIA JULIA JULIA JULIA JULIA JULIA".
- Нет, пусть каждое имя будет отдельно на своей строке.
- Хорошо, тогда 10 PRINT "JULIA", 20 PRINT "JULIA" итд.

- Теперь следующее задание. Пусть программа спросит у меня число, и если например это 4, то она четыре раза напечатает JULIA.
- Хорошо, начинаем с 10 INPUT X, это мы умеем. А теперь...

И тут ребенок серьезно завис, причем не так, как я ожидал. Мы не учили еще циклы, но она уже знает, как что-то делать снова и снова и остановиться по условию (IF ... THEN END, а потом GOTO назад на нужную строку). Я думал, что она пойдет в эту сторону, но будет сложно переоткрыть идею переменной-счетчика. Оказалось - нет, она пыталась найти способ "сказать" компьютеру сделать именно то, что надо, за один раз. Например, может PRINT X "JULIA"? Нет, так это не работает. А если PRINT "JULIA" * X? Нет, это же умножение, а "JULIA" это не число (да, я знаю про Питон). Папа, а как будет "раз" по-английски, чтобы написать "X раз"?

То есть сложной является сама идея того, что язык программирования - "интерфейс" разговора с компьютером - твердо ограничен некоторыми рамками, и надо в них укладываться. Да, мы не учили конечно еще весь язык, только малую часть, но у нее не было интуитивного ощущения того, что есть эта граница, мы просто до нее не добрались еще. Я несколько раз старался объяснить, что надо решить это задание, пользуясь только тем, что мы уже знаем, и составляя это вместе, но ей, кажется, было сложно понять, как это вообще. Сказали "распечатай X раз", надо найти способ сказать компьютеру это, чтобы он сделал. Идея "сознательно разбить задание на более элементарные шаги, про которые мы уже знаем, что компьютер умеет их выполнять", оказывается сложной и неинтуитивной.

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

[окончание в следующей записи]
- Давай сделаем что-то другое. Начнем с программы, которая просто печатает 1 2 3 4 5, каждое число отдельно.
- Это легко. 10 PRINT 1, 20 PRINT 2 итд.
- Хорошо, теперь, как сделать, чтобы программа печатала 1 2 3 4 5 6 итд. и не останавливалась, до тысячи и дальше?


Тут пришлось подумать. Я напомнил "как мы делали, чтобы программа делала что-то снова и снова, как в игре про 4 2 1?". Да, точно, GOTO. Первая попытка: 10 PRINT 1, 20 GOTO 10. Очевидно неверно. Что нужно делать, чтобы число все время менялось? Да, точно. Следующая попытка: 10 X=1, 20 PRINT X, 30 GOTO 20. Опять не то, да, забыла увеличить число. Следующая попытка:
10 X=1, 20 PRINT X, 30 PRINT X=X+1, 40 GOTO 20. Что-то не так, что? Нет четкого разделения PRINT и присваивания в уме, оба что-то делают с X. Подумай, что надо изменить. Следующая попытка наконец верна: 10 X=1, 20 PRINT X, 30 X=X+1, 40 GOTO 20. Наслаждаемся бегущим рядом чисел.

(все это занимает вместе считанные минуты, просто мне показалось интересным записать подробно эти попытки, и первый опыт по сути отладки программы).



- Хорошо, а теперь можешь сделать так, чтобы она печатала не до бесконечности, а когда дойдет например до 20, остановилась?

Подумала, вспомнила про IF ... THEN END, перечитала прошлую программу, где это использовала, и вставила 35 IF X=20 THEN END. Работает!

- А можно теперь сделать так, чтобы программа сначала спросила у меня число, а если я сказал например 15, она потом остановилась, когда дойдет до 15?

Подумала, вставила 5 INPUT Y, и заменила условие IF X=20 на if X=Y. Работает!

Но не совсем. Если я ввожу 20, она печатает до 19 и останавливается. Что не так? Почитала еще раз программу, подумала, и заменила условие на IF X=Y+1 (лучше было передвинуть условие раньше, перед увеличением, но это уже мелочи).

ОК, теперь у нас есть программа, она работает. Запустили несколько раз, проверили, все хорошо.

- Хорошо, теперь я тебя попрошу сделать небольшое изменение, ты только не пугайся, если это немного взорвет мозг. Попробуй вместо 20 PRINT X написать 20 PRINT "JULIA". Что тогда будет?

Стала изменять это в программе, еще до запуска появилось подозрение. Запустила. Шок, изумление на лице, "Папа, ты взорвал мне мозг! Это же делает то, что ты от меня хотел. Действительно, это же так просто!"