Как учить новые слова — карточки со словами или список в блокноте

Я уже несколько лет учу новые слова при помощи карточек. Сначала это были бумажные карточки. на которых с одной стороны — слово на язычаемом языке, а с другой — перевод. Затем я перешел на программы с той же идеей. Сперва BXMemo, затем Anki (которую до сих пор считаю самой удобной), попутно перепробовал несколько других подобных приложений. Но вот как-то решил провести эксперимент и попробовать изучать слова списками с помощью обычного карманного блокнота. Это способ, которому всегда отдавалось предпочтение в школах — вы просто выписываете пары слово — перевод в виде сплошного списка. В итоге я решил вернуться к Anki, хотя способ со списком имеет ряд достоинств. Результаты сравнения я оформил в виде тезисов.

Продолжить чтение →

Челябинск, столица Южного Урала, в 2017

Каждый раз, когда я возвращаюсь в свой родной город, я пытаюсь увидеть изменения, которые его постигли за время расставания, а также сравнить его с другими городами. В этот раз я побывал в Челябинске в июле, в то самое время, когда Центральную Россию заливало дождями и сдувало ураганами. Здесь же лето гораздо более приятное и солнечное, несмотря на достаточно прохладный ветер и периодические небольшие дожди.Продолжить чтение →

Екатеринбург, главный город Урала

Исторический центр Екатеринбурга
Исторический центр Екатеринбурга

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

Как писать тестируемый код на PHP и не только

Всем известно, что чтобы успешно писать юнит-тесты, особенно, не применяя TDD, сам код должен быть написан в определенной манере, так, чтобы его было легко тестировать. По мотивам статьи Unit Testing – The Big Picture я составил/перевел краткую шпаргалку (или чек-лист), на что обратить внимание при нового написании кода (в первую очередь на PHP, но не только).

  • Принципы SOLID и DRY
  • Не использовать ключевое слово new в конструкторе
  • Не использовать циклы в конструкторе (а также switch и if)
  • Никаких статичечких методов, параметров, классов
  • Никаких методов setup() – объект должен быть полностью проинициализирован в конструкторе
  • Никаких синглтонов (глобальных состояний) и других нетестируемых антипаттернов
  • Никаких «всемогущих объектов» (God object)
  • Нет классам со смешанным предназначением
  • Никаких скрытых зависимостей

Загадочный MGTOW, или холостяцкая женоненавистническая лексика в Англии

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

  1. MGTOW (Men Going Their Own Way) — Мужчины идут своей дорогой. «Шапочный» термин, описывающий женоненавистническую философию мужчин, которые считают, что женщины в обществе обладают чрезмерными правами и имеют мало обязанностей. Подразумевается, что женщины используют мужчин в своих корыстных целях и разбивают им жизни в силу своей порочной природы. В связи с этим мужчины, считающие так, либо воздерживаются от долговременных романтических отношений, либо стремятся к таким отношениям, где статус женщины будет намного ниже мужского.
  2. Hypergamy — гипергамия — термин, описывающий женское поведение с точки зрения той же теории. Подразумевается, что женщины, даже имея постоянного партнера, всегда находятся в поисках нового, который был бы более выгодной партией, в первую очередь, для обеспечения ее детей.
  3. Monkey branching — женское поведение, заключающееся во флирте и налаживании контактов с представителями мужского пола с тем, чтобы всегда иметь резервный вариант на случай расставания с имеющимся партнером
  4. White knight — рыцарь в белых доспехах — мужчина, на словах выступающий за равенство полов, на деле же часто покровительствующий женщинам, уступающий им, в силу их пола. Обычно используется пренебрежительно
  5. Mangina = man + vagina 1. «Подкаблучник» — Мужчина, делающий чаще всего так, как ему скажет делать женщина, даже если это расходится с требованиями ситуации или с его желаниями 2. «Баба» — мужчина с женскими чертами характера
  6. Simp (Someone Idolizing Mediocre Pussy) — также «Подкаблучник» — Man, that dude’s girlfriend cheated on him twice and he’s still dating her. He’s a simp.
  7. Cock carousel — презрительное обозначение поискового сексуального поведения женщины. В рамках той же шовинистической философии женщина якобы выбирает мужчин с агрессивными, брутальными чертами характера, и стремится завести отношения с большим числом таких мужчин, тогда как в свои 30 остепеняется и выбирает мужчину с противоположными характеристиками в силу прагматических интересов.

PHP и неизменяемость

Это перевод оригинальной статьи Саймона Холивелла PHP and Immutability. Продолжение — в другом посте.

Как у динамического языка со слабой типизацией, у PHP нет встроенной концепции неизменяемости (immutability). Конечно, все мы знаем заслуженные  define()  и КОНСТАНТЫ, но они ограничены в функционале. Хоть PHP и поставляется с как минимум одним неизменяемым классом в своей стандартной библиотеке, DateTimeImmutable , но не существует какого-то внятного способа создавать собственные неизменяемые объекты.Продолжить чтение →

Сочи в конце апреля

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

Коварство NOT IN в SQL (следите за NULL!)

Некоторые вещи в SQL совсем не интуитивны. Я уже писал про пагубность сравнения с NULL в SQL, но недавно снова наступил на эти грабли. Иногда в сложных запросах не всегда очевидна природа данных. Скажем, есть у вас некая таблица customers:Продолжить чтение →

Как называть свои функции и методы

Опыт программирования для больших проектов на PHP и JavaScript подсказывает, что подбор названий функций и методов очень важен. Да, часто нехватка времени и/или лень и/или усталость приводят к таким названиям, как checkOtherThings() или handlingSomeArrayStuff() или даже cb(). Чем это плохо? Код работает, лень удовлетворена, заказчик/начальник довольны, о чем и говорить? Однако, все это чревато отложенными проблемами и часами, потраченными впустую. Если потом кто-то будет работать с вашим кодом, заниматься отладкой или расширением функционала, он вас точно не поблагодарит за doSomeStuff() и putArToOtherAr(). Этим «кем-то» всегда можете оказаться вы сами через месяц или год. Если сейчас вы чувствуете себя в своем коде, как рыба в воде, то через пару месяцев, вероятно, вы не вспомните даже, зачем вообще весь этот модуль был нужен.

Продолжить чтение →

Яндекс.Метрика