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

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

Прогнозирование результатов футбольных матчей Модель машинного обучения на Python c использованием библиотеки Scikit-learn, для прогнозирования результатов футбольных матчей Российской Премьер Лиги (РПЛ). Читать дальше →

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

Мониторинг + нагрузочное тестирование = прогнозирование и отсутствие сбоев IT-департаменту ВТБ несколько раз приходилось сталкиваться с нештатными ситуациями в работе систем, когда нагрузка на них многократно возрастала. Поэтому появилась необходимость разработать и опробовать модель, которая предсказывала бы пиковую нагрузку на критичные системы. ...

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

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

[Перевод] AMD Radeon VII: рывок в High-End (часть 3) Часть 1 >> Часть 2>>Часть 3 Производительность вычислений Пожалуй, достаточно об играх. Рассмотрим вычислительные аспекты Radeon VII. Хотя он в основе своей похож на Vega первого поколения, вокруг него много шума об улучшенной вычислительной мощности Vega 20. По...

Software Defined Radio — как это работает? Часть 3 Привет Хабр. Во второй части были рассмотрены практические аспекты использования SDR. В этой части мы разберемся, как принять данные метеоспутника NOAA с помощью Python и недорогого (30$) приемника RTL-SDR. Рассмотренный код будет работать везде — на Windows, OSX, Linux и д...

Software Defined Radio — как это работает? Часть 6 Привет, Хабр. В предыдущей части мы рассмотрели возможность передачи простых сигналов с помощью GNU Radio. Сейчас мы пойдем дальше, и посмотрим, как передать что-нибудь посложнее. Начнем с радиолюбительских сигналов WSPR, а затем создадим работающий программный QAM-модем. ...

AvaloniaUI особенности на примере MessageBox Avalonia ui — восхитительный фреймворк, к которому хочется возвращаться снова и снова. Так давайте же вернемся к нему еще раз и рассмотрим некоторые особенности вместе с моим message box. Читать дальше →

Виртуальный, индустриальный, домашний И снова наступил момент, надо что-то делать. Вот нельзя, просто сидеть за компом и не создать чего-нибудь такого. Чтобы и пользу приносило, и слегка радовало глаз или два глаза. Читать дальше →

5 способов полезного использования Raspberry Pi. Часть третья Привет Хабр. Во второй части были рассмотрены 5 способов использования Raspberry Pi. И как оказывается, этот микрокомпьютер способен ещё на большее. Сейчас мы рассмотрим еще 5, надеюсь, не менее интересных возможностей Raspberry Pi. Как и в предыдущей части, будут рассмо...

Software Defined Radio — как это работает? Часть 5 Привет Хабр. В предыдущей части был рассмотрен прием сигналов с помощью GNU Radio. Сейчас мы рассмотрим обратную задачу — передачу сигналов различного вида модуляции. Как и в случае приема, с помощью GNU Radio можно создать сложную программную систему для передачи сигнал...

Внедрение системы автозаказа в ГК «Лама» повысило товарооборот на 5%. Вот так просто! Николай Молдован, ИТ-директор Группы компаний «Лама» (г. Томск), рассказал, как система прогнозирования спроса повысила томскому ритейлеру товарооборот на 5%. Одна из главных задач в ритейле — правильно спрогнозировать спрос и отрегулировать процесс заказа товара. У нашей ко...

5 способов сделать Python-сервер на Raspberry Pi. Часть 2 Привет Хабр. Сегодня мы продолжим изучать сетевые возможности Raspberry Pi, а точнее их реализацию на языке Python. В первой части мы рассмотрели базовые функции простейшего веб-сервера, работающего на Raspberry Pi. Сейчас мы пойдем дальше, и рассмотрим несколько способов, ...

Tic Tac Toe, часть 7: pytest и Travis CI Tic Tac Toe: содержание цикла статейВ этой статье рассмотрим Непрерывную Интеграцию/Сontinuous Integration на примере использования Travis CI. Читать дальше →

5 способов полезного использования Raspberry Pi. Часть вторая Привет Хабр. В первой части были рассмотрены 5 способов использования Raspberry Pi. Тема оказалась достаточно интересной, и сегодня я рассмотрю еще несколько вариантов того, как можно с пользой использовать этот микрокомпьютер. Фото с сайта learn.adafruit.com Как и в пре...

Обработка аппаратных прерываний в архитектуре intel. i8080 — i80486, PIC, ISA, conventional PCI В топике даётся обзор в исторической перспективе механизмов, используемых для сопряжения внешних устройств с CPU архитектуры x86. СпойлерЯ понял, что никогда уже не допишу этот грандиозный обзор во всей его полноте, поэтому я просто убрал «часть 1» из названия. Возможно эта...

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

Браузерные мобильные игры бросают тебе вызов Вы когда-нибудь слышали о браузерных онлайн играх? Теперь представьте такие же, но для бюджетных телефонов – без графики и анимации. Да, такие игры тоже существуют, и имеют большую популярность в определенных кругах. Читать дальше →

Самые интересные яды Привет, %username%! Снова вечер, снова мне нечего делать, и я решил потратить немного времени, чтобы написать третью часть своего цикла о ядах. Надеюсь, ты читал первую и вторую часть, и тебе понравилось. В третьей части мы немного отдохнём. Здесь не будет рассказа о тех...

Снова про дырявые абстракции (или про непредсказуемое окружение) Итак, довольно простая часть программы под Windows. Есть файл, содержащий несколько записей. И их надо определенным образом отфильтровать. Решение довольно простое — открываем файл, читаем записи одну за другой, нужные нам записываем во временный файл. Закрываем файл. Удаля...

