Как стать автором
Обновить
0
0
Юрий @M1ndgr3p

Пользователь

Отправить сообщение

Что подарить на 2020: новогодний гид Madrobots

Время на прочтение5 мин
Количество просмотров7.9K


Хочется, чтобы забот перед Новым годом было меньше, а праздничного настроения — больше. Не всегда это получается. Нужно закрывать месяц. Нужно закрывать год. Если задуматься, нужно закрывать целое десятилетие. И если вы еще не успели подобрать все-все-все подарки, мы в Madrobots готовы прийти на помощь.

Под катом — динозавр, робот-шар, спорткар начала XX века и еще несколько любопытных вариантов.
Читать дальше →
Всего голосов 18: ↑11 и ↓7+10
Комментарии0

Видеозвонки под капотом: от миллионов в сутки до 100 участников в одной конференции

Время на прочтение21 мин
Количество просмотров11K
Сейчас, кажется, невозможно найти мессенджер без функции звонков. Это удобно для пользователей, потому что все коммуникации можно вести в одном приложении. Если объединить всю доступную в СМИ статистику, то получится, что люди разговаривают через интернет более миллиарда минут в день. И по мере развития технологий растет доля видеосвязи, потому что видео лучше передает эмоции собеседника и позволяет создать эффект присутствия.

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

Руководитель разработки платформ Видео и Лента Александр Тоболь (alatobol) покажет, что под капотом у сервиса видеозвонков, какие технологии и хаки применить, чтобы сделать свой сервер конференций, и как правильно передавать видео. Заходите под кат и узнаете, как перевести сервис звонков один на один к групповым звонкам на 100 человек и зачем вообще нужна поддержка такого количества участников.
Всего голосов 34: ↑33 и ↓1+45
Комментарии2

Балансировка нагрузки в Zimbra Open-Source Edition при помощи HAProxy

Время на прочтение5 мин
Количество просмотров3.4K
Одной из главных задач при построении масштабных инфраструктур Zimbra OSE является грамотная балансировка нагрузки. Помимо того, что она повышает отказоустойчивость сервиса, без балансировки нагрузки невозможно обеспечить одинаковую отзывчивость сервиса для всех пользователей. Для того, чтобы решить эту задачу, используются балансировщики нагрузки — программные и аппаратные решения, перераспределяющие запросы между серверами. Среди них есть как довольно примитивные, вроде RoundRobin, который просто каждый следующий запрос направляет следующему в списке серверу, а есть и более продвинутые, например HAProxy, который широко применяется в высоконагруженных вычислительных инфраструктурах из-за ряда весомых достоинств. Давайте же посмотрим на то, как можно обеспечить совместную работу балансировщика нагрузки HAProxy и Zimbra OSE.

image
Читать дальше →
Всего голосов 3: ↑2 и ↓1+5
Комментарии0

А/Б тестирование, пайплайн и ритейл: брендированная четверть по Big Data от GeekBrains и X5 Retail Group

Время на прочтение5 мин
Количество просмотров6.7K


Технологии Big Data применяются сейчас повсеместно — в промышленности, медицине, бизнесе, развлечениях. Так, без анализа больших данных не смогут нормально работать крупные ритейлеры, упадут продажи в Amazon, будут не в состоянии предсказывать погоду на многие дни, недели и месяцы наперед метеорологи. Логично, что специалисты по большим данным сейчас нарасхват, причем спрос постоянно растет.
Читать дальше →
Всего голосов 33: ↑31 и ↓2+45
Комментарии0

Проекция на потолок: впечатления после недели использования проектора, поставленного «на торец»

Время на прочтение5 мин
Количество просмотров42K

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


Так, ограничения по ориентации проектора, накладываемые особенностями системы охлаждения «классических» ламповых проекторов, оказались сняты, а возможность вертикального расположения проекторов оказалась востребована при проецировании на купол планетария, музея, на столик в кафе, для видеомаппинга на объемные фигуры и других задач. Все это в первую очередь оценили профессиональные пользователи инсталляционных проекторов и проекторов точечной подсветки.




