Социальные сети Рунета
Пятница, 4 декабря 2020

Стоит ли платить за плагины OpenCart? У нас обновление в маркетплейсе: теперь вы можете заказать VPS-сервер с предустановленным OpenCart. Вместо того, чтобы рассказывать, что такое OpenCart, давайте лучше порассуждаем о расширениях: в каком случае стоит покупать готовое, как их проверять? Мы подготовили крат...

VSTi-плагин ASIO-хоста для подключения входа дополнительного ASIO-драйвера в DAW Столкнулся я как-то с ситуацией, когда, при наличии основной звуковой карты со своим ASIO-драйвером, необходимо было в DAW подключить USB-микрофон со своим ASIO-драйвером. А DAW не поддерживает подключение двух ASIO-драйверов одновременно. Поиском наткнулся на VST-плагин "VS...

[Из песочницы] Пишем шейдеры кодом в Unity LWRP Введение Здравствуй, Хабр. Сегодня хочется рассказать немного о том, как можно быстро и безболезненно (почти) начать писать классические текстовые шейдеры в Unity с использованием Lightweight Rendering Pipeline (LWRP) — одним из примеров конвейера Scriptable Rendering Pipeli...

[Перевод] Чистые тесты на PHP и PHPUnit В экосистеме PHP существует много инструментов, обеспечивающих удобное тестирование на PHP. Одним из самых известных является PHPUnit, это почти синоним тестирования на этом языке. Однако о хороших методиках тестирования пишут не так много. Есть много вариантов, для чего и ...

Пишем прошивку под TI cc2530 на Z-Stack 3.0 для Zigbee реле Sonoff BASICZBR3 с датчиком ds18b20 Предполагается, что читатель уже имеет начальные знания языка C, что-то знает о Zigbee, чипе cc2530, методах его прошивания и использования, а также знаком с такими проектами, как zigbee2mqtt. Если нет — подготовьтесь или сходите почитать на https://myzigbee.ru и https://w...

Формальные грамматики на службе мобильного клиента В повседневной жизни мы пользуемся готовыми интерпретаторами и компиляторами — и редко кому придёт в голову написать их самостоятельно. Во-первых, это же сложно, во-вторых — зачем. В Surf мы написали собственный интерпретатор и используем его на клиенте мобильного приложени...

Трехмерная графика на STM32F103 Небольшой рассказ о том, как впихнуть невпихуемое и отобразить в реальном времени трехмерную графику при помощи контроллера, у которого недостаточно ни скорости, ни памяти для этого. Читать дальше →

Современная сборка 2020 для frontend. Gulp4 Начало Посмотрев на календарь, я понял, что уже 2020, а посмотрев на свою сборку, которая была с 2018 года, я понял, что пора её менять. В этой статье мы разберем структуру проекта, плагины (минимальный набор функционала) и их новые возможности, которые добавились за такое б...

Marlin+ramps+TB6600 с общим плюсом. Собственно, результат подключения Marlin+ramps+TB6600 с общим плюсом.Писать больше чем подключать, на видео все видно.Просто пока шли драйвера искал информацию по этому вопросу, находил какую то "муть", большинство сходились к тому, что нужен другой драйвер, или инвертироват...

Дискретная видеокарта Intel Iris Xe Max оказалась медленнее встроенной графики Xe в тесте Geekbench Компания Intel официально заявила о начале поставок своей первой дискретной видеокарты нового поколения — Iris Xe Max или, как ее называли раньше, DG1. Новинку уже даже успели протестировать бенчмарком Geekbench 5 в составе «клиентской корпоративной платформ...

Шпаргалка по SIMD-инструкциям, теперь и для .NET Core Ни для кого не секрет, что в дотнет завезли интринсики. Я писал об этом и до того, как они появились и после. Плюс ещё посты на Хабре, например этот. И всё, казалось бы, замечательно, если бы не одно «но»: называются эти интринсики по-дотнетовски, а совсем не так как в ассем...

[Из песочницы] Как я при помощи Google сделал OPC2WEB клиент Я работаю инженером АСУТП и немного увлекаюсь программированием: при помощи Гугла и Stack Overflow делал несколько калькуляторов на HTML и javascript, делал бота для телеграма на php, даже немного программировал на c# по работе. В этот раз задача была куда интереснее и сложн...

