Социальные сети Рунета
Пятница, 19 апреля 2024

Нам нужен другой 1С-Битрикс, часть 2 После публикации первой статьи в деле борьбы за права причастных к 1С-Битриксу появились соподвижники Dekmabot и Sergik_DS со статьями «Почему Битрикс — Битрикс» и «За что, Битрикс? Или сказочный мир 1С», чему я несказанно рад. Как там пишут в руководствах по зачинанию старт...

Southbridge в Челябинске и Битрикс в Kubernetes В Челябинске проходят митапы системных администраторов Sysadminka, и на последнем из них я делал доклад о нашем решении для работы приложений на 1С-Битрикс в Kubernetes. Битрикс, Kubernetes, Сeph — отличная смесь? Расскажу, как мы из всего этого собрали работающее решение. П...

Автоматизация замены дисков с помощью Ansible Всем привет. Я работаю ведущим системным администратором в ОК и отвечаю за стабильную работу портала. Хочу рассказать о том, как мы выстроили процесс автоматической замены дисков, а затем, как исключили из этого процесса администратора и заменили его ботом. Эта статья явл...

Как выбрать VPS О том, зачем нужен и какой бывает веб-хостинг читайте в нашем посте «Хостинг: варианты, сравнения, пользовательская статистика». Здесь же мы сразу перейдём к теме статьи, название которой содержательней любого вступления.  Конечно, в статье мы будем приводить примеры из с...

Нагрузочное тестирование CPU и SSD облачных хостеров: сравниваем Selectel, Servers, MCS и Я.Облако Мы постоянно работаем с интернет-магазинами и сервисами и периодически у наших клиентов встает вопрос, где же им хостить свои проекты. Вопросы эти более чем обыденные: какой хостинг выбрать, в каком регионе, что решать с конфигурацией. В последние годы все большее предпочт...

[Перевод] Как использовать systemd-nspawn для восстановления Linux-системы Перевод статьи подготовлен специально для студентов курса «Администратор Linux». Разбираемся со способностью systemd запускать контейнеры для восстановления корневой файловой системы поврежденной системы. До тех пор пока будут существовать системы GNU/Linux, системным ...

Почему Битрикс — Битрикс После недавней статьи про то, что Битрикс не нравится разработчикам, меня посетила мысль что всё не так просто, и я захотел разобраться, за то ли мы ругаем Битрикс, и нужно ли его ругать. Ниже мы порассуждаем что не так, но начну я с предыстории. Читать дальше →

Битрикс и обновление MariaDB до последней стабильной версии Доброго времени суток, уважаемые Хабровчане! Разрешите представиться, Александр. Системный администратор одной маленькой но гордой WEB-студии. Мы очень хотим, чтобы все работало быстро, безопасно и со свежим софтом. Для этого даже подняли на внутриофисном компе связку nagios...

Некоторые аспекты мониторинга MS SQL Server. Рекомендации по настройке флагов трассировки Предисловие Довольно часто пользователи, разработчики и администраторы СУБД MS SQL Server сталкиваются с проблемами производительности БД или СУБД в целом, поэтому весьма актуальным является мониторинг MS SQL Server. Данная статья является дополнением к статье Использование ...

[Из песочницы] Нам нужен другой Битрикс Как быстро определить, что на отдельно взятый сайт забили, и им никто не занимается? Если в подвале главной страницы в копирайте стоит не текущий год, а старый, то именно в этом году опека над сайтом скоропостижно оборвалась. Так и на странице входа в актуальную админку Битр...

По вашим заявкам: профессиональный тест SSD-накопителей Kingston DC500R и DC500M Вы просили показать реальные примеры использования наших корпоративных SSD-накопителей и профессиональные тесты. Предоставляем вашему вниманию подробный обзор наших SSD-накопителей Kingston DC500R и DC500M от нашего партнера Truesystems. Эксперты Truesystems собрали реальный...

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

Краш-тесты СХД AERODISK ENGINE N2, проверка на прочность Всем привет! Этой статьей компания AERODISK открывает блог на Хабре. Ура, товарищи! В предыдущих статьях на Хабре были рассмотрены вопросы об архитектуре и базовой настройке СХД. В этой статье мы рассмотрим вопрос, который ранее не был освещен, но его часто задавали – об от...

Automation Day, или как мы наращиваем слой автотестов Как часто, работая в команде, вы сталкиваетесь с ситуацией, когда часть задач по автоматизации тестирования попадает в бэклог и остается в ручном тестировании навсегда? Мы постоянно сталкиваемся с такой проблемой, и причины всегда разные: не успели / не хватило времени, а ...

Монолит для сотен версий клиентов: как мы пишем и поддерживаем тесты Всем привет! Я бэкенд-разработчик в серверной команде Badoo. На прошлогодней конференции HighLoad я выступал с докладом, текстовым вариантом которого и хочу поделиться с вами. Этот пост будет наиболее полезен тем, кто самостоятельно пишет тесты для бэкенда и испытывает пр...

[Перевод] Недоступная роскошь от Intel: Core i9-9990XE с 14 ядрами на частоте 5,0 ГГц (2 часть) Недоступная роскошь от Intel: Core i9-9990XE с 14 ядрами на частоте 5,0 ГГц (1 часть) Системные тесты В разделе «Системные тесты» основное внимание уделяется тестированию в реальных условиях, с которыми сталкивается потребитель, с небольшим уклоном в пропускную способность....

Конференция для фанатов DevOps-подхода Речь, конечно, о DevOpsConf. Если не вдаваться в детали, то 30 сентября и 1 октября мы проведем конференцию об объединении процессов разработки, тестирования и эксплуатации, а если вдаваться — прошу под кат. В рамках DevOps-подхода все части технологического развития проект...

Honor V20 появился в AnTuTu На просторах интернета появилась новость о том, что новый смартфон Honor V20, который китайская компания Huawei пока что не анонсировала, набирает слишком мало баллов в синтетическом тесте AnTuTu. Конечно, новость очень странная, ведь как можно оценивать продукт в разрезе пр...

Web-консоль Plesk Obsidian Недавно мы уже публиковали обзор Plesk — панели управления хостингом и сайтами. По ссылке можно посмотреть основные сведения о консоли и разработчике, познакомиться c функциями для разных групп пользователей и интерфейсом для администратора сайта. В этой статье мы расскажем ...

Зависимость производительности кода от контекста объявления переменных в JavaScript Изначально эта статья задумывалась как небольшой бенчмарк для собственного использования, да и вообще статьёй быть не планировалась, однако, в процессе проведения замеров всплыли некоторые интересные особенности в реализации архитектуры JavaScript, сильно влияющие на произв...

Storage Party, 8 августа, г. Москва Всем привет! 8 августа вместе с ASBIS мы проведем Storage Party. Соберемся в ресторане «Пилзнер», чтобы пообщаться за технологии СХД, выпить вкусного пива и просто хорошо провести время. Стартуем в 15.30. Участие бесплатное, но нужно зарегистрироваться и дождаться подтве...

Как мы выбирали себе ServiceDesk. Часть 3 Наши “хождения по мукам” подходят к концу. Эта статья завершает цикл нашего выбора оптимальной системы для оцифровки бизнеса. Всем привет! Напомню, что мы — установщики кондиционеров, которые решили найти для себя оптимальный ServiceDesk. Ранее работали в совместных календа...

[Перевод] Интересные новинки Vue 3 Вместо предисловия Vue используется во всех проектах FunCorp. Мы внимательно следим за развитием фреймворка, постоянно улучшаем процесс разработки и внедряем лучшие практики. И, конечно же, мы не могли пройти мимо и не перевести статью Филиппа Раковски, сооснователя VueStore...

[Из песочницы] Придумываем технологию Powercheck Меня всегда интересовало как устроен и работает индикатор заряда на батарейках Duracell: А также почему под ним указано, что тестировать нужно при 21°С. Но перед тем как посмотреть на решение, которое используется в батарейках, давайте попробуем прийти к нему самостоятельн...

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

[Перевод] Краткий курс по управлению удаленными командами Всем привет! Я уже давненько не писал и подзабыл, как это делается, но хочу поделиться информацией, которая многим может пригодиться. Ведь ко мне постоянно пристают с вопросами, вроде: ● «Стоит ли работать удаленно?» ● «Как вы организовали удаленную работу для своей команды?...

Как мы в ЦИАН укрощали терабайты логов Всем привет, меня зовут Александр, я работаю в ЦИАН инженером и занимаюсь системным администрированием и автоматизацией инфраструктурных процессов. В комментариях к одной из прошлых статей нас попросили рассказать, откуда мы берем 4 ТБ логов в день и что с ними делаем. Да,...

Первый тест производительности "Метро: Исход". Оценка технологий DXR и DLSS в игре Как и предупреждали разработчики, для 60 кадров нужно мощное железо

В Intel считают, что добавление ядер не увеличивает производительность процессоров в играх Главный стратег Intel по развитию производительности продуктов Райан Шраут (Ryan Shrout) хочет, чтобы мир знал, что большее количество ядер процессора не обязательно означает лучшую производительность. Не так давно он опубликовал в полуофициальном блоге Performance at Intel,...

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

Деливерим фичи быстрее. Опыт Android-разработки в Badoo Всем привет! Меня зовут Анатолий Варивончик. Я работаю в Badoo уже больше года, а мой общий стаж Android-разработки — более пяти лет. В своей практике я и мои коллеги часто сталкиваемся с необходимостью тестировать идеи максимально быстро и просто. Мы не хотим тратить много...

«Тушить» ли сервера, если «загорелся» смоук тест датацентра? Что бы вы почувствовали, если в один прекрасный летний день дата-центр с вашим оборудованием стал бы выглядеть вот так? Всем привет! Меня зовут Дмитрий Самсонов, я работаю ведущим системным администратором в «Одноклассниках». На фотографии один из четырёх дата-центров, гд...

Бойтесь уязвимостей, воркэраунды приносящих. Часть 1: FragmentSmack/SegmentSmack Всем привет! Меня зовут Дмитрий Самсонов, я работаю ведущим системным администратором в «Одноклассниках». У нас более 7 тыс. физических серверов, 11 тыс. контейнеров в нашем облаке и 200 приложений, которые в различной конфигурации формируют 700 различных кластеров. Подавл...

Битрикс для программиста и менеджера: любовь и ненависть Здравствуйте. Я уже давно не пишу на php, но то и дело натыкаюсь на интернет-магазины на системе управления сайтами Битрикс. И я вспоминаю о своих исследованиях. Битрикс не любят примерно так, как Москву начала 2000-х: успешный и денежный проект, объективно ничем не заслужи...

Обмен сайта на Битрикс и 1С: решение основных проблем В этой статье мы собрали основные проблемы обмена с 1с и простые чек-листы по их решению Статья будет полезна как программистам 1С, так и Битрикс разработчикам. Текст структурирован по принципу: проблема — варианты решения. Если есть конкретная задача, то сразу переходите п...

Как подключить галерею PhotoSwipe в WebView android Я не профессиональный разработчик, хотя и учился на программиста. Сейчас работаю системным администратором и планирую переходить в разработчики. Пишу для себя приложение, которое парсит один из популярных сайтов тематики IT и показывает статьи в нативном приложении android. ...

Отображение текста в Android Отображение текстовой информации — наверное, самая базовая и важная часть многих Android-приложений. В данной статье пойдет речь о TextView. Каждый разработчик, начиная с «Hello World», постоянно сталкивается с этим элементом пользовательского интерфейса. Периодически в раб...

[Из песочницы] Ревизия уровней доступа пользователей с помощью Power BI на примере CMS Битрикс (БУС) В статье показан пример применения Power BI для анализа доступов пользователей на сайте под управлением 1С-Битрикс. Читать дальше →

Сравнительное тестирование PostgreSQL на FreeBSD, CentOS, Ubuntu Debian и openSUSE Привет, Хабр! Представляю вашему вниманию перевод оригинальной статьи «PostgreSQL benchmark on FreeBSD, CentOS, Ubuntu Debian and openSUSE» автора Martin Kováčik. В ней рассматриваются тесты СУБД PostgreSQL 10.1 в приближенных к реальным условиям средах на различных unix-сис...

[Перевод] Как повысить производительность фронтенда веб-приложения: пять советов Во многих своих фронтендовых проектах я в какой-то момент сталкивался со снижением производительности — обычно такое случается, когда возрастает сложность приложения, и это нормально. Тем не менее, разработчики всё же ответственны за производительность, поэтому в своей ста...

Реставрируем фотографии с помощью нейросетей Всем привет, я работаю программистом-исследователем в команде компьютерного зрения Mail.ru Group. Ко Дню Победы в этом году мы решили сделать проект по реставрации военных фотографий. Что такое реставрация фотографий? Она состоит из трех этапов: находим все дефекты изобр...

Влияние Transparent Huge Pages на производительность системы Статья публикуется от имени Ахальцева Иоанна, Jiga Tinkoff.ru сегодня — это не просто банк, это IT-компания. Она предоставляет не только банковские услуги, но ещё выстраивает экосистему вокруг них. Мы в Tinkoff.ru заключаем партнерство с различными сервисами для повышения к...

Общие принципы работы QEMU-KVM Мое текущее понимание: 1) KVM KVM (Kernel-based Virtual Machine) – гипервизор (VMM – Virtual Machine Manager), работающий в виде модуля на ОС Linux. Гипервизор нужен для того, чтобы запускать некий софт в несуществующей (виртуальной) среде и при этом, скрывать от этого с...

Как бороться с flaky тестами в opensource-сообществе С проблемой flaky-тестов сталкиваются многие проекты, и тема эта уже не раз поднималась на Хабре. Тесты, не определившиеся со своим состоянием, постоянно отнимают не только машинное время, но и время разработчиков и тестировщиков. И если в коммерческой компании можно выделит...

[Из песочницы] Права в Linux (chown, chmod, SUID, GUID, sticky bit, ACL, umask) Всем привет. Это перевод статьи из книги RedHat RHCSA RHCE 7 RedHat Enterprise Linux 7 EX200 and EX300. От себя: Надеюсь статья будет полезна не только начинающим, но и поможет более опытным администраторам упорядочить свои знания. Итак, поехали. Читать дальше →

Учимся писать Waves смарт-контракты на RIDE и RIDE4DAPPS. Часть 2 (DAO — Decentralized Autonomous Organization) Всем привет! В первой части мы подробно рассмотрели как создавать и работать с dApp (децентрализованным приложением) в Waves RIDE IDE. Давайте сейчас немного потестируем разобраный пример. Этап 3. Тестирование dApp аккаунта Читать дальше →

Can I haz? Ударим программированием на типах по дженерикам Привет, Хабр. В прошлый раз мы описали Has-паттерн, обрисовали проблемы, которые он решает, и написали несколько конкретных инстансов: instance HasDbConfig AppConfig where getDbConfig = dbConfig instance HasWebServerConfig AppConfig where getWebServerConfig = webServerCo...

Открытый вебинар: «SSH/NC/Socat: tips & tricks» Всем доброго времени суток! Уже на следующей неделе у нас стартует очередная группа «Администратор Linux», в связи с чем мы провели ряд мероприятий. Одно из них — открытый урок на тему «SSH/NC/Socat: tips & tricks». На нём мы вспомнили, что такое ssh, его историю и пред...

[Перевод] Функциональное программирование: дурацкая игрушка, которая убивает производительность труда. Часть 1 Возможно, вы уже слышали о так называемом «функциональном» программировании. Возможно, вы даже подумываете о том, что вам стоит его как-нибудь попробовать. Ни в коем случае этого не делайте! Функциональное программирование полно недочётов, оно не подходит для реальных пр...

[Из песочницы] Работа с JSON RPC в Symfony 4 Всем привет, сегодня поговорим о том, как подружить Symfony 4, JSON RPC и OpenAPI 3. Данная статья рассчитана не на новичков, вы уже должны понимать как работать с Symfony, Depedency Injection и другими «страшными» вещами. Сегодня рассмотрим одну конкретную реализацию JSON ...