С тех пор, как мне в руки попал недавно выпущенный уже домашний лазерник Epson EF-100, я как следует «распробовал» такой вариант проекции и лично протестировал, каково это – превратить белый потолок в 120-дюймовый экран. Об этом кратко расскажу в сегодняшнем «пятничном» посте (под катом около 6МБ картинок).

Читать дальше →
Всего голосов 29: ↑25 и ↓4+30
Комментарии32

«Замести следы и уйти на выходные»: как удалить себя из большинства популярных сервисов

Время на прочтение4 мин
Количество просмотров46K
С решением задачи поможет JustDeleteMe — это каталог кратких инструкций и прямых ссылок для удаления пользовательских аккаунтов на популярных сайтах. Поговорим о возможностях инструмента, а также обсудим, как обстоят дела с запросами на удаление персональных данных в целом.

Читать дальше →
Всего голосов 10: ↑9 и ↓1+11
Комментарии16

Badoo Jira API Client: магия в Jira на PHP

Время на прочтение12 мин
Количество просмотров8.9K
Если в строке поиска на Хабре ввести “Jira Badoo”, результаты займут не одну страницу: мы упоминаем её почти везде, потому что она играет важную роль в наших процессах. Причём каждый из нас хочет от нее немножко разного.



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

И всё это сегодня доступно и происходит автоматически. Большую часть магии мы реализовали на PHP с помощью постоянно развивающегося API Jira и с использованием её webhook’а. И сегодня мы хотим поделиться с сообществом нашей версией клиента для этого API.

Сначала мы хотели просто рассказать об идеях и подходе, который мы используем, а потом решили, что к такой статье решительно не хватает кода для наглядности. Так появилась open-source-версия Badoo Jira PHP Client. Огромное спасибо ShaggyRatte за то, что помог с ее описанием. И добро пожаловать под кат!
Читать дальше →
Всего голосов 51: ↑49 и ↓2+47
Комментарии12

Хождение по мукам или долгая история одной попытки восстановления данных

Время на прочтение5 мин
Количество просмотров35K
На дворе стоял 2019 год. В нашу лабораторию поступил не совсем обычный для нашего времени накопитель QUANTUM FIREBALL Plus KA емкостью 9.1Гб. Со слов владельца накопителя отказ случился в далеком 2004 году по вине вышедшего из строя блока питания, который прихватил за собой жесткий диск и другие компоненты ПК. Далее были хождения по различным сервисам с попытками отремонтировать накопитель и восстановить данные, которые не увенчались успехом. Где-то обещали дешево, но так и не решили проблему, где-то слишком дорого и клиент не пожелал восстанавливать данные, но в итоге диск прошел путь через множество сервисных центров. Неоднократно терялся, но благодаря тому, что владелец заблаговременно позаботился о записи информации с различных наклеек на накопителе ему удалось добиться, чтобы именно его жесткий диск был возвращен из некоторых сервисных центров. Хождения не прошли бесследно, на оригинальной плате контроллера остались множественные следы пайки, а также визуально ощущался недостаток SMD элементов (забегая вперед скажу, что это наименьшая из проблем этого накопителя).


Рис. 1 HDD Quantum Fireball Plus KA 9,1Гб
Читать дальше →
Всего голосов 102: ↑102 и ↓0+102
Комментарии107

Заворачиваем весь трафик локальной сети в vpn без ограничения скорости

Время на прочтение5 мин
Количество просмотров81K

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

Для этой цели можно просто настроить VPN-клиент на шлюзе, если это позволяет роутер. Но такое решение черевато последствиями в виде уменьшения скорости работы Интернета, повышенной нагрузки на роутер, к тому же некоторые клиенты отправляют весь трафик через основное соединение сразу же в случае отключения от VPN. Не стоит забывать, что даже ведущие VPN-провайдеры не могут обеспечить 100% аптайм своих серверов.

Итак, каковы наши цели:

  • пропускать через VPN весь без исключения исходящий трафик
  • делать это с максимально возможной скоростью
  • не зависеть от временных неполадок VPN-провайдера
  • максимум анонимности в Интернете
Читать дальше →
Всего голосов 25: ↑20 и ↓5+15
Комментарии23

Deploy SonarQube Server