Java-дайджест за 17 января. Две первые недели нового года Появился шрифт JetBrains Mono — приятный и красивый шрифт для разработчиков Вышел плагин для интеграции GitLab с IntelliJ IDEA. Теперь можно делать код-ревью прямо в вашей любимой IDE! В Java-плагине для Visual Studio Code добавили кучу важных ништяков (действительно вли...

[Перевод] Мониторинг Kubernetes с помощью Prometheus и Thanos Поздравляем! Вам удалось убедить ваше начальство в миграции приложений на микросервисную архитектуру с использованием контейнеров и Kubernetes.Вы очень довольны и все идет по плану. Вы создаете свой первый кластер Kubernetes (у всех основных облачных провайдеров: Azure, AWS ...

[Из песочницы] Анализ результатов нагрузочного тестирования С каждым днем в мире становится все больше и больше инструментов для проведения нагрузочного тестирования. Собственно, и сам интерес к этой теме начинает возрастать. Основная задача инструмента нагрузочного тестирования — подать заданную нагрузку на систему. Но кроме этого е...

[Перевод] Миллион спрайтов при 120 с лишним fps Если вы побродите по форуму DOTS, то можете встретить там подобные посты о том, как автор написал библиотеку, способную рендерить миллион анимированных спрайтов, и всё равно получает только 60fps. Я создал собственный рендерер спрайтов DOTS, который достаточно хорош для наш...

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

[Перевод] Мы переписали всё на $КРУТОЙЯЗЫК, но стартап всё равно не взлетел Сегодня наше невероятное приключение подходит к концу. Но всё было не напрасно. Мы оставим после себя наследие в виде превосходных технологических решений и команды, которая готова к следующему вызову. Следуя славной традиции стартапов, я решил написать эту статью, чтобы дру...

[Из песочницы] Как помнить всех в лицо, или эффективный поиск лиц в большой базе О себе Здравствуй, Хабр! Меня зовут Павел, я работаю техническим директором в компании, занимающейся производством IoT устройств. Производим много чего — начиная от контроллеров для умных домов, заканчивая умными приборами учёта на своём запатентованном протоколе сенсорных с...

Декомпилируем приложение xiaomi сканер и забираем результат сканирования У коллеги возникло предложение: «Напиши мне за банку чипсов распознавалку штрих-кодов на андроид, чтобы просто в файлики результаты писать и время, брату надо» В итоге оказалось не брату, да и не надо, и вообще банка чипсов это дорого Из интереса пробежался по готовым решени...

OnePlus выпустит свой 5-летний долгострой Компания OnePlus опубликовала на своей страничке концепт-арт первых умных часов, заявив, что выход этого устройства — «лишь вопрос времени». В экосистеме OnePlus скоро появится больше продуктов. Это лишь вопрос времени. OnePlus Производитель отметил, ч...

Перемещение — прошлый век! Альтернативы std::move в «C++ будущего» Каждый раз, когда мы пишем класс, управляющий ресурсами, мы задумываемся о том, что, скорее всего, для него придётся писать move-конструктор и move-присваивание. Ведь иначе объекты такого типа становятся неуклюжими, как std::mutex, ими тяжело пользоваться на практике: ни вер...

Чистая архитектура с Go Меня зовут Эдгар (ZergsLaw), я работаю в компании, которая занимается  финтех-разработкой для b2b и b2c. Когда только устроился в компанию, то попал в команду большого финтех-проекта и получил «в нагрузку» небольшой микросервис. Мне поручили его изучить и подготовить план ре...

Перфекционизм, отмена: как техническим специалистам писать статьи Цитата анонимного тимлида о том, как он обычно готовит текст: «Написание статьи технические специалисты обычно воспринимают так: автор сформулировал тему, немного подумал, сел и выдал текст сразу на чистовик. Естественно, в реальности все работает по-другому. Из-за этого &...

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

[Из песочницы] Конвертация текстовых документов в xml на С# Недавно мне пришлось столкнуться с необходимостью достать текст из офисных документов (docx, xlsx, rtf, doc, xls, odt и ods). Задача осложнялась требованием представить текст в формате xml без мусора с максимально удобной для дальнейшего парсинга структурой. Решение использо...

[Из песочницы] Автоматическая публикация записей из сообщества ВКонтакте в Discord Предыстория Я являюсь создателем, среднего по количеству участников, Discord сервера ~2000 участников. В один день мне понадобилось публиковать записи из группы ВКонтакте с последними новостями игры, ВКонтакте не умеет работать с WebHooks, поэтому пришлось идти в Google и и...

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

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

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

Избавляемся от рутины со своим плагином для PhpStorm Привет, Хабр! Я тружусь в команде Антиспама, и, как и у большинства бэкенд-разработчиков Badoo, большая часть времени у меня уходит на работу с PHP-кодом. С этой работой связано много специфических проблем и задач, которые можно решить или упростить. Когда мне надоело вруч...

[Из песочницы] Избегайте внедрения внешних библиотек в свой проект Часто можно услышать фразу: «Зачем писать свой велосипед? Возьми готовую либу и пользуйся! За тебя уже все написали». Особенно часто подобные выражения слышат начинающие разработчики. При решении любой задачи они начинают смотреть готовые либы и бездумно тянуть их в свой про...

Я автоматизировал тестирование Dr. Web. А сможете ли вы? Я никогда не пользовался Dr. Web. Я понятия не имею, как он устроен. Но это не помешало мне написать для него ряд автотестов (и лишь лень не позволила мне написать ещё сотню других): Тест на установку Dr. Web; Тест на ограничение доступа к съемным устройствам (флешкам); Те...

«Как зеницу ока...» или делаем простенькую охранную систему на базе микроконтроллера (Canny или Arduino) и Raspberry PI Во время подготовки статьи, про распознавание микроконтроллеров с помощью TensorFlow и OpenCV мне одновременно на глаза попались Craftduino, Canny 3 tiny и Raspberry PI, после чего я решил, что будет здорово еще раз объединить их в одной статье. Я долго думал, о чем писать, ...

[Из песочницы] Вывод текста на OLED дисплей с контроллером SH1106 по шине SPI через библиотеку HAL Здравствуйте, уважаемые читатели. В своих разработках на микроконтроллерах STM32, для вывода осмысленной информации, я пользуюсь OLED дисплеями на чипе SSD1306. В последний раз пришел ко мне 1,3" SPI модель по демократичной цене — около 200руб. Первое, что бросилось в г...

[Перевод - recovery mode ] Убрать лишнее [очищаем график от ненужного] Искусство сокращения для аналитика данных. В этой статье минимум слов, ведь важно попрактиковаться в искусстве упрощения. Удаление ненужного — критически важно для эффективной работы с данными. Как сказал Антуан де Сент-Экзюпери: «Ты осознаешь, что достиг совершенства не т...

Я — Android-разработчик, и мне не нравилось вести ворклоги вручную Когда я устраивалась в Skyeng, солнце светило чуть ярче, трава зеленее не была (шла такая же ранняя весна), а тимлид попросил записывать в Jira, сколько времени ушло на кодинг, а сколько на разговоры и ревью. Хотя бы раз в две недели. «По этим данным мы пробуем понять, на...

Как подружить .NET и IDA Pro (о дружбе C# и C++) Приветствую, Сначала о проблеме/задаче: Начав писать очередной плагин-отладчик для ретро-платформы под IDA Pro (по секрету: это будет SNES), я столкнулся со следующим набором, который требовалось подружить: Ядро эмулятора написано на C++ и компилируется в DLL GUI эмулятора...

SLAE — Security Linux Assembly Expert Exam Security Linux Assembly Expert — онлайн-курс и экзамен по основам 32-битного языка ассемблера процессоров семейства Intel в Linux-системах в контексте информационной безопасности. Курс будет полезен пентестерам, инженерам по информационной безопасности и всем, кто желает ра...

[Из песочницы] Игра для программистов FuncBall Многие, как и я, любят футбольные симуляторы и многие увлекаются программированием. Когда-то, в далёком 2004 году, наигравшись в ФИФУ я подумал, что было бы неплохо совместить два моих увлечения в одной игре, в которой игроки управлялись бы не вручную, а написанным для них с...

В какую сторону течёт вода? Пятничная статья про столкновение задачи из собеседования с реальным миром. Есть довольна известная задача — перед вами находится металлическая труба с текущей внутри водой. Как определить в какую сторону она течёт? Её всё ещё могут задать вам на собеседованиях. По многим...

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

Приглашаем на онлайн-интенсив «Слёрм DevOps: Tools&Cheats» 19-21 августа пройдет онлайн-интенсив Слёрм DevOps: Tools&Cheats. Главный враг, с которым борется курс по DevOps: «Очень интересно, жаль, что у нас в компании это нельзя внедрить». Мы ищем такие решения, которые может внедрить даже обычный админ в легаси-проекте. Курс пр...

Как я искал хелпдеск среди 15 решений и… не нашёл Этой статьи не должно было быть: вроде как и Хабр не жалобная книга, и у меня частная история далеко не хабровской компании. Но именно на Хабре я получил не очень корректное отношение одной компании и познакомился аж с двумя другими в самый подходящий момент — в момент, когд...

MCMC-методы и коронавирус: часть первая, вступительная Привет, коллеги! Сто лет не писал на Хабр, но вот время настало. Весной этого года я вёл курс «Advanced ML» в Академии больших данных Mail.ru; кажется, слушателям понравилось, и вот сейчас меня попросили написать не столько рекламный, сколько образовательный пост об одной и...

Go. FakeDb. Эмуляция работы БД в тестах На днях писал тесты для модуля, который взаимодействует с базой данных. Привязывать модуль тестов к настоящей базе данных не хотелось — это создаёт дополнительные требования к окружению, где будет выполняться тестирование. Создавать сразу экземпляры типа sql.Rows, с нужными ...

E-mail адрес всего из двух букв? Это возможно, но за 999 долларов в год При создании нового электронного почтового ящика порой самое сложное — это придумать адрес. Особенно, если не хочется городить огород из кучи цифр, а хочется что-то покороче и чтобы легко запоминалось. Недавно созданный почтовый сервис Hey предлагает такую возмож...

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

Как будто мало было проблем с GeForce RTX 3000. MSI отозвала свои карты Suprim из-за какой-то проблемы Видеокарты GeForce RTX 3000 надолго запомнятся жутким дефицитом, а некоторые запомнят их и благодаря проблеме с конденсаторами.  Теперь к проблеме добавилась ещё одна, правда, затрагивающая лишь единственного производителя. Компания MSI заявила о старте о...

[Перевод] Как начинающий Data Scientist вроде меня может набраться опыта Я прошел несколько курсов, а что делать дальше? На днях я получил письмо от Мануэлы со следующим вопросом: «Как начинающий data scientist вроде меня может набраться опыта?» Вопрос отличный. За вопросом следовало: «Я закончила несколько курсов и проектов, некоторые работ...

E-mail адрес всего из двух букв? Это возможно, но за 999 долларов в год При создании нового электронного почтового ящика порой самое сложное — это придумать адрес. Особенно, если не хочется городить огород из кучи цифр, а хочется что-то покороче и чтобы легко запоминалось. Недавно созданный почтовый сервис Hey предлагает такую...

Вопреки карантину: как мы перевели свои стажировки на удаленный формат Удаленка – вынужденный тренд этой весны. К концу марта, когда началась всеобщая самоизоляция, в наших региональных центрах мониторинга и реагирования на кибератаки Solar JSOC уже полным ходом шли традиционные стажировки. Мы были уверены, что готовы ко всему, но… — Он слиш...

Как корова помогла сделать интереснее процесс проектирования Всем привет! Я ведущий системный аналитик в компании МойСклад и сейчас мы с командой «Производство» запускаем внутренний стартап внутри стартапа – Производство 2.0. Недавно я написала о том, с чего начать процесс разработки в новоиспеченном проекте, а сейчас хочу продолжить ...

[Перевод] Недочёты, часто встречающиеся в программировании, которых стоит избегать Люди, по своей природе, склонны к совершению ошибок. Однако множества недочётов, характерных для разработчиков, можно избежать. Если программист способен избавиться от распространённых оплошностей, о которых речь пойдёт в этом материале, он сможет писать более качественный и...

[Перевод] Руководство по работе с OpenAL на C++. Часть 1: воспроизводим звук Вашей игре нужен звук! Наверно, вы уже использовали OpenGL для рисования на экране. Вы разобрались с его API, и поэтому обратились к OpenAL, потому что название кажется знакомым. Что же, хорошие новости — OpenAL тоже имеет очень знакомый API. Он изначально задумывался для и...

Как перестать бояться и полюбить 1-wire Мне очень нравится протокол 1-wire своей простотой и удобством для применения в системах «умный дом». Недавно я писал программную эмуляцию одной микросхемы и погрузился во внутренности этого протокола. Чтобы накопленные знания могли принести пользу не только мне, я решил нап...

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

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

[Перевод] Анализ скорости распространения COVID-19 и публикация результатов на dstack.ai Предисловие переводчика Всем привет, давно ничего не писал на Хабр, но тут появился повод. Я довольно много лет проработал в области анализа данных и самая важная вещь, которую я понял за это время — в анализе данных очень не хватает инструментов, самых разных инструментов...

Пишем full stack монолит с помощью Angular Universal + NestJS + PostgreSQL Привет, Хабр! В этой статье мы создадим готовый шаблон-монолит, который можно брать за основу нового fullstack приложения как скелет для навешивания функционала. Эта статья будет полезна, если вы: Начинающий  fullstack-разработчик; Стартапер, который пишет MVP чтобы провери...

Мне кажется, дело не в языке, а в том, как на нем пишут «Летом между 2 и 3 курсом я пошла искать работу — а в Новосибе того времени почти все вакансии для ребята без опыта были про PHP. Начинала с очень простых вещей — WordPress, Drupal… Потом писала бэкенды на Yii и много еще разного. Go впервые попробовала в 2014-м, вдохновивши...

Умный дом: Строим графики потребления воды и электричества в Home Assistant Каждый раз получая платежку за электричество и воду я удивляюсь — неужели моя семья стооооолько потребляет? Ну да, в ванной установлен теплый пол и бойлер, но ведь они же не кочегарят постоянно. Воду тоже вроде экономим (хотя поплескаться в ванной тоже любим). Несколько ле...

Указатели на методы классов в C++ Привет, интернет. Решил написать статью об указателях на методы классов. Недавно мне пришлось столкнуться с тем, как они работают изнутри, когда писал некоторые вещи ориентированные под компилятор. Эти указатели работают не совсем как обычные указатели, не имеют возможности...

Пишем свой dependency free WebSocket сервер на Node.js Node.js — это популярный инструмент для построения клиент-серверных приложений. При правильном использовании, Node.js способен обрабатывать большое количество сетевых запросов, используя всего один поток. Несомненно, сетевой ввод — вывод является одной из сильнейших сторон ...

[Перевод] Создание карандашного эффекта в SVG Моя игра Dragons Abound создаёт карты в векторном графическом формате SVG. Векторная графика имеет множество особенностей (например, зум без потерь), что удобно для карт. Также векторная графика хороша для создания чётких линий, например, чернильных контуров: С другой стор...

Функция-конвертер для отправки сообщений на русском языке в Телеграмм из Микротик РоутерОС Мессенджер Телеграмм крайне удобен для уведомления о работе IT-оборудования, чем активно пользуются СисАдмины. Популярные WhatsApp и Viber поддерживают API но в них нет встроенной технологии создания своих ботов. РоутерОС известной компании Микротик не позволяет штатными с...

Действительно простая графика в R для науки и публицистики R — очень мощный инструмент для работы со статистикой: от предварительной обработки до построения моделей любой сложности и соответствующей графики. Простой гугл-запрос выдаст большое количество литературы по тому, как «легко и быстро» использовать R. Здесь будут и огромные...

Простой способ редактирования, хранения и передачи параметров между job'ами Jenkins Как и любой здоровый человек — могу назвать себя в меру ленивым. Так, например, мне лень писать длинный pipeline (вообще писать руками pipeline лень). И мне не нравится идея гонять туда — сюда файлик, в который придётся писать параметры, для чего городить огород из лишнего ...

Как управлять состоянием в Angular по мере роста приложения Допустим, перед вами стоит задача написать фронтенд-приложение. Есть ТЗ с описанием функционала, тикеты в баг-трекере. Но выбор конкретной архитектуры лежит на вас. Порой трудно заранее понять, какая архитектура будет удачной, а какая нет. Особую сложность представляет орга...

Изучаем VoIP-движок Mediastreamer2. Часть 10 Материал статьи взят с моего дзен-канала. В прошлой статье мы сделали дуплексное переговорное устройство, выполняющее обмен звуковым сигналом через дуплексную RTP-сессию. В этой статье мы научимся писать фильтры и добавим сделанный своими руками фильтр в сделанное своими рук...

Легкая работа со сложными алертами. Или история создания Balerter Все любят алерты. Конечно, гораздо лучше получить уведомление когда что-то произошло (или починилось), чем сидеть, смотреть на графики и искать аномалии. И инструментов для для этого создано немало. Alertmanager из экосистемы Prometheus и vmalert из группы продуктов Victoria...

NoVerify: PHP-линтер, который работает быстро Для PHP есть хорошие утилиты статического анализа: PHPStan, Psalm, Phan, Exakat. Линтеры хорошо выполняют свою работу, но очень медленно, потому что почти все написаны на PHP (или Java). Для личного использования или небольшого проекта это нормально, но для сайта с миллионам...

Подборка занимательных статистических фактов #2 Подборка графиков и результатов различных исследований c короткими аннотациями. Люблю такие графики за то, что они будоражат ум, хотя в тоже время понимаю, что это больше не про статистику, а про концептуальные теории. Короче, необходимые для обучения ИИ вычислительные мо...

Эффективное тестирование верстки Тестировать полезно. Тесты позволяют в автоматическом режиме безопасно рефакторить код и гарантируют его работу. Тесты – это живая документация: если информация в Wiki или в Confluence может устареть, то тесты всегда актуальны. Также многие крутые практики связаны с тестиров...

[Перевод] Имитация рисования от руки на примере RoughJS RoughJS это маленькая (<9 КБ) графическая библиотека JavaScript, позволяющая рисовать в эскизном, рукописном стиле. Она позволяет рисовать на <canvas> и с помощью SVG. В этом посте я хочу ответить на самый популярный вопрос о RoughJS: как это работает? Немного ист...

Найди флаг и не отдавай его. Как мы проводили RBKmoney CTF Привет! В этом посте мы расскажем о том, как провели первый в истории RBK.money CTF (capture the flag). Механика соревнования была примерно такой же, как и на привычных вам CTF, а вот результаты немного удивили. Впрочем, возможно, мы просто перестарались с задачами. В рамках...

Security Week 19: брутфорс-атаки на RDP Переход офисных работников на удаленку серьезно повысил нагрузку как на общедоступные сервисы веб-конференций и обмена файлами, так и на корпоративную инфраструктуру. Это две принципиально разные беды. Сбои в работе Zoom — это проблема одного сервиса на фоне нескольких альте...

Управление трафиком в Kubernetes-кластере с Calico Практически каждый инженер, практикующий DevOps, в какой-то момент сталкивается с задачей настройки правил доступа для своих проектов. В данной статье мы рассмотрим примеры настройки сетевых политик Kubernetes-кластера, в котором используется плагин Calico и осветим некотор...

[Из песочницы] Фасетные фильтры: как готовить и с чем подавать О чем речь  Как сделать фасетный поиск в интернет-магазине? Как формируются значения в фильтрах фасетного поиска? Как выбор значения в фильтре влияет на значения в соседних фильтрах? В поиске ответов дошел до пятой страницы поисковой выдачи Google. Исчерпывающей информации н...

Разбираемся в рекурсии Привет, Хабр. Про рекурсию ходит много шуток, и она традиционно считается одной из сложных для понимания тем в computer science, поэтому давайте сегодня немного о ней поговорим. А именно, давайте обсудим, как выражать доказуемо завершимые вычисления. Зачем это надо? Рекурси...

Отображение 3D-графики на STM32F407 Как известно, старшие STM'ки имеют приличные частоты и объёмы ОЗУ. Ну а раз так, то почему бы не запустить 3D-графику на таких контроллерах? Да нет ничего проще! Читать дальше →

Интеграция проекта VueJS+TS с SonarQube В своей работе мы активно используем платформу SonarQube для поддержания качества кода на высоком уровне. При интеграции одного из проектов, написанном на VueJs+Typescript, возникли проблемы. Поэтому хотел бы рассказать подробней о том, как удалось их решить. В данной стать...

[Перевод] Flutter. Упрощаем компоновку виджетов с помощью Dart расширений В версии Dart 2.7 нам представили расширения, позволяющие разработчикам добавлять новые функциональные возможности в уже существующие типы. Расширения могут быть отличным помощником не только, когда мы пишем бизнес-логику, но и когда у нас есть другие задачи! Примером такой...

Создаем свою CRUD API на Express и MySQL: часть первая Всем привет. В преддверии старта курса «Fullstack разработчик JavaScript», хотим поделиться небольшим материалом, который был написан нашим внештатным автором. Express один из самых популярных веб-фреймворков, который поддерживает роутинг, миддлвейрс и систему шаблонов. Д...

Google возобновляет выпуск обновлений для Chrome, но меняет график их выхода, Chrome 83 выйдет раньше срока Недавно компания Google решила приостановить выпуск обновлений для своего браузера Chrome, чтобы случайной ошибкой не нарушить стабильность его работы в условиях, когда многие сотрудники вынуждены работать из дома. Но теперь компания изменила своё решение и готова вернуться ...

Визуализация сложных данных с использованием D3 и React Существует много возможныx вариантов реализации сложных графиков в ваших проектах. Я за несколько лет попробовал все возможные варианты. Сначала это были готовые библиотеки типа AmCharts 4. AmCharts сразу же оказался большим и неповоротливым. После этого были более гибкие и ...

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

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

Мониторинг систем, оборудованных АКБ на примере поломоечной машины С 24/10/2018 по 26/10/2018 производилась диагностика электронной бортовой системы и аккумуляторных батарей полотера с помощью ABLogger. Тип аккумуляторных батарей (2 штуки), установленных на данном полотере: hoppecke 60 Aч (С5) номинальным напряжением 12 В. АКБ включены посл...

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

[Перевод] Расследование: что выше, чем приоритеты потоков в Wndows? Это расследование, как и многие другие, началось с того, что я занимался собственными делами, не пытаясь искать себе проблем. На этот раз всё, что я сделал — открыл крышку ноутбука и попытался выполнить вход в систему. В первые несколько раз, когда это приводило к задержке ...

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

Intel Core i7-1165G7 оказался на 20% быстрее Ryzen 7 4800U в тесте графики 3DMark Time Spy Как показывают свежие утечки, специалистам Intel действительно удалось создать мощное встроенное видеоядро, опережающее далеко не слабую графику Vega в составе гибридных чипов Ryzen. Речь идет о новых тестах Intel Core i7-1165G7, относящегося к...

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

Как я искал пацанский движок для блога Я много пишу в интернетах и мне захотелось завести свой личный стэндалон блог, куда можно писать мелкие заметки и статьи, не подходящие для других площадок. Главная проблема личного блога — мне лень оформлять посты. Чтобы черкануть пару строк в каком-нибудь Wordpress, нужн...

[Из песочницы] Как писать хорошие комментарии к коду: «зачем», а не «как» Привет, Хабр! Представляю вашему вниманию перевод статьи «Writing good comments: the why, not the how» автора Jack Franklin. Комментирование кода в программистской среде нередко считается пустой тратой времени или неким сигналом о том, что код можно и улучшить. Вот цитата...

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

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

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

Как я делал 2D тени в Unity Что первое приходит в голову разработчику инди-игры, когда он сталкивается с необходимостью добавления фичи, представления о реализации которой толком не имеет? Разумеется, он идёт искать следы тех, кто уже прошёл этот путь и удосужился записать свой опыт. Так поступил и я н...

Делаем голову шинного USB-анализатора на базе комплекса Redd В прошлой паре статей мы рассмотрели пример «прошивки» для комплекса Redd, делающей его ПЛИСовую часть логическим анализатором общего применения. Дальше у меня было желание сделать следующий шаг и превратить его в шинный USB-анализатор. Дело в том, что фирменные анализаторы ...

[Из песочницы] Знакомство с effector-dom на примере списка задач Многим уже известен стейт-менеджер effector, кто-то его уже не только смотрел, но и использует в проде. С конца осени его автор активно разрабатывает девтулзы для эффектора, и в процессе этой работы у него получилось написать очень интересную библиотеку для рендера приложени...

МТС готова возвращать деньги, если не потратили ГБ до конца Вы не поверите, но сотовый оператор готов не только забирать ваши деньги, но и частично их возвращать. Количество вернувшихся финансов напрямую зависит от того, насколько интенсивно вы пользуетесь смартфонов и расходуете ресурсы тарифа в течение месяца. Читать полную ста...

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

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

Javascript фреймворк разработки бизнес приложений Мысль о своем фреймворке зародилась когда я еще активно работал с 1С. Хотелось иметь простую и открытую платформу для создания несложных бизнес приложений (простые системы учета, CRM и прочие).Не раз искал open source решения, но ничего подходящего не находил. Весной 2011-г...

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

Осциллограф в браузере Отрисовка графиков в реальном времени Одно время я работал в компании, которая разрабатывала бесконтактные датчики, как на фото. И при установке этих датчиков, надо было правильно сориентировать антенну (белая штука на фото). И выглядело это так: один человек на объекте, ...

Добавляем графики в Notion Многим не хватает графиков в Notion'e. Поэтому я решил напилить автоматическую штуку для их генерации. Вот как это выглядит с моей стороны: Всех интересующихся, как это реализовано, прошу под кат. Читать дальше →

[Перевод] Встречаем Angular 10 Вышел Angular 10.0.0! Это — мажорный релиз, который затрагивает всю платформу, включая сам фреймворк, библиотеку компонентов Angular Material и инструменты командной строки. Размер этого релиза меньше, чем обычно. Дело в том, что с момента выхода Angular 9 прошло всего 4 мес...

Тест-драйв робота-пылесоса ECOVACS DEEBOT OZMO 900 Так вышло, что этот обзор мы начинаем с огромного спойлера. Если бы мне пришлось писать текст на тему «5 вещей, которые должны быть у каждого мужчины», я в этот список непременно включил бы робот-пылесос. Но с некоторой оговоркой, тем самым мелким шрифтом под звёздочкой, п...

[Перевод] Pylint: о попытке снизить потребление памяти Мне приходится работать с огромной кодовой базой, написанной на Python. Этот код, с помощью системы непрерывной интеграции, проверяется с помощью Pylint. Подобная проверка всегда была немного медленной, но недавно я обратил внимание на то, что при её проведении ещё и потребл...

[Перевод] Неизбежность проникновения FPGA в дата-центры Не нужно быть разработчиком чипов, чтобы программировать для FPGA, как не нужно быть программистом на С++, чтобы писать код на Java. Однако в обоих случаях, вероятно, это будет не лишним. Цель коммерциализации обеих технологий, Java и FPGA, в том, чтобы опровергнуть послед...

Обзор Dreadlands. Не лучшая затея Довольно часто к нам на обзор попадают довольно странные игры, которые требуют понимания. Например, есть ААА-шутеры, с которыми всё понятно через десять минут игры — графика шикарная, управление и физика отточены, сюжет писали профессионалы. В таких ситуациях остается искать...

Альтернативное понимание контекста с помощью статистической языковой модели В интернете полно статей на тему основанных на N-граммах языковых моделей. При этом, готовых для работы библиотек довольно мало. Есть KenLM, SriLM и IRSTLM. Они популярны и используются во многих крупных проектах. Но есть проблемы: Библиотеки старые, не развиваются. Пло...

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

[Из песочницы] Бот «Умный планировщик»: понимает с полуслова Если вы когда-нибудь желали иметь личного слугу, который бы напоминал вам обо всем, о чем вы ему скажите, но не имели возможности нанять такого, то разработанный мною бот станет ему достойной заменой. Хотите проверить функционал? Напишите в лс боту по этой ссылке и он отв...

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

Yarn 2 — с Prolog'ом и плагнплеями Yarn — менеджер пакетов для ноды — выпустили вторую версию. И, похоже, парни серьёзно вознамерились изменить статус-кво в экосистеме ноды, а то и вообще в пакетных менеджерах. Удаляйте все свои картинки про гигабайтные мамки node_modules, убирайте yarn install из скриптов CI...

All Cups: история одного дизайна экосистемы с большой историей Перед тем как воспользоваться продуктом, мы обращаем внимание на его состояние. Представьте, что вы приходите в автосалон и выбираете машину. Если машина выглядит плохо, то мы начинаем испытывать негативные эмоции и чувствовать отсутствие внимания со стороны создателей это...

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

Встроенная графика Tiger Lake-U оказалась производительнее RX Vega 8 процессора Ryzen R9 4900HS Intel сейчас работает над своей графической архитектурой Intel Xe, которая найдёт применение как во встроенной графике центральных процессоров, так и в дискретных видеокартах. Сама компания обещает, что это будут достаточно быстрые решения, но сегодня мы можем подкрепить эт...

Ищем чехол для Samsung Galaxy M51 Очень часто пользователи приобретают новый смартфон, а потом спрашивают, нужно ли покупать чехол для Samsung Galaxy M51 SM-M515F (2020). Это весьма разумный вопрос на самом деле, так как пользователь, приобретая довольно дорогое устройство, хочет пользоваться им длительное в...

[Из песочницы] Instagram api на минималках Все началось с того, что я захотел сделать канал в инстаграме потратив на поиски и тесты сервисов авто публикаций целый день, далее я решил посмотреть на готовые пакеты гитхаба я удивился на размер кода этих пакетов (некоторые фреймворки php меньше чем эти обертки над инст...

[Из песочницы] Пишем свой плагин для VueJS. Как проект на VueJS трансформировать в расширение для браузера? Вступление В этой статье мы с вами напишем свой собственный плагин для проектов на VueJS, который трансформирует проект в расширение для браузера. Узнаем как изменять правила сборки webpack и генерировать дополнительную структуру файлов и папок. Расширения для браузеров час...

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

Энтузиасты сравнили графику Need for Speed Hot Pursuit Remastered с оригинальной игрой 2010 года Изменения пришлось искать с лупой.

[Перевод] Исследование системы типов для проверки корректности музыки Сегодня много говорят о представлении музыки с помощью языков программирования, поскольку это, с одной стороны, интересная задача для инженеров, а с другой — является частью задачи универсального описания музыки. Как это выглядит? Для многих языков созданы среды программи...

«Вы уж простите, обознался...» или распознаем малину и контроллеры с помощью Tensorflow Object Detection API В конце прошлого года, я написал статью, о том как был заинтригован возможностью распознавания объектов на изображениях с помощью нейронных сетей. В той статье мы с помощью PyTorch классифицировали на видео либо ягоду малину, либо ардуино-подобный контроллер. И не смотря на ...

Почему мы выбрали Kotlin одним из целевых языков компании. Часть 2: Kotlin Multiplatform Продолжаем цикл статей о внедрении языка Котлин в наш процесс разработки. Первую часть ищите здесь. В 2017 году увидел свет амбициозный проект от компании Jetbrains, предлагающий новый взгляд на кросс-платформенную разработку. Компиляция кода на kotlin в нативный код различ...

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

[Из песочницы] Управление сценами в Unity без боли и страданий Вам когда-либо приходилось думать над тем, как сделать управление сценами в вашем проекте менее болезненным? Когда у вас достаточно простая игра, в которой всего несколько сцен идущих одна за другой, то, зачастую, всё проходит гладко. Но когда количество сцен растёт и усложн...

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

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

Мой Covid-19 lockdown проект, или, как я полез в кастомный UICollectionViewLayout и получил ChatLayout Да, да. Я понимаю, что на дворе 2020 год, что все хардкорные IOS разработчики пишут исключительно на SwiftUI и Combine, и писать статьи про UIKit как-то “не айс”. Тем не менее, 2020 год выдался не таким, как все предыдущие года. Совсем не таким. Поэтому, как только на Дубл...

[Из песочницы] pyqtdeploy, или упаковываем Python-программу в exe'шник… the hard way Наверняка, каждый, кто хоть раз писал что-то на Python, задумывался о том, как распространять свою программу (или, пусть даже, простой скрипт) без лишней головной боли: без необходимости устанавливать сам интерпретатор, различные зависимости, кроссплатформенно, чтобы одним ...

[Из песочницы] Ableton не нужон: подключаем Ableton Push 2 к VCV Rack Создание музыки, в последнее время, проходит примерно тот же путь что фотография 10 лет назад: у каждого появляется своя зеркалка и аккаунт в инстаграме. Музыкальная индустрия этому очень рада, ведь такой интерес приносит много денег. Каждый день появляются новые VST плагин...

Работа с IPv6 в PHP Недавно мы получили статус LIR и /29 блок IPv6. А следом возникла необходимость вести учёт назначенных подсетей. И коль скоро наш биллинг написан на PHP, пришлось немного проникнуться вопросом и осознать, что этот язык — не самый дружелюбный в плане работы с IPv6. Под катом ...

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

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

Видеоурок Теплицы: как вернуть старый дизайн Facebook и настроить ленту с помощью плагина F.B.Purity Facebook изменил интерфейс приложения для десктопа и запретил возврат к старой версии. Если вам не нравится новая – просто терпите, как бы намекает Facebook. Для тех, кто терпеть не готов и хочет вернуть старый дизайн есть плагин F.B. Purity. F.B. Purity можно установить в б...

[Из песочницы] Тесты на pytest с генерацией отчетов в Allure с использованием Docker и Gitlab Pages и частично selenium Этот текст предназначен для начинающих тестировщиков, желающих понять как делать отчеты на allure с историей тестов, также разъяснить где их хранить, чтобы в отчет мог заглянуть любой участник вашей команды. Когда я хотел добавить в gitlab автотесты в стеке python, allure, ...

[Перевод] Как pod в Kubernetes получает IP-адрес Прим. перев.: эта статья, написанная SRE-инженером из LinkedIn, в деталях рассказывает о той «внутренней магии» в Kubernetes — точнее, взаимодействии CRI, CNI и kube-apiserver, — что происходит, когда очередному pod'у требуется назначить IP-адрес. Одно из базовых требований...

[Из песочницы] Как не платить за Java хостинг или быстрый старт с Google App Engine Все мы хоть когда-нибудь писали приложения, облегчающие жизнь. Не на заказ, а просто для себя. Записные книжки, программки учета финансов, набор карточек для изучения иностранного языка — да мало ли в жизни хороших идей? И вот было бы здорово, иметь доступ к этой программке ...

AMD Ryzen 9 5950X разнес 10-ядерный Intel Core i9-10900K и даже обошел 14-ядерный Core i9-10940X в тестах SiSoftware На сайте бенчмарка SiSoftware появилось подробное сравнение 16-ядерного процессора AMD Ryzen 9 5950X с предшественником, Ryzen 9 3950X, а также конкурентами — 10-ядерным Intel Core i9-10900K и 14-ядерным Core i9-10940X. Все результаты наглядно представлены на граф...

Как не подарить свою компанию хакеру, пока она на удаленке. Советы специалистам SOC Изображени: Unsplash Понятие «удаленной работы» для многих приобрело значимость только в связи с мерами по нераспространению вирусной инфекции, с которыми нам всем, увы, пришлось столкнуться. Опыт массового перевода сотрудников на удаленку есть у крайне малого числа компа...

Оконные функции с «форточкой» или как пользоваться фреймом Всем привет. 26 февраля в OTUS стартовали занятия в новой группе по курсу «MS SQL Server разработчик». В связи с этим я хочу поделиться с вами своей публикацией про оконные функции. Кстати, в ближайшую неделю еще можно записаться в группу ;-). Оконные функции прочно вошл...

Поиск научных публикаций в Интернете. Часть 2. Где и как искать Продолжение (начало – здесь) 1.3. Поисковые системы – специализированные и не очень В общем случае результаты поиска в первую очередь зависят от поставленной задачи и корректности запроса. Но эти результаты чаще всего, с одной стороны, а) избыточны и с другой стороны — ...

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

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

Лучший сервис Google, или за что я люблю «Google Фото» Сколько себя помню, я всегда пользовался сервисом «Google Фото». Не сказал бы, что поначалу особенно разбирался в особенностях его работы, тем более что мне хватало одной только возможности хранить в облаке неограниченное количество фото и видео в высоком качестве. Тогда ни...

Антикризисный раздел Хабра А вы знали, что если нажать на Хабре хоткей «/» и ввести запрос в квадратных скобках, то сработает поиск только по ключевым словам? Например, с тегом [covid-19] уже написано более 170 постов — только по одному этому числу можно сделать вывод, что тема вируса волнует наших чи...

История одного патча Apple В этом году мы с a1exdandy выступали на конференциях VolgaCTF и KazHackStan с докладом про Patch Diffing программ написанных на Оbjective-С и то, как с его помощью можно искать и находить 0-day и 1-day уязвимости в продуктах компании Apple. Видео выступления можно посмотрет...

[Перевод] Подвергаем модель GPT-3 тесту Тьюринга Я уже некоторое время играюсь с новой моделью GPT-3 от OpenAI. Когда я только получил доступ к бета-версии, то первое, что мне пришло в голову, было: насколько GPT-3 похожа на человека? Близка ли она к тому, чтобы пройти тест Тьюринга? Как это работает Позвольте объяснить, ...

STL, allocator, его разделяемая память и её особенности Разделяемая память — самый быстрый способ обмена данными между процессами. Но в отличие от потоковых механизмов (трубы, сокеты всех мастей, файловые очереди ...), здесь у программиста полная свобода действий, в результате пишут кто во что горазд. Так и автор однажды задал...

[Перевод] Устранение бага в Factorio: не ошибается тот, кто ничего не делает В недавних примечаниях к патчам была строка «Исправлена ошибка создания земли под игроком при создании земли в другом месте». Подробнее об этом можно прочитать здесь. Некоторых пользователей Reddit заинтересовало, как вообще мог возникнуть такой баг, они попросили объяснить ...

[Перевод] Джон Ромеро о Doom: 25 лет Rip & Tear Быстрый. Брутальный. Хардкорный. Беспощадный. Это Doom. «Doom – ‘nuff said!» Именно так должен выглядеть постмортем одной из самых важных игр в истории. Doom написал историю игр, Doom — это поп-культура, Doom — имя, символизирующее скоростные, хардкорные и беспощадные шуте...

О том как написать и опубликовать смарт-контракт в Telegram Open Network (TON) О том как написать и опубликовать смарт-контракт в TON О чем эта статья? В статье я расскажу о том, как поучаствовал в первом (из двух) конкурсе Telegram по блокчейну, не занял призовое место и решил зафиксировать опыт в статье, чтобы он не канул в Лету и, возможно, помог ко...

Аутентификация в .NET Core gRpc с помощью JWT В этой статье я расскажу об особенностях аутентификации API в gRpc сервисах с помощью JWT. Я предполагаю, что вы знакомы с JWT и заголовками HTTP, с их использованием в .NET Core WebAPI, поэтому не буду обсуждать эти детали. Когда я пытался реализовать аутентификацию в gRpc,...

[Перевод] REST API на Java без фреймворков Перевод статьи подготовлен специально для студентов курса «Разработчик Java». В экосистеме Java есть много фреймворков и библиотек. Хотя и не так много, как в JavaScript, но они и не устаревают так быстро. Тем не менее, это заставило меня задуматься о том, что мы уже забы...

3D-аркада в браузере: как мы сделали игру на React + Redux Привет, Хабр! В не такие уж далёкие годы, на первом курсе «программистского» факультета, мне нравилось задавать товарищам по учёбе вопрос: «Зачем вы вообще пошли сюда учиться?» Точной статистики ответов я, конечно, не вёл, но доподлинно помню: больше половины хотели делать и...

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

[Из песочницы] Плоды изоляции: интерактивная карта COVID-19 с историческими графиками и миграционными ограничениям Три недели назад мы с командой в Routitude переключились с наших привычных задач на создание сервиса для мониторинга распространения вируса COVID-19. За это время мы реализовали: дашборд с регулярно обновляющимися данными для всех стран (а также административных субъектов ...

Как совладать со сложностью распределённой системы. Мониторинг GridGain при помощи Control Center Представим, что вам нужно настроить мониторинг распределённой базы данных, такой как GridGain. Метрики положим в Prometheus. Графики нарисуем в Grafana. Про систему оповещения не забудем – для этого настроим Zabbix. Для анализа трейсов воспользуемся Jaeger. Для управления со...

Встроенная графика Apple M1 разнесла GeForce GTX 1050 Ti в тестах GFXBench Если вычислительная мощность Apple M1 ещё кого-то не впечатлила, возможно, удивят графические возможности этой новой 5-нм однокристальной системы для Mac. Новые результаты тестирования M1 в GFXBench 5.0 для M1 демонстрируют превосходство кристалла над дискретными видеокартам...

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

[Перевод] Жестокая правда будней программиста: 8 наблюдений Несколько лет я писал код, а мне за это платили. За это время я узнал о некоторых неприятных вещах, касающихся работы программиста. Мне всегда хотелось написать об этом. Надеюсь, вы понимаете, что я рассказываю вам всё это не для того, чтобы вас расстроить. Я считаю эту стат...

Совершенный цикл for Сегодня необычный для меня формат статьи: я скорее задаю вопрос залу, нежели делюсь готовым рецептом. Впрочем, для инициирования дискуссии рецепт тоже предлагаю. Итак, сегодня мы поговорим о чувстве прекрасного. Я довольно давно пишу код, и так вышло, что практически всегда ...

Apple M1 в графическом тесте обогнал GeForce GTX 1050 Ti Apple смогла достичь уровня производительности дискретных видеокарт Рынок интегрированных видеокарт делят между собой Intel и AMD. И если Intel только недавно начала увеличивать мощность своих графических систем, то AMD уже давно славится своей достаточно производительной ...

[Из песочницы] Web Scraping. Часть 1 Введение Всем привет. Недавно у меня возникла идея о том, чтобы поделиться с интересующимся кругом лиц о том как пишутся скраперы. Так как большинству аудитории знаком Python все дальнейшие примеры будут написаны на нём. Данная часть рассчитана для того, чтобы познакомить те...

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

Параметрическая модель гребного винта на OpenSCAD     Т.к. нас всех пересадили на удаленку в связи с ситуацией вокруг COVID-19, появилось много контактов с собственным ребенком.) Приходится даже играть с ним в игрушки. А так как для его мелких игрушек я немного великоват, постоянно что-то ломается в моих руках. Пару дней на...

Пример аутентификации по JWT для CLI приложения Python на Linux Когда речь идёт о хранении sensitive data в браузере, достаточно воспользоваться одним из двух доступных вариантов: cookies или localStorage. Тут каждый выбирает по вкусу. Однако я посветил эту статью Secret Service – службе, которая работает через D-Bus и предназначена для ...

Лайфхаки: как нормально переносить летний зной, укладываться в график и спать в жару Порция лучших советов Лайфхакера для тех, кто ценит своё время.

Мелкая питонячая радость #10: конечные автоматы и глубокое обучение в несколько строк Конечно, самая большая радость этих дней — python 3.9. Но кроме этой радости кто-то должен ворошить github в поисках мелких приятностей, которые несут добро и свет тем, кто пишет на python. Transitions Тем, кому приходилось писать реализацию какого-нибудь сложного информаци...

Intel Tiger Lake вновь подтвердил превосходство над Ryzen 4000 по производительности графики Во второй половине текущего года компания Intel планирует представить мобильные процессоры Tiger Lake, о которых сейчас появляется всё больше слухов и утечек. На этот раз в базе данных теста производительности 3DMark Time Spy обнаружилась запись о тестировании процессора Int...

Функциональный подход к транзакциям на Scala или пишем свою полезную монаду Если вы работаете с одной базой данных которая поддерживает транзакции вы даже не задумываетесь о консистентности — база все делает за вас. Если же у вас несколько баз, распределенная система или даже к примеру MongoDB до 4 версии — все не так радужно. Рассмотрим пример — м...

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

Микросервисы на С++. Выдумка или реальность? В этой статье я расскажу о том, как создал шаблон (cookiecutter) и настроил окружение для написания REST API сервиса на С++ с использованием docker/docker-compose и пакетного менеджера conan. Во время очередного хакатона, в котором я участвовал в качестве бекенд-разработч...

Zabbix 5.0, или Что нового нас ждет с шаблоном Template Server by IPMI Нужно поставить оборудование на мониторинг, а в любимой системе Zabbix нет готового шаблона под этот тип оборудования. Знакомая ситуация? Каждый выкручивается из нее по-своему. Один администратор ищет решение на просторах интернета. Второй — разрабатывает свое. А некоторые...

[Из песочницы] Ты можешь писать безупречные ТЗ, но какой в этом толк, если разработчик твой плачет? В далекой-далекой галактике трудится сферический product owner. Он бегло пишет заметки на салфетке и молча отдает ее разработчикам. А вскоре получает готовый продукт, который на 100% соответствует его ожиданиям. Даже если продукт этот – сложный кроссплатформенный сервис с ...

Можно ли писать скрипты на C++? Недавно пришлось мне опять/снова погрузиться в чудесный мир программирования Linux скриптов. В принципе, дело не очень хитрое, но поскольку мне попадаются такие задачи не часто, то каждый раз изучаю заново. Знаю точно, что завтра многое забуду и через месяц опять буду гугл...

Angular: Интеграционное тестирование (Shallow testing) Когда приложение разрастается или нам очень важно, чтобы оно работало верно при любом рефакторинге, мы начинаем задумываться о unit или e2e тестировании. За несколько лет работы с Angular — приложениями в корпоративном сегменте, поймав множество проблем при рефакторинге ...

Графика Intel Xe DG1 протестирована в SiSoftware: результаты удручают Несмотря на то, что в последнее время количество утечек о грядущих дискретных графических процессорах Intel Xe значительно возросло, информации об их производительности по-прежнему очень мало. Однако новая запись из базы бенчмарка SiSoftware проливает немного света на данный...

Siri Remote против Salt Remote Необычный пульт для Apple TV. С 30 октября 2015 года, когда одновременно с четвертым поколение Apple TV на свет появился пульт дистанционного управления с тач-падом и поддержкой голосового ассистента Siri, и вплоть до сегодняшнего дня, мир делится на три неравные части: на т...

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

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

Раскрыт график выхода игр Capcom до 2025 года Мы уже писали об утечке данных Capcom по поводу Resident Evil: Village. Теперь в Сети появились новые данные, касающиеся графика выходов игр японской студии. Судя по ним, до 2025 года Capcom сосредоточится на...

Шифрование TLS-трафика по алгоритмам ГОСТ-2012 c Stunnel В этой статье я хочу показать, как настроить Stunnel на использование российских криптографических алгоритмов в протоколе TLS. В качестве бонуса покажу, как шифровать TLS-канал, используя алгоритмы ГОСТ, реализованные в криптоядре Рутокен ЭЦП 2.0. Но для начала давайте вооб...

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

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

OctoPrint 1.4.0 - Дуть или не дуть! Делаем слайдер на обдув модели. Доброе время суток, дорогие 3ДэТуДэевцы!      Обновил я тут свой "OctoPrint" на версию 1.4.0. И все бы ничего, но отвалился плагин "OctoPrint-FanSpeedSlider", который позволял управлять скоростью обдува модели от 0 до 100%. И теперь мне доступны только две кнопки: "Fan on" и...

CD Projekt перенесла дату выхода Cyberpunk 2077 Игровая компания CD Projekt объявила, что переносят релиз Cyberpunk 2077 на 17 сентября 2020 года. Со слов компании, проект Cyberpunk 2077 уже готов и можно играть, но разработчикам еще есть над чем работать, так как при каждом тестирования находят мелкие недочеты и баги иг...

Поиск родственников через тест ДНК. Часть 4 – Расшифровка результата Итак, вы определились для чего нам нужен ДНК-тест, выбрали в какой лаборатории будете покупать его, заказали через интернет и дождались получения. Потом вы сделали тест себе или родственникам и отправили тест обратно, перейдя в режим ожидания. И вот спустя несколько недель ...

Leak-Search: как и зачем QIWI создала сервис, который ищет утечки исходных кодов компаний Искать утечки и уязвимости в своих продуктах не только интересно и полезно, но и необходимо. Еще полезнее подключать к таким поискам внешних специалистов и энтузиастов, у которых не настолько замылен глаз, как у сотрудников. Поэтому в свое время мы в QIWI запустили программу...

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

Необязательные параметры в репозиториях Spring Data Все кто использовал Spring Data сталкивались с ситуацией, когда у вас есть репозиторий для работы с сущностью и вы хотите написать универсальный find-метод для поиска по набору параметров, которые пользователь может задать или пропустить на форме поиска. Базовая реализация f...

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

Графический процессор AMD для платформы Samsung обошел по производительности графику в Snapdragon 865 Samsung и AMD заключили партнерское соглашение в середине 2019 года, а первый совместный коммерческий продукт – однокристальная система Samsung со встроенным графическим процессором AMD – появится только в 2021 году. Но уже сейчас источник поделился рез...

Java-дайджест за 28 января Вышел JUnit 5.6. Добавлены any() и none(), чтобы запускать тесты без каких-то дополнительных тэгов, ReflectionSupport.findNestedClasses() может находить циклы в иерархии внутренних классов, TestExecutionSummary.Failure можно сериализовывать, и все в таком духе. Интересно,...

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

[Анонс] Global Game Jam 2020 в конце января Каждый год, в последние выходные января проходит ежегодный Global Game Jam. В этом году мероприятие будет проходить с вечера пятницы (31 января) по вечер воскресенья (2 февраля) и это будут самые жаркие выходные месяца! Global Game Jam — это мероприятие посвященное создан...

[Перевод] Использование Grid для макетов страниц, а Flexbox — для макетов компонентов Мой брат недавно отучился на компьютерщика и сейчас завершает стажировку в области фронтенд-разработки. Он узнал и о CSS Grid, и о CSS Flexbox, но в том, как он пользуется этими механизмами создания макетов, я отметил одну особенность, с которой я уже сталкивался. А именно, ...

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

Samsung отложила релиз Android 10 для некоторых смартфонов Galaxy S9 получит обновление до Android 10, но позже запланированного Обновления Android – вещь настолько непостоянная и необязательная, что, будь она моим сотрудником, я бы её уволил. Несмотря на то что Google разработала совершенно уникальную методику обновления, когда все...

[Перевод] Как выполняются арт-тесты для игр Введение Меня зовут Джонджо Хемменс, я художник по окружениям (Environment Artist) и только начинаю свой путь в индустрии видеоигр. В этой статье я объясню, что такое арт-тесты, покажу примеры успешных тестов с ArtStation, расскажу о правилах и этикете, а также процитирую с...

Искусственный интеллект переписал Библию в алфавитном порядке – результат стал сенсацией Международная команда писателей, программистов и мыслителей Sideline Collective завершила проект «Bible The». При помощи разработанного программного обеспечения они полностью переписали Библию короля Иакова от 1611 года, отсортировав все записанные в ней слова по алфавиту. П...

Timetracker для Youtrack: DIY Есть замечательное приложение T-REC позволяющее трэкать время, потраченное на задачи в Youtrack, и записывающее его в таску. Но автор забросил его больше двух лет назад, плюс старые зависимости, постоянная загрузка одного ядра (тут видимо виноват electron) и периодические па...

Грани честности и Джон Доу Я, где-то с 2005 года, с перерывами, работаю в компаниях, которые решают задачи за деньги. Ну это когда клиент приходит, просит чего-то ему запрограммировать, мы делаем, и он нам платит. Там есть и проекты, но в тексте – только про разовые задачи. Да, это про 1С. Не про каку...

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

Хабр Конвертер: чтобы версталось легко Наверняка многие из вас хотя бы однажды пользовались хабраконвертером, который официально рекомендован администрацией Хабра — https://shirixae.github.io/habraconverter-v2/. Несколько лет назад его создал хабравчанин meta4, а потом доработал Shirixae. Принцип простой: открыва...

Календарь бесплатных IT-событий онлайн с 20 по 26 апреля Верю, что многие уже наладили отношения с удалёнкой и готовы погрузиться в пучину саморазвития. Не скучайте длинными вечерами — ловите свежую подборку онлайн митапов и лекций на всю неделю. Читать дальше →

Мой опыт разработки на языке Nim Привет, Хабр! Уже довольно давно я пишу свой игровой фреймворк — такой pet project для души. А так как для души нужно выбирать что-то, что нравится (а в данном случае — на чём нравится писать), то выбор мой пал на nim. В этой статье я хочу поговорить именно про nim, про его...

Snapdragon 875 настолько крута, что обходит по производительности Kirin 9000 даже при меньшей тактовой частоте процессора На прошлой неделе мы уже писали о впечатляющих результатах теста однокристально платформы Qualcomm Snapdragon 875 в AnTuTu, а сейчас инсайдер из Китая конкретизировал результаты на примере инженерного образца смартфона, построенного на этой SoC. Судя по этим данным, дру...

[recovery mode] История игровой графики: от нескольких лампочек до миллиардов полигонов Современная игровая графика достигла невероятного фотореализма. Если сравнить скриншот из современной игры и реальную фотографию, может возникнуть сомнение, какое изображение настоящее, а какое — компьютерное. И это заслуга не только мощного железа, которое может выдать таку...

Как я перенес dedic.ru на github pages и остался доволен Когда-то давно я достаточно плотно занимался организацией разного рода хостингов. В техническом плане, конечно — настройка серверов, конфигурация панелей управления и прочими сопутствующими штуками. Затем у меня возникла идея записывать разные решения и умные мысли на сайте,...

Tarantool: история ускорения поиска в 1С Недавно у наших добрых друзей из крупной розничной сети возникла задача ускорения поиска в 1С. Во-первых, искать нужно было по клиентам (три справочника, 9 текстовых полей, поиск типа %like%) и всего-то по 2,5 млн записей. Сразу скажем, что полнотекстовый поиск и морфология...

Солнце в коробке «Это мой лучший друг: всегда в хорошем настроении и не задаёт лишних вопросов» — Леон о растении. Не секрет, что зеленые друзья расползлись по подоконникам многих из нас, вот и мне захотелось вырастить у себя что-нибудь. Да не просто «что-нибудь», а что-нибудь плодоносящее...

[Из песочницы] «Корона-триггер»: назревшие изменения в экосистеме образования Пандемия наглядно продемонстрировала, насколько российская система образования не готова к диджитализации. Чтобы осознать это, потребовалось прямо-таки уткнуть себя в негативный опыт. Происходило вот что: уже работавшие онлайн-компании отрасли выросли в 4-5 раз. Прочие офлай...

Как построить “Умный дом" и не сойти с ума Умная мебель, которая сама заботится о порядке в доме, — must-have почти любой футуристической картины. На самом деле саморегулирующееся климат, автоматическое включение и выключение света и голосовое управление бытовой техникой — всё это можно настроить уже сейчас. Но пон...

Кажется, Samsung не понимает, какими должны быть удобные смартфоны Samsung – это та компания, смартфоны которой напоминают мне один сплошной эксперимент. Не проходит и года, чтобы корейцы не придумали что-то такое, от чего у адекватных людей на губах замирает только один вопрос: «Зачем?». Складывается впечатление, что они перебирают всё по...

Проверено 3DMark. Производительность дискретной графики Intel Iris XE Max — на уровне Nvidia GeForce MX450 Первые тесты дискретной графики Intel Iris XE Max появились в Сети еще вчера — практически сразу после ее официального анонса. Сейчас — еще один тест. Но сначала — скриншот GPU-Z. Как видно, утилита правильно распознала GPU, но кое-какие параметры опр...

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

Есть ли в MacBook Pro 13 хоть что-то хорошее? Мне надоело читать обзоры, объявляющие нынешний 13-дюймовый MacBook Pro с двумя Thunderbolt-портами неуклюжим недоразумением, которое во всем уступает дешевому и легкому MacBook Air, и чьё существование в линейке яблочных ноутбуков лишено какого-либо смысла. Главный талант ...

Пишем telegram бота на языке R (часть 1): Создаём бота, и отправляем с его помощью сообщения в telegram Аудитория telegram ежедневно растёт с геометрической прогрессией, этому способствует удобство мессенджера, наличие каналов, чатов, и конечно возможность создавать ботов. Боты могут использоваться в совершенно разных целях, от автоматизации коммуникации с вашими клиентами до...

[Перевод] Как использовать MySQL без пароля (и рисков для безопасности) Говорят, что луший пароль — тот, который не надо запоминать. В случае с MySQL это реально благодаря плагину auth_socket и его версии для MariaDB — unix_socket. Оба эти плагина — вовсе не новы, о них много говорилось в этом же блоге, например в статье о том, как изменять пар...

Видеозапись в облако своими руками Идёте вы, уважаемый читатель, погожим летним вечером по улице, никого не трогаете, и тут… на вас наезжают (тьфу-тьфу-тьфу, как говорится). Хулиганы, просто прохожие, специальные товарищи (как пелось в одной старой песенке) — не столь важно. Вы достаете телефон и начинаете сн...

Вышла стабильная версия EMUI 11 для флагманов Huawei Huawei начали отправку последней версии своей прошивки EMUI под номером 11 – теперь в стабильном состоянии.     Компания Huawei начала отправку стабильной версии EMUI 11 для некоторых своих флагманов, а именно Huawei P40, P40 Pro и Mate 30 Pro. О выходе ново...

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

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

Шлюз для UDP между Wi-Fi и LoRa Делаем шлюз между Wi-Fi и LoRa для UDP У меня была детская мечта — выдать каждому бытовому «безВайФайному» устройству билет в сеть, т. е. IP-адрес и порт. Спустя какое-то время я понял, что не стоит откладывать. Надо взять и сделать. Техническое задание Сделать шлюзом M5Sta...

Как перестать беспокоиться и начать верить A/B-тестам Когда вы разрабатываете продукт, каждая новая итерация — это риск уронить метрики и потерять пользователей. Тем не менее иногда, особенно на начальных этапах, компании неосознанно идут на этот риск — меняют продукт, полагаясь только на свои инстинкты и гипотезы. Мы в Badoo ...

Статическое тестирование безопасности опенсорсными инструментами Уязвимости в своём коде хочется находить как можно быстрее, а значит нужно автоматизировать этот процесс. Как именно автоматизировать поиск уязвимостей? Существует динамическое тестирование безопасности, существует статическое — и у обоих свои преимущества и недостатки. Сег...

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

Обзор Satechi ST-HK10AW-EU. Умная розетка с интеграцией в HomeKit С компонентами умного дома мы знакомились на примерах решений разных производителей, сегодня продолжая тест актуальных решений, в центре внимания будет Satechi ST-HK10AW-EU. Эта умная розетка, ориентирована на использование в рамках экосистемы Apple. Важно отметить, что подд...

Minecraft с трассировкой лучей уже готов – продвинутая графика и самые современные технологии от Nvidia Одна из самых популярных игр получит невероятную графику, Minecraft скоро полностью преобразится

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

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

Sony опубликовала обновленный график выпуска Android 11 для своих смартфонов. В списке всего пять моделей Компания Sony уже публиковала графики выпуска ОС Android 11 для своих моделей, но сейчас представлено скорректированное расписание. Согласно нему, в декабре до Android 11 обновится только Xperia 1 II, хотя в предыдущем графике в этом же месяце ожидалось и обновление для...

Первые тесты 4-ядерного 2,8-ГГц Intel Tiger Lake U — AMD может не беспокоиться Информатор @_rogame опубликовал ряд результатов тестов одного из самых быстрых процессоров Intel Tiger Lake U, который будет работать на частоте 2,8 ГГц. Достаточно ли это того, чтобы преодолеть разрыв с 8-ядерным 16-поточным флагманом AMD Ryzen 7 4800U? Согласно тестам, это...

Бюджетный DI на антипаттернах Согласитесь, приятно бывает после утомительного трудового дня отточенным движением руки решительно закрыть рабочий workspace в Xcode, чтобы, облегченно вздохнув, открыть другой workspace — со своим домашним проектом. А если сегодня еще и пятница, то можно позволить себе нем...

[Из песочницы] Как работают реляционные базы данных (Часть 1) Привет, Хабр! Представляю вашему вниманию перевод статьи "How does a relational database work". Когда дело доходит до реляционных баз данных я не могу не думать, что чего-то не хватает. Они используются везде. Существует множество различных баз данных: от небольшог...

АДСМ3. IPAM/DCIM-системы В предыдущих сериях АДСМ мы выработали фреймворк автоматизации, разобрались с тем, зачем появилась виртуализация и как она работает. В последней части мы выбрали и обосновали дизайн сети, роли устройств, производителей, определились с LLD (адресацией, маршрутизацией, номерам...

Большое красно-синее надувательство Когда идёшь по улице и обращаешь внимание на окна домов, во многих из них можно заметить характерный розовый свет — народ выращивает рассаду под фитолампами. Читатель прислал на тест огромную фитолампу, на которой было написано «60W». Я её протестировал и удивился. Читат...

Big Data Tools EAP 11: Zeppelin в DataGrip и spark-submit во всех поддерживаемых IDE Только что вышло очередное обновление EAP 11 для плагина под названием Big Data Tools, доступного для установки в IntelliJ IDEA Ultimate, PyCharm, and DataGrip. Можно установить его через страницу плагина на сайте или внутри IDE. Big Data Tools — это плагин, позволяющий соед...

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

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

[Из песочницы] Laravel+Docker+Gitlab. С чего начать Я обычно всегда обходился без докера и думал, что докер нужен только для больших проектов в больших компаниях. Но однажды я увидел как работает докер в паре с гитлабом у моего товарища и понял, что мне все таки стоит его изучить. Однако, как обычно это бывает, одной подходящ...

Онлайн-курс Теплицы: как подключить плагин «Лейка» и начать собирать деньги Плагин для WordPress «Лейка» – одна из главных и наиболее известных разработок Теплицы социальных технологий. С помощью «Лейки» можно собирать пожертвования на вашем сайте через множество платежных систем, управлять платежами, работать с донорами, аналитикой и получать дета...

Процессоры Intel Rocket Lake-S не смогут тягаться с Ryzen 5000 Нынешние процессоры Intel для настольных компьютеров (Comet Lake-S) не убеждают своей производительностью относительно Ryzen 5000. Например, флагманский 10-ядерный Core i9-10900K уступает 12-ядерному Ryzen 9 5900X при более высокой тактовой частоте. Но, судя по данным, ...

Какими будут новые MacBook Pro и MacBook Air? Как они будут выглядеть, будет ли в них использована “правильная” клавиатура, будет ли 13-дюймовый MacBook Pro 14-дюймовым – увы. Точной информации пока нет, как и о том, когда они будут объявлены. Зато в Твиттере опубликовано сравнение результатов тестов топовых конфигурац...

Siri на HomePod справилась с командами хуже, чем Alexa и Google Assistant Так как HomePod теперь доступна для всех желающих, ее подвергают различным тестам. В частности, исследовательская фирма Loup Ventures протестировала умную колонку Apple и опубликовала результаты тестов, сравнив их с результатами тестов умных колонок других производителей. Lo...

Свежие результаты тестов Radeon RX 6000, GeForce RTX 3090, 3080 и 2080 Ti на сводном графике Новинки от AMD опережают своих конкуренток.

Intel Iris Xe MAX протестирован в 3DMark Time Spy и Fire Strike Сегодня появился результат первых тестов дискретной графики Intel Iris Xe MAX в 3DMark Time Spy и Fire Strike

APU AMD Renoir получит 8 вычислительных блоков Известный инсайдер @TUM_APISAK опубликовал скриншот из базы SiSoftware, на котором отображены характеристики графики APU Renoir.

Подборка занимательных статистических фактов #3 Подборка графиков и результатов различных исследований c короткими аннотациями от автора Телеграм канала Groks. Только одна компания среди крупнейших дебютантов на бирже в этом году прибыльная. Котировки 10 из 14 технологических компаний, совершивших IPO в 2019 году, упал...

Вместо 100 запусков приложения ― один автотест, или как сэкономить QA-инженеру 20 лет жизни Всем привет, меня зовут Евгений Демиденко. Последние несколько лет я занимаюсь разработкой автоматизированной системы тестирования игр в Pixonic. Сегодня я хотел поделиться нашим опытом разработки, поддержки и использования такой системы на проекте War Robots. Для начала ра...

DOOM Watch на ESP32. Часть 1 Попробовав разработку с готовыми модулями ESP32 захотелось сделать что-то маленькое и нативное. Решил сделать часы. Сначала подумал о ESP32-PICO-D4. Поскольку в ней только 4Mb flash под программу, решил сделать полноценную версию с расширением да 16Mb flash и 8Mb SRAM. Что б...

[Из песочницы] Golang + Phaser3 = MMORPG — Делаем базу для бесконечной генерации мира На русскоязычных ресурсах трудно найти подходящую информацию, возможно этот материал позволит вам понять некоторые основы для создания многопользовательских игр и не только. Я планирую сделать серию статей по созданию 2.5D MMORPG, то бишь в изометрии, наш мир будет разделе...

Фотополимерник: 100мм/час Хотел поделиться личным опытом скоростной печати. Те самые 100 мм в час.Часто не нужно космического качества, нужно красиво и быстро. Вырастить модель на всю высоту поля печати за час... Пока не очень доступно. Но с появлением монохромных экранов - вполне близкая перспектива...

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

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

Burp и его друзья В этой статье мы расскажем о полезных плагинах для Burp Suite Professional — инструмента для анализа веб-приложений. Плагинов много, и, чтобы помочь аудиторам сделать правильный выбор, мы составили список тех, которые сами чаще всего используем в работе. Читать дальше &rar...

[recovery mode] Коронавирус: опасная иллюзия неопасности Развитые страны прошли пик смертей, можно понемногу расслабляться? Увы, два долгожданных и три недавних результата делают картину мрачнее. Что показывают свежие исследования на антитела, подсчёт отбираемых вирусом лет жизни и "потерянных" статистикой смертей, анали...

[recovery mode] … и одно ядро для всех. Посвящается всем выжившим Доброго, Хабр! По примеру других обладателей и любителей ретротехники, я решил обозреть недавнее обретение: ноутбук Sony VAIO PCG-V505EX, aka PCG-6B1L. Модель выпущена в настолько далёком 200? году, что можно только гадать по внутренностям птиц. BIOS отдаёт 2003 год, VideoB...

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

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

[Перевод] Рендеринг в 3D-играх: введение Вы играете в свежую Call of Mario: Deathduty Battleyard на своём совершенном игровом ПК. Смотрите на прекрасный сверширокий 4K-монитор, любуясь великолепными пейзажами и замысловатыми деталями. Вас когда-нибудь интересовало, как графика попадает на экран? Задумывались, как ...

«Я — первый слепой разработчик в своей компании». Часть 1 То, что я не вижу, стало ясно в первые месяцы после рождения. Сколько родители ни пытались, зрение восстановить не удалось. С четырёх лет я учился читать и писать по Брайлю. Мне невероятно повезло с людьми вокруг. У меня были хорошие учителя, была музыкальная школа, где я ...

Я сомневался в юнит-тестах, но… Когда я пишу тест, то часто не уверен, что мой дизайн будет на 100% удачным. И хочу, чтобы он давал гибкость в рефакторинге кода — например, чтобы затем изменить класс, не меняя код теста. Но если у меня стандартная пирамида, внизу которой много юнит-тестов, то не получи...

[Из песочницы] Авторизация пользователя при помощи Starlette + Vue.js Вступление Задача — создать пример авторизации пользователя с использованием фреймворков Starlette (https://www.starlette.io/) и Vue.js *, который был бы максимально комфортным разработчикам Django для «миграции» в асинхронный стек. Почему Starlette? В первую очередь скор...

Истории аварий с Patroni, или Как уронить PostgreSQL-кластер В PostgreSQL нет High Availability из коробки. Чтобы добиться HA, нужно что-то поставить, настроить — приложить усилия. Есть несколько инструментов, которые помогут повысить доступность PostgreSQL, и один из них — Patroni. На первый взгляд, поставив Patroni в тестовой среде...

[Из песочницы] Запись звука JS c микрофона или голосовые комментарии Запись звука JS c микрофона или голосовые комментарии Не давно, при разработке одного корпоративного веб-приложения, заказчик пожелал иметь возможность оставлять голосовые комментарии. Ранее мне не приходил сталкиваться с созданием медиаконтента и я с интересом приступил к и...

Создайте ваш первый тест на Cypress Всем привет! Меня зовут Роман Мостафин. Я тестировщик-автоматизатор в компании Clover, и обычно пишу автотесты на pytest + selenium. Недавно для написания тестов на UI на проекте «Умный Локомотив» для автоматизации регрессионного тестирования наша команда фронтенд-разработчи...

Когда принцип «к чёрту всё, бери и делай!» не работает: заметки прокрастинатора Осторожно, этот текст написан настоящим прокрастинатором. Желание написать статью на тему борьбы с прокрастинацией появилось у меня летом 2019 года, приступила к работе в ноябре и думала, что выпущу статью к концу декабря — как раз когда все подводят итоги и планируют начать...

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

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

Настольные процессоры Ryzen 4000-й полностью готовы к массовому производству Отличная информация, которая позволяет надеяться, что продажи начнутся точно по графику

Пошаговый шутер PROJECT Anomaly доступен в Google Play Студия A2Source выпустил свой новый проект — пошаговый шутер PROJECT Anomaly, на Android. Разработчики обещают уникальный подход к тактическому симулятору наёмников: планируйте свои действия, сражайтесь на разных локациях, зарабатывайте деньги и опыт, а вместе с ними и репут...

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

Дорогой DELETE. Николай Самохвалов (Postgres.ai) Когда-нибудь в далёком будущем автоматическое удаление ненужных данных будет одной из важных задач СУБД [1]. Пока же нам самим нужно заботиться об удалении или перемещении ненужных данных на менее дорогие системы хранения. Допустим, вы решили удалить несколько миллионов стр...

Разоблачаем блогеров, публикующих фейковые и недостоверные тесты комплектующих на Youtube На youtube развелось огромное количество сомнительных личностей, которые не имея на руках реального железа рисуют графики и выдают за результаты тестов случайные цифры, взятые с потолка. Изучаем шарлатанов NJ Tech, TheSpyHood, Benchmark PC Tech и Benchmark Comparison.

Huawei MateBook 14 официально представлен Достаточно длительное время в сети ходили слухи о том, что компания Huawei вроде как думает над тем, чтобы отправить в релиз свой новый ноутбук. Однако вскоре оказалось, что компания его уже разработала и произвела — Huawei MateBook 14 официально представили, у него ценник в...

Property-based тестирование для JavaScript и UI: необычный подход к автоматизированным тестам Falcon Heavy Demo Mission Писать тесты скучно. А то, что скучно делать, постоянно откладывается. Меня зовут Назим Гафаров, я разработчик интерфейсов в Mail.ru Cloud Solutions, и в этой статье покажу вам другой, немного странный подход к автоматизированному тестированию. Чи...

Делимся самым большим в РФ пластом данных по онлайн-обучению с проектами по лингвистике, персонализации, педдизайну, ML Перед Новым годом команда Михаила Sverdlove Свердлова объявила, что готова делиться обезличенными данными уроков Skyeng с внешними исследователями и стартапами. Вскоре после праздников мы поговорили с Мишей, о каких именно данных идет речь, что уже с ними делают и почему пол...

Слухи: известна цена Xbox Series S и дата релиза новых приставок от Microsoft Иногда хочется узнать какую-то тайну раньше официального анонса. Если вы порой испытываете подобную «жажду», то мы готовы её утолить свежими слухами о приставках нового поколения от Microsoft, а именно — Xbox Series X/S. Большая часть новости будет посвящена именно удешевлён...

Модерация изображений: уроки этикета от Data Scientist’a, часть 2 Привет, Хабр! Мы продолжаем серию статей про модерацию контента на площадках Центра Развития Финансовых Технологий Россельхозбанка. В прошлой статье мы рассказывали, как решали задачу модерации текста для одной из площадок экосистемы для фермеров “Свое Фермерство”. Почитать...

Google Assistant поможет трекеру Tile искать потерянные вещи Голосовой помощник Google Assistant объединился с Bluetooth-трекером Tile, чтобы еще быстрее находить вещи лежащие не на своих местах. Теперь можно попросить свою умную колонку «позвонить» потерянному предмету. Раньше вам приходилось говорить «ОК, Google, попроси Tile н...

CreateRemoteThread для Linux В WinAPI есть функция CreateRemoteThread, позволяющая запустить новый поток в адресном пространстве другого процесса. Её можно использовать для разнообразных DLL-инъекций как с нехорошими целями (читы в играх, кража паролей, и т. д.), так и для того, чтобы на лету исправить ...

Zabbix: мониторим всё подряд (на примере Redis'а) Zabbix — замечательный продукт для администраторов крупных программно-аппаратных комплексов. Он настолько хорош, что может использоваться не только крупным бизнесом, но и средне-малым бизнесом, и даже в pet-проекте. В общем, у меня есть небольшой опыт работы с Zabbix'ом и я ...

Аутенти(фи?)кация Некоторые термины, заимствуемые из английского, входят в русский язык с нарушением всех языковых правил. Характерный пример из 90-х — слово флуд, непохожее ни на транскрипцию [flʌd], ни на транслитерацию flood. Более свежий пример — биткоин: окончание -оин характерно для хим...

Openwrt сниффер витой пары Всем доброго времени суток, моя не большая история началась с того как мы с другом спорили о стандартах 10BASE-T и 100BASE-T о полных и халф-дуплексах в итоге решил на примере готового устройства показать ему что слушать с пар можно. Прочитав статью взял свой старенький TP-...

Магическая шаблонизация для Android-проектов Начиная с Android Studio 4.1, Google прекратил поддержку кастомных FreeMarker-ных шаблонов. Теперь вы не можете просто взять и написать свои ftl-файлы и сложить их в определённую папку, чтобы Android Studio самостоятельно добавила их в меню New → Other. В качестве альтернат...

Тест UserBenchmark так активно завышал показатели CPU Intel, что его забанили на основных компьютерных ветках Reddit Те, кто давно и внимательно следит за рынком компьютерного «железа», прекрасно знают, что по тем или иным не всем бенчмаркам, тестам и ресурсам можно верить, когда речь идёт о тестировании процессоров или видеокарт. И хотя в последнее время каких-то совсем у...

[Перевод] Анализ графики Red Dead Redemption 2 Одна из моих любимейших игр, Red Dead Redemption, в 2018 году вернулась с приквелом для консолей. В 2019 году её выпустили для PC, и мне наконец удалось поиграть в неё; меня сразу же поразила её графика. Однако я расстроился: мне едва удавалось играть при средних настройках ...

Тестирование виртуальных серверов от DigitalOcean, Vultr, Linode и Hetzner. Человеческие жертвы: 0.0 В одной из предыдущих статей я привел результаты тестирования дешевых виртуальных серверов от различных хостеров рунета. Спасибо всем комментаторам и людям, писавшим в личные сообщения, за обратную связь. В этот раз я хочу представить результаты тестирования виртуальных сер...

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

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

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

[Перевод] Хватит импортировать JavaScript-пакеты целиком Часто ли вам доводилось импортировать в проект целый JavaScript-пакет, когда нужно было воспользоваться лишь очень немногими возможностями этого пакета? Вероятно, вы сможете вспомнить много таких случаев. Ярким примером пакета, который импортируют целиком, нуждаясь лишь в н...

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

[Перевод] Трассировка лучей в реальном времени в 1 КБ кода Долгий путь к рождению Chrome Revenge PENTRACE Всё началось в 1994 году, когда я прочитал в Dr. Dobbs Journal несколько интересных статей о FPU (математическом сопроцессоре) нового процессора Pentium. Я пришёл к пониманию того, что численная производительность Pentium очень...

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

Часы на адресной ленте WS2812b с синхронизацией по WiFi. Давно хотел завести дома большие часы, так как зрение не очень хорошее. Обязательных условий было всего два: я без очков должен с большого расстояния видеть цифры и должна автоматически регулироваться яркость (чтобы ночью эти часы не превращались в люстру).Ни на одном сайте ...

Big Data Tools EAP 10: SSH-туннели, фильтрация приложений, пользовательские модули и многое другое Только что вышла очередная версия плагина Big Data Tools — плагина для IntelliJ IDEA Ultimate, DataGrip и PyCharm, который обеспечивает интеграцию с Hadoop и Spark, позволяет редактировать и запускать интерактивные блокноты в Zeppelin. Основная задача этого релиза — поправит...

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

Книга «Гарвардский Некромант» Привет, Хаброжители! «Гарвардский некромант» рассказывает о том, как вели бы себя ученые, если бы магия реально существовала. Это научная фантастика с акцентом на первом слове. Автор пишет как о реальных, так и о вымышленных научных исследованиях, — но вымышленные описывае...

Тест пластика от u3print. Здравствуйте, уважаемые читатели 3D Today. Данная статья, как вы уже поняли из названия, посвящена пластику для 3D принтеров под брендом u3print. Данный пластик мы купили два года назад, когда открывали наш Центр Прототипирования. Было закуплено около 100 катушек филамента р...

Как писать книгу в LaTeXe по физике. Cтатья 1 Это моя первая статья на Хабре. Глава 1. Введение 1.1 Позвольте представиться и почему я это пишу    Я — научный сотрудник, физик. Недавно выпустил книгу по спектроскопии объемом 880 страниц и весом 1560 грамм. Эту книгу я писал 9 лет, параллельно читая лекции по...

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

Автоматизация задач администрирования API VMware vSphere с использованием Ansible В предыдущей статье мы рассмотрели взаимодействие с VMware с помощью Python. В этой же обсудим взаимодействие с VMware с помощью Ansible. Ansible — система управления конфигурациями, написанная на языке программирования Python с использованием декларативного языка разметки ...

Светильник управляемый жестами на Arduino Всем привет!!! Я рад, что снова могу показать Вам свою новую поделку. На этот раз я собрал светильник на ардуино управляемый жестами. Данный проект отнял у меня очень много времени, которого у меня и так всегда не хватает. Первый вариант светильника я собрал очень быстро и...

Смартфонов на Android стало слишком много. Не так ли? Смартфонов стало уже некуда девать. Вам не кажется? Выбор – это всегда здорово. С тех пор, как появилось понятие субфлагманов, а недорогие смартфоны стали делиться на среднебюджетные, бюджетные и ультрабюджетные, жить стало гораздо интереснее. Теперь у потребителей появилась...

[Перевод] Что делать, когда CSS блокирует парсинг страницы? Недавно я проводил аудит одного сайта и наткнулся на паттерн preload/polyfill, который уже видел у нескольких клиентов. В наши дни использование этого паттерна, ранее популярного, не рекомендуется. Однако его полезно рассмотреть для того, чтобы проиллюстрировать важность ост...

Пишем веб сервис на Python с помощью FastAPI Знаю, знаю, наверное вы сейчас думаете «что опять?!». Да, на хабре уже неоднократно писали о фреймворке FastAPI. Но я предлагаю рассмотреть этот инструмент немного подробнее и написать API своего собственного мини Хабра без кармы и рейтингов, зато с блэкджеком и с тестами,...

Huawei Mate 40 Pro обошел по производительности Samsung Galaxy Note20 Ultra, Xiaomi Mi 10 Ultra, OnePlus 8 Pro и других флагманов После анонса смартфонов Mate 40 Pro в Сети очень быстро появились и первые тесты производительности. Судя по ним, однокристальная платформа Kirin 9000, на базе которой и построен смартфон, получилась очень удачной: Mate 40 Pro обошел всех нынешних флагманов на Snapdrago...

[recovery mode] PM2: подходим к вопросу процесс-менеджмента с умом Буквально пару часов назад у меня завязался спор на тему того, что Node.JS слишком медленная для крупных проектов и ей стоит предпочесть Golang, Rust, PHP, etc. Основным аргументом противоположной стороны в этом споре был факт однопоточности JavaScript. Якобы при разработке ...

Решения для умного дома от TP-Link Компания TP-Link представила устройства для построения системы «умного дома» TAPO, идеально подходящие для выполнения широкого круга задач в быту. Бренд TAPO был создан специально для всех поклонников беспроводных технологий и интернета вещей. В новую линейку этого бренда в...

Борьба за производительность по-настоящему больших форм на React На одном из проектов мы столкнулись с формами из нескольких десятков блоков, которые зависят друг от друга. Как обычно, мы не можем рассказать о задаче в деталях из-за NDA, но попробуем описать свой опыт “укрощения” производительности этих форм на абстрактном (даже немного н...

Я 20 лет наслаждаюсь разнообразием архитектур и хочу поделиться мыслями Сначала хотел написать комментарий к статье "Я десять лет страдал от ужасных архитектур в C#...", но понял две вещи: Слишком много мыслей, которыми хочется поделиться. Для такого объёма формат комментария неудобен ни для написания, ни для прочтения. Давно читаю...

Документирование микросервисов в LeanIX (EAM) Расскажу о нашем опыте автоматического документирования 150+ микросервисов в системе LeanIX Enterprise Architecture Managment. Многое получилось, как мы и хотели, для чего-то пришлось делать специальные доработки, часть вопросов не смогли решить. Но в любом случае мы получи...

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

[Из песочницы] Typescript Compiler API: возьми управление компилятором в свои руки В разработке приложений на Typescript всегда есть этап сборки проекта. Обычно для этого используются системы сборки и автоматизации workflow, такие как webpack или gulp, обвешанные достаточным количеством плагинов, либо процесс сборки размазывается в командах package.json ...

Визуализация данных при отладке в Visual Studio Code Вообще Debugger Visualizers для обычного Visual Studio — это очень старая тема (статья 2009 года), но не очень популярная. В большинстве случаев принято учить сразу дебажить, представляя процессы в голове, а штуки вроде сортировок и списков показываются на доске. В вебе ча...

Юристы менеджерам в ИТ: советы при заключении сделок и оформлении контрактов (переписка, работа без договора, NDA) Железный юрист Redmadrobot Марина Бутурлина рассказала про ситуацию, когда клиент готов заказать работы, а с подписанием договора всё сложно и постоянно откладывается. Если вам хочется понять, как действовать, чтобы ничего не упустить, но вы не юрист, то эти советы для вас...

Увидим ли мы когда-нибудь GTA 4 на Android? Когда GTA 4 появится на Android? GTA 4 была выпущена в далеком 2008 году. И я четко помню времена, когда все подростки — включая меня — в те времена проводили часами за данной игрой. Сегодня для многих GTA 5 и Fortnite являются современными и интересными. Игрокам...

Xiaomi Mi 10 Ultra «засветился» в GeekBench с 16 Гбайт ОЗУ незадолго до анонса Остаётся совсем немного времени до официальной презентации флагманского смартфона Xiaomi Mi 10 Ultra: аппарат дебютирует уже завтра, 11 августа. Между тем новинка прошла тест в популярном бенчмарке GeekBench, который говорит об очень высокой производительности. Устройство им...

[recovery mode] Как я искал работу в Берлине Обычно рассказывают про уже свершившиеся истории о том как кто-то уже нашел работу и переехал. Я все еще в процессе, так что расскажу с чем сталкивался и к каким выводам пришел. Советы будут в самом конце.В Германии ситуация на рынке труда для программистов, как и для всех о...

[Перевод] Пишем движок полнотекстового поиска на Go Полнотекстовый поиск — один из тех инструментов, которые мы используем практически каждый день, когда ищем какую-то информацию в интернете. Full-Text Search (FTS) — это метод поиска текста в коллекции документов. Документ может ссылаться на веб-страницу, газетную статью, соо...

Корпус для NVMe-накопителей формата M.2 2280 на Realtek RTL9210: еще один мост PCIe—USB и его использование для самостоятельной сборки быстрого внешнего SSD Если нужен емкий и быстрый внешний накопитель, то SATA-накопителей уже недостаточно для того, чтобы полностью реализовать скоростные возможности USB3, не говоря уже о грядущем USB4. Готовые решения с NVMe SSD по многим параметрам не являются оптимальным выбором, так что разу...

[Из песочницы] Как подключить АЦП HX711 к NRF52832 1. Введение На повестке дня стояла задача разработать протокол общения микроконтролера nrf52832 с двумя полумостовыми китайскими тензодатчиками. Задача оказалась не простой, так как столкнулся с отсутствием какой — либо внятной информации. Вероятнее, что «корень зла» нахо...

Поможем бороться с пандемией: запускаем движение #3Dврачам Дорогие друзья!Видя, как 3D-печатники, мейкеры и просто неравнодушные люди в России подключаются к решению проблем врачей, мы решили создать один из централизованных и организованных ресурсов для помощи врачам. На текущий момент к инициативе подключились компании 3DToday, CM...

Тест «консоли Xbox One», превращённой в ПК. На что способен Chuwi AeroBox с APU A9-9820 На днях мы говорили о том, что на Aliexpress появилась системная плата AMD A9-9820 Motherboard CPU Combo с гибридным процессором A9-9820, который, судя по всему, технически является копией APU, установленного в Xbox One. Тогда же мы упоминали, что ранее на этом APU был ...

[Перевод] Почему Discord переходит с Go на Rust Rust становится первоклассным языком в самых разных областях. Мы в Discord успешно используем его и на серверной, и на клиентской стороне. Например, на стороне клиента в конвейере кодирования видео для Go Live, а на стороне сервера для функций Elixir NIF (Native Implemente...

[Перевод] JavaScript и TypeScript: 11 компактных конструкций, о которых стоит знать Существует очень тонкая грань между чистым, эффективным кодом и кодом, который может понять только его автор. А хуже всего то, что чётко определить эту грань невозможно. Некоторые программисты в её поисках готовы зайти гораздо дальше других. Поэтому, если нужно сделать некий...

Как мы сделали графику World of Tanks Blitz реалистичнее, и какие мобильные устройства её «тянут» Уже совсем скоро, 26 июня, мобильный танковый шутер World of Tanks Blitz отметит свой день рождения. В честь этого мы выпустили юбилейное обновление 7.0, в котором значительно «прокачали» графику. В «седьмом» обновлении мы сделали семь значительных апгрейдов графики — о них ...

Основы deep learning на примере дебага автоэнкодера, часть №1 Если почитать обучение по автоэнкодерам на сайте keras.io, то один из первых посылов там звучит примерно так: на практике автоэнкодеры почти никогда не используются, но про них часто рассказывают в обучалках и народу заходит, поэтому мы решили написать свою обучалку про них:...

Тест-драйв ноутбука HP EliteBook x360 830 G7 Ритейлеры сообщают, что уже не первый месяц, пока мир находится в околокарантинном состоянии, по крайней мере в России растут продажи ПК и ноутбуков. На полках магазинов огромное количество предложений, часть из которых точно не назвать дешёвыми. Потому, если вы ищете что-...

Модель «Хищник-жертва» на Node.js Недавно по сети прошел всплеск упоминаний игры Жизнь, в связи в основном с тем, что умер ее создатель. Время сейчас такое, все стали интересоваться биологией, везде эти графики выживания, ну и у меня из закромов памяти вдруг выбралась интересная модель, по которой когда-то ...

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

[Перевод] API как продукт: как монетизировать свою работу, когда разбираешься только в бэкенде В этой статье я перескажу свой опыт создания, развёртывания и продажи API на специализированном маркетплейсе. Мне не пришлось делать вебсайт или придумывать, как внедрить решение для обработки платежей – я просто написал код и развернул API. Чтобы создать стартап, нужна к...

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

[Из песочницы] Как верстать веб-интерфейсы быстро, качественно и интересно Всем привет! Давно хотел и наконец написал небольшую книжку — бодрое пособие по своей профессиональной области: актуальным подходам к разметке интерфейсов, экранному дизайну и доступности. Она о моем оригинальном подходе к созданию GUI, препроцессорам CSS (для объективност...

[Из песочницы] Учимся торговать на бирже. Часть первая: настройка тестового окружения В этом цикле статей создадим окружение для работы с тестовой биржей и обмена сообщениями с ней, разберёмся с основными биржевыми терминами и закрепим знания на практике. UPD: Основная цель этого цикла статей — комплексно рассмотреть устройство биржи и базовые понятия (сделк...

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

Домашний кластер на Dask Я недавно проводил исследование, в рамках которого было необходимо обработать несколько сотен тысяч наборов входных данных. Для каждого набора — провести некоторые расчеты, результаты всех расчетов собрать вместе и выбрать "лучший" по некоторым критериям. По сути ...

[Из песочницы] Введение в ASGI: становление асинхронной веб-экосистемы Python Привет, Хабр! Представляю вашему вниманию перевод статьи "Introduction to ASGI: Emergence of an Async Python Web Ecosystem" автора Florimond Manca. "Черепахи рядом с водоемом", Ricard Baraham на unsplash.com Python не замыкается только на Data Science, в...

AMD Navi 2X: эталонных видеокарт с тангенциальным вентилятором не будет В презентации Лизы Су (Lisa Su) был обнаружен слайд с эскизом системы охлаждения новой видеокарты с двумя вентиляторами. Представители компании пояснили, что эталонных видеокарт с единственным вентилятором тангенциального типа в новом поколении не будет. Источник изображения...

MacBook Air (Early 2020): обновленный ультрапортативный ноутбук Apple Новый MacBook Air стал действительно шустрее, что особенно хорошо проявляется в тех задачах, которые полноценно задействуют все ядра процессора. В целом же надо понимать одну вещь: MacBook Air, несмотря на все усовершенствования, это все-таки не про скорость, а про другое — ...

Тестирование AMD Ryzen 5 PRO 3500U и Vega 8 на примере Lenovo ThinkPad T495. Игры и не только Для начала – очевидное. Хотите полноценный обзор ноутбука Lenovo ThinkPad T495, с детальным описанием каждого из аспектов устройства? Ссылку предоставляю. Конкретно в этом материале я постараюсь проанализировать производительность аппаратной платформы. А именно –...

[Перевод] Напишем и поймем Decision Tree на Python с нуля! Часть 1. Краткий обзор Привет, Хабр! Представляю вашему вниманию перевод статьи "Pythonで0からディシジョンツリーを作って理解する (1. 概要編)". 1.1 Что такое Decision Tree? 1.1.1 Пример Decision Tree Например, у нас есть следующий набор данных (дата сет): погода, температура, влажность, ветер, игра в гольф. В ...

Подвесные ячейки в спиральном режиме с перегородками Сделал себе кассетницу новую для мелких радиодеталей. Но не простую, а подвесную! На высокой полке верхняя часть пустует, решил сделать выдвижные ячейки под ZIP пакетики размером 60x40. Ячейки с перегородками, печатаются в спиральном режиме (в режиме вазы). Старые “кассетниц...

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

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

Как пытаются нажиться на фанатах игры Fortnite Fortnite из App Store удалили, но можно купить iPhone с ней «всего» за $10 000   Одной из центральных тем прошлой недели стал демарш Epic Games против Apple и Google. Разработчик игр решил обойти написанные компаниями правила для контента в App Store и Googl...

Управляя Github-ом: через Terraform к самописному решению на Ansible У нас 350+ человек и 400+ репозиториев на Github-е. В каждой репе может быть несколько админов, и они творят, что считают нужным, — естественно, случается так, что один человек не знает, что делает другой. Когда нам в инфре надоело смотреть на мучения других и добавлять/удал...

Снятся ли роботам психотерапевты Допустим, у вас есть жена или муж, и вы переспали с роботом. Это измена или мастурбация? Я писатель-фантаст и в последнее время меня занимают такие темы. Наверное, подумали вы, со мной что-то нехорошее произошло, раз я за такое взялся. И вы совершенно правы. Что будет, есл...

Cравнение Kirin 820 5G и Snapdragon 765G показывает превосходство чипа Huawei В конце марта Huawei представила новую однокристальную систему среднего уровня с поддержкой 5G — Kirin 820, которая легла в основу нового Honor 30S. Ещё накануне его запуска стало ясно, что по производительности он обойдёт Snapdragon 765G. Но остановимся на отличиях подробне...

[Перевод] Регрессионная спираль смерти Перевод статьи подготовлен в преддверии старта курса «Автоматизация тестирования на JavaScript» История, которая может показаться вам до боли знакомой: Вы работаете QA в небольшой команде разработчиков; сегодня утро четверга второй недели вашего двухнедельного спринта. У ва...

[Перевод] Создание CI/CD-цепочки и автоматизация работы с Docker Я написала мои первые сайты в конце 90-х. Тогда приводить их в рабочее состояние было очень просто. Был Apache-сервер на каком-нибудь общем хостинге, на этот сервер можно было войти по FTP, написав в браузерной строке нечто вроде ftp://ftp.example.com. Потом надо было ввести...

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

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

Opium.Fill — цветовая схема глазами программиста Привет. Сегодня покажу вам цветовую схему, которой пользуюсь последние 2 года. Она была придумана, чтобы на проблемном проекте избавиться от огромного количества переменных в CSS. А потом оказалось, что эти принципы можно применить почти к любому проекту. В общем, попробу...

Web Storage API: примеры использования Доброго времени суток, друзья! В данной статье мы рассмотрим парочку примеров использования Web Storage API или объекта «Storage». Что конкретно мы будем делать? Научимся запоминать время воспроизведения видео. Поработаем с формой входа на страницу. Напишем логику спис...

Реализация эффекта газетной фотографии на примере Quake Около двух лет назад вышла игра Return of the Obra Dinn за авторством Лукаса Поупа. В ней была весьма интересная стилизация графики трёхмерного мира под графику старых монохромных компьютеров. На Хабре даже выходил перевод поста автора данной игры, где он описывает, как р...

[Из песочницы] Пишем спецификацию под Nvidia Kepler (бинарники CUDA, версия языка sm_30) для Ghidra Для обычных процессорных языков уже написано довольно много спецификаций для Ghidra, однако для графических ничего нет. Оно и понятно, ведь там своя специфика: предикаты, константы, через которые передаются параметры в том числе, и другие вещи, унаследованные от шейдеров. Кр...

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

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

Iridium готов заплатить, чтобы убрать с орбиты вышедшие из строя спутники Глобальный оператор спутниковой связи Iridium Communications завершил 28 декабря утилизацию последнего из своих 65 устаревших спутников. Вместе с тем на орбите по-прежнему остаётся ещё 30 его бездействующих спутников, превратившихся в обычный космический мусор, с которыми то...

[Перевод] Плитки Вана для симуляции машин Тьюринга Плитки (домино) Вана были изобретены Хао Ваном в 1961 году для математических задач, но нашли широкое применение в играх при создании тайловой графики. Благодаря им результаты не выглядят повторяющимися, как в 2D-текстурах, так и в 3D-моделях с тайлингом. Похоже, что плитки...

[Из песочницы] Home видео для Selenium aka WebDriver. Или чем записать экран, если у вас есть java, поломанные тесты и немного времени Решили мы на работе автоматизировать тесты для нескольких своих веб приложений. И кроме информации, когда упали тесты, захотелось еще и увидеть, как выглядела страница на этот печальный момент. Я уже давно не брал в руки шашки и Selenium, поэтому пришлось немного покопатьс...

Как же, черт возьми, отсортировать этот список? Пусть у нас есть список — содержимое каталога, в котором элементами являются экземпляры классов File и Folder. Задача — отсортировать этот список. Есть два широко известных варианта сортировки структуры каталога — когда сначала идут каталоги, а потом файлы, и когда файлы и к...

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

Распределенные транзакции для разнородных баз данных в MS .NET Недавно, на одном интервью меня спросили, а работал ли я с распределенными транзакциями, в том смысле, что нужно было делать вставку/обновление таких записей при условии: Одной транзакции. Это могут быть несколько разнообразных баз данных таких как Oracle, MS SQL Server и ...

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

Шесть рецептов для начинающего тимлида: как всё успевать и развивать команду Привет! Меня зовут Дмитрий Ли, я тимлид одной из команд разработки бэкенда в Badoo. Когда я впервые стал тимлидом, я стал активно посещать конференции и читать умные книги об управлении командой. Однако в моей работе после этого менялось немногое. Я читал о том, каким я д...

Когда пандемия пойдёт на спад? Оцениваем на Python с помощью Pandas Всем привет. Видел несколько дашбордов по COVID-19, но не нашёл пока главного — прогноза времени спада эпидемии. Поэтому написал небольшой скрипт на Python. Он забирает данные из таблиц ВОЗ на Github'е, раскладывает по странам, строит линии тренда. И по ним делает прогноз...

Где теперь брать графику для Mac? Apple разругалась с Blackmagic Еще совсем недавно Apple рекомендовала использовать для усиления графических возможностей Mac исключительно яблочные решения. Почти яблочные. Внешние графические процессоры Blackmagic eGPU и Blackmagic eGPU Pro компании Blackmagic Design в корпусах, разработанных дизайнерам...

[Перевод] Алгоритм AdaBoost Перевод статьи подготовлен в преддверии старта продвинутого курса «Математика для Data Scienсe». Введение Алгоритм AdaBoost можно использовать для повышения производительности любого алгоритма машинного обучения. Машинное обучение стало мощным инструментом, позволяющим д...

Архитектурное мышление на примере одиночного велопутешествия по Алтаю Всем привет! Проведенный отпуск дал какую-то легкость мысли, и мне захотелось написать простую и немного забавную статью, в которой я бы смог на обычных примерах из своей жизни объяснить различные термины из мира ИТ архитектуры. По мере планирования своего отдыха этим летом ...

Пора на свалку Никогда не думал, что это случится со мной, но, похоже, я выгорел. А ещё мне стрёмно. Да, это ещё одна статья про выгорание. Я тут на днях смотрел на свою RSS-читалку и заметил, что под тегом «C++» у меня где-то три сотни непрочитанных статей. Я не прочитал ни одной статьи ...

Обзор подкаста «Деньги пришли» План такой: слушаю, что записывает компания, делаю заметки, пишу обзор. Alec Favale, Unsplash.com В конце прошлого года я решил написать о корпоративных подкастах и спросил в Facebook, кто ими занимается. Ответили человек 20, дали примеры программ. По мере их изучения я ...

[Из песочницы] Автономизация Unit-тестов в PHPUnit Всем привет! Меня зовут Антон и сейчас (не так долго, около года) я разрабатываю на PHP в одном большом и старом проекте. Для обеспечения качества проекта мы применяем автотесты на фреймворке PHPUnit. Но, к сожалению, так получилось, что большая часть наших автотестов функц...

[Из песочницы] Почему Rust лидирует в TechEmpower Framework Benchmark Вообще-то смотреть какого цвета потроха у Rust я не собирался. Ковырнул хобби-проект на Go, пошел на GitHub посмотреть состояние fasthttp: развивается ли? Ну хотя бы поддерживается? Вспрокрастинулось. Пошел, посмотрел где fasthttp сидит в бенчмарках TechEmpower. Смотрю: а та...

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

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

Есть возраст? Алоха, хаброжители! Каждый из вас делает это ежедневно. А все вместе мы делаем это всё дольше и дольше. Это — старение. Ожидаемая продолжительность жизни в развитых странах удвоилась за последние 150 лет. Этот график в упрощённой форме показывает, что именно мы теряем и п...

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

Планы команды IntelliJ Platform на 2020 год Сегодня мы хотели бы рассказать о некоторых из текущих проектов команды IntelliJ Platform, которые затронут IntelliJ IDEA и другие IDE на базе нашей платформы. Результаты этих проектов будут выпускаться в течение следующего года; некоторые из них попадут уже в релиз 2020.1, ...

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

Сложности работы с ANTLR: пишем грамматику Ruby В «Ростелеком-Солар» мы разрабатываем статический анализатор кода на уязвимости и НДВ, который работает в том числе на деревьях разбора. Для их построения мы пользуемся оптимизированной версией ANTLR4 – инструмента для разработки компиляторов, интерпретаторов и трансляторов...

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

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

Snapdragon 875 лишь немного быстрее Snapdragon 865. Но производительность еще может подрасти Премьера флагманской однокристальной платформы Snapdragon 875 состоится в декабре, но тестовые образцы платформы у Qualcomm уже давно готовы. Одну из таких протестировали в Geekbench 4 с результатами, которые пока не сильно впечатляют. Как пишет известный инсайдер в Tw...

Скоро в продаже: игровой ноутбук ASUS на основе AMD Renoir и NVIDIA GeForce RTX Ещё в конце февраля в одном из румынских интернет-магазинов упоминался игровой ноутбук ASUS ROG Zephyrus G14, использующий 7-нм восьмиядерный процессор Ryzen 9 4900HS и дискретную графику NVIDIA GeForce RTX 2060 Max-Q. Канадские источники утверждают, что скоро он выйдет на р...

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

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

Почему я не советую покупать флагманы Samsung на процессорах Exynos Наверное, все знают, что Samsung вот уже много лет выпускает по две разных версии каждого флагманского смартфона. Одна оснащается процессором Exynos собственного производства Samsung и предназначается для продажи в России, Европе и странах СНГ, а другая – со Snapdragon от Q...

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

[Из песочницы] Распознавание символов методом наименьшего расстояния Левенштейна В последнее время задача распознавания символов в прикладных программах не представляет особой сложности — можно использовать множество готовых OCR-библиотек, многие из которых доведены почти до совершенства. Но все же иногда может возникнуть задача разработать свой алгоритм...

О корпоративной культуре для распределенных команд и не только Введение На свою первую удаленную работу я устроился еще в 2009 году. Мне тогда было 19 лет. Это была должность младшего системного администратора на хостинге. По сути основная ее часть — техподдержка. Это была сравнительно некомфортная работа: нужно было весь день проводить...

STM32 fast start. Часть 2 Hello World на HAL, отладка в Atollic TrueSTUDIO В прошлый раз мы осваивали создание нового проекта при помощи STM CubeMX первую часть можно найти здесь. Для тех, кому лень перечитывать — закончилось все тем, что пустой проект успешно собрался. В данной части напишем простейший пример Hello World на HAL, посмотрим как ...

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

[Из песочницы] Ваш C# уже «функциональный», просто позвольте ему это Привет, Хабр! Представляю вашему вниманию перевод оригинальной статьи «Your C# is already functional, but only if you let it» автора Igal Tabachnik. Несколько дней назад я написал в Твиттере фрагмент кода C#, реализующий FizzBuzz, используя некоторые из новых «фичи» в C# 8....

10 плагинов WooCommerce для Интернет-Магазина на WordPress Если у вас есть веб-сайт, разработанный с помощью WordPress, вы можете довольно просто и быстро запустить магазин с помощью плагина WooCommerce. Несмотря на то, что плагины WooCommerce предлагают множество преимуществ для веб-сайтов на WordPress, для внесения изменений и ул...

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

MMS-система в дата-центре: как мы автоматизировали управление техническим обслуживанием Представьте, что у вас полная серверная инженерного оборудования: несколько десятков кондиционеров, куча ДГУ и бесперебойников. Чтобы «железо» работало как надо, вы регулярно проверяете его работоспособность и не забываете о профилактике: проводите тестовые запуски, проверяе...

Горячая вакансия! RangeVision ищет интернет-маркетолога Производитель 3D сканеров ищет интернет-маркетолога, который станет стратегическим членом команды, будет управлять маркетингом на российском и зарубежном рынке, подбирать специалистов на аутсорсе и сотрудничать с отделом продаж. Если Вы: Имеете опыт в digital-маркетинге от 1...

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

n-Queens Completion Problem — линейный алгоритм решения EricGrig Предисловие Я хотел бы начать предисловие со слов благодарности двум замечательным программистам из Одессы: Андрею Киперу (Lohica) и Тимуру Гиоргадзе (Luxoft), за независимую проверку полученных мною результатов, на начальном этапе исследования. 1. Статья «Line...

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

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

Telegram-бот на Java для самых маленьких — от старта до бесплатного размещения на heroku Для кого написано Если вы ни разу не писали Telegram-ботов на Java и только начинаете разбираться — эта статья для вас. В ней подробно и с пояснениями описано создание реального бота, автоматизирующего одну конкретную функцию. Можно использовать статью как мануал для созда...

Изучаю Akka.NET: Сервер простой онлайн игры Привет, Хабр! Решил я значит попробовать переписать тот сервер что делал с MS Orleans на Akka.NET просто чтобы попробовать и эту технологию тоже. Если вам интересно что получилось до добро пожаловать под кат. Читать дальше →

Набираю 3 человек на Мега-тему Вот это  агрегатор лидов в букмекерских конторах:   Что такое 4500 руб за CPA?! Это значит, что человек который зарегистрировался по вашей реффсылке, затем прошёл идентификацию и положил на свой баланс минимум 300 рублей. Прохождение идентификации проходит обычно быстр...

[Перевод] Задачки для фронтенд-тренировки: doodle-place, Apple Podcasts, Site Blocker, парсинг CSV-файлов Клон doodle-place doodle-place — это онлайн-мир, населенный анимированными каракулями. Вы можете бродить и просматривать каракули, созданные пользователями по всему миру, или внести свой вклад. Чему вы научитесь, сделав клон doodle-place: Использованию API для Canvas в ...

Что будет с ITSM в 2020 году? Что произойдёт с ITSM в 2020 году и в новом десятилетии? Редакция ITSM Tools провела опрос экспертов отрасли и представителей компаний — ключевых игроков на рынке. Мы изучили статью и готовы рассказать вам, на что следует обратить внимание в текущем году. Тренд 1. Благопол...

Ещё один взгляд на вопрос «нужна ли дефрагметация для SSD» Несомненно, вопрос, вынесенный в заголовок статьи, не нов, поднимался не раз и по нему достигнут консенсус «не особо нужна, и даже может быть вредна». Однако недавнее обсуждение в комментариях заставило меня ещё раз задуматься. Со временем любой SSD всё равно сильно фрагмент...

Это первая полностью готовая игра для PlayStation 5. Godfall готова к отправке в магазины Для Sony PlayStation 5 вышла первая игра. Экшен Godfall стал первой игрой для консоли нового поколения, которую уже выпустили на дисках, то есть она полностью готова для продажи. Godfall — это временный эксклюзив для PlayStation 5 (затем игра выйдет на ПК), предс...

Изоляция сред разработки с помощью контейнеров LXD Я расскажу о подходе к организации локальных изолированных сред разработки на своей рабочей станции. Подход был выработан под воздействием следующих факторов: для разных языков нужны разные IDE и тулчейны; в разных проектах могут использоваться разные версии тулчейнов и биб...

[Перевод] Что такое Emergent Communication и почему это нужно знать TL;DR: перевод поста Михаила Нуховича What is Emergent Communication and Why You Should Care: что это такое, зачем это нужно, какие есть точки зрения на задачу и перспективные направления исследований. Обучение с подкреплением, обработка естественного языка, теория игр и фил...

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

Поиск родственников через тест ДНК. Часть 3 – Сдача теста и отправка по почте Ранее я рассказал о ДНК-тестировании для генеалогии и о том, как выбрать тест. Теперь немного расскажу о том, как сделать тест и как его отправить обратно. Уже потом будут получение результата и его анализ, но сначала надо купить сам тест, сделать забор материала и отправить...

«Когда часы двенадцать бьют». Или гирлянда в браузере Предположим, у нас есть несколько мониторов. И нам захотелось использовать эти мониторы в качестве гирлянды. Например, заставить их моргать одновременно. Или, может быть, синхронно менять цвет согласно какому-то умному алгоритму. И что, если сделать это в браузере – ведь тог...

Как создать карту помощи, или краудсорсинг – наше все Технологии спешат на помощь! Вот так коротко и по делу можно назвать обзор на плагине shMapper от «Теплицы социальных технологий». Какие у него есть варианты применения (в том числе в условиях пандемии), в каких жизненных ситуациях он будет полезен, и насколько велика сила,...

Антикакеры Собрал для вас цитаты из разных книг по важной, на мой взгляд, теме: что нужно для изменений – инструкция или принципы. Несмотря на всю абсурдность идеи брать чей-нибудь готовый кейс и использовать его у себя, именно так и поступают менеджеры в большинстве случаев. Это впол...

Разбор серии рекламных видео для игры Spin Voyage Мы выпустили серию роликов для рекламной кампании игры Spin Voyage. В ходе работы над серией мы пробовали разные сюжеты и использовали разнообразные методы: от анимации плоской графики до монтажа живых съёмок. Зачем нужен этот сюжетный коктейль? Как аудитория приняла разно...

Первые тесты Radeon Pro 5600M демонстрируют высокую производительность новой видеокарты Ранее на этой неделе компания Apple дала пользователям возможность приобрести 16-дюймовый MacBook Pro с видеокартой AMD Radeon Pro 5600М с 8 ГБ памяти HMB2. Установка такой графики прибавит к финальной стоимости MacBook Pro еще 70 000 рублей. Однако новая графика может замет...

Базы, карты, чек-листы, или Зачем бизнесу управляющий знаниями Гарри Клейн — американский психолог, исследователь интуитивных решений в экстремальных ситуациях. В своей книге «Источники силы» Клейн описал один случай: пожарная команда приехала вызов, в жилом доме горела кухня. Команда вошла в помещение и начала тушить огонь, но он не за...

PHP и регулярные выражения: азы для новичков В преддверии старта нового потока по курсу «Backend-разработчик на PHP», а также смежного с ним курса «Framework Laravel», хотим поделиться статьей, которую подготовил наш внештатный автор. Внимание! данная статья не имеет отношения к программе курса и будет полезна только ...

Volkswagen Passat в чешском обличии? Эксперты рассекретили все нюансы Skoda Octavia Combi 2020 Когда вышла — была дороговата, а сейчас 1,9 миллиона — не деньги. Накануне в Сети появился обзор на легендарную Skoda Octavia, которая олицетворяет собой Volkswagen Passat в чешском обличии. Так ли это, выяснили эксперты, которые в процессе тест-драйва рассекретили все нюан...

[Перевод] Дорогой Google Cloud, отказ от обратной совместимости тебя убивает Чёрт возьми, Google, я не хотел снова писать в блог. У меня так много дел. Ведение блога требует времени, энергии и креатива, которые я мог бы использовать с пользой: мои книги, музыка, моя игра и так далее. Но ты меня достаточно разозлил, и придётся это написать. Так что д...

Oppo Ace 2 установил рекорд AnTuTu… в холодильнике Oppo официально выпустит новый Ace 2 сегодня. Как мы помним, результат этого смартфона на AnTuTu попал в сеть на прошлой неделе. Тогда Oppo Ace 2 набрал 560217 баллов. Теперь официальные результаты показывают, что Oppo Ace 2 набирает 627 553 очков. Сначала результат был 615 ...

CopyPaste клавиатура своими руками или идельная клавиатура в мире, где каждая строчка кода уже написана Многие люди, только начинающие изучать программирование, задают вопрос — нормально ли копипастить чужой код? Учитывая, что человек существо ленивое, а время программиста стоит денег — ответ, на мой взгляд, очевиден — да. Но людям, которые доводят этот принцип до абсурда, кот...

[Перевод] JavaScript, Python или Go: что лучше всего подойдёт для бэкенд-разработки в 2021 году? Уже прошло почти восемь месяцев 2020 года, а технические прогнозы на этот год всё выходят и выходят. И это — несмотря на то, что очень сложно предсказать будущее в такой динамично развивающейся индустрии, как разработка программного обеспечения. Тот, кто работает в этой инду...

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

[Из песочницы] Императивный подход к реактивным данным на примере Jetbrains KTor и R2DBC Статья об использовании реактивного доступа к базам данных из корутин. Spring все упрощает, но это плохо сказывается на понимании реальных процессов работы приложения. Для демонстрации был выбран фреймворк KTor (просто потому, что мне нравится смотреть на то, что делает JetB...

Нетривиальные анимации в SwiftUI Идея На WWDC 2019 была представлена SwiftUI — технология коренным образом влияющая на создание UI в приложениях для экосистемы Apple. Нам в Distillery стало интересно в ней разобраться чуть глубже, чем это подано в примерах от Apple. В идеале нужно было запилить какой-нибудь...

Huawei ожидает 20% падение продаж смартфонов Смартфон какой компании вы готовы купить? А какого производителя вы уважаете? Я, например, не готов сегодня приобрести аппарат от Huawei, но уважаю ребят за то, что они смогли за короткий период вырваться в лидеры по поставкам смартфонов в мире. Huawei занимает второе место...

История Airbnb: Какие уроки можно из нее извлечь? «Дураки учатся на своих ошибках, а умные — на чужих» Теодор Рузвельт, 26-й президент США Теодор Рузвельт, к сожалению, не был знаком с подходом MVP, и в соответствии с этим высказыванием все основатели стартапов немного «дураки» в хорошем смысле этого слова — порой, начиная...

Я пользуюсь Mac уже год. Что изменилось после перехода с Windows Я долго не мог решиться на написание этого материала, просто потому что банально не мог сформулировать, чем компьютеры Mac отличаются от ПК на Windows. Нет, разница была, и довольно ощутимая. Однако на первых порах я занимался тем, что осваивал macOS, но писать об отличиях ...

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

Художница Gladys превращает скучные биржевые графики в удивительные произведения искусства График S&P500 Художница, которая называет себя Gladys, берет обычные биржевые графики и превращает их в настоящие произведения минималистичного искусства. Весь процесс происходит вручную, Gladys отрисовывает свои картины с помощью инструмента "Ручка" в Adobe Illustrator. Св...

Python (+numba) быстрее си — серьёзно?! Часть 2. Практика Это вторая часть статьи про numba. В первой было историческое введение и краткая инструкция по эксплуатации numba. Здесь я привожу слегка модифицированный код задачи из статьи про хаскелл «Быстрее, чем C++; медленнее, чем PHP» с более детальными бенчмарками, графиками и пояс...

3.Elastic stack: анализ security логов. Дашборды В прошлых статьях мы немного ознакомились со стеком elk и настройкой конфигурационного файла Logstash для парсера логов, в данной статье перейдем к самому важному с точки зрения аналитики, то что вы хотите увидеть от системы и ради чего все создавалось — это графики и табл...

[Перевод] Об использовании жизни От создателя криптосервиса Tarsnap для резервного копирования В недавней дискуссии на Hacker News комментатор задал вопрос: Итак, что мы думаем о Tarsnap? Автор явно гений, который тратит время на резервные копии вместо того, чтобы решать задачи тысячелетия. Я говорю это с в...

Интерактивные таблицы, графики и диаграммы на Mac без установки Excel (Эксель): Как создавать на macOS Таблица и график – отличный способ сделать данные наглядными. Но их можно сделать и ещё лучше, если превратить статичную картинку в динамическую. Как это сделать? ♥ ПО ТЕМЕ: Как сохранять файлы Pages в формате Word (doc, docx) на Mac, iPhone, iPad или Windows. Нам поможет бе...

Как внедрить CRM на удалёнке и выиграть? Успешные люди вырываются вперед,  используя то время, которое остальные тратят впустую. Генри Форд У этой статьи не будет пафосного, заумного или игривого вступления — только КДПВ и подпись к ней. Они скажут значительно больше. Это фото выбрано неслучайно. Оно с гонки «24...

Как на Tilda: создаем лендинг на WordPress Лендинг на WordPress, да еще и своими руками – это совсем несложно. В этой статье я расскажу о преимуществах и возможностях WordPress как открытой системы. Разберем по шагам, как сделать лендинг на WordPress с минимальными знаниями HTML и CSS. Наконец, в финале будет живой ...

Скрозь тернии к велосипедам, часть первая: изучаем основы кастомизации отладчика Visual Studio с помощью плагинов Одним из нововведений Visual Studio 2012 сопутствовало явление народу нового кастомизируемого отладчика под названием «Concord». Его компонентная система позволяет VSIX-плагинам подстраивать под себя поведение отладчика и писать новые, контекстно-зависимые, инструменты, кот...

О математике и пандемиях Disclaimer 1 Я математик, НЕ ВРАЧ и не являюсь профильным специалистом-эпидемиологом, а свою последнюю научную работу на тему матмоделирования эпидемий написал без малого 20 лет назад. По всем вопросам здоровья, коронавирусов и смысла жизни консультируйтесь с лечащим врачом...

IDA Pro: работа с библиотечным кодом (не WinAPI) Всем привет, При работе в IDA мне, да и, наверняка, вам тоже, часто приходится иметь дело с приложениями, которые имеют достаточно большой объём кода, не имеют символьной информации и, к тому же, содержат много библиотечного кода. Зачастую такой код нужно уметь отличать от ...

768 потоковых процессоров и частота 1,3 ГГц. Раскрыты характеристики GPU Intel Xe, входящего в состав процессора Core i7-1165G7 Инсайдеру, скрывающемуся в Twitter под ником rogame, удалось подметить в базе Geekbench 4 тест процессора i7-1165G7, раскрывающий характеристики его графической подсистемы. Как оказалось, GPГ получил 96 исполнительных блоков и 768 потоковых процессоров, а его частота со...

График выхода новой версии Android для смартфонов Nokia HMD Global недавно объявила о возвращении к своему оригинальному графику обновлений Android 10 от августа 2019 года. Из нового графика следующем, что Nokia 2.2 станет следующим смартфоном, который получит. Другие устройства, такие как Nokia 2.3, Nokia 6.2, Nokia 7.2, No...

Встроенная графика новейшего процессора Intel превзошла отдельную видеокарту для компьютеров В сети появились результаты тестов производительности флагманского мобильного процессора Intel Core i7-1185G7 серии Tiger Lake 11-го поколения. Встроенная графика в нём превзошла отдельную видеокарту для компьютеров.

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

Контрибьютим в Swift Знакомо, узнали? Каждый раз когда вы пытались объявить опциональное замыкание @escaping в Swift компилятор ругался и писал непонятную ошибку @escaping attribute only applies to function types. Мне это не нравилось, и я решил это исправить. Теперь компилятор Swift 5.3 вместо...

[Перевод - recovery mode ] Делаем быстрее POSTGRESQL COUNT (*) Часто жалуются, что count (*) в PostgreSQL очень медленный. В этой статье я хочу изучить варианты, чтобы вы получили результат как можно быстрее. Почему count (*) такой медленный? Большинство людей без проблем понимают, что следующий запрос будет выполняться медленно: S...

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

Посмотрите как PlayStation 5 уделывает PlayStation 4 в графике на примере Marvel’s Spider-Man Журналисты решили сравнить Spider-Man для PS4 и PS5, чтобы знать, насколько сильно эти версии отличаются по графике.

[Из песочницы] Адаптивное разбиение кривых Безье 2-го и 3-го порядка Уже год как я сменил работу на новую. В этой статье я хочу поделиться опытом, накопленным на прошлом месте. Здесь рассмотрены методы аппроксимации кривых Безье, а также обработка исключительных случаев, при которых простые алгоритмы показывают себя не очень хорошо. Все, ком...

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

Как мы считаем людей с помощью компьютерного зрения Фото из открытых источников Массовые скопления людей создают проблемы в самых разных областях (ритейл, госслужбы, банки, застройщики). Заказчикам необходимо объединять и мониторить информацию о количестве людей во множестве мест: в офисах обслуживания, административных пом...

[Перевод] Три метода Pandas, о которых вы, возможно, не знали Автор статьи, перевод которой мы сегодня публикуем, говорит, что когда он узнал о тех методах библиотеки Pandas, о которых хочет тут рассказать, он почувствовал себя совершенно некомпетентным программистом. Почему? Дело в том, что ему, когда он до этого писал код, лень было ...

На мобильных вышла стильная стратегия-головоломка Puzzle Pelago Puzzle Pelago — это смесь из стратегии и головоломки, в которой вам предстоит обустраивать острова. Каждое здание на них требует определенных ресурсов, получаемых поэтапно: дрова, потом доски, потом определенные изобретения и все в таком духе. Задача в том, чтобы предостави...

Психологическая муть про Новый год Совсем немного осталось времени до главного праздника страны. И всем нам обязательно нужно отпраздновать его как следует, обеспечить, чтобы всё было как у людей. Металлическая(?) белая(?!) крыса(?) желает счастья всем хабраюзерам в Новом Году. Перешлите картинку десяти др...

Заставляем плагин госуслуг работать для всех пользователей в терминальной среде Уже более года все наши сотрудники работают только в опубликованных приложениях, а централизуем мы всё это через Parallels RAS. Есть у нас и автоматический механизм публикации ЭЦП: если авторизованный пользователь запускает сайт, допустим таможни, то предварительно в его HK...

[Перевод] Если данные не помещаются в память. Простейшие методы Самка трубкозуба с детёнышем. Фото: Scotto Bear, CC BY-SA 2.0 Вы пишете программу для обработки данных, она отлично проходит тест на небольшом файле, но падает на реальной нагрузке. Проблема в нехватке памяти. Если у вас 16 гигабайт ОЗУ, вы не сможете туда загрузить стоги...

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

[Перевод] PEP 257 на русском. (Соглашение о Docstrings) Привет, Хабр. Бывают моменты, когда тебе хочется максимально погрузиться в язык и понять все его тонкости. В случае Python один из лучших способов это сделать — читать на официальном сайте документацию и PEP-ы. В своё время я этого не делал, поскольку не мог понять многих «т...

[Из песочницы] Spring Boot vs Spring MVC vs Spring — Как они сравниваются? Spring Boot vs Spring MVC vs Spring — Как они сравниваются? Spring, Spring Boot, Spring MVC, везде есть слово “spring”! Давайте пройдемся где и когда вы можете применять каждый из этих инструментов В этой статье, вы увидите обзоры: Spring, Spring MVC, и Spring Boot, узнает...

Huawei Mate 40 Pro испытали в нескольких бенчмарках Смартфон Huawei Mate 40 Pro, который недавно стал лидером рейтинга бенчмарка AI Benchmark, протестировали в тестах GeekBench, 3DMark и GFXBench. Во всех бенчмарках используемая в этом смартфоне платформа Kirin 9000 оказалась быстрее Snapdragon 865+, а в многопоточном режиме ...

[Из песочницы] Играем музыку из Mario на системном динамике Предисловие Привет, Мир! Уже года 3 хочу написать что-нибудь на Хабр, но никак не находилось темы, на которую можно было бы накатать пост. Так было до тех пор пока мне не понадобилось узнать немного про работу системного таймера и системного динамика для лабораторной рабо...

В России любят не только смартфоны Xiaomi. Самые популярные умные устройства у россиян в 2020 году Эксперты сервиса Яндекс.Маркет проанализировали поисковые запросы и переходы россиян в интернет-магазины с 1 января по 4 октября 2020 и выяснили, какую умную технику в этом году предпочитают в России. Под умной техников подразумеваются гаджеты и бытовая техника, которые...

Симулятор динозавра Path of Titans вышел в раннем доступе на Android Разработчики из студии Alderon Games в поте лица трудятся над своим предстоящим проектом — симулятором динозавра Path of Titans. Оно и понятно, потому что на данный момент они смогли собрать более $600 000. До этого проект был доступен только на iOS, но теперь геймеры на A...

[recovery mode] Хочешь заработать миллион? Всем известна фраза Рона Хаббарда «…хочешь заработать миллион — создай свою религию», которую он выдал в 1950 году. Тогда он создал ещё одну деструктивную секту, можно это было в 60-х в США — которая до сих пор пытается утвердиться в мире, как религия. Хотя, сорри, друзья. ...

Сколько кода на C++ нужно написать для разбора HTTP-заголовка Authorization с помощью easy_parser из RESTinio? Мы продолжаем развивать бесплатный и открытый встраиваемый в С++ приложения HTTP-сервер RESTinio. В реализации RESTinio активно используются C++ные шаблоны, о чем мы здесь регулярно рассказываем (недавний пример). Одной из точек приложения C++ной шаблонной магии стал easy_p...

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

Huawei выпустит смартфоны на Harmony OS, только если попросят пользователи Вчера состоялось, возможно, самое знаковое событие для Huawei за последний десяток лет. Компания официально представила Harmony OS для смартфонов, которая должна заменить собой Android на фирменных аппаратах компании. Китайцы шли к этому несколько лет, хоть и не спешили при...

[Из песочницы] 10 строк кода, которые уменьшат боль от вашего проекта на Vue … или знакомство с плагинами Vue JS на примере интегрированной шины событий Пара слов о… Всем привет! Сразу оговорюсь. Я очень люблю VueJS, активно пишу на нем уже больше 2-х лет и не считаю, что разработка на нем может причинить боль хоть в какой-то значимой степени :) С д...

[Перевод] Руководство по FFmpeg libav Долго искал книгу, в которой было бы разжёвано, как использовать FFmpeg в качестве библиотеки (в дальнейшем в тексте — libav, т.е. library audio video). Обнаружил учебник «Как написать видеоплеер и уложиться в менее чем тысячу строк». К сожалению, информация там устаревшая,...

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

Робот может написать пьесу? А обыграть человека в покер? Сложный тест о том, что умеет искусственный интеллект Министерство просвещения в 2021 году планирует включить в школьную программу изучение искусственного интеллекта. Если у вас есть дети-школьники, вы понимаете, к чему всё идёт. Да, вам придётся помогать им с домашкой ещё и по этому предмету. Пока есть время, подготовьтесь и п...

Принтеры пластиковых карт Fargo – идеальный вариант для вашего использования Пластиковые карты сегодня используются в самых разнообразных случаях, но очень важно, чтобы они были качественно напечатаны. Для этого используются специальные принтеры пластиковых карт. Если вас интересуют принтеры пластиковых карт Fargo, то на сайте компании Scanberry, вы ...

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

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

Что такое Windows PowerShell и с чем его едят? Часть 3: передача параметров в скрипты и функции, создание командлетов Во второй части цикла рассматривались основы языка программирования PowerShell, а сейчас стоит разобраться с использованием написанного на нем кода для задач администрирования. Самый очевидный способ это сделать — запустить сценарий. Кроме него существует возможность созда...

Flashforge dreamer with tmc2208 или ставим тмс2208 на флешика Начну с того что долго искал нормальный "олл ин ван" 3д принтер , который не пришлось бы дорабатывать . колхозить и решать какие то задачи постоянно возникающие в других китайских поделках. Остановился на fleshforge dreamer . Нашел по очень хорошей цене , так же плюсом было ...

[Перевод] Процесс разработки Linux: стоит ли игра свеч? К настоящему моменту Linux существует уже почти три десятка лет. В ранние дни этой ОС Линус Торвальдс сам управлялся с кодом, написанным другими программистами, делающими вклад в развитие Linux. Тогда не было никаких систем контроля версий, всё делалось вручную. В современны...

Пользователи iPhone пожаловались на быструю разрядку из-за iOS 13.6 Неделю назад Apple выпустила iOS 13.6. Обновление, чьё тестирование продолжалось больше месяца, обещало быть самой стабильной версией ОС за последний год, учитывая, что за это время разработчики компании уже должны были выявить все проблемные аспекты платформы и наконец-то ...

Почему мы перешли на Selenide, попутно написав более 200 новых автотестов Привет, я автоматизатор тестирования на одном из проектов крупной компании. В этой статье я расскажу, почему мы приняли решение перейти с Serenity на Selenide. Задача у нас масштабная, и хотя изменение технологического стека заняло определенное время, впоследствии оно с лихв...

Как быстро заряжается топовый Xiaomi Mi 10 Pro? Смартфон Xiaomi Mi 10 Pro первым среди аппаратов производителя получил поддержку сверхбыстрой 50-ваттной зарядки, причём, в отличие от флагмана Samsung, подходящее зарядное поставляется в комплекте. Более того, комплектное ЗУ более мощное — 65 Вт Насколько же быс...

MyApp extends Holiday Я уверен, что среди уважаемой аудитории найдутся те, кто меня поймет. Дело в том, что во всем изобилии популярных библиотек и фреймворков для веб-фронтэнда, лично мне, не нравятся, практически, все альтернативы. В каждом из вариантов я нахожу для себя существенные минусы, к...

Новенький Ryzen 7 4800U громит конкурентов, не оставляя им шансов Если верить последним данным, ноутбуки с новейшими процессорами Ryzen 4000 поступят в продажу уже послезавтра. Мы уже не раз имели возможность оценить производительность разных APU этой линейки в 3DMark, теперь же у нас есть любопытные данные относительно производительн...

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

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

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

Intel Tiger Lake справляется с играми Некоторое время назад на просторах интернета активно обсуждали новость о том, что компания Intel не только подготовила свои дискретные видеокарты к релизу, но и даже проводит какие-то тесты, чтобы проверить, насколько графика справляется с играми и прочими задачами. Оказалос...

Конвертируем doc в docx и xml на C# Продолжаю свой цикл статей, посвященный конвертации различных текстовых файлов с помощью решений, реализованных на языке C#. С момента моей последней публикации «Конвертация xls в xlsx и xml на C#» прошло более полугода, за которые я успел сменить как работодателя, так и пер...

Hack The Box. Прохождение Dyplesher. Memcached, Gogs, RCE через создание плагина и LPE через AMQP Продолжаю публикацию решений, отправленных на дорешивание машин с площадки HackTheBox. В данной статье мы получим хеши пользователей благодаря memcached, разбираемся с GIT репозиториями, пишем плагин с бэкдором на Java, анализируем трафик и повышаем привилегии благодаря R...