С новым годом, с новым MQTT/UDP Привет. Как я уже писал недавно (Первая краткая статья о MQTT/UDP), MQTT/UDP — протокол на базе MQTT, но: Ходит поверх UDP broadcast (не нужен брокер, почти не нужна конфигурация) До неприличия простой в реализации (10 строк на си + UDP/IP стек — и вы отправляете данные с...

[Перевод] Повторная децентрализация веба. На этот раз навсегда В последние годы веб стал сильно централизованным. Чтобы восстановить свободу и контроль над цифровыми аспектами нашей жизни, нужно понять, как мы дошли до такого состояния и как вернуться на правильный путь. В этой статье рассказана история децентрализации веба и роль Тима ...

Uibook — инструмент для визуального тестирования React-компонентов с медиа-запросами Всем привет! Меня зовут Виталий Ризо, я фронтенд-разработчик в «Амплифере». Мы сделали Uibook — простой инструмент для визуального тестирования React-компонентов с реальными медиа-запросами. Расскажу, как он работает и чем может быть полезен вам. Читать дальше →

Новая версия ПО Cinebench R15 позволяет корректнее тестировать процессоры с большим количеством ядер Тест Cinebench R15 часто используется для оценки производительности процессоров. Проблема в том, что тест старый, и современные многоядерные CPU проходят его буквально за секунды. А это означает, что всё время теста они работают на максимальных частотах. Это показатель ...

Инструкция: как тестировать ansible-роли и узнавать о проблемах до продакшена Всем привет! Я работаю DevOps-инженером в сервисе бронирования отелей Ostrovok.ru. В этой статье я хочу рассказать о нашем опыте тестирования ansible-ролей. В Ostrovok.ru в качестве менеджера конфигураций мы используем ansible. Недавно мы пришли к необходимости тестирования ...

Написание Unit тестов на Swift для проверки асинхронных задач Сегодня хочу вам быстренько рассказать как тестировать асинхронный код. Представьте ситуацию, что вам надо загрузить данные из интернета и проверить все ли работает нормально, либо еще какую-нибудь задачу, которая выполняется асинхронно. И как же его протестировать? Что если...

Оптимизация производительности .NET (C#) приложений Статей с подобным заголовком достаточно много, поэтому постараюсь избежать банальных тем. Надеюсь, что даже очень опытные разработчики найдут здесь что-то новое для себя. В данной статье будут рассмотрены только простые механизмы и подходы к оптимизации, которые позволят п...

[Перевод] Настройка НА-кластера Kubernetes на «голом железе», мониторинг, логи и примеры использования. Часть 3/3 Часть 1/3 тут. Часть 2/3 тут. Всем привет! А вот и третья часть руководства «Kubernetes на «голом железе»! Я уделю внимание мониторингу кластера и сбору логов, также мы запустим тестовое приложение для использования предварительно настроенных компонентов кластера. Затем про...

Netramesh – легковесное service mesh решение В процессе перехода от монолитного приложения к микросервисной архитектуре мы сталкиваемся с новыми проблемами. В монолитном приложении обычно достаточно просто определить, в какой части системы произошла ошибка. Скорее всего, проблема в коде самого монолита, либо в базе дан...

[Из песочницы] Неявные (implicit) параметры и преобразования в Scala Пробежавшись по предыдущим статьям на Хабре, тыц и тыц так и не удалось в быстром режиме понять, что делает неявность (implicit) в Scala. Попробуем разобраться вместе. Итак, implicit в Scala позволяют избежать вызывания методов или явных ссылок на переменные, и взамен это...

От ежедневных аварий к стабильности: Informatica 10 глазами админа ETL-компонента хранилища данных часто оказывается в тени самого хранилища и ей уделяется меньше внимания, чем главной базе данных или фронт-компоненте, BI, формировании отчётов. При этом с точки зрения механики наполнения хранилища данными, ETL играет ключевую роль и требу...

Настройка vscode под stm32 на примере отладочной платы stm32f429i-disco Всем привет! Сегодня рассмотрим настройку удобной и красивой среды разработки для программиста микроконтроллеров с помощью набора полностью бесплатных инструментов разработки. Все шаги проверены на виртуальной машине со свежеустановленной Ubuntu 16.04 xenial desktop. Подраз...

Высокая производительность и нативное партиционирование: Zabbix с поддержкой TimescaleDB Zabbix — это система мониторинга. Как и любая другая система, она сталкивается с тремя основными проблемами всех систем мониторинга: сбор и обработка данных, хранение истории, ее очистка. Этапы получения, обработки и записи данных занимают время. Немного, но для крупной сис...

Улучшение производительности Zabbix + PostgreSQL при помощи партиционирования и индексирования Примерно год назад передо мной и моими коллегами была поставлена задача разобраться с использованием популярной системы мониторинга сетевой инфраструктуры — Zabbix. После изучения документации мы сразу же перешли к нагрузочному тестированию: хотели оценить с каким количество...

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

OpenVPN, о котором вы так мало знали OpenVPN, как много в этом слове. Мультиплатформенный, гибко настраиваемый, бесплатный VPN сервер с открытым исходным кодом, являющийся фактически стандартом "defacto" для организации доступа к внутренним корпоративным сетям. Большинство администраторов используют его с настр...

За всё ответишь! Consumer Driven Contracts глазами разработчика В этой статье мы расскажем про проблемы, которые решает Consumer Driven Contracts, покажем как это применять на примере Pact с Node.js и Spring Boot. И расскажем про ограничения этого подхода. Проблематика При тестировании продуктов часто используют сценарные тесты, в кот...

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

Самые редкие и самые дорогие языки программирования Принято считать, что языки программирования, такие как Rust, Erlang, Dart, а также некоторые другие являются самыми редкими в мире IT. Поскольку я подбираю IT специалистов для компаний, постоянно контактируя с айтишниками и работодателями, я решила провести личное исследован...

Послушать фоном: подкасты про управление проектами Подкастинг в мире становится все более разнообразным. Темы передач простираются от гаджетов до научпопа, но мы решили подобрать подкасты по темам, с которыми мы в «ИТ Гильдии» сталкиваемся каждый день. Это — ITSM, ITIL, DevOps и управление ИТ-проектами. Читать дальше →

Что особенного в Cloudera и как ее готовить Рынок распределенных вычислений и больших данных, если верить статистике, растет на 18-19% в год. Значит, вопрос выбора софта для этих целей остается актуальным. В этом посте мы начнем с того, зачем нужны распределенные вычисления, подробней остановимся на выборе ПО, расскаж...

Тюнинг переходных отверстий печатных плат Давайте поговорим про проектирование переходных отверстий — для серьёзной электроники их качество очень важно. В начале статьи я осветил факторы, влияющие на целостность сигнала, а потом показал примеры расчёта и тюнинга импеданса одиночных и дифференциальных переходных отве...

Новая платформа Qualcomm будет ориентирована на бюджетные смартфоны Источник сообщает, что компания Qualcomm сейчас тестирует новую однокристальную систему для бюджетных смартфонов. Её кодовое имя — Qualcomm QM215, то есть, возможно, в итоге она будет называться Snapdragon 215. Тем более, это подходит ей по статусу, да и данный по...

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

[Из песочницы] Выборы, выборы, кандидаты — хостинги «Нам нужен новый хостинг», — осенило нашего шефа в начале весны. Это не было весенним обострением, это было объективной необходимостью, потому что старая кобра пережила свой яд предыдущий почему-то решил, что раз клиенты из-за 152-ФЗ идут сами, то можно предоставлять услуги ...

Ошибки, которые не находит статический анализ кода, потому, что он не используется Время от времени читатели наших статей о проверке открытых проектов обращают внимание, что статический анализатор кода PVS-Studio выявляет большой процент ошибок, которые незначительны или вообще не влияют на работу приложения. Это действительно так. Большинство важных ошибо...

Исследование быстродействия СУБД MS SQL Server Developer 2016 и PostgreSQL 10.5 для 1С Цели и требования к тестированию «1С Бухгалтерии» Основной целью проводимого тестирования является сравнение поведения системы 1С на двух разных СУБД при прочих одинаковых условиях. Т.е. конфигурация баз данных 1С и первоначальная заполненность данными должны быть одинаковым...

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

Оптимизируем ассеты для WebGL правильно Так часто бывает, что техники оптимизации, хорошо работающие для обычной десктопной или мобильной графики, не всегда дают нужный эффект в случае WebGL. В этой статье я собрал (а точнее перевёл на русский язык и изложил в текстовом виде нашу презентацию с Verge3Day) те методы...

Почему 1С-Битрикс с 1 декабря 2019 года может превратиться в тыкву Если вы последние лет десять следите за обновлениями «коробочной версии» Битрикса (не 24), то давно уже заметили, что обновляется только модуль магазина и его окружение. Все остальные модули как были когда-то давным-давно написаны, в таком состоянии пребывают и до сих пор, п...

TDD приложений на Spring Boot: тонкая настройка тестов и работа с контекстом Третья статья в цикле и небольшое ответвление от основной серии — в этот раз я покажу как устроена и как работает библиотека интеграционного тестирования Spring, что происходит при запуске теста и как можно тонко настраивать приложение и его окружения для теста. Читать дальш...

Суперсовременный OpenGL. Часть 2 Всем хоршего настроения и температуры за окном пониже. Как и обещал, публикую продолжение статьи по супер-пепер соверменному OpenGL. Кто не читал первую часть — Суперсовременный OpenGL. Часть 1. Возможно повезет и я смогу весь оставшийся материал впихнуть в эту статью, эт...

Контент-маркетинг, SEO, тесты и опросы: 9 инструментов для продвижения стартапа за рубежом Всем привет! Меня зовут Марго, и я профессиональный маркетолог. В последнее время много работаю с проектами на международных рынках, и хочу делиться этим интересным опытом. Недавно я публиковала подборку инструментов для создания контента на английском языке, а сегодня р...

16 марта Вadoo PHP Meetup: тесты и качество кода. Регистрация открыта Всем привет! Меня зовут Владимир Янц, я активно занимаюсь развитием инфраструктуры тестирования кода в Badoo. С PHP у нас давние и крепкие отношения, и мы с коллегами всячески поддерживаем сообщество. Нас все спрашивали: “Когда же уже, когда?” — и вот оно. 16 марта приглаша...

Подборка: unboxing железа IaaS-провайдера Делимся материалами с распаковкой и тестами СХД и серверного оборудования, которые мы получали и использовали в разные периоды активности нашего IaaS-провайдера. Читать дальше →

Расширяем возможности UObject в Unreal Engine 4 Всем привет! Меня зовут Александр, я уже более 5 лет работаю с Unreal Engine, и почти все это время — с сетевыми проектами. Поскольку сетевые проекты отличаются своими требованиями к разработке и производительности, нередко необходимо работать с более простыми объектами, та...

MacBook Pro c Intel Core i9. Стоит ли переплачивать? В середине этого года Apple представила обновленные MacBook Pro. Впервые для покупки стали доступны конфигурации с процессорами Intel Core i9 на борту. На сегодняшний день это самые быстрые мобильные решения на рынке. Журналисты Ai решили выяснить, насколько целесообразна п...

[recovery mode] ShIoTiny: часы без пружины или реальное время и как с ним работать О чем эта статья Продолжаем цикл статей о ShIoTiny — визуально программируемом контроллере на базе чипа ESP8266. В этот статье рассказано о часах реального времени в контроллере ShIoTiny, синхронизации времени и использовании узлов работы с часами. Сайт проекта ShIoTiny...

Перемещения сквозь пространство и время Человеком всегда движет тяга к неизведанному, у него даже есть специальный нейромедиатор – дофамин, который является химическим мотиватором к получению информации. Мозгу постоянно нужен поток новых данных и даже если эти данные не нужны для выживания – так уж получилось, что...

[Перевод] Свободные текстовые редакторы для совместной работы Много лет меня преследовал этот зуд — попытки найти «идеальный» текстовый редактор для совместной работы. Но не просто любой текстовый редактор, который поддерживает совместную работу, о нет, моя задача — найти (ну, по крайней мере, искать) открытые текстовые редакторы с г...

IoT-стандарты, сети, три стола Тема интернета вещей и раньше проскальзывала на конференциях РИТ++ и HighLoad++, но обычно с упором на привычные нам вопросы хранилищ данных или программирования. Но в прошлом году мы решили, что настало время серьезно обсуждать IoT: аппаратное обеспечение, сети передачи дан...

Mesh VS WiFi: что выбрать для беспроводной связи? Когда я еще жил в многоквартирном доме, я сталкивался с проблемой низкой скорости в дальнем от роутера помещении. Ведь у многих роутер стоит в прихожей, куда провайдер дотянул оптику или UTP, и там же был поставлен типовой девайс. Еще хорошо, когда собственник меняет маршр...

[Перевод] Протокол QUIC в деле: как его внедрял Uber, чтобы оптимизировать производительность За протоколом QUIC чрезвычайно интересно наблюдать, поэтому мы любим писать о нем. Но если предыдущие публикации о QUIC носили больше исторический (краеведческий, если хотите) характер и матчасть, то сегодня мы рады опубликовать перевод другого толка – речь пойдет про реальн...

[Из песочницы] Электронная почта, взгляд изнутри Работаю я системным администратором в одной фирме. И вот произошла интересная ситуация с отправкой к нам на электронную почту некоторой информации. Дабы не углубляться в подробности с реальной ситуацией (дело касается тендерных предложений, где огромное количество условий), ...

[Из песочницы] Получаем Spring Bean из сторонних Application Context правильно Добрый день, хабровчане! В данной статье предлагаю обсудить одну из проблем, с которой нередко сталкиваются в проектах, использующих фреймворк Spring ввиду неверно составленных spring-конфигураций. Не нужно стараться, чтобы такую ошибку допустить, и поэтому данная ошибка яв...

Тренды сферы финансов: крупным компаниям нужно все больше ИТ-специалистов Сфера финансов — высокотехнологичная отрасль. Для того, чтобы пользователи могли не вставая с дивана подать заявку на кредит или купить акции той или иной компании, задействуются различные протоколы передачи финансовых данных (например, FIX, FAST, Plaza II), терминалы, бро...

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

[Перевод] Мутационное тестирование: тестируем тесты Написание тестов должно вселять в нас уверенность в корректной работе кода. Часто мы оперируем степень покрытости кода, и когда достигаем 100 %, то можем сказать, что решение корректное. Уверены в этом? Быть может, есть инструмент, который даст более точную обратную связь? ...

Как строить, развертывать и тестировать Waves RIDE dApp Здравствуйте! В статье я покажу, как написать и запустить на ноде Waves обычный dApp. Рассмотрим необходимые инструменты, методы и пример разработки. Схема разработки dApps и обычных приложений почти не отличается: Пишем код Пишем автоматизированное тестирование Запуска...

Три истории про дикий хантинг Хантинг – это стратегия найма за счет переманивания специалиста, работающего в другой компании. К хантингу прибегают в тех случаях, когда не могут найти нужных специалистов на открытом рынке. Истинный хедхантер — это искусный переговорщик, хорошо разбирающийся в психологии...

Как переехать с ESXi на KVM/LXD и не сойти с ума В компании «Макснет Системы» в качестве гипервизора долгое время использовалась бесплатная версия VMware — ESXi, начиная с версии 5.0. Платная версия vSphere отпугивала моделью лицензирования, а у бесплатной был ряд недостатков, которые отсутствовали в платной, но с ними мож...

Код живой и мёртвый. Часть вторая. Действия и свойства В прошлый раз я писал о том, что имена объектов имеют большое значение, и что подбирать их нужно кропотливо и со вниманием к деталям. Плохое имя отпугивает и не даёт вникнуть в суть происходящего. Но что это за суть? Сложно оценить героя, не поняв его "статы" и "абилки". Что...

HOSTKEY — первый хостинг-провайдер в Европе, предлагающий аренду физических серверов на базе новейших 5 ГГц процессоров Intel Новейшая модель Intel Core i7-9700K обеспечивает увеличенную скорость доступа к памяти и значительное повышение производительности серверных конфигураций как в многопоточном, так и в одноядерном режиме.

I’m going deeper underground, или о чем стоит знать, оптимизируя работу сетевого приложения Приветствую, друзья! В предыдущих двух статьях (раз, два) мы погружались в сложность выбора между технологиями и искали оптимальные настройки для нашего решения в Ostrovok.ru. Какую тему поднимем сегодня? Каждый сервис должен работать на каком-то сервере, общаясь с желез...

iPhone XS Max превзошел Galaxy S10+ в тестах на производительность Несмотря на то, что флагманские модели Samsung были представлены совсем недавно, зарубежные издания уже успели заполучить новинки в свое распоряжение и протестировать их в самых различных сценариях. Более того — ресурс GSMArena даже провёл сравнение производительности...

RTOS или не RTOS вот в чем вопрос На написание данной статьи меня побудила длинная ветка комментариев (дискуссией это я назвать, к сожалению, не могу) к моей недавней статье “Многообразный мир embedded systems и место Embox в нем”. Меня в нескольких местах упрекнули в том, что я путаю RTOS и Embedded OS, чт...

Как устроена пассивная система охлаждения в компьютерах MIC-7900 После нашей статьи про безвентиляторные компьютеры MIC-7000 было много вопросов про систему охлаждения^ действительно ли она полностью пассивная или внутри есть какие-то активные механизмы охлаждения? Некоторые комментаторы сомневались, что система может работать на пасси...

Стратегия маскировки: разбор игры про закрытую информацию Давайте расскажу, как мы разбираем механики игр. Есть вот такая карточка: 2-6 игроков знают, какое слово с неё загадано, а один не знает. Нужно назвать по одной ассоциации так, чтобы все остальные поняли, что вы среди тех, кто знает слово. Потом, когда каждый назовёт по...

[Перевод] Оптимизируем производительность игры параметрами импорта звука Unity Разработчики обычно не до конца понимают параметры импорта звука в Unity, и на момент написания статьи я не смог найти ни одного подробного руководства по их использованию. В документации Unity хорошо описано то, что делают параметры импорта звука, но я хотел бы разобрать э...

«Найди пять отличий». Разница поколений Scalable и — новая порция тестов Не прошло и два года с момента анонса, как Intel представил второе поколение процессоров Intel Xeon Scalable на новой архитектуре Cascade Lake. Официально — 2 апреля. Сама компания называет это крупнейшим запуском в своей истории, стратегически очень важным для неё. Что ж,...

Распознавание объектов в режиме реального времени на iOS с помощью YOLOv3 Всем привет! В данной статье мы напишем небольшую программу для решения задачи детектирования и распознавания объектов (object detection) в режиме реального времени. Программа будет написана на языке программирования Swift под платформу iOS. Для детектирования объектов буд...

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

Принципы документирования и локализации, или как получить хорошую локализацию минимальными затратами Всем привет! Меня зовут Денисов Александр. Я работаю в компании Naumen и отвечаю за документирование и локализацию программного продукта Naumen Contact Center (NCC). В этой статье расскажу о тех проблемах, с которыми мы сталкивались при локализации NCC на английский и нем...

Разработка hexapod с нуля (часть 3) — математика Всем привет! Разработка гексапода продвигается и наконец-то базовая математическая часть протестирована и готова к документированию. Чтобы проект дожил до конца и не остался пылиться на полке нужно видеть его сдвиги в положительную сторону, даже если они незначительны. В эт...

Осторожно — Docker контейнер Redis запускает криптомайнер Это будет очень короткая статья о человеческой жадности и предупреждение о надобности проверять любой опен- и не опен-сорс. Сегодня утром я случайно и с удивлением увидел на графиках моего хостинга 100% загруженность процессора. При том, что он не минимальной конфигурации, ...

Разработка простейшей «прошивки» для ПЛИС, установленной в Redd. Часть 2. Программный код Итак, в прошлой статье мы разработали простейшую процессорную систему, с помощью которой планируем провести тест микросхемы ОЗУ, подключённой к ПЛИС комплекса Redd. Сегодня же мы сделаем для этой аппаратной среды программу на языке С++, а также разберёмся, как эту программу ...

Как мы пробивали Великий Китайский Фаервол (ч.2) Привет! С вами снова Никита — системный инженер из компании SЕMrush. И этой статьей я продолжаю историю про то, как мы придумывали решение обхода Китайского Фаервола для нашего сервиса semrush.com. В предыдущей части я рассказал: какие появляются проблемы после того, как пр...

Насколько медленнее NVIDIA GeForce RTX 2080 и 2070 будут работать в тонких ноутбуках в сравнении с полноразмерными видеокартами Ноутбуки с мобильными видеокартами NVIDIA GeForce RTX начали поступать в продажу относительно недавно и их производительность вызывает много вопросов. В сети провели сравнение производительности тестах 3D Mark у пяти видеокарт.

[Из песочницы] Как устроен ReactJS. Пакет React Большинство людей, работающих во фронтенде, так или иначе сталкивались с реактом. Это JavaScript библиотека, помогающая создавать крутые интерфейсы, в последние годы набрала огромную популярность. При этом, не так много людей знает, как она работает внутри. В этой серии стат...

Сколько стоят юнит тесты? Сейчас, на пике экономического цикла в такой горячей отрасли как разработка ПО не принято считать деньги. Зачастую этот процесс в принципе позиционируется как творческая деятельность, где не надо ничего обосновывать, а художнику виднее, что и как писать. В частности, на те...

Обзор DELL Alienware Aurora R8. Настольный компьютер для 4K игр Далеко ни у каждого есть время и желание на то, чтобы заниматься сборкой собственного ПК. Именно для таких людей компания DELL выпустила настольный компьютер Alienware Aurora R8 с готовой системой. Мы специально добыли один из таких экземпляров, чтобы провести подробное тест...

Как выбрать лучшее защитное стекло для iPhone X/XS/XS Max/XR в 2019 году? Покупая флагманское устройство от компании Apple, многие из покупателей забывают о такой уязвимой части, как дисплей смартфона. Стоимость ремонта или замены дисплея в первый квартал после старта продаж составляет от 20 000 руб. и более. Чтобы раз и навсегда забыть о вопросе ...

Вычисляем потенциальных «злых» ботов и блокируем их по IP Доброго дня! В статье расскажу как можно пользователям обычного хостинга отловить IP адреса генерирующие излишнюю нагрузку на сайт и затем блокировать их при помощи средств хостинга, будет «чуть-чуть» php кода, несколько скриншотов. Читать дальше →

Kafka и микросервисы: обзор Всем привет. В этой статье я расскажу, почему мы в Авито девять месяцев назад выбрали Kafka, и что она из себя представляет. Поделюсь одним из кейсов использования — брокер сообщений. И напоследок поговорим о том, какие плюсы мы получили от применения подхода Kafka as a Ser...

[Перевод] Python Testing с pytest. Конфигурация, ГЛАВА 6 Вернуться Дальше В этой главе мы рассмотрим файлы конфигурации, которые влияют на pytest, обсудим, как pytest изменяет свое поведение на их основе, и внесем некоторые изменения в файлы конфигурации проекта Tasks. Читать дальше →

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

Хабро-самоубийство. Боль планирования в 1С Не я придумал, но я согласен с тем, что для понимания решений и их полезности нужна боль, или, как говорят ребята в костюмах, pain. Если у вас нет трудностей с дефицитами, избыточными запасами, просрочкой отгрузок, и другими симптомами плохого планирования – отлично, статья ...

Спасение бюджетного гейминга на процессорах Intel У мобильных процессоров Intel Ice Lake, как известно, новое графическое ядро. Это GPU Gen11, которое в топовой конфигурации по своей производительности вполне способно конкурировать с топовыми интегрированными GPU AMD. Не секрет, что iGPU чувствительны к частоте операт...

Собираем свой Nginx парой команд Привет! Меня зовут Сергей, я работаю инфраструктурным инженером в команде API платформы tinkoff.ru. В этой статье я расскажу о проблемах, с которыми сталкивалась наша команда при подготовке балансировщиков на основе Nginx для различных проектов. Также расскажу об инструмен...

[Перевод] Анализ и оптимизация React-приложений Люди, вроде меня, которые борются за высокую производительность сайтов, часто тратят на это много времени. Поэтому сейчас я собираюсь раз и навсегда решить проблему низкого быстродействий веб-ресурсов, интерфейс которых написан на React. А именно, я предлагаю всем, кто это ч...

Apple iMac 5K 27″ (Early 2019): тестируем самую мощную конфигурацию популярного моноблока Не прошло и месяца после анонса новых iMac, а они уже появились в продаже. В нашей статье по итогам мартовских «железных» анонсов мы подробно анализировали, что изменилось в моноблоках Apple и каковы ключевые особенности конфигураций 2019 года. Теперь же у нас есть возможнос...

[Перевод] Thinking with Portals: создаём порталы в Unreal Engine 4 В этой статье я расскажу, как создавать порталы в Unreal Engine 4. Я не нашёл никаких источников, подробно описывающих такую систему (наблюдение сквозь порталы и проход через них), поэтому решил написать собственную. Что такое портал? Давайте начнём с примеров и объяснения...

Последний рубеж обороны QA: автоматическое обнаружение ошибок Привет! Меня зовут Асхат Нурыев, я ведущий инженер по автоматизации в компании DINS. Я работаю в Dino Systems последние 7 лет. За это время пришлось заниматься разными задачами: от написания автоматических функциональных тестов до тестирования производительности и высокой...

[Из песочницы] ClusterJ — работаем с MySQL NDB Cluster из Java Привет, Хабр! В этой статье я хочу рассмотреть такую библиотеку для Java, как ClusterJ, которая позволяет очень просто работать с движком MySQL NDBCLUSTER из Java кода, которая представляет собой высокоуровневое API, схожее по концепции с JPA и Hibernate. В рамках статьи со...

Работа с callbacks в React За время свой работы, я периодически сталкивался с тем, что разработчики не всегда четко представляют, каким образом работает механизм передачи данных через props, в частности колбеков, и почему их PureComponents обновляется так часто. Поэтому в данной статье мы разберемся,...

[Перевод] Два в одном: Intel Optane Memory H10 (часть 2) Часть 1 >> Часть 2 Тест накопителей AnandTech — The Destroyer The Destroyer — это чрезвычайно долгий тест, который реплицирует шаблоны доступа приложений с большим объемом ввода-вывода. Как при использовании в реальных условиях, накопители получают время от времени не...

Закон Галла: что он гласит и как применяется в IT Рассказываем, в чем суть закономерности, как она себя проявляет и что бывает, когда эту закономерность не учитывают в процессе проектирования и разработки IT-систем. Фото — Spencer — Unsplash В книге «Сам себе MBA. Самообразование на 100%», написанной Джошом Кауфманом (Jo...

[Из песочницы] Практичный гайд по переменным окружения в Go Привет, Хабр! Представляю вашему вниманию перевод статьи A no-nonsense guide to environment variables in Go автора Enda Phelan. Переменные окружения — лучший способ хранения конфигурации приложения, поскольку они могут быть заданы на системном уровне. Это один из принципов ...

[recovery mode] Популярные вопросы разработчика о тестировании Эта статья — не теоретическое руководство по написанию тестов и не how-to по использованию инструментария в определенном стеке, а ряд популярных вопросов, иногда даже у многих не сформировавшихся, на которые я постараюсь дать ответы. Источником этих вопросов служат коллеги, ...

[Из песочницы] 9 Принципов для создания качественных iOS приложений Принципы основаны на известной методологии от heroku, адаптированы под реалии айос разработки (Отсутствие контейнеров, ревью которые занимают несколько дней и тормозят развертывания, работа Xcode только на маке). Эта статья является коротким введением, полную серию можете на...

Как мы запускаем новый сайт банка. Часть 1 Привет! Меня зовут Илья Голованов. Мы вместе с командой работаем над новым сайтом Промсвязьбанка. В этой статье я расскажу, какие задачи перед нами стоят, с какими проблемами мы сталкиваемся и к каким решениям приходим. Пока новый вид доступен для 30% страниц (их можно увид...

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

[Перевод] Интеграционные тесты баз данных с помощью Spring Boot и Testcontainers 1. Обзор С помощью Spring Data JPA можно легко создавать запросы к БД и тестировать их с помощью встроенной базы данных H2. Но иногда тестирование на реальной базе данных намного более полезно, особенно если мы используем запросы, привязанные к конкретной реализации БД. В эт...

Unity Package Manager Unity — платформа, которая существует довольно давно и постоянно развивается. Однако, работая в ней с несколькими проектами одновременно, все еще можно столкнуться со сложностями в использовании общих исходников (.cs), библиотек (.dll) и остальных ассетов (изображения, звуки...

Атаки на домен При проведении тестирований на проникновение мы довольно часто выявляем ошибки в конфигурации домена. Хотя многим это не кажется критичным, в реальности же такие неточности могут стать причиной компрометации всего домена. К примеру, по итогам пентеста в одной компании мы ...

Атака на хостинг. Как я раскрутил эскалацию привилегий в Plesk Для подписчиковРут на shared-хостинге — не обязательно публичная уязвимость в ядре Linux. В этой статье будет разобрана уязвимость в популярной хостинг-панели Plesk, позволяющая повысить привилегии на хостинговом сервере и получить доступ ко всем соседям.

Проверка WHOIS домена: что, зачем и как Если вы ещё ни разу сталкивались с таким явлением, как проверка WHOIS домена, мы готовы подробно рассказать о ней. Ответим на самые распространённые вопросы по данной теме, посмотрим, что даст проверка WHOIS домена, кому и зачем может потребоваться. Для начала, чтобы вы нич...

[Перевод] Мониторинг и проверка состояния SSD в Linux И снова здравствуйте. Перевод следующей статьи подготовлен специально для студентов курса «Администратор Linux». Поехали! Что такое S.M.A.R.T.? S.M.A.R.T. (расшифровывается как Self-Monitoring, Analysis, and Reporting Technology) – это технология, вшитая в накопители, та...

Семинар: Гибридные ИТ-решения для бизнеса. 14 ноября, Москва Всем привет! С 2017 года мы строим решения для наших клиентов на основе гиперконвергентной платформы Cisco HyperFlex. В нашем портфолио частные и публичные облака, гибридные и распределенные ИТ-системы, построенные на оборудовании и совместно с инженерами Cisco. Так дава...

Ускорение запуска Julia при помощи PackageCompiler.jl Зайдя на официальный сайт языка программирования Julia, можно увидеть утверждение: "Julia is fast!". Однако, новые пользователи на практике сталкиваются с проблемой медленной загрузки модулей, в особенности графических [1,2]. Диалектически, причиной медленного запуска являет...

MacBook Pro (2019) бьёт рекорды производительности Пару дней назад Apple представила обновленные MacBook Pro. Ноутбуки обзавелись усовершенствованным клавиатурами, а также процессорами Intel восьмого и девятого поколений. По заверениям компании, новые MacBook Pro стали гораздо быстрее — чистый прирост производительнос...

C++ Russia 2019. Небольшой отчет с места событий и анонс следующей конференции в Санкт-Петербурге Конференция C++ Russia — пока что самая суровая и одновременно ламповая конференция за последнее время. Она проходила в Конгресс-парке гостиницы «Украина» в Москве и собрала аудиторию более чем в шесть сотен человек. Как сказал один из товарищей на афтепати: «Я со школы пыта...

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

Как настроить PVS-Studio в Travis CI на примере эмулятора игровой приставки PSP Travis CI — распределённый веб-сервис для сборки и тестирования программного обеспечения, использующий GitHub в качестве хостинга исходного кода. Помимо указанных выше сценариев работы, можно добавить собственные, благодаря обширным возможностям для конфигурации. В данной с...

Основы компьютерных сетей. Тема №9. Маршрутизация: статическая и динамическая на примере RIP, OSPF и EIGRP Всем привет! Спустя продолжительное время возвращаемся к циклу статей. Долгое время мы разбирали мир коммутации и узнали о нем много интересного. Теперь пришло время подняться чуть повыше и взглянуть на сторону маршрутизации. В данной статье поговорим о том, зачем нужна ма...

Обработка исключений ASP.NET при помощи IRO.Mvc.MvcExceptionHandler Если вы являетесь c# бекенд разработчиком, наверняка рано или поздно появилась необходимость найти унифицированный способ обработки исключительных ситуаций. Хотя, даже если вы довольствуетесь кодом 500 в ответе, эта статья все равно поможет улучшить ваш способ, при этом не...

Осторожно — ГАЗ! или Как мы делали негазированные смарт-контракты Блокчейн и смарт-контракты все еще остаются горячей темой среди разработчиков и технических специалистов, много исследований и рассуждений об их будущем и о том, куда это все движется и приведет нас. У нас в Waves Platform свой взгляд на то, какими должны быть смарт-контрак...

[Перевод] Преимущества и недостатки HugePages Перевод статьи подготовлен для студентов курса «Администратор Linux». Ранее я рассказал о том, как проверить и включить использование Hugepages в Linux. Эта статья будет полезна, только если у вас действительно есть, где использовать Hugepages. Я встречал множество людей, ...

Proof of Concept: целесообразность внутреннего ML проекта Недавно в уютном чатике дата сатанистов подняли вопрос, как правильно "продавать" внутренние проекты по машинному обучению. Оказалось, что многие из нас весьма брезгливо относятся к экономическому обоснованию своей деятельности. Меж тем, чтобы провести минимальную оценку рен...

[Перевод] Возможно, очень скоро мы увидим рекламу в Google Картинках Реклама, без сомнения является хлебом для Google. Поэтому неудивительно, что компания постоянно ищет способы расширения аудитории и инструменты, которые она может сделать доступными для рекламодателей. Теперь Google тестирует контекстную рекламу в Google Images. Читать да...

Автоматизация End-2-End тестирования комплексной информационной системы. Часть 2. Техническая Этой статьей мы продолжаем серию публикаций о том, как мы автоматизировали в одном из крупных проектов ЛАНИТ автопроцесс ручного тестирования (далее – автотесты) большой информационной системы (далее – Системы) и что у нас из этого вышло. Вторая часть публикации ориентирова...

Дискретная математика для WMS: алгоритм сжатия товаров в ячейках (часть 2) В статье мы расскажем, как разрабатывали алгоритм оптимального сжатия остатков товаров в ячейках. Расскажем как выбирали нужную метаэвристику среду «зоопарка» фреймворков: табу-поиск, генетический алгоритм, муравьиная колония и др. Проведем вычислительный эксперимент по ...

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

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

Тысячи вещей, которые в Java стоило бы поправить с первой версии: большое интервью с Сергеем Куксенко из Oracle Сергей Куксенко — перформанс-инженер, видевший Java еще версии 1.0. За это время успел поучаствовать в разработке мобильных, клиентских, серверных приложений и виртуальных машин. Производительностью Java занимается c 2005 года и в данный момент в Oracle работает над улучшен...

Phoronix Test Suite, или как тестировать процессоры it-шнику. Часть 1: Intel vs AMD Сегодня множество тестов в так называемых "рабочих" приложениях охватывает лишь узкий сектор 3d-шников и видеомонтажеров. Еще реже можно встретить тесты производительности в графических пакетах и офисных приложениях. Но что если у Вас все по серьезному и вы например разработ...

MacBook Pro 13 с eGPU или топовый MacBook Pro 15. Что лучше? Графическая производительность — пожалуй, одно из самых слабых мест MacBook Pro. В особенности, это касается моделей с интегрированными видеокартами Intel. К счастью, этот недостаток легко исправим — достаточно лишь прикупить внешнюю видеокарту (eGPU) и подключи...

О жёлтом фосфоре и панической природе человека Привет, %username%. Как и обещал — вот тебе статья-рассказ о жёлтом фосфоре и о том, как он славно горел подо Львовом на Украине относительно недавно. Да, я знаю — гугл даёт массу информации об этой аварии. К сожалению, большинство того, что он выдаёт — неправда, или, ка...

Облачный WebRTC стриминг на DigitalOcean Известный облачный хостинг DigitalOcean с недавних пор обзавелся собственным магазином с готовыми образами, из которых можно быстро развернуть какой-либо сервер приложений. Совсем, как AWS, только DO, для тех, кто уже пользуется услугами этого провайдера. Давайте посмотрим,...

Конференция C++ Russia 2019 Всем привет! Представьте, что C++ Russia больше нет. Куда вы пойдёте вместо этого? Есть множество конференций, посвящённых более широким темам, но наша — одна из немногих, целиком и полностью сфокусированная на C++ и открыто заявляющая, что это будет реальный хардкор. Выбор...

Хабра-детектив на выходных Вы ведь знаете, что такое дежавю? То самое "это уже где-то было", только не про последний вышедший в кинотеатре фильм, а про то, что происходит именно с вами. К примеру, не казалось ли вам, что вы уже видели какую-либо статью на Хабре раньше? В большинстве случаев, в этом н...

Оптимизация Unity UI В этой статье разбираются вопросы оптимизации UI-элементов проектов, сделанных в ​Unity​. На основании информации из официальной документации и личного опыта я постарался наглядно объяснить принципы работы UI-элементов. Также здесь вы найдёте практические советы, которые по...

[Из песочницы] Настройка окружения unit тестирования javascript Вначале была функция и вызывали ее в одном месте. Потом мы захотели вызвать ее в другом месте с новыми возможностями и обновили ее. Нам эта ф-ия так понравилась, что мы вызвали ее в третьем месте и еще сделали функциональные правки и… в первом месте что-то пошло не так. А ка...

Безопасность автомобилей Lego проверили в краш-тесте В 2017 году эксперты ADAC разбили о барьер Porsche 911 GT3 RS в масштабе 1:8, собранный из более чем 2700 деталей Lego. В 2019 году в тесте использовали эту же модель, но на сей раз её столкнули с Bugatti Chiron в масштабе 1:8, состоящим из почти 3600 элементов Lego. ...

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

[Из песочницы] Senior, TechLead, Architect — что дальше? Как бороться с рабочей рутиной и куда двигаться дальше? Многие технические специалисты сталкиваются с тем, что достигают максимума в своей вертикали и не понимают, куда двигаться дальше, чтобы работа не превращалась в бесконечную рутину и давала профессиональный рост. Я уже 18 лет работаю в сфере IT, такое со мной случалось не ...

[Перевод] Что я узнал про оптимизацию в Python Всем привет. Сегодня хотим поделиться еще одним переводом подготовленным в преддверии запуска курса «Разработчик Python». Поехали! Я использовал Python чаще, чем любой другой язык программирования в последние 4-5 лет. Python – преобладающий язык для билдов под Firefox, те...

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

Как будет работать HPE SimpliVity 380 для VDI: жёсткие нагрузочные тесты Заказчик захотел VDI. Очень присматривался к связке SimpliVity + VDI Citrix Virtual Desktop. Для всех операторов, сотрудников офисов по городам и так далее. Там пять тысяч пользователей только в первой волне миграции, и поэтому они настояли на нагрузочном тестировании. VDI...

5 лайфхаков оптимизации SQL-запросов в Greenplum Любые процессы, связанные с базой, рано или поздно сталкиваются с проблемами производительности запросов к этой базе. Хранилище данных Ростелекома построено на Greenplum, большая часть вычислений (transform) производится sql-запросами, которые запускает (либо генерирует и...

[Перевод] Создание калькулятора чаевых на Kotlin: как это работает? Рассказываем, как создать простое приложение для расчета чаевых на языке Kotlin. Если точнее, то Kotlin 1.3.21, Android 4, Android Studio 3. Статья будет интересной, в первую очередь, для тех, кто начинает свой путь в разработке Android-приложений. Она позволяет понять, ч...

Сравнение производительности виртуальных машин 6 облачных платформ: Selectel, MCS, Я.Облако, Google Cloud, AWS и Azure Давеча на глаза мне тут попалось аж две статьи из одного корпоративного блога, касающиеся облаков — одна про Kubernetes, а во второй была попытка замера производительности по методике, которая мне показалась сомнительной (спойлер — и не зря). Про K8s мне тоже есть что сказат...

[Из песочницы] Как одно изменение конфигурации PostgreSQL улучшило производительность медленных запросов в 50 раз Здравсвуйте, хабровчане! Предлагаю вашему вниманию перевод статьи «How a single PostgreSQL config change improved slow query performance by 50x» автора Pavan Patibandla. Она очень сильно мне помогла улучшить производительность PostgreSQL. В Amplitude наша цель — предоставит...

[Перевод] Vue.js: 3 анти-паттерна Вероятно, Vue.js — это один из приятнейших JavaScript-фреймворков. У него имеется интуитивно понятный API, он быстрый, гибкий, им легко пользоваться. Однако гибкость Vue.js соседствует с определёнными опасностями. Некоторые разработчики, работающие с этим фреймворком, склонн...

3D-печать и airsoft: как я печатал «привод» Всем привет! Я попробую немного рассказать о том, как я пытался сделать страйкбольный привод при помощи 3D-принтера, что из этого получилось и с какими сложностями пришлось столкнуться. Статья может оказаться интересной для тех, кто любит airsoft, DIY или 3D-печать. Для те...

[Из песочницы] SpecFlowMaster: как улучшить качество тестов Делаем правильные вещи Современная разработка не может существовать без автоматизированных тестов. Тесты могут быть написаны очень быстро даже непрофессионалами. Таким образом, у нас есть тесты, все как бы хорошо. Можем ли мы довериться таким тестам? Каково качество наших ин...

5 вещей, которые чаще всего не понимают новички в JavaScript Всем привет! В конце сентября в OTUS стартует новый поток курса «Fullstack разработчик JavaScript». В преддверии начала занятий хотим поделиться с вами авторской статьей, подготовленной специально для студентов курса. Автор статьи: Павел Якупов Превью. Хочу сразу отмети...

PHP, почём абстракции для народа? Joy: What is going on? Sadness: We’re abstracting! There are four stages. This is the first. Non-objective fragmentation! Bing Bong: Alright, do not panic. What is important is that we all stay together. [suddenly his abstract arm falls off] Joy: Oh! [Sadness and Joy start ...

3DMark теперь может тестировать смартфоны Huawei в стандартном режиме и Performance Mode Компания 3DMark выпустила обновление для своего фирменного приложения. Среди новых функций есть возможность автоматически определять, работают ли телефоны Huawei в режиме повышенной производительности (Performance Mode). Напомним, в сентябре прошлого года 3DMark удалила...

Мошенники на eBay (история одного обмана) Disclaimer: статья не совсем подходит для Хабра и не совсем понятно в какой хаб ее размещать, так же статья не является жалобой, я думаю сообществу будет полезно знать о том, как можно потерять деньги при продаже компьютерного железа на eBay. Неделю назад ко мне обратился...

[Перевод] Руководство по логированию в Node.js Первая задача, с которой чаще всего сталкиваются разработчики, начинающие программировать на JavaScript, – как регистрировать события в журнале консоли с помощью метода console.log. В поисках информации по отладке кода на JavaScript вы найдёте сотни статей в блогах, а также...

Мониторинг производительности запросов PostgreSQL. Часть 1 — репортинг Инженер — в переводе с латыни — вдохновенный. Инженер может всё. (с) Р.Дизель. Эпиграфы. Или история о том, зачем администратору баз данных вспоминать свое программистское прошлое. Предисловие Все имена изменены. Совпадения случайны. Материал представляет собой исключител...

NVIDIA GeForce GTX 1660 Ti протестирована в AotS: ощутимо быстрее GeForce GTX 1060 Упоминание готовящейся к выпуску видеокарты NVIDIA GeForce GTX 1660 Ti было обнаружено в базе данных теста производительности игры Ashes of the Singularity. Скриншот с результатами теста опубликовал известный источник в основном достоверных утечек Tum Apisak. Производительно...

Реверс-инжиниринг. История. Моя Всем привет, На этот раз статья будет не технической (хотя в ней и будут попадаться какие-то технические термины/моменты), а скорее автобиографической, если так можно выразиться. Эта статья о том, как я докатился до такой жизни пришёл в реверс-инжиниринг, что читал, чем инт...

[Из песочницы] Фундаментальная проблема тестирования Введение Добрый день, хабровчане. Решал я тут давеча тестовое задание на вакансию QA Lead для одной финтех компании. Первая задача, составить тест-план с полным чек-листом и примерами тест-кейсов для проверки электрического чайника, решается тривиально: ГОСТ 7400-81. Электр...

Почему может тормозить телефон на Android? В первые дни после покупки смартфон, как правило, радует своей высокой производительностью и отзывчивостью. Но стоит «накатить» на него чуть больше приложений, нагрузить несколькими задачами, и в один день телефон может начать работать очень медленно. И дело здесь вовсе не ...

Как создать приложение для сферы финансов: 5 API в помощь разработчику Всем привет! Продолжаю свое исследование сферы финансов с точки зрения технологий. В прошлом материале мы изучали существующие торговые терминалы и их особенности, а сегодня предлагаю поговорить, собственно, о разработке финансовых приложений. Для нового топика я подобра...

Семинар «Управление уязвимостями: стандарты, реальность, инструменты», 4 июля, Москва Всем привет! 4 июля мы проведем небольшой Vulnerability Management Day. Поговорим о том, какие стандарты и best practice существуют и как это все ложится (или нет ;)) на реальную жизнь. Мы пригласили экспертов по различным продуктам и соответственно со своим подходом к у...

Извлечение мастер-пароля из заблокированного менеджера паролей SafeInCloud После прочтения этой статьи мне захотелось провести исследование другого менеджера паролей на наличие похожих уязвимостей. В комментариях к статье пользователем Dark_Angel был задан вопрос: А что скажите насчет SafeInCloud? Читать дальше →

REST Assured: что мы узнали за пять лет использования инструмента REST Assured — DSL для тестирования REST-сервисов, который встраивается в тесты на Java. Это решение появилось более девяти лет назад и стало популярным из-за своей простоты и удобного функционала. В DINS мы написали с ним более 17 тысяч тестов и за пять лет использования ст...

[Перевод] Тестирование PostgreSQL с HugePages в Linux Ядро Linux предоставляет широкий спектр параметров конфигурации, которые могут повлиять на производительность. Главное — выбрать правильную конфигурацию для вашего приложения и рабочей нагрузки. Как и любой другой базе данных, PostgreSQL необходима оптимальная настройка ядра...

[Перевод] Почему на собеседованиях так часто спрашивают про связные списки Примечание переводчика: оригинальная статья опубликована в серии твитов Вероятно, вы уже читали кучу объяснений, почему обработка связных списков — плохой вопрос для собеседования. Я же в первую очередь хочу объяснить, откуда он вообще взялся. Всем пристегнуться, погружаем...

JUnit в GitLab CI с Kubernetes Несмотря на то, что все прекрасно знают, что тестировать свой софт важно и нужно, а многие давно делают это автоматически, на просторах Хабра не нашлось ни одного рецепта по настройке связки таких популярных в этой нише продуктов, как (любимый нами) GitLab и JUnit. Восполним...

Микроструктура рынка и неблагоприятный отбор Джотто ди Бондоне. Изгнание менял из храма. ок. 1305 г. Капелла Скровеньи, Падуя. В предыдущей статье мы выяснили, как работает внебиржевой валютный рынок. Крупные инвестиционные банки, которые называются дилерами или маркет-мейкерами, предлагают клиентам курсы покупки и пр...

[Перевод] Элегантная обработка ошибок в JavaScript с помощью монады Either Давайте немного поговорим о том, как мы обрабатываем ошибки. В JavaScript у нас есть встроенная функция языка для работы с исключениями. Проблемный код мы заключаем в конструкцию try...catch. Это позволяет прописать нормальный путь выполнения в разделе try, а затем разобрать...

Ты помнишь, как все начиналось. Все было впервые и вновь О том, как пришлось заняться оптимизацией запроса PostgreSQL и что из всего этого получилось. Почему пришлось? Да потому, что предыдущие 4 года все работало тихо, спокойно, как часики тикали. В качестве эпиграфа. Основано на реальных событиях. Все имена изменены, совпад...

Сертификация ISTQB. Часть 1: быть или не быть? Как показывает наше последнее исследование: образование и дипломы, в отличие от опыта и формата работы, почти никак не влияют на уровень оплаты труда QA-специалиста. Но так ли это на самом деле и какой тогда смысл в получении сертификата ISTQB. Почему получение сертификата ...

Как разблокировать частоту обновления экрана в 90 Гц на Google Pixel 4 Google Pixel 4 имеет и некоторые скрытые особенности После нескольких месяцев постоянных утечек, спекуляций и слухов. После ожидания и прогнозов различных инсайдеров, Google, наконец, представила свои флагманы Google Pixel 4 и Google Pixel 4 XL. На нашем сайте вы найдете мас...

Azure PowerShell: «в основном безвреден» Привет всем. Сегодня у нас на тесте очередной проект Microsoft. По названию статьи можно догадаться, что в этот раз разработчики не смогли порадовать нас большим количеством ошибок. Надеемся, авторов проекта не обидит название. Ведь малое количество ошибок — это отлично, не...

[Перевод] Gmail исполнилось 15 лет Возвращаясь в 2004 год, электронная почта выглядела совсем по-другому. "Входящие" были забиты спамом, и было просто невозможно найти реальные сообщения или файлы. Кроме того, количество писем было ограничено, поэтому приходилось постоянно удалять их, чтобы не превышать лими...

30-31 марта, SIBUR CHALLENGE в Нижнем Новгороде Всем привет! Уже через пару недель, 30-31 марта, мы проведем в Нижнем Новгороде хакатон, посвященный анализу данных. Отбор команд будет идти до 30 марта, задачи нужно будет решать не абстрактные, а вполне себе живые — мы предоставим реальные данные компании для этого. Во...

Увеличилась ли скорость работы iPhone на iOS 12.3 В конце марта для загрузки стала доступна первая версия iOS 12.3. Это обновление сложно назвать масштабным: в системе появилось новое приложение для сервиса Apple TV+, однако на этом глобальные нововведения заканчиваются. Все остальные изменения направлены на исправление ош...

Как найти респондентов для онлайн опроса и что нужно знать о выборке? Компании нужно провести опрос клиентов. Составляется анкета, неоднократно перерабатывается, утверждается, рассылается клиентам. Отклик (участие в опросе) обычно не высокий, порой не превышает 10%, но это норма для опросов. На основании собранных ответов делаются выводы и фор...

Биткойн в клетке? Так сложилось, что я по профессии администратор компьютерных систем и сетей (короче: сисадмин), и довелось поведать за немногим более чем 10 лет проф. дейтельности самых разных систем, включая тех, что требуют [по|за]вышенных мер безопасноти. А еще сложилось, что некоторое в...

Тесты ZTE реальных сетей 5G в Китае показали среднюю скорость в 1000 Мбит/с В большинстве ранее заявленных тестов оценка скоростных показателей 5G проводилась в контролируемых средах и не отражала реальную производительность, с которой сталкиваются средние пользователи. Понятно, что пока сети 5G развёрнуты лишь относительно скромно, мало кто может в...

[Из песочницы] Dart vs Node.js: сравниваем производительность на реализациях HTTP сервера Всем доброго времени суток! В этом году с выходом Flutter — фреймворка для кроссплатформенной разработки приложений наметился подъем хайпа по языку Dart. Как и любой перфекционист прокрастинирующий от скуки лентяй я задумался о сравнении производительности серверной реализа...

Собираем в rpm WireMock — утилиту для создания заглушек над веб-сервисами в Fedora COPR аналоге PPA в Ubuntu WireMock — утилита, библиотека на java для создания заглушек над веб-сервисами. Он создает HTTP-сервер, к которому мы могли бы подключиться, как к реальному веб-сервису. Fedora COPR — это бесплатный хостинг для размещения пользовательских репозиториев (аналог AUR в Arch Linu...

[Перевод] Angular без zone.js: максимум производительности Angular-разработчики в большом долгу перед библиотекой zone.js. Она, например, помогает достичь в работе с Angular почти волшебной лёгкости. На самом деле, практически всегда, когда нужно просто поменять какое-нибудь свойство, и мы меняем его, ни о чём не задумываясь, Angula...

Слёрмовая осень, слёрмовая зима… «Эйчары» заняты квадриллионом дел — поиск и онбординг новых сотрудников, тесты психологического состояния персонала, регламенты. Им трудно разобраться, какие профильные курсы нужны разработчику, а какие нет. И не всегда доходят руки оценить, какие сотрудники уже доросли до с...

Сага о тестировании: библиотека redux-saga-test-plan Фреймворк redux-saga предоставляет кучу интересных паттернов для работы с сайд-эффектами, но, как истинные кроваво-энтерпрайзные разработчики, мы должны покрывать весь свой код тестами. Давайте разберёмся, как мы будем тестировать наши саги. Читать дальше →

Неделя на колесах: тест электросамоката  iconBIT Kick Scooter C60 Действительно ли это идеальный транспорт для города? Тестируем одну из самых доступных моделей в реальных условиях.

Code style как стандарт разработки Давайте сразу, это не про скобочки. Здесь речь пойдет о том, как работает наш мозг и почему code style помогает обеспечивать линейное развитие проекта, значительно ускоряет адаптацию новых сотрудников и, в целом, формирует и воспитывает культуру разработки. Я постарался собр...

Плюс 250 МГц к частоте CPU Ryzen. Создан новый профиль энергопотребления для актуальных процессоров AMD Процессоры AMD вскоре могут стать ещё быстрее. И речь не о новых моделях, а о уже существующих. Как известно, у современных CPU Ryzen есть профили энергопотребления, регулирующие то, как Windows обращается к ядрам процессора. Сотрудник AMD 1usmus (настоящее имя —...

[Из песочницы] Как работает конфигурация в .NET Core Давайте отложим разговоры о DDD и рефлексии на время. Предлагаю поговорить о простом, об организации настроек приложения. После того как мы с коллегами решили перейти на .NET Core, возник вопрос, как организовать файлы конфигурации, как выполнять трансформации и пр. в новой ...

[Из песочницы] Хороший, плохой, злой — тестирование в проекте новичков Предисловие: в университете было получено задание — собрать scrum команду, выбрать проект и работать над ним в течении семестра. Наша команда выбрала разработку веб-приложения (react + flask). В этой статье я постараюсь рассказать, какими тесты должны были быть, и проанализи...

Техподдержка 3CX отвечает: захват SIP-трафика на сервере АТС В этой статье мы поговорим об основах захвата и анализа SIP-трафика, генерируемого АТС 3CX. Статья адресована начинающим системным администраторам или обычным пользователям, в обязанности которых входит обслуживание телефонии. Для углубленного изучения темы рекомендуем пройт...

Алиса поможет сделать повторный заказ на маркетплейсе Беру Покупателям больше не обязательно заходить на сайт и вспоминать историю своих заказов. Достаточно лишь назвать нужный товар и попросить Алису заказать его "как обычно". Например, сказать: "Алиса, пачку кофе, как обычно". Голосовой помощник сам найдёт его,...

[Перевод] Профилирование Unity UI: кто портит мой батчинг? Вы потратили бесконечное количество времени на оптимизацию Unity UI. Но для того, чтобы вызвать торможения, достаточно небольшой модификации крошечного атрибута почти невидимого элемента UI Canvas. И когда такое случается, даже профилирование Unity UI не спасёт вас от сниже...

BlessRNG или проверяем ГСЧ на честность В геймдеве часто нужно что-нибудь завязать на рандоме: у Unity для этого есть свой Random, а параллельно с ним существует System.Random. Когда-то давно на одном из проектов сложилось впечатление, что оба могут работать по-разному (хотя должны иметь равномерное распределени...

Сертификация ISTQB. Часть 2: Как готовиться к сертификации ISTQB? Истории из практики В Первой части нашей статьи по сертификации ISTQB мы постарались ответить на вопросы: Кому? и Зачем? нужен данный сертификат. Меленький спойлер: сотрудничество с ISTQB открывает больше дверей скорее перед компанией-работодателем, чем перед новоявленным владельцем сертификат...

Автоматизируем профилирование Java meetup 10/09 Приглашаем 10 сентября на открытый митап Автоматизируем профилирование Java, который пройдет на площадке Райффайзенбанка в Нагатино. Вместе будем разбираться, как тестировать и оптимизировать производительность микросервисов, а еще узнаем, как достать себя из рутины провер...

[Перевод] Таймер в iOS Представьте, что вы работаете над приложением, в котором нужно периодически выполнять некоторые действия. Именно для этого в Swift используется класс Timer. Timer используется для планирования действий в приложении. Это может быть разовое действие или повторяющаяся процедур...

Получи оффер за 1 день в backend-команду в день космонавтики Всем привет! FunCorp продолжает расширяться в Москве: мы открываем новое направление и ищем в backend-команду Senior PHP и Senior Java разработчиков. Нам очень понравился формат однодневного Hiring event’a, который мы проводили для QA-отдела 16 марта, поэтому мы решили ...

Zero Bug Policy. Нет багов — нет проблем? Кто про что, а я про баги. В прошлом году я рассказывала вам про Багодельню — мероприятие, проводимое у нас в компании для чистки бэклога багов. Событие хорошее и полезное, но решающее проблему с багами разово. Мы провели уже шесть Багоделен, но количество участников постепе...

G-Core Labs запускает новый европейский хостинг в Польше Компания G-Core Labs, международный провайдер облачных и edge-решений по доставке контента, хостингу и безопасности, расширяет присутствие в Европе, открывая 5-ю точку своего хостинга в этой части света в Варшаве. Новая локация в Польше уже демонстрирует одну из лучших на ме...

Психоанализ эффекта недооцененного специалиста. Часть 2. Как и зачем противостоять Начло статьи с описанием возможных причин недооценности специалистов, можно прочитать, перейдя по «ссылке». III Противостояние причинам, вызывающим недооцененность. Вирус прошлого не поддается лечению – пока свое не возьмет, он не уйдет. Но ему можно и нужно противостоять...

[Из песочницы] Кластерное хранилище Pacemaker + DRBD (Dual primary) + ctdb Доброго времени суток, хабровчане. Поступила задача — развернуть отказоустойчивое High Available хранилище по средствам pacamaker + drbd (в режиме dual primary) + clvmd + ctdb, которое будет монтироваться на сервер. Оговорюсь, что со всеми этими инструментами я сталкиваюсь в...

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

Huawei: Защита плоскости управления В статье рассматриваются аспекты защиты плоскости управления маршрутизаторов Huawei NE Series. Примеры приведены для NE40e, с программным обеспечением: VRP V800R008. На других типах маршрутизаторов (например NE5k) и с другой версией ПО, конфигурация может несколько отличатьс...

[Из песочницы] Знакомство с Microsoft Azure DevTest Labs Всем привет! В статье пойдет речь об облачном сервисе Microsoft Azure DevTest Labs. Данный сервис позволяет решить вопрос настройки среды для разработки, тестирования и лабораторных занятий. Тема лабораторных от меня далека, поэтому я расскажу про настройку сред для разра...

MacBook Pro (2019) сильно удивляет. Чем? Несколько дней назад Apple обновила базовую версию MacBook Pro. Новинка получила новый четырехъядерный процессор Intel восьмого поколения, сенсорную панель Touch Bar, а также клавиатуру «бабочка» третьего поколения. Наверняка, многие рассматривают этот ноутбук к покупке ...

Как мы тестировали drag&drop в HTML5 Так или иначе, все сталкивались с ситуациями, когда в банальной обстановке вдруг происходило что-то необычное. Примерно такой случай произошел с нами при тестировании нового приложения на проверенном сто раз окружении. Сюрпризом для нас стало использование некоторых возможно...

[Из песочницы] Управление аппаратными ресурсами по расписанию В данной статье рассмотрен возможный вариант реализации автоматизированной системы управления аппаратными ресурсами (на примере электромагнитных реле) с привязкой к абсолютному времени. Подобная система может оказаться очень полезной при решении задачи автоматизации тестиров...

[Перевод] Полнофункциональная динамическая трассировка в Linux с использованием eBPF и bpftrace «В режиме трассировки программист видит последовательность выполнения команд и значения переменных на данном шаге выполнения программы, что позволяет легче обнаруживать ошибки» — сообщает нам Википедия. Сами будучи поклонниками Linux, мы регулярно сталкиваемся с вопросом, ...

[Перевод] Стоит ли высокое качество ПО затрат на его разработку? Часто в процессе реализации проектов команды сталкиваются с вопросом: чему следует уделять больше внимания – выпуску новых фич или повышению качества кода? Обычно менеджеры делают выбор в пользу фич. Зачастую разработчики таким положением дел недовольны, считая, что им выде...

TDDx2, BDD, DDD, FDD, MDD и PDD, или все, что вы хотите узнать о Driven Development Просматривая статьи по проектированию ПО, я постоянно встречал тучу невиданных сокращений и вскользь упоминаемых практик разработки. TDD — ну, это все знают, сначала пишем тесты, а потом остальной код. BDD — что-то знакомое, вроде как, тоже тесты, но особенные. TDD — снов...

Подробно о dynamic: подковерные игры компилятора, утечка памяти, нюансы производительности Прелюдия Рассмотрим следующий код: //Any native COM object var comType = Type.GetTypeFromCLSID(new Guid("E13B6688-3F39-11D0-96F6-00A0C9191601")); while (true) { dynamic com = Activator.CreateInstance(comType); //do some work Marshal.FinalReleaseComObject(com...

Как мы нашли критичную уязвимость AspNetCore.Mvc и перешли на собственную сериализацию Привет, Хабр! В этой статье мы хотим поделиться нашим опытом в оптимизации производительности и исследовании особенностей AspNetCore.Mvc. Предыстория Несколько лет назад на одном из наших нагруженных сервисов мы заметили существенное потребление ресурсов CPU. Это выгляде...

Близкие контакты ADL-ной степени Как навсегда вписать своё имя в историю? Первыми слетать на Луну? Первым встретиться с инопланетным разумом? У нас есть способ проще — можно вписать себя в стандарт языка C++. Хороший пример показывает Эрик Ниблер — автор C++ Ranges. «Запомните это. 19 февраля 2019 года — д...

Как мы YouTube Live с Zoom интегрировали Всем привет! Это вторая часть серии статей от IT-команды сервиса бронирования отелей Ostrovok.ru об организации онлайн-трансляции корпоративных презентаций и мероприятий в одном отдельно взятом помещении. В первой статье мы рассказали о том, как решили проблему плохого зву...

[Перевод] Интервью с Келси Муди: как построить компанию и покончить с возрастными патологиями Недавно я посетил Longevity Leaders Conference в Лондоне и там имел возможность поговорить с Келси Муди, главой Ichor Therapeutics, компании, специализирующейся на изучении процессов старения и борьбе с возрастными патологиями. Я уже брал у него интервью раньше, в 2017 го...

TestMace. Быстрый старт Всем привет. Мы потихоньку выходим из тени и продолжаем серию статей о нашем продукте. После предыдущей обзорной статьи мы получили множество отзывов (преимущественно положительных), предложений и bug репортов. Сегодня мы покажем TestMace в деле и вы по достоинству сможете ...

[Перевод] Введение в юнит-тестирование в Unity Вам любопытно, как работает юнит-тестирование в Unity? Не знаете, что такое юнит-тестирование в целом? Если вы ответили положительно на эти вопросы, то данный туториал будет вам полезен. Из него вы узнаете о юнит-тестировании следующее: Что это такое Его польза Достоинств...

[Перевод] Smem – Отчеты о распределении памяти между процессами и пользователями в Linux И снова здравствуйте. Друзья, хотим поделиться с вами переводом полезного материала о мониторинге использования памяти в Linux. Данный материал подготовлен специально для студентов курса «Администратор Linux». Управление памятью в вопросах мониторинга ее использования – о...

PlayStation 5 будет очень мощной Компания AMD, которая уже достаточно давно делает железо для приставок компании Sony, заявила, что PlayStation 5 порадует пользователей чем-то невероятным. К примеру, новая графика будет удивлять не только своим невероятным разрешением и качеством, но и трассировкой лучей в ...

[Из песочницы] Решение RIPE и его последствия по исключению двух российских LIR (Netup, gcxc.net) На прошедшей неделе RIPE NCC разослал письма клиентам Netup о том, что их LIR исключён из RIPE NCC и они должны найти себе нового LIR или получить статус LIR самостоятельно. Само письмо было опубликовано в чате ENOG (копия на pastebin). Краткая выдержка из письма: We would l...

Руководство по реализации авто-возобновляемых подписок в iOS-приложениях Всем привет! Меня зовут Денис, я разрабатываю Apphud – сервис по аналитике авто-возобновляемых подписок в iOS-приложениях. В данной статье я расскажу как настроить, реализовать и валидировать авто-возобновляемые подписки в iOS 12 и iOS 13. Бонусом расскажу о тонких моментах...

Простой способ ускорить компьютер в играх В мае 2017 года у нас выходила статья о том, что Microsoft внедрила в Windows специальный игровой режим, который, однако, вместо улучшения пользовательского опыта, приносит негатив. С тех пор прошло полтора года, но недавний тест показал, что игровой режим Windows 10 тольк...

[Из песочницы] Рендеринг 3D графики с помощью OpenGL Введение Рендеринг 3D графики — непростое занятие, но крайне интересное и захватывающее. Эта статья для тех, кто только начинает знакомство с OpenGL или для тех кому интересно, как работают графические конвейеры, и что они из себя представляют. В этой статье не будет точных ...

SMARTtech: Когда нужно использовать VPS и как понять, что пора обновляться?! VPS-хостинг обычно рассматривается вебмастером как следующий шаг после того, как ваш сайт вырастает за пределы ресурсов и возможностей обычного хостинга. Если даже самого продвинутого тарифного плана хостинга больше недостаточно для бесперебойной работы вашего сайта, стоит н...

[Из песочницы] Как я боролся с Shared Element Transition и написал свою первую opensource библиотeку Нет повести печальнее на свете, чем повесть о ViewPager’e и SET’e Хочется предупредить, что автор ‒ новичок андроид, поэтому статья содержит столько технических неточностей, что вас, скорее, нужно предупредить о том, что в статье могут встретиться технически достоверные...

[Из песочницы] Подводные камни Java Здравствуйте. Хочу представить вашему вниманию небольшую статью. Цель данной публикации: Показать наиболее часто встречающиеся ошибки начинающих и некоторые приемы их исправления. Понятно, что некоторые ошибки могут быть сложными и происходить по тем или иным причинам. Цель...

[Перевод] Мы ускорили планировщик Tokio в десять раз Мы в поте лица готовим очередную мажорную версию Tokio, асинхронной среды выполнения для Rust. 13 октября для слияния в ветку оформлен пул-реквест с полностью переписанным планировщиком задач. Результатом станет огромное улучшение производительности и уменьшение задержки. В ...

Новое мерило производительности. Представлен бенчмарк Geekbench 5 с поддержкой только 64-разрядных процессоров и операционных систем Компания PrimateLabs, которая является создателем популярного бенчмакра Geekbench, анонсировала последнюю версию тестовое платформы под названием Geekbench 5. Она уже доступна для Windows, Linux, macOS и iOS и должна появиться на Android позже на этой неделе. Авторы Ge...

[Из песочницы] Как работают веб-приложения Это статья для начинающих разработчиков и тех, кто хочет немного ориентироваться в терминах и технологиях современных веб-приложений. В статье написано о том, чем веб-приложения отличаются от сайтов, какие бывают веб-приложения, из чего они состоят и как работают. Читать да...

Ресурсное планирование. Почему оно не работает? Часть 1 Ценность ресурсного планирования для IT-компании сложно подвергнуть сомнению. Ресурсные планы есть у многих. А действительно работающей системой ресурсного планирования похвалиться могут совсем немногие. Почему же? Давайте разберёмся. Что такое действительно работающая сист...

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

Как мы разогнали САПР КОМПАС-3D → Часть 3 Это заключительная часть статьи об ускорении КОМПАС-3D v18 (Часть 1, Часть 2). Она посвящена доработкам в расчетах массо-центровочных характеристик и тому, что сделано для ускорения КОМПАСа на стороне нашего геометрического ядра C3D. И еще немного расскажем о том, какое желе...

Страх, боль и ненависть технической поддержки Хабр — не жалобная книга. Эта статья о бесплатных инструментах компании Nirsoft для системного администратора Windows. Обращаясь в службу технической поддержки зачастую люди испытывают стресс. Кто-то переживает из-за того, что не сможет объяснить проблему и будет выглядить ...

Боль и слёзы в Svelte 3 Вместо предисловия Статья будет полезна тем, кто так-же как и Мы решил попробовать Svelte в живом проекте. В нашу небольшую компанию пришёл заказ на разработку веб-админки для сервиса с бекэндом на Mongodb Stitch. В последние пару лет frontend Мы пишем на React или Vue (в за...

Кастомизация резолвинга зависимостей в Spring Привет! Меня зовут Андрей Неведомский и я главный инженер в СберТехе. Я работаю в команде, которая занимается разработкой одного из системных сервисов ЕФС (Единой Фронтальной Системы). В своей работе мы активно используем Spring Framework, в частности его DI, и время от врем...

Гипотезы о преодолении инерции и ее природе Каждый день мы сталкиваемся с явлением инерции. Имея различное высокотехнологичное оборудование, человечество так и не научилось преодолевать хотя бы на малую величину, влияние инерции. В данной статье анализируются гипотезы о возможном преодолении, ликвидации инерции, а так...

Реализация Kotlin Flow на C# Всем привет! Последние годы я занимаюсь разработкой под Андроид на Котлине. Не так давно, за неимением RxJava на Kotlin multiplatform, мы начали использовать корутины и flow – холодные стримы для Котлина из коробки. До Андроида я много лет провёл с C#, и там свои корутины е...

«Универсал» в команде разработки: польза или вред? Всем привет! Меня зовут Людмила Макарова, я менеджер разработки в УБРиР и треть моей команды – «универсалы». Признайте: каждый Tech Lead мечтает о кросс-функциональности внутри своей команды. Ведь это так круто, когда один человек способен заменить трех, да еще и сделать ...

[Из песочницы] Год приключений с graphene-python Год приключений с graphene-python Всем привет, я python-разработчик. Последний год я работал с graphene-python + django ORM и за это время я пытался создать какой-то инструмент, чтобы сделать работу с graphene удобнее. В результате у меня получилась небольшая кодовая база g...

Data Science «спецназ» собственными силами Практика показывает, что многие enterprise компании сталкиваются с трудностью в реализации аналитических проектов. Все дело в том, что, в отличии от классических проектов по поставке железа или внедрению вендорских решений, укладывающихся в линейную модель исполнения, задач...

[Перевод] Моя вторая неделя с Haiku: множество скрытых алмазов и приятных сюрпризов, а также некоторые проблемы Редактирование снимка экрана для этой статьи — в Haiku TL;DR: Производительность намного лучше, чем изначально. Виноват был ACPI. Запуск в виртуальной машине работает прекрасно для показа экрана. Git и менеджер пакетов встроены в файловый менеджер. Публичные беспроводные се...

Один день из жизни модели ресторана Данная статья описывает новые компоненты фреймворка для имитационного моделирования, ранее представленного в статье «Простая система имитационного моделирования на Go». По мере расширения фреймворка появилась возможность моделировать более сложные системы, например, провест...

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

Компас команды Привет! Меня зовут Маша, я Scrum Master в ivi. Работаю с командами биллинга и веб-разработки и помогаю ребятам организовывать рабочие процессы так, чтобы не только эффективно достигать целей, которые ставит бизнес, но и получать удовольствие от того, что ты делаешь. В своих ...

2. Обзор технической поддержки и гарантии коммутаторов Extreme Networks Введение Друзья, добрый день. В предыдущей статье мы рассмотрели коммутаторы Extreme уровня Enterprise. Теперь я немного изменю порядок статей и сегодня продолжу цикл статьей про сервисные контракты и гарантийные обязательства Extreme. У Extreme, как и у всех остальных бол...

[Перевод] Обработка 40 ТБ кода из 10 млн проектов на выделенном сервере с Go за $100 Написанной мной инструмент командной строки Sloc Cloc and Code (scc), который теперь доработан и поддерживается многими отличными людьми, подсчитывает строки кода, комментарии и оценивает сложность файлов внутри каталога. Здесь нужна хорошая выборка. Инструмент подсчитывает ...

[Перевод] Как жалобы перенастраивают ваш мозг на негатив [и влияют на здоровье] Предисловие: Ссылку на оригинальную статью я увидел в комментарии здесь, на Хабре (к сожалению, не могу его найти чтобы указать автора и сказать спасибо). Статья имеет значение не только для тех, кто жалуется (кто же в этом признается?), но и тем, кому жалуются. Не все знают...

[Перевод] Почему программисты продолжают использовать многословный Java, хотя есть лаконичный Python Java и Python — одинаково популярные языки программирования. Однако Python более продуктивен: в нем меньше объем кода, нужного для решения задачи. Почему же программисты до сих пор работают с Java там, где можно применить Python? Давайте разбираться. Читать дальше →

[Перевод] Асинхронное программирование – производительность async: понять расходы на async и await Это статья достаточно древняя, но не потерявшая актуальности. Когда разговор заходит об async/await, как правило, появляется ссылка на неё. Перевода на русский найти не смог, решил помочь кто не fluent. Асинхронное программирование долгое время было царством самых опытных р...

AMD Radeon RX 5500 уступила GeForce GTX 1660 и Radeon RX 580 в первом тесте Несмотря на то, что 3D-карту AMD Radeon RX 5500 официально представили полтора месяца тому назад, в продаже она так до сих пор и не появилась. Тем интереснее данные первого теста реального образца Radeon RX 5500, проведенного немецким источником. Прежде чем интерпретир...

Пишем Reverse socks5 proxy на powershell.Часть 3 История об исследовании и разработке в 3-х частях. Часть 3 — практическая. Буков много — пользы еще больше Предыдущие статьи из цикла можно найти тут и здесь =) Проверка боем Давайте теперь проверим работу нашего скрипта на практике. Для этого попробуем выбросить обратный ...

Открытый вебинар «Введение в автоматизацию тестирования мобильных приложений на Selenium и Appium» Всем привет! Накануне запуска курса «Mobile QA Engineer» мы провели традиционный открытый урок. Информации оказалось так много, что вебинар растянулся на два дня (День 1, День 2). По сути, это был настоящий двухдневный Mobile QA-интенсив, который будет полезен всем, кто на...

Как ускорить шифрование по ГОСТ 28147-89 на процессоре Байкал-Т1 за счет SIMD-блока В статье на примере описания реализации алгоритма шифрования по ГОСТ 28147–89, построенного на сети Фейстеля, показаны возможности двухъядерного процессора BE-T1000 (aka Байкал-Т1) и проведены сравнительные испытания реализации алгоритма с помощью векторных вычислений с сопр...

[Перевод] Программный поиск общего кода с помощью oEmbed Всем доброго времени суток! Хочу поделиться переводом статьи ""Programmatically Discovering Sharing Code With oEmbed" автора Drew McLellan. Введение На многих сайтах размещены мультимедиа и контент, которыми можно поделиться в другой платформе с помощью некоторого HTML-кода...

[Из песочницы] 5 наиболее распространенных проблем работодателей при подборе IT-специалистов с точки зрения рекрутера-аутсорсера Эта статья написана по материалам моего выступления на HR Meetup #5, проходившего 5 октября 2018 года в г. Ростове-на-Дону. О себе Меня зовут Игорь Шелудько. Я – предприниматель в сфере разработки и продаж программного обеспечения с 2000 года. У меня высшее техническое о...

[Из песочницы] Моя вторая зима без снега или магистратура в Бельгии Хочу поделиться своим опытом поступления в институт и переезда в Европу. Пришлось столкнуться с недостатком актуальной информации по документам и ценам, и вся имеющаяся сейчас информация в интернете значительно отличается от той реальности, которая меня ожидала. Это история...

Как поменять хостинг провайдера сайта? Порой владельцы веб-сайтов сталкиваются с необходимостью смены хостинг провайдера. Сообщение Как поменять хостинг провайдера сайта? появились сначала на technoguide.

Merkle Tree: ржавое и быстрое Всем привет! Недавно открыл для себя язык Rust. О своих первых впечатлениях поделился в предыдущей статье. Теперь решил копнуть немного глубже, для этого необходимо что-то посерьёзнее списка. Выбор мой пал на дерево Меркла. В этой статье я хочу: рассказать про эту структур...

[Из песочницы] Путь от хирургии к геймдеву или первый опыт мобильной разработки на Unity Зачем, кому и от кого Всем привет! Меня зовут Анатолий. Я хочу рассказать историю о наших первых шагах в геймдеве, чтобы поделиться пусть и небольшим, но всё же опытом. Зачем? Потому что всего 6 месяцев назад сам искал подобные публикации, перечитывал и выписывал советы. Над...

Боевые стрельбы в ночи, или Почему нагружать прод — не страшно «А если ты не выстрелишь, то испорчусь я» Ещё недавно считалось, сервис должен просто работать. Нарисовали, заверстали, написали скрипты — вроде всё ок, можно катить на прод. Но конкуренты не дремлют, поэтому начинается гонка не только за новыми функциями, но и за скоростью...

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

Машинное обучение на максимальной скорости: система Predictive Maintenance за четыре месяца Автор: Людмила Дежкина, Solution-архитектор, DataArt Около полугода наша команда работает над Predictive Maintenance Platform — системой, которая должна предсказывать возможные ошибки и поломки оборудования. Это направление стоит на стыке IoT и Machine Learning, работать ...

Результаты тестов ARM-процессора Snapdragon 8cx под Windows 10 На Geekbench был обнаружен новый процессор Qualcomm Snapdragon, и этот процессор очень сильно похож на Snapdragon 8cx, который является ответом производителя микроэлектроники на предложения Intel среднего класса.В двух тестах Snapdragon SC8180X (8cx) уже показал хорошую прои...

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

[Из песочницы] Как организовать хакатон будучи студентом 101. Часть первая Всем привет, уже несколько раз натыкался на статьи про хакатоны: почему люди туда ходят, что работает, что нет. Возможно людям будет интересно услышать про хакатоны с другой стороны: со стороны организатора. Прошу обратить внимание что речь идет о Великобритании, организат...

Регулярная Авалония Иногда мы не понимаем как работает регулярное выражение, которое мы составили, и хотим проверить. Есть множество восхитительных приложений встроенных в различные среды или онлайн. Мне захотелось добавить еще одно к этому списку. В данной статье мы посмотрим, как можно оберну...

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

Межпозвоночная грыжа? Работай над ней Внимание! Данная статья не призывает к самолечению! Не является рекламной. Люди уникальны, единой схемы для всех нет. Статья будет иметь более мотивационный окрас, нежели россыпь медицинских терминов. Тем не менее, я считаю ей место быть, как реальной истории перехода от о...

[Из песочницы] Обрабатываем заказы из интернет магазина с помощью RabbitMQ и TypeScript Всем привет! Популярность интернет коммерции постоянно растет, как и доля информатизации всех смежных с торговлей видов деятельности. Вместе с этим растет и сложность обработки информации. Каждый заказ, сделанный клиентом интернет магазина, порождает за собой большое количе...

[Из песочницы] Интервалы: грядущая эволюция C++ Уже скоро появится стандарт C++20, в который, скорее всего, добавят концепцию интервалов (ranges), однако мало кто знает, что они из себя представляют и с чем их едят. Доступных широкой аудитории русскоязычных источников про этого зверя мне найти не удалось, вследствие чего ...

Переход с виртуальных машин на контейнеры LXC: причины, преимущества и готовая инструкция к применению О чем мы расскажем: — Почему мы решили перейти на LXC контейнеры? — Как создать контейнер и запустить на нем хост на базе Битрикс? Для кого это будет полезно: Для всех, кто хочет попробовать новое решение, при этом используя меньше ресурсов. Читать дальше →

Защита от воды подтверждена. OnePlus 7 Pro продержался в воде 30 минут и продолжил работать Во время недавнего анонса флагманского смартфона OnePlus 7 Pro компания OnePlus отметила, что смартфон устойчив к воздействию воды, но не уточнила сертификации по влагозащите.  Видеоблогер Мэтью Мониз (Matthew Moniz) опубликовал ролик, в котором проводится ре...

G-CoreLabs запустила новый европейский хостинг в Польше Компания G-CoreLabs, международный провайдер облачных и edge-решений по доставке контента, хостингу …

[Из песочницы] Быстрая интеграция с 1С: Предприятие В данной статье я расскажу о наиболее простом, на мой взгляд, способе интеграции сторонних приложений с конфигурациями 1С. Статья будет интересна в первую очередь разработчикам, пишущим на .Net Core, PHP и Python. Способов интеграции с 1С известно много, этому даже посвящен...

Nvidia GeForce RTX 2080 Super обошла в тесте OpenCL обычную GeForce RTX 2080, но много уступила AMD Radeon RX 5700 XT 50th Anniversary Вчера мы писали о том, что 3D-карта Nvidia GeForce RTX 2080 Super засветилась в бенчмарке Final Fantasy XV, где выступила очень хорошо — на уровне куда более дорогой видеокарты Titan V. А сейчас предлагаем взглянуть на производительность GeForce RTX 2080 Super в т...

Учимся общаться между микросервисами на Node.js через RabbitMQ Это продолжение статьи «Пишем первый микросервис на Node.js с общением через RabbitMQ», которая была неплохо принята пользователями хабра. В этой статье я расскажу о том, как нужно правильно общаться между микросервисами, чтобы микросервисы оставались изолированными. Читать ...

Анализ производительности виртуальной машины в VMware vSphere. Часть 1: CPU Если вы администрируете виртуальную инфраструктуру на базе VMware vSphere (или любого другого стека технологий), то наверняка часто слышите от пользователей жалобы: «Виртуальная машина работает медленно!». В этом цикле статей разберу метрики производительности и расскажу, ...

[Перевод] Автоматизация Android. Супер простое руководство по созданию первого Espresso-теста Здравствуйте, друзья. В преддверии старта курса «Mobile QA Engineer», хотим поделиться с вами переводом интересного материала. Что такое Espresso? Нет, это не напиток, который вы пьете каждый день, чтобы взбодриться. Espresso — это тестовый фреймворк с открытым исходным к...

PHP для начинающих. Сессия Всем хорошего дня. Перед вами первая статья из серии PHP для начинающих разработчиков. Это будет необычная серия статей, тут не будет echo "Hello World", тут будет hardcore из жизни PHP программистов с небольшой примесью «домашней работы» для закрепления материала. Начну с...

Нужен готовый джун — научи его сам, или Как мы запускали курс семинаров для студентов Для эйчаров в ИТ не секрет, что если твой город — не миллионник, то найти в нём программиста проблематично, а человека, который владеет нужным стеком технологий и опытом, и того сложнее. В Иркутске айтишный мир тесен. Большинство разработчиков города в курсе существования к...

Перегревается ли новый MacBook Pro при серьёзной нагрузке? В июле прошлого года были представлены первые MacBook Pro на базе процессоров Intel Core i9. Практически сразу в Сети появились критические отзывы, в которых говорилось, что новая модель уступает даже своему предшественнику, из-за чрезмерного перегрева при серьёзных длитель...

Замеряем производительность Qt Решила продолжить цикл статей об ОС «Аврора» (до недавнего времени называвшейся Sailfish). За время, что я работаю с этой ОС, у меня накопились разные наблюдения, которые касаются производительности приложений на Qt и системы в целом, ибо девайсами она разнообразными обвешан...

Кластерное хранилище для небольших web-кластеров на базе drbd+ocfs2 О чем мы расскажем: Как быстро развернуть общее хранилище для двух серверов на базе решений drbd+ocfs2. Для кого это будет полезно: Туториал станет полезен системным администраторам и всем, кто выбирает способ реализации хранилища или хотят попробовать решение. От каких р...

Бобро поржаловать, или Что нужно знать о бизнесе в Италии Наша компания «ЛАНИТ-ТЕРКОМ» занимается разработкой наукоемкого программного обеспечения — с далекого 1991 года мы активно работаем на иностранных рынках:  в странах Европы и США. В 2015 году мы решили, что логичным шагом вперед для развития бизнеса будет открытие офиса где-...

[Из песочницы] Параметризация из файла в py.test В области автоматического тестирования можно встретить разные инструменты, так, для написания авто-тестов на языке Python одним из наиболее популярных решений на данный момент является py.test. Прошерстив множество ресурсов связанных с pytest и изучив документацию с официал...

Кто быстрее: Galaxy Note 10+ или iPhone XS Max Какой смартфон окажется быстрее? В начале августа компания Samsung провела мероприятие Galaxy Unpacked в Нью-Йорке, в ходе которой представила линейку Galaxy Note 10. Смартфоны не стали для нас откровением, но только потому, что все спецификации и внешний облик устройств «ут...

Профессиональное выгорание в ИТ (результаты исследования «Моего круга») В октябре прошлого года «Мой круг» пригласили на РИФ Воронеж сделать доклад про профессиональное выгорание среди ИТ-специалистов. Как всегда, мы подошли основательно, провели по этой теме соцопрос среди пользователей «Моего круга» и «Хабра» и сегодня рады поделиться своим ...

Performance in .NET Core Performance in .NET Core Всем привет! Данная статья является сборником Best Practices, которые я и мои коллеги применяем на протяжении долгого времени при работе на разных проектах. Информация о машине, на которой выполнялись вычисления:BenchmarkDotNet=v0.11.5, OS=Window...

Компоненты-агностики в Angular Когда работаешь над библиотекой переиспользуемых компонентов, вопрос API встает особенно остро. С одной стороны, нужно сделать надежное, аккуратное решение, с другой — удовлетворить массу частных случаев. Это относится и к работе с данными, и к внешним особенностям различных...

Бывший сотрудник Microsoft объяснил, почему в Windows 10 так много ошибок Бывший сотрудник Microsoft Джерри Берг, который проработал в компании более 15 лет и отвечал за разработку инструментов и процессов для автоматизации тестирования операционных систем Windows, опубликовал видео на своём канале YouTube, в котором объяснил, почему в обновления...

Кто ты без своего кода: киберпанк-тест Забудем о магии, философии и оптимизме и поговорим о киберпанке. В отличие от других фантастических направлений это для нас самое близкое. Чтобы прикоснуться к нему, кому-то достаточно посмотреть новости, кому-то— проехать свою остановку и выйти на конечной, а кому-то — выгл...

К чему приложить прикладного лингвиста? “Что за дело? Это многих славных путь.” Н.А. Некрасов Всем привет! Меня зовут Карина, и я “совместитель” — совмещаю учёбу в магистратуре и работу технического писателя в Veeam Software. О том, как у меня это вышло, я и хочу рассказать. Заодно кто-то узнает, как можно прийти...

Какой процессор лучше для ноутбука: разбираемся в конфигурациях При выборе ноутбука одним из самых главных вопросов является его производительность. Центральным звеном в этом вопросе является используемый в устройстве процессор. CHIP расскажет, как подобрать нужный CPU исходя из поставленных задач, чтобы не переплачивать.

Радужная кошка Тестирую китайский радужный PLA от фирмы Noulei<br /> , надо было напечатать подарочек<br /><br />слой 0.15мм, температура 205/65, скорость 40 периметр и 80 остальное, обдув 100% 2 турбинками 4010&nbsp;<br /><br />печатал в спешке, только у...

Производительность Xiaomi Mi 9T Pro испытали в бенчмарке Готовящийся к выпуску смартфон Xiaomi Mi 9T Pro прошел тестирование в бенчмарке Geekbench. Тестируемый аппарат использовал процессор Snapdragon 855, 6 ГБ оперативной памяти и Android 9.0 Pie в качестве программного обеспечения. В одноядерных тестах Xiaomi Mi 9T Pro набрал 3...

Разработка hexapod с нуля (часть 4) — математика траекторий и последовательности Всем привет! Разработка гексапода продвинулась на еще один шаг. На этот раз реализованы и протестированы траектории движения конечности — очередная часть математики передвижения. В этой статье я расскажу об этих траекториях и базовых последовательностях для движения. Надеюс...

Теплый ламповый. Погружение. Тестируем ламповый усилитель, «мягкую» акустику и летающие виниловые диски У нас на тесте еще не было ламповых усилителей. Надо восполнять пробел! Логичным шагом было подобрать к такому усилителю в партнеры полочную акустику, а в качестве источника — проигрыватель винила. Итак встречайте: ламповый усилитель Cayin CS-55A, акустическая система Arslab...

Обзор компьютерного корпуса Cooler Master MasterBox MB520 (MCB-B520-KANN-S02) Компьютерный корпус сегодня далеко не просто та коробка, которая лишь определяет то, насколько нарядно и эффектно будет выглядеть ваш системный блок. Сегодня производители корпусов уделяют много внимания проектированию этих гаджетов, потому что они влияют также на общую пр...

[Перевод] Почему, зачем и когда нужно использовать ValueTask Этот перевод появился благодаря хорошему комментарию 0x1000000. В .NET Framework 4 появилось пространство System.Threading.Tasks, а с ним и класс Task. Этот тип и порождённый от него Task<TResult> долго дожидались, пока их признают стандартами в .NET в роли ключевых а...

Как запретить стандартные пароли и заставить всех тебя ненавидеть Человек, как известно, существо ленивое. А тем более, когда касается вопроса выбора устойчивого пароля. Думаю, каждый из администраторов когда-либо сталкивался с проблемой использования легких и стандартных паролей. Такое явление часто встречается среди верхних эшелонов ру...

Как мы победили дерево категорий Вы наверняка сталкивались с таким элементом интерфейса. В местах продажи, на дискуссионных площадках, да практически повсеместно этот элемент встречается. Даже тут, на хабре, хабы в виде дерева. Не исключение и фриланс-биржи. Заказы нужно как-то группировать, чтобы исполни...

Juju — краткий обзор На днях наткнулся на инструмент Juju от Canonical. Обрывочные сведения из интернета утверждают, что это инструмент управления конфигурацией наподобие Chef, Ansible или Puppet. Я прочитал наискосок доки по нему, заглянул в репозитории с charms-модулями (аналог кукбуков или пл...

[Перевод] Уязвимость Exchange: как обнаружить повышение привилегий до администратора домена Обнаруженная в этом году уязвимость в Exchange позволяет любому пользователю домена получить права администратора домена и скомпрометировать Active Directory (AD) и другие подключенные хосты. Сегодня мы расскажем, как работает эта атака и как ее обнаружить. Читать дальше ...

[Перевод] USB-педаль для переключения между компьютерами Статья из блога самоделкина с ником РедькаМышь Вот она, во всей своей красе: Файлы STL: Верх корпуса. Низ корпуса. Кнопка. Зачем я её сделал Я одновременно использую несколько ноутбуков. На них запущены Linux, OpenBSD, macOS и ChromeOS. Я предпочитаю работать на кл...

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

Nvidia GeForce RTX 2060 Super обходит GeForce RTX 2070 по производительности в тесте OpenCL База данных Geekbench дала возможность сравнить производительность видеокарт GeForce RTX 2060 Super и GeForce RTX 2070 Super с уже известными моделями в тесте OpenCL. Судя по результатам теста, GeForce RTX 2060 Super в каких-то реальных приложениях или играх даже будет ...

Анонс AMD Radeon Pro Vega II и Radeon Pro Vega II Duo: мощные ускорители на 7-нм GPU Vega 20 Компания AMD анонсировала новые видеокарты Radeon Pro Vega II и Radeon Pro Vega II Duo для профессионалов, которые постоянно сталкиваются с рендерингом, редактированием видео в разрешении 8K, созданием высококачественного 3D-контента и другими требовательными приложениями. П...

Темы и стили в Android без магии. И как их готовить с SwitchCompat В предыдущей статье мы рассмотрели как использовать темы и стили на уровне кода, на примере кастомной view. В этой статье давайте разберем несколько способов стилизации стандартного ui элемента, а в частности SwitchCompat. Читать дальше →

Вокруг беты за 260 дней: как мы учились прислушиваться к пользователям Все знают: догфудить собственный продукт (ну, есть корм своей собаки – разрабатывать продукт, который сам же используешь) – это правильный во всех отношениях принцип. Работая над конструктором чатботов Aimylogic, мы в Just AI прекрасно представляли, каким он должен быть, но ...

Динамическая CDN для WebRTC стриминга с низкой задержкой Ранее, анализируя возможности стандартных конфигураций серверов в Digital Ocean с точки зрения WebRTC стриминга, мы отмечали, что один сервер может обслужить до 2000 зрителей. В реальной жизни часто встречаются случаи, когда одного сервера недостаточно. Допустим, любители а...

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

[Перевод] Настраиваем Out-Of-Memory Killer в Linux для PostgreSQL Когда в Linux сервер базы данных непредвиденно завершает работу, нужно найти причину. Причин может быть несколько. Например, SIGSEGV — сбой из-за бага в бэкенд-сервере. Но это редкость. Чаще всего просто заканчивается пространство на диске или память. Если закончилось прост...

Пентест приложений с GraphQL В последнее время GraphQL набирает всё большую популярность, а вместе с ней растёт и интерес со стороны специалистов информационной безопасности. Технологию используют такие компании, как: Facebook, Twitter, PayPal, Github и другие, а это значит, что пора разобраться, как т...

[Перевод] Как Apple (приватно) найдёт в офлайне ваше потерянное устройство? В понедельник на конференции WWDC компания Apple представила классную новую функцию под названием “Find My". В отличие от стандартной «Найти мой iPhone», которая полагается на инфраструктуру сотовой связи и GPS потерянного устройства, функция «Найди меня» способна найти даже...

Идеальный игровой? Тестируем 25-дюймовый геймерский монитор AOC AG251FG До теста этой модели трудно было предположить, что AOC AG251FG окажется не просто хорош, а настолько хорош. Скажем, к узнаваемому красно-серому исполнению мы уже привыкли, 240 герц — это, конечно, хорошо, но матрица TN немного настораживала. А тут оказалось…! Впрочем, давайт...

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

Обеспечение отказоустойчивости хранилищ Всем привет! Недавно состоялся открытый вебинар «Обеспечение отказоустойчивости хранилищ». На нём рассмотрели, какие проблемы возникают при проектировании архитектур, почему выход из строя серверов — это не оправдание для падения сервера и как сокращать время простоя до ми...

Зачем нужен логотип для бизнеса? Современный логотип как большая удача. Опытные компании в большинстве случаев предпочитают работать с профессионалами, которые берут деньги, но и всегда дают результат. Но с профессионалами надо уметь работать и прежде всего, нужно уметь давать правильные задания на создания...

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

Курсы vs стажировка. Как мы в SimbirSoft учим мидлов У нас несколько центров разработки, и мы постоянно ищем в регионах талантливых мидлов. С 2013 года обучаем разработчиков – проводим митапы, хакатоны, интенсивы. В статье рассказываем, как учеба помогает подружиться с мидлами, а также кто и зачем приходит на внешнюю и внутрен...

[Из песочницы] Структуры данных в Java. Полезные методы вспомогательных классов Привет, habr! Я Software Engineer в EPAM. Более 8 лет я работаю с legacy-кодом, написанном на языке Java (предвосхищая комментарии, отмечу, что понимание и терпимость к legacy началась задолго до EPAM, в заключении вы найдёте ответ, почему). Часто в работе я сталкивался с ...

Microsoft предупреждает, что последнее обновление Windows 10 может снизить производительность в некоторых играх Компания Microsoft признала, что последнее обновление для Windows 10 (KB4482887), выпущенное 1 марта, может ухудшить производительность графики и мыши в некоторых играх. Разработчик ОС предупреждает об этом в описании обновления: «После установки KB4482887 пользо...

[Из песочницы] Заметки верстальщика: Полезные расширения Google Chrome в 2019 году В моем браузере установлено около 30 расширений, которые упрощают жизнь и работу в интернете. В этой статье я хочу поделиться 10 актуальными расширениями Google Chrome для верстальщика, которые постоянно использую при разработке сайтов. Читать дальше →

Директ тестирует показ уточнений для всех рекламных позиций на поиске Яндекс.Директ тестирует показ уточнений для всех объявлений в спецразмещении и гарантии на поиске. Ранее уточнения во втором, третьем и других объявлениях показывались не по всем запросам и не всем пользователям, а сейчас стали встречаться ...

Hello, World! Глубокое погружение в Терминалы На написание данной статьи меня вдохновила статья об анализе Сишного printf. Однако, там был пропущен момент о том, какой путь проходят данные после того, как они попадают в терминальное устройство. В данной статье я хочу исправить этот недочет и проанализировать путь данны...

Стажировка в Mars Digital Technologies. Как мы применяли глубокое обучение на производстве M&M’s Всем привет! Ежегодно порядка 200 студентов и выпускников присоединяются к Mars в России в качестве стажеров или участников лидерской программы. Дмитрий Коржиманов, прошел стажировку в IT-хабе Mars этим летом. В нашем блоге Дмитрий рассказывает о проекте, над которым он р...

Устойчивость обучения GAN (Копаем глубже) В предыдущей статье на примере игрушечных моделей я попытался проанализировать почему же, собственно, у нас получается достаточно эффективно обучать GAN’ы. Сейчас же мы попробуем обобщить некоторые результаты и, самое главное, попробуем проанализировать как влияет архитект...

Allure-Android. Информативные отчеты для мобильной автоматизации Автоматизация мобильных приложений довольно молодая сфера: фреймворков много и многие проекты сталкиваются с проблемой выбора самого «быстрого, стабильного, простого в использовании». Также и мы около двух лет назад стояли перед выбором нового инструмента автоматизации тести...

Kubernetes кластер за $20 в месяц TL; DR Поднимаем кластер для обслуживания веб-приложений без записи состояния (stateless web applications) вместе с ingress, letsencrypt, не используя средства автоматизации вроде kubespray, kubeadm и любых других. Время на чтение: ~45-60 минут, на воспроизведение действий: ...

[Перевод] 10 Git-команд, которые стоит знать разработчику В этой статье мы обсудим разные Git-команды, которые могут оказаться полезными для разработчика или специалиста по Big Data. Вы узнаете, как проверять, удалять и приводить код в порядок. А еще рассмотрим способы выхода из Vim и экономию времени с помощью псевдонимов Bash ...

Писали API — порвали XML (два) Первый API МоегоСклада появился 10 лет назад. Всё это время мы работаем над существующими версиями API и разрабатываем новые. А несколько версий API уже успели похоронить. В этой статье будет много всего: как создавали API, зачем он нужен облачному сервису, что дает пользо...

Они просканировали GitHub Группа исследователей из Университета Северной Каролины (North Carolina State University, NCSU) провели исследование сервиса для хостинга IT-проектов и их совместной разработки GitHub. Специалисты установили, что свыше 100 тыс. GitHub-репозиториев содержат API-ключи, токены ...

[Перевод] Хватить использовать смехотворно малый TTL для DNS Низкая задержка DNS — ключевой фактор для быстрой работы в интернете. Чтобы её минимизировать, важно тщательно подобрать DNS-серверы и анонимные рилеи. Но первым делом следует избавиться от бесполезных запросов. Именно поэтому DNS изначально создавался как сильно кэшируемый...

Как распилить монолит на сервисы и сохранить производительность In-memory кэшей без потери консистентности Всем привет. Меня зовут Александр, я Java-разработчик в группе компаний Tinkoff. В данной статье хочу поделиться опытом решения проблем, связанных с синхронизацией состояния кэшей в распределенных системах. Мы столкнулись с ними, разбивая наше монолитное приложение на микр...

Google тестирует карусели изображений в блоках локальной выдачи Зарубежные специалисты заметили, что Google начал тестировать несколько изображений для компаний в блоках локальной выдачи. В рамках теста фотографии по каждой компании оформлены в виде прокручиваемой карусели: Больше примеров можно посмотреть в Twitter: В текущей версии бло...

UL выпустила тест 3DMark Port Royal с трассировкой лучей Как и было обещано ранее, компания UL обновила пакет 3DMark новым тестом Port Royal, нацеленным на анализ производительности с использованием технологии трассировки лучей в реальном времени Microsoft DirectX Raytracing (DXR), в том числе на системах с несколькими ви...

[Из песочницы] Изучить отзывчивый веб-дизайн за 5 минут Привет, Хабр! Представляю вашему вниманию перевод статьи «Learn responsive web design in 5 minutes» автора Per. В этой статье я научу вас многим приёмам отзывчивого дизайна за 5 минут. Этого, очевидно, недостаточно для правильного изучения, но здесь вы найдёте обзор на след...

NVIDIA Jetson Nano: тесты и первые впечатления Привет Хабр. Относительно недавно, в этом, 2019 году, NVIDIA анонсировала одноплатный компьютер совместимого с Raspberry Pi форм-фактора, ориентированный на AI и ресурсоемкие расчеты. После его появления в продаже, стало интересно посмотреть, как это работает и что на н...

Обзор Intel MEMPEK1W016GAXT. SSD или Optane в связке с HDD? Тестируемый сегодня Intel Optane был представлен уже два года назад. Но отдельно эту технологию в рамках «Лаборатории» мы не рассматривали, поэтому предлагаем восполнить пробел, проведя тестирование Intel MEMPEK1W016GAXT. Сами накопители были в свое время представлены с боль...

Обзор и тест беззеркальной камеры Canon M100: одна за всех Сможет ли эта камера составить реальную конкуренцию зеркалкам и хорошим смартфонам? Тестируем современный формат от Canon.

Насколько iMac (2019) быстрее своих предшественников? Буквально пару дней назад Apple представила обновленные моноблоки iMac. Новые компьютеры получили быстрые процессоры Intel Intel 8-го и 9-го поколения, а также производительную графику производства AMD — Radeon Pro Vega. По заявлениям Apple, обновленные iMac стали гор...

Анонс FunTech QA-automation meetup Всем привет! Приглашаем QA-инженеров на наш первый митап по тестированию, посвящённый автоматизации. Программа «Автотесты, объединяющие подходы, платформы и сердца», Михаил Чирков, ivi.ru Преимущества и недостатки кроссплатформенных автотестов (в нашем случае речь о плат...

[Из песочницы] Windows service. Поиск системных ошибок и отображение их в WinForm C# В этой статье мы разберем как с нуля создать приложение, которое будет работать со службами windows и отображать системные ошибки в WinForm (C#). План этой статьи: Создание службы Event Viewer Код службы Проверка работы службы(Запуск службы вручную) Отображение WinForm ...

История одной проблемы со Speedometer, или Как Chromium управляет памятью Современный браузер — это крайне сложный проект, в котором даже безобидные с виду изменения могут приводить к неожиданным сюрпризам. Поэтому существует множество внутренних тестов, которые должны такие изменения отловить до релиза. Тестов никогда слишком много не бывает, поэ...

[Из песочницы] Быстрый Яндекс словарь Наверное все знают что у Яндекс есть замечательный бесплатный сервис Яндекс.Словарь где можно посмотреть перевод нужного вам слова, но для лично меня он не удобен тем что постоянно нужно было переключаться на Chrome, вручную вводить текст или вставлять из буфера обмена, даже...

[Из песочницы] Забытый enchantjs + новый 1С-Битрикс = Игра для мотивации клиентов Акции в интернет-магазинах бывают разные, а вот как их сделать визуально интересными для клиента — всегда вопрос, мы попробовали превратить обычную акцию в которой есть обычные статистические показатели клиента в игру в стили Dendy. Читать дальше →

[Из песочницы] Справочник начинающего подкастера Эта статья — краткое руководство для тех, кто хочет запустить свой собственный подкаст. Когда я вместе с моим нынешним соведущим год назад запускал подкаст “В бесконечность и далее”, я не смог найти ни одной по-настоящему всеобъемлющей статьи. Поэтому я решил попытаться запо...

Быстрая локализация проблем производительности Microsoft SQL Server в Quest Foglight В прошлой статье об инструменте для мониторинга Foglight for Databases мы рассказывали о возможностях контроля из единого интерфейса SQL Server, Oracle, PostgreSQL, MySQL, SAP ASE, DB2, Cassandra и MongoDB. Сегодня разберём подходы к быстрому выявлению причин нештатной раб...

AR-технологии на службе живописи Я работаю бизнес-архитектором в области цифровой трансформации. С недавних пор в свободное время начала заниматься графикой и живописью,  создала цикл картин «Цифровое ОКО» с дополненной реальностью. AR-технологии дают зрителю возможность попасть в альтернативный мир, находя...

[Перевод] Эффективная генерация числа в заданном интервале В подавляющем большинстве моих постов о генерации случайных чисел рассматривались в основном свойства различных схем генерации. Это может оказаться неожиданным, но производительность алгоритма рандомизации может зависеть не от выбранной схемы генерации, а от других факторов...

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

[Перевод] XXE: XML external entity В этой статье мы объясним, что такое инъекция внешних сущностей XML, опишем некоторые общие примеры, поясним, как найти и использовать различные виды XXE-инъекций, а также обобщим, как предотвратить атаки с их помощью. Читать дальше →

Связный список на Python: Коты в коробках И снова здравствуйте! В преддверии старта курса «Разработчик Python» подготовили для вас небольшой авторский материал о связных списках на Python. Python очень удобный и многогранный язык, но по умолчанию не имеет такой структуры данных как связный список или LinkedList. ...

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

Unit тестирование в Laravel Я часто слышу среди обсуждений в сообществе мнение, что unit тестирование в Laravel неправильное, сложное, а сами тесты долгие и не дающие никакой пользы. Из-за этого эти тесты мало кто пишет, ограничиваясь лишь feature тестами, а польза unit тестов стремится к 0. Я тоже так...

Лучшие смартфоны до 30000 рублей: рейтинг 2018-2019 В среднем ценовом диапазоне можно найти отличный вариант смартфона, в котором будет все на очень высоком уровне — и производительность и оснащение, в том числе качественная камера. CHIP подобрал для вас лучшие модели телефонов с ценой, не превышающей 30 000 рублей.

Зачем в офисе нужен интерактивный флипчарт: vc.ru и DTF тестируют Samsung Flip Опыт в реальных условиях — рабочие встречи, презентации, стримы.

[Перевод] Метаморфическое тестирование: почему об этой перспективной методике почти никто не знает Должен признаться: я читаю ACM Magazine. Это делает меня «ботаником» даже по меркам программистов. Среди прочего, я узнал из этого журнала о «метаморфическом тестировании». Раньше я никогда о нём не слышал, как и все люди, которых я спрашивал. Но научная литература по этой ...

[Из песочницы] IMaskjs — 3 года в Open Source Всем привет! Прошло 3 года с тех пор, как я начал работу над библиотекой imaskjs. Хотя opensource — это бесконечный процесс, но можно сказать что в целом работа закончена и перешла в вялотекущий багфикс. На данный момент я сделал все что хотел, других идей нет, разве тест...

Универсальный пул У нас есть ArrayPool для переиспользования массивов. Работает это так: взяли массив определенной длинны что то с ним поделали и положили обратно. Нужно это для больших объектов которые по логике программы долго не должны храниться. В предыдущей статье описана эта проблема. ...

Идея о поиске людей в лесу Эта статья описание небольшой идеи возникшей после прочтения недавней статьи «Обыскать 314 км² за 10 часов — финальное сражение инженеров-поисковиков против леса» Сразу предупрежу, что у меня маловато опыта в радиотехнике, и совсем нет оного в поиске пропавших людей, так чт...

[Из песочницы] Локальный запуск юнит-тестов в STM32CubeIDE под Windows Введение Всем известна польза юнит-тестирования. Прежде всего, написание тестов одновременно с кодом позволяет раньше выявлять ошибки и не тратить впоследствии время на трудоемкую комплексную отладку. В случае embedded-разработки у юнит-тестирования есть особенности, связан...

G.Skill представила оптимизированные для Ryzen 3000 модули DDR4-3800 Компания G.Skill представила в серии Trident Z Neo новые комплекты модулей оперативной памяти DDR4-3800, которые наилучшим образом оптимизированы для использования с процессорами AMD Ryzen 3000-й серии и настольной платформой AMD X570. Как известно, частота оперативной памят...

[Перевод] Крошечные компоненты: что может пойти не так? Используем принцип единственной ответственности Представляем вашему вниманию перевод статьи Scott Domes, которая была опубликована на blog.bitsrc.io. Узнайте под катом, почему компоненты должны быть как можно меньше и как принцип единственной ответственности влияет на качество приложений. Фото Austin Kirk с Unsplash Чит...

ок.tech: Cassandra Meetup #2 В конце мая мы провели первый митап, посвященный Apache Cassandra, в рамках мероприятия мы рассмотрели типичные конфигурации нод и кластеров в различных production инсталляциях, обсудили, как расширять кластера с ростом объёмов данных и нагрузки и как заменять отказавшие у...

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

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

Идея для Гик-Хэллоуина, или время выбирать GeekMask Как обычно, при приближении какого-то события, мы стараемся подбирать какие-то занятные вещицы и рассказывать о них. Сегодня познакомим вас с компанией Outline Montreal — авторами проекта GeekMask. Читать дальше →

[Перевод] Тестирование производительности Flutter приложений Фреймворк Flutter по умолчанию работает хорошо и быстро, но означает ли это, что вам вообще не нужно думать о производительности? Нет. Абсолютно реально писать приложения Flutter, которые будут медленными. С другой стороны, также можно использовать фреймворк максимально и де...

Google тестирует полнотекстовый поиск по подкастам Ориентироваться в двухчасовых подкастах станет гораздо проще. Сервис Google Podcasts начал автоматически генерировать расшифровки аудиозаписей и использует их в качестве метаданных для поиска, сообщает Android Police. Это помогает не только найти нужный фрагмент в конкретном...

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

Haptic Touch и 3D Touch на iPhone: в чем отличия? С выходом iPhone 11, iPhone 11 Pro / 11 Pro Max Apple окончательно покончила с технологией 3D Touch во всей линейке смартфонов iPhone. На смену этой функции пришла похожая, Haptic Touch. Есть ли отличия между ними и в чем был смысл такого шага? В этой статье мы рассмотрим из...

[Из песочницы] Конфигурация приложений на Angular. Лучшие практики Как управлять файлами конфигурации среды и целями Когда вы создали angular приложение с помощью Angular CLI или Nrwl Nx tools у вас всегда есть папка с фалами конфигурации окружения: <APP_FOLDER>/src/environments/ └──environment.ts ...

Доктор Джекил и мистер Хайд корпоративной культуры Вольные размышления на тему корпоративной культуры, навеянные статьей Three Years of Misery Inside Google, the Happiest Company in Tech. Есть также ее вольный пересказ на русском языке. Если очень-очень кратко, то суть в том, что благие по смыслу и посылу ценности, которые ...

[Из песочницы] Всё что вам нужно знать о Node.js Привет, Хабр! Представляю вашему вниманию перевод статьи "Everything you need to know about Node.js" автора Jorge Ramón. В наши дни платформа Node.js является одной из самых популярных платформ для построения эффективных и масштабируемых REST API's. Она так же под...

[Из песочницы] Создание Redux-подобного глобального хранилища, используя React Hooks Привет, Хабр! Представляю вашему вниманию перевод статьи "Build a Redux-like Global Store Using React Hooks" автора Ramsay. Давайте представим, что я написал интересное предисловие к этой статье и теперь мы сразу можем перейти к по-настоящему интересным вещам. Если...

ОK, а мне точно нужен Kubernetes? В большой компании часто очень тяжело согласовывать выделение ресурсов под рабочие задачи. Весь Agile с хрустом разбивается о стену трёхнедельного согласования с ИБ новой инфраструктуры. Поэтому к нам часто приходят запросы на перевод инфраструктуры на контейнеры, чтобы вы...

[Перевод] Руководство по использованию pandas для анализа больших наборов данных При использовании библиотеки pandas для анализа маленьких наборов данных, размер которых не превышает 100 мегабайт, производительность редко становится проблемой. Но когда речь идёт об исследовании наборов данных, размеры которых могут достигать нескольких гигабайт, проблемы...

[Перевод] Управляем асинхронностью в PHP: от промисов к корутинам Что такое асинхронность? Если кратко, то асинхронность означает выполнение нескольких задач в течение определенного промежутка времени. PHP выполняется в одном потоке, что означает, что в любой момент времени может выполняться только один фрагмент PHP-кода. Это может показа...

Отказоустойчивый кластер PostgreSQL + Patroni. Опыт внедрения В статье я расскажу, как мы подошли к вопросу отказоустойчивости PostgreSQL, почему это стало для нас важно и что в итоге получилось. У нас высоконагруженный сервис: 2,5 млн пользователей по всему миру, 50К+ активных пользователей каждый день. Сервера находятся в Amazone в ...

[] Браузерная симуляция физики В этой статье я хочу дать описание существующих решений для создания приложений с симуляцией физики, сравнить их производительность и предоставляемый инструментарий. Читать дальше →

Настройка IPSec Site-to-Site VPN на оборудовании Palo Alto Networks Данная статья представляет собой продолжение предыдущего материала, посвященного особенностям настройки оборудования Palo Alto Networks . Здесь мы хотим рассказать о настройке IPSec Site-to-Site VPN на оборудовании Palo Alto Networks и о возможном варианте конфигурации под...

Миссия: найти работу с институтской скамьи Прочитав статью моего коллеги в корпоративном блоге, мне вспомнился мой опыт по поиску и приему на работу. Крепко всё обдумав, я решил, что пора им поделиться, т.к. к текущему моменту проработал в компании уже полтора года, многому научился, многое понял и осознал. Но и уни...

Под капотом Screeps — виртуализация в MMO-песочнице для программистов В этой статье я расскажу про одну малоизвестную технологию, которая нашла ключевое применение в нашей онлайн-игре для программистов. Чтобы долго не тянуть резину, сразу спойлер: кажется, что такого шаманства в нативном коде Node.js, к которому мы пришли после нескольких лет ...

Тесты или типы? — Rust version Пару дней назад 0xd34df00d опубликовал здесь перевод статьи, описывающей, что можно узнать о функции в разных языках, если рассматривать её как "чёрный ящик", не используя информацию о её реализации (но, разумеется, не мешая ей пользоваться компилятору). Разумеется, получаем...

Тестируем видеокарты AMD Radeon RX 5700, Radeon RX 5700 XT, а также NVIDIA GeForce RTX 2060 Super и GeForce RTX 2070 Super Ну, наконец-то реальная конкуренция! Без долгих теоретических рассусоливаний переходим к делу и сравниваем семь видеокарт в синтетических и игровых тестах в разгоне и без, в 1080p и 4K.

UltData – одно из лучших приложений для восстановления данных (Mac) Программные сбои, вирусы, не вовремя вышедшее из строя железо и человеческие ошибки – все это самые частые причины потери важных файлов. И, как показывает практика, практически все владельцы компьютеров рано или поздно сталкиваются с такими проблемами. Однако на сегодняшний ...

Паттерны и анти-паттерны CI/CD. Часть 2 Всех с пятницей, друзья. Сегодня делимся с вами переводом второй части статьи «Паттерны и анти-паттерны CI/CD», первую часть которой можно прочитать здесь. Напомним, даная серия публикаций приурочена к запуску нового потока по курсу «DevOps практики и инструменты». 1.3 Патт...

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

В Google Chrome тестируют систему мониторинга активности расширений Компания Google постоянно работает над улучшением браузера Chrome, чтобы он оставался впереди конкурентов. В прошлом компания уже внесла несколько изменений в приложение, чтобы улучшить удобство и простоту использования.

Производительность анимаций на сайтах При разработке сайтов, выходящих за рамки условного бутстрапа, рано или поздно возникают вопросы, связанные с производительностью анимаций. Особенно важными они являются в дизайнерских сайтах, вроде тех, что попадают в каталоги Awwwards, FWA, CSS Design Awards и.т.д. При эт...

Системы очистки воды обратным осмосом — здорово или не очень? Всем привет. Сегодня я хотел бы поделиться с своим видением систем очистки воды. Я не хочу обсуждать различные фильтры, неэффективность которых давно уже известна — поговорим мы про системы очистки обратным осмосом, которые активно используются как на производствах, выпу...

Каким блокировщиком вы пользуетесь? Результаты Всем привет! На прошлой неделе мы запустили небольшое голосование по используемым расширениям для блокирования рекламы и прочих раздражающих элементов веб-страниц, и сегодня пришло время посмотреть на результаты. Сразу надо отметить, что аудитория пользователей Vivaldi в ...

Микробиота. Как работает тестирование Мы завершаем цикл статей о микробиоте. Первая была о том, как работает микробиота, а последняя — о влиянии лекарств на бактерии кишечника. В этом материале мы расскажем, как проводится тест «Генетика микробиоты» от Атласа, почему для него нужен именно образец стула, а также ...

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

Все ругают самописные тестовые фреймворки. А мы своим довольны Меня зовут Елена Расторгуева, я отвечаю за продукт «Фактор» в HFLabs. «Фактор» — чертовски сложный алгоритмический enterprise, он обрабатывает данные в промышленных масштабах. В статье я расскажу, как мы начинали тестировать «Фактор», как развивали автотесты и почему приш...

Домашняя автоматика с поддержкой промышленных языков программирования, или BluePill x405 Начало обзора Итак, мои дорогие коллеги, начнём обзор с того, что же на самом деле мы хотим тут осветить. В статье я хочу рассмотреть элементы, характерные для построения программы промышленного контроллера, и показать, как их можно применить для систем домашней автоматики. ...

[Перевод] NLog: правила и фильтры NLog: правила и фильтры В Confirmit мы используем библиотеку NLog для логирования в наших .NET-приложениях. Хотя для этот библиотеки существует документация, для меня было сложно понять, как все это работает. В данной статье я попытаюсь объяснить, как правила и фильтры приме...

[recovery mode] Сбалансированные показатели сайта. Часть 4: Внешняя оптимизация В прошлых частях мы разбирали Cтратегию и ее составляющие, а также затронули тему внутренних показателей сайта, влияющих на продвижение. В этой же статье обратимся ко внешней оптимизации. Читать дальше →

[Анонс для Екатеринбурга, Новосибирска, Питера] QAutomation Test Session: Покроем тестами все от Невы до Оби 9 февраля выясним, кто самый крутой тестировщик! Контур и Уральское сообщество тестировщиков UTC регулярно проводят сессии тестирования. Суть такая: собираемся толпой и ищем баги в приложении. Так мы тестировали стартап Яндекс.Мастер, мобильный банк от УБРиРа, мобильное прил...

Микробиота. История изучения и методы исследования Мы получили много комментариев к последней статье и решили с Атласом дополнить серию материалом о том, какие еще есть методы изучения микробиоты. В конце статьи добавили, что нужно помнить об исследованиях бактерий кишечника на сегодняшний день, чтобы они не навредили вашему...

Мотивация, делегирование и автоматизация: рецепт создания суперкоманды Знакомьтесь, это Дима. Он тимлид и отвечает за техдолг и код-ревью, за планирование и технические процессы, за выполнение разработчиками задач в срок — мотивирует, нанимает и, если надо, увольняет. Дима хочет работать только над важными задачами, но работает над миллионом са...

Работаем с USB Custom HID на Android В современных Android — приложениях для взаимодействия с другими устройствами чаще всего используются беспроводные протоколы передачи данных, как например Bluetooth. В годы, когда часть устройств имеют беспроводную зарядку, сложно представить себе связку Android устройства ...

[Перевод] 13 полезных приёмов по работе с массивами в JavaScript, которые могут вам пригодиться Массивы являются одной из самых популярных структур данных в JavaScript, потому что они используются для хранения данных. Кроме этого, массивы дают много возможностей для работы с этими самыми данными. Понимая, что для тех, кто находится в начале пути изучения JavaScript, ма...

Как дискомфорт помогает нам совершенствовать процесс разработки Я тимлид и моя задача — обеспечить продуктивную работу команды. Это непросто, поскольку готового рецепта успеха не существует. Конечно, есть признанные методологии: Agile, Lean, Value Stream Mapping. Они дают общие ориентиры и ценности, что уже неплохо, но это лишь ориенти...

Процессор Intel Tiger Lake Y показал свою производительность в Geekbench Процессор Intel Tiger Lake Y был замечен в бенчмарке Geekbench, где показал неплохую производительность. Однако вполне вероятно, что если данные подлинны, то Intel просто тестирует ранний инженерный образец, который не работает на своей обычной базовой тактовой частоте. Ожид...

Wallarm Offzone2019 HackQuest Всем привет! До старта конференции Offzone2019 осталось 7 дней и команда Wallarm по этому поводу подготовила HackQuest. Читать дальше →

Debian + Postfix + Dovecot + Multidomain + SSL + IPv6 + OpenVPN + Multi-interfaces + SpamAssassin-learn + Bind Данная статья о том как настроить современный почтовый сервер. Postfix + Dovecot. SPF + DKIM + rDNS. С IPv6. С шифрованием TSL. С поддержкой нескольких доменов — часть с настоящим SSL сертификатом. С антиспам-защитой и высоким антиспам-рейтингом у других почтовых серверов. С...

IPMI ― обзор технологии Чтобы удаленно управлять состоянием серверной платформы, системные администраторы и инженеры пользуются технологией IPMI, которая значительно упрощает им жизнь. Теперь не надо каждый раз бежать к серверу, чтобы нажать на кнопку перезагрузки ― своевременно реагировать на кри...

Повторное использование форм на React Привет! У нас в БКС есть админка и множество форм, но в React-сообществе нет общепринятого метода — как их проектировать для переиспользования. В официальном гайде Facebook’a нет подробной информации о том, как работать с формами в реальных условиях, где нужна валидация и п...

[Перевод] Инициализация в С++ действительно безумна. Лучше начинать с Си Недавно мне напомнили, почему я считаю плохой идеей давать новичкам C++. Это плохая идея, потому что в C++ реальный бардак — хотя и красивый, но извращённый, трагический и удивительный бардак. Несмотря на нынешнее состояние сообщества, эта статья не направлена против совреме...

[Из песочницы] AsyncIO Micropython: методы синхронизации в асинхронном программировании В последовательном программировании я постоянно сталкиваюсь с очевидным желанием не останавливать работу программы в момент, когда целью отдельных задач(процессов) является периодические действия — например, опрос значений датчиков, или передача данных по расписанию на серве...

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

Окей, Google: как пройти капчу? Здравствуйте. Меня зовут Ибадов Илькин, я студент Уральского федерального университета. В данной статье я хочу рассказать о своем опыте автоматизированного решения капчи компании «Google» — «reCAPTCHA». Хотелось бы заранее предупредить читателя о том, что на момент написани...

Samsung Galaxy S10 и S10+ на базе Exynos 9820 сравнили по производительности с Xiaomi Mi 9, iPhone XS Max и другими смартфонами На сайте GSM Arena опубликовали результаты тестирования смартфонов Samsung Galaxy S10 и S10+, оснащенных флагманской однокристальной системой Samsung Exynos 9820. Тестирование было проведено с различных популярных бенчмарках, результаты сравнивались с результатами друг...

[Из песочницы] (5-2) Способа перенести большую SQL таблицу Введение Всем привет! Это моя первая статья и пишу я ее от лица младшего инженера-разработчика на языке C#. Так что здесь не будет каких-то подробных сведений о SQL, лишь практические сведения и размышления по решению довольно не очевидной задачи, с которой мне пришлось стол...

Мины под производительностью ждут своего часа: часть 2 При подготовке прошлой статьи от моего внимания ускользнул один любопытный пример, выловленный в одном из наших приложений. Его я оформил в виде отдельной статьи, которую вы сейчас читаете. Читать дальше →

Ответ психиатра на статью «Болен-здоров» Открытый материал болен-здоров предоставляет возможность комментирования, и я надеюсь, что соображения врача с 35-летним стажем пригодятся автору. Его статья, по сути, представляет собой краткую исповедь, и я думаю, что такого рода исповеди нужны как людям, столкнувшимся с...

[Из песочницы] Как я сделал удобной разработку на Vue.js с server-side рендерингом Всем привет! Начну с небольшой предыстории. Свой новый проект я решил попробовать сделать на Vue.js. Мне нужен был серверный рендеринг (SSR), CSS модули, code-splitting и прочие прелести. Разумеется, для повышения производительности разработки нужна была горячая перезагр...

Проектирование интернет-магазина для SEO: (теория + чеклист) Что стоит учесть при проектировании интернет-магазина, чтобы не пришлось переделывать пол сайта для начала продвижения. Статья разбита на две части. Теория: о том, что в принципе можно учесть в SEO интернет-магазина и как это работает. Чек-лист: 80 пунктов, по которым легко...

[Перевод] Всегда ли Node.js будет медленнее, чем Golang? Возникает такое ощущение, что буквально каждую неделю появляется новый «веб-фреймворк» для Node.js, который называют чем-то таким, что работает быстрее, чем всё, что было до него. Всем известно, что Express — это медленно, но способен ли очередной фреймворк по-настоящему улу...

Badoo Techleads Meetup #4. Профессиональное выгорание и мотивация Всем привет! Меня зовут Илья Агеев, я отвечаю за QA Badoo, Bumble и других наших социальных сетей для знакомств. 15 июня приглашаю на ежегодную встречу тимлидов, руководителей отделов и СТО в нашем офисе. Badoo Techleads Meetup пройдет в четвёртый раз, будет целиком пос...

[Из песочницы] Дружим часы реального времени PCF8563 с Arduino по I2C Привет, Хабр. Довелось мне использовать RTC на микросхеме PCF 8563 по I2C.Так как нормальных функции для более удобной работы с Arduino я не нашел, пришлось работать напрямую через I2C. В Англоязычном интернете нашел толковый туториал с подробным описанием процесса. Данная с...

Пылесос Redmond RV-C335: крупный, мощный, угловатый Все-таки пылесос — это довольно суровый бытовой прибор. И чем он мощнее и брутальнее и чем меньше в нем округлого и изящного — тем больше к нему доверия. Вот и этот экземпляр вызывает ощущение, что с пылью в доме покончено навсегда. А это мы его еще даже не включали. Ну что ...

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

Perf и flamegraphs Огромную популярность набирает тема повышения производительности операционных систем и поиска узких мест. В этой статье мы расскажем об одном инструменте для поиска этих самых мест на примере работы блочного стека в Linux и одного случая траблшутинга работы хоста. Пример ...

О славном саппорте замолвите слово (24 сентября, Москва) Мы проводили много митапов, и пока не думаем прекращать это полезное занятие. Разработчикам, дизайнерам и тестировщикам всегда есть, что обсудить — коммьюнити довольно большое и активное. Но есть ребята, труд которых не так популярен в инфополе, но без которых работа осталь...

Обновленный AnTuTu выжмет все соки из вашего смартфона Если вы введёте в поиске Google Play термин «benchmark», то в верхней части списка из подобранных приложений обязательно увидите AnTuTu. Этот знаменитый бенчмарк, используемый для измерения производительности мобильных устройств, находится вверху списка потому, что в течени...

6 занимательных системных багов при эксплуатации Kubernetes [и их решение] За годы эксплуатации Kubernetes в production у нас накопилось немало занимательных историй, как баги в различных системных компонентах приводили к неприятным и/или непонятным последствиям, влияющим на работу контейнеров и pod'ов. В этой статье мы сделали подборку некоторых...

[Из песочницы] Дальтоник — друг человека (Минздрав не Прав) Так получилось, что мне пришлось окунуться в тему нарушения цветопередачи имея уже почти 40 лет за плечами. И дело не в том, что я без проблем вожу машину более 15 лет, и не в том, что какие-то оттенки цветов не дают мне насладиться красотой мира, и точно не в том, что родны...

[Из песочницы] Настройка поиска Sphinx для интернет-магазина Информации по Sphinx не так много, как хотелось бы. Лишняя статья не помешает. Первые шаги в освоении Sphinx мне помогли сделать статьи Создание ознакомительного поискового движка на Sphinx + php и Пример Sphinx поиска на реальном проекте — магазин автозапчастей Tecdoc Совет...

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

[Из песочницы] WWDC19: Приступим к работе с Test Plan для XCTest Привет, Хабр! Представляю вашему вниманию перевод статьи «WWDC19: Getting Started with Test Plan for XCTest» автора Shashikant Jagtap. На прошедшей конференции WWDC компания Apple показала новые классные фичи для разработчиков. В Xcode 11 так же добавлено несколько потряс...

Google+. Sic transit gloria mundi… Всем привет. Итак, собственно к Google+. Проект почит в бозе с 2 апреля 2019 года. Теперь уже официально. Вот как об этом пишут всем участникам. Читать дальше →

Xiaomi Mi 9 протестировали в Geekbench Месяц назад в базе данных популярного бенчмарка Geekbench были найдены результаты теста мобильника Xiaomi с кодовым именем Cepheus. Наличие платформы Snapdragon 855 и ОС Android 9.0 Pie стало предпосылкой говорить о том, что испытание синтетикой прошел Xiaomi Mi 9. И вот теп...

Swift 5.0. Что нового? Swift 5 — долгожданный релиз, включающий в себя несколько десятков улучшений и исправлений. Но самой главной целью релиза Swift 5.0 было достижение ABI стабильности. В этой статье вы узнаете, что такое ABI и что стабильный ABI даст iOS/macOS разработчикам. А также проведём р...

pg_stat_statements + pg_stat_activity + loq_query = pg_ash? В качестве короткого дополнения к статье Попытка создать аналог ASH для PostgreSQL. Задача Необходимо связать историю представлений pg_stat_statemenets, pg_stat_activity. В результате, используя историю планов выполнения из сервисной таблицы log_query, можно получить очень ...

[Из песочницы] Краткое введение в рекурсию. JavaScript Перевод: Привет, Хабр! Представляю вашему вниманию перевод статьи "A Quick Intro to Recursion in Javascript" Yazeed Bzadough. Примечание. Рекурсия не единожды обсуждалась на хабре, но данная статья даёт базовое понимание рекурсии. Это будет полезно начинающим разр...

Liveprof покажет, когда и почему менялась производительность вашего PHP-приложения Привет, Хабр! Меня зовут Тимур Шагиахметов, я PHP-разработчик в Badoo. Производительность приложения — один из важнейших критериев качества работы программиста. В вопросах оптимизации PHP-приложений помощником является профайлер. Недавно мы рассказывали о том, какими и...

AWS EC2-сервис и работа с ним Всем привет. Уже на следующей неделе стартуют занятия по курсу «Облачные сервисы». Предлагаем вашему вниманию краткий пересказ открытого урока «AWS EC2-сервис». Его провёл Егор Зуев, преподаватель и специалист по облачным сервисам с более чем 10-летним опытом работы. В рам...

Стартовал бета-тест забавной игры в дополненной реальности Nibblity Технология дополненной реальности развивается уже достаточно долго, но пока что не существует какого-то однозначного ответа на вопрос, а для чего она подходит лучше. Поэтому разработчики пока просто экспериментируют. В игре Nibblity, которую показывали на PAX West 2019, вам...

3. Дизайн сети предприятия на коммутаторах Extreme Добрый день, друзья! Сегодня я продолжу цикл, посвященный коммутаторам Extreme статьей по проектированию сети Enterprise. В статье я постараюсь по возможности кратко: описать модульный подход к проектированию сети Etnterprise рассмотреть виды построения одного из важне...

Нужны абсолютно прозрачные выборы? — Их есть у меня На дворе XXI век, а мы продолжаем голосовать «камешками». Давайте это менять. Тем более, что «цифровых» инструментов для этого становится всё больше и больше. Читать дальше →

Strong «caffe» на завтрак и выездные хакатоны: почему это важно для развития Data Science сообщества Я Data Scientist в команде Data Lake Platform в Райффайзенбанке. Три года назад в банке не было направления Big Data, а сейчас у нас есть отдельная платформа для работы с большими данными и активно развивающееся сообщество. По мере развития data driven культуры мы сталкиваем...

[Перевод] Назад к микросервисам вместе с Istio. Часть 2 Прим. перев.: Первая часть этого цикла была посвящена знакомству с возможностями Istio и их демонстрации в действии. Теперь же речь пойдёт про более сложные аспекты конфигурации и использования этого service mesh, а в частности — про тонко настраиваемую маршрутизацию и упр...

Психоанализ эффекта недооцененного специалиста. Часть 1. Кто и почему 1. Вступление Несправедливость неисчислима: исправляя одну, рискуешь совершить другую. Ромен Роллан Работая программистом с начала 90-ых, мне не однократно приходилось сталкиваться с проблемами недооцененности. Вот например, я такой молодой, умный, со всех сторон положительн...

[Перевод] SSD GIGABYTE Aorus RGB M.2: мал, да удал даже для RGB-светодиодов (2 часть) Часть 1 >> Часть 2 Производительность случайного чтения В первом тесте производительности случайного чтения используются очень короткие пакеты операций, выполняемые по одному, и без очереди. Диски получают достаточно времени простоя между пакетами, чтобы общий рабочий...

Check Point Maestro Hyperscale Network Security — новая масштабируемая security платформа Компания Check Point довольно резво начала 2019 год сделав сразу несколько анонсов. Рассказать обо всем в одной статье не получится, поэтому начнем с самого главного — Check Point Maestro Hyperscale Network Security. Maestro это новая масштабируемая платформа, которая позв...

[recovery mode] Tcl для Cisco IOS в простых примерах Представим, что вам нужно развернуть «с нуля» десяток однотипных access-коммутаторов Cisco. Типовая конфигурация включает имя хоста и домена, шлюз по-умолчанию, пароли, список пользователей, IP-адреса для SVI, номера VLAN'ов, настройки транков аплинков и т.д. Вводить это каж...

Как не превратиться в стрекозу, если у вас много разных баз данных На фотографии макрофото глаз стрекозы. Они имеют фасеточное строение и состоят примерно из 30000 шестиугольных фасетов, что позволяет стрекозе смотреть практически на 360 градусов (за исключением направления «прямо назад»). Полезное умение, если ты стрекоза. Когда в орган...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 26. DNS и DHCP Система распределения доменных имен DNS и протокол динамической настройки узла DHCP являются очень важными для сетей, особенно для сети Интернет, так как позволяют настроить доступ к интернету, сконфигурировать браузер и т.д. На предыдущих уроках мы уже рассматривали настрой...

[Из песочницы] Разработка Chrome Extension вместе с Angular CLI Разработкой расширений к Chrome я занимаюсь давно и за это время я прошел целый путь от Greasemonkey юзер-скриптов до полноценного Angular-приложения в оболочке chrome-extension. Моя задача в том, что я патчу некоторые уже работающие сайты, чтобы изменить их функционал и авт...

[Из песочницы] Lock с приоритетами в .NET Каждый программист, использующий более одного потока в своей программе, сталкивался с примитивами синхронизации. В контексте .NET их очень и очень много, перечислять не буду, за меня это уже сделал MSDN. Мне приходилось пользоваться многими из этих примитивов, и они прекрас...

[Из песочницы] Как мы тушили велосипед техподдержки — Привет! — Привет! — Скажи, а каково это — делать техническую поддержку? — Ну-у-у, представь себе велосипед… и он горит… и ты горишь… и дорога горит… и вообще, ты в аду…(с) автор не известен Не важно кто вы, новичок или опытный менеджер, каждый из нас сталкивался с сит...

День, когда Dodo IS остановилась. Асинхронный сценарий Привет, Хабр! Каждый SRE в нашей команде когда-то мечтал спокойно спать по ночам. Мечты имеют свойство сбываться. В этой статье я расскажу про это и про то, как мы достигаем производительности и устойчивости своей системы Dodo IS. Читать дальше →

Почему трудно работать в мультинациональной команде Всем привет! Я почти два года работаю в мультинациональной команде. Проект голландский, фронт-офис в Нидерландах плюс пара бэк-офисов: российский и чешский. Голландия – страна, в которую переезжают работать люди с разных точек мира, и собственно эта компания не исключение. ...

Тесты на Си без SMS и регистрации Недавно zerocost написал интересную статью «Тесты на C++ без макросов и динамической памяти», в которой рассматривается минималистический фреймворк для тестирования Си++ кода. Автору (почти) удалось избежать использования макросов для регистрации тестов, однако вместо них в ...

Cравнение iMac 5K и iMac Pro. Стоит ли переплачивать? Когда Apple впервые представила iMac Pro, многие профессионалы отнеслись к этому продукту скептически. Предполагалось, что внутри тонкого корпуса будет нельзя разместить по-настоящему производительные компоненты, для работы над самыми сложными задачами. Более того — к...

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

Dell Latitude 5491: строгий корпоративный ноутбук с мощным процессором Найти компактный ноутбук с мощным процессором не так-то просто. В подавляющее большинство моделей с диагоналями экранов менее 15 дюймов устанавливаются низковольтные процессоры Intel Core U. Что делать, если нужна существенно большая производительность CPU? Для таких случаев...

AX200 — Wi-Fi 6 от Intel Технология Wi-Fi определенно выиграла от того, что консорциум Wi-Fi Alliance в прошлом году решил сменить традиционные имена стандартов 802.11хх на простые и понятные номера поколений — 4, 5, 6 и так далее. Хотя бы потому, что вялотекущая многие годы тема Wi-Fi вдруг внеза...

Тест 5G в самом центре Москвы На днях мы собрали свои вещи, взяли микрофон и камеру и вышли из своей уютной студии, чтобы оказаться в салоне оператора Tele2. Всё дело в том, что здесь есть возможность протестировать сети 5G. Мы постарались разобраться, что у нас в стране и в городе работает, какую скорос...

Антирейтинг 2018 Эта статья написана по аналогии со статьей «Как не надо писать на Хабр: Антирейтинг 2017». Статьи взяты за 2018 год, точнее, начиная с индекса 345000. Кроме отрицательных значений рейтинга, есть список по абсолютному количеству минусов (видимо, самые обсуждаемые темы, в бо...

Под Мюнхеном начались испытания полноразмерного пятиместного конвертоплана Lilium Jet В начале мая немецкая компания Lilium Jet, разрабатывающая одноимённый полностью электрический конвертоплан, провела первые испытания его полноразмерного пятиместного прототипа. Первые испытания полноразмерного прототипа Lilium Jet в мае 2019 года Согласно опубликованном...

Все материалы на данном сайте взяты из открытых источников или присланы посетителями сайта и предоставляются исключительно в ознакомительных целях. Права на материалы принадлежат их владельцам. Администрация сайта ответственности за содержание материала не несет. (Правообладателям)