Обновить
24
Лев Рычковский@devlev

web-программист

3
Подписчики
Отправить сообщение

Взлом английского. Язык и реальность

Время на прочтение16 мин
Охват и читатели30K

Заголовок выбран не случайно. Он отражает суть статьи, хоть и выглядит кликбейтом. Распространено мнение о неких "способностях" или "склонностях" к изучению языков. Я хотел бы внести технологию туда, где бытует мрак предубеждений и туманные указания из разряда "надо больше практики" и другие таинственные ответы на таинственные вопросы.

Система, описанная в статье, перевернет ваше представление об изучении языков. Я на это надеюсь. Но это случиться только если не спешить, читать внимательно и вдумчиво и связывать все тезисы между собой. Используйте систему 2 на полную катушку.

Взять красную таблетку

От внедрения зависимостей к отказу от зависимостей

Время на прочтение27 мин
Охват и читатели21K

У функционального программирования есть одна большая проблема — о нем очень непросто рассказывать. Попытки донести людям что-то с использованием терминов типа «зигохистоморфный препроморфизм» легко сводят неподготовленного слушателя с ума.



Марк Симан — автор популярной книги Dependency Injection in .NET, автор бесчисленных блог-постов. На DotNext 2017 Moscow Марк рассмотрел применение dependency injection в классическом объектно-ориентированном дизайне и объяснил, почему его необязательно (даже нежелательно) использовать в функциональном программировании. Следом за этим он наглядно показал, как использование приемов функционального программирования устраняет необходимость в использовании моков и стабов в модульном тестировании и позволяет полностью выбросить мусор из прямого перечисления зависимостей.


Под катом — перевод доклада и видео. Далее повествование будет от лица Марка.

Герундий, что ты такое?

Время на прочтение3 мин
Охват и читатели21K

Работая преподавателем английского, я заметил, что у многих возникают особые трудности с герундием. И сегодня мы его разберем по полочкам.

Начнем со сказки. Жил да был глагол( swim, jump, run… ), решил сменить пол, то бишь стать существительным. И превратился в герундий. И глаголом не остался, и существительным не стал. Получилось что-то непонятное, нечто среднее, скажем так: swimming, jumping, reading.

Мы это понимаем примерно так

swimming -плавание,

reading -чтение

jumping -прыжки.

То есть jumping -прыгание, как то язык не поворачивается сказать.

Но все эти примеры объединяет то, что они обозначают некий процесс. Какое-то занятие, полезное или не очень. Еще примеры в студию:

speaking, listening, reading, writing.

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

Читать далее...

Как перестать беспокоиться и начать жить

Время на прочтение4 мин
Охват и читатели11K

Многим хотелось бы знать, если вдруг что-то случится с их сайтом, магазином и т.п., особенно, если это не требует ни денег, ни времени, ни усилий. А ведь это довольно легко сделать: потратив совсем немного свободного времени, создадим докер контейнер, который будет периодически делать запросы в БД, расчитывать на их основании некие метрики, сравнивать их с пороговыми значениями и в случае превышения этих порогов, оповещать заинтересованных лиц.

Читать далее

TypeScript: Раскладываем tsconfig по полочкам. Часть 1

Время на прочтение10 мин
Охват и читатели120K

В данной статье я хочу предоставить переработанную и упорядоченную выжимку документации по настройке tsconfig.json, которая, я уверен, будет полезна тем, кто только начинает свой путь в мире TypeScript или тем, кто до этого момента не нашёл времени и сил, чтобы разобраться в деталях и теперь хочет закрыть этот пробел.

Читать далее

Как Amazon тратил по $500 млн на разработку провальных игр и почему ничего не вышло

Время на прочтение4 мин
Охват и читатели41K


В 2012 году в структуре Amazon возникла собственная студия по производству компьютерных игр. По замыслу Джеффа Безоса, Amazon Game Studios должна была стать успешной и эффективной частью корпоративной экосистемы. Однако за прошедшие восемь лет добиться этого, увы, так и не удалось. Как же так вышло, что богатейшая компания, у которой получалось практически всё, не сумела завоевать рынок геймдева?

Ответы на этот вопрос нашел журналист Джейсон Шрайер (автор книги “Кровь, пот и пиксели”). Публикуем главные тезисы расследования.
Читать дальше →

Всё что вы стеснялись спросить о бэкапах Microsoft SQL Server