Время на прочтение5 мин
Количество просмотров10K

Привет, хаброжители!


В данном руководстве хочу изложить пошаговую настройку по развёртыванию платформы для непрерывного анализа и измерения качества кода. Подобных статей в сети достаточно много, но я хочу выделить лишь главное, чтобы все новички с первого раза смогли с ней разобраться. Ставить будем SonarQube 7.9 с PostgreSQL 10.

Читать дальше →
Всего голосов 10: ↑9 и ↓1+8
Комментарии9

Как создать эффективные скриншоты для приложения в App Store

Время на прочтение4 мин
Количество просмотров5.6K
Каким бы ни было мобильное приложение для App Store, оно должно быть представлено аудитории таким образом, чтобы повысить его популярность и тем самым увеличить кликабельность. А для этого необходимо создать такую рекламную страницу приложения, которая будет разительно отличаться от конкурентных приложений на рынке.

Рекламная страница содержит в себе различные виды информации. Однако, как показывает практика, люди изначально предпочитают сканировать графическую информацию, а не считывать конкретный текст. Скриншоты приложения — это то, что бросается в глаза читателям в первую очередь. Эта задача может показаться сложной и требовательной, поскольку у вас есть всего несколько слотов для скриншотов и не во все удастся поместить всё, то что бы вы хотели сказать о вашем приложении. Тем не менее, если включить творческую мысль на полную, то есть большая вероятность сотворить шедевр. В связи с этим, мы хотим поделиться с вами несколькими шагами, которые помогут создать скриншоты для вашего приложения.
Читать дальше →
Всего голосов 12: ↑10 и ↓2+8
Комментарии2

Личный бренд в помощь бизнесу: 8 шагов для создания концепции

Время на прочтение4 мин
Количество просмотров6.1K


Запрос на аутентичность и человеческий контакт в социальных сетях привел к популярности личного бренда. Множество компаний и частных специалистов продают свои продукты с его помощью. Личный бренд не имеет «порога вхождения», он давно перестал быть атрибутом только знаменитостей. Неважно, фрилансер ли вы, который работает без сотрудников, или представитель международной компании, — построить личный бренд может каждый. Digital Business School делится 8 шагами, которые помогут это сделать.

1. Ответьте на вопрос «кто я?»


Первый шаг — это самоидентификация. Опишите себя, нарисуйте детализированную картину своей личности. Если вы не очень любите саморефлексию, то этот шаг может вызвать трудности. Часто предприниматели обращают всё внимание на компанию, продукт, заказчиков. Это замечательно, но сейчас самое время внимательно изучить и рассмотреть себя. Выпишите все исходные. Не волнуйтесь: правильных ответов не существует. Ваше видение может меняться в процессе, главное все-таки его сформулировать.

После того, как вы описали себя с собственной точки зрения, обратитесь с этим вопросом к близким. Выбирайте самых откровенных, готовых говорить вам всю правду, а не заваливать комплиментами. На этом этапе вам нужен максимально беспристрастный взгляд.
Читать дальше →
Всего голосов 13: ↑10 и ↓3+7
Комментарии0

SonarQube и IntelliJ IDEA: правильная интеграция

Время на прочтение7 мин
Количество просмотров43K

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


На данный момент этот инструмент плотно вошёл в нашу жизнь, следя за единым стилем кода и уберегая от самых разных видов ошибок. Поиск ошибок происходит при сборке на CI или перед принятием pull request в версионное хранилище. Все найденные ошибки отображаются в Web-интерфейсе, где можно изучать их и управлять ими.


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


Для того, чтобы облегчить жизнь разработчикам нашей компании, использующим IntelliJ IDEA, я составил инструкцию. А в дальнейшем понял, что она может быть полезной более широкому кругу специалистов, и решил выложить её в публичный доступ.

Осторожно, много скриншотов
Всего голосов 18: ↑17 и ↓1+16
Комментарии1

Предварительная загрузка шрифтов

Время на прочтение6 мин
Количество просмотров22K
Автор статьи, перевод которой мы сегодня публикуем, хочет рассказать о том, почему он выполняет предварительную загрузку шрифтов даже тогда, когда не должен этого делать.

