Продуктивный диалог строится на основе тезисов. Если речь идёт о диалоге между автором и читателем, то тезисы должны приводиться в статье автора. В данном случае никаких особенных тезисов не приводится, поэтому сложно ожидать от читателя конструктивной дискуссии.
Можно, конечно, начать переписку в комментариях, но это в принципе неправильно.
Если интересует моя «аксиома», то это, конечно, не аксиома, а теорема. Чтобы её доказать, мне надо написать целую простыню текста.
Но если выразиться предельно кратко, то основной механизм борьбы со сложностью называется «абстракция». Если язык позволяет создавать высокоуровневые абстракции, он масштабируем. Причём возможности абстракции (инкапсуляции сложности) должны быть предельно гибки, потому что автор языка программирования не знает моих нужд, не знает моей предметной области.
Например, если я математик, то у меня должна быть возможность написать выражение «A*c», где A — квадратная матрица, а c — вектор-столбец, потому что к этому подвигают гигантские объёмы существующей математической литературы и поколения математиков, работавших над формализмом.
Если я пишу алгоритм сортировки, то у меня должна быть возможность написать его обобщённую версию для любого произвольного типа T, для которого определены операции сравнения и присваивания.
Если я пишу GUI, то знаю, что мои алгоритмы перерисовки объектов и прочего управления окнами будут работать с виджетами сторонних разработчиков, причём частично функционал и внешний вид виджетов будут пересекаться, что неизбежно приводит к идеям вроде наследования и виртуальных функций.
Наконец, если моя программа работает на реальном компьютере, меня могут неожиданно озаботить представления об эффективности кода, о прямой работе с оперативной памятью, доступе к нестандартному оборудованию.
Таким образом, любой язык, который отсекает какую-либо теоретически возможную абстракцию, лишает меня какого-либо инструмента. А автор языка никогда не знает, какой инструмент мне реально понадобится. Потому что язык программирования — это язык моделирования предметной области, и чем естественнее на языке программирования я могу выразить понятия моей области, тем лучше.
Вынужден заметить, что предлагаемая статья никак не способствует познанию этого наследия. Вот и рассказали бы подробнее, а просто высказать мнение каждый умеет.
Ну потому что статья пафосная, но во многом не по делу. Как будто бы имеет значение, кто ещё кончал его вуз в разные годы, или кого-то трогают тенденциозно-бредовые соображения автора про «диктатуру воинствующих дилетантов».
А если по делу — я глубоко уважаю профессора Вирта, учился в том числе и по его книжкам, и ценю его достижения.
Но он, на мой предвзятый взгляд, относится к тем «кирпичам» здания компьютерной науки, которые не окажутся на фасаде. Он многое сделал для развития идей, практики и содержания программирования.
Однако его основное детище — это попытка создать минимальный простой язык. Модула проще Паскаля, а Оберон проще Модулы. Однако жизнь показала, что идея эта нежизнеспособна, потому что сложные понятия требуют сложного языка. И даже те языки, которые начинались как «простые» (вроде тех же C# и Java), сейчас по сложности стремительно догоняют C++.
А ниша Паскаля стремительно уходит к языкам вроде Python или Ruby. Так что пройдёт ещё немного времени, и существенный вклад Вирта, к сожалению, окажется скрытым под новыми культурными слоями. Даже я, начинавший программирование с Бейсика, как-то мало соприкасался с его наследием.
Выше вы приводите несколько весьма разумных замечаний, но здесь просто троллите уже второй раз, говоря о том, что «русский текст должен быть написан кириллическими буквами».
Любой текст предъявляет те или иные требования к читателю. Фраза «дифференциальное уравнение в частных производных» написана кириллическими буквами, но чтобы понять её суть, нужно, как минимум, обладать незаконченным высшим образованием. Примерно то же можно сказать о словах вроде «маркетинг», «номинализм» или «эсхатология».
Соответственно, думать надо не только об алфавите, но и о лексике. Если я посмел употребить сочетание «дифференциальное уравнение в частных производных», то сразу же отсёк огромное количество потенциальных читателей, которые, быть может, сумели бы прочесть написанные буквы, но всё равно не поняли бы смысла (и стало быть, их умение читать здесь не помогает).
Я с огромным трудом могу себе представить читателя компьютерно-технического текста на русском языке, который не сумеет прочесть вставленное слово «JavaScript». Наверно, такие уникумы действительно существуют. Но я как автор текста в любом случае самостоятельно решаю, на какую аудиторию рассчитано моё повествование. Моё решение в любом случае дискриминационно, потому что любое употребление латиницы, иероглифики, специальной терминологии, профессионального жаргона и т.п. неизбежно кого-то отсекает.
Почему вы так выделяете латиницу из всего этого разнообразия — неясно. Вы ведь обосновываете свою точку зрения наличием читателей, которые латиницу не прочтут. Если проблема лишь в этом, ну что ж, мне их жаль, я не для них пишу. И ничего в этом обидного нет: я не пишу технические тексты ни для медсестёр, ни для слесарей, ни для музыкантов.
Ну хорошо, вот вы упоминаете GlobalMapper. Это претензия к энтузиасту или к компании, которая не считает для себя интересным делать русский интерфейс?.. Я не верю, что кто-то в здравом уме может отдать на откуп неизвестному энтузиасту перевод на язык, который считает для себя важным. Для них русский, очевидно, неважен. Значит, они могут либо вообще не обращать внимания на русский язык, либо запретить любым энтузиастам копаться в программе.
Господа, ваш «вывод» можно было предугадать с самого начала, чего ещё ожидать от профессиональных переводчиков? :)
А по сути тот же вывод можно было сформулировать проще: лучше быть богатым и здоровым, чем бедным и больным. Я не знаю никого, кто бы в здравом уме предположил, что случайные люди из интернета переведут текст качественнее, чем высококлассные профессионалы. Вся история с краудсорсингом — это история о том, что в теории можно получить неплохой перевод очень дёшево или бесплатно.
У меня на компьютере довольно много копеечного или бесплатного софта с 12-20 заявленными языками интерфейса. «Обратиться к профессионалам» для их авторов просто не вариант. А те, кто рассматривает свой продукт как серьёзный бизнес, и так обращается к переводчикам.
Надо сказать, впрочем, что при таком подходе представители не очень крупных народов/рынков (вроде грузин или эстонцев) вообще никогда бы не увидели софта на родном языке.
Тривиально: 7 лет в Финляндии, затем 4 года в Японии, а язык изучать всё некогда :)
Ну финский немного подучил, жалко терять навыки, а японский вот между делом пытаюсь шлифовать помаленьку.
На самом деле эта деятельность затягивает, начинаешь получать удовольствие от процесса и от новых знаний/умений. Кроме того, это реально интересные языки, да и после английского изучать такое — это как Хаскелл после Паскаля.
Перевод иногда необходим, когда толковый словарь не помогает. Например, если открыть толковый словарь и прочесть, что такое sparrow или elm, понимания не прибавится. Ну да, поймёшь, что первое птица, а второе дерево, но не более того.
Вообще всё сложно. Я сейчас более-менее активно работаю с тремя иностранными языками, все на разном уровне (английский практически свободно, финский на среднем уровне, но читаю куда лучше, чем говорю, японский на самом базовом).
И в каждом случае нужен совершенно отдельный подход, потому что стоят разные задачи. Чем больше изучаю, тем меньше понимаю, что работает, а что не работает. Да и начальный этап у меня каждый раз был построен по-разному.
И ещё: несколько учителей традиционной школы независимо друг от друга сказали мне одну и ту же вещь (и я склонен с ней согласиться). Попугайское повторение эффективно, хоть в Европе эта идея сейчас крайне непопулярна.
То есть тупо вызубрить короткий текст и повторить наизусть несколько раз — полезно.
Потому что всё равно мы говорим выученными языковыми паттернами, сами мы практически ничего не выдумываем.
И вот такое банальное записывание паттернов в контексте в итоге «выстреливает».
Согласен, вне контекста фраза «зубрить карточки» кажется странной. Мой способ вовсе не «пассивен», я работаю следующим образом.
Читаю иностранную книгу (ну или смотрю фильм). Попутно создаю новые карточки. При этом не пытаюсь забивать туда все переводы слова, стараюсь ограничиваться тем переводом, который актуален в конкретном контексте (ну если перевода всего два-три, беру все).
Конечно, если знания языка позволяют, пытаюсь брать не перевод на русский, а текст из толкового словаря на языке оригинала. Кстати, для английского языка в Оксфордском словаре специально выделено подмножество из примерно трёх тысяч слов для объяснений. Освоив «оксфордский минимум», вы гарантированно прочтёте любую статью из Оксфордского толкового словаря.
Далее, желательно начать повторять карточки пока воспоминания о прочитанном/услышанном ещё свежи. Тогда глядя на карточку, я не просто вспоминаю слово или читаю перевод, я пытаюсь вспомнить тот контекст, в котором слово встретилось. Ну и по ассоциации, конечно, запоминается лучше.
Банальная зубрёжка в стиле «перевод -> оригинал на карте» тоже небесполезна, если речь идёт о базовом-пребазовом наборе слов (но это тоже немало, 1-2 тысячи слов так можно освоить: названия животных, механизмов, числа, окружающий мир).
Кстати, чем ещё хороши книги (особенно толстые): в них неизбежно повторяются одни и те же слова. Либо автор их любит, либо просто возникают описания одних и тех же героев или лиц. Ну, скажем, Лестрейд в «Шерлоке Холмсе» постоянно фигурирует как «ferret-like» или что-то в этом роде, так что «ferret» волей-неволей запомнится уже на третьем рассказе.
По поводу «плодотворного способа читать» — на самом деле это больное место. Я много раз слышал, что читать со словарём «неплодотворно», но мне кажется, что в целом это всё равно самый плодотворный способ, если аккуратно повышать сложность читаемых текстов, чтобы не приходилось нырять в словарь на каждой фразе по пять раз.
Можно пользоваться параллельными текстами («метод Франка»), но в общем случае это как кино с субтитрами: когда перед глазами удобный альтернативный канал, основной канал автоматически отрубается.
Не совсем согласен: существуют по сути три разных вида деятельности: чтение, говорение, восприятие на слух. Они тренируются друг от друга практически независимо. «Пассивное» повторение карточек мне кажется очень эффективным для чтения (а что, читать вам неинтересно?) и даже для аудирования. Да, для говорения это слабовато, но говорение — всего лишь треть головоломки.
Для меня было откровением, как много новых слов я узнал, читая иностранные книги, хотя язык слушал довольно много, и сам говорил достаточно активно. А всё потому, что в письменной речи встречается огромное количество слов, которых нет в устной. Скорее всего, вы эти слова никогда не употребите и не услышите.
Проблема в том, что через некоторое время вы будете неодинаково хорошо помнить различные карточки, и перебирать тысячу-другую слов ради сотни плохо выученных задолбает.
То есть вы начнёте сортировать карточки на «помню хорошо» и «помню плохо».
А потом сообразите, что карточки «помню хорошо» надо повторять хотя бы раз в 2-3 месяца, пока они не запомнятся окончательно, а «помню плохо» стоит долбать каждые два-три дня, чтобы они запомнились.
И вот так шаг за шагом вы подойдёте к идее spaced repetition, которая реализована в Анки и Супермемо. Более того, если почитать об используемых там алгоритмах, программа окажется совсем непростой. Потому что там довольно хитрые формулы воплощены, почерпнутые из когнитивной психологии.
Короче говоря, от простых соображений вроде «нужны карточки» и «слова надо повторять» до эффективного изучения языка, где тысячи слов (а если изучается не один язык, а несколько, умножаем соответственно), лежит настоящая пропасть.
Автор глубоко заблуждается: «Все что нам требуется это прочитать слово, написать его перевод и нажать клавишу Enter.»
К сожалению, требуется гораздо больше. Выучить 50 слов за вечер не так уж и трудно, а вот вспомнить хотя бы 30 из них через две недели — вот задача.
Я сам долгое время пользовался бумажными карточками (потому что высоких технологий и так хватает, а вот тёплое и шуршащее бесценно), но в итоге пришёл к тому, что при серьёзном подходе к делу без технологий spaced repetitions не обойтись.
Здесь я тоже сначала сделал себе коробку Лейтнера из молочного пакета, но в конце концов пересел на Anki, чего и прочим желаю. Ну, необязательно на Anki, есть ещё Supermemo, например.
Вот когда у вас в базе будет хотя бы 2-3 тысячи слов, которые вы помните неодинаково хорошо, так сразу осознаете ошибку.
Ну так о том и речь, люди хотят жить там, где «клубы и ночная жизнь», а не там, где одни офисы и бородатые айтишники. То есть с одной стороны, мы хотим существующей экосистемы, а сами её уничтожаем. Повторюсь, в случае большого города вроде СФ влияние даже Гугла вряд ли ощутимо, но для какого-нибудь городка поменьше вполне реально.
Ну я повторюсь, что в SF, скорее всего, никак, потому что ситуация раздута.
Но в общем случае регулируй — вылетишь, а не регулируй — тоже вылетишь, потому что никому не интересно жить в городе, где одни IT-офисы. Заметим походя, что упомянутые в статье сотрудники Гугла предпочитают почти час трястись на автобусе, чтобы доехать до офиса, вместо того, чтобы жить возле офиса. Видимо, не так они представляют себе идеальную жизнь.
Применительно к С-Ф мне вообще кажется, что проблема надуманная, и раздувают её некие малочисленные «активисты». Фиг с ними. Это лишь повод обсудить более широкий вопрос: вот мы понимаем, что если хочется рыбы, нельзя просто прийти и выловить из озера всю рыбу, потому что её из-за этого не станет. То есть человечество дошло до понимания экосистемы, которой можно пользоваться, но с осторожностью и умом, причём для нашего же блага.
Город — это такая же экосистема, и если он нам нравится, и мы именно поэтому стремимся там жить, в наших интересах экосистему сохранять. Иначе получится «за что боролись, на то и напоролись», т.к. вследствие наших действий то, что мы там так любили, может легко исчезнуть. Поэтому мне и не нравится позиция «чего тебе не нравится, стань дворником / программистом / машинистом и радуйся». Слегка однобокая.
Чеховская история тут весьма косвенное имеет отношение. Я вовсе не сторонник сохранения «статус-кво» и прочего излишнего социализма, но если заглянуть на пару шагов вперёд, любые перекосы вредны.
Конечно, С-Ф город большой и разнообразный и сравнения некорректны, но вот например, в Венеции тоже «жизнь такая», что местные массово сваливают из центра, а остаются только туристы, но в конце концов оказывается, что ездить туда и туристу становится неинтересно, потому что вокруг видишь одни магазины, жадных торговцев и гондольеров, ну и других туристов. Красиво безумно, но повторно возвращаться не хочется.
А вот недавно был в Португалии, там есть свои маленькие красивые города, в которых настоящие живые люди живут. И туда хочется возвращаться.
Это странная логика. Если я строитель и живу в своём городе с рождения, я и не хочу приобретать скиллы и устраиваться куда-то. Я хочу работать где работаю, и жить где живу. Не знаю, если в мой город придёт, скажем, богатая контора, которая овец стрижёт, вы мне тоже предложите бросить программирование и зарабатывать стрижкой овец? Можно, конечно, но счастлив я точно от этого не буду. Кроме того, это прямой путь к судьбе Детройта (выше уже обсуждали).
ОК, я думал, что у нас останавливаться на остановках общественного транспорта нельзя. Ну можно, так можно.
Ну понятно, что и строитель получает больше в дорогом городе, чем в дешёвом. Но для меня совсем неочевидно, где уровень жизни для строителя или водителя выше — в простом нормальном городе, или там, где цены задраны десятком богатеньких предприятий. Нет ответа.
Да вряд ли хозяева кафешек и спортзалов жалуются. Жалуются простые обычные строители, водители, рабочие, грузчики, повара, слесари, кто угодно, которые вообще никак с этим IT миром не пересекаются, а теперь неожиданно для себя оказались в городе, где постоянно растут цены.
Гугл не в Сан-Франциско живёт, так что вряд ли он туда платит.
Кстати, для меня удивительно слышать, что там можно так просто подбирать людей на остановках общественного транспорта. У нас вроде даже просто остановиться на остановке автобуса нельзя, если не вру.
Можно, конечно, начать переписку в комментариях, но это в принципе неправильно.
Если интересует моя «аксиома», то это, конечно, не аксиома, а теорема. Чтобы её доказать, мне надо написать целую простыню текста.
Но если выразиться предельно кратко, то основной механизм борьбы со сложностью называется «абстракция». Если язык позволяет создавать высокоуровневые абстракции, он масштабируем. Причём возможности абстракции (инкапсуляции сложности) должны быть предельно гибки, потому что автор языка программирования не знает моих нужд, не знает моей предметной области.
Например, если я математик, то у меня должна быть возможность написать выражение «A*c», где A — квадратная матрица, а c — вектор-столбец, потому что к этому подвигают гигантские объёмы существующей математической литературы и поколения математиков, работавших над формализмом.
Если я пишу алгоритм сортировки, то у меня должна быть возможность написать его обобщённую версию для любого произвольного типа T, для которого определены операции сравнения и присваивания.
Если я пишу GUI, то знаю, что мои алгоритмы перерисовки объектов и прочего управления окнами будут работать с виджетами сторонних разработчиков, причём частично функционал и внешний вид виджетов будут пересекаться, что неизбежно приводит к идеям вроде наследования и виртуальных функций.
Наконец, если моя программа работает на реальном компьютере, меня могут неожиданно озаботить представления об эффективности кода, о прямой работе с оперативной памятью, доступе к нестандартному оборудованию.
Таким образом, любой язык, который отсекает какую-либо теоретически возможную абстракцию, лишает меня какого-либо инструмента. А автор языка никогда не знает, какой инструмент мне реально понадобится. Потому что язык программирования — это язык моделирования предметной области, и чем естественнее на языке программирования я могу выразить понятия моей области, тем лучше.
А если по делу — я глубоко уважаю профессора Вирта, учился в том числе и по его книжкам, и ценю его достижения.
Но он, на мой предвзятый взгляд, относится к тем «кирпичам» здания компьютерной науки, которые не окажутся на фасаде. Он многое сделал для развития идей, практики и содержания программирования.
Однако его основное детище — это попытка создать минимальный простой язык. Модула проще Паскаля, а Оберон проще Модулы. Однако жизнь показала, что идея эта нежизнеспособна, потому что сложные понятия требуют сложного языка. И даже те языки, которые начинались как «простые» (вроде тех же C# и Java), сейчас по сложности стремительно догоняют C++.
А ниша Паскаля стремительно уходит к языкам вроде Python или Ruby. Так что пройдёт ещё немного времени, и существенный вклад Вирта, к сожалению, окажется скрытым под новыми культурными слоями. Даже я, начинавший программирование с Бейсика, как-то мало соприкасался с его наследием.
Любой текст предъявляет те или иные требования к читателю. Фраза «дифференциальное уравнение в частных производных» написана кириллическими буквами, но чтобы понять её суть, нужно, как минимум, обладать незаконченным высшим образованием. Примерно то же можно сказать о словах вроде «маркетинг», «номинализм» или «эсхатология».
Соответственно, думать надо не только об алфавите, но и о лексике. Если я посмел употребить сочетание «дифференциальное уравнение в частных производных», то сразу же отсёк огромное количество потенциальных читателей, которые, быть может, сумели бы прочесть написанные буквы, но всё равно не поняли бы смысла (и стало быть, их умение читать здесь не помогает).
Я с огромным трудом могу себе представить читателя компьютерно-технического текста на русском языке, который не сумеет прочесть вставленное слово «JavaScript». Наверно, такие уникумы действительно существуют. Но я как автор текста в любом случае самостоятельно решаю, на какую аудиторию рассчитано моё повествование. Моё решение в любом случае дискриминационно, потому что любое употребление латиницы, иероглифики, специальной терминологии, профессионального жаргона и т.п. неизбежно кого-то отсекает.
Почему вы так выделяете латиницу из всего этого разнообразия — неясно. Вы ведь обосновываете свою точку зрения наличием читателей, которые латиницу не прочтут. Если проблема лишь в этом, ну что ж, мне их жаль, я не для них пишу. И ничего в этом обидного нет: я не пишу технические тексты ни для медсестёр, ни для слесарей, ни для музыкантов.
А по сути тот же вывод можно было сформулировать проще: лучше быть богатым и здоровым, чем бедным и больным. Я не знаю никого, кто бы в здравом уме предположил, что случайные люди из интернета переведут текст качественнее, чем высококлассные профессионалы. Вся история с краудсорсингом — это история о том, что в теории можно получить неплохой перевод очень дёшево или бесплатно.
У меня на компьютере довольно много копеечного или бесплатного софта с 12-20 заявленными языками интерфейса. «Обратиться к профессионалам» для их авторов просто не вариант. А те, кто рассматривает свой продукт как серьёзный бизнес, и так обращается к переводчикам.
Надо сказать, впрочем, что при таком подходе представители не очень крупных народов/рынков (вроде грузин или эстонцев) вообще никогда бы не увидели софта на родном языке.
Ну финский немного подучил, жалко терять навыки, а японский вот между делом пытаюсь шлифовать помаленьку.
На самом деле эта деятельность затягивает, начинаешь получать удовольствие от процесса и от новых знаний/умений. Кроме того, это реально интересные языки, да и после английского изучать такое — это как Хаскелл после Паскаля.
Перевод иногда необходим, когда толковый словарь не помогает. Например, если открыть толковый словарь и прочесть, что такое sparrow или elm, понимания не прибавится. Ну да, поймёшь, что первое птица, а второе дерево, но не более того.
Вообще всё сложно. Я сейчас более-менее активно работаю с тремя иностранными языками, все на разном уровне (английский практически свободно, финский на среднем уровне, но читаю куда лучше, чем говорю, японский на самом базовом).
И в каждом случае нужен совершенно отдельный подход, потому что стоят разные задачи. Чем больше изучаю, тем меньше понимаю, что работает, а что не работает. Да и начальный этап у меня каждый раз был построен по-разному.
То есть тупо вызубрить короткий текст и повторить наизусть несколько раз — полезно.
Потому что всё равно мы говорим выученными языковыми паттернами, сами мы практически ничего не выдумываем.
И вот такое банальное записывание паттернов в контексте в итоге «выстреливает».
Читаю иностранную книгу (ну или смотрю фильм). Попутно создаю новые карточки. При этом не пытаюсь забивать туда все переводы слова, стараюсь ограничиваться тем переводом, который актуален в конкретном контексте (ну если перевода всего два-три, беру все).
Конечно, если знания языка позволяют, пытаюсь брать не перевод на русский, а текст из толкового словаря на языке оригинала. Кстати, для английского языка в Оксфордском словаре специально выделено подмножество из примерно трёх тысяч слов для объяснений. Освоив «оксфордский минимум», вы гарантированно прочтёте любую статью из Оксфордского толкового словаря.
Далее, желательно начать повторять карточки пока воспоминания о прочитанном/услышанном ещё свежи. Тогда глядя на карточку, я не просто вспоминаю слово или читаю перевод, я пытаюсь вспомнить тот контекст, в котором слово встретилось. Ну и по ассоциации, конечно, запоминается лучше.
Банальная зубрёжка в стиле «перевод -> оригинал на карте» тоже небесполезна, если речь идёт о базовом-пребазовом наборе слов (но это тоже немало, 1-2 тысячи слов так можно освоить: названия животных, механизмов, числа, окружающий мир).
Кстати, чем ещё хороши книги (особенно толстые): в них неизбежно повторяются одни и те же слова. Либо автор их любит, либо просто возникают описания одних и тех же героев или лиц. Ну, скажем, Лестрейд в «Шерлоке Холмсе» постоянно фигурирует как «ferret-like» или что-то в этом роде, так что «ferret» волей-неволей запомнится уже на третьем рассказе.
По поводу «плодотворного способа читать» — на самом деле это больное место. Я много раз слышал, что читать со словарём «неплодотворно», но мне кажется, что в целом это всё равно самый плодотворный способ, если аккуратно повышать сложность читаемых текстов, чтобы не приходилось нырять в словарь на каждой фразе по пять раз.
Можно пользоваться параллельными текстами («метод Франка»), но в общем случае это как кино с субтитрами: когда перед глазами удобный альтернативный канал, основной канал автоматически отрубается.
Для меня было откровением, как много новых слов я узнал, читая иностранные книги, хотя язык слушал довольно много, и сам говорил достаточно активно. А всё потому, что в письменной речи встречается огромное количество слов, которых нет в устной. Скорее всего, вы эти слова никогда не употребите и не услышите.
То есть вы начнёте сортировать карточки на «помню хорошо» и «помню плохо».
А потом сообразите, что карточки «помню хорошо» надо повторять хотя бы раз в 2-3 месяца, пока они не запомнятся окончательно, а «помню плохо» стоит долбать каждые два-три дня, чтобы они запомнились.
И вот так шаг за шагом вы подойдёте к идее spaced repetition, которая реализована в Анки и Супермемо. Более того, если почитать об используемых там алгоритмах, программа окажется совсем непростой. Потому что там довольно хитрые формулы воплощены, почерпнутые из когнитивной психологии.
Короче говоря, от простых соображений вроде «нужны карточки» и «слова надо повторять» до эффективного изучения языка, где тысячи слов (а если изучается не один язык, а несколько, умножаем соответственно), лежит настоящая пропасть.
К сожалению, требуется гораздо больше. Выучить 50 слов за вечер не так уж и трудно, а вот вспомнить хотя бы 30 из них через две недели — вот задача.
Я сам долгое время пользовался бумажными карточками (потому что высоких технологий и так хватает, а вот тёплое и шуршащее бесценно), но в итоге пришёл к тому, что при серьёзном подходе к делу без технологий spaced repetitions не обойтись.
Здесь я тоже сначала сделал себе коробку Лейтнера из молочного пакета, но в конце концов пересел на Anki, чего и прочим желаю. Ну, необязательно на Anki, есть ещё Supermemo, например.
Вот когда у вас в базе будет хотя бы 2-3 тысячи слов, которые вы помните неодинаково хорошо, так сразу осознаете ошибку.
Но в общем случае регулируй — вылетишь, а не регулируй — тоже вылетишь, потому что никому не интересно жить в городе, где одни IT-офисы. Заметим походя, что упомянутые в статье сотрудники Гугла предпочитают почти час трястись на автобусе, чтобы доехать до офиса, вместо того, чтобы жить возле офиса. Видимо, не так они представляют себе идеальную жизнь.
Применительно к С-Ф мне вообще кажется, что проблема надуманная, и раздувают её некие малочисленные «активисты». Фиг с ними. Это лишь повод обсудить более широкий вопрос: вот мы понимаем, что если хочется рыбы, нельзя просто прийти и выловить из озера всю рыбу, потому что её из-за этого не станет. То есть человечество дошло до понимания экосистемы, которой можно пользоваться, но с осторожностью и умом, причём для нашего же блага.
Город — это такая же экосистема, и если он нам нравится, и мы именно поэтому стремимся там жить, в наших интересах экосистему сохранять. Иначе получится «за что боролись, на то и напоролись», т.к. вследствие наших действий то, что мы там так любили, может легко исчезнуть. Поэтому мне и не нравится позиция «чего тебе не нравится, стань дворником / программистом / машинистом и радуйся». Слегка однобокая.
Чеховская история тут весьма косвенное имеет отношение. Я вовсе не сторонник сохранения «статус-кво» и прочего излишнего социализма, но если заглянуть на пару шагов вперёд, любые перекосы вредны.
Конечно, С-Ф город большой и разнообразный и сравнения некорректны, но вот например, в Венеции тоже «жизнь такая», что местные массово сваливают из центра, а остаются только туристы, но в конце концов оказывается, что ездить туда и туристу становится неинтересно, потому что вокруг видишь одни магазины, жадных торговцев и гондольеров, ну и других туристов. Красиво безумно, но повторно возвращаться не хочется.
А вот недавно был в Португалии, там есть свои маленькие красивые города, в которых настоящие живые люди живут. И туда хочется возвращаться.
ОК, я думал, что у нас останавливаться на остановках общественного транспорта нельзя. Ну можно, так можно.
Гугл не в Сан-Франциско живёт, так что вряд ли он туда платит.
Кстати, для меня удивительно слышать, что там можно так просто подбирать людей на остановках общественного транспорта. У нас вроде даже просто остановиться на остановке автобуса нельзя, если не вру.