Время на прочтение14 мин
Охват и читатели217K
В ходе проведения презентаций о бэкапах и восстановлении баз данных SQL Server, обычно задаются два типа вопросов. Первые задаются прямо по ходу презентации из зала, вторые задаются уже после, в приватной беседе. Эти, «приватные» вопросы, зачастую более интересны и я попробую дать ответы на наиболее сложные и интересные из них, вместо того чтобы писать ещё одну статью о том как вы должны делать бэкапы, или почему вы должны делать бэкапы, или даже почему вы должны проверять свои бэкапы (но вы и вправду должны проверять свои бэкапы).
Читать дальше →

Улучшения нового редактора Razor в Visual Studio

Время на прочтение3 мин
Охват и читатели4.7K

Прошло шесть месяцев с тех пор, как мы анонсировали первую предварительную версию нового экспериментального редактора Razor для Visual Studio, основанного на общем языковом сервере Razor, и пришло время рассказать о наших успехах. Команда усердно работала над приведением нового редактора Razor в соответствие со старым, исправлением ошибок и добавлением множества замечательных новых функций. Мы думаем, что новый редактор близок к тому, чтобы быть готовым к нормальной повседневной разработке, поэтому сейчас самое время попробовать его с последней предварительной версией Visual Studio. Мы надеемся, что вы попробуете новый редактор Razor, и поделитесь с нами своими впечатлениями!

Читать далее

Тестирование с использованием Puppeteer

Время на прочтение8 мин
Охват и читатели9.3K


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


В этой статье я расскажу о тестировании кода с помощью Puppeteer — сервиса, который позволяет проверять работу скриптов в их естественной среде обитания — в браузере. Это не полноценный туториал по Puppeteer, а скорее набор советов о том, как писать осмысленные и стабильно работающие тесты.

Читать дальше →

Пост для мотивации: как я инвестирую в акции

Время на прочтение22 мин
Охват и читатели18K

Дисклеймер


  • этот документ не является финансовым советом, прост личные мысли по поводу инвестиций, компаний
  • почему я инвестирую в компании, а не крипту/недвиж/крышечки от пива (крипта, недвиж и крышечки у меня, конечно, есть): цель коммерческих компаний — зарабатывать деньги, цель валюты/крышечек — быть средством обмена, а недвиж/etc — заморозить $ где-то вокруг инфляции, ну или как-то так, я инженер, а не экономист, сильно не бейте ¯*(ツ)*/¯
  • мои принципы инвестирования оч простые:
Читать дальше →

История 4го места на Russian AI Cup 2020

Время на прочтение34 мин
Охват и читатели13K

В этом году поучавствовал в соревновании по написанию игровых ботов Russian AI Cup. И хоть не удалось взять 1е место, как в 2017, но все равно это было увлекательное и невероятно азартное приклюение длинной в месяц, полное напряженного кодинга, недосыпания, творческих озарений и интриг в финале. Сразу оговорюсь, что в стратегии не использовался AI в современном понимании, с нейронными сетями и прочим - только алгоритмы и структуры данных. Мыслей накопилось много, поэтому приготовьтесь к длинному чтению..

Много текста с картинками

Что вас ждет на курсе Алгоритмов в Яндекс.Практикуме

Время на прочтение14 мин
Охват и читатели74K

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

Хотите такое ощутить? Тогда велкам в Яндекс.Практикум на курс «Алгоритмы для разработчиков».

Читать далее

Практика использования спецификации CSS Scroll Snap

Время на прочтение11 мин
Охват и читатели38K
Часто ли у вас возникало желание воспользоваться какой-нибудь возможностью CSS, позволяющей, без лишних усилий, создать элемент-контейнер, поддерживающий прокрутку? CSS, что очень хорошо, даёт нам такую возможность. Я, когда только начинал заниматься фронтенд-разработкой, пользовался для создания прокручиваемых элементов JavaScript-плагинами. Но иногда нужно что-то такое, что позволяет создавать подобные элементы просто и быстро, без привлечения JavaScript. Сделать это можно, воспользовавшись спецификацией CSS Scroll Snap.



Здесь я хочу раскрыть основы практического использования этой спецификации. Я сам только недавно разобрался с CSS Scroll Snap, поэтому рассказывать всё это буду, так сказать, «по горячим следам».
Читать дальше →

CI/CD для проекта в GitHub с развертыванием на AWS EC2

Время на прочтение6 мин
Охват и читатели12K

Имеем: проект web API на .net core с исходниками в GitHub.

Хотим: авторазвертывание на виртуалке AWS EC2 после завершения работы с кодом (для примера push в develop ветку).