Когда он создавал тот сайт, на котором опубликован оригинал этого материала, он не собирался использовать на нём никаких собственных шрифтов. Это неизбежно повлияло бы на производительность сайта, пусть и не очень сильно. Автор статьи говорит, что он стремился к тому, чтобы сделать быстрый сайт. Однако в итоге решено было использовать один особый шрифт для заголовков страниц и при этом постараться сделать так, чтобы данное решение как можно меньше повлияло бы на производительность проекта.
Читать дальше →
Всего голосов 30: ↑30 и ↓0+30
Комментарии9

Понимание брокеров сообщений. Изучение механики обмена сообщениями посредством ActiveMQ и Kafka. Глава 2. ActiveMQ

Время на прочтение27 мин
Количество просмотров129K
Продолжение перевода небольшой книги:
«Understanding Message Brokers»,
автор: Jakub Korab, издательство: O'Reilly Media, Inc., дата издания: June 2017, ISBN: 9781492049296.

Предыдущая часть: Понимание брокеров сообщений. Изучение механики обмена сообщениями посредством ActiveMQ и Kafka. Глава 1. Введение
Читать дальше →
Всего голосов 9: ↑9 и ↓0+9
Комментарии1

Чем опасны отслеживающие cookies если вам и вправду нечего скрывать

Время на прочтение2 мин
Количество просмотров20K
В последнем подкасте Habr Weekly #21 обсуждалась тема отслеживающих cookies и вопрос их нежелательности. Бытуют мнения о сомнительности вреда таких куков если скрывать и вправду нечего. Такая позиция определенно не выдерживает критики.

Читать дальше →
Всего голосов 20: ↑14 и ↓6+8
Комментарии24

Запускаем systemd в контейнере

Время на прочтение6 мин
Количество просмотров26K
Мы давно следим за темой использования systemd в контейнерах. Еще в 2014 году наш инженер по безопасности Дэниел Уолш (Daniel Walsh) написал статью Running systemd within a Docker Container, а еще через пару лет – другую, которая называлась Running systemd in a non-privileged container, в которой он констатировал, что ситуация не очень-то и улучшилась. В частности, он писал, что «к сожалению, и два года спустя, если погуглить «Docker system», то первым делом всплывает всё та же его старая статья. Значит, пора что-то менять». Кроме того, мы уже как-то рассказывали о конфликте между разработчиками Docker и systemd.



В этой статье мы покажем, что изменилось за прошедшее время и как нам может помочь в этом вопросе Podman.
Читать дальше: Запускаем systemd в контейнере
Всего голосов 20: ↑16 и ↓4+12
Комментарии36

Понимание брокеров сообщений. Изучение механики обмена сообщениями посредством ActiveMQ и Kafka. Глава 3. Kafka

Время на прочтение20 мин
Количество просмотров103K
Продолжение перевода небольшой книги:
«Understanding Message Brokers»,
автор: Jakub Korab, издательство: O'Reilly Media, Inc., дата издания: June 2017, ISBN: 9781492049296.

Предыдущая часть: Понимание брокеров сообщений. Изучение механики обмена сообщениями посредством ActiveMQ и Kafka. Глава 2. ActiveMQ
Читать дальше →
Всего голосов 15: ↑15 и ↓0+15
Комментарии6

6 уроков, извлечённых из поиска решения масштабной проблемы на gitlab.com. Часть 2

Время на прочтение8 мин
Количество просмотров4.4K
Представляем вашему вниманию вторую часть перевода материала о борьбе команды gitlab.com с тиранией времени.



→ Вот, кстати, первая часть.
Читать дальше →
Всего голосов 36: ↑36 и ↓0+36
Комментарии0

Clean Decomposition

Время на прочтение4 мин
Количество просмотров5.3K
В данной статье я хочу рассмотреть подход к разбиению задач на подзадачи при использовании Clean Architecture.

С проблемой декомпозиции столкнулась команда мобильной разработки компании NullGravity и ниже то как мы ее решали и что в итоге получилось.
Читать дальше →
Всего голосов 7: ↑7 и ↓0+7
Комментарии7
1
23 ...

Информация

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