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

Электронные книги и их форматы: говорим про EPUB — его историю, плюсы и минусы Ранее в блоге мы писали о том, как появились форматы электронных книг DjVu и FB2. Тема сегодняшней статьи — EPUB. Изображение: Nathan Oakley / CC BY История формата В 90-е на рынке электронных книг господствовали проприетарные решения. И у многих производителей читалок б...

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

[Перевод - recovery mode ] Секретные хаки VS Code Не имеет значения, новичок вы или профессионал, удобные инструменты программирования важны для любого человека, который хочет писать код продуктивно. Я подготовил небольшую подборку полезных советов, хитростей и расширений для современного веб-разработчика. Улучшаем вне...

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

Превращая FunC в FunCtional: как Serokell победили в Telegram Blockchain Competition Вы наверняка слышали о том, что Telegram собирается запустить блокчейн-платформу Ton. Но вы могли пропустить новость, что не так давно Telegram объявил конкурс на реализацию одного или нескольких смарт-контрактов для этой платформы. Команда Serokell с богатым опытом разрабо...

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

[Перевод] Пишем API для React компонентов, часть 3: порядок пропсов важен Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 3: порядок пропсов важен Пишем API для React компонентов,...

Аналитика Big Data — реалии и перспективы в России и мире О больших данных сегодня не слышал только человек, который не имеет никаких внешних связей с внешним миром. На Хабре тема аналитики Big Data и смежные тематики популярны. Но неспециалистам, которые хотели бы посвятить себя изучению Big Data, не всегда ясно, какие перспекти...

Контент-маркетинг для бизнеса: Хабрасеминар #6 и его основные тезисы Есть такая хорошая традиция. Каждые полгода контент-студия Хабра практически в полном составе выходит из онлайн-сумрака и в уютном зале рассказывает что-нибудь интересное. Да еще и других рассказчиков на это подбивает. 28 марта мы проделали это в шестой раз, собрав аудиторию...

Работа с внешними ресурсами в Unity 3d Введение Здравствуйте уважаемые читатели, сегодня речь пойдет о работе с внешними ресурсами в среде Unity 3d. По традиции, для начала определимся, что это и зачем нам это надо. Итак, что же такое эти внешние ресурсы. В рамках разработки игр, такими ресурсами может быть все...

[Перевод] C# или Java? TypeScript или JavaScript? Классификация языков программирования на основе машинного обучения На GitHub представлено больше 300 языков программирования, начиная с общеизвестных языков, таких как Python, Java, и Javascript, и заканчивая эзотерическими языками, такими как Befunge, известными только малым группам людей. Топ-10 языков программирования, размещенных на Gi...

[Перевод] RxDart: магические трансформации потоков Добро пожаловать — это третья часть моей серии статей об архитектуре Flutter. Введение Основы Dart Streams RxDart: магические трансформации потоков (этот пост) Основы RxVMS: RxCommand и GetIt RxVMS: Службы и Менеджеры RxVMS: самодостаточные виджеты Аутентификация пользова...

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

[Из песочницы] Ant-карусель на CSS и Javascript С появлением CSS3 появилась возможность совершать анимацию без использования JS-библиотек, таких, например, как jQuery. CSS3 свойство transition позволяет плавно изменять другие свойства элемента (width, height, margin, opacity и пр.), задав в качестве параметров время и зак...

[Из песочницы] JAMstack: Как создать свой блог используя Gatsby + Contentful + Netlify Вы уже слышали о новом подходе JAMstack? Возможность писать веб-приложения на любимом фреймворке, управлять контентом из админ панели, а на выходе получать полностью валидные HTML-страницы построенные согласно с самыми последними рекомендациями SEO, PWA и a11y. Интересно? То...

[Перевод] Учебный курс по React, часть 24: второе занятие по работе с формами Сегодня мы продолжим разговор об использовании форм в React. В прошлый раз мы рассматривали особенности взаимодействия компонентов и текстовых полей. Здесь же мы обсудим работу с другими элементами форм. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX →...

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

Custom instruments: когда signpost недостаточно Instruments для Xcode компании Apple — это инструменты для анализа производительности iOS-приложения. Их используют для сбора и отображения данных, которые необходимы в отладке кода. В прошлом году Apple презентовала Custom Instruments. Это возможность расширить стандартный ...

[Из песочницы] Почему мы пишем бизнес-логику на Lua Привет, Хабр. В этом посте мы хотим рассказать о том, как и почему мы в IPONWEB используем язык программирования с красивым названием Lua. Lua — скриптовый встраиваемый язык программирования со свободно распространяемым интерпретатором и открытыми исходными текстами на C. О...

Ускорение MicroPython MicroPython — реализация языка программирования Python для микроконтроллеров, даёт возможность аудитории этого языка, используя знакомый синтаксис и принципы программирования работать с небольшими вычислительными устройствами. В своей работе я использую MicroPython для про...

[Перевод] Пишем API для React компонентов, часть 6: создаем связь между компонентами Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 3: порядок пропсов важен Пишем API для React компонентов,...

Microsoft ML Spark: расширение Spark, делающее SparkML человечнее, и LightGBM как бонус Многие, кто работал с Spark ML, знают, что некоторые вещи там сделаны "не совсем удачно" или не сделаны вообще. Позиция разработчиков Spark в том, что SparkML — это базовая платформа, а все расширения должны быть отдельными пакетами. Но это не всегда удобно, ведь Data Scient...

Написание UDR на языке Pascal В Firebird уже достаточно давно существует возможность расширения возможностей языка PSQL с помощью написания внешних функций — UDF (User Defined Functions). UDF можно писать практически на любом компилируемом языке программирования. В Firebird 3.0 была введена плагинная арх...

[Из песочницы] Переименовываем файлы вместе с переменными — Visual Code Мы все избалованы IDE. Хочу больше баловства! Представляю бесплатное расширение Visual Code по переименованию файлов и переменных multi-replace. Читать дальше →

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

[Перевод] Развлекаемся с z-index Элементы на веб-страницах, в основном, располагаются бок о бок или друг под другом. Но иногда дизайн требует перекрытия элементов. Например, выпадающее меню навигации, панели предварительного просмотра при наведении курсора, бесполезные баннеры о куках и, конечно, бесчисленн...

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

10 познавательных YouTube-каналов на английском, о которых вы никогда не слышали Учиться должно быть интересно, поэтому мы в EnglishDom постоянно ищем познавательные видео, которые вдохновят вас учить английский, а также подкинут свежих идей или как минимум расширят кругозор. Мы собрали 10 по-настоящему крутых и познавательных англоязычных каналов. Самы...

[Перевод] 18 хитростей для работы с Visual Studio Независимо от того, являетесь ли вы новичком или же используете Visual Studio уже в течение многих лет, есть множество советов и хитростей, которые помогут вам стать более продуктивным. Некоторое время мы делились советами в Twitter, используя хештег #vstip, а сегодня собрал...

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

[Перевод] Пишем API для React компонентов, часть 5: просто используйте композицию Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 3: порядок пропсов важен Пишем API для React компонентов,...

Социальная инженерия с помощью программ Universal Windows Platform (APPX) TL;DR: В APPX-файл Universal Windows Platform можно упаковать обычный exe-файл, который будет запускаться в Windows 10 (сборка 1607 и новее) примерно так же, как обычные exe-файлы. Это можно использовать для атак социальной инженерии, с помощью рассылки через email — почто...

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

Управление большими телескопами хотят поручить маленьким спутникам Не так давно в отставку был отправлен космический телескоп «Кеплер», с помощью которого ученые подтвердили существование тысяч экзопланет. Его преемник TESS заступает на работу вместо «Кеплера» и собирается найти еще больше небесных тел. Но после того, как мы находим экзопл...

Крупные игроки обсудили введение стандартов для криптовалютной индустрии Крупнейшие криптовалютные трейдеры и представители известных компаний индустрии обсудили методы борьбы с мошенничеством в сфере цифровых активов, сообщает Bloomberg. Участие во встрече, состоявшейся в Чикаго во вторник, 7 мая, приняли представители 35 фирм, среди которых Gal...

Метод Pomodoro не так крут, как мог бы быть У метода pomodoro есть не совсем очевидные нюансы. И эти нюансы, если переформулировать Кличко, понимают не только лишь все, мало кто может это делать. Поэтому давайте разберемся, что это за метод, и что можно было бы улучшить. Читать дальше →

Байки сервисной службы. Несерьёзный пост о серьёзной работе Сервисные инженеры бывают на АЗС и космодромах, в IT-компаниях и на автозаводах, на ВАЗе и в Space X, в небольшом бизнесе и в международных гигантах. И все, абсолютно все они когда-то слышали классический набор про «оно само», «я тут изолентой обмотал и оно работало, а потом...

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

KOST: что входит в новый стек технологий для разработки облачных приложений Рассказываем о его компонентах и перспективах. / фото Gozha Net Unsplash Почему появился новый стек Существует множество стеков для разработки программного обеспечения. Один из наиболее известных — LAMP (Linux, Apache HTTP server, MySQL, PHP). На нем построен сайт «Википед...

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