Инструментарий: GitHub Actions, AWS CodeDeploy, S3, EC2.

Ниже flow процесса, который будем реализовывать, погнали.

Читать далее

Анонимный Дед Мороз 2020-2021: пост хвастовства новогодними подарками

Время на прочтение1 мин
Охват и читатели20K
АДМ 2020 на Хабре

Что мы делаем после каждого запуска Хабра-АДМ? Правильно! Публикуем пост Хвастовства.
И особенно приятно, что некоторые участники уже получили свои первые подарки. Так поторопимся и мы.

Пост Хвастовства объявляется открытым!

С НАСТУПАЮЩИМ НОВЫМ 2021 ГОДОМ!

Ваши iCTPEJlOK и kafeman

PS: А если вам кажется, что комментариев пока слишком мало, можете посмотреть, как это было в прошлых сезонах: 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019.

Клуб анонимных Дедов Морозов 2020–2021 на Habr

Время на прочтение2 мин
Охват и читатели40K
КДПВ На дворе уже ноябрь и это говорит о том, что очередной високосный год наконец-то подходит к концу и приближается Новый Год! Приближение этого светлого, доброго, семейного праздника ознаменует старт очередного сезона, традиционной для Хабра забавы, Анонимный Дед Мороз!
Читать дальше →

Вам не нужны юнит-тесты

Время на прочтение7 мин
Охват и читатели29K

Да, вы не ослышались – именно так! В IT-сообществе прочно укоренилось мнение, что все эти тесты вам хоть как-то помогают, но так ли это на самом деле? Вы сами пробовали мыслить критически и анализировать это расхожее мнение? Хипстеры придумывают кучу парадигм – TDD, BDD, ПДД, ГИБДД – лишь чтобы создать иллюзию бурной деятельности и хоть как-то оправдать свою зарплату. Но задумайтесь, что будет, если вы (либо ваши программисты) начнете все свое время уделять исключительно написанию кода? Для тестирования есть отдельное направление и целые подразделения. Вы же не заставляете программистов писать требования, так? Тогда почему они должны писать тесты? Всех согласных и несогласных прошу проследовать внутрь поста, где я вам наглядно покажу, что юнит (и интеграционные) тесты – великое зло!

Проследовать

До свидания, Google Fonts. Последний аргумент

Время на прочтение6 мин
Охват и читатели97K


Шрифты Google Fonts страшно популярны. Их загружают более 42,8 миллиона сайтов, в том числе Хабр. Библиотека Google Fonts содержит 1023 свободных шрифта и программные интерфейсы для их внедрения через CSS. Очень удобно, казалось бы.

Во многих статьях отмечалось, в какую цену обходятся многочисленные запросы через API. Совет самостоятельно хостить шрифты дают много лет. Даже сама Google давала такой совет на конференции Google I/O 2018 года в выступлении на тему веб-производительности.

Так почему же многие до сих пор загружают шрифты через Google Fonts API? Ну, был последний аргумент — кэширование. Мол, благодаря общему CDN пользователю не нужно скачивать шрифт заново с каждого сайта. Однако в октябре 2020 года этот аргумент перестал работать. Теперь шрифты Google Fonts больше не кэшируются!
Читать дальше →

Взболтать, но не смешивать

Время на прочтение3 мин
Охват и читатели23K

Все знают, что вода с маслом не смешивается.


Кто помнит школьную физику, легко назовёт третью жидкость, не смешивающуюся с этими двумя: ртуть.


Вопрос: а сколько всего известно взаимно нерастворимых жидкостей при условиях, близких к нормальным?


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


Тогда вопрос №2: а сколько можно найти взаимно несмешиваемых жидкостей, которые не страшно принести домой, чтобы показать демку детям?


Мне удалось собрать пять. Собственно, их сливанием вот в эту пробирку мы в статье и займёмся.



Поехали?

Читать дальше →

Разбираемся с middleware в ASP.NET Core

Время на прочтение6 мин
Охват и читатели98K

Этой статья раскрывает концепции Middleware в ASP.NET Core. К концу этой статьи вы получите четкое представление о следующих моментах:

- Что такое Middleware?

- Почему порядок расположения Middleware имеет значение?

- Методы Run, Use и Map.

- Как создать собственное Middleware?

- Как реализовать просмотр каталогов с помощью Middleware?

Приступить к прочтению!

Информация

В рейтинге
Не участвует
Откуда
Тула, Тульская обл., Россия
Зарегистрирован
Активность