Онлайн-кинотеатр не может просто купить и залить фильм на платформу: сначала видео проходит техническую обработку, снабжается сопроводительными медиа и заносится в библиотеку. Технический руководитель онлайн-кинотеатра KION Александр Шаталов рассказал, что происходит с кинолентами перед тем, как они оказываются в KION.
Программист
Затыкаем рот Windows 10
Windows 10 очень любит Интернет. Обновления, синхронизации, телеметрия и ещё куча разной другой очень нужной ЕЙ информации постоянно гуляет через наши сетевые соединения. В «стандартном» сценарии использования, когда Windows 10 управляет домашним или рабочим компьютером, это, в общем-то, терпимо, хотя и не очень приятно.
Однако жизнь сложная штука и не ограничивается только стандартными вариантами. Существуют ситуации, когда подобная сетевая активность операционной системы (ОС) нежелательна и даже вредна. За примерами далеко ходить не надо. Попробуйте подключить к Интернету давно не используемый резервный компьютер, собранный на старом железе. Пока софт на нём не обновится, использовать его будет практически невозможно, всё будет дико тормозить и еле шевелиться. А если вам в этот момент нужно срочно что-то сделать?
Для того чтобы подобного не происходило, необходимо «заткнуть рот Windows», то есть сделать так, чтобы она самостоятельно перестала «стучаться» в Интернет, устанавливать обновления и заниматься прочими непотребствами. Вот именно этим мы с вами и займёмся.
Как без усталости кодить по восемь с лишним часов
Всю свою жизнь я писал код неправильно.
Я думал, что достаточно просто сесть за стол, открыть ноутбук, выбрать задачу из моего списка to-do и кодить, пока не устану.
Но на самом деле такой стиль работы убивал мой уровень продуктивности спустя 2–4 часа написания кода. Я ощущал себя таким уставшим, что мне не хотелось ничего, кроме как других задач, требующих низких затрат энергии (например, code review).
Сейчас я могу писать код по восемь с лишним часов, не чувствуя себя после этого развалиной.
Что же изменилось?
Мой подход к работе.
После 62 книг по саморазвитию, десятков статей и исследований продуктивности, собственных проб и ошибок я создал систему продуктивности, помогающую мне кодить, писать, создавать и жить по максимуму без прокрастинации, усталости и тумана в голове.
В статье я расскажу, как этого достиг.
Если вы не чистите зубы, то я их вам почищу: FAQ про гигиену
Зубы до гигиены, химический агент для окраски налёта (используется в обучающих целях для того, чтобы пациент видел непрочищаемые участки) и состояние после гигиены.
Про чистку зубов есть очень много вопросов, поэтому пробежимся по основным:
- Что будет, если не чистить зубы?
- Можно ли чистить зубы редко, но ходить к стоматологу время от времени, чтобы он их вам «мощно почистил»?
- Как проходит чистка зубов в стоматологии?
- Почему швейцарцы чистят зубы вообще без пасты?
- Работает ли жвачка?
- Какие щётки выбирать и как? Что насчёт электрических?
- Правда ли, что щётку надо выкидывать, когда хотя бы одна ворсинка отклоняется от вертикали?
- Зачем нужны скребки для языка, межзубные ёршики, зубная нить и всё остальное?
- Ирригатор заменяет чистку зубов щёткой?
- Ополаскиватель для рта — хорошая тема?
- Когда важнее чистить зубы — утром или вечером?
- Чем ИТ-специалист отличается от среднего пациента по анамнезу относительно гигиены ротовой полости?
Переносим Angular проект на ESLint, с Prettier, Husky и lint-staged
В качестве линтера я решил использовать ESLint, так как в скором времени на него планируют перевести Angular. И в этой статье я хочу поделиться инструкцией по переходу с TSLint на ESLint, а заодно рассказать, как запускать Prettier из ESLint, как добавить правила стайл гайда AirBnB, и как сделать линтинг удобным и незаметным с помощью настройки VS Code и Git хуков.
Пособие по Ansible
Это практическое пособие познакомит вас c Ansible. Вам понадобится виртуальная или реальная машина, которая будет выступать в роли узла для Ansible. Окружение для Vagrant идет в комплекте с этим пособием.
Ansible — это программное решение для удаленного управления конфигурациями. Оно позволяет настраивать удаленные машины. Главное его отличие от других подобных систем в том, что Ansible использует существующую инфраструктуру SSH, в то время как другие (chef, puppet, и пр.) требуют установки специального PKI-окружения.
Пособие покрывает такие темы:
- Установка Ansible и Vagrant
- Файл инвенторизации
- Модули shell, copy, сбор фактов, переменные
- Запуск на группу хостов
- Плейбуки
- Пример: поднимаем кластер, устанавливаем и настраиваем Apache и балансировщик нагрузок HAproxy
- Обработка ошибок, откат
- Шаблоны конфигурации
- Роли
Ansible использует так называемый push mode: конфигурация «проталкивается» (push) с главной машины. Другие CM-системы обычно поступают наоборот – узлы «тянут» (pull) конфигурацию с главной машины.
Этот режим интересен потому что вам не нужно иметь публично доступную главную машину для удаленной настройки узлов; это узлы должны быть доступны (позже мы увидим, что скрытые узлы также могут получать конфигурацию).
Spring Boot и Filebeat локально без регистрации и смс
В данном руководстве мы рассмотрим подключение и настройку системы логирования в Spring Boot проекте и отправку логов в ELK с помощью Filebeat. Руководство предназначено для разработчиков начального уровня.
Логирование и зачем оно нужно
Когда я только начинал работать программистом один мой старший коллега любил повторять: "Если у тебя нет логов, то у тебя нет ничего". Действительно, столкнувшись с первым же багом на тестовых стендах или хуже того в промышленной среде, первое что нам будет нужно это логи приложения и удобный доступ к ним. За сами логи отвечают разработчики приложения, которые должны обеспечить логирование поведения системы таким образом, чтобы в любой момент можно было понять что происходит с системой и главное что с ней не так.
Следующий вопрос — это удобство доступа к логам. Обычно при локальном тестировании мы видим лог в консоли приложения, а на тестовым стенде — в специальных лог файлах на сервере. Удобно ли и безопасно ли каждый раз подключаться к стенду, искать нужную директорию и читать файлы логов оттуда? Практика показывает что нет и это вторая проблема которую призван решить ряд продуктов, обеспечивающих удобный доступ к логам и поиск в них важной информации. Сегодня мы очень кратко поговорим о одной из групп таких продуктов, так называемом стеке ELK (Elasticsearch — Logstash — Kibana) и более подробно о Filebeat — Open source продукте, обеспечивающем удобный механизм доставки логов до ELK.
Страшные сказки на ночь, о PCI шине
А тучи, тем временем, сгущались. Да, процессоры стали быстрее. Да, действительно, там стало больше ядер. И последнее, как раз, является серьезной архитектурной проблемой. По крайней мере, для наметившегося лидера гонки.
Кто сейчас помнит такой архаизм как «Архитектура»? Мало кто. Слово
Мои любимые трюки в JavaScript
Приветствую. Представляю вашему вниманию перевод статьи «My Favorite JavaScript Tips and Tricks», опубликованной 28 июля 2020 года автором Tapas Adhikary
Большинство языков программирования являются достаточно открытыми, чтобы предоставить разработчикам возможность делать одно и то же разными способами. JavaScript не является исключением. Зачастую, у нас есть разные пути достижения одинакового результата, что порой даже может сбивать с толку.
При этом, некоторые приёмы обладают преимуществами перед аналогами. В данной статье я привожу список моих любимых. Уверен, какие-то из них вам также будут знакомы.
Профессиональное применение инструментов разработчика Chrome: 13 советов
Работаем в IntelliJ IDEA на слабом железе
Обнаружил секретный репозиторий на гитхабе JetBrains под названием Projector. Благодаря нему написал кусок кода в IntelliJ IDEA, запущенной на Android-планшете. Рассказываю, как это повторить.
Мониторинг как сервис: модульная система для микросервисной архитектуры
Этот пост — расшифровка моего выступления с нашей секции на РИТ++. Многие просили нас сделать текстовые версии докладов оттуда. Если вы были на конференции или смотрели видео, то не найдете ничего нового. А всем остальным — добро пожаловать под кат. Расскажу, как мы пришли к такой системе, как она работает и как мы планируем её обновлять.
Опыт создания облачного решения по мониторингу цифрового киоска на Azure IoT Central
О задаче
У одного из наших клиентов есть множество инфокиосков, стоящих в разных магазинах страны. Инфокиоск – это такой компьютер в виде стойки с монитором, задача которого – дать человеку справку о чем-либо. Показать маршрут куда-либо в торговом центре, помочь выбрать что-то из каталога товаров и так далее. Инфокиоск – не обязательно обособленный компьютер, он может быть встроен в кофемашину или даже санитайзер. Терминалы заказа еды в ресторанах быстрого питания также являются инфокиосками.
Обычное желание владельца инфокиосков – понимать, что именно происходит в данный момент, работает киоск или нет, в каком состоянии он находится. Например, есть ли вода в кофе-машине? Если есть, какой ее запас?
В нашем случае задача инфокиоска – как раз помочь подошедшему человеку выбрать товар из каталога и напечатать штрих-код для последующей оплаты этого товара на кассе.
Проблема заключается в том, что подобные решения часто не имеют системы оповещения об остановке работы по разным причинам. Например, у киоска иногда заканчивается чековая лента, отваливается связь, происходит какой-то сбой, и пока персонал магазина это заметит, потенциальные клиенты пройдут мимо (в лучшем случае), а то еще и высмеют в сетях нерадивого предпринимателя.
IPSec всемогущий
Зачем нужен Refresh Token, если есть Access Token?
Spring Security — пример веб приложения с авторизацией по протоколу OAuth2 через BitBucket
Что мы хотим получить
Допустим, мы разрабатываем защищенное веб приложение, имеющее доступ к ресурсам пользователя на внешнем сервере, например, систему непрерывной интеграции, а в качестве внешнего сервера выступает Bitbucket, и мы не хотели бы хранить у себя логин и пароль пользователя от внешней системы. То есть нам необходимо авторизовать пользователя через Bitbucket, чтобы получить доступ к его учетной записи и ресурсам, дополнительно проверить, что он является пользователем нашего приложения и сделать это так, чтобы пользователь не раскрывал нам свои учетные данные от Bitbucket. Интересно как это сделать, — добро пожаловать под кат.
Развитие беспилотных технологий на железнодорожном транспорте
Рисунок 1. Степени автоматизации в соответствии с МЭК-62290
Практически все поезда, эксплуатирующие на сети ОАО «РЖД» оснащены устройством безопасности, соответствующему уровню автоматизации 1. Поезда с уровнем автоматиазции 2 уже более 20 лет успешно эксплуатируются на сети российских железных дорог, оснащено несколько тысяч локомотивов. Данный уровень реализуется за счет алгоритмов управления тягой и торможения энергооптимального ведения поезда по заданному маршруту с учетом расписания и показаний систем автоматической локомотивной сигнализации, принимаемых по индуктивному каналу с рельсовых цепей. Применение 2 уровня понижает утомляемость машиниста и дает выигрыш по энергопотреблению и точности исполнения графика движения.
Уровень 3 предполагает возможное отсутствие машиниста в кабине, что требует внедрения системы технического зрения.
Уровень 4 предполагает полное отсутствие машиниста на борту, что требует существенного изменения конструкции локомотива (электропоезда). Например, на борту установлены автоматические выключатели, которые будет невозможно взвести снова при их срабатывании без присутствия человека на борту.
Русскоязычная документация по Angular
Это результат 6 месяцев работы, нескольких безуспешных попыток написать все необходимые remark плагины, кастомного парсера и цепочки из двух Magic Strings, позволяющих делать перевод Markdown файлов без потери форматирования.
Эффективные надежные микросервисы
В Одноклассниках запросы пользователей обслуживает более 200 видов уникальных типов сервисов. Многие из них совмещают в одном JVM-процессе бизнес-логику и распределенную отказоустойчивую базу данных Cassandra, превращая обычный микросервис в микросервис с состоянием. Это позволяет нам строить высоконагруженные сервисы, управляющие сотнями миллиардов записей с миллионами операций в секунду на них.
Какие преимущества появляются при совмещении бизнес-логики и БД? Какие нюансы надо учесть, прибегая к такому подходу? Что с надёжностью и доступностью сервисов? Расскажем подробно об этом всём.
IPIP IPsec VPN туннель между Linux машиной и Mikrotik за NAT провайдера
upd: Отличный разбор про устройство современного стэка IPsec протоколов ESPv3 и IKEv2 опубликовал stargrave2. Рекомендую почитать.
Linux: Ubuntu 18.04.4 LTS (GNU/Linux 4.15.0-91-generic x86_64)
- Eth0 1.1.1.1/32 внешний IP
- ipip-ipsec0 192.168.0.1/30 будет наш туннель
Mikrotik: CCR 1009, RouterOS 6.46.5
- Eth0 10.0.0.2/30 внутренний IP от провайдера. Внешний IP NAT провайдера динамический.
- ipip-ipsec0 192.168.0.2/30 будет наш туннель
Информация
- В рейтинге
- Не участвует
- Откуда
- Санкт-Петербург, Санкт-Петербург и область, Россия
- Дата рождения
- Зарегистрирован
- Активность