Анализ доклада Никиты Макарова о револьвере, мнемонике, заведующем складом и других полезных вещах

В блоге JUG.ru новый разбор, на этот раз под увеличительное стекло попал Никита Макаров из «Одноклассников», многократный участник программных комитетов наших конференций. Сегодня мы рассмотрим доклад о микросервисах для автоматизации тестирования. Выступление состоялось в 2015 году на встрече devclub.eu в Таллинне:

Слайды доклада можно найти тут. Читать дальше →

Проблемы тестирования: почему 100% покрытие кода это плохо

Недавно в нашем блоге мы рассказывали об использовании предметно-ориентированных языков для решения конкретных задач разработки с помощью Python. Сегодня речь пойдет о тестировании — в частности, о том, почему стопроцентное покрытие тестами кода это на самом деле плохо.

Материал подготовлен на основе выступления разработчика Positive Technologies Ивана Цыганова на конференции Moscow Python Conf (слайды, видео). Читать дальше →

Source: Проблемы тестирования: почему 100% покрытие кода это плохо

Правда о традиционных JavaScript-бенчмарках

image

Пожалуй, будет достаточно справедливо сказать, что JavaScript — самая важная современная технология в разработке программного обеспечения. Для многих из тех, кто изучал языки программирования, компиляторы и виртуальные машины, всё ещё удивителен тот факт, что при всей своей элегантности с точки зрения структуры языка JavaScript не слишком хорошо оптимизируем с точки зрения компилирования и не может похвастаться замечательной стандартной библиотекой. В зависимости от того, кто ваш собеседник, вы можете неделями перечислять недоработки в JavaScript и всё равно обнаружите какую-то странность, о которой ещё не слышали. Но несмотря на очевидные недостатки, сегодня JavaScript является ключевой технологией в вебе, доминирует в серверной/облачной сфере (благодаря Node.js), а также проникает в интернет вещей.

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

Создание движка для блога с помощью Phoenix и Elixir / Часть 6. Поддержка Markdown

От переводчика: «Elixir и Phoenix — прекрасный пример того, куда движется современная веб-разработка. Уже сейчас эти инструменты предоставляют качественный доступ к технологиям реального времени для веб-приложений. Сайты с повышенной интерактивностью, многопользовательские браузерные игры, микросервисы — те направления, в которых данные технологии сослужат хорошую службу. Далее представлен перевод серии из 11 статей, подробно описывающих аспекты разработки на фреймворке Феникс казалось бы такой тривиальной вещи, как блоговый движок. Но не спешите кукситься, будет действительно интересно, особенно если статьи побудят вас обратить внимание на Эликсир либо стать его последователями.

В этой части мы подключим библиотеку Earmark для добавления возможности использования разметки Markdown.

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

Как использовать кастомные шрифты в вебе и не сойти с ума

Бывало ли так, что вы видите на веб-странице картинки и оформление, но не видите текста — он появляется на пару (десятков) секунд позже? Это загружаются кастомные веб-шрифты. Объясняем, почему это происходит и как этого избежать.

Классический вопрос на собеседовании ops-инженеров и программистов: вы написали в адресной строке браузера meduza.io и нажали Enter. Что произойдет? (Ответ на 10 страницах)

Ок, мы указали для своего текста font-family: PFRegal, «Times New Roman». Что произойдет?

Браузер посмотрит, есть ли для PFRegal объявление font-face. Если оно есть, то начнется загрузка файла шрифта. Что будут видеть читатели те секунды (десятки секунд на 3G), пока происходит загрузка?

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

Марсоход, Инициализация

В этой серии статей мы строим программное обеспечение марсохода в соответствии со следующими спецификациями. Это позволит применить нам на практике следующие подходы:

  • Monolithic Repositories — MonoRepo (Монолитные репозитории)
  • Command/Query Responsibility Segregation — CQRS (Сегрегация ответственности на чтение и запись)
  • Event Sourcing — ES (События как источник)
  • Test Driven Development — TDD (Разработка через тестирование)
Оглавление
Марсоход, Введение Марсоход, Инициализация

Cначала нам нужно инициализировать наш проект. Читать дальше →

Государственный сайт, доступный для людей с ограниченными возможностями (чек-лист доступности)

Введение

В рамках “Дизайна госсистем” мы создали для вас (разработчиков всех видов) чек-лист доступности сайта для людей с ограниченными возможностями, который нужно прибить над рабочим столом каждого дизайнера и фронтендера. Он подходит к любым проектам (совсем не только государственным) в нем нет ничего лишнего. В нем только исключительно важная, критичная и полезная информация. Так что печатайте, читайте и делитесь со своими коллегами. Это крайне необходимые текст и знания.

Обработанный в Photoshop текст с применением фильтра blur

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

Роcкомнадзор: держим ухо востро. Как вовремя заметить внесение в список

По многочисленным просьбам трудящихся, сервис мониторинга ХостТрекер реализовал функцию, позволяющую регулярно проверять списки сайтов на попадание в базу Роскомнадзора. О некоторых особенностях — ниже.

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

Pornhub обходит блокировщики рекламы с помощью вебсокетов

Инженер из компании BugReplay нашёл отличный способ продемонстрировать, как работает его сервис скринкаста с записью сетевого трафика и демонстрацией ошибок, в том числе WebSockets и JavaScript. Он записал скринкаст загрузки Pornhub с отображением лога трафика, который синхронизирован с видео. Так вот, на этой демонстрации отлично видно, каким образом Pornhub обходит блокировщики рекламы и пропихивает рекламу с помощью вебсокетов.

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

Мгновенная диагностика сайтов. Обзор сервиса ХостТрекер, часть 4

Есть подозрения, что сайт ведет себя с вами по-особенному? Есть множество локальных и не очень причин, по которым сайт может открываться разработчиком, но быть недоступным клиентам. Или же наоборот. Обзор популярных причин, а также методы их диагностики с помощью бесплатных функций сервиса ХостТрекер — под катом.

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