IBM запускает новую систему прогнозов погоды От существующих систем GRAF (Global High-Resolution Atmospheric Forecasting) отличается тем, что дает точный и детальный прогноз, в том числе для тех районов, где сейчас такое прогнозирование не делается, может сделать прогноз даже для небольших участков территории (3 км на ...

Текстурирование, или что нужно знать, чтобы стать Художником по поверхностям. Часть 1. Пиксель О чем эта серия уроков? В данной серии статей, которые я собираюсь написать, я постараюсь максимально раскрыть теорию создания текстур для игровой индустрии, начиная от самого понятия «пиксель» и заканчивая построением сложных материалов (шейдеров) в игровом движке на пример...

[Из песочницы] Game Engine своими руками на C++. Часть 1 (Вступление) Game Engine Проектируем, пишем, думаем рассуждаем, читаем и многое другое Внимание: статьи содержат много костылей! Читать дальше →

Как мы спроектировали и реализовали новую сеть на Huawei в московском офисе, часть 3: серверная фабрика В предыдущих двух частях (раз, два) мы рассмотрели принципы, на основе которых построена новая пользовательская фабрика, и рассказали про миграцию всех рабочих мест. Теперь пришла пора поговорить о серверной фабрике. Читать дальше →

Сети кабельного телевидения для самых маленьких. Часть 6: Усилители RF-сигнала В этой статье рассмотрим усилители высокочастотного радиосигнала кабельного телевидения на коаксиальной части магистрали. Читать дальше →

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

Книга «Осваиваем Kubernetes. Оркестрация контейнерных архитектур» Привет, Хаброжители! Мы недавно издали книгу по Kubernetes версии 1.10. В посте рассмотрен отрывок «Сетевые решения для Kubernetes» Организация сети — обширная тема. Существует множество способов настроить сеть с подключением устройств, подов и контейнеров. Kubernetes вас ...

ЧПУ в хоббийной мастерской (часть 2) → Первая часть В статье рассмотрим стандартное и нестандартное использование CNC-роутера. Для чего кроме вырезания деревянных картинок можно приспособить такой станок. Осторожно, трафик. Читать дальше →

Программирование LibreOffice Base. Часть 2 В части 2 будет рассмотрена связь между таблицами базы данных и формами. В частности как задавать связь между двумя таблицами и использовать таблицы-«справочники» в качестве источника данных для выпадающих списков. Читать дальше →

[Перевод] AlphaFold: Использование ИИ для научных открытий И снова здравствуйте! Делимся публикацией, перевод которой подготовлен специально для студентов курса «Нейронные сети на Python». Сегодня мы расскажем о первом важном событии в истории развития DeepMind, чтобы показать, как исследования с помощью искусственного интеллекта м...

Алгоритм взаимодействия сотен тысяч уникальных частиц на GPU, в GLES3 и WebGL2 Описание алгоритма логики, и разбор рабочего примера в виде техно-демки-игры WebGL2 версия этой демки https://danilw.itch.io/flat-maze-web остальные ссылки смотрите в статье. Статья разбита на две части, сначала про логику, и вторая часть про применение в игре, первая часть...

Борьба за Xiaomi: на таможне задержали партию смартфонов Redmi 6А и Redmi GO, но суд снова встал на сторону NIS Казалось бы, после недавнего решения апелляционного суда конфликт между украинским дистрибьютором NIS и Xiaomi Н. К. Limited можно считать исчерпанным. Но не тут-то было. Днепровский юрист и экс-сотрудник ГК «Алло» Александр Шевченко, действующий от имени Xiaomi H.K.Limited,...

Let`s Cartesian battle begin! Часть вторая, лирическая: «А в попугаях я гораздо длиннее!» (с) В предыдущем материале я попытался проанализировать особенности картезианских кинематик и подвести какой-то промежуточный итог. Итога особо не получилось, поэтому захотелось продолжить. Начну с анализа и обобщения, а потом постараюсь закрепить результат каким-нибудь безапелл...

Сравнение малопопулярных и не очень CLI-библиотек: cliff, plac, plumbum и другие (часть 2) В экосистеме Python существует множество пакетов для CLI-приложений, как популярных, вроде Click, так и не очень. Наиболее распространённые были рассмотрены в предыдущей статье, здесь же будут показаны малоизвестные, но не менее интересные. Читать дальше →

PornHub как замена VK 11 декабря PornHub опубликовал ежегодный отчет о своей работе в 2018. В 20 стран с наибольшим трафиком в этом году впервые вошла Украина. Занимая 16 место по трафику, украинские пользователи поднялись сразу на 11 позиций в сравнении с 2017 годом. Неочевидной причиной столь...

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

Протокольно ориентированное программирование, часть 3 Завершающая статья на тему протокольно ориентированного программирования. В этой части мы рассмотрим как переменные обобщенного типа хранятся и копируются и как с ними работает метод dispatch. Читать дальше →

20 проектов, 20 языков, срок вчера. Часть 3 Заключительная статья об интеграции Serge+Smartcat. В этой статье я расскажу, как мы масштабируем Serge на всю компанию, рассмотрю 4 нестандартных интеграции и, в качестве бонуса, расскажу о 2 фичах которые могут упростить вам жизнь. Предыдущие статьи: 20 проектов, 20 язык...

Приложения для электронных книг на операционной системе Android. Часть 5. Облачные хранилища и плееры В этой, последней, части статьи о приложениях для электронных книг на операционной системе Android будут рассмотрены две темы: Облачные хранилища и Аудиоплееры. Бонус: список бесплатных библиотек с каталогами OPDS. Краткое содержание предыдущих четырёх частей статьиВ 1-ой ч...

[Перевод] Внутренности JVM, Часть 1 — Загрузчик классов Перевод статьи подготовлен специально для студентов курса «Разработчик Java». В этой серии статей я расскажу о том, как работает Java Virtual Machine. Сегодня мы рассмотрим механизм загрузки классов в JVM. Читать дальше →

Tic Tac Toe, часть 3: Undo/Redo с хранением команд Tic Tac Toe, часть 0: Сравнение Svelte и React Tic Tac Toe, часть 1: Svelte и Canvas 2D Tic Tac Toe, часть 2: Undo/Redo с хранением состояний Tic Tac Toe, часть 3: Undo/Redo с хранением командВ этой части рассмотрена реализация игры Tic Tac Toe с помощью паттерна Command, с ...

[Перевод] Функциональное мышление. Часть 9 Это уже 9 часть серии статей по функциональному программированию на F#! Уверен, на Хабре существует не очень много настолько длинных циклов. Но мы не собираемся останавливаться. Сегодня расскажем про вложенные функции, модули, пространства имен и смешивание типов и функций в...

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

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

Как сделать костыль для Тинькофф Инвестиций своими руками или уведомления об action required for take profit / stop loss Есть такой брокер — Тинькофф Банк. И есть проблема в том, что на текущий момент этот брокер не имеет приказов take profit / stop loss. Поэтому, если вы хотите торговать более активно, то вам нужно костылить какое-то временное решение, пока в недрах Тинькоффа программисты раз...

Универсальное DRO на базе Arduino Nano — shDRO. Часть 2 И снова здравствуйте! Продолжаю описывать свою разработку shDRO. В данной части я опишу алгоритм опроса устройств и формат команд консоли. Первая часть. Читать дальше →

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

Автоматизация SQL server в Jenkins: возвращаем результат красиво Снова продолжая тему обустройства Zero Touch PROD под RDS. Будущие DBA не будут иметь возможности подключиться к PROD серверам напрямую, но смогут использовать Jenkins jobs для ограниченного набора операций. DBA запускает job и через некоторое время получает письмо с отчетом...

MySpace потерял музыку, фото и видео, которые пользователи загружали с 2003 по 2015 годы Когда-нибудь это произойдёт с Facebook, Вконтакте, Google Drive, Dropbox и любым другим коммерческим сервисом. Все ваши файлы на облачном хостинге неизбежно будут потеряны со временем. Как это происходит — можно прямо сейчас наблюдать на примере MySpace, бывшего интернет-гиг...

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

[Перевод] Reflective Shadow Maps: Часть 2 ― Реализация Привет, Хабр! В данной статье представлена простая реализация Reflective Shadow Maps (алгоритм описан в предыдущей статье). Далее я объясню, как я это сделал и какие подводные камни были. Также будут рассмотрены некоторые возможные оптимизации. Рисунок 1: Слева направо: бе...

[Перевод] Функциональное мышление. Часть 8 Привет, Хабр! Мы с небольшим запозданием возвращаемся с новогодних каникул с продолжением нашей серии статей про функциональное программирование. Сегодня расскажем про понимание функций через сигнатуры и определение собственных типов для сигнатур функций. Подробности под кат...

Сети кабельного телевидения для самых маленьких. Часть 7: Оптические приёмники Граница между оптической средой и коаксиальным кабелем — оптический приёмник. В этой статье рассмотрим их конструкцию и настройки. Читать дальше →

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

Применение Oracle Database для Технического анализа рынков Эта статья про Oracle Database, PL/SQL, SQL, MATCH_RECOGNIZE, MODEL clause, aggregate и pipelined functions. В качестве функциональной области использован Технический анализ (ТА) рынков. Сначала небольшая поверхностная вводная о торговле на рынках, потом — расчёты. Техниче...

[Из песочницы] Своя временная почта: телеграм бот Часто с новыми инструментами и возможностями появляется желание поэкспериментировать и реализовать что-то не совсем обычное, чего раньше ещё никогда не делал. Идея создать свой сервис временной почты в виде телеграм бота показалась мне достаточно интересной. Читать дальше &r...

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

Методика D.I.Y. проекта. Часть вторая В заключительной части статьи «Методика D.I.Y. проекта» будет рассмотрен комплекс организационных мероприятий на стадии исполнения и закрытия любительского проекта. Предыдущие части статьи опубликованы здесь и здесь. Читать дальше →

[Перевод] Бессерверные вычисления на основе OpenWhisk, часть 2 Эта статья продолжает цикл переводных заметок об OpenWhisk от автора Priti Desai. Сегодня будут рассмотрены примеры развертывания GitHub webhook, периодических сигналов, а также приведено простейшее приложение для отправки сообщений в Slack. Читать дальше →

Не открывайте порты в мир — вас поломают (риски) Снова и снова, после проведения аудита, на мои рекомендации спрятать порты за white-list'ом встречаюсь со стеной непонимания. Даже очень крутые админы/DevOps'ы спрашивают: "Зачем?!?" Предлагаю рассмотреть риски в порядке убывания вероятности наступления и ущерба. Ошибка ко...

Записки IoT-провайдера: девять проблем Интернета Вещей, или почему ему на Руси нехорошо Здравствуйте, уважаемые любители Интернета Вещей! Эта статья отличается от моих предыдущих. Здесь не про решения и кейсы. Я написал про девять проблем IoT, которые портят нам жизнь. Предлагаю присоединиться к моим размышлениям и вместе спрогнозировать будущее Интернета Вещ...

Software Defined Radio — как это работает? Часть 2 Привет, Хабр. В первой части были описаны основные виды SDR-устройств и кратко были приведены их характеристики. Во второй части я расскажу подробнее о плюсах и минусах SDR, также будет рассмотрен пример доступа к приемнику из языка Python. Продолжение под катом (осторож...

Fake Door как часть Customer Development У меня есть нож, есть арбалет, Они служат мне уже тысячу лет. (с) КиШ Предположим, вам надо проверить насколько новая фича будет востребована клиентами. Зачастую, это решается с помощью интервьюирования, опросов, и т.д. У этих замечательных подходов есть свои плюсы/минусы...

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

Прерывания от внешних устройств в системе x86. Часть 3. Настройка роутинга прерываний в чипсете на примере coreboot Продолжаем рассматривать настройку прерываний от внешних устройств в системе x86. В части 1 (Эволюция контроллеров прерываний) мы рассмотрели теоретические основы контроллеров прерываний и общие термины, в части 2 (Опции загрузки ядра Linux) посмотрели как на практике ОС ос...

Прозрачность — панацея от баттхёртов Я уже пытался лечить «механический» scrum (часть 1, часть 2, часть 3), а в этой статье постараюсь выписать универсальное лекарство от «подгорания». Само по себе «подгорание», «бурление» и т.п. — это хорошо, это значит вам не все равно (а ведь безразличие — это шаг к унынию, ...

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

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

Приложения для электронных книг на операционной системе Android (часть 3) В этой (третьей) части статьи о приложениях для электронных книг на операционной системе Android будут рассмотрены следующие две группы приложений: 1. Альтернативные словари 2. Заметки, дневники, планировщики Краткое содержание предыдущих двух частей статьи: В 1-ой част...

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

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

Проблемы пакетной обработки запросов и их решения (часть 2) Это продолжение статьи «Проблемы пакетной обработки запросов и их решения». Рекомендуется сначала ознакомиться с первой частью, так как в ней подробно описана суть задачи и некоторые подходы к ее решению. Здесь же мы рассмотрим другие методы. Читать дальше →

VMware NSX для самых маленьких. Часть 5. Настройка балансировщика нагрузки Часть первая. Вводная Часть вторая. Настройка правил Firewall и NAT Часть третья. Настройка DHCP Часть четвертая. Настройка маршрутизации В прошлый раз мы говорили о возможностях NSX Edge в разрезе статической и динамической маршрутизации, а сегодня будем разбираться с ба...

Вредные советы: как правильно писать техническую документацию? Часть третья и последняя Советы по грамотному написанию технической документации для пользователей. Часть 3 (заключительная) Заключение руководства нашего технического писателя Андрея Старовойтова, которое поможет сделать вашу пользовательскую документацию проще и понятнее. На этот раз мы попод...

[Перевод] F#4: Let / Use / Do В этом посте мы рассмотрим привязки в F#, в частности мы рассмотрим Let / Use / Do. Теперь вы, возможно, спрашиваете себя, что такое привязки, и, поскольку мы еще не рассмотрели их, сейчас самое время поговорить об этом. Проще говоря, привязка связывает идентификатор со зна...

[Перевод] Интервью — 10 вопросов про Swift. Часть 3 Профессиональная программа «iOS Разработчик» — 5 месяцев Best Practice по разработке мобильных приложений с помощью Swift 5. Лучших выпускников ждут на собеседованиях 12 компаний-партнёров OTUS, поэтому публикуем перевод заключительной статьи из серии «iOS Interview Question...

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

[Из песочницы] USB-звуковая карта на YM3812 Я люблю старые компьютерные игры. Люблю старое железо, но не настолько, чтобы коллекционировать его дома. Другое дело – поковырять какой-нибудь старый чип и попробовать самому что-нибудь воспроизвести, совместить старое с новым. В данной статье история о том, как я подключил...

Дайджест IT событий марта (часть первая) С весной приходит и новый пик активности программистов в нерабочее время — нам снова приходится разбить мартовский обзор на две части. Основу светской жизни в этом месяце составляют небольшие встречи по интересам — языки (Pythpn, Lua, Elixir), веб-рзработка, тестирование. ...

Готовим полнотекстовый поиск в Postgres. Часть 1 Эта статья — первая из небольшой серии статей о том, как оптимально настроить полнотекстовый поиск в PostgreSQL. Мне пришлось недавно решать подобную задачу на работе — и я был очень удивлен отсутствию хоть сколько-нибудь вменяемых материалов по этому поводу. Мой опыт борьбы...

Kali Linux NetHunter на Android Ч.2: атаки на беспроводные сети Предыдущие статьиKali Linux NetHunter на Android: зачем и как установить И снова здравствуй, мой любознательный друг! Как ты, наверняка, помнишь, в прошлой статье мы говорили об установке NetHunter на Android устройство. Сейчас мы займемся практической частью и обзором возм...

SamsPcbGuide, часть 9: Гальваническая изоляция, безопасность и печатные платы Данная статья продолжает рассмотрение вопроса, поднятого @olartamonov, а именно, обеспечение безопасности в высоковольтных приложениях. В статье будут рассмотрены физические основы пробоя диэлектриков, а также новый стандарт безопасности. Читать дальше →

Изучаем Adversarial Tactics, Techniques & Common Knowledge (ATT@CK). Enterprise Tactics. Часть 10 Эксфильтрация или утечка данных (Exfiltration) Ссылки на все части: Часть 1. Получение первоначального доступа (Initial Access) Часть 2. Выполнение (Execution) Часть 3. Закрепление (Persistence) Часть 4. Повышение привилегий (Privilege Escalation) Часть 5. Обход защиты (Defe...

Работа с датами на языке R (базовые возможности, а также пакеты lubridate и timeperiodsR) Получить текущую дату в любом языке программирования, операция эквивалентная "Hello world!". Язык R не является исключением. В этой статье мы разберёмся с тем, как устроена работа с датами в базовом синтаксисе языка R, а также рассмотрим несколько полезных пакетов, расширяющ...

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

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

Импортозамещение на практике. Часть 2. Начало. Гипервизор В предыдущей статье были рассмотрены варианты, на что можно заменить существующие системы в рамках выполнения приказа об импортозамещении. Далее в статьях речь пойдет о выборе конкретных продуктов для замены развернутых в настоящее время. Начнем с точки отсчета — системы вир...

Записи выступлений с летнего DIYorDIE Meetup 16 июня 16 июня в нашем офисе прошёл очередной митап всех любителей сделать что-нибудь своими руками с помощью паяльника, молотка и энтузиазма. И для всех, кто не смог побывать на митапе, мы выложили видеозаписи и презентации выступлений. Там много интересного! «Собираем квадроко...

Свойство симметричности отношения коинтеграции Цель данной статьи — поделиться парадоксальными результатами в исследовании коинтеграции временных рядов: если временной ряд коинтегрирован с рядом , ряд не всегда коинтегрирован с рядом . Если мы исследуем коинтеграцию чисто теоретически, то легко доказать, что если ряд ...

Хабрамегарейтинг: лучшие статьи и статистика Хабра за 12 лет. Часть 2/2 Привет Хабр. В первой части были рассмотрены некоторые закономерности развития такого интересного ресурса, как habrahabr. Материал получился длинный, так что продолжение здесь. В этой части мы заодно посмотрим как строить такие картинки, и наконец, завершим нашу статистику ...

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

Самые интересные металлы Кто не слушает металл — тому бог ума не дал! — Народное творчество Привет, %username%. gjf снова на связи. Сегодня буду совсем краток, потому что через шесть часов вставать и ехать. А рассказать я сегодня хочу о металле. Но не о том, который музыка, — о том мы можем пог...

Библиотека генератора ассемблерного кода для микроконтроллеров AVR. Часть 2 Библиотека генератора ассемблерного кода для микроконтроллеров AVR Часть 2. Начало работы Как и планировалось, в этой части рассмотрим более подробно особенности программирования с использованием библиотеки NanoRTOS. Те, кто начал чтение с этого поста, могут ознакомиться с о...

Век живи — век учись. Часть 2. Вуз: 5 лет или 5 коридоров? Высшее образование в России — это тотем, фетиш, пунктик и идея фикс. С детства нам внушалось, что «поступить в институт» это джек-пот: все дороги открыты, работодатели выстроились в очередь, зарплата летит на карту. У этого явления есть исторические и социальные корни, но се...

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

[Перевод] Оптимизация стратегии игры в Блэкджек методом Монте-Карло Перевод статьи подготовлен специально для студентов курса «Machine learning». Обучение с подкреплением штурмом взяло мир Искусственного Интеллекта. Начиная от AlphaGo и AlphaStar, все большее число видов деятельности, в которых раньше доминировал человек, теперь завоевано...

ВНИИТЭ планеты всей: как в СССР систему «умного дома» придумали В середине 1980-х годов в СССР не только играли в перестройку и переделывали Simca 1307 в Москвич-2141, но и пытались спрогнозировать будущее рядового потребителя. Это было довольно сложно, особенно в условиях тотального дефицита. Однако советские учёные смогли предугадат...

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

[Перевод] История видеопроцессоров: 1976 — 1995 годы Эволюция современных графических процессоров началась с появления в 1995 году первых 3D-карт, за которым последовало широкое распространение 32-битных операционных систем и недорогих персональных компьютеров. До этого индустрия графики в основном состояла из более прозаичн...

[Перевод] Ограничения 16-битных игр и их воссоздание в Unity В нашем первом туториале по ретро-играм мы показали, как настраивать инструмент 2D Pixel Perfect и как создавалась графика в эпоху 8-битных игр. В этом посте мы перенесёмся в 16-битную эру. С помощью Mega Cat Studios мы узнаем, как создавать аутентичную графику для игр в ст...

[Перевод] Функциональное мышление. Часть 11: Финал Сегодня мы заканчиваем нашу серию статей о функциональном программировании. Получилось 11 частей. Я считаю, что это достижение. В этой статье реализуем простой стековый калькулятор (также известный как "обратная Польская нотация"). Реализация практически полностью построена ...

[Перевод] Каскадная инвалидация кэша. Часть 2 В первой части перевода материала, посвящённого каскадной инвалидации кэша, мы обсудили сущность проблемы и рассмотрели один из вариантов её решения, который заключается в использовании карт импорта. Его плюс — лёгкость реализации. А минус — слабая поддержка браузерами. Сего...

Software Defined Radio — как это работает? Часть 9 Привет Хабр. В предыдущей части было рассмотрено декодирование сигналов RDS для FM-радиостанций, и идея следующей статьи возникла сама собой — нужно сделать свой собственный FM-трансмиттер. Вариантов будет два — простой, и более сложный, с RDS. Как и в предыдущих случая...

Изучаем Adversarial Tactics, Techniques & Common Knowledge (ATT@CK). Часть 7 Часть 7. Обнаружение (Discovery) Ссылки на все части: Часть 1. Получение первоначального доступа (Initial Access) Часть 2. Выполнение (Execution) Часть 3. Закрепление (Persistence) Часть 4. Повышение привилегий (Privilege Escalation) Часть 5. Обход защиты (Defense Evasion) ...

Тест-драйв nanoCAD СПДС Стройплощадка 8. Часть 1 Тест-драйв nanoCAD СПДС Стройплощадка 8 Мы начинаем публикацию тест-драйва по nanoCAD СПДС Стройплощадка. В первой части тест-драйва мы разберем работу со специальным инструментом Менеджер проектов, его основные функции и способы построения элементов стройгенплана. Во второ...

Тест-драйв nanoCAD СПДС Стройплощадка 8. Часть 2 Тест-драйв nanoCAD СПДС Стройплощадка 8 Мы продолжаем публикацию тест-драйва по nanoCAD СПДС Стройплощадка. В первой части тест-драйва мы разобрали работу со специальным инструментом Менеджер проектов, его основные функции и способы построения элементов стройгенплана. Во вто...

[Перевод] Dav1d – самый быстрый декодер AV1 теперь в Firefoх по умолчанию Вступление от Voximplant Да, мы не впервые пишем про AV1 – у нас уже был перевод про Chrome 70 с поддержкой кодека, и вот мы снова делимся новостями. В этот раз – слово Nathan Egge, старшему инженеру Mozilla и участнику фонда Xiph.org, который порадовал новостью про дефолтну...

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

MIRO — открытая платформа indoor-робота. Часть 4 — Программная составляющая: ARDUINO (AVR) Продолжаем разбирать программную составляющую платформы MIRO. Хочется более подробно рассмотреть именно программное обеспечение под AVR. Поэтому вопросу посвятим две части. В первой опишем общую структуру библиотеки, а во второй — реализацию некоторых ключевых методов клас...

Текстурирование, или что нужно знать, чтобы стать Художником по поверхностям. Часть 4. Модели, нормали и развертка Модели, нормали и развертка По моему скромному мнению, художник по текстурам должен отвечать за развертку. Не за саму развертку (ее стоит делать 3D-художникам или вообще отдельным UV-специалистам), а ее укладку. Он должен определять, как острова должны располагаться, как дол...

Дискретная производная или коротко о том как суммировать ряды Вступление Бывало когда-нибудь такое, что вы хотите просуммировать какой-то бесконечный ряд, но не можете подобрать частичную сумму ряда? Вы все ещё не пользовались дискретной производной? Тогда мы идём к вам! Определение Дискретной производной последовательности назовем т...

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

Тест-драйв nanoCAD СПДС Металлоконструкции 1.2. Часть 3 Продолжаем публиковать тест-драйв по nanoCAD СПДС Металлоконструкции. В первой части тест-драйва мы начали строить каркас производственного. Во второй части мы рассмотрели, как создавать вертикальные связи, распорки, прогоны и размещать их на плане, а также создадим поперечн...

Разработка под Docker. Локальное окружение. Часть 2 — Nginx+PHP+MySql+phpMyAdmin Рассмотрим пример развертки локального окружения состоящего из связки Nginx+PHP+MySql+phpMyAdmin. Данная связка очень популярна и может удовлетворить ряд стандартных потребностей рядового разработчика. Как и в прошлом посте акцент будет смещен в сторону утилиты docker-compo...

VMware NSX для самых маленьких. Часть 4. Настройка маршрутизации Часть первая. Вводная Часть вторая. Настройка правил Firewall и NAT Часть третья. Настройка DHCP NSX Edge поддерживает статическую и динамическую (ospf, bgp) маршрутизацию. Первоначальная настройка Статическая маршрутизация OSPF BGP Route Redistribution Читать дальше →

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 35. Динамический протокол транкинга DTP Сегодня мы рассмотрим динамический протокол транкинга DTP и VTP – протокол транкинга VLAN. Как я говорил на последнем уроке, мы будем следовать темам экзамена ICND2 в том порядке, в котором они приведены на сайте Cisco. В прошлый раз мы рассмотрели пункт 1.1, а сегодня р...

Как взять сетевую инфраструктуру под свой контроль. Часть третья. Сетевая безопасность. Продолжение Это вторая часть главы «Сетевая безопасность» (которая в свою очередь является третьей частью цикла статей «Как взять сетевую инфраструктуру под свой контроль»). В первой части этой главы мы рассмотрели некоторые аспекты сетевой безопасности сегмента «Data Center». Эта глава...

[Перевод] Бессерверные вычисления на основе OpenWhisk, часть 1 Это цикл переводных заметок автора Priti Desai. Поскольку сами заметки довольно короткие, то в одной публикации будет собрано сразу несколько. Будут рассмотрены детали развертывания приложений для OpenWhisk с примерами, а в конце цикла — приведена архитектура и код приложен...

[Перевод] Управление памятью в Python Задумывались ли вы когда-нибудь о том, как данные, с которыми вы работаете, выглядят в недрах Python? О том, как переменные создаются и хранятся в памяти? О том, как и когда они удаляются? Материал, перевод которого мы публикуем, посвящён исследованиям глубин Python, в ходе ...

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

Что слышно в радиоэфире? Принимаем и декодируем наиболее интересные сигналы. Часть 2, УКВ Привет Хабр. В первой части были описаны некоторые сигналы, которые можно принять на длинных и коротких волнах. Не менее интересным является диапазон УКВ, на котором тоже можно найти кое-что интересное. Как и в первой части, будут рассмотрены те сигналы, которые можно са...

«Тайна третьей планеты» с улучшенной нейросетями графикой Заметил, что у Хабра есть интерес к теме улучшения графики в старых играх. Я как раз сделал мод графики для первой готики. А недавно, решил схожим методом улучшить графику в любимом с детства мультфильме — "Тайна третьей планеты". Тут кадры-сравнения. А ниже результат: Р...

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

[Из песочницы] SVG индикатор загрузки на Vue.js Привет! Учусь на front-end, и параллельно, в учебном проекте, разрабатываю SPA на Vue.js для back-end, который собирает данные от поискового бота. Бот нарабатывает от 0 до 500 записей, и я должен их: загрузить, отсортировать по заданным критериям, показать в таблице. Ни back...

Как выглядит zip-архив и что мы с этим можем сделать. Часть 2 — Data Descriptor и сжатие Продолжение статьи Как выглядит zip-архив и что мы с этим можем сделать. Предисловие Доброго времени суток. И снова в эфире у нас нетрадиционное программирование на PHP. В прошлой статье уважаемых читателей заинтересовала тема сжатия в ZIP и сохранение потоков в zip. Попробу...

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

Системы мониторинга трафика в сетях VoIP. Часть вторая — принципы организации Здравствуйте, коллеги! В предыдущем материале мы познакомились с таким полезным и, как можно заметить, достаточно необходимым элементом VoIP-инфраструктуры, как система мониторинга трафика или, для краткости, СМТ. Узнали, что это такое, какие задачи решает, а также отметили...

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

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

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

[Из песочницы] Методы сжатия/хранения медиа данных в форматах WAVE и JPEG, часть 1 Здравствуйте! Моя первая серия статей будет направлена на изучение методов сжатия и хранения изображений/звука, таких как JPEG (изобр.) и WAVE (звук), также в них будут примеры программ с использованием этих форматов (.jpg, .wav) на практике. В этой части мы рассмотрим именн...

[Перевод] Классификация покрова земли при помощи eo-learn. Часть 3 Когда нужны результаты лучше, чем "удовлетворительно" Часть 1 Часть 2 Переход зоны из зимнего сезона в летний, составлено из изображений Sentinel-2. Можно заметить некоторые отличия в типах покрова по снегу, что описывалось в прошлой статье. Читать дальше →

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

Семантический браузер или жизнь без сайтов Мысль о неизбежности перехода глобальной сети от сайтоцентристской структуры к юзероцентристской я высказал еще 2012 году (Философия эволюции и эволюция интернета или в сокращенном виде WEB 3.0. От сайтоцентризма к юзероцентризму). В этом году я попытался развить тему ново...

Блокчейн: что нам стоит PoC построить? Глаза боятся, а руки чешутся! В прошлых статьях мы разобрались с технологиями, на которых строятся блокчейны (Что нам стоит блокчейн построить?) и кейсами, которые можно с их помощью реализовать (Что нам стоит кейс построить?). Настало время поработать руками! Для реализаци...

[Из песочницы] Ограничения машинного обучения Привет, Хабр! Представляю вашему вниманию перевод статьи “The Limitations of Machine Learning“ автора Matthew Stewart. Большинство людей, читающих эту статью, вероятно, знакомы с машинным обучением и соответствующими алгоритмами, используемыми для классификации или прогнози...

Software Defined Radio — как это работает? Часть 4 Привет Хабр. В третьей части было рассказано, как получить доступ к SDR-приемнику посредством языка Python. Сейчас мы познакомимся с программой GNU Radio — системой, позволяющей создать достаточно сложную конфигурацию радиоустройства, не написав ни единой строчки кода. Д...

IronPython на стороне зла: как мы раскрыли кибератаку на госслужбы европейской страны Наши специалисты из экспертного центра безопасности всегда держат руку на пульсе и следят за появлением новых интересных и опасных угроз. Именно так в начале апреля 2019 года была обнаружена целевая атака на государственные органы Хорватии. В данном отчете рассмотрена цепо...

Изучаем MITRE ATT&CK. Mobile Matrices: Device Access. Часть 5 Обзор (Discovery) и Боковое перемещение (Lateral Movement) Ссылки на все части: Часть 1. Первоначальный доступ к мобильному устройству (Initial Access) Часть 2. Закрепление (Persistence) и Эскалация привилегий (Privilege Escalation) Часть 3. Получение учетных данных (Creden...

Бесшовный клиент-сервер Любой клиент-серверный проект подразумевает четкое разделение кодовой базы на 2 части (иногда больше) — клиентскую и серверную. Зачастую, каждая такая часть оформляется в виде отдельного независимого проекта, поддерживаемого своей командой девелоперов. В этой статье я пред...

Вейвлет-анализ.Часть 3 Введение При проведении CWT анализа средствами библиотеки PyWavelets (бесплатное программное обеспечение с открытым исходным кодом, выпущенное по лицензии MIT) возникают проблемы с визуализацией результата. Предложенная разработчиками тестовая программа по визуализации прив...

Сеть компании и MitM. Часть 1 Перехватить конфиденциальную информацию? Получить несанкционированный доступ к различным приложениям и системам? Нарушить нормальный режим работы? Все это и многое другое выполняют атаки типа Man in the Middle. Сегодня мы начинаем цикл статей, посвященный атакам «человек п...

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

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

[Из песочницы] Как Мефодий стал Анной: опыт разработки и запуска классификаторов голосовых сообщений. Часть 1 Цель и задача В серии статей рассмотрим классификаторы голосовых обращений, зачем они нужны, как их быстро вывести в продуктив. Расскажу про подходы, которые позволят сократить время от постановки задачи до запуска модели и получения бизнес-результата. По этой статье можно п...

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

Разбираем протокол пейджерных сообщений POCSAG, ч2 Привет, Habr! В первой части был рассмотрен протокол обмена пейджерными сообщениями POCSAG. Были рассмотрены цифровые сообщения, перейдем теперь к более «полноценным» сообщениям в формате ASCII. Тем более, что декодировать их интереснее, т.к. на выходе будет читаемый текст....

Когнитивные искажения при создании продукта Попытался собрать когнитивные искажения которые мешают мне принимать правильные решения при создании продукта. Возможно, кому-то пригодится. Читать дальше →

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

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

Дозиметр для Серёжи. Часть III. Народный радиометр Самой частой претензией в комментариях к прошлой моей статье была претензия в «радиофобии». Хотя я в принципе не понимаю, какой деструктивный общественный посыл может нести это «заболевание» (в отличие от той же вакционофобии или какой-нибудь аблютофобии). Наоборот, чем боль...

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

Sony WH-1000XM3 — лучшие беспроводные наушники? Этим небольшим обзором — да что там говорить, небольшим имхо — я хочу завершить небольшой цикл, предыдущая часть которого находится здесь. На самом деле я уже всё сказал, что хотел, но уважаемый Gordon01 заставил меня съездить к старому знакомому за 900 км от дома (Кирилл,...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 37. STP: выбор Root Bridge, функции PortFast и BPDU guard. Часть 1 Прежде чем начать урок, хочу сказать, что на нашем сайте теперь действует система баллов My Points. Заработанные баллы можно потратить на оплату заказов в нашем онлайн-магазине. Баллы можно заработать, участвуя в наших CCNA-тестах, посещая сайт, привлекая новых пользователей...

Программирование LibreOffice Base. Часть 3 Сегодня мы рассмотрим использование диалоговых окон при редактировании данных в LibreOffice Base (OpenOffice Base). Как мы выяснили в предыдущих сообщениях, Форма LibreOffice Base (OpenOffice Base) — это фактически экземпляр текстового редактора LibreOffice (OpenOffice) Writ...

Tic Tac Toe, часть 5: Бэкенд на С++ Boost.Beast, HTTP В этой статье рассмотрим реализацию бэкенда с применением C++ Boost.Beast библиотеки на примере синхронного сервера. Та же функциональность, что и в прошлой статье — получаем от бэкенда случайное число от 0 до 8 включительно. Оказалось, что поднимать контейнер для Beast ничу...

С Kingston в постели: необычные девайсы с чипами Kingston Слава программируемым микроконтроллерам! Их массовость и дешевизна породили целый вал «умной» электроники — и крупные бренды, и стартапы бросились цифровизировать всё, что раньше было аналоговым или вообще не было электроникой. Иной раз посмотришь на робота-пылесоса или како...

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

[Перевод] Учебник по JavaFX: расширенные макеты Как организовать и разместить GUI компоненты в приложении JavaFX, используя расширенные макеты. В предыдущей статье мы рассмотрели некоторые основные макеты JavaFX. Теперь пришло время рассмотреть остальные имеющийся макеты. Учебник по JavaFX: начало работы Учебник по Ja...

VMware NSX для самых маленьких. Часть 2. Настройка Firewall и NAT Часть первая После небольшого перерыва возвращаемся к NSX. Сегодня покажу, как настроить NAT и Firewall. Читать дальше →

[Перевод] Wolfenstein 3D: трассировка лучей с помощью WebGL1 После появления прошлым летом графических карт Nvidia RTX трассировка лучей (ray tracing) снова обрела былую популярность. За последние несколько месяцев мою ленту в Twitter заполнил бесконечный поток сравнений графики со включенным и отключенным RTX. Полюбовавшись на тако...

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

RTX-OFF / RTX-ON или включаем возможность использования трассировки лучей на старых видеокартах В данном обзоре будут рассмотрены технические нюансы возможности использования графических ускорителей, не поддерживающих трассировку лучей на аппаратном уровне, с играми, графика которых построена на новой технологии. Если кто-то не в курсе, то архитектура «Turing»» соверши...

10++ способов работать с аппаратными регистрами на С++ (на примере IAR и Cortex M) Рис. И. Кийко Всем доброго здравия! Помните наверное бородатый анекдот, а может быть и правдивую историю про то, как студента спрашивали о способе измерить высоту здания с помощью барометра. Студент привел, по-моему около 20 или 30 способов, при этом не назвав прямого(ч...

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

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

Сеть компании и MitM. Часть 2 Перехватить конфиденциальную информацию? Получить несанкционированный доступ к различным приложениям и системам? Нарушить нормальный режим работы? Все это и многое другое выполняют атаки типа Man in the Middle. Сегодня мы продолжаем цикл статей, посвященный атакам «челове...

[Перевод] F#7: Записи (Records) Итак, мы продолжаем наше путешествие к большему количеству типов F#. На этот раз мы рассмотрим типы Записей. Читать дальше →

Энергия, тепло и вода: часть вторая Рассмотрим следующий этап развития схемы умного дома из подручных средств :) (продолжение, первая статья тут). Решаемые задачи: Защита от протечек + Удалённое управление + Знать состояние ввода воды (перекрыто или открыто) Знать давление и температуру теплоносителя в кон...

Инфраструктура сборки проекта с docker На Хабре уже есть материалы про то, как настроить docker-контейнер для компиляции проекта. Например, Использование Docker для сборки и запуска проекта на C++. В этой статье, как и в предыдущей будет рассмотрен вопрос сборки проекта, но здесь я бы хотел выйти за рамки туториа...

Бэкап для Linux не пишет писем Всем привет! Сегодня хочу поведать о том, как управлять Veeam Agent for Linux с помощью командной строки, и о том, какие возможности она открывает в умелых руках программиста. На написание статьи меня подтолкнул комментарий к предыдущей статье. Перефразирую удивление поль...

[Перевод] 27 удивительных инструментов VS Code для современных JavaScript-разработчиков Visual Studio Code (его ещё называют VS Code и VSCode) — это экономичный но мощный кросс-платформенный редактор кода, выполненный в виде настольного приложения. По словам автора материала, перевод которого мы сегодня публикуем, VS Code поддерживает множество инструментов раз...

Нагрузочное тестирование с locust. Часть 3 Финальная статья об инструменте для нагрузочного тестирования Locust. Сегодня поделюсь наблюдениями, которые накопил в процессе работы. Как всегда, видео прилагается. Часть 1 — тестирование с Locust Часть 2 — продвинутые сценарии Читать дальше →

Аналитики прогнозируют спад продаж смартфонов Huawei на 24% по итогам текущего года Аналитики Strategy Analytics опубликовали отчёт, в котором попытались спрогнозировать ближайшее будущее Huawei с учётом сложившейся ситуации. Так сообщается, что в случае, если запрет США останется в силе, продажи смартфонов Huawei по итогам текущего года упадут на 24%...

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

Дж. Х. Рейнвотер «Как пасти котов» (часть вторая): все, что предстоит освоить техлиду Продолжаем делиться выдержками из руководства по выживанию для начинающих техлидов от Дж. Х. Рейнвотера. В первой серии мы рассказывали, с какими породами разработчиков руководителю обычно приходится работать; теперь попытаемся понять, что делать со всем этим зоопарком. Ор...

[Перевод] 10.3 секунды на хеш: майнинг на бортовом управляющем компьютере КА Аполлон Нам удалось восстановить Бортовой управляющий компьютер КА Аполлон. И теперь, когда у нас на руках имеется единственный в мире работающий экземпляр, мне пришла в голову идея написать для него код. Хотя мысль о добыче биткоинов с помощью компьютера из далеких 60-х казалась бе...

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

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

Фракталы в иррациональных числах. Часть 2 Часть 0: Фракталы в простых числах. Часть 1: Фракталы в иррациональных числах. В статье присутствуют Gif и контрастные картинки. У эпилептиков может случиться эпилептический припадок. Читать дальше →

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

Приложения для электронных книг на операционной системе Android. Часть 4. Игры В сегодняшней, четвёртой (предпоследней), части статьи о приложениях для электронных книг на операционной системе Android будет рассмотрена только одна, но обширная тема: игры. Краткое содержание предыдущих трёх частей статьиВ 1-ой части были подробно рассмотрены причины, п...

[recovery mode] Внутренние и вложенные классы java. Часть 1 Внутренние и вложенные классы java 02.03.2017 — 2019 год Часть 1. Начало Цель статьи: Рассказать о внутренних, вложенных, локальных, анонимных классах. Показать примеры их использования. Написать и протестировать классы в коде на java. Рассказать о свойствах этих клас...

Криптографический АРМ на базе токенов PKCS#11. Электронная подпись. Часть 2 В первой части нашего повествования мы показали как, имея на руках криптографический токен с поддержкой российской криптографии, создать запрос на получение сертификата, получить и установить сертификат на токен, проверить электронную подпись сертификата и его валидность по ...

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

JMeter — швейцарский нож тестировщика (Часть 2) Сегодня расскажу, как мы с помощью JMeter’а наладили процесс кэширования продуктовых страниц, проверили работу мобильного приложения без самого приложения и создали 2000 юзеров в системе без доступа к базе данных. Кто не в курсе, что здесь происходит, читайте первую часть ...

NVIDIA Jetson Nano: тесты и первые впечатления — часть 2, тесты AI Привет, Хабр. В первой части была рассмотрена NVIDIA Jetson Nano — плата в форм-факторе Raspberry Pi, ориентированная на производительные вычисления с помощью GPU. Настала пора протестировать плату в том, для чего она создавалась — для AI-ориентированных расчетов. Рассмо...

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

Чтоб Роскомнадзор не пришёл ВНЕЗАПНО Снова законодатели совершенствуют нам жизнь! Портал правовой информации опубликовал Постановление Правительства Российской Федерации от 13.02.2019 № 146 "Об утверждении Правил организации и осуществления государственного контроля и надзора за обработкой персональных данных"....

Как выбрать перспективные ключи для SEO на основе сценарного прогноза в Google Data Studio (+шаблон) Типичная ситуация: нужно продвинуть сайт по 800 запросам, но денег хватает только на 100. Как выбрать из общей массы фразы, которые обеспечат хороший прирост трафика и конверсий в рамках бюджета? Один из вариантов — сценарная модель прогнозирования трафика и конверсий с ис...

Следующая ступень: материнская плата ASUS ROG Maximus XI Hero (Wi-Fi) Казалось бы, совсем недавно был анонс чипсета Z370, восторженные отзывы о новом процессоре 8700K и поиск оптимальной платы для разгона, как уже пролетел год, перед нами Z390 и процессоры i9 на Coffee Lake Refresh. Снова нужно выбрать «правильную» материнку для освоения ...

Как начать программировать в Adobe Illustrator. Скрипт Expand Clipping Mask. Часть вторая Этот пост — продолжение первой части, где был представлен скрипт Expand Clipping Mask и детально описано, что и как он делает, а также попутно рассмотрены основные принципы создания подобных программ в целом. В этой части я продолжу рассказ о том, как добавить в программу но...

[Из песочницы] Оптимизация скриптов с Webpack SplitChunksPlugin В этой статье я бы хотел поделиться своим опытом по разбиению бандлов для многостраничного сайта с помощью Webpack 4. Cначала создадим для каждой страницы свою точку входа. Рассмотрим на примере 4 страниц: const path = require("path"); const PATHS = { src: path...

Немного о постобработке. Это то, что мне рекомендовал менеджер в Top3DShop, рекомендовал он мне дихлорметан (хотя там были и всякие разные, но я согласился из-за - не разрушает озоновый слой, не помню где это было написано, но на момент приобретения уже прочитал), очки - это уже от меня.Что я вам ск...

Злодейские наушники Aftershokz, или как вдохновляет и чем вдохновляется Marvel Положа руку на сердце: мне нравятся фильмы «Марвел». Пожалуй, единственный персонаж, судьба которого мне не очень интересна — Человек-Паук, но «из франшизы слов не выкинешь», так что «Вдали от дома» пришлось посмотреть. Собственно говоря, эта часть и натолкнула на размышлен...

[Перевод] Интерпретируемая модель машинного обучения. Часть 2 Всем привет. Считанные дни остаются до старта курса «Machine Learning». В преддверии начала занятий мы подготовили полезный перевод, который будет интересен как нашим студентам, так и всем читателям блога. И сегодня делимся с вами завершающей частью данного перевода. Par...

Дайджест IT событий марта (часть вторая) Заканчиваем обзор IT мероприятий этого месяца, оказавшегося неожиданно урожайным. Митапы продолжают удерживать лидерские позиции, но на этот раз их ощутимее разбавляют крупные конференции и хакатоны. Среди популярных тем — data science, Интернет вещей и машинное обучение. ...

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

Как стать оператором децентрализованного интернет-провайдера «Medium» и не сойти с ума. Часть 1 Добрый день, Сообщество! Меня зовут Михаил Подивилов. Я являюсь основателем общественной организации «Medium». Этой публикацией я начинаю серию статей, посвящённых настройке сетевого оборудования для соблюдения аутентичности при становлении оператором децентрализованного и...

VMware NSX для самых маленьких. Часть 6. Настройка VPN Часть первая. Вводная Часть вторая. Настройка правил Firewall и NAT Часть третья. Настройка DHCP Часть четвертая. Настройка маршрутизации Часть пятая. Настройка балансировщика нагрузки Сегодня мы посмотрим на возможности настройки VPN, которые предлагает нам NSX Edge. В ...

Младшенькие: обзор IP-телефонов Snom D315 и D305 Вот мы и добрались до конца линейки IP-телефонов Snom D3xx — сегодня мы рассмотрим две самые младшие, самые массовые модели, D315 и D305. Читать дальше →

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

[Перевод] Использование strict-модулей в крупномасштабных Python-проектах: опыт Instagram. Часть 2 Представляем вашему вниманию вторую часть перевода материала, посвящённого особенностям работы с модулями в Python-проектах Instagram. В первой части перевода был дан обзор ситуации и показаны две проблемы. Одна из них касается медленного запуска сервера, вторая — побочных э...

Установка и настройка Sonata Admin на Symfony 4 Приветствую всех. В данной статье поговорим об Symfony 4 и Sonata Admin. В процессе установки я столкнулся с массой неточностей в документации и сама документация была раскидана по нескольким местам. Здесь я рассмотрю весь процесс, начиная от создания проекта и заканчивая а...

Открытый вебинар «Разработка высоконагруженных систем на PHP» Добрый вечер! В преддверии старта курса «Backend-разработчик на PHP» мы традиционно провели открытый урок. На нём поговорили о высоконагруженных системах, масштабировании, архитектуре. Детально рассмотрели HighLoad, а также основные подходы и тактики при разработке высоконаг...

Почему так сложно выбрать, какое кино посмотреть (и нейросети эту проблему не решат) Знакома ли вам ситуация: решили провести вечер дома и посмотреть какое-нибудь кино в хорошей компании, но, попытавшись определиться, какое — провели за выбором столько времени, что на кино его не осталось — или пропало желание — или, всё-таки, начали что-то смотреть, но наст...

C/C++ из Python (CFFI, pybind11) Продолжаем тему как вызывать C/C++ из Python3. Теперь используем библиотеки cffi, pybind11. Способ через ctypes был рассмотрен в предыдущей статье. Читать дальше →

Жизненный цикл статьи на Хабре: пишем хабрапарсер. Часть вторая Привет Хабр! В первой части пятничного анализа была рассмотрена методика сбора некоторой статистики этого замечательного сайта. Изначально не было плана делать продолжение, но в комментариях возникли интересные мысли, которые захотелось проверить. Например, какие статьи име...

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

[Перевод] Лямбды: от C++11 до C++20. Часть 2 Привет, хабровчане. В связи со стартом набора в новую группу по курсу «Разработчик C++», делимся с вами переводом второй части статьи «Лямбды: от C++11 до C++20». Первую часть можно прочитать тут. В первой части серии мы рассмотрели лямбды с точки зрения C++03, C++11 и C+...

Разработка Unix подобной OS — Драйверы символьных устройств (8) В предыдущей статье мы ввели многозадачность. Сегодня пришло время рассмотреть тему драйверов символьных устройств. Конкретно сегодня мы напишем драйвер терминала, механизм отложенной обработки прерываний, рассмотрим тему обработчиков верхних и нижних половин прерываний. ...

Как я наводил порядок в проекте, где лес прямых рук (настройки tslint, prettier, etc) И снова здравствуйте. На связи Омельницкий Сергей. Сегодня я поделюсь с Вами одной из своих головных болей, а именно — что делать, когда проект пишут много разноуровневых программистов на примере angular приложения. Так повелось, что я долгое время работал только со своей к...

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

Деревянные игрушки, часть шестая — 1992 Игры начинают становиться всё менее деревянными, в некоторых случаях начинает проявляться оказуаливание — упор на графику и упрощение игрового процесса в сравнении с предыдущими играми этого жанра. В минимальных требованиях появляется «4MB RAM». Но я про всё это не особо в к...

Резервное копирование, часть 3: Обзор и тестирование duplicity, duplicaty, deja dup В данной заметке рассмотрены средства резервного копирования, которые выполняют резервное копирование путем создания архивов на резервном сервере. Из тех, которые удовлетворяют требованиям — duplicity (к которому есть приятный интерфейс в виде deja dup) и duplicati. Еще одн...

LockerGoga: что именно произошло с Norsk Hydro Фото, источник — www.msspalert.com В ночь с понедельника на вторник (примерно в 23:00 UTC 18.03.2019) специалисты Norsk Hydro заметили сбои в функционировании сети и ряда систем. Вскоре стало понятно, что сбои вызваны массовым заражением систем шифровальщиком, которое очен...

5 причин, по которым ИТ-директорам в 2019 году стоит рассмотреть гиперконвергентные платформы Если на вопрос «Что бизнес ожидает от ИТ в 2019 году?» попытаться ответить одним словом, то лучше всего подойдут варианты «революция» или …

[Перевод] Зачем использовать python -m pip И снова здравствуйте. В преддверии старта нового потока по курсу «Machine Learning», хотим поделиться переводом статьи, которая имеет довольно косвенное отношение к ML, но наверняка будет полезна подписчикам нашего блога. Мариатта — разработчик из Канады, спросила в Тви...

[Перевод] Представляем шрифт Cascadia Code Cascadia Code наконец-то здесь! Вы можете установить его непосредственно со страницы релизов в нашем репозитории на GitHub или автоматически получить его в следующем обновлении Windows Terminal. Постойте, что за «Cascadia Code»? Cascadia Code был представлен в мае этого г...

Уязвимость блокировщика экрана в Astra Linux Special Edition (Смоленск) В данной статье мы рассмотрим очень одну интересную уязвимость в «отечественной» операционной системе Astra Linux, и так, начнем… Читать дальше →

[Что не так с GraphQL]… И как с этим бороться В прошлом материале, мы рассмотрели неудобные моменты в системе типов GraphQL. А теперь мы попробуем победить некоторые из них. Всех заинтересованных, прошу под кат. Читать дальше →

[Из песочницы] Руководство Google по стилю в C++ Часть 1. Именование Часть 2. Комментарии … Все мы при написании кода пользуемся правилами оформления кода. Иногда изобретаются свои правила, в других случаях используются готовые стайлгайды. Хотя все C++ программисты читают на английском легче, чем на родном, приятнее иметь...

Изучаем Adversarial Tactics, Techniques & Common Knowledge (ATT@CK). Enterprise Tactics. Часть 11 Командование и управление (Command and Control) Ссылки на все части: Часть 1. Получение первоначального доступа (Initial Access) Часть 2. Выполнение (Execution) Часть 3. Закрепление (Persistence) Часть 4. Повышение привилегий (Privilege Escalation) Часть 5. Обход защиты (Def...

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

[Перевод] Дозвониться в глубокий космос: как НАСА ускоряет межпланетную связь «Уже практически некуда улучшать технологию, работающую на радиочастотах. Простые решения заканчиваются» 26 ноября 2018 года в 22:53 мск у НАСА это снова получилось – зонд InSight совершил успешную посадку на поверхность Марса после входа в атмосферу, спуска и посадочных м...

Феномен XY: как избежать «неправильных» проблем Задумывались ли вы когда-нибудь о том, как много часов, месяцев и даже жизней было впустую потрачено на решение «неправильных» проблем? Читать дальше →

[Из песочницы] 10 самых распространенных ошибок Spring Framework Привет, Хабр! Представляю вашему вниманию перевод статьи «Top 10 Most Common Spring Framework Mistakes» автора Toni Kukurin. Spring, вероятно, один из самых популярных Java-фреймворков, а также могучий зверь для укрощения. Хотя его базовые концепции довольно легко понять, д...

Эволюция создания веб-приложений на Java История развития построения веб-приложений на языке программирования Java с примерами их использования на временном промежутке от появления спецификации сервлетов до сегодняшнего дня. Читать дальше →

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

Выписки из Росреестра через ФГИС ЕГРН и python. Часть 1 — образец Дешевые выписки, что может быть лучше ? У Романа Андреевича Карцева есть неплохой монолог про раков вчерашних по 5 руб. и сегодняшних по 3-и. Будем считать, что прошлый пост был про раков по 5 руб. Так как выписка из ЕГРН по 300 руб., хоть и автоматизированная не каждому по...

Tesla Cybertruck: Хайп или Будущее? Весь мир без конца обсуждает один автомобиль — Tesla Cybertruck. Это, можно сказать, новое творение Илона Маска поставило всю планету на уши. Казалось бы, классический пикап, который должны были представить не может так удивить вселенную. Но у Илона был план хайпануть ...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 9. Физический мир свитчей. Часть 2 Итак, мы рассмотрели, как настроить сеть на компьютере. Что же касается свитча, напомню, что он является устройством 2 уровня модели OSI, а мы должны сконфигурировать IP-адрес, который относится к 3-му уровню. Для этого мы используем управление IP-адресом и переходим к интер...

По прогнозу IDC, в этом году расходы на 3D-печать достигнут 13,8 млрд долларов Специалисты аналитической компании IDC попытались спрогнозировать расходы на 3D-печать в текущем году. В подготовленном ими прогнозе сказано, что в 2019 году расходы на 3D-печать, включая оборудование, расходные материалы, программное обеспечение и сервисы, достигнут 1...

[Перевод] Отец создал бионический протез руки для сына с помощью 3D-принтера и X-Box Сол Смит-Райан в студии ITV News. Статья ITV News переведена для вас Top 3D Shop. Отец ребёнка, руку которого пришлось ампутировать, сделал решительный шаг и создал бионическую конечность для сына, применив с помощью консоли XBox и 3D-принтера. Когда родился Сол Смит-Райа...

[Перевод] Как работает рендеринг 3D-игр: обработка вершин В этом посте мы рассмотрим этап работы с вершинами. То есть нам придётся снова достать учебники по математике и вспомнить линейную алгебру, матрицы и тригонометрию. Ура! Мы выясним, как преобразуются 3D-модели и учитываются источники освещения. Также мы подробно объясним р...

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

Заметки фитохимика. Картофель. Часть третья. «Бульба Фугу» или СОЛАНИН … картофелине вполне по силам справится с человеком. неизвестный народный источник Самой распространенной «картофельной угрозой» считается соланин, который «образуется в позеленевшем картофеле» и очередная фитозаметка посвящена именно ему, последствиям его употребления, а т...

[Из песочницы] Общее представление об архитектуре Clean Swift Привет, читатель! В этой статье я расскажу об архитектуре iOS приложений — Clean Swift. Мы рассмотрим основные теоретические моменты и разберем пример на практике. Читать дальше →

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

[Перевод] Потоки Redis как чистая структура данных Новая структура данных Redis 5 под названием «потоки» (streams) вызвала живой интерес в сообществе. Как-нибудь я поговорю с теми, кто использует потоки в продакшне, и напишу об этом. Но сейчас хочу рассмотреть немного другую тему. Мне начинает казаться, что многие представля...

По прогнозу Digitimes Research, мировые поставки серверов в этом квартале увеличатся на 12,8% Аналитики Digitimes Research попытались спрогнозировать ситуацию на рынке серверов. Согласно их ожиданиям, в третьем квартале 2019 года поставки серверов вырастут по сравнению со вторым кварталом на 12,8%. При этом в годовом исчислении показатели останутся на прежнем ур...

[Перевод] За какими трендами UX-дизайна следить в 2020 году Иллюстрация Ouch.pics Мы живём в интересное время. Никогда всё вокруг не менялось так быстро. Можете хотя бы представить пять лет назад, как просите железку купить вам покушать? Ничто в нынешнем мире долго не остаётся неизменным. Это связано с бурным ростом стартапов: все ...

Что мы будем есть в 2050 году Не так давно мы публиковали полусерьёзный прогноз «За что вы будете платить через 20 лет». Это были наши собственные ожидания, базировавшиеся на развивающихся технологиях и научных достижениях. Но в США пошли дальше. Там прошёл целый симпозиум, посвящённый в том числе прогн...

Sony Xperia 1 в наших руках на MWC 2019 Мы побывали на презентации этого устройства, детально рассмотрели его, сфотографировали и готовы поделиться своими впечатлениями.

Как ускорить работу с API на языке R с помощью параллельных вычислений, на примере API Яндекс.Директ (Часть 2) В прошлой статье я рассказал о том, что такое многопоточность, и привёл примеры её реализации на языке R при работе с API Яндекс.Директ с помощью пакетов doSNOW, doParallel и конструкции foreach. Данная статья является продолжением, но может быть рассмотрена как автономное р...

Изучаем Adversarial Tactics, Techniques & Common Knowledge (ATT@CK). Часть 6 Часть 6. Получение учетных данных (Credential Access) Ссылки на все части: Часть 1. Получение первоначального доступа Часть 2. Выполнение Часть 3. Закрепление Часть 4. Повышение привилегий Часть 5. Обход защиты Заполучив учетные данные злоумышленник получает доступ или даж...

Электромобили из 90ых. Часть 1. Братья Ситроен и Пежо Источник Еще в девяностых годах двадцатого века автомобильный концерн PSA разработал и выпустил несколько малосерийных элекромобилей, вполне пригодных для городских нужд, с пробегом до 100км, возможностью зарядки от простой бытовой розетки и даже от сети быстрых зарядок те...

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

[Перевод] Интерпретируемая модель машинного обучения. Часть 1 Всем привет. До старта курса «Machine Learning» остается чуть больше недели. В преддверии начала занятий мы подготовили полезный перевод, который будет интересен как нашим студентам, так и всем читателям блога. Начнем. Пора избавиться от черных ящиков и укрепить веру в ма...

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

Деревянные игрушки, часть вторая — 1986-1988 Продолжая воспоминания про деревянные игрушки. Играть я на компьютерах начал где-то в районе 1988-1989. Первые несколько лет — на работе у родителей друзей, а дальше уже начали и по домам компьютеры появляться. Свой, правда, у меня появился относительно поздно, где-то в 1997...

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

Стартовала предрегистрация на MMORPG 4Story - Age of Heroes на Android 4Story - Age of Heroes — это спин-офф корейской MMORPG 4Story. Последняя — довольно популярная игра в жанре, развивающаяся с 2007 года. Age of Heroes пока планируется только для Google Play. Разработчики обещают, что эта версия унаследует все особенности предшественника. Пл...

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

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 7. F.A.Q Сегодня мы рассмотрим ответы на часто встречающиеся вопросы, которые касаются предыдущих видеоуроков. С момента первой публикации прошло уже около года, и множество людей оставили свои комментарии под моими видеоуроками на канале YouTube. Я внимательно читал все ваши коммент...

[Перевод] Искусственный интеллект Horizon Zero Dawn: индивидуальное поведение В первой части исследования ИИ Horizon Zero Dawn я рассказал, как игра создаёт стада управляемых искусственным интеллектом животных-машин. Для этого требуется сложная система иерархии агентов, в которой каждая машина может принимать решения о том, как вести себя, пользуясь п...

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

Network Maps. Краткий обзор софта для построения карт сети 0. Вводная, или немного оффтопаДанная статья родилась только потому, что крайне трудно найти сравнительные характеристики подобного программного обеспечения, а то и просто список, в одном месте. Приходится перелопатить кучу материала, чтобы прийти хоть к какому-то выводу. ...

[Из песочницы] Абстрактная фабрика на пальцах Написать данную статью меня заставили две причины. Совсем недавно я познакомился с паттерном Абстрактная фабрика. Как говорится – «Не умеешь сам, научи товарища». Известно, что один из лучших способов закрепления материала – это объяснение кому-либо ранее изученного. Вторая ...

[recovery mode] 10 ошибок юного PO (заключение) И теперь 3 главных ошибки. Если их совершать снова и снова, боюсь, что из юного PO можно перейти в роль бывшего PO. Начало тут и тут. Читать дальше →

DisplayPort-LVDS Доброго времени суток, Хабр! И снова хочу предложить Вашему вниманию проект аппаратного конвертера, но теперь уже DisplayPort-LVDS построенный на одной (!) микросхеме Texas Instruments. Читать дальше →

Star Wars: Рыцари старой Республики Ave! Дело в том, что я довольно долгое время провела в больнице, и во время лечения начала играть в Star Wars: Knights of the Old Republic на планшете, чтобы хоть как-то отвлечься. Немного позже наткнулась на статью с несколькими идеями Криса Авеллона о сюжете 3-й части (п...

Dagger 2 – это элементарно (Часть 2) Предыдущая часть Содержание Внедрение методов и полей Отложенная инициализация в dagger Модули dagger. Когда dagger вас не понимает Аннотация Named. Несколько экземпляра одного типа Внедрение методов и полей Читать дальше →

Анализ производительности ВМ в VMware vSphere. Часть 2: Memory Часть 1. Про CPU В этой статье поговорим про счетчики производительности оперативной памяти (RAM) в vSphere. Вроде бы с памятью все более однозначно, чем с процессором: если на ВМ возникают проблемы с производительностью, их сложно не заметить. Зато если они появляются, с...

[Перевод] Одинадцать скрытых жемчужин Java 11 Java 11 не представил никаких новаторских функций, но содержит несколько жемчужин, о которых вы могли ещё не слышать. Уже смотрели на новинки в String, Optional, Collection и других рабочих лошадках? Если нет, то вы пришли по адресу: сегодня мы рассмотрим 11 скрытых жемчужин...

[Перевод] Представляем «CLI Builder»‎-ы В этой статье мы рассмотрим новый API Angular CLI, который позволит вам расширять существующие возможности CLI и добавлять новые. Мы обсудим, как работать с этим API, и какие существуют точки его расширения, позволяющие добавлять новый функционал в CLI. Читать дальше →

Лейся, Fanta: новая тактика старенького Android-трояна Однажды вы захотите продать что-нибудь на Avito и, выложив подробное описание своего товара (например, модуль оперативной памяти), получите вот такое сообщение: Читать дальше →

[Из песочницы] 7 рекомендаций по анализу топ-70 параметров роста сайта в 2019 году в «Яндексе» В 2018 г. вышел аналитический отчёт от компании «Ашманов и партнёры». Там много страниц. Разберём один график. Ссылка на отчёт Читать дальше →

График в браузере для Arduino и STM32 Всем привет. Продолжаю развивать свой проект по визуализации трендов данных, добавил возможность просмотра в браузере в реальном времени. Кому интересно прошу. Читать дальше →

SciPy, оптимизация с условиями SciPy (произносится как сай пай) — это основанный на numpy математический пакет, включающий в себя также библиотеки на C и Fortran. С SciPy интерактивный сеанс Python превращается в такую же полноценную среду обработки данных, как MATLAB, IDL, Octave, R или SciLab. В это...

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

Невангеры: Spice must flow Доброго времени суток. В этой статье машинки-мехосы ищут пряность, во тьме зажигаются светлячки и пробуждается червь пустыни. Пятая версия прототипа Невангеров — механика переноса цвета и прочие нововведения. Часть первая: Невангеры Часть вторая: Road is changed Читать д...

Цивилизация Пружин, 1/5 Часть 1. Золотое "Ку". Лет в шесть мне попался в руки дедовский справочник[50] по грузовым автомобилям середины 20-го века. Добротный, напечатанный на гладкой плотной бумаге раритет. Единственное, что вообще осталось на память от деда после распада страны, войн и переездов....

VMware NSX для самых маленьких. Часть 3. Настройка DHCP Часть первая. Вводная Часть вторая. Настройка правил Firewall и NAT DHCP – сетевой протокол, позволяющий вашим виртуальным машинам автоматически получать IP-адрес и другие параметры, необходимые для работы в сети TCP/IP. В NSX Edge есть три опции настроек DHCP: 1) DHCP p...

[Перевод] Тестирование инфраструктуры как код с помощью Pulumi. Часть 2 Всем привет. Сегодня делимся с вами заключительной частью статьи «Тестирование инфраструктуры как код с помощью Pulumi», перевод которой подготовлен специально для студентов курса «DevOps практики и инструменты». Тестирование развертывания Рассмотренный стиль тестирования —...

Samsung снова отложила запуск Galaxy Fold Официальный представитель Samsung Electronics заявил, что график старта продаж складного смартфона Galaxy Fold еще не определен, но он будет объявлен «через несколько недель». ***

[Перевод] До Netscape: забытые веб-браузеры начала 1990-х Кто-нибудь помнит Erwise? Viola? Cello? Давайте вспоминать. Когда в 1980-м Тим Бернерс-Ли прибыл в ЦЕРН, знаменитую европейскую лабораторию физики частиц, его наняли для обновления контрольных систем нескольких ускорителей частиц. Но изобретатель современной веб-страницы п...

SamsPcbGuide, часть 10: Технологии, пайка бессвинцовых компонентов Данная статья – первая статья о технологиях сборки печатных плат. Последний семинар от PCB SOFT был посвящён проектированию, обеспечивающему технологичность изготовления печатной платы (англ. DFM, design for manufacture). Был поднят вопрос о целесообразности реболлинга бессв...

[Перевод] 7 привычек высокоэффективных программистов Начинающие программисты тратят много времени, набирая знания, необходимые для прохождения интервью. Они решают задачи и улучшают свои резюме. Но самое интересное начинается после того, как программист получает вожделенную должность — в каком-нибудь стартапе, в Google, в Amaz...

Методы оптимизации кода для Redd. Часть 2: некэшируемая память и параллельная работа шин В прошлой статье мы выяснили, что кэш — это безусловно полезная штука, но применительно к контроллерной логике он иногда создаёт трудности. В частности, он вносит непредсказуемость длительности импульсов либо иных задержек при программном формировании временных диаграмм. Ну,...

[Перевод] Отличия LabelEncoder и OneHotEncoder в SciKit Learn Если вы недавно начали свой путь в машинном обучении, вы можете запутаться между LabelEncoder и OneHotEncoder. Оба кодировщика — часть библиотеки SciKit Learn в Python и оба используются для преобразования категориальных или текстовых данных в числа, которые наши предсказате...

[Перевод] 10 лучших JavaScript библиотек для визуализации данных на графиках и диаграммах Есть в графиках что-то магическое. Изгиб кривой мгновенно раскрывает всю ситуацию — историю развития эпидемии, паники или периода процветания. Эта линия просвещает, пробуждает воображение, убеждает. ― Генри. Д. ХаббардОбъемы данных, с которыми нужно работать, постоянно увели...

Пьеса для механического руководителя Рассмотрим классический сюжет, многие из нас уже сами успели побывать на этой сцене… Директор Менеджер Тимлид Разработчик HR Директор: Коллеги, я собрал вас, чтобы обсудить ситуацию с набором на позицию «разработчик front-end». Читать дальше →

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

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

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

[Перевод] Классификация покрова земли при помощи eo-learn. Часть 2 Классификация покрова земли при помощи eo-learn. Часть 2 Часть 1 Переходим от данных к результатам, не покидая рамки своего компьютера Стек изображений небольшой зоны в Словении, и карта с классифицированным покровом земли, полученная, используя методы, описанные в статье. ...

[Из песочницы] Иследование современного Malware Cerberus под Android На носу уже 2020 год и сегодня мы имеем уже версию Android 9.0 Pie, где компания Google бьет себе в грудь и говорит что их продукт защищен. Но злодеи не дремлют и создают свои вредоносы для Android. Случайным образом мне попался на руки обфусцированный apk файл, который ...

Service Level Agreement: пишем SLA для… других, или заключение SLA с Оператором связи Уверен, что многие хабражители хоть раз в жизни занимались вопросом обеспечения услугами связи для какой нибудь конторы или компании (собственное жилище тоже считается), все мы когда-то, увы не всегда вдумчиво, «подмахивали» договор на услуги связи, надеясь, что все будет хо...

[recovery mode] Промышленный интернет вещей: рассказываем об успешных кейсах В следующем году число подключенных к интернету устройств вырастет до 34 миллиардов, при этом большую часть составят «умные» объекты для бизнеса и промышленности. А к 2021 году инвестиции в развитие только промышленного интернета вещей» (IIoT) достигнут шести триллионов долл...

[Перевод] RabbitMQ: отказоустойчивость и высокая доступность в кластерах Отказоустойчивость и высокая доступность — большие темы, так что посвятим RabbitMQ и Kafka отдельные статьи. Данная статья о RabbitMQ, а следующая — о Kafka, в сравнении с RabbitMQ. Статья длинная, так что устраивайтесь поудобнее. Рассмотрим стратегии отказоустойчивости, ...

ТЕСТ:​ ​​«Чем это вы тут занимаетесь?». Угадайте профессию по её краткому описанию Чем стремительнее развивается мир, тем быстрее появляются новые профессии. Кстати, пока вы это читаете, возможно, где-то впервые создаётся вакансия какого-нибудь котомейкера, что бы это ни значило. Некоторые профессии, особенно те, что появились не так давно в digital-сфере ...

STM32 + PPP + GSM + LwIp + TLS 1.2 Недавно пришлось снова поднять PPP на STM32 Первая часть Задача усложнилась обязательным требованием, использовать TLS 1.2 и отправлять данные по MQTT Напомню, что MQTT и TLS находятся выше TCP (гуглим osi) Беглый поиск выдал скудную таблицу результатов Amazon FreeRTOS о...

Intel планирует обсудить интегрированную графику Gen11 на выставке GDC 2019 По свежим данным Intel собирается использовать GDC 2019 для подробного рассмотрения новой графической архитектуры и "инновационных функций" интегрированной графики одиннадцатого поколения. Подробнее об этом читайте на THG.ru.

Улучшаем работу Wi-Fi. Часть 3. Размещение точек доступа Обычно, когда говорят, что можно повысить качество работы чего-либо, то имеют в виду внедрение каких-либо новинок, обновлений, в общем всего того, что связано с приобретением новой техники. Однако в погоне за техническими новинками иногда упускаются такие важные вещи как ус...

Упрощенный доступ к данным внутренней FAT12 для STM32 В предыдущей статье был рассмотрен вариант использования микроконтроллера STM32F103C8T6 как flash накопителя с внутренней файловой системой FAT12. Теперь можно рассмотреть, каким образом получить данные из нашей внутренней файловой системы. К примеру нам необходимо хранить н...

[Перевод] Легендарный Intel Core i7-2600K: тестирование Sandy Bridge в 2019 году (часть 2) Часть 1 → Часть 2 → Часть 3 Оборудование для тестирования В соответствии с нашей политикой тестирования процессора, мы берем материнскую плату премиум-класса, с подходящим сокетом, и оснащаем систему достаточным объемом памяти, работающей на максимальной поддерживаемой прои...

[Перевод] 26 рекомендаций по использованию типа var в Java The Java Local Variable Type Inference (LVTI) или кратко — тип var (идентификатор var — это не ключевое слово, а зарезервированное имя типа) был добавлен в Java 10 с помощью JEP 286: Local-Variable Type Inference. Являясь 100% функцией компилятора, она не влияет на байт-код...

Фотоаппарат на дискетах: 8 интересных фактов о Sony Mavica MVC-FD85 (много картинок) Меня раньше всегда забавляло, что в старой фантастике люди далёкого будущего продолжают пользоваться старыми носителями информации. Космические корабли бороздят просторы далёких галактик, но на Земле и в космосе всё ещё используют дискеты или магнитные ленты. А теперь пре...

Nixie clock на индикаторах ИН-18 Всем привет. Наверное, многие слышали про часы на газоразрядных индикаторах. В этой статье постараюсь рассказать про процесс изготовления своими руками таких часов. Читать дальше →

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

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

Техника избежания неопределённого поведения при обращении к синглтону В статье рассмотрены причины возникновения и способы избежания неопределённого поведения при обращении к синглтону в современном c++. Приведены примеры однопоточного кода. Ничего compiler-specific, всё в соответствии со стандартом. Читать дальше →

Эксплуатация Microsoft Edge от CVE до RCE на Windows 10 В рамках данной статьи мы достаточно подробно рассмотрим процесс написания эксплоита под уязвимость в Microsoft Edge, с последующим выходом из песочницы. Если вам интересно узнать, как выглядит этот процесс, то welcome под кат! Читать дальше →

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

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

Изучаем MITRE ATT&CK. Mobile Matrices: Device Access. Часть 4 Обход защиты (Defense Evasion) Ссылки на все части: Часть 1. Первоначальный доступ к мобильному устройству (Initial Access) Часть 2. Закрепление (Persistence) и Эскалация привилегий (Privilege Escalation) Часть 3. Получение учетных данных (Credential Access) Способы обхода ...

[Перевод] F#8: Разграниченные/размеченные объединения(Discriminated Unions) Итак, наше путешествие F # продолжается. Мы рассмотрели некоторые основные типы строительных блоков, такие как записи / кортежи, теперь пришло время взглянуть на размеченные объединения. Читать дальше →

Мультиязычные приложения в Angular В этой статье рассмотрим как можно быстро перевести ваш Angular проект на мультиязычный режим работы и какие есть для этого утилиты. Читать дальше →

[Перевод] Детальный разбор новых возможностей React 16+, часть 1: общие сведения Сегодня мы представляем вам первую часть перевода этого большого материала. Он посвящён детальному разбору новых возможностей React, которые появились в этой библиотеке начиная с версии 16. Автор этого материала уже 5 лет занимается программированием. В прошлом он был дизайн...

[recovery mode] 10 ошибок юного PO (часть II) Вторая часть с моими ошибками, первая тут.  Напомню, что я владелец продукта в команде, состоящей исключительно из разработчиков, и мы делаем IT-платформу для управления партнерскими сетями АЗС.  4. Ошибка четыре. Bus-фактор: то, что сначала казалось многим ошибкой, а по ф...

[Перевод] Топ-5 JS-фреймворков для фронтенд-разработки в 2020 году. Часть 2 Публикуем вторую часть перевода материала, посвящённого пятёрке лучших JavaScript-инструментов для разработки клиентских частей веб-проектов. В первой части речь шла о библиотеке React и о фреймворке Angular. Здесь мы обсудим Vue, Ember и Backbone. Читать дальше →

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

Тест и обзор Honor 10i: камерофон с драгоценными переливами Что за модель Honor 10i, которую Huawei направленно продвигает в России? CHIP достался в руки один из этих телефонов, и мы хорошенько рассмотрели его со всех сторон.

К вопросу о преобразованиях и прочих операциях Синяя Гусеница: А ну нас-то не собьешь. Мы себе сидим, знаем: ждут нас превращения. А что? А ничего! Сидим, курим, ждем… Алиса- кукла: Чего? Синяя Гусеница: Чего, чего! Превращений. Дом — в дым, дым- в даму, а дама — в маму. Вот так-то. Не мешайте, не заскакивайте вперед, а ...

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

Путеводитель по программе JPoint 2019 Последний месяц зимы подходит к концу, и просыпается здоровое желание сходить на какую-нибудь большую Java-конференцию. Благо, всего месяц остался до JPoint 2019 — международной Java-конференции, которая пройдёт в начале апреля в Москве. Программа почти стабилизировалась, и ...

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

Ядро Linux 5.1 — что известно об изменениях Юбилейная версия ядра Linux 5.0 вышла в начале марта. Но работа над kernel 5.1 уже ведется. В этом материале мы рассмотрим ряд нововведений, которые стоит ждать в этой версии. Читать дальше →

Julia: пользовательские типы В этой статье рассмотрим добавление в программу на Julia пользовательского типа данных и перегрузку стандартных функций для удобной работы с новым типом. Читать дальше →

Zabbix Summit 2019: что ждать в этом году С 11 по 12 октября этого года в Риге состоится ежегодный, девятый по счету, саммит компании Zabbix. Как обычно, программа конференции будет максимально разнообразной — не только доклады, но и много других интересных мероприятий. Давайте рассмотрим поближе. Читать дальше →

Apache, ViewState&Deserialisation В данной статье рассмотрим уязвимость на основе подмены сериализованного Java-объекта ViewState и метод её эксплуатации на примере web-приложения виртуальной машины с HackTheBox, использующей технологию Apache MyFaces. Читать дальше →

PostGIS и JPA PostGIS — открытое программное обеспечение, добавляющее поддержку географических объектов в реляционную базу данных PostgreSQL. В этой небольшой статье будет рассмотрено использование его в Java. В частности — задача нахождения географических объектов по их координатам. Ч...

[Из песочницы] Гнев, торг и депрессия при работе с InfluxDB Если использовать БД временных рядов (timeseries db, wiki) как основное хранилище для сайта со статистикой, то вместо решения задачи можно получить много головной боли. Я работаю над проектом, где используется такая база, и иногда InfluxDB, о которой пойдет речь, преподнос...

[Перевод] Как написать смарт контракт на WebAssembly в сети Ontology? Часть 2: С++ В этой статье мы разберем на двух примерах, как написать смарт контракт на языке C++, используя WASM на основе блокчейн сети Ontology. Сегодня, после нескольких месяцев стабильной работы в тестовом режиме, Ontology запустила WASM в основной сети, что позволяет безболезненн...

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

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

Apple снова улучшает iOS — в системе появились новые анимодзи В вышедшей вчера вечером iOS 12.2 beta 2 все-таки нашлось нововведение. Это не новые возможности в настройках, не улучшенная автономность и даже не обновленный дизайн какой-нибудь стандартной иконки... Это новые Animoji.

Байт-машина для форта (и не только) по-индейски (часть 3) Наступил год 2019. Новогодние праздники подходят к концу. Самое время начать вспоминать байты, команды, переменные, циклы… Что-то я все уже забыл с этими праздниками. Придется вспоминать вместе! Сегодня сделаем интерпретатор для нашей байт-машины. Это третья статья, первы...

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

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

Как Иван метрики DevOps делал. Объект влияния Прошла неделя с тех пор как Иван в первый раз задумался над метриками DevOps и понял, что управлять с их помощью надо временем поставки продукта (Time-To-Market). Даже на выходных он думал про метрики: «Ну и что, что я измерю время? Что оно мне даст?» Действительно, что да...

MVCC-3. Версии строк Итак, мы рассмотрели вопросы, связанные с изоляцией, и сделали отступление об организации данных на низком уровне. И наконец добрались до самого интересного — до версий строк. Заголовок Как мы уже говорили, каждая строка может одновременно присутствовать в базе данных в не...

Болен-здоров Часть 1. До болезни 2008 год. Мне 26 лет. Я основатель небольшой успешной организации, которая стремительно набирает обороты. Женат. Сыну 2 года. Мой образ жизни по отношению к семейным ценностям, если не вдаваться в подробности, ужасен. В течение года наблюдаю перепады про...

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

[Из песочницы] Раскрытие номера телеграм v.2 — Социальная инженерия Предисловие Сам способ раскрытия номера — есть совокупность одной технической возможности самого клиента и применения социальной инженерии (СИ). Вообще, эту функцию уже описывали ранее на Хабре, аж в 2016 году — ссылочка. Автор уже было уловил «месседж» и хотел рассказать з...

HolyJS 2019: Разбор задач от компании SEMrush (Часть 2) Это вторая часть разбора задач от нашего стенда на конференции HolyJS, прошедшей в Санкт-Петербурге 24-25 мая. Для большего контекста рекомендуется сначала ознакомиться с первой частью настоящего материала. А если Countdown Expression уже пройден, то добро пожаловать на сл...

[Перевод] MVC в Unity со Scriptable Objects. Часть 2 Продолжение цикла статей от Cem Ugur Karacam (часть 1 можно прочитать здесь). В этот раз мы начнем с того, что создадим несколько представлений для отображения объекта инвентаря и панель информации для отображения параметров объекта. Этакий примитивный инвентарь. Затем сос...

[Из песочницы] Как я не смог включить MacBook из-за удаления TeamViewer Вчера я столкнулся с совершенно неожиданным стечением обстоятельств во время очередного обновления MacOS. Я вообще очень люблю обновления ПО, всегда хочется посмотреть на новые возможности той или иной программы. Когда летом я увидел, что можно скачать и поставить MacOS 10...

[Из песочницы] Пишем redux по SOLID В данном посте мы коснемся написания action'ов и reducer'а. Для начала рассмотрим типичный 'flow', в котором мы выполняем следующие операции (далее переработаем все так, чтобы наш код отвечал принципам SOLID). Читать дальше →

3CX выпускает новые SIP-софтфоны для iOS и Android со сквозным шифрованием голоса За прошедшую неделю произошли замечательные события — мы выпустили новые приложения для Android и iOS с «настоящим» шифрованием голоса, кстати, включенным по умолчанию. Кроме шифрования, оба приложения получили ряд интересных возможностей. Давайте рассмотрим их подробнее. Чи...

«33 слова о дизайне»: кто и зачем снимает кино о дизайне в России Школа дизайна Bang Bang Education начала сбор средств на фильм-исследование «33 слова о дизайне», который будет посвящен современному дизайну в России. В нем каждый из 33 героев за две минуты попытается ответить на вопрос, что такое русская культура и эстетика. Основную сумм...

Web. Решение задач с r0от-мi. Часть 1 Данная статья содержит решение заданий, направленных на эксплуатацию web-узвимостей. Здесь рассмотрим задачи, затрагивающие backup файлы, непроиндексированные директории, http заголовки, редирект и command injection. Организационная информацияСпециально для тех, кто хочет ...

Монитор качества воздуха Honeywell HAQ Привет, Хабр! Решил я снова поучаствовать в тестировании товаров из ассортимента «Даджета», и вот перед вами — рассказ о мониторе качества воздуха HAQ фирмы Honeywell. Читать дальше →

[Из песочницы] Датчик температуры и влажности на ардуино с отправкой и отрисовкой графика (Часть1) Основной задачей проекта является мониторинг температуры в теплице удаленной от дома на 11-15 метров. Без возможности организации прокладки UTP и питания до нее. Читать дальше →

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

Анализ производительности ВМ в VMware vSphere. Часть 3: Storage Часть 1. Про CPU Часть 2. Про Memory Сегодня разберем метрики дисковой подсистемы в vSphere. Проблема со стораджем – самая частая причина медленной работы виртуальной машины. Если в случаях с CPU и RAM траблшутинг заканчивается на уровне гипервизора, то при проблемах с ди...

.Net Meetup в Райффайзенбанке 28/11 Приглашаем на .Net Community Meetup 28 ноября. На митапе поговорим о проектировании desktop-приложений и рассмотрим вызовы, с которыми сталкивается любая компания на пути к микросервисам. Ждём вас в офисе Райффайзенбанка в Нагатино! Читать дальше →

Вижу, значит существую: обзор Deep Learning в Computer Vision (часть 2) Продолжаем постигать современную магию (компьютерное зрение). Часть 2 не значит, что нужно сначала читать часть 1. Часть 2 значит, что теперь всё серьёзно — мы хотим понять всю мощь нейросетей в зрении. Детектирование, трекинг, сегментация, оценка позы, распознавание действи...

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

[Из песочницы] Гвозди в крышку гроба рунета Все конечно в курсе последних обсуждений в государственной думе по поводу автономного рунета. Многие об этом слышали, но что это такое и какое к нему это имеет отношение — не задумывались. В данной статье я попытался объяснить, зачем это нужно и каким образом это повлияет на...

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

Зарабатываем на солнечной энергии или пассивный доход в 25% годовых, практический опыт. Часть 2 КДВП © Diana, made by Siuzanna Часть 2. Практическая Вы твёрдо решили построить свою домашнюю солнечную станцию? Взвесили все риски, нашли финансирование, прикинули взором, где она будет стоять и какие деревья придется спилить? Ну что, если ещё не передумали — прошу далее....

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

Walmart объявляет Amazon войну цен В Америке скоро начинается сезон праздников, стартующий на День благодарения и длящийся до Рождества. За один этот месяц магазины получают 25% годовой выручки. Традиционно большую часть клиентов в это время забирает себе Amazon. Но самый крупный офлайн-ритейлер в мире, Wal...

[Перевод] 4-битный BCD-счётчик BCD означает binary coded decimal — двоично-десятичный, то есть, счётчик считает с нуля не до пятнадцати, а только до девяти, а при десятом импульсе снова сбрасывается на нуль. Для этого в нём предусмотрен дополнительный узел. Читать дальше →

DartUP 2019: конференция по Dart и Flutter в Петербурге 23 ноября 23 ноября русскоязычное сообщество разработчиков на Dart и Flutter при поддержке Wrike и Google снова проводят DartUP, конференцию, в прошлом году ставшую самой крупной в DART/FLUTTER мире. В этом году постараемся сделать еще ярче, интереснее и многочисленнее. Читать дальш...

[Перевод] Создание игры Tower Defense в Unity: башни и стрельба по врагам [Первая и вторая части туториала] Размещаем на поле башни. Целимся во врагов при помощи физики. Отслеживаем их, пока это возможно. Стреляем в них лазерным лучом. Это третья часть серии туториалов о создании простой игры жанра tower defense. В ней рассмотрено создание баше...

Владелец лучшего тайпсковоттерского домена отказывается от монетизации На просторах Интернета можно найти домен Gail.com, который только на одну букву отличается от домена одного из самых популярных почтовых сервисов gmail.com. Возможно, это самый лучший тайпсквоттерский домен. Согласно данным на 2015 год, в среднем на него приходило 5000 посет...

Удаленка и контроль, свобода и госструктуры. Разговор со Staply Пару лет назад «Ведомости» писали о «защищенном российском мессенджере», который собираются внедрять в государственные структуры. Даже пересказ этой новости одним предложением отдает в голове звуком стройно шагающих молотков. Представляешь, как где-нибудь за высоким заборо...

[Перевод] Подготовка к Spring Professional Certification. Spring REST Сегодняшняя статья рассмотрит основные вопросы про REST в Spring. Она будет особенно полезна для начинающих программистов. Официальный гид от Pivotal, в котором написано про темы для подготовки. Оглавление Внедрение зависимостей, контейнер, IoC, бины AOP (аспектно-ориентир...

Как создается ОС, сертифицированная по I классу защиты Рассказ из первых рук о том, как создается, а потом готовится к сертификации для работы с данными под грифом «особой важности» защищенная ОС Astra Linux. Читать дальше →

Разбор полетов AirSelfie 2 Не так давно стала доступна новинка — летающая камера AirSelfie 2. Попала она и в мои руки — предлагаю посмотреть небольшой отчет и выводы по этому гаджету. Читать дальше →

NetBIOS в руках хакера В данной статье пойдёт краткое повествование о том, что нам может рассказать такая привычная с виду вещь как NetBIOS. Какую он может предоставить информацию для потенциального злоумышленника/пентестера. Читать дальше →

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 31. CDP, Syslog и NTP. Часть 1 Сегодня мы рассмотрим 3 концепции: проприетарный протокол Cisco CDP, системный журнал Syslog и протокол сетевого времени NTP. Мы также продолжим обсуждение темы неполадок и рассмотрим несколько инструментов для их диагностики, затем ознакомимся с Syslog и NTP и в конце урока...

Chaos engineering Последнее, что хочется увидеть во время дебага кода — это хаос. Но что если этот хаос управляемый и запущен руками самого разработчика? Зачем умышленно устраивать турбулентность в слаженной работе своего приложения, как добиться душевного спокойствия при релизе важных фич и ...

Проверка rdesktop и xrdp с помощью анализатора PVS-Studio Это второй обзор из цикла статей о проверке открытых программ для работы с протоколом RDP. В ней мы рассмотрим клиент rdesktop и сервер xrdp. Читать дальше →

PVS-Studio идёт в облака: Azure DevOps Это вторая статья про использование статического анализатора PVS-Studio в облачных CI-системах, и на этот раз мы рассмотрим платформу Azure DevOps – облачное CI\CD-решение от компании Microsoft. В качестве анализируемого проекта в этот раз рассмотрим ShareX. Читать дальше ...

Решаем судоку с помощью Алгоритма X В этой статье рассмотрим "Алгоритм X" Кнута и его применение для решения судоку. Прелесть алгоритма в том, что судоку при этом решается быстро без программирования каких-то продвинутых техник решения. Читать дальше →

Заголовок Java объекта Задавались ли вы когда-нибудь вопросом, как выглядят java объекты изнутри? Под катом будет подробное описание заголовка java объекта, из чего он состоит и сколько занимает памяти. Читать дальше →

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

Американские компании страдают от санкций США больше, чем сама Huawei Компания Huawei, похоже, может снова получить временную лицензию на торговлю с американскими компаниями. Хотя правильнее, наверное, говорить наоборот. Источник утверждает, что Министерство торговли США, как ожидается, предоставит полугодовую лицензию, но сделано это бу...

«Прячь www»: почему разработчики мейнстрим-браузера снова отказались от отображения поддомена Рассказываем о причинах этого решения разработчиков Chrome и реакции сообщества. Читать дальше →

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

[Из песочницы] Пишем никому не нужный эмулятор Доброго времени суток. Довольно давно имелось желание написать эмулятор какого-нибудь процессора. А что может быть лучше, чем изобрести велосипед? Имя велосипеду — V16, от склеивания слова Virtual и, собственно, разрядности. Читать дальше →

Что делать, если Android не удаётся получить IP-адрес сервера для доступа в интернет Регулярные баги и ошибки свойственны любой операционной системе, и чинят их разработчики, к сожалению, не всегда сразу. Если вы столкнулись на Android с проблемой подключения к сети, а система вам сообщает, что ей не удаётся найти IP-адрес сервера, знайте, вы не одиноки. С ...

Хоррор Devotion удалили из Steam — причиной снова Винни-Пух, Си Цзиньпин и гнев Китая на политический подтекст 19 февраля в Steam вышел Тайваньский хоррор Devotion — семейная драма с примесью местной мифологии и религиозного культизма. Это игра в духе «симуляторов ходьбы», где главная механика — медленное и внимательное исследование мира от первого лица и без особого экшена. В Devo...

Фреймворки для постэксплуатации. Выбираем между Metasploit, Cobalt Strike, Merlin, Apfell, Faction C2, Koadic и другими Для подписчиковВ этой статье мы поговорим о фреймворках, которые помогут эксплуатировать уязвимости, закрепиться и продвинуться в целевой инфраструктуре. Для этого рассмотрим основные актуальные проекты, их функции и особенности. Надеюсь, ты найдешь для себя что-нибудь новен...

Time series данные в реляционной СУБД. Расширения TimescaleDB и PipelineDB для PostgreSQL Time series данные или временные ряды — это данные, которые изменяются во времени. Котировки валют, телеметрия перемещения транспорта, статистика обращения к серверу или нагрузки на CPU — это time series данные. Чтобы их хранить требуются специфичные инструменты — темпоральн...

Временная линия Blade Runner — ноябрь 2019 года. Сбылся ли прогноз? В 1982 году режиссер Ридли Скотт порадовал мир фильмом Blade Runner. Это культовая НФ лента, которая показывала зрителям мрачное и тревожное будущее — ноябрь 2019 года. Сейчас можно сравнить то, что было показано в фильме, и то, что есть у нас сейчас. Речь идет о техноло...

22 набора платных иконок со 100% скидкой из Google Play Store Многие из нас любят Android за его широкие возможности по кастомизации. Сменить внешний вид системы, не меняя при этом смартфон, бывает очень удобно. Создаётся впечатление, будто вы руках новый девайс, который вас снова вдохновляет, нот при этом никаких финансовых затрат в...

Как программист банк выбирал и договора читал Девять лет назад я написал заметку про то, как не быть обманутыми злыми буратинами. Всё, что там написано не потеряло актуальности, и сегодня мы рассмотрим попытку выбрать банк читая бумаги, а не рекламу. В данной заметке рассмотрены ВТБ, Альфа Банк, Авангард. По этим банка...

Разработка монолитной Unix подобной OS — GDT & IDT (5) В предыдущей статье мы с вами реализовали менеджер динамической памяти. Сегодня мы рассмотрим основы работы в защищенном режиме процессора Intel i386. А именно: глобальную таблицу дескрипторов и таблицу векторов прерываний. Читать дальше →

Industry Foundation Classes. Краткое введение Введение В связи с политикой Партии и Правительства, происходит активное изменение законодательства в целях внедрения технологии BIM — Информационное моделирование Зданий. В продолжении линии Партии рассмотрим открытый формат представления BIM — IFC (Industry Foundation Clas...

Шифрование трафика в Direct Connect, ч.2 – Ты кто??? – Я новый русский. – А я тогда кто?! Предисловие В первой части статьи мы обустраивали ADCs хаб и рассуждали о Direct Connect в целом. Сегодня нам предстоит научиться использовать такой хаб по прямому назначению. Для этого мы рассмотрим совместимые DC клиенты,...

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

Oculus Quest подключается к ПК и видит руки 25 сентября началась большая ежегодная презентация от компании Facebook — Oculus Connect, и началась она с бомбических анонсов для всех, кто уже обладает или только приглядывается к шлему Oculus Quest! Давайте по порядку: Читать дальше →

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

[Перевод] Исследование глубин аннотаций типов в Python. Часть 1 C 2014 года, когда в Python появилась поддержка аннотаций типов, программисты работают над их внедрением в свой код. Автор материала, первую часть перевода которого мы публикуем сегодня, говорит, что по её оценке, довольно смелой, сейчас аннотации типов (иногда их называют «...

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

Как мы выбирали себе ServiceDesk. Часть 2 Продолжаем писать о нашем выборе системы для оцифровки бизнеса. Как все начиналось, читайте здесь Напомню: мы — сервисная компания, которая решила найти волшебную таблетку для своего бизнеса, благодаря которой «вжух» — и все бизнес-процессы пойдут складно и без перебоев. Ч...

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

Геймдизайн в жизнь. Экономика игры (Часть II) Доброго дня! Немного об авторе: меня зовут Мария, гейм дизайнер. Это третья статья из цикла по применению теории геймдизайна в жизни. Ссылки: Первая статья: «Гейм дизайн в жизнь. Пример разбора механики игры» Вторая статья: «Геймдизайн в жизнь. Экономика игры (Часть I)» ...

От Барселоны до Норильска: как Лайфхакер играет в футбол Взрослые из редакции Лайфхакера не могли участвовать в конкурсе OPPO и ФК «Барселона». Зато это удалось подросткам со всей России. И сражаться было за что: на кону — возможность поиграть в футбол с тренером из Испании в Норильске и шанс побывать на матче в Барселоне. Ну а мы...

9 типовых проблем в сети, которые можно обнаружить с помощью анализа NetFlow (на примере Flowmon) Относительно недавно мы публиковали статью “Сетевой мониторинг и выявления аномальной сетевой активности с помощью решений Flowmon Networks”. Там мы кратко рассмотрели возможности этого продукта и процесс установки. Неожиданно для нас, после статьи и вебинара, поступило бо...

[Из песочницы] Автоматизация конвертирования word файлов в другие форматы Некоторые гос. структуры формируют отчёты в doc файлах. Где-то это делается руками, а где-то автоматически. Представим, что вам поручено обработать тонну таких документов. Это может быть необходимо для вычленения какой-то конкретной информации или просто проверки содержимого...

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

Акустическая левитация своими руками Сегодня я расскажу и покажу, как в домашних условиях повторить эффект ультразвуковой левитации своими руками. Читать дальше →

Дельта 3D-принтер для керамики своими руками Рассказываем о создании несложного 3D-принтера для печати изделий из глины, своими руками и из доступных материалов. Читать дальше →

[Из песочницы] TinyFL — драйвер фонарика на микроконтроллере Привет, Habr! Хочу рассказать историю о том, как мне в руки попал китайский налобный фонарик на светодиоде Cree XM-L и что дальше с ним стало. Читать дальше →

Бесплатный марафон «Big Data и супергерои: ваш первый опыт анализа данных» Вы когда-нибудь мечтали стать супергероем, который обладает крутыми способностями и борется со злом? Мы поможем в этом! Запишитесь на бесплатный марафон, станьте супергероем и поймайте злодеев с помощью инструментов Data Science.  Читать дальше →

[Из песочницы] Создание минимального Docker-контейнера для Go-приложений Привет, Хабр! Предлагаю вашему вниманию перевод статьи основателя сервиса Meetspaceapp Nick Gauthier «Building Minimal Docker Containers for Go Applications». Время чтения: 6 минут Существует множество, как официальных, так и поддерживаемых сообществом контейнеров для разл...

Простые эксперименты с микроконтроллером STM32F103 («Голубая таблетка») Часть 2 (часть 1) Продолжим эксперементировать с микроконтроллером STM32F103C8T6, подключим некоторые датчики/дисплеи с интерфейсом I2C к «голубой таблетке». Реализована поддержка популярных дисплеев I2C: LCD 1602 SSD1306 Реализована поддержка следующих датчиков: BH175...

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

[Из песочницы] Хэш таблицы в Go. Детали реализации Порассуждаем об имплементации map в языке без дженериков, рассмотрим что такое хэш таблица, как она устроена в Go, какие есть плюсы и минусы данной реализации и на что стоит обратить внимание при использовании данной структуры. Детали под катом. Читать дальше →

Основы формата GLTF и GLB, часть 2 Данная статья является продолжением рассмотра основ GLTF и GLB форматов. Вы можете найти первую часть статьи здесь. В первой части мы рассмотрели с вами зачем изначально планировался формат, а также такие артефакты и их атрибуты GLTF формата как Scene, Node, Buffer, BufferVi...

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

Не очень большие данные В статье будут рассмотрены возможности, предоставляемые встроенным или декларативным секционированием в 12 версии PostgreSQL. Демонстрация подготовлена для одноименного доклада на конференции HighLoad++Siberia 2019. Все примеры выполнены на недавно появившейся бета-версии: ...

[Перевод] Машинно-синестетический подход к обнаружению сетевых DDoS-атак. Часть 2 И снова здравствуйте. Сегодня мы продолжаем делиться материалом, приуроченным к запуску курса «Сетевой инженер», который стартует уже в начале марта. Мы видим, что многих заинтересовала первая часть статьи «Машинно-синестетический подход к обнаружению сетевых DDoS-атак» и се...

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

[Перевод] MetricKit. Анализ производительности iOS приложений Новая игрушка Мы продолжаем знакомится с новым материалом от Apple, представленным на WWDC. На этот раз рассмотрим MetricKit, это абсолютно новый фреймворк, который служит инструментом для мониторинга производительности приложений. Читать дальше →

Универсальная машина для проведения испытаний своими руками ч.2 Всем привет! В этом посте хочу вернуться к продолжению проекта машины для проведения физико- механических испытаний. Читать дальше →

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

Протокол “Энтропия”. Часть 6 из 6. Никогда не сдавайся А вокруг меня тундра, вокруг меня лед Я смотрю, как все куда-то торопятся, но никто никуда не идет. Б. Г. Читать дальше →

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

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

Анализ механизмов локализации интерфейса приложений в Splunk В данной статье мы рассмотрим основной механизм локализации интерфейса приложений Splunk (в т.ч. стандартных элементов приложения Search) — gettext internationalization and localization (i18n). Читать дальше →

[Из песочницы] Снова про phpQuery Приветствую всех. Недавно я взял заказ, где нужно было автоматически подтягивать данные на сайт (проще говоря — написать парсер). Содержание статьи: Предисловие Про phpQuery Начало работы Практическая часть Заключение Читать дальше →

Реверс-инжиниринг приложений после обфускации (Часть 2) Введение Данная публикация направлена на изучение некоторых приемов реверс-инжиниринга. Все материалы представлены исключительно в ознакомительных целях и не предназначены в использовании в чьих-либо корыстных целях. Рекомендуется к протчению после первой части Если хирург...

Кибернетически улучшенные Web-приложения Современный фронтенд шагнул далеко вперед со времен jQuery и обычных HTML страничек. У нас появились сборщики, менеджеры пакетов, компонентный подход, SPA, SSR и много еще чего. Кажется, что у нас есть все, что нужно для счастья. Но индустрия двигается вперед. Я хочу вам ра...

[Перевод] Анализ TSDB в Prometheus 2 База данных временных рядов (TSDB, time series database) в Prometheus 2 – это отличный пример инженерного решения, которое предлагает серьёзные улучшения в сравнении с хранилищем v2 в Prometheus 1 в плане скорости накопления данных и выполнения запросов, эффективности испо...

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

Arend – язык с зависимыми типами, основанный на HoTT (часть 2) В первой части статьи про язык Arend мы рассматривали простейшие индуктивные типы, рекурсивные функции, классы и множества. 2. Сортировка списков в Arend 2.1 Упорядоченные списки в Arend Определим тип упорядоченных списков как пару, состоящую из списка и доказательства его ...

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

Ключевое слово this в JavaScript. Полное* руководство * скорее всего, я что-нибудь да упустил, но уверен, в комментариях мне это подскажут Эту статью я пишу для своих личных нужд. Планируется, что она будет содержать в себе ответы на все вопросы, которые мне задают студенты на эту тему. Если она пригодится кому-то ещё — здоров...

Автоматизация Для Самых Маленьких. Часть 1.1. Основы виртуализации Предыдущая статья рассматривала архитектуру виртуализированной сети, underlay-overlay, путь пакета между VM и прочее. Роман Горге вдохновился ею и решил написать обзорный выпуск о виртуализации вообще. В данной статье мы затронем (или попытаемся затронуть) вопросы: а как с...

Как реализовать контекстные меню (Context Menu) в iOS 13 Всем привет, меня зовут Денис, мы разрабатываем сервис по аналитике подписок iOS-приложений – Apphud. На WWDC 2019 Apple представила новый способ взаимодействия с интерфейсом вашего приложения: контекстные меню. Они выглядят так: В этой статье мы рассмотрим некоторые тонкос...

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

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

Google снова ликвидирует фирменные сервисы На этот раз под горячую руку Google попал сервис Trips

[Из песочницы] Сказ о полукольцах Привет, Хабр! Предлагаю вашему вниманию перевод статьи "A tale on Semirings" автора Luka Jacobowitz. Когда-нибудь задумывались, почему сумма типов называется суммой типов. Или, может, вы всегда хотели узнать, почему оператор <*> записывается именно так? И что...

Дайджест интересных материалов для мобильного разработчика #312 (19 — 25 августа) В нашей еженедельной подборке PWA в Google Play, запись нажатий, декларативный UI, изменения логотипа и нумерации версий Android, история создателя FBReader, отслеживание рук и многое другое! Читать дальше →

[Перевод] Как реализован рендеринг «Ведьмака 3»: молнии, ведьмачье чутьё и другие эффекты Часть 1. Молнии В этой части мы рассмотрим процесс рендеринга молний в Witcher 3: Wild Hunt. Рендеринг молний выполняется немного позже эффекта занавес дождя, но всё равно происходит в проходе прямого рендеринга. Молнии можно увидеть на этом видео: Они очень быстро исчез...

[Перевод] Почему векторная графика 2D намного сложнее, чем 3D В последнее время появилось много фантастических исследований по 2D-рендерингу. Пётр Кобаличек и Фабиан Айзерман работают над Blend2D: это один из самых быстрых и точных CPU-растеризаторов на рынке, с инновационной техникой JIT. Патрик Уолтон из Mozilla изучил не один, а три...

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

[Из песочницы] Работаем с коботом Dobot M1 Год назад на Хабре выходил обзор настольного робота Dobot Magician. В этой статье я предлагаю оценить его старшего брата Dobot M1 в действии. Также я попытаюсь объяснить, почему для своего проекта выбрал именно данную модель, опишу процесс разработки демки в Qt/c++, а также ...

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

[Перевод] Бесплатные аккаунты на GitHub смогут [почти] без ограничений работать с приватными репозиториями Эта новость опубликована на The Next Web, с пометкой: "Из-за ошибок в планировании, мы опубликовали эту новость на день раньше снятия эмбарго на разглашение. Фича всё ещё не запущена, о ней официально расскажут завтра. Когда это произойдёт, мы обновим пост новым официальным...

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

Запускаем приложение в Openshift и сравниваем существующий инструментарий Я хочу рассказать история, как запускали приложение в Openshift. Так же по ходу пьесы рассмотрим утилиты для управления приложением внутри Openshift. Это расшифровка выступления на kubernetes SPB meetup #3.. Читать дальше →

Линейка Agilex — 10-нм FPGA Intel Буквально вслед за 10-нм процессорами Ice Lake Intel выпускает новое поколение своих FPGA, также производимых по 10-нм техпроцессу. Новая серия получила наименование Intel Agilex; по традиции, идущей со времен Altera, она разбита на несколько классов устройств для различных ...

Они просыпаются! (н.-ф. повесть, часть 2, и последняя) /* Публикуется окончание фантастической повести. Начало находится здесь: habr.com/ru/post/472534 */ Читать дальше →

Hackquest 2018. Results & Writeups. Day 4-7 Как и обещали, выкладываем вторую часть решений ежегодного хакквеста. Day 4-7: напряжение нарастает, а задания всё интереснее! Читать дальше →

Nintendo запатентовала «гибкие» контроллеры Joy-Con для консоли Switch, которые можно изогнуть для большей эргономичности Японская компания Nintendo запатентовала новый «гибкий» джойстик Joy-Con для консоли Switch, который позволит более эргономично удерживать в руках и использовать игровые контроллеры. Патент демонстрирует, что верхняя часть привычных для игроков сможет изгибаться вн...

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

Металл от Крымского моста: На М4 «Дон» построят временную переправу через Северский Донец Ожидается, что этот шаг позволит сократить пробки. Сразу после майских праздников на 931-м км автодороги М4 «Дон» планируется построить временный мост через реку Северский Донец. Строители начнут возводить мост в Каменск-Шахтинске (Ростовская область) 10 мая, причём для эт...

Инициализация в современном C++ Общеизвестно, что семантика инициализации — одна из наиболее сложных частей C++. Существует множество видов инициализации, описываемых разным синтаксисом, и все они взаимодействуют сложным и вызывающим вопросы способом. C++11 принес концепцию «универсальной инициализации». ...

[Перевод] Tesla сократит численность постоянных сотрудников по всему миру на 7% Исполнительный директор компании Tesla Илон Маск написал расширенное повествовательное письмо сотрудникам компании с объяснением причин и планируемых действий по кадровым вопросам. Так же, в компании намерены сохранить лишь наиболее важных временных сотрудников и подрядчи...

Ноутбук Compaq LTE 5000, часть вторая c половиной — бонусная Ноутбук Compaq LTE 5000, часть первая — знакомство Ноутбук Compaq LTE 5000, часть вторая — про недостатки и их лечение Часть про ОС и игры пока ещё потихоньку сочиняется, подозреваю, что она вырастет во что-то большее, чем просто рассказ про запуск старых игрушек. Но как-...

Фильтр Калмана для минимизации энтропийного значения случайной погрешности с не Гауссовым распределением Введение На Habr математическое описание работы фильтра Калмана и особенности его применения рассматривались в следующих публикациях [1÷10]. В публикации [2] в простой и доходчивой форме рассмотрен алгоритм работы фильтра Калмана (ФК) в модели «пространства состояний», Сл...

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

Эксперимент: собираем справочник подразделений УФМС, выдающих паспорт Самое утомительное поле при вводе паспорта — «Кем выдан». Вбивать в форму какое-нибудь «Отделом внутренних дел Медведевского района республики Марий Эл» муторно. Люди злятся, сокращают название как придется, ошибаются. Было бы здо́рово подсказывать варианты по коду подраз...

Операция TA505, часть четвертая. Близнецы Продолжаем рассказывать о деятельности хакерской группировки TA505. Всем известная фраза «новое — это хорошо забытое старое» как нельзя лучше подходит в качестве эпиграфа к очередной главе повествования о группе TA505. Правда, в этот раз «старое» не столько «забыто», сколь...

[Перевод] Python в Visual Studio Code — июньский релиз Мы рады сообщить, что расширение Python для Visual Studio Code от июня 2019 года уже доступно. Вы можете загрузить расширение Python из Marketplace или установить его прямо из галереи расширений в Visual Studio Code. Если у вас уже установлено расширение Python, вы также мож...

Обзор и тестирование видеокарты ASUS ROG-STRIX-RTX2060S-O8G-GAMING Продолжаем знакомство с видеокартами серии GeForce RTX Super. В этот раз мы снова вернемся к обновленной версии GeForce RTX 2060, и рассмотрим топовую модель из линейки продуктов ASUS ROG Strix. Изучим особенности системы...

Custom’ная калибровка Eye-tracker’а Скоро будет год, как мы выпустили продукт с Custom’ной калибровкой Eye-tracker’а на борту. К сожалению, по разным причинам, все никак не получалось добить эту статью. Однако, недавно произошел забавный случай, который побудил закончить начатое. Но, обо всем по порядку. Над...

Один день из жизни DevOps Накануне запуска курса «DevOps-практики и инструменты» мы провели очередной открытый урок. Вебинар получился весьма содержательным. По сути, это была полуторачасовая практика в режиме нон-стоп: рассмотрели 4 основных инструмента современного DevOps-инженера, каждый из ко...

[Перевод] Монады за 15 минут Вступление На конференции YOW! 2013 один из разработчиков языка Haskell, проф. Филип Вадлер, показал, как монады позволяют чистым функциональным языкам осуществлять императивные по сути операции, такие, как ввод-вывод и обработку исключений. Неудивительно, что интерес аудито...

[Из песочницы] Создание библиотеки в стиле Spring Data Repository своими руками при помощи Dynamic Proxy и Spring IoC А что если бы можно было создать интерфейс, например, такой: @Service public interface GoogleSearchApi { /** * @return http status code for Google main page */ @Uri("https://www.google.com") int mainPageStatus(); } А затем просто внедрять его ...

[Перевод] Компилируем FFmpeg в WebAssembly (=ffmpeg.js): Часть 3 — Конвертация avi в mp4 Список переведённых частей серии: Приготовления Компиляция с Emscripten Конвертация avi в mp4 (вы тут) В этой части ма разберём: Компиляцию библиотеки FFmpeg с оптимизированными аргументами. Управление файловой системой Emscripten. Разработку ffmpeg.js v0.1.0 и конвер...

К 2100 году Facebook превратится в виртуальное кладбище Исследователи спрогнозировали 4,9 миллиарда умерших пользователей

[Перевод] Конференция BLACK HAT. Уроки выживания при DDOS-атаке 300 Гбит / с. Часть 1 Меня зовут Мэттью Принс, я один из соучредителей и генеральный директор сервиса CloudFlare. Не думайте, что я буду настолько же интересен, как директор АНБ, но я хотя бы постараюсь быть менее противоречивым. На самом деле я частный профессор права, так что я читал Конституци...

Шпаргалка по аббревиатурам C++ и не только. Часть 1: C++ Когда-то я собеседовался на должность C++ разработчика в одну приличную и даже известную контору. Опыт у меня тогда уже кое-какой был, я даже назывался ведущим разработчиком у тогдашнего своего работодателя. Но на вопросы о том, знаком ли я такими вещами, как DRY, KISS, YAGN...

Информационная энтропия хаоса Введение На Habr достаточно много публикаций, в которых рассматривается понятие энтропии, вот только некоторые из них [1÷5]. Публикации были позитивно восприняты читателями и вызвали большой интерес. Достаточно привести определение энтропии, которое дал автор публикации [1...

[Перевод] Обновления ML.NET Model Builder ML.NET -- это кроссплатформенный фреймворк машинного обучения для .NET-разработчиков. А Model Builder -- это инструмент пользовательского интерфейса в Visual Studio, который использует Automated Machine Learning (AutoML), чтобы легко обучать и использовать пользовательские м...

[Перевод] История видеопроцессоров, часть 2: 3Dfx Voodoo Часть 1: 1976 — 1995 годы 3Dfx Voodoo: смена правил игры Выпущенная в ноябре 1996 года графическая карта 3Dfx состояла из платы только для 3D, которой требовался VGA-переходник к отдельной 2D-карте, подключаемой к дисплею. Карты продавались множеством компаний. Orchid Tech...

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

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

NB-IoT, Narrow Band Internet of Things. Режимы энергосбережения и команды управления Добрый день всем! В предыдущей части обсуждалась общая информация и особенности технологии NB-IoT, а здесь предлагаю подробно рассмотреть режимы энергосбережения PSM и eDRX, а также команды, с помощью которых этими режимами можно управлять. Читать дальше →

[Из песочницы] Создаем простой сервис коллтрекинга, часть 1 В рамках статьи будет рассмотрен один из возможных вариантов реализации коллтрекинга на сайте. Данный материал написан сугубо в образовательных целях и не несет в себе цели замены существующих специализированных сервисов, предоставляющих услугу «calltracking». Требования к ...

Устройство компилятора Swift. Часть 4 Это последняя часть моего обзора компилятора Swift. Я покажу, как можно осуществить генерацию LLVM IR из AST и что выдаёт настоящий фронтенд. Если вы не читали предыдущие части, то переходите по ссылкам: Общий обзор компонентов Разбор исходного файла Swift intermediate lan...

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

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

Фишки iOS 13: снова ближе к Android? Не так давно вышла уже вторая бета версия новой iOS 13 и iPad OS. В данной статье мы рассмотрим несколько самых важных нововведений, а также ответим на главный вопрос сегодняшнего материала – стала ли iOS 13 еще ближе к OC от Google?

Ticket to Ride.Европа — арифметика, часть вторая Всё ещё продолжаю изучать основы математики и механики в игре. Данная статья является второй в серии (Ссылка на первую часть), в ней продолжается анализ перегонов, попытка их сортировки по потребности, изучение различных способов строительства маршрутов. Если проводить анало...

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

[Перевод] Семисегментный дешифратор, использующий как прямые, так и инверсные выходы BCD-счётчика «Двоичные часы» успели и войти в моду, и выйти из неё, и снова стал актуальным перевод двоично-десятичного кода в более удобный для считывания человеком позиционный или семисегментный. Автор выбрал второе. Читать дальше →

Windows Phone – ВСЕ, это опять или снова Тут недавно, Microsoft всех «обрадовал», что поддержка устройств на базе Windows Phone вот-вот завершится. Мне как многолетнему пользователю мобильных операционных систем от Microsoft новость показалось не такой уж и радостной. Однако возникает вопрос: Windows Phone R.I.P. э...

Пишем свой язык программирования, часть 3: Архитектура транслятора. Разбор языковых структур и математических выражений Введение Приветствую вас, заинтересованные читающие разработчики на не важно каких языках, на которых я ориентирую эти статьи и чьи поддержку и мнения я ценю. Для начала, по устоявшимся традициям, я приведу ссылки на предыдущие статьи: Часть 1: пишем языковую ВМ Часть 2:...

[Перевод] Понимаем Property Wrappers в SwiftUI Перевод статьи подготовлен специально для студентов курса «iOS Разработчик. Продвинутый курс v 2.0.» На прошлой неделе мы начали новую серию постов о фреймворке SwiftUI. Сегодня я хочу продолжить эту тему, рассказав о Property Wrappers в SwiftUI. SwiftUI предоставляет нам...

Угадай меня, если сможешь: прогнозирование рейтинга фильма до его выхода Недавно мне на глаза попался датасет на Kaggle с данными о 45 тысячах фильмов с Full MovieLens Dataset. Данные содержали не только информацию об актерах, съемочной команде, сюжете и т.п., но и оценки, выставленные фильмам пользователями ресурса (26 миллионов оценок от 270 ты...

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

[Перевод] Chaos Engineering: искусство умышленного разрушения. Часть 2 Прим. перев.: Этот материал продолжает замечательный цикл статей от технологического евангелиста из AWS — Adrian Hornsby, — задавшегося целью просто и понятно объяснить важность экспериментов, призванных смягчить последствия сбоев в ИТ-системах. «Если провалил подготовку ...

Используем пайпы для пивотинга Ни для кого не секрет, что корпоративные IPS становятся все умнее и умнее. Сейчас уже никого не удивишь IPS с SSL-митмом на периметре сети или даже внутри корпоративной сети между сегментами. В то же время, по-мимо всем известных IPS, стали появляться и распространяться разл...

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

[Перевод] 10 самых распространенных ошибок при работе с платформой Spring. Часть 1 Всем привет. Сегодня делимся первой частью статьи, перевод которой подготовлен специально для студентов курса «Разработчик на Spring Framework». Начнём! Spring — пожалуй, одна из самых популярных платформ разработки на языке Java. Это мощный, но довольно сложный в освоении...

Индукционная плитка Galaxy GL3054: легкий и компактный прибор для временной кухни Индукционные плитки — хорошая портативная замена газовым и электрическим плиткам из нашего дачного прошлого. Легкая, экономичная и компактная, она порадует студентов, жителей квартиры, где идет ремонт, дачников. Но подходит ли Galaxy GL3054 для удобного приготовления пищи? Э...

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

Игра в прятки с оптимизатором. Гейм овер, это CTE PostgreSQL 12 Эта статья — продолжение рассказа о новом в PostgreSQL 12. Мы уже разобрали SQL/JSON (патч JSONPath) в статье «Что заморозили на feature freeze 2019. Часть I. JSONPath», теперь очередь CTE. CTE CTE это Common Table Expression — общие табличные выражения, их еще называют к...

[recovery mode] 13 трендов рынка кибербезопасности и защиты информации 2019-2020 Всем привет, меня зовут Александр Дворянский, я коммерческий директор компании «Инфосекьюрити». Сегодня мы рассмотрим основные тренды и векторы развития кибербезопасности, как мировые, так и Российские, которые на мой взгляд будут актуальны в ближайшее время. Читать дальше...

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

[Перевод] Готовьтесь: Angular 8 уже близко Автор материала, перевод которого мы публикуем, предлагает поговорить об Angular 8. Здесь будут рассмотрены некоторые особенно горячие темы, поднятые на мероприятиях NgConf и Google I/O 2019. Поэтому, если вы интересуетесь Angular, но по каким-то причинам не видели докладов ...

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

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

[Перевод] Установка IPS-дисплея в Thinkpad T430S Если у вас ноутбук ThinkPad T420/T420S/T430/T430S, у меня есть отличная новость: вы можете заменить экран на что-нибудь достойное! Для ноутбука потребуется небольшая хирургическая операция, но это выполнимо! Если у вас ThinkPad другой серии, вам повезло… у T430S один из худ...

Библиотека генератора ассемблерного кода для микроконтроллеров AVR. Часть 5 ← Часть 4. Программирование периферийных устройств и обработка прерываний Библиотека генератора ассемблерного кода для микроконтроллеров AVR Часть 5. Проектирование многопоточных приложений В предыдущих частях статьи мы подробно останавливались на основах программирования с ...

Проект ИТЭР в 2018 году Проект Прошедший год для Международного Экспериментального Термоядерного Реактора ИТЭР (о проекте) стал, для внешнего наблюдателя, наверное, одним из самых спокойных за все годы строительства (с 2009 года). Для меня же лично этот год был отмечен посещением площадки ИТЭР в с...

Operating Systems: Three Easy Pieces. Part 5: Планирование: Multi-Level Feedback Queue (перевод) Введение в операционные системы Привет, Хабр! Хочу представить вашему вниманию серию статей-переводов одной интересной на мой взгляд литературы — OSTEP. В этом материале рассматривается достаточно глубоко работа unix-подобных операционных систем, а именно — работа с процесс...

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