Google: HTML-карта сайта не нужна с точки зрения SEO Сотрудник Google Джон Мюллер выразил в Reddit своё согласие с мнением о том, что HTML-карты больше не нужны сайтам. «Я согласен. Когда речь идёт о SEO… для небольших сайтов, то ваш сайт должен быть в любом случае доступен для сканирования (а если вы используете популярную CM...

FFI: пишем на Rust в PHP-программе В PHP 7.4 появится FFI, т.е. можно подключать библиотеки на языке C (или, например, Rust) напрямую, без необходимости писать целый extension и разбираться в его многочисленных нюансах. Давайте попробуем написать код на Rust, и используем его PHP-программе Читать дальше →

[recovery mode] Инкрементальный бекап в дюжину строк Что самое важное для бекапов? Правильно, воспроизводимость. Поэтому давайте сделаем велосипед на коленке и на опции --link-dest у rsync. У нашего велосипеда не будет сложной структуры данных в стиле git как у restic, ни кучи бекендов как у duplicity. Но мы сможем восстановит...

Как быстро отсортировать файлы по папкам на Mac Automator — это невероятно мощный инструмент для автоматизации действий в macOS. Возможности этой утилиты, фактически, ограничены лишь вашей фантазией. И мы сегодня убедимся в этом в очередной раз, создав простую службу, которая позволит в два счёта отсортировать файл...

[Перевод] Учебный курс по React, часть 28: современные возможности React, идеи проектов, заключение Сегодня, в заключительной части перевода курса по React, мы поговорим о современных возможностях React и обсудим идеи React-приложений, создавая которые, вы можете повторить то, чему научились, проходя этот курс, и узнать много нового. → Часть 1: обзор курса, причины попу...

[Перевод] Деплоим ML проект, используя Flask как REST API, и делаем доступным через приложение на Flutter Введение Машинное обучение уже везде и, пожалуй, почти невозможно найти софт, не использующий его прямо или косвенно. Давайте создадим небольшое приложение, способное загружать изображения на сервер для последующего распознавания с помощью ML. А после сделаем их доступными ...

[Перевод] Логическая репликация между версиями PostgreSQL Есть разные подходы к обновлению PostgreSQL, но некоторые приводят к простою приложения. Если нужно избежать простоя, используйте для обновления репликацию — логическую или физическую (потоковую), в зависимости от сценария. В этой статье мы рассмотрим разницу между логическ...

[Перевод] Учебный курс по React, часть 26: архитектура приложений, паттерн Container/Component В этой части перевода учебного курса по React мы поговорим об архитектуре React-приложений. В частности, обсудим популярный паттерн Container/Component. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: фай...

[Перевод] Что нужно знать о массивах JavaScript Представляем вам перевод статьи автора Thomas Lombart, которая была опубликована на сайте medium.freecodecamp.org. Перевод публикуется с разрешения автора. Пример использования метода reduce для сокращения массива Позвольте мне сделать смелое заявление: циклы часто бывают...

Разговорный BERT — учим нейросеть языку соцсетей Одним из главных событий в области компьютерной лингвистики и машинного обучения в 2018 году был выпуск BERT от Google AI, который признан лучшим докладом года по мнению североамериканского отделения Ассоциации компьютерной лингвистики (NACL). В этой статье мы расскажем об э...

«Мы не можем оставить права на персональные данные большим компаниям» — бывший главред Wired UK о будущем технологий Я часто задумываюсь, зачем вообще нужна журналистика в индустрии технологий. В худшие моменты она кажется мне бессмысленной — просто аппендикс в пиар кишках больших компаний и тысяч бессмысленных стартапов. В обычные моменты — для меня это еще один канал, где люди могут уб...

[Перевод] Микрофронтенды: о чем это мы? Все эти годы вы, frontend-разработчик, писали монолиты, хотя и понимали, что это дурная привычка. Вы делили свой код на компоненты, использовали require или import и определяли npm-пакеты в package.json или плодили гит-репозитории в вашем проекте, но все равно писали монолит...

[Из песочницы] Передача знания и Нейронный машинный перевод на практике Нейронный машинные перевод (НМП, англ. Neural Machine Translation, NMT) развивается очень быстро. Сегодня, чтобы собрать свой переводчик, не нужно иметь два высших образования. Но чтобы обучить модель, нужен большой параллельный корпус (корпус, в котором предложению на исход...

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

[Из песочницы] 2 минуты с Webpack tree-shaking и re-export Вступление Позвольте мне начать. У нас был монолитный фронтэнд с большим наследием. Сервисы жили в одних файлах с компонентами. Всё было вперемешку и с лозунгом на фасаде: “Пусть всё будет под рукой – так легче найти, что надо". И не важно, что длина файла 200+, 300+, 5...

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

User Inyerface — как не надо мучать пользователя Студия Bagaar собрала худшие элементы сайтов в одной онлайн-форме и предложила ее заполнить. Сможете пройти это испытание? Читать дальше →

[Перевод] Улучшите свой CSS с помощью этих 5 принципов Написание CSS — процесс достаточно простой и понятный, тогда почему для этого требуются еще какие-то принципы и best-practices? По мере увеличения масштабов проекта и количества людей, работающего над ним, всё более и более явно начинают проявляться новые сложности, котор...

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

[Из песочницы] .NET зоопарк под призмой NET Core Всем привет! Сегодня мы рассмотрим разные фишки и изменения, которые появились в .NET Core платформе и сравним их с Framework. Я разбил статью на модули для более лучшего понимания. Эта статья будет интересна тем кто собирается переходить на .NET Core или уже использует его....

Расширяемый Postgres На прошедшем PGConf.Russia был доклад про расширение MobilityDB, а Андрей Бородин предложил идею расширять методы индексов под задачу. Продолжу тему с расширением Postgres под решаемую задачу на примере расширения сделанного в рамках HighLoad Cup 2018, код доступен на GithH...

[Из песочницы] Интересности для жанра ARPG Здесь вы найдёте подборку из нескольких разноплановых принципов/механик для использования в играх типа Diablo. Читать дальше →

Кастомизация Django ORM на примере ZomboDB Кастомизация Django ORM на примере ZomboDB Часто при работе с Django и PostgreSQL возникает необходимость в дополнительных расширениях для базы данных. И если например с hstore или PostGIS (благодаря GeoDjango) всё достаточно удобно, то c более редкими расширениями — вроде p...

[Из песочницы] Интернет проект security.txt — знакомство с еще одним .well-known файлом Основная идея проекта — формализация взаимодействия между внутренней ИБ и внешними исследователями, давая четкое указание как и куда направлять информацию об уязвимостях или проблемах безопасности. Формализация взаимодействия — серьезная проблема, не все сайты имеют программ...

[Перевод] Обзор Python-пакета Datatable «Пять экзабайт информации создано человечеством с момента зарождения цивилизации до 2003 года, но столько же сейчас создаётся каждые два дня». Эрик Шмидт Datatable — это Python-библиотека для выполнения эффективной многопоточной обработки данных. Datatable поддерживает наб...

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

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

Как рендерится кадр в Shadow Fight 3 Технический 3D-художник Banzai Games Роман Терский рассказал о том, как происходит отрисовка кадра и устроены материалы для персонажей в мобильной игре Shadow Fight 3, а также раскрыл небольшие хитрости в настройке окружения Shadow Fight 3 — игра в жанре файтинг/РПГ, разр...

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

Redux — пересмотр логики reducer'a и actions На днях ковыряясь в множестве файлов redux'a, где по логике файлы вынесены в reducers, actions, константы типов actions. Bсе это оказалось весьма не простая задача держа все эти типы файлов у себя в голове и прослеживать логику. И… эврика, появилась идея упрощения написания...

[Из песочницы] Создаю глобальную базу знаний по элементам питания Тестирую элементы питания на профессиональном оборудование. Цель охватить большую часть рынка элементов питания Европы и России. На данный момент протестированы более 230 аккумуляторов и батареек. Сделано более 1000 тестов. Израсходовано 4 ящика батареек и несколько месяце...

Пост-пост, мета-мета. Учимся писать на Хабр — А далеко до релиза? — Да пара вёрсток. Докатился — пишу на Хабр о том, как писать на Хабр. Хотя причины есть — я пять лет занимаюсь этим, перевидал и перепробовал кучу инструментов, так что теперь делюсь с вами самыми лучшим. Я расскажу о том, как прийти от HTML-разметки...

Простой слайдер изображений на CSS и Javascript Автор уже опубликовал скрипт карусели, который также использует только CSS и Javascript. Теперь давайте рассмотрим скрипт слайдера. Он отличается от карусели тем, что одновременно виден только один элемент, а не несколько, и элементы не прокручиваются, а медленно замещаются ...

[Перевод] Roslyn Analyzers. Как писать код быстро и безошибочно Roslyn, платформа компилятора .NET, помогает обнаруживать ошибки еще до запуска кода. Одним из примеров является анализатор проверки орфографии Roslyn, который встроен в Visual Studio. Скажем, вы создаете статический метод и случайно написали слово static как statc. Вы сможе...

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

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

[Перевод] Автоматический перенос приложений iOS (ARM) на macOS (x86) с помощью Bitcode Когда Apple представила технологию Bitcode и сделала её обязательной для watchOS и tvOS, компания словно отмахнулись от вопросов, зачем она вообще нужна. Лишь туманно сказала, что она помогает настраивать двоичные файлы и использует последние улучшения компилятора. С тех по...

[Перевод] Анонсировано расширение Azure IoT Edge Tools (Preview) Мы рады объявить о доступности preview-версии нового расширения для Visual Studio 2019 — Azure IoT Edge Tools. Расширение предоставляет богатый набор функций для поддержки разработки решений IoT Edge с использованием Visual Studio 2019: Читать дальше →

А какая разница какой Collation выбрать? Статья подготовлена для студентов курса «MS SQL Server разработчик» Хочу поделиться историей из одного из предыдущих проектов, которая иллюстрирует, что Collation нужно выбирать очень вдумчиво. И о том, что бывает, если этот параметр все-таки выбрали неверно, и какие вариант...

Кто такой Талли монстр и кому принадлежат таинственные ископаемые останки? Таким мог быть загадочный монстр Слышали ли вы когда-нибудь о таинственном Талли монстре? Впервые о нем заговорили в 1950-х годах, когда коллекционер окаменелостей по имени Фрэнсис Талли обнаружил первые останки в окаменелых пластах реки Мазон-Крик в центральной части Иллин...

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

СМИ: Huobi OTC могла нелегально использовать логотипы Alipay и WeChat Pay Китайские электронные платежные системы Alipay и WeChat Pay потребовали от руководства криптовалютной биржи Huobi удалить их сервисы из методов оплаты на площадке внебиржевой торговли (OTC). Об этом сообщает 8btc со ссылкой на агентство Caixin. В письме Alipay и WeChat Pay о...

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

[Из песочницы] Проблемы анализа Больших Данных Каковы проблемы анализа Больших Данных Большие Данные создают характерные особенности, которые не разделяются традиционными наборами данных. Эти особенности создают значительные проблемы для анализа данных и мотивируют разработку новых статистических методов. В отличие от тр...

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

[Перевод] Стартап, который использовал ИИ, чтобы разработать лекарство за 21 день И снова здравствуйте. В преддверии запуска курса «Нейронные сети на Python», хотим поделиться с вами переводом интересной статьи о вкладе ИИ в развитие медицины. Компания Insilico Medicine из Гонконга опубликовала исследование, показывающее, что их система глубокого обуче...

Машинное обучение без Python, Anaconda и прочих пресмыкающихся Нет, ну я, конечно, не всерьез. Должен же быть предел, до какой степени возможно упрощать предмет. Но для первых этапов, понимания базовых концепций и быстрого «въезжания» в тему, может быть, и допустимо. А как правильно поименовать данный материал (варианты: «Машинное обуче...

Статистика по типам файлов в облачной песочнице Wildfire Хорошо, мы увидели сколько приложений переносит файлы. А какие это файлы и какие из них вредоносные? Следующая статистика собрана уже по типам файлов. Видно, что большинство файлов, которые идут на проверку — это PDF, однако большинство типов файлов, которые содержат вредон...

[Перевод] Как отлаживать и профилировать любой EXE-файл с помощью Visual Studio Вам когда-нибудь нужно было отлаживать или профилировать исполняемый файл (файл .exe), для которого у вас нет исходного кода или вы не можете его собрать? Тогда наименее известный тип проекта Visual Studio, проект EXE, для вас! В Visual Studio вы можете открыть любой EXE-фа...

[Из песочницы] Prometheus + Grafana + Node Exporter + Docker в Azure c уведомлениями в Telegram Для начала подготовим виртуальную машину, для этого напишем небольшой скрипт, который разворачивает и автоматизирует некоторые рутинные операции, скрипт использует Azure Cli: project.sh#!/bin/bash echo "AZURE VM Create" echo "Azure Account:" echo "Az...

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

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

Весь мир в кармане или как сделать мобильную карту за пару дней В прошлой статье я рассказывал о том, как можно быстро сделать Web-звонилку. А что если поставить более амбициозную задачу — собрать своё собственное приложение с картой, без рекламы и с блэк-джеком? А если всего за пару дней? Давайте сделаем это! Прошу под кат. Читать дал...

Deno: время Node.JS уходит? Прошло примерно 18 месяцев с внутреннего релиза Deno, вышел preview release, появилось несколько статей на Хабре, и Райан ездит по конференциям и рассказывает о нём. Однако я нигде так и не видел сколько-нибудь вдумчивого разбора этого проекта — почему-то все ограничиваются...

[Из песочницы] Изучая go: пишем p2p мессенджер со сквозным шифрованием Yet another P2P Messenger Читать отзывы и документацию о языке не достаточно, чтобы научиться на нем писать более менее полезные приложения. Обязательно для закрепления нужно создать что-то интересное, чтобы наработки можно было бы использовать в других своих задачах. Стать...

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

[Перевод] Извлечение данных при машинном обучении Хотите узнать о трех методах получения данных для своего следующего проекта по ML? Тогда читайте перевод статьи Rebecca Vickery, опубликованной в блоге Towards Data Science на сайте Medium! Она будет интересна начинающим специалистам. Получение качественных данных — это пе...

Книга «Kotlin. Программирование для профессионалов» Привет, Хаброжители! Книга Джоша Скина и Дэвида Гринхола основана на популярном курсе Kotlin Essentials от Big Nerd Ranch. Яркие и полезные примеры, четкие объяснения ключевых концепций и основополагающих API не только знакомят с языком Kotlin, но и учат эффективно использо...

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

LEGO MINDSTORMS Education EV3 + MicroPython: программируем детский конструктор взрослым языком Привет, Хабр! Мы уже рассказывали о платформе LEGO MINDSTORMS Education EV3. Основные задачи этой платформы — обучение на практических примерах, развитие навыков STEAM и формирование инженерного мышления. В ней можно проводить лабораторные работы по изучению механики и динам...

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

[Перевод] Fluent 1.0: гибкая система локализации Fluent — семейство спецификаций, реализаций и практик для локализации, разработанной Mozilla. Сейчас она применяется в браузере Firefox. Используя Fluent, переводчики могут писать более естественные переводы на родном языке. Сегодня мы представляем спецификацию формата фай...

[Из песочницы] Расширения VSCode, которые облегчат разработку на JavaScript и Vue На сегодняшний день существует достаточное количество средств для разработки с поддержкой языка JavaScript и основанных на нем фреймворков. Вопрос выбора конкретного инструмента стоит вне этой статьи, тут же я постараюсь описать свой пользовательский опыт работы с Visual Stu...

Охота за ошибками, Blind-XSS и лисьи хитрости Лисы знают толк в охоте :) Многие наверняка уже слышали о BugBounty, поиске уязвимостей с вознаграждениями и сопутствующих историях об этом. Я, как один из «охотников за ошибками», начал свой путь чуть больше года назад на площадке HackerOne. За это время мне удалось много...

Что известно об ITIL 4 на текущий момент, и кто уже использует новую библиотеку Обсудим изменения в ITIL, о которых стало известно за последнее время. Читать дальше →

[Перевод] Учебный курс по React, часть 11: динамическое формирование разметки и метод массивов map В сегодняшней части перевода учебного курса по React мы поговорим об использовании стандартного метода массивов map() для организации динамического формирования JSX-разметки, описывающей наборы однотипных элементов. → Часть 1: обзор курса, причины популярности React, Reac...

[Перевод] Disposable ref structs в C# 8.0 Давайте посмотрим, что об этом сказано в блоге о предстоящих изменениях в С# 8.0 (версия Visual Studio 2019 Preview 2): «stack-only структуры появились в С# 7.2. Они чрезвычайно полезны, но при этом их использование тесно связано с ограничениями, например невозможностью реа...

CI\CD для стартапа: какие есть инструменты, и почему ими пользуются не только крупные и известные компании Разработчики CI\CD-инструментов часто указывают в качестве клиентов крупные компании — Microsoft, Oculus, Red Hat, даже Ferrari и NASA. Казалось бы, что такие бренды работают только с дорогими системами, которые не сможет позволить себе условный стартап из пары разработчиков...

Управление целями в организации: Цели и инженеры (часть 3) Продолжаем цикл публикаций о Pulse Management — Управление проектной организацией (Метод Пульса). Мы уже разобрались с моделью организации, с основными принципами Метода. Теперь время рассказать о Правилах. Правила программируют организацию, а значит они должны быть определ...

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

React & БЭМ – официальная коллаборация. Часть историческая Перед вами история интегрирования БЭМ-методологии в React-вселенную. Материал, который вы прочитаете, построен на опыте разработчиков Яндекса, развивающих самый масштабный и нагруженный сервис в России — Яндекс.Поиск. Мы никогда раньше не рассказывали настолько подробно и гл...

В Chrome добавлены новые инструменты борьбы с отслеживанием пользователей со стороны рекламодателей Во время проведения конференции для разработчиков Google I/O представители поискового гиганта рассказали о новом способе ограничения рекламодателей в Chrome, которые могут отслеживать действия пользователей в интернете. Компания запускает новый набор элементов управления, ко...

Тесты на Codeception для PHP-бэкендов Всем привет! Меня зовут Паша, и я QA инженер команды Order Processing в Lamoda. Недавно я выступал на PHP Badoo Meetup. Сегодня хочу представить расшифровку своего доклада. Речь пойдет про Codeception, про то, как мы его используем в Lamoda и как на нем пишем тесты. Чи...

Apple не смогла привлечь пользователей в Apple News+ В прошлом компания Apple делала достаточно большую ставку на свой сервис под названием Apple News+, собираясь собрать в одном месте все лучшие газеты и журналы. Однако, как отмечает CNBC со ссылкой на осведомленные источники, аудитория сервиса все еще невелика.Читать дальше....

Retentioneering: как мы open-source инструменты для продуктовой аналитики на Python и Pandas написали Привет, Хабр. Эта статья посвящена итогам четырехлетней разработки набора методов и инструментов обработки траекторий движения пользователей в приложении или на сайте. Автор разработки — Максим Годзи, который стоит во главе команды создателей продукта, он же — автор статьи. ...

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

[Из песочницы] Будущее за облаками 1.1. Введение Говоря о развитии ИТ в последние несколько лет, нельзя не отметить долю Облачных решений среди прочих. Давайте разберемся, что же такое облачные решения, технологии и т.д. Облачные вычисления (или же облачные сервисы) — это особый набор инструментов и методов ...

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

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

Странные смартфоны Google Pixel 4 и Pixel 4 XL. Наличие у грядущих аппаратов неизвестного элемента подтверждено На днях мы писали о том, что у смартфона Google Pixel 4 XL над экраном имеется некий неизвестный элемент, предназначение которого пока остаётся тайной. Похоже, что это действительно так. На это явно указывают фотографии защитных стёкол для грядущих новинок Google. Именн...

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

Метод бисекционного деления в тестировании Содержание Описание метода Применение тестировщиками Строка данных Файл Применение разработчиками Резюме Иногда баги сами нас находят. Вот мы впихали большую строку данных — и система подвисла. Это она из-за 1 млн символов упала? Или ей какой-то конкретный не понравилс...

[Из песочницы] Новичку only: 10 вещей, которые вы должны знать как веб-разработчик Привет, Хабр! Представляю вашему вниманию перевод статьи «10 Things You Should Know As a Web Developer» автора Anuupadhyay. Написание тысячи строк кода и превращение в веб-сайт — одна из творческих и сложных вещей для веб-разработчиков. Если вы в этом деле новичок, увидели ...

[Перевод] [ПЕРЕВОД] Браузерная ленивая загрузка изображений (атрибут loading) Поддержка встроенной ленивой загрузки изображений и iframe пришла в веб! Начиная с Chrome 76 версии, вы можете использовать новый атрибут loading для ленивой загрузки ресурсов без необходимости писать для этого дополнительный код или использовать стороннюю JavaScript-библи...

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

[Перевод] Повышаем производительность разработки на примере Vue — часть 2 Если вы не читали Часть 1, вы можете исправить сиё недоразумение здесь. Переиспользование конфигураций Новая библиотека vue-cli-3 избавила от необходимости поддерживать сложные шаблоны сборки и конфигураций. Вместо этого она позволяет разработчику сосредоточиться на создании...

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

[Перевод] io_submit: альтернатива epoll, о которой вы никогда не слышали Недавно внимание автора привлекла статья на LWN о новом интерфейсе ядра для опроса (polling). В ней обсуждается новый механизм опроса в Linux AIO API (интерфейс для асинхронной работы с файлами), который добавили в ядро версии 4.18. Идея довольно интересная: автор патча пр...

Получение статистики по всем клиентам из API Яндекс Директ в разрезе дней с помощью Python В работе часто использую короткую статистику в разрезе дней чтобы отслеживать отклонения трафика. Более подробно о написании запросов написал в статье « Получение рекламных кампаний Яндекс Директ с помощью API в DataFrame (Python)». В данной статье я в большей степени рас...

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

Операция TaskMasters: как мы разоблачили кибергруппировку, атакующую организации России и СНГ Изображение: Unsplash Осенью 2018 года эксперты PT Expert Security Center выявили активность преступной группировки, деятельность которой была направлена на хищение конфиденциальных документов и шпионаж. Сегодня мы расскажем о ходе расследования, а также опишем основные м...

[Из песочницы] Web MVC приложение без фреймворков и сервлетов Напишем небольшое веб приложение, без использование Web-фреймворков, внешних библиотек, и сервера приложений. Цель данной статьи показать общую суть происходящего под капотом веб-сервиса, на примере Java. Итак, поехали. Мы не должны использовать сторонние библиотеки, а так...

[Из песочницы] Sass MediaScreen — Определяем девайсы на CSS Я считаю, что в последнее время разница размера экранов между разными группами устройств всё больше размывается. Не смотря на это я попытался написать инструмент для определения, как групп устройств (мобильники, планшеты, лаптопы, десктопы), так и конкретных девайсов (iPhone...

Генерация документов с помощью ONLYOFFICE DocumentBuilder Привет, Хабр. Я хочу рассказать об утилите под названием DocumentBuilder, которая позволяет генерировать документы, таблицы и презентации, а также показать, как можно его использовать для решения ваших задач, на примере создания резюме из шаблонов. Работает билдер следующи...

Intel oneAPI — один за всех Итак, случилось то, о чем еще с июля месяца говорила компания Intel — вышла бета-версия Intel oneAPI Toolkits, набора инструментов для разработки, с которыми жизнь больше не будет прежней. В состав набора, как и обещалось, вошел компилятор нового языка Data Parallel C++, наб...

[Из песочницы] Продвинутый Debug Debug Area — полезная функция в работе iOS разработчика в Xcode. Как только мы начинаем осваивать разработку под iOS, и пытаемся отойти от привычного и любимого print метода, и найти более быстрые и удобные методы понимания состояния системы в определенный период мы начинаем...

[Перевод] 10 принципов объектно-ориентированного программирования, о которых должен знать каждый разработчик Мне довольно часто встречаются разработчики, которые не слышали о принципах SOLID (мы подробно рассказывали о них здесь. — Пер.) или объектно-ориентированного программирования (ООП), или слышали, но не используют их на практике. В этой статье описываются преимущества прин...

Важный твит про продление жизни Менее чем за неделю один твит Дэвида Синклера собрал 1 500 ретвитов, 5 200 лайков, что для его твиттера довольно много. Кто такой Дэвид Синклер? Это сейчас самый хайповый чувак в продлении жизни, профессор Гарварда, автор более 50 публикаций, опубликованных в рецензируемых ж...

[Перевод] Как в 1995 году писали игры для Sega Saturn Это документ, написанный мной в 1995 году, когда я работал над первой игрой студии Neversoft: Skeleton Warriors. Это была первая игра, в которой я не использовал язык ассемблера 68K. Фото сделано примерно в то время. Комплект разработчика (dev kit) («Small Box» и ICE) стоит...

Камера, мотор, Big Data: как киностудии ищут новые фильмы с помощью ИИ Успех новых продуктов у аудитории можно предсказать с помощью машинного обучения. Такой метод прогноза в последние годы стали использовать и в кинобизнесе. О том, как узнать с помощью ИИ, стоит ли выпускать новый фильм и как его рекламировать, — в обзоре Binary District. ...

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

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

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

Создана файл-бомба, способная уничтожить любой компьютер Программист Дэвид Фифилд (David Fifield) разработал zip-бомбу, способную из пакета в 46 МБ разархивироваться в набор файлов весом 4,5 петабайта. Это позволит вывести из строя любой компьютер.

Северокорейская группировка Lazarus по-прежнему нацелена на криптовалютный бизнес Специалисты «Лаборатории Касперского» продолжают наблюдать за деятельностью хак-группы Lazarus. Злоумышленники по-прежнему интересуются криптовалютными сервисами, активно используют PowerShell и маскируют свои скрипты под файлы WordPress.

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

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

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

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

Несем DevOps в массы «Нужно активнее нести DevOps в массы», — решили мы в прошлом году, провели масштабный ребрендинг RootConf и запустили DevOpsConf, как место, где инженеры смогли обсудить множество насущных проблем и посмотреть на то, что же творится вокруг, чем живут в близких областях, как ...

«Ждёт тебя дорога дальняя…» или решение задачи прогнозирования на C# с помощью Ml.NET (DataScience) В последнее время мне все чаще на глаза попадается информация о фреймворке для машинного обучения Ml.NET. Количество упоминаний о нем переросло в качество, и я решил хотя бы одним глазком глянуть, что же это за зверь такой. Ранее мы с вами уже пробовали решить простейшую з...

Представлен концепт Apple Watch c новым интерфейсом На днях в Сети появился необычный концепт. Один из пользователей Reddit опубликовал рендеры, в которых показал, как мог бы выглядеть интерфейс Apple Watch, если бы на смарт-часах использовалась другая операционная система — например, iOS. На удивление, получилось дейс...

Бизнес без технологий. Деньги, которые вас потеряли Может показаться, что довольно опрометчиво писать на Хабр статью о компаниях, которые относятся к технологиям с недоверием, сильно на них экономят или не используют вовсе. На самом деле, такие ребята нам встречались даже в сфере разработки ПО, не говоря уже о смежных отрасля...

Нейронные сети предпочитают текстуры и как с этим бороться В последнее время вышло несколько статей с критикой ImageNet, пожалуй самого известного набора изображений, использующегося для обучения нейронных сетей. В первой статье Approximating CNNs with bag-of-local features models works surprisingly well on ImageNet авторы берут м...

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

[Из песочницы] Крибле Карбле Gradle: магия автоматической сборки Разработчики облегчают жизнь людям, а Gradle — разработчикам. Если вы пишете на Android, эта статья для вас. Читайте о том, что за зверь этот Gradle (спойлер: он слон), а также — как с ним работать. Gradle — система автоматической сборки, которую используют для упрощения раб...

[Из песочницы] Пишем telegram бота на python с помощью библиотеки telebot Лирическое отступление Боты сегодня — это многофункциональный инструмент, как для бизнеса, так и для развлечений. Лично я считаю, что за ними будущее. Конечно, прочитав эту статью, вы не сможете создавать большие проекты, но заинтересоваться и начать — вполне. Установка и н...

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

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

[Перевод] Представьте себе ваши данные перед тем, как вы их соберете Перевод подготовлен для студентов курса «Прикладная аналитика на R». Нам, как исследователям данных (data scientist), часто дают набор данных и просят использовать его для получения информации. Мы используем R для обработки, визуализации, моделирования, подготовки таблиц и...

[Из песочницы] Регресс или регрессив в тестировании О себе писать не буду (кто я и чем занимаюсь). Моя статья возможно ответит на эти вопросы. Не могу терпеть эту боль и слышать как неправильно произносят некоторые определения в тестировании. Да, я — тестировщик. Хотя мои близкие меня постоянно спрашивают — «Ты точно тести...

[Перевод] Нативное редактирование Jupyter Notebooks в VS Code С осктябрьским релелизом расширения Python, мы рады объявить о поддержке нативного редактирования Jupyter Notebooks в Visual Studio Code! Теперь вы можете напрямую редактировать файлы .ipynb и получать интерактивность Jupyter Notebooks с полной мощью VS Code. Вы можете упра...

Обзор GeForce NOW в России: плюсы, минусы и перспективы В октябре этого года облачный игровой сервис GeForce Now начал работу в России. Собственно, он был доступен и раньше, но для регистрации нужно было получить ключ, который доставался далеко не каждому игроку. Теперь можно зарегистрироваться и играть. Об этом сервисе я уже ...

[Перевод] Функциональный JavaScript: пять способов нахождения среднего арифметического элементов массива и метод .reduce() Методы итерирования массивов похожи на «стартовые наркотики» (это, конечно, не наркотики; и я не говорю, что наркотики — это хорошо; это — просто фигура речи). Из-за них многие «подсаживаются» на функциональное программирование. Всё дело в том, что они невероятно удобны. Кро...

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

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

[Перевод] Как работают методы persist, merge из JPA и методы save, update, saveOrUpdate из Hibernate Добрый день, друзья. Перевод статьи подготовлен специально для студентов курса "Разработчик Java". Введение В этой статье я собираюсь показать вам, как работают методы persist, merge из JPA и сравнить их с методами save, update, saveOrUpdate из Hibernate. Хотя лучше испол...

[Перевод] Автоматически импортируем избранные библиотеки в IPython или Jupyter Notebook Всем привет! Сегодня мы разберем очень короткий, но полезный лайфхак о том, что нужно сделать, чтобы не вводить, к примеру, «import pandas as pd» по 10 раз в день. Для этого нужно: Перейти к ~/.ipython/profile_default; Создать папку с именем startup, если ее там еще нет; ...

OpenSceneGraph: Управление окнами и режимами отображения Введение Мы уже говорили о том, что класс osg::Camera управляет связанным с ним графическим контекстом OpenGL. Графический контекст инкапсулирует информацию о том, как и куда происходит отрисовка объектов и какие атрибуты состояния к ним применяются. Под контекстом понимают...

[Перевод] Приближающиеся изменения SameSite Cookie в ASP.NET и ASP.NET Core SameSite — это расширение файлов cookie HTTP 2016 года, предназначенное для предотвращения подделки межсайтовых запросов (CSRF). Первоначально его дизайн представлял из себя дополнительную функцию, которую можно использовать, добавив новое свойство SameSite в файлы cookie. У...

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

[Перевод] [The Old New Thing] Могу ли я использовать свой стек как угодно? В Windows стек растет от больших адресов к меньшим. Иногда это определяется архитектурно, а иногда это просто принятое соглашение. Значение указателя стека (регистр процессора), является указателем на значение в верхней части стека. А значения, расположенные глубже по стеку,...

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

[recovery mode] Вертикальное письмо в современном IT Привет, Хабр! Двунаправленным письмом в наше время никого не удивить. Оно поддерживается управляющими символами Уникода, для него создан HTML-тег <bdo>. Но горизонтальные письменности – не единственные существующие и применяемые для записи человеческой речи. Кроме обыч...

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

Делаем процесс разработки тяжеловесного программного обеспечения под микроконтроллеры более удобным (нет) Сейчас уже никого не удивить микроконтроллерами с энергонезависимой (чаще всего Flash) памятью объемом 512 килобайт и более. Их стоимость постепенно снижается, а доступность напротив, растет. Наличие такого объема энергонезависимой памяти дает возможность писать «тяжелые» по...

Читать_нельзя_бросать На минувшей неделе в городе И случился книжный фестиваль. Случился уже в третий раз. С одной стороны, это иркутский фестиваль, с другой — международный: приехали Эрленд Лу, Линор Горалик, Мариам Петросян и ещё с десяток авторов солидной известности. Мы пока в книжной области...

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

Состоялся официальный релиз экшен-файтинга The King of Fighters ALLSTAR на iOS и Android Издатель Netmarble официально запустил свой новый проект — The King of Fighters ALLSTAR. Это мобильная версия файтинга в популярной серии, первые части которой выходили еще в середине 90-х. Больше всего проект понравится фанатам франшизы, ведь здесь можно собрать больше 200...

[Из песочницы] Под капотом у React. Пишем свою реализацию с нуля 


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

[Из песочницы] Восстановление данных с XtraDB таблиц без файла структуры, используя побайтовый анализ ibd файла Предыстория Так произошло, что сервере был атакован вирусом шифровальщиком, который по "счастливой случайности", частично отставил не тронутыми файлы .ibd (файлы сырых данных innodb таблиц), но при этом полностью зашифровал файлы .fpm (файлы структур). При этом .i...

Magento 2. Monolog или как писать логи Изучая различные модули для Magento 2 можно заметить, что логирование используется значительно реже по сравнению с Magento 1. В большей степени это связано с тем, что запись логов стала сложнее. Здесь я бы хотел сконцентрироваться на технической стороне вопроса, а именно как...

Microsoft пропатчила атакуемый RCE-баг в Internet Explorer В рамках ноябрьского «вторника патчей» в скриптовом движке Microsoft закрыта критическая уязвимость, уже используемая в атаках. Проблема, зарегистрированная как CVE-2019-1429, позволяет через порчу памяти выполнить вредоносный код и затрагивает все поддерживаемые в...

Финансовая ловушка в Яндекс.Деньги Привет, Хабр! Хотел бы поделиться с вами одной особенностью Яндекс.Денег, которая выглядит, как ловушка для ваших денег и, на мой взгляд, является хорошим примером непродуманного UX. Хочется верить, что это было сделано не нарочно, а эта небольшая статья или как-то оградит ч...

От новых API в Chromium пострадает не только uBlock Origin, но и другие расширения Три месяца разработчики Chromium обсуждают новые программные интерфейсы declarativeNetRequest API, лишающие возможности полноценно использовать webRequest API. Расширения используют данные API для блокировки контента на лету во время загрузки страницы. В новой системе блокир...

[Перевод] Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 3: порядок пропсов важенЭтот пост — перевод первой статьи ...

Maven-путь построения Go проектов Сначала небольшая предыстория. В начале 2010-х, я сделал небольшую утилиту-конвертер для BIN файлов эмулятора БК-0010 в WAV файлы. Утилита была написана на Python с целью максимальной переносимости, работала без проблем и я на какое то время забыл о ней. Но в 2016м появился ...

Cultist Simulator — карточная игра с элементами RPG и рогалика с ПК скоро выйдет на мобильных Большинству сервис Humble Bundle известен благодаря возможности приобрести набор игр, программ, фильмов или комиксов в наборе, стоимость которого в десятки раз ниже суммарной цены всех представленных в нем продуктов. Но с 2017 года Humble Bundle превратился еще и в издателя...

Как работает PageRank: реализация на языке R через линейную алгебру и power-метод Привет, хабровчане! Меня зовут Алексей. На этот раз я вещаю с рабочего места в ИТАР-ТАСС. В данном небольшом тексте я познакомлю вас с методом расчета PageRank © (далее буду называть его ПР) на простых, понятных примерах, на языке R. Алгоритм является интеллектуальным дос...

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

[Перевод] Конференция DEFCON 20. Захват за 60 секунд: от гостевой учётной записи до администратора домена Windows. Часть 1 Привет, я Зак Фейзел, я буду говорить быстро, если будет слишком быстро, можете меня притормозить. Днём я пентестер, ночью диджей и фотограф, меня можно найти в «Твиттере» по нику @zfazel. Люди всегда спрашивают меня насчёт дипломов. Я не из тех людей, которые перечисляют ку...

Обзор NO.1 DT 28. Умные часы на все случаи жизни Согласитесь, наручные часы уже давно перестали быть элементом украшения, ведь за последние годы они превратились в нечто большее и существенно прибавили в функциональности. Сегодня мы бы хотели представить вашему вниманию прямое тому доказательство. Встречайте, перед вами сп...

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

[Перевод] Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 3: порядок пропсов важенУ нас есть компонент переключатель...

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

Мгновенная настройка привычных файловых ассоциаций Автоматизировал задание файловых ассоциаций, то есть выбор программы которая будет открывать файл из Explorer/Finder. И делюсь. Сначала проблематика. Файлы нужных расширений часто не открываются по умолчанию ничем, а если открываются, то каким-нибудь iTunes. Под windows нужн...

[Из песочницы] JPEG от мира 3D. Что такое glTF? Определение и краткая история GLTF (GL Transmission Format) — это формат файла для хранения 3Д сцен и моделей, который является крайне простым в понимании (структура записана в стандарте JSON), расширяемым и легко взаимодействующим с современными веб-технологиями. Данный фор...

[Из песочницы] Тестирование пользовательского функционала вебсайта с помощью Capybara page objects Page Objects могут быть использованы как мощный метод абстракции (изоляции) ваших тестов от технической реализации. Важно помнить, их (Page Objects) можно использовать для увеличения стабильности тестов и поддержания принципа DRY (do not repeat yourself) — посредством инкапс...

[Из песочницы] Etherblade.net — opensource проект по созданию инкапсулятора ethernet-трафика на FPGA (часть первая) Сразу хочу оговориться, что эта статья не только подразумевает пассивное чтение, но и приглашает всех желающих присоединяться к разработке. Системные программисты, разработчики железа, сетевые и DevOps инженеры — добро пожаловать. Поскольку проект идет на стыке сетевых те...

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

5 полезных плагинов для webpack Привет, Хабр! У webpack'а есть много полезных плагинов, о которых многие не знают и не используют в своих проектах. Под катом я собрал 5 таких, они могут здорово упростить вам жизнь! Читать дальше →

Почему наши телескопы не могут найти «девятую планету»? История астрономии была историей отступающих горизонтов. Изобретение телескопа вывело нас за пределы возможностей невооруженного глаза, к миллионам (и миллиардам) звезд нашего Млечного Пути. Применение фотографии и многоволновой астрономии к телескопам вывело нас за пределы...

[Перевод] Создание динамических PDF-файлов с использованием React и Node.js Материал, перевод которого мы сегодня публикуем, посвящён созданию динамических PDF-файлов с использованием HTML-кода в качестве шаблона. А именно, речь пойдёт о том, как сформировать простой счёт на оплату неких товаров или услуг, динамические данные, включённые в который, ...

Spring Boot 2 и JDK 8: Вы все еще используете аннотации @Param, @RequestParam и @PathVariable? Тогда статья для Вас Здравствуй, Хаброчитатель! Разрабатывая учебный проект по Spring Boot 2 решил поэкспериментировать с @Param в запросах Spring Data JPA, а точнее c их отсутствием: @Transactional(readOnly = true) public interface UserRepository extends JpaRepository<User, Integer> { ...

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

Простое шифрование БД SQlite Так получилось, что я очень люблю использовать SQLite СУБД. Программируя на ассемблере, я иногда нуждаюсь в полноценной СУБД. Мои программы редко превышают в размере несколько сотен килобайт. Понятно, что использовать с ним СУБД в несколько сотен мегабайт по меньшей мере пр...

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

iOS Responder Chain или Что спрашивают на интервью Какая разница между первым и вторым примером? За что отвечает таргет? В каком случае вызывается метод при нажатие кнопки? TL;DR При нажатии на кнопку наш метод вызывается в обоих случаях. Только в первом примере UIKit попытается вызвать метод в назначенном таргете(у нас э...

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

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

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

Цена биткоина достигла $50 000 и другие breaking news, в которые мы поверили 1 апреля 1 апреля традиционно богат на сенсации. Вы и представить не можете, насколько изменилась криптовалютная индустрия за одни только сутки! Журнал ForkLog собрал самые горячие новости, которые разделят вашу жизнь на до и после! Известно ли вам, что блокчейна Beam больше не сущес...

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

Kotlin Native: следите за файлами Когда вы пишите command line утилиту, последнее, на что вам хочется полагаться, так это на то, что на компьютере где она будет запущена установлен JVM, Ruby или Python. Так же хотелось бы на выходе иметь один бинарный файл, который будет легко запустить. И не возиться слишко...

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

#TC_Helicon #GOXLR – компактный 4-х канальный #микшер-аудиоинтерфейс Компания TC Helicon выпустила компактный 4-х канальный микшер со встроенным звуковым интерфейсом, который предназначен для вещания и стриминга.Устройство оснащено 4 моторизированными фейдерами с небольшими дисплеями, 4 поворотными регуляторами и набором кнопок. Все элемен...

Состоялся релиз Microsoft.UI.Xaml 2.2 Компания Microsoft объявила о выпуске новой версии Windows UI Library для разработчиков программного обеспечения, которая принесла с собой несколько весьма приятных изменений, в том числе новый элемент управления TabView, улучшение кнопки «Назад» в NavigationView, поддержку...

Почти Paint: приложения для рисования на Android Встроенная в инструментарий операционной системы Windows программа Paint — это действительно знаковое приложение. Да, оно не обладает всеми преимуществами того же Photoshop, но зато позволяет вам легко создавать незамысловатые рисунки, скетчи и наброски. К тому же мно...

[Перевод] Что записано в this? Закулисье JavaScript-объектов JavaScript — это мультипарадигменный язык, поддерживающий объектно-ориентированное программирование и динамическую привязку методов — мощную концепцию, которая позволяет структуре JavaScript-кода меняться во время выполнения программы. Это даёт разработчикам серьёзные возмож...

Редактор в UX: тру стори, риал лайф Привет, это Наташа, лид-редактор в UX Яндекс.Денег. Я пишу этот текст, потому что больше не могу молчать о своей работе. Раньше про нас думали, что мы копирайтеры. Пишем получше, чем менеджеры. Умеем проверять грамотность. Редактируем, чтобы стало понятнее. Убираем лишние ...

[Перевод - recovery mode ] Веб скрапинг для веб разработчиков: краткое резюме Знание только одного подхода к веб скрапингу решает проблему в краткосрочной перспективе, но все методы имеют свои сильные и слабые стороны. Осознание этого экономит время и помогает решать задачу эффективнее. Многочисленные ресурсы рассказывают об единственно верном мето...

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

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

Обзор методов сегментации изображений в библиотеке scikit-image Thresholding Это самый простой способ отделить объекты от фона, выбрав пиксели выше или ниже определенного порога. Это обычно полезно, когда мы собираемся сегментировать объекты по их фону. Вы можете прочитать больше о пороге здесь. Люди, знакомы с фильмом «Терминатор», нав...

Neural Matching: как адаптировать контент под реалии Google У поисковиков не очень с логикой, это факт. Но они стараются. А SEO-специалисты стараются в ответ — пытаются добиться предельной релевантности страниц, опираясь на догадки и эксперименты. Недавно Гугл порадовал новым фактором ранжирования — Neural Matching. Мы почитали, чт...

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

[Перевод] Учебный курс по React, часть 25: практикум по работе с формами В сегодняшней части перевода учебного курса по React вам предлагается выполнить практическое задание по работе с формами. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: файлы компонентов, структура проект...

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

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

[Из песочницы] Особенности HttpUrlConnection из java.net Здравствуйте, сегодня постараюсь рассказать о том, как можно отправить запрос и прочитать ответ от HTTP сервера, используя URLConnection из библиотеки JRE. Сейчас изучаем Java в онлайн режиме. Вся наша команда использует Slack для работы и общения. Заинтересовала возможнос...

Основы архитектуры приложений на Flutter: Vanilla, Scoped Model, BLoC (оригинал статьи на английском языке опубликован на Medium) Flutter предоставляет современный реактивный фреймворк, большой набор виджетов и тулов. Но, к сожалению, в документации нет ничего похожего на руководство по рекомендуемой архитектуре приложения для Android. Не сущ...

Ripple и Coinbase инвестировали в расширение деятельности биткоин-биржи Bitso в Латинской Америке Ведущая криптовалютная биржа Мексики Bitso привлекла финансирование от известных в отрасли инвесторов на расширение своей деятельности в Латинской Америке. Сумма инвестиций не раскрывается, сообщает The Block. Раунд финансирования возглавила финтех-компания Ripple, также в н...

Простые рецепты хороших юнит-тестов. Лекция Яндекса Если освоить небольшой список типичных ошибок, возникающих при написании юнит-тестов, можно полюбить писать их и стать гуру в своей команде. Руководитель санкт-петербургской группы разработки Яндекс.Браузера для Android Константин Заикин kzaikin рассказывает о подобных ошибк...

Как узнать размер любого файла на iPhone или iPad Одно из главных нововведений iOS 12 — приложение «Быстрые команды». Новая программа позволяет пользователям не только создавать цепочки действий для автоматизации повседневных и рутинных операций, но и совершать действия, которые изначально не были предусмотрены iOS. ...

Предлагаемые изменения в Chromium нарушат работу uBlock Origin Разработчик uBlock Origin заявил, что его расширение для блокировки рекламы не сможет работать, если будут приняты изменения в Chromium. Речь идёт о внедрении declarativeNetRequest API, которые лишают возможности использовать webRequest API. Google считает, что изменения нео...

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

[Перевод] Учебный курс по React, часть 23: первое занятие по работе с формами В этой части перевода учебного курса по React мы поговорим о работе с формами. В частности, сегодняшнее занятие посвящено организации взаимодействия компонентов и текстовых полей. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные...

[Перевод] Учебный курс по React, часть 27: курсовой проект В этой части перевода учебного курса по React вам предлагается создать генератор мемов. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: файлы компонентов, структура проектов → Часть 4: родительские и дочер...

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

[Перевод] Используйте __main__.py Зачем нужен __init__.py знает, наверное, любой питонист, но что насчёт __main__.py? Я видел немало проектов либо рабочих, либо на Github, которые не используют это магический файл, хотя могли бы сделать свою жизнь проще. На мой взгляд, __main__.py это лучший способ для взаим...

[Перевод] Генерация подземелий в Diablo 1 Diablo 1 — это классический roguelike 1996 года в жанре hack and slash. Это была одна из первых успешных попыток познакомить широкие массы с roguelike, которые до этого имели нишевую графику в виде ASCII-арта. Игра породила несколько сиквелов и множество имитаций. Она извес...

Предсказание красоты заката TL;DR: Из чего состоит красивый закат? Как предсказать эти элементы заката? Откуда взять данные для предсказаний? Для удачной фотосессии, требуется, как правило серьезная подготовка. И если собрался снимать закат, хорошо бы знать заранее, насколько этот закат будет красив. ...

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

Как создать HTML-подпись с картинкой для электронных писем на macOS Многие пользователи Mac хотели бы установить автоматическую HTML-подпись для своих электронных писем, чтобы не приходилось каждый раз добавлять ее при начале новой переписки. Как оказалось, осуществить это не так уж и трудно – следует всего лишь выполнить несколько простых д...

Подборка сервисов на основе ИИ, которые облегчат вам жизнь уже сегодня (1/3) Привет, читатель. Думаю, что ненужно рассказывать в который раз о том, что такое искусственный интеллект, какую пользу он несёт и для чего нужен. Перейду сразу к делу. Ниже собрал подборку сервисов на основе ИИ, которые могут упростить вам жизнь уже сегодня. Свою статью я р...

Стандарт WebAuthn официально завершен W3C и FIDO Alliance объявили о завершении разработки стандарта беспарольной аутентификации WebAuthn, которая велась с 2015 года. Подробнее о нем рассказываем далее. Читать дальше →

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

Google тестирует расширенные сниппеты для PDF-файлов В некоторых случаях они отображаются даже выше HTML-версий того же контента

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

Собираем Perl прямиком из 1987 года Прочитав новость "Код интерпретатора Perl официально перенесён на GitHub" на ресурсе LINUX.ORG.RU я решил взглянуть на репозиторий Perl 5, который теперь уже находится на GitHub’е. Удивительно, как трепетно и качественно его перенесли, сохранив не только абсолютно всю 32-ле...

[Перевод] Безумие дотфайлов Мы больше не контролируем свои домашние каталоги. В моём собственном 25 обычных файлов и 144 скрытых. В дотфайлах хранятся данные, которые не принадлежат мне: они принадлежат программистам, чьи программы решили захватить моё пространство, предназначенное для хранения моих л...

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

Превращаем DSLogic Basic в DSLogic Plus Привет, Хабр! В данной статье расскажу как модифицировать DSLogic Basic до DSLogic Plus. Возможно для кого-то это не будет новостью. Во всяком случае — собрал инфу с зарубежного форума, убрал все лишнее и рассказываю вам. Кому интересно — прошу под кат. Читать дальше →

Пишем на Java для Nintendo DS Введение Все началось с того, что я случайно нашел список homebrew программ (программы, разработанные усилиями пользователей для устройств, не предназначенных для запуска пользовательского ПО) для Nintendo DS и в нем увидел одну очень интересную строчку, а именно: «Pstros ...

[Перевод] Ещё лучшая ZIP-бомба В статье показано, как создать нерекурсивную zip-бомбу, которая обеспечивает высокую степень сжатия путём перекрытия файлов внутри zip-контейнера. «Нерекурсивная» означает, что она не зависит от рекурсивной распаковки декомпрессорами файлов, вложенных в zip-архивы: здесь все...

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

[Перевод] Какой здесь this? Внутренняя работа объектов JavaScript Фотография: "Любопытный" Liliana Saeb (CC BY 2.0) JavaScript – это мультипарадигмальный язык, который поддерживает объектно-ориентированное программирование и динамическое связывание. Динамическое связывание — это мощная концепция, которая позволяет изменять структуру JavaS...

Отличаем символы от мусора: как построить устойчивые нейросетевые модели в задачах OCR В последнее время мы в группе распознавания компании ABBYY всё больше применяем нейронные сети в различных задачах. Очень хорошо они зарекомендовали себя в первую очередь для сложных видов письменности. В прошлых постах мы рассказывали о том, как мы используем нейронные сети...

Решение задания с pwnable.kr cmd1, cmd2, asm, blukat. Обходим фильтрацию в Linux. Пишем shellcode с помощью pwntools В данной статье посмотрим как обойти легкий фильтр, разберемся как написать shell c помощью pwntools, а также решим несколько заданий с сайта pwnable.kr. Организационная информацияСпециально для тех, кто хочет узнавать что-то новое и развиваться в любой из сфер информацион...

[Перевод] SMAA: улучшенное субпиксельное морфологическое сглаживание Данная статья основана на журнале Хорхе Хименеса, Хосе Эчеварриа, Тиаго Соуса и Диего Гутьерреса. Их демо реализации SMAA можно посмотреть здесь (файл .exe). На моём GTX 960 2GB оно работает вполне нормально. Старые способы сглаживания (антиалиасинга) Долгие годы стандарт...

Многообразный мир embedded systems и место Embox в нем Проекту Embox уже исполнилось 9 лет, но многие не понимают, что это такое и с чем его едят зачем он нужен. Некоторые из тех, кто слышал о проекте и знают, что это операционная система, считают, что Embox — это “отечественная ОС”. Действительно, задумывался Embox как попытка ...

[Перевод] 7 шагов к использованию Room. Пошаговое руководство по миграции приложения на Room Room — это библиотека, которая является частью архитектурных компонентов Android. Она облегчает работу с объектами SQLiteDatabase в приложении, уменьшая объём стандартного кода и проверяя SQL-запросы во время компиляции. У вас уже есть Android-проект, который использует SQL...

[Из песочницы] Generic Recycler View или как не писать шаблонный код Все мы пишем приложения и у всех нас есть списки. И самое очевидное решение это RecyclerView. Сама по себе реализация не сложна и писать гайд по RecyclerView уже не актуально. Но есть одно но. Каждый раз когда нам нужен список мы создаем класс, в нем прописываем шаблонный ме...

Убийца iOS: джейлбрейк с помощью checkra1n в вопросах и ответах Итальянский исследователь Лука Тодеско, известный тем, что протяжении последних нескольких лет ищет уязвимости в iOS, выпустил checkra1n, новую утилиту для джейлбрейка, основанную на эксплоите, использующем уязвимость в загрузчике устройств на процессорах A5-A11. Опасность...

Чем занимаются бизнес-аналитики в ИТ Каждому из нас наверняка приходилось слышать один и тот же вопрос от своих родителей или друзей не из «программистской тусовки»: «А что вы там на своей работе вообще делаете?». Обычно, после попытки ответить следует еще неизменный комментарий: «Эх ты, программист, даже холо...

Google отключает десктопное Chrome-расширение Data Saver Google сообщил, что отключит десктопное расширение для Chrome «Экономия трафика» (Data Saver). Теперь эта функция будет называться Lite mode, а воспользоваться ею смогут только владельцы устройств на Android. Lite mode будет и дальше сокращать трафик, получаемый при загрузке...

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

Чем напечатать авиамодель? При печати авиамодели, наверно все, как и я сталкиваются с такой проблемой, с чего лучше напечатать авиамодель.Хотя если разобраться по существу то выбор материала не велик - это PLA, Carbon PLA и PETG.Начнём с PLAПечатать детали авиамодели PLA очень легко и просто, но есть ...

WeakRef — предложение для добавления в стандарт ECMAScript Написал небольшой пост в своём телеграм-канале. Подумал, что она может быть интересна читателям Хабра. Недавно в блоге V8 появилась статья, посвящённая новому пропозалу WeakRef (Stage 3) — "Weak references and finalizers". Попробую объяснить своими словами его суть на пример...

Python по всем правилам. Делаем свою структуру данных совместимой с фичами Python Для подписчиковЕсли ты пишешь на Python, то наверняка видел в стандартных библиотеках определения методов, обернутых в двойные подчеркивания. Эти «магические» методы образуют многие из полезных интерфейсов, которыми ты постоянно пользуешься, — например, когда получаешь значе...

Security Week 38: слежка за мобильными устройствами через SIM-карту Когда мы говорим об уязвимостях в мобильных устройствах, речь идет обычно о проблемах в Android или iOS. Но не стоит забывать о радиомодуле и SIM-карте, которые являются по сути отдельными вычислительными устройствами со своим софтом и большими привилегиями. Последние пять л...

Reaktive — мультиплатформенная библиотека для реактивного Kotlin Многие сегодня любят реактивное программирование. В нём масса плюсов: и отсутствие так называемого "callback hell", и встроенный механизм обработки ошибок, и функциональный стиль программирования, который уменьшает вероятность багов. Значительно проще писать многопоточный ...

[Перевод] Учебный курс по React, часть 12: практикум, третий этап работы над TODO-приложением В сегодняшней части перевода курса по React мы предлагаем вам выполнить практическое задание по формированию наборов компонентов средствами JavaScript и продолжить работу над TODO-приложением. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: ф...

[Перевод] Всё, что вам нужно знать про CSS Margin Одним из первых, что многие из нас усвоили, когда изучали CSS, были особенности разных составляющих блока в CSS, описываемые как «Блочная Модель CSS». Один из элементов в блочной модели — margin (внешний отступ), прозрачная область вокруг блока, которая отталкивает другие эл...

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

У вас тоже есть такой друг, а может это Вы? Моему другу почти 32 и он программист (java-разработчик, если хотите). Раньше я любил читать «мотивашки», о том как люди приходят в IT, я читал их пачками, и каждая следующую, хоть и была похожа на предыдущую — давала свежий глоток позитива и оптимизма, веры в светлое будуще...

Microsoft выпускает обновление для исправления функции SFC в Windows 10 В июле у ряда пользователей Windows 10 возникли проблемы при исправлении поврежденных файлов с помощью функции sfc /snannow, и Microsoft сообщила, что виновником является обновление для Защитника Windows.Функция командной строки Windows 10 sfc /snannow не работает со следующ...

[Перевод] Unreal Engine 4 — шейдер горения Это небольшой шейдер, который появился, когда я думал о различных методах применения flowmap. Существуют много эффектов перехода/растворения, но большинство из них выглядит довольно статично, так как они используют статические текстуры. Данный шейдер далек от совершенства, н...

Microsoft Azure Developer Camp Россия 23 мая | 9:30 – 19:00 Офис Microsoft, БП Крылатские Холмы, ул. Крылатская 17к1, Переговорные комнаты Уран, Юпитер, Сатурн Москва, Россия Распространение облачных технологий постепенно изменяет методы разработки приложений, и перед программистами возникают новые сложные зад...

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

[Перевод] Почему сериал «Чернобыль» настолько плохо описал ядерную энергию Нет, чернобыльская радиация не повредила вашему ребёнку Статья Майкла Шелленбергера – известного автора и колумниста, пишущего про энергию и окружающую среду. С начала мини-сериала «Чернобыль» от HBO, рассказывающего о ядерной катастрофе 1986 года, журналисты расхваливали...

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

Адаптируем AutoMapper под себя AutoMapper один из основных инструментов применяемых в разработке Enterprise приложений, поэтому хочется писать как можно меньше кода определяя маппинг сущностей. Мне не нравится дублирование в MapFrom при широких проекциях. CreateMap<Pupil, PupilDto>() .ForMember(x =...

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

Руководство: как выбрать электровелосипед на примере Twitter — говорим о рамах Рассказываем о велорамах — материалах, из которых их делают, и форм-факторах. Изображение: Gemma Evans / Unsplash Материал Материал рамы влияет на цену велосипеда и его характеристики: внешний вид, вес, прочность. Чаще всего используют сталь, алюминий, титан и карбон. С...

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

Mini cube factory ЧПУ 5 в 1 В сегодняшней статье опишу конструкцию рамы стола.Габариты печатаемой модели составляют 300*600*350.Лифты собраны из набора деталей, только лишь по тому что конструкция модульная, универсальная и собирается как конструктор лего под нужные вам спеки!  Использовал подшипники д...

Лазерная коррекция зрения — так ли эффективен метод Smile на самом деле? Мои исходные данные: небольшая близорукость, -1 диоптрия, но всего лишь 20% остроты — видел только две строчки. Очки или линзы мне были неудобны, поэтому я решил сделать операцию. Выбор сводился всего к двум типам — Femto lasik или Smile. Фемто — проверенный и надежный мет...

[Перевод] Windows Subsystem for Linux (WSL) версии 2: как это будет? (FAQ) Под катом расположен перевод опубликованного FAQ'а о деталях будущей WSL второй версии (автор — Craig Loewen). Затронутые вопросы: WSL 2 использует Hyper-V? Будет ли WSL 2 доступна на Windows 10 Home? Что будет с WSL 1? Она будет заброшена? Будет ли возможность одновремен...

Как оценить рентабельность внедрения дорогостоящей системы и обосновать бюджет перед руководством — Надо бы корову купить… — Надо бы, да где денег взять? «Трое из Простоквашино» Чтобы ваш разговор c руководством о необходимости проекта внедрения не свелся к этому короткому диалогу из мультфильма, нужно подготовить аргументацию заранее. Мы много лет занимаемся внедр...

Microsoft обнаружила криптовалютный майнер, атаковавший почти 80 000 компьютеров Инженеры по безопасности Microsoft рассказали о новой разновидности криптовалютного майнера Dexphot, который с октября 2018 года заразил почти 80 000 компьютеров под управлением Windows. Своего пика вредонос достиг в июне 2019 года. Специалисты Microsoft подчеркнули довольно...

Введение в ECMAScript 2017 (ES8) Оглавление Предисловие Краткий обзор ES7 1. Object.entries 2. Object.values 3. String.prototype.padEnd 4. String.prototype.padStart 5. Object.getOwnPropertyDescriptor 6. Trailing commas 7. SharedArrayBuffer 8. Atomics 9. Async functions Предисловие Здравствуйте, в прошлом я...

Обзор PPKP. Классика жанра Разработчики игры PPKP решили, что геймерам не нужны очень уж сложные механики или невероятно навороченный геймплей. Достаточно предоставить действительно интересный сюжет, сложные бои и массу монстров, которые не дают спуску. Именно это и привлекло аудиторию — мы все в детс...

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

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

[Перевод] Возможности современного JavaScript, о которых вы могли не знать Несмотря на то, что в последние семь лет я пишу на JavaScript почти каждый рабочий день, должен признаться, что уделяю мало внимания сообщениям о нововведениях от ES. Главные возможности вроде async/await и прокси — это одно, но ещё каждый год идёт поток мелких поэтапных и...

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

Свежая утечка указывает на то, что смартфон Samsung Galaxy S10 получит криптовалютный кошелек Известный инсайдер и дизайнер Бенджамин Гескин опубликовал на своей страничке в социальной сети Twitter новые живые фотографии стандартной версии пока еще не анонсированного флагманского смартфона Samsung Galaxy S10. Новые снимки включенного Galaxy S10 позволяют еще раз оцен...

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

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

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

TJBOT как иллюстрация IBM Watson services Привет, Хабр! Весной 2019 года прошел очередной Think Developers Workshop, на котором все желающие могли собрать картонного робота TJBota под управлением IBM Watson Services. Под катом находится подробная инструкция, из чего и как собрать такого робота, полезные ссылки и про...

ASRock представила первую в мире видеокарту в формате mini-ITX и с портом Thunderbolt 3 Компания ASRock приурочила к выставке Computex 2019 анонс достаточно необычного продукта. Новинка называется RX570TM-ITX/TBT, и это первая в мире видеокарта с интерфейсом Thunderbolt 3. Да, сейчас на рынке множество внешних видеокарт с таким интерфейсом, но там использу...

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

Deep Learning vs common sense: разрабатываем чат-бота Чем больше пользователей у вашего сервиса, тем выше вероятность, что им понадобится помощь. Чат с техподдержкой — очевидное, но довольно дорогое решение. Но если применить технологии машинного обучения, можно неплохо сэкономить. Отвечать на простые вопросы сейчас может и бо...

Статистика сайта и своё маленькое хранилище Утилита Webalizer и инструмент Google Analytics помогали мне много лет получать представление о том, что происходит на веб сайтах. Сейчас я понимаю, что они дают очень мало полезной информации. Имея доступ к своему файлу access.log, разобраться со статистикой очень просто и ...

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

Microsoft расширяет возможности приложения «Ваш телефон» Недавно мы писали о новой важной функции, появившейся в приложении Microsoft «Your Phone». Эта новая функция называется «Экран телефона», которая перенесет экран вашего телефона в приложение «Ваш телефон», и позволяет вам контролировать все ваши мобильные приложения с вашего...

[Перевод] Грамматика английского. Who vs. Whom – как понять, какое слово использовать Разобраться в хитростях английской грамматики может быть довольно непросто. Классический пример здесь – выбор между who и whom. Даже носители языка не всегда корректно используют нужное слово, что уж говорить о тех, кто только изучает английского. В блоге одного из сервис...

Epic Games запускает новую мобильную игру Battle Breakers Студия Epic Games, объявила, что их новая бесплатная мобильная игра Battle Breakers, теперь доступна для Android и iOS. Battle Breakers — героический баттлер с элементами RPG, где игроки спасают волшебное королевство, которое захватили космические монстры. Игроки могут ...

Советские мечты о будущем, часть 2. Теперь с сепульками В предыдущей серии: мы составили подборку советской мультипликационной научной фантастики. Собрали комментарии о тех мультфильмах, которые не вошли в первую часть — и рассказываем о них сейчас. Читать дальше →

[Из песочницы] Расшифровка LUKS контейнера в момент загрузки системы Всем доброго дня, ночи! Этот пост будет полезен тем, кто используется шифрование данных LUKS и хочет производить decryptдешифровку дисков под Linux (Debian, Ubuntu) на стадии расшифровки root раздела. И такой информации в интернете я найти не смог. Совсем недавно с увеличен...

DroidScript 1.68 DroidScript — программа поможет легко написать приложения для смартфона или планшета используя javascript. При этом нет необходимости в ПК, просто редактируйте код непосредственно на устройстве. А широкий набор api этому только способствует. Однако есть возможность отладки...

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

[Перевод] История создания первой Diablo Больше двадцати лет назад Дэвид Бревик участвовал в создании Blizzard North. Также он сыграл важную роль в разработке хита студии — Diablo. «Оригинальный концепт я придумал ещё в старшей школе», — рассказывает Бревик, посещавший школу в Области залива Сан-Франциско (назван...

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

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

[Перевод] Уязвимость runC, затрагивающая Kubernetes, Docker и containerd Сообщество Linux занято сейчас устранением недавно обнаруженной уязвимости, которая касается средства для запуска контейнеров runC, используемого Docker, CRI-O, containerd и Kubernetes. Уязвимость, получившая идентификационный номер CVE-2019-5736, даёт заражённому контейне...

Сжимаем APK, стараясь сохранить его работоспособность / PxHere / PD Оптимизация веса APK — это нетривиальная, но очень актуальная во времена Instant App, задача. Включение proguard избавит вас от ненужного кода, если ваши зависимости можно определить на этапе компиляции, но в APK есть ещё несколько видов файлов, которые можно ...

JustCode — скоростной браузер для бюджетных компьютеров и планшетов на Windows Предыстория У меня есть убогий дешевый планшет на Windows 10 с одним гигабайтом оперативной памяти и 16 гигабайтами места, в пределах которого установлен Windows 10. Чтобы Windows 10 мог хоть как-то скачивать и устанавливать обновления — я скрутил размер файла подкачки в ...

[Из песочницы] Как совместить преимущества ноутбука и стационарного компьютера? Разбор проблемы и идеи решения В данный момент ноутбуки и персональные компьютеры сильно отличаются друг от друга. Под системным блоком стационарного компьютера, как правило, понимается «башня» преимущественно стандарта midi-tower, весом килограмм в 15-20 (или больше), занимающий огромное пространство под...

Как получить Google Developers Certification: Mobile Web Specialist Привет, Хабр! Сегодня хочу поделиться с вами историей о том, как я сдавал сертификационный экзамен Google Developers Certification: Mobile Web Specialist. Если честно, то каких-то объективных причин я назвать не могу, так как не слышал ещё ни об одном случае, когда наличие с...

Решение задания с pwnable.kr 25 — otp. Ограничение рамера файла в Linux В данной статье решим 25-е задание с сайта pwnable.kr. Организационная информацияСпециально для тех, кто хочет узнавать что-то новое и развиваться в любой из сфер информационной и компьютерной безопасности, я буду писать и рассказывать о следующих категориях: PWN; крипто...

[Из песочницы] Extension в Dart (Flutter) В недавном релизе языка Dart 2.6 в языке появилась новая функция, static extension или статические методы расширения, который позволяет вам добавить новые методы к существующим типам. Зачем вообще нужны extension? Как их использовать и на что они годятся? Введение Начнём ...

Security Week 47: нетривиальные уязвимости В прошлом году у нас уже был дайджест про нетривиальные атаки. Тогда речь шла про DoS-атаку на ПК через акустическое воздействие на жесткий диск и кражу пользовательских данных через хак со стилями CSS. А на прошлой неделе как раз было опубликовано два исследования про уязви...

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

Mozilla запретил сторонним программам ставить расширения в Firefox Mozilla опубликовала официальное сообщение, в котором компания рассказала о принятом ей решении - отказаться от Sideloading. Данный метод позволял устанавливать расширения в Firefox путем добавления файла расширения в специальную папку.

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

Раскрыты детали атаки на военные ведомства Венесуэлы Весной 2019 года эксперты ESET зафиксировали более 50 зараженных компьютеров, которые регулярно связывались с C&C-сервером злоумышленников. Большинство атакованных компьютеров принадлежат вооруженным силам Венесуэлы. Под удар попали и другие госучреждения, включая полице...

[Перевод] История Vim и руководство по его эффективному использованию Примечание от переводчика: это первая часть монументальной (на самом деле монументальной) статьи о Vim и его возможностях от разработчика из Миннеаполиса и автора проекта PostgREST Джо begriffs Нельсона. Первая часть статьи отводится на знакомство с историей Vim как редакт...

[Перевод] Изучаем Docker, часть 3: файлы Dockerfile В переводе третьей части серии материалов, посвящённых Docker, мы продолжим вдохновляться выпечкой, а именно — бубликами. Нашей сегодняшней основной темой будет работа с файлами Dockerfile. Мы разберём инструкции, которые используются в этих файлах. Бублики — это инструкци...

Бэкенд, машинное обучение и serverless — самое интересное с июльской конференции Хабра Конференция Хабра — история не дебютная. Раньше мы проводили довольно крупные мероприятия Тостер на 300-400 человек, а сейчас решили, что актуальными будут небольшие тематические встречи, направление которых можете задавать и вы — например, в комментариях. Первая конференция...

[Из песочницы] KVM (недо)VDI с одноразовыми виртуальными машинами с помощью bash Кому предназначена данная статья Данная статья может быть интересна системным администраторам, перед которыми вставала задача создать сервис «одноразовых» рабочих мест. Пролог В отдел ИТ сопровождения молодой динамично развивающейся компании с небольшой региональной сетью,...

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

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

Скачиваем аудио вконтакте через клиентский js или расширение файлов .m3u8 Как все начиналось... Как всегда, зависая вконтакте, я решил скачать пару новых аудиозаписей на комп. Но меня ждало разочарование: аудиозаписи возвращались в каком-то странном формате: m3u8. Этот формат даже vlc media pleyer не воспроизводил, и я стал думать, что делать… Чит...

Секция Backend на DUMP Казань: архитектура облачных приложений, общительные микросервисы, DDD и не только Что делать, если секция Backend на конференции одна, а языков программирования несколько? Получается, либо каждому по докладу, и тогда что делать все остальное время? Либо больше внимания одному-двум языкам, а все остальные не в удел. Кажется, мы нашли выход. В Backend на DU...

Что известно о конференции VMworld 2019 Она пройдет с 4 по 7 ноября в Барселоне. Рассказываем, какие технологии обсудят специалисты VMware и приглашенные спикеры: от виртуализации до машинного обучения. Читать дальше →

Больше удобств адептам JSON-RPC Привет! Однажды, на одном проекте, где мне довелось работать только фронтом, мне пришлось столкнуться не с вездесущим REST, и не с хайповым GraphQL, а со старичком RPC, а именно — его вариантом JSON-RPC 2.0. И знаете, с тех пор (когда делаю и бэк) я использую почти всегда ...

Chrome расширения для веб-разработки и работы с GitHub Привет всем. Хочу поделиться с вами некоторыми из расширений для Хрома, которые я использую при разработке, анализе сайтов, в работе с GitHub и просто в повседневной жизни. Уверен, что для большинства читателей, список этих расширений не будет открытием, но те, кто узнает ...

Компактная С++ библиотека для программирования конечно-разностных методов в операторном стиле. Часть 1. Семантика Представлена семантика разработанной библиотеки pde++ для программирования конечно-разностных методов в операторном стиле. Основными объектами библиотеки являются сеточная функция, сеточная ячейка и сеточные операторы, арифметические соотношения между которыми максимально пр...

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

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

MPPT контроллер заряда на STM32F334C8T6 В комментариях под моими предыдущими статьями неоднократно возникал вполне резонный вопрос: "Зачем делать dc/dc преобразователи на микроконтроллере, когда есть готовые?" и я в качестве ответа постоянно упоминал, как наиболее яркий пример, контроллер заряда с алгоритмом MPPT....

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

Добавляем Refresh Token В прошлой статье я рассказывал про основы JWT. Если на пальцах, то это просто ключ, с помощью которого мы открываем дверь к приватным ресурсам. А что, если этот ключ украдут (точнее, сделают дубликат). Тогда кто-то еще сможет входить на сервер под вашим именем, причём мы об...

Вебинар «Тренды в медиа 2020: new age 2.0, метамодернизм и другие» На нашем вебинаре мы затронем тему трендов в медиа, которые будут актуальны в следующем году. В нем поделимся инсайтами о том, какие темы могут привлечь внимание и отозваться у вашей аудитории и какие общественные триггеры эффективно использовать, развивая продукты и рассказ...

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

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

[Из песочницы] Schemathesis: property-based тестирование для API схем Фото Chris Keats на Unsplash Многие компании, и мы в том числе, перешли от монолитов к микросервисам ради лучшей масштабируемости и ускорения циклов разработки. У нас всё еще есть монолитные проекты, но они постепенно заменяются набором небольших и аккуратных микросервисов....

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

[Перевод] Учебный курс по React, часть 19: методы жизненного цикла компонентов В сегодняшней части перевода учебного курса по React вашему вниманию будет представлен обзор методов жизненного цикла компонентов. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: файлы компонентов, структу...

[Перевод] Трагедия systemd Согласно Википедии, трагедия — это «форма драмы, основанная на человеческих страданиях, которая вызывает в аудитории сопутствующий катарсис или удовольствие». Из этого определения почерпнул вдохновение Бенно Райс в своём выступлении на конференции 2019 linux.conf.au. Его док...

Смесь из головоломки и гольф-аркады Golf Peaks вышла на Android в режиме пробного запуска Нельзя рассказывать о мобильных играх, периодически не упоминая какую-то гольф-аркаду. Golf Peaks вышла на iOS еще в прошлом году и собрала восторженные отзывы. И только сейчас проект добрался до Android в режиме пробного запуска. Это минималистичная головоломка с элементам...

Будущее по Бишопу: разработчик биткоина рассказал о дизайнерских младенцах, криптовалютах и Libra от Facebook “Я пишу код сколько себя помню, еще со средней школы… Сейчас уже даже сложно сказать, когда я начал”, — рассказывает известный разработчик Bitcoin Core и мастер скоростного набора Брайан Бишоп, широко известный в узких кругах как “искусственный интеллект в человеческом...

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

Анонс Windows 10 Insider Preview Build 18342 (Fast) Добрый день, друзья! Ночью компания Microsoft выпустила новую инсайдерскую сборку Windows 10 19H1 на быстрый канал обновлений. Как обычно, предлагаем вашему вниманию список исправлений и известных ошибок. Внимание! ПК со следующими номерами моделей процессоров не получат эт...

[Из песочницы] Haiku β1 — сделаем /b/ OS великой снова Совсем недавно (почти 4 месяца назад) вышла новая Haiku (далее — просто BeOS, ибо проект гораздо удачнее ReactOS — настолько, что разница между Haiku и BeOS уже пренебрежимо мала). Конечно же, мне давно уже надоели все эти Windows и *nix; хотелось попробовать чего-то новое,...

Том Ли: индекс несчастья биткоина говорит в пользу роста Сооснователь и управляющий партнер компании Fundstrat Global Advisors Том Ли заявил, что индекс несчастья биткоина (BMI) никогда ранее не достигал текущих значений в условиях медвежьего рынка. Об этом он сообщил в интервью Cointelegraph. Разработанный Fundstrat индекс опреде...

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

[Перевод] JsonDiscovery: Меняем опыт просмотра JSON в браузере Сегодня я хочу рассказать о JsonDiscovery, браузерном расширении для просмотра JSON. Возможно вы скажите: здесь и так полно подобных расширений!.. Да, полно, но фичи JsonDiscovery отличают его от других и делают его действительно мощным. Давайте же взглянем поближе... Читат...

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

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

Как безопасно объединить сетевые сегменты трех крупных банков: делимся хитростями Некоторое время назад под брендом ВТБ состоялось объединение трех крупных банков: ВТБ, экс-ВТБ24 и экс-Банка Москвы. Для внешних наблюдателей объединенный банк ВТБ сейчас работает как единое целое, но изнутри все выглядит гораздо сложнее. В этом посте мы расскажем о планах п...

Список известных проблем, блокирующих обновление до Windows 10 May 2019 Update Microsoft обновила публикацию в блоге о финальной сборке Windows 10 May 2019 Update под номером 18362, добавив туда список известных проблем, блокирующих возможность обновления до новой версии операционной системы. Удивляет тот факт, что Microsoft второй раз умудрилась наст...

[Из песочницы] Шифрование конфигурационных файлов Предыстория Мне поступила задача по настройке CI. Было принято решение использовать трансформацию конфигурационных файлов и конфиденциальные данные хранить в зашифрованном виде. Изучив документацию по шифрованию, вот что было сделано. Key Container В каждой ОС Windows есть...

ld -z separate-code Речь в этой статье пойдёт о небольшой security-фиче, добавленной в GNU ld к релизу 2.30 в январе 2018 года. На русском языке это улучшение упоминалось на opennet с такой аннотацией: режим "-z separate-code", повышающий защищённость исполняемых файлов ценой небольшого увели...

Зачем писать свой React Data Grid в 2019 Привет, Хабр! Я участвую в разработке ECM системы. И в небольшом цикле статей хочу поделится нашим опытом и историей разработки своего React Data Grid (далее просто грид), а именно: почему мы отказались от готовых компонент с какими проблемами и задачами мы столкнули при ра...

Поиск задач в JIRA (простым языком). Часть 2: Продвинутый поиск Структуру JQL-запросов без примеров сложно понять специалистам, не знакомым ранее с JIRA. Мы уже успели рассказать про быстрый и базовый поиск. Теперь же прейдем к самому мощному из трех методов — к продвинутому поиску. В этом режиме вы можете указывать критерии, которые ...

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

ViewPager 2 — новый функционал в старой обертке ViewPager — один из самых известных и широко используемых компонентов Android Support Library. Все простейшие карусели, онбординги и слайдеры выполнены именно на нем. В феврале 2019 года команда разработки AndroidX выпустила ViewPager2. Давайте разберемся, какие у этого были...

Конструирующий XPath? Алгоритмический XPath? Ничего, кроме XPath Здравствуйте, уважаемые читатели. В этой публикации речь пойдет о немного нестандартных применениях такого хорошо известного формализма как XPath. Все знают, что он очень удобен для извлечения информации из XML- или HTML- или еще каких-нибудь *ML-документов (как простых текс...

[Перевод] Конфигурируйте Visual Studio в вашей организации с помощью .vsconfig В Visual Studio 2017 Update 15.9 мы добавили возможность экспорта и импорта рабочей нагрузки и выбора компонентов в файл конфигурации установки Visual Studio. Разработчики могут импортировать эти файлы в новые или существующие установки. Проверка этих файлов в ваших исходных...

Пишем меньше дублирующего кода, используя биндинг в Laravel Доброго времени, уважаемые господа. Не так давно столкнулся с явлением дублирующегося и повторяющегося кода при код ревью одного проекта на Laravel. Суть в следующем: у системы существует некоторая структура внутреннего API для AJAX запросов, по сути возвращающая коллек...

Кросс-компиляция в docker. Почему бы и нет? Что такое кросс-компиляция? Какие есть инструменты для сборки бинарных файлов для Windows в Linux? Как настроить docker-контейнер для всего этого? Вот лишь небольшая часть вопросов, которые будут обсуждаться ниже. Читать дальше →

Kubernetes 1.16 — как обновиться и ничего не сломать Сегодня, 18 сентября, выходит очередная версия Kubernetes — 1.16. Как всегда нас ждет много улучшений и новинок. Но я хотел бы обратить ваше внимание на разделы Action Required файла CHANGELOG-1.16.md. В этих разделах публикуются изменения, которые могут сломать работу ваш...

arkit — архитектурные диаграммы для JavaScript, TypeScript и Flow (швед. arkitektur) Дамы и господа, представляю вашему вниманию arkit — инструмент, который анализирует файлы вашего проекта и генерирует диаграмму зависимостей между ними и внешними модулями. Наверное, проще показать на примере самого arkit: Читать дальше →

Security Week 49: взлом гостиничной инфраструктуры 28 ноября эксперты «Лаборатории Касперского» опубликовали интересное исследование о систематических атаках на компьютеры в гостиницах. Подтвержденных жертв кампании больше 20, потенциальных — больше тысячи. Исследованные атаки, скорее всего, ведут две разные группировки с не...

Миграция на Zimbra без рисков для бизнеса с помощью общего домена Ранее мы уже рассказывали о том, как можно мигрировать c IBM Notes/Domino на Zimbra. Изложенный нами вариант идеально подойдет для небольших предприятий с небольшим количеством сотрудников. Но что же делать крупным предприятиям с сотнями сотрудников, где резкий переход на но...

Как установить Google Play и другие сервисы Google на смартфоны Huawei Huawei Mate 30 не останется без сервисов Google Когда США внесли Huawei в список угроз национальной безопасности страны, закрыв ей доступ к сервисам Google и другим американским разработкам, мало кто верил, что это всерьёз. Многие до последнего ждали, что правительство США с...

[Перевод] Как работают пули в видеоиграх? Игры FPS (first-person shooter, шутер от первого лица) стали неотъемлемой частью видеоигровой индустрии ещё с момента появления в 1992 году популярнейшей Wolfenstein 3D. С тех пор жанр эволюционировал: улучшалась графика, увеличивались бюджеты на разработку, развивалась экос...

Microsoft рассказала о новшествах в Cortana для Windows 10 Участники программы Windows Insider уже некоторое время тестируют новую версию приложения Cortana для Windows 10, однако подробная информация о сделанных изменениях опубликована лишь сейчас. Теперь Microsoft позиционирует Cortana как полноценный виртуальный ассистент, помог...

[Перевод] Полное руководство по Flexbox Полное руководство по CSS flexbox. Это полное руководство объясняет все о flexbox, сосредотачиваясь на всех возможных свойствах для родительского элемента (контейнер flex) и дочерних элементов (элементы flex). Оно также включает в себя историю, демонстрации, шаблоны и таблиц...

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

Microsoft выпускает официальное расширение Windows 10 Timeline для Google Chrome Microsoft выпустила официальное расширение временной шкалы для Google Chrome под названием «Web Activities» (Веб-действия), которое обеспечивает интеграцию временной шкалы с веб-браузером Google. Как и в Microsoft Edge, это новое расширение синхронизирует ваши действия с веб...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 14. VTP, Pruning и Native VLAN Сегодня мы продолжим рассмотрение VLAN и обсудим протокол VTP, а также понятия VTP Pruning и Native VLAN. В одном из предыдущих видео мы уже говорили о VTP, и первое, что должно прийти вам на ум, когда вы слышите о VTP, это то, что он не является протоколом транкинга, несмот...

Sberbank AI Journey. Как мы учили нейросеть сдавать экзамен Если вы закончили школу уже во времена ЕГЭ, то вам известно, что все задания в нём имеют набор стандартных формулировок и упорядочены по типам. С одной стороны, это облегчает подготовку к экзамену: школьник уже знает, что нужно делать в задании, даже не читая его условия. С ...

Redux. Простой как грабли Мне уже доводилось заглядывать в репозиторий библиотеки redux, но откуда-то появилась мысль углубиться в его реализацию. Своим в некотором роде шокирующим или даже разочаровывающим открытием я хотел бы поделиться с сообществом. TL;DR: базовая логика redux помещается в 7 ст...

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

Как найти похожую картинку на смартфоне с Android или iOS Небольшие хитрости для тех, кто пользуется поиском Google.

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

Найденный минерал может указывать на следы жизни на Марсе Найденный гидратированный кремнезем на поверхности Марса может свидетельствовать о наличии жизни на планете в прошлом Кратер Езеро — одно из наиболее возможных мест для будущей посадки нового марсохода NASA. Как сообщает портал phys.org, именно в этом марсианском крате...

[Перевод] Асинхронные Stream в C# 8 Функционал Async/Await появился в C# 5, чтобы улучшить скорость отклика пользовательского интерфейса и веб-доступ к ресурсам. Другими словами, асинхронные методы помогают разработчикам выполнять асинхронные операции, которые не блокируют потоки и возвращают один скалярный ре...

Как вас обманут при покупке автомобиля: 7 секретов недобросовестных продавцов Даже новый автомобиль, едва покинув салон, сразу теряет в цене. На покупке машины с пробегом действительно можно сэкономить. Но есть и риски: мошенники могут попытаться продать вам неликвид по завышенной стоимости. Раскрываем основные хитрости нечестных продавцов и даём сове...

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

Спец расскажет… GearBest или AliExpress: в чем разница и что лучше? Два популярных китайских интернет-магазина: в каком из них выгоднее и дешевле заказывать товары? Рассказывает наш читатель с большим опытом.

«Гори, гори ясно, пока не погасло», или Чем чревато эмоциональное выгорание ваших сотрудников Как я хотела прикинуть, что дешевле – уволить выгоревшего сотрудника, «вылечить» или вовсе стараться не допускать выгорания, и что из этого получилось. Сейчас небольшое вступление, откуда родилась эта тема. Я почти что разучилась писать. Сначала нет времени; потом кажется...

Эксперты «Лаборатории Касперского» изучили троян Razy Эксперты «Лаборатории Касперского» проанализировали обнаруженный ими в прошлом году зловред Razy. Троян атакует браузеры Mozilla Firefox, «Яндекс.Браузер» и Google Chrome путем внедрения расширений с вредоносными скриптами и крадет биткойны и монеты Ether...

Карьерные стероиды. Базовый алгоритм Статья про быстрый карьерный рост внутри одной компании. Именно внутри одной, т.к. скачок при переходе — это другая методика, к ней нужно иначе готовиться (там больше комплект увольнения подходит). Сразу скажу: я не считаю, что строить карьеру — это правильно, без этого ник...

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

[Перевод] Что нового в разработке Mamba Прошло немало времени с тех пор, как мы рассказывали о том, что нового в змеиной стране. Mamba всё еще быстра, поддерживает больше операций Conda и отрастила хвост (бэкенд) посолиднее благодаря изменениям в libsolv. Ускоряем змею! А что такое Mamba? Mamba — это drop-in заме...

Крупные аварии в дата-центрах: причины и следствия Современные ЦОД надежны, однако любое оборудование время от времени ломается. В небольшой заметке мы собрали наиболее значительные инциденты 2018 года. Читать дальше →

Первый митап по Flutter в Петербурге – 26 сентября Мы в Wrike очень любим Dart и Flutter. На связке Dart+Angular пишем фронтенд основного продукта, SPA Wrike, а флаттер просто бескорыстно любим и создаем на нем внутренние тулы. Два года назад мы придумали русскоязычное сообщество дарт и флаттер разработчиков (сейчас в нем бо...

Эволюция email-маркетинга: от QWERTYUIOP до GDPR Прошло 47 лет с тех пор, как американский инженер Рей Томлинсон отправил первое в мире электронное письмо. Это он придумал использовать символ @ (at-sign) в адресах, который мы сегодня, не задумываясь, ассоциируем с целой технологией и даже культурой электронной почты. Вря...

Асинхронное программирование в JavaScript (Callback, Promise, RxJs ) Всем привет. На связи Омельницкий Сергей. Не так давно я вел стрим по реактивному программированию, где рассказывал про асинхронность в JavaScript. Сегодня я бы хотел законспектировать этот материал. Но перед тем как начать основной материал нам нужно сделать вводную. Итак...

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

Основы формата GLTF и GLB, часть 1 Что такое GLTF и GLB? GLTF (GL Transmission Format) — это формат файла для хранения 3Д сцен и моделей, который является крайне простым в понимании (структура записана в стандарте JSON), расширяемым и легко взаимодействующим с современными веб-технологиями. Данный формат хоро...

[Перевод] Дизайн цвета загадочных миров Dead Cells Кто: Гвенаэль Массе, художник студии Motion Twin Привет, меня зовут Гвенаэль Массе, мы с Тома Вассё — единственные художники инди-студии Motion Twin. Среди прочего, передо мной была поставлена задача создания дизайна фонов Dead Cells. Надеюсь, что информация о моём производс...

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

Работа с Worker “как хочется“, а не “как можно” В этой статье будет использоваться ГРЯЗНЫЙ, небезопасный, "костыльный", страшный и т. д. метод eval. Слабонервным не читать! Сразу скажу, что некоторые проблемы удобства использования решить не удалось: в коде, который будет передан в worker, нельзя использовать замыкание. ...

[Из песочницы] О целесообразности Selenium WebDriverWait Чем ближе я знакомлюсь с Selenium WebDriver, тем больше у меня возникает вопросов, почему тот или иной функционал выполнен так, а не иначе. В своем выступлении «Заморочки в Selenium WebDriver» Алексей Баранцев проливает свет на тонкости реализации этого инструмента автоматиз...

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

Что такое смарт-папки и для чего они нужны Немногие знают, но в macOS есть такая полезная функция как смарт-папки. Несмотря на название, это не папка в привычном понимании слова. Это скорее организация файлов по заданным критериям. На самом деле, изучив в полной мере возможности смарт-папок, вы сможете сделать свою ...

Sagи из жизни Доброго времени суток. У вас тоже есть знакомый react-разработчик, который рассказывает восхитительные истории о сайд-эффектах в redux? Нет?! Могу я стать этим человеком? Автор взял на себя смелость не писать вводную часть о том, что же из себя представляет библиотека redux...

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

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

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

Решение задания с pwnable.kr 04 — flag. Упакованные исполяемые файлы В данной статье разберем: как и для чего применяется упаковка исполняемых файлов, как их обнаружить и распаковать, и решим 4-е задание с сайта pwnable.kr. Организационная информацияСпециально для тех, кто хочет узнавать что-то новое и развиваться в любой из сфер информацио...

[Перевод] Создание современных облачных приложений с использованием Pulumi и .NET Core Мы рады объявить о поддержке .NET Core для Pulumi! Это объявление означает, что вы можете декларировать облачную инфраструктуру — включая все в Azure, например Kubernetes, Functions, AppService, Виртуальные машины, CosmosDB и другое, — используя ваш любимый язык .NET, включа...

[recovery mode] Расширения Google Chrome для программиста Работа программиста настолько сложна и разнообразна, что в ней просто не обойтись без помощи различных инструментов. Подготовил для вас список полезных расширений для Google Chrome, которые облегчат вашу жизнь и сэкономят время. 1. Code Cola Плагин, который предлагает ши...

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

Инструкция Canva: как создать анимацию и мини-фильмы Видео, сторис, гифки побеждают по охватам обычные фото и тексты. Анимация привлекает внимание и задерживает взгляд. Еще одна причина разобраться в том, как создать анимацию, — вы сможете рассказывать истории, а это еще один тренд в маркети...

СМИ нашли очередного «создателя биткоина». Но с доказательствами как обычно проблемы Недостатка в версиях о том, кто действительно стоит за именем создателя биткоина Сатоши Накамото, определенно не наблюдается. Криптовалютное сообщество предлагает на эту «должность» целый ряд известных персон, включая Дэвида Чаума, Нико Сабо, Адама Бэка и даже Чарли Ли, одна...

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

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

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

Как перенести файлы между Mac и Android Предположим, у вас есть MacBook или любой другой компьютер Mac и мобильный телефон Android, и вы хотите перенести файлы с MacBook на устройство Android. Если вы захотите использовать USB-кабель, вы не сможете передавать файлы с Mac на Android из-за несовместимости двух платф...

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

Выбираем внешний накопитель: SSD и HDD Большие объемы данных удобно хранить на портативном внешнем накопителе большой емкости. Мы поможем выбрать хороший жесткий диск или внешний SSD, который будет быстро работать и подойдет для использования в офисе и дома. В конце статьи мы собрали лучшие модели современных вне...

Лайфхак – пишем и бесплатно хостим в облаке вебсайт с гостевой книгой В наше время для того, чтобы развернуть свой сайт в облаке достаточно купить доменное имя. Не верите? Читайте дальше. Предлагаю вам разобрать то, как можно создать гостевую книгу на ASP.NET Core (с reCAPTCHA) и захостить ее бесплатно на довольно известном облачном хостинге ...

[Из песочницы] Еще одно мнение о разнице между bin, sbin, usr/bin, usr/sbin Недавно я обнаружил вот такую статью: Разница между bin, sbin, usr/bin, usr/sbin. Хотелось бы поделиться своим взглядом на стандарт. /bin Содержит команды, которые могут использоваться как системным администратором, так и пользователями, но которые необходимы, когда не смон...

Фирма Алана Говарда откроет криптовалютную компанию с активами на $1 млрд Британская фирма Elwood Asset Management, принадлежащая миллиардеру Алану Говарду, планирует запустить компанию с активами на $1 млрд, специализирующуюся на инвестициях в криптовалютные хедж-фонды. Об этом пишет Financial Times. CEO Elwood Бин Рен сообщил, что новая компания...

[Из песочницы] BotMan знакомство Хочу рассказать о PHP фреймворке для создания ботов BotMan (Сайт). Botman можно использовать и как библиотеку, и как расширение Laravel (BotMan Studio). Читать дальше →

[Из песочницы] Сохранение цвета элемента в БД Navisworks Предыстория задачи Возникла у заказчика задача, допустим, такая: Скинуть в 1С элементы модели здания. В 1С использовать эти части модели в договорах – ну, допустим, указать, что вот такие-то элементы уже построены, такие-то – только запланированы, и т.п.. В Navisworks на че...

Julia, Градиентный спуск и симплекс метод Продолжаем знакомство с методами многомерной оптимизации. Далее предложена реализация метода наискорейшего спуска с анализом скорости выполнения, а также имплементация метода Нелдера-Мида средствами языка Julia и C++. Читать дальше →

Около 50% россиян готовы продавать свои персональные данные По данным Ipsos и Всемирного экономического форума большинство граждан России хотели бы получить возможность запретить компаниям использовать свои персональные данные. Правда, около 50% опрошенных готовы предоставлять персональные данные за вознаграждение, о чем пишет «Комме...

Готовое решение markdown2pdf с исходным кодом для Linux Предисловие Markdown это прекрасный способ написать небольшую статью, а иногда и достаточно объемный текст, с несложным форматированием в виде курсива и толстого шрифта. Также Markdown неплох для написания статей с включением исходного кода. Но иногда хочется без потерь, тан...

F#3: Форматирование текста При работе с любым языком вам, скорее всего, нужно будет отформатировать текст, и F# ничем не отличается. Поскольку F# является языком .NET, мы всегда можем использовать Console.WriteLine (..) и String.Format (..), где мы можем использовать любой из обычных форматеров, кото...

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

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

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

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

Автономная метеостанция на контроллере ATMEGA328P и питанием от батареек с беспроводным выносным датчиком Совершенствуя свой комнатный термостат, о котором писал раньше, я задался целью дополнить его беспроводным датчиком температуры для измерения температуры воздуха на улице, собрать термостат с питанием от батареек и заменить модули приемник-передатчик RF 433MHz другой парой р...

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

Вредоносные расширения для Chrome Аудитория Одноклассников — 71 миллион в месяц. Так же, как и аудитория интернета в целом, наши пользователи подвержены распространенным угрозам безопасности: фишингу, вирусам, переиспользованию паролей. Экономическим двигателем атак на пользователей соцсети, как правило, я...

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

[Перевод] Как писать меньше кода и получать больше толку Как справедливо заметил легендарный писатель Жюль Верн: «Хорошо использованный минимум вполне достаточен». В нашу эпоху понятие хорошо использованного минимума применимо и к коду. Печально, но факт: в современном мире кода слишком много. Если быть точнее, то слишком много ...

Часть 1. QInst: лучше день потерять, потом за пять минут долететь (пишем инструментацию тривиально) В предыдущей части я приблизительно описал, как можно загрузить eBPF функции из ELF-файла. Теперь пришла пора перейти от фэнтези к советским мультикам, и следуя мудрому совету, потратив один раз некоторое количество усилий, сделать универсальный инструмент инструментации (ил...

[Перевод] Расширение mypy с помощью плагинов Добрый день, друзья. А мы продолжаем наращивать интенсивность запуска новых курсов и уже сейчас рады сообщить о том, что в конце апреля стартуют занятия по курсу «Web-разработчик на Python». В связи с этим традиционно делимся переводом полезного материала. Начнём. Известно,...

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

Новый загрузчик Buhtrap Сегодня мы расскажем вам о новом подходе к рассылке ВПО группировкой Buhtrap. Модуль загрузчика 19 декабря нам стало известно о вредоносной рассылке, содержащей исполняемый файл (md5: faf833a1456e1bb85117d95c23892368). Файл принимал различные названия: «Сверка за декабрь....

Собираем окружение для современного TDD на JavaScript + VS code TDD уже давно не является чем-то диковинным: на хабре можно найти об этом подходе сотни статей, а каждый новичок знает, какую книгу об экстремальном программировании ему нужно прочитать. Многие мои коллеги тоже используют TDD. Они добавляют тест, пишут код, рефакторят, по...

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

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

Субпиксельный рендеринг произвольных векторных изображений (Haarmony LCD) Субпиксельный рендеринг (вики)— способ увеличить видимое разрешение LCD или OLED дисплея путем рендеринга пикселей с учетом свойств экрана. Используется тот факт, что каждый пиксель экрана фактически состоит из отдельных красных, зеленых и синих субпикселей. В посте я хочу р...

Генеральный директор NVIDIA представляет ПО Aerial для ускорения 5G Телекоммуникационные компании могут использовать набор разработки ПО NVIDIA Aerial и готовые к использованию серверы с GPU NVIDIA для создания программируемых и масштабируемых программно определяемых сетей 5G, чтобы дать возможность обеспечить ИИ-сервисы на конечных устройст...

GHIDRA, исполняемые файлы Playstation 1, FLIRT-сигнатуры и PsyQ Привет всем, Не знаю как вам, а мне всегда хотелось пореверсить старые приставочные игры, имея в запасе ещё и декомпилятор. И вот, этот радостный момент в моей жизни настал — вышла GHIDRA. О том, что это такое, писать не буду, можно легко загуглить. И, отзывы настолько разн...

Физические безумства Добрый день, уважаемый читатель! Я, начинающий Java-программист, долгое время не мог освоиться с библиотекой Box2D. Во-первых, из-за того, что она написана для C++, и по ней нет документации, а синтаксис Си я не знаю. Во-вторых, из-за того, что подробные уроки по этой библио...

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

Гигатрон — самодельный микрокомпьютер без процессора Микрокомпьютер Gigatron — это минималистичный 8-битный ретро-компьютер построенный по необычному дизайну: в нём нет никаких сложных логических интегральных схем, нет даже микропроцессора! Его CPU построен на классических логических элементах серии 7400, также известных как...

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

Когда стандарта HTTP мало. Коммитим в Micronaut Всем привет, меня зовут Дмитрий, и сегодня я расскажу о том, как производственная необходимость заставила меня стать контрибутором для фреймворка Micronaut. Наверняка многие о нём слышали. Если вкратце, то это легковесная альтернатива Spring Boot, где основной упор сделан не...

5 способов деплоя PHP-кода в условиях хайлоада Если бы хайлоад преподавали в школе, в учебнике по этому предмету была бы такая задача. «У соцсети N есть 2 000 серверов, на которых 150 000 файлов объемом по 900 Мб PHP-кода и стейджинг-кластер на 50 машин. На серверы код деплоится 2 раза в день, на стейджинг-кластере код о...

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

В нашей галактике обнаружена черная дыра, которая не должна существовать Открытие “невозможной” черной дыры не согласуется с ОТО Эйнштейна Млечный Путь таит в себе множество загадок. Недавно их стало на одну больше. Дело в том, что китайские астрономы обнаружили черную дыру в нашей галактике, которая, согласно нынешней научной теории, не должна ...

Водозащита Huawei P30 Pro фикция? Huawei P30 Pro стал одной из громких премьер первой половины нынешнего года, оставив ближайших конкурентов далеко позади по своим фотовозможностям. Надежности флагману тоже не занимать, ведь он сертифицирован по стандарту IP68, как гарантия того, что кратковременное погружен...

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

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

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

Мультфильм Frozen II / «Ледяное сердце II» собрал $350 млн в первый уикэнд проката, побив сразу несколько рекордов Мультфильм Frozen II / «Ледяное сердце II» от Disney абсолютно не поразил нашего кинокритика Олега Данилова (всего 3,5 балла в вышедшем на выходных обзоре), однако потенциальная аудитория оказалась заметно благосклоннее, активно проголосовав долларом. Сиквел смог собрать за ...

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

[Перевод] Перенос десктопных приложений на .NET Core С тех пор, как я начала работать с сообществом над переносом десктопных приложений с .NET Framework на .NET Core, я заметила, что существует «два лагеря»: представители одного хотят очень простой и короткий список инструкций для переноса своих приложений на .NET Core, в то в...

Компания BitTorrent запускает собственную криптовалюту Криптобогатства не перестают терять популярность даже после обвала цен на рынке. Это утверждение подтверждает и недавний анонс компании BitTorrent. Согласно официальному источнику, она планирует запуск собственной криптовалюты – BitTorrent token (BTT).BitTorrent –...

[Перевод] Grid или Flexbox? Мишель Баркер, автор материала, перевод которого мы сегодня публикуем, говорит, что недавнее обсуждение в Twitter, начатое Крисом Койером, заставило её задуматься о том, как веб-разработчики делают выбор между технологиями CSS Grid Layout и CSS Flexbox Layout при разработке ...

[Из песочницы] Учим компьютер различать звуки: знакомство с конкурсом DCASE и сборка своего аудио классификатора за 30 минут Введение Доброго времени суток, хабр! Накопив немного опыта в решении задач классификации и детектирования акустических событий, мы с ananaskelly решили, что готовы им с вами поделиться. Цель этой статьи — познакомить вас с некоторыми задачами и рассказать о соревновании по ...

Как сэкономить на психотерапевте используя test-driven development У вас когда-нибудь было такое состояние? Хочу показать вам, как TDD может улучшить качество кода на конкретном примере. Потому что всё то, что я встречал при изучении вопроса, было довольно-таки теоретическим. Так получилось, что мне довелось написать два практически иден...

Стриминг или загрузка видео: что лучше? С развитием технологий просмотр телешоу, фильмов или сериалов становится все проще и доступнее. Вам уже не нужны телевизор и проигрыватели DVD или Blu-Ray дисков для того, чтобы насладиться любимым контентом. Зачастую бывает достаточно лишь подключения к интернету, смартфон...

[Перевод] Нейросети и глубокое обучение: онлайн-учебник, глава 6, ч.1: глубокое обучение Содержание Глава 1: использование нейросетей для распознавания рукописных цифр Глава 2: как работает алгоритм обратного распространения Глава 3: ч.1: улучшение способа обучения нейросетей ч.2: почему регуляризация помогает уменьшать переобучение? ч.3: как выбрать гиперпара...

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

Немного технической лирики о C++ Tools от JetBrains, и при чем тут единороги Начну не с моего типичного “Привет, Хабр! У нас тут очередной крутой релиз”, а с “Привет, меня зовут Настя, я ПММ в JetBrains и я отвечаю за наши инструменты для C++”. Или нет, попробую еще раз, вот так: “Привет, пишет вам C++ разработчик с 8-летним стажем, который 5 лет наз...

[Перевод] Генерация барьерных островов В декабрьских новостях об урагане Флоренс часто упоминались Внешние отмели — ряд барьерных островов на побережье Северной Каролины: Барьерные острова — это плоские или глыбистые участки песка, формируемые волнами и прибоем параллельно побережью материка. Они часто имеют ви...

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

[Перевод] Чем функциональные компоненты React отличаются от компонентов, основанных на классах? Чем функциональные компоненты React отличаются от компонентов, основанных на классах? Уже довольно давно традиционный ответ на этот вопрос звучит так: «Применение классов позволяет пользоваться большим количеством возможностей компонентов, например — состоянием». Теперь, с п...

Обзор внешнего SSD Verbatim Store n Go 240 Gb Ко внешним портативным жёстким дискам мы давно уже привыкли — удобные устройства. Но сейчас рынок предлагает нам внешние SSD. Те самые, что мы ещё недавно подключали к материнской плате, устанавливая на твердотельный накопитель систему, чтобы ощутимо её ускорить. А теперь ...

Юбилейный Android 10 (Q). Что известно уже сейчас? Совсем недавно ребята из XDA-developers заглянули под капот утекшей сборки новой, ещё не анонсированной, версии Android. Давайте посмотрим, что они там нашли. Читать дальше →

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

Все, что мы знаем о Galaxy Note 10 уже сейчас Сейчас известно, что презентация нового флагмана со стилусом от компании Samsung состоится уже через пару месяцев. А пока нам остается только ждать его анонса и собрать воедино всю информацию, которая о нем известна уже сейчас. Так, издание PhoneArena решило на основании вс...

[Перевод] 9 полезных браузерных расширений для разработчиков (cписок на 2020 год) Как упростить себе жизнь при помощи браузерных плагинов. Хитрые веб-разработчики умеют пользоваться браузером на уровне «god-mode». Расширения(плагины, add-on) чрезвычайно полезны, когда речь идет об улучшении рабочей среды и повышении производительности написания кода. Не...

Может ли планета превратиться в звезду? Вид с поверхности расположенной у красного карлика планеты в представлении художника Как известно, в Солнечной системе имеется 8 планет, самая большая из которых — Юпитер, запросто бы могла стать звездой в случае увеличения ее массы на несколько процентов. Несмотря на ...

В 2020 году появится iPad с ToF-камерой и MacBook с обновленными клавиатурами В следующем году компания Apple может выпустить сразу несколько устройств с 3D-камерами способными определять расстояние до объектов и использовать эти данные для создания объемных моделей. Об этом рассказал известный аналитик Минг-Чи Куо.Читать дальше... ProstoMAC.com.| По...

Intel Stratix 10 DX — завершение линейки FPGA Stratix 10 Выводя в свет свою новую 10-нм линейку FPGA Agilex, Intel одновременно завершает формировать уже широко известное и хорошо зарекомендовавшее себя семейство Intel Stratix 10. Последняя из выведенных на рынок разновидностей, 10 DX, характеризуется архитектурными нововведениями...

Зачем Mozilla заблокирует использование отпечатков пальцев в своем браузере Так ли безопасны методы аутентификации по отпечатку пальца? Браузер Mozilla Firefox нельзя назвать лидером рынка интернет-обозревателей. Однако и в отстающих он не находится. Firefox — это, что называется, крепкий среднячок, хорошо зарекомендовавший себя и имеющий дово...

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

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

[Перевод] Цепи Маркова для процедурной генерации зданий Примечание: полный исходный код этого проекта можно найти [здесь]. Так как он является частью более масштабного проекта, я рекомендую смотреть коммит на момент выпуска этой статьи, или файл /source/helpers/arraymath.h, а также /source/world/blueprint.cpp. В этой статье я х...

Модернизация GHIDRA. Загрузчик для ромов Sega Mega Drive Приветствую вас, товарищи. Не слышал о пока-ещё-не-опенсорсной GHIDRA, наверное, только глухой/слепой/немой/без_интернета реверс-инженер. Её возможности из коробки поражают: декомпиляторы для всех поддерживаемых процессоров, простое добавление новых архитектур (с сразу же а...

Собираем игровой ПК в 2019 году AliExpress, не пропусти: будет интересно Всем привет, сегодня мы попробуем собрать игровой ПК примерно за 20 000 рублей. Получится это или нет, судить только Вам. Не стесняйтесь и пишите в комментариях свои мысли. Итак, давайте начнем!

Ботнеты в 2019 году: актуальные опасности и вред, наносимый малому и среднему бизнесу О ботнетах на Хабре писали много раз, чем не приходится удивляться — это действительно значительная угроза, которая никуда не исчезла. В нашей сегодняшней статье мы поговорим о том, какие ботнеты актуальны в 2019 году и какой вред они могут нанести бизнесу — не крупным кор...

Badoo Techleads Meetup #5. Непростые ситуации Меня зовут Денис Чернобай, я отвечаю за frontend-разработку в компании Badoo. Три года назад мы впервые собрали сообщество IT-руководителей, чтобы обсудить объединяющие его темы, и продолжаем следить за тем, что волнует коллег по цеху.  Здорово, что тимлиды и CTO делятся ...

[Из песочницы] Ускорение компиляции в Xcode на swift С ростом проекта, скорость компиляции проекта замедляется. Особенно это заметно становится, когда тестируешь программу, делая параллельно небольшие изменения в программе. Сначала давайте узнаем как долго компилируется проект до наших улучшений. ЧТобы это сделать надо в тер...

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