Обработка ошибок в Go: Defer, Panic и Recover

В языке Go используются обычные способы управления потоком выполнения: if, for, switch, goto. Есть ещё оператор go, чтобы запустить код в отдельной го-процедуре. А сейчас я бы хотел обсудить менее обычные способы: defer, panic и recover. Команда defer помещает вызов функции в список. Этот список отложенных вызовов выполняется после того, как объемлющая функция завершит выполнение. Defer обычно используется для упрощения функций, которые занимаются освобождением ресурса. (далее…)

Delta RPMs disabled because /usr/bin/applydeltarpm not installed

При обновлении пакетов в Centos 7 обратил внимание на ошибку Delta RPMs disabled because /usr/bin/applydeltarpm not installed. Узнаём какой пакет предоставляет приложение /usr/bin/applydeltarpm с помощью команды yum provides '*/applydeltarpm' (далее…)

Как правильно накручивать поведенческие факторы?

В последнее время, большое количество SEO-специалистов сходятся во мнении, что поисковые системы значительно улучшили свои алгоритмы, и на место в выдаче, поведенческие факторы начали оказывать значительное влияние. Что позволяет тем, кто умеет правильно улучшить поведенческие факторы, честным или нечестным путем, добиваться больших результатов при продвижении.

(далее…)

Как начать зарабатывать в Instagram

Сейчас можно монетизировать фактически любую свою интернет-деятельность, в том числе и свои социальные сети, и это может приносить не просто пассивный доход, но и стать полноценным заработком. Блогерство в настоящее время, стало полноценной деятельностью, и даже занесено в реестр профессий. Приносить хороший доход в основном могут самые известные и популярные социальные сети, поэтому сегодня обратим внимание на социальную сеть номер один - Instagram. (далее…)

Можно ли использовать ботов для торговли криптовалютой?

Под словом бот, пользователь понимает, что это программа, которая будет выполнять указанные действия, что существенно упрощает работу. Такие боты и подходят для торговли криптовалютой. Один из примеров работы простого бота: бот покупает валюты, когда она в приоритете и автоматически продает ее при падении. Сложность ботов заключается я в разных показателях. Бот посложнее учитывает график валюты за определенное количество дней и решает, что с ней делать. (далее…)

Как устанавливать дополнительные пакеты в Alpine Linux под Docker

Некоторые разработчики чересчур увлекаются оптимизациями в ущерб удобству использования. Наверное половина образов с docker hub собрана на базе минималистичного Linux-дистрибутива Alpine. В его стандартной поставке отсутствуют практически все привычные утилиты. И нельзя просто так взять и их установить, т.к. для этого нужно использовать достаточно редкий пакетный менеджер apk. Для примера, рассмотрим как установить редактор nano в Alpine Linux: (далее…)

Закрыть URL на Basic Auth в Symfony

Мне не очень нравятся инструменты с очень высоким порогом вхождения. Не потому, что я сам не могу с ними работать (могу), а потому как на какие-то мелочи команда тратит непомерно много времени. Я был наслышан про security bundle и то, как его не осиливают разработчики, но это было давно. За последние пару лет вышел Symfony 4, который представлялся как мега-простой и супер-быстрый, да и в самом security вроде изменений было много на тему упрощения. Но нет, оказывается, сильно лучше не стало. (далее…)

Делать метод в сущности или нет?

Вроде простой вопрос, но не так он прост как кажется. Если ударяться в крайности, с одной стороны у нас будут анемичные модели, где сущность не содержит какой-либо логики, а с другой - модели, которые делают слишком много всего, что с ними напрямую не связано. Как выбрать в конкретном случае, стоит ли оставить метод в сущности или вынести в отдельный класс? (далее…)

Что такое RabbitMQ, зачем он нужен и как его использовать

Около полугода назад на одном проекте мы с напарником столкнулись с проблемой масштабирования, которая в тот момент внезапно ударила по серверу и весело его уронила. Количество задач, которые ставили пользователи, превысило барьеры вычислительных мощностей. Факторов, которые к этому привели, было несколько:

  1. Во-первых, мы паршиво построили архитектуру: вся работа сервиса была заточена только на 1 сервер и каких-либо заделов к масштабированию на 2 или 3, как ты понимаешь, не было.
  2. Во-вторых, мы — не профессионалы, а самоучки, которые пилили проект на скорость, так как «готово должно быть вчера».
  3. Не идёт речи о грамотном распределение ресурсов — вся многопоточность строилась на инструментах, с которыми умел работать PHP, а PHP, как можно догадаться, работает с ними не особо хорошо.
(далее…)

Постановка зданий за протоссов в Starcraft 2

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

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


Любишь мемасики?

Подпишись на мой телеграм-канал!

Открыть
Закрыть