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

[Перевод] Профилирование и трейсинг с perf Учимся дебажить с perf — целых 18 страниц про основные подкоманды, фичи и устройство инструмента. Джулия рекомендует; “Я даже использовала его несколько раз для профилирования Ruby программ!” Уровень сложности — для суперпродвинутого администратора. Когда нужно отыскать пр...

[Перевод] Мониторинг .NET приложений .NET – управляемая среда выполнения. Это означает, что в ней представлены высокоуровневые функции, которые управляют вашей программой за вас (из Introduction to the Common Language Runtime (CLR), 2007 г.): Среда выполнения предусматривает множество функций, поэтому их удобно...

Непрерывное профилирование в Go pprof — основной инструмент профилирования в Go. Профилировщик включен в стандартную библиотеку Go и про него, за годы, написано уже очень много. Чтобы подключить pprof в существующее приложение нужно просто добавить одну строчку кода: import _ “net/http/pprof” В HTTP-сервер...

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

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

[Перевод] Как мы оптимизировали свой Theme Hospital под разные платформы Project Hospital — это игра об управлении зданием больницы со всеми стандартными аспектами жанра: динамическими сценами, создаваемыми игроком, множеством активных персонажей и объектов, развёрнутой системой UI. Чтобы заставить игру работать на разном оборудовании, нам пришл...

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

Signpost: когда брейкпоинтов недостаточно В предыдущей статье мы узнали о причинах нестабильности unit-тестов и способах борьбы с этим. Теперь мы хотим рассмотреть один из новых инструментов Apple для отладки и профилирования кода. Речь о представленном на WWDC 2018 фреймворке для логирования os_log, который был рас...

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

Лучшее из опыта создания чистых и быстрых Angular приложений На написание этой статьи сподвигли поиски JavaScript front-end разработчиков в свою компанию в Ставрополе. Т.к. длительное время не удавалось найти толкового программиста и тогда мы решили запустить программу стажировки с большим количеством обучающего материала по Angular &...

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

Язык программирования P4 P4 — это язык программирования, предназначенный для программирования правил маршрутизации пакетов. В отличие от языка общего назначения, такого как C или Python, P4 — это предметно-ориентированный язык с рядом конструкций, оптимизированных для сетевой маршрутизации. P4 — эт...

Проверка исходного кода библиотек .NET Core статическим анализатором PVS-Studio Библиотеки .NET Core — один из самых популярных C# проектов на GitHub. Неудивительно, с учётом его широкой известности и используемости. Тем интереснее попробовать выяснить, какие тёмные уголки можно найти в исходном коде этих библиотек, что мы и попробуем сделать с помощью...

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

Пользоваться ES File Explorer теперь опасно. В приложении найдены уязвимости Французский исследователь безопасности, известный под псевдонимом Эллиот Алдерсон (Elliot Alderson) обнаружил уязвимость в популярном файлменеджере ES File Explorer, которая позволяет получить доступ к данным других пользователей, подключенных к той же Wi-Fi сети. Всё, что д...

[Перевод] Улучшенные четыре правила проектирования ПО Привет, Хабр! Представляю вашему вниманию статью "Four Better Rules for Software Design" автора David Bryant Copeland. David Bryant Copeland — архитектор ПО и технический директор Stitch Fix. Он ведет свой блог и является автором нескольких книг. Мартин Фаулер недавно создал...

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

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

Разработка гибридных PHP/Go приложений с использованием RoadRunner Классическое PHP-приложение — однопоточность, тяжелая загрузка (если вы конечно не пишите на микрофреймворках) и неизбежная смерть процесса после каждого запроса… Такое приложение тяжелое и медленное, но мы можем дать ему вторую жизнь гибридизацией. Чтобы ускорить — демонизи...

[Перевод] Самые быстрые Python веб-фреймворки в 2019 В 2018 году Python укрепил свои позиции популярности среди программистов и вошел в Top 3 самых популярных языков на github. Все больше и больше людей переходит на светлую сторону…то есть Python. Появилось еще большее количество разработчиков, которые интересуются данным яз...

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

[Перевод] Глупая причина, по которой не работает ваше хитрое приложение машинного зрения: ориентация в EXIF Я много писал о проектах компьютерного зрения и машинного обучения, таких как системы распознавания объектов и проекты распознавания лиц. У меня также есть опенсорсная библиотека распознавания лиц на Python, которая как-то вошла в топ-10 самых популярных библиотек машинного ...

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

[Перевод] LLVM с точки зрения Go Разработка компилятора — очень тяжёлая задача. Но, к счастью, с развитием проектов наподобие LLVM, решение этой задачи значительно упрощается, что позволяет даже программисту-одиночке создать новый язык, близкий по производительности к C. Работа с LLVM осложняется тем, что э...

[Перевод] Возможности Python 3, достойные того, чтобы ими пользовались Многие программисты начали переходить со второй версии Python на третью из-за того, что уже довольно скоро поддержка Python 2 будет прекращена. Автор статьи, перевод которой мы публикуем, отмечает, что основной объём Python 3-кода, который ему доводилось видеть, выглядит как...

[Питер] Встреча JUG.ru с Сергеем Мельниковым — Профилирование со сверхсветовой скоростью: теория и практика В четверг, 30 мая, в петербургском офисе компании Oracle состоится встреча JUG.ru с Сергеем Мельниковым из Райффайзенбанка. Сергей расскажет, как с помощью обычного perf и технологии Intel Processor Trace получить высокодетализированные профили для ваших Java-приложений. Уч...

[Перевод] Разработка Adblock Radio tl;dr: Adblock Radio распознаёт аудиорекламу с помощью машинного обучения и Shazam-подобных техник. Основной движок с открытым исходным кодом: используйте его в своих продуктах! Можно объединить усилия для поддержки большего количества радиостанций и подкастов. Мало кому н...

Сборка и деплой однотипных микросервисов с werf и GitLab CI Два года назад мы публиковали статью «Сборка проектов с GitLab CI: один .gitlab-ci.yml для сотни приложений», а теперь расскажем о решении схожей задачи сегодня. Новый материал — о том, как можно построить CI/CD-процессы для большого количества однотипных приложений с появ...

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

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

[Из песочницы] Ускоряем сборку веб-приложения с webpack По мере того как ваше приложение развивается и растёт, увеличивается и время его сборки — от нескольких минут при пересборке в development-режиме до десятков минут при «холодной» production-сборке. Это совершенно неприемлемо. Мы, разработчики, не любим переключать контекст в...

[Перевод] Статический анализ больших объёмов Python-кода: опыт Instagram. Часть 1 Серверный код в Instagram пишут исключительно на Python. Ну, в основном это именно так. Мы используем немного Cython, а в состав зависимостей входит немало C++-кода, с которым можно работать из Python как с C-расширениями. Наше серверное приложение — это монолит, представ...

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

Популярные приложения на Google Play содержат уязвимости Эксперты Check Point обнаружили серьезные уязвимости в представленных на Google Play приложениях с сотнями миллионов загрузок, включая продукты Facebook и Yahoo. По словам исследователей, безопасные на первый взгляд Android-программы содержат глубинные баги, грозящие исполне...

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

[Перевод] Почему в основе каждого нового веб-приложения в PayPal лежит TypeScript? Недавно мы опубликовали материал, в котором Эрик Эллиот критиковал TypeScript. Сегодня мы представляем вашему вниманию перевод статьи Кента Доддса. Тут он рассказывает о том, почему в PayPal перешли с Flow на TypeScript. Читать дальше →

Приложение для iOS и Android на Kotlin + Flutter UI Вступление Всем привет. Какое-то время назад, я решил делать свой проект для Android и iOS одновременно. Естественно, встал вопрос о выборе технологий. Пару недель присматривался к популярным стекам и выбрал Kotlin/Native. Поскольку я являюсь Android-разработчиком, то с Ko...

[Перевод] Компилируем FFmpeg в WebAssembly (=ffmpeg.js): Часть 1 — Приготовления Из этой части вы узнаете: Зачем это всё нужно Как скомпилировать FFmpeg в Docker Зачем это всё нужно Главные задачи у серии публикаций такие: Создать туториал по использованию Emscripten для компиляции C/C++ библиотек в JavaScript (более детальный и полезный, чем написа...

[Перевод] Как я создал более 100 приложений с открытым кодом, используя инструменты автоматизации Представляем вам перевод статьи Sm0ke, опубликованной на сайте dev.to. Автор рассказывает о своем опыте генерации веб-приложений и способе автоматизации процесса их создания. Привет, кодеры! Я — разработчик-фрилансер, и я сгенерировал более 100 приложений на различных язык...

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

Медиаплеер VLC скачан более 3 млрд раз, скоро появится поддержка AirPlay Приложение VLC Media Player с открытым исходным кодом от VideoLAN достигло важной вехи: разработчики сообщили, что количество скачиваний с официального сайта проекта перевалило за отметку в 3 млрд раз. Это впечатляющий показатель, учитывая, что VLC активно распростр...

Опыт использования flatten-maven-plugin для упрощения версионирования в maven-проектах О нас В 1С мы разрабатываем не только платформу 1С: Предприятие на С++ и JavaScript, но и приложения на Java – в частности новую среду разработки Enterprise Development Tools на базе Eclipse и сервер глубоко интегрированного с платформой мессенджера – Системы Взаимодействия....

Оптимизация программ под Garbage Collector Не так давно на Хабре появилась прекрасная статья Оптимизация сборки мусора в высоконагруженном .NET сервисе. Эта статья очень интересна тем, что авторы, вооружившись теорией сделали ранее невозможное: оптимизировали свое приложение, используя знания о работе GC. И если ране...

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

Microsoft открыла код Калькулятора Windows Несколько дней назад корпорация Microsoft приняла решение открыть исходный код известной всем программы — «Калькулятора» из ОС Windows. Это приложение входило во все дистрибутивы ОС от Microsoft начиная с 1985 года, когда свет увидела Windows 1.0. Microsoft использует ли...

[Перевод] Записки фрилансера: разработка первого React Native-приложения Автор материала, перевод которого мы публикуем, недавно выпустил своё первое мобильное приложение, написанное на React Native. Так случилось, что это приложение стало и его первым проектом, который он создал как программист-фрилансер. Здесь он расскажет о том, с чем ему приш...

Следующая версия Windows 10 будет резервировать не менее 7 ГБ памяти для обновлений Начиная со следующего функционального обновления для Windows 10, ныне известного под кодовым названием 19H1, Microsoft представить функцию «Reserved Storage» (Зарезервированное хранилище). Эта функция будет выделять некоторое количества места в памяти устройства для хранени...

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

[Из песочницы] Децентрализованная аффилейт-программа с открытым исходным кодом на блокчейне Waves Децентрализованная аффилейт-программа на блокчейне Waves, реализованная в рамках гранта Waves Labs командой Bettex. Пост не является рекламным! Программа имеет открытый исходный код, ее использование и распространение бесплатно. Применение программы стимулирует развитие dAp...

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

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

[Перевод] Парсим 25Tb с помощью AWK и R Как читать эту статью: прошу прощения за то, что текст получился таким длинным и хаотичным. Чтобы сэкономить ваше время, я каждую главу начинаю со вступления «Чему я научился», в котором одним-двумя предложениями излагаю суть главы. «Просто покажи решение!» Если вы хотите ...

Как очистить оперативную память на Android-смартфоне Освободив оперативную память, вы заставите смартфон работать быстрее Большинство устройств среднего и высокого ценового диапазона, выпущенные за последние пару лет, имеют в районе 4 гигабайт оперативной памяти. Если, конечно, мы не будем принимать во внимание флагманы вроде ...

[Перевод] 19 концепций, которые нужно изучить для того, чтобы стать эффективным Angular-разработчиком TODO-приложение во фронтенд-разработке — это то же самое, что «Hello world» в обычном программировании. При создании TODO-приложений можно изучить выполнение CRUD-операций средствами того или иного фреймворка. Но часто подобные проекты лишь весьма поверхностно касаются того,...

Для самых нетерпеливых. Пользователи Xiaomi Mi Mix 2, Mi Mix 2S и Mi A2 могут установить Android 10 Вскоре после выхода  Android 10 и публикации исходников в проекте с открытым исходным кодом Android Open Source Project (AOSP), стали появляться неофициальные прошивки для тех, кто не обладает достаточным терпением, чтобы дождаться обновления от производителя. ...

[Перевод] История четырёхкратного ускорения React-приложения Почти 60% посетителей сайта покидают его в том случае, если его загрузка занимает более 3 секунд. 80% таких посетителей на сайт уже не возвращается. Это говорит о том, что успех веб-проекта не в последнюю очередь зависит от его скорости. Автор материала, перевод которого мы ...

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

Первое знакомство с Home Assistant Home Assistant – популярное приложение с открытым исходным кодом для организации умного дома. Первый опыт автора в работе с Home Assistant основывается на попытке интеграции в него ‘умной рисоварки‘. Автор постарается описать основные компоненты и возможности данного прило...

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

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

Windows 10 на ARM для Lumia получает поддержку датчиков Проект Windows 10 on ARM для Lumia 950 и Lumia 950 XL дал новую жизнь телефонам с Windows и открыл двери для новых функций, которые на самом деле были недоступны в Windows 10 Mobile.Совсем недавно проект Windows 10 on ARM для Lumia 950 и Lumia 950 XL получил обновление драйв...

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

Профилирование со сверхсветовой скоростью: теория и практика. Часть 1 Привет! Из заголовка вы уже поняли, о чём я собираюсь рассказать. Тут будет много хардкора: мы обсудим Java, С, С++, ассемблер, немного Linux, немного ядра операционной системы. А ещё разберём практический кейс, поэтому статья будет в трёх больших частях (достаточно объёмных...

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

[Перевод] 13 приёмов работы с npm, которые помогают экономить время Каждый день миллионы разработчиков, создавая свои JavaScript-приложения, обращаются к npm (или к Yarn). Выполнение команд наподобие npm init или npx create-react-app стало привычным способом начала работы над практически любым JavaScript-проектом. Это может быть сервер, клие...

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

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

Локализация приложения и поддержка RTL. Доклад Яндекс.Такси При локализации сервиса важно внимательно отнестись к согласованию переводов между собой. Руководитель группы клиентской Android-разработки Яндекс.Такси Александр Бонель рассказал, какие практики и инструменты упрощают локализацию. Во второй части доклада Саша поделился опыт...

[Перевод] Создание приложения с использованием Styled-Components в Vue.js Привет, Хабр! На днях наткнулся на одну очень интересную статью на португальском. К счастью, удалось найти её английскую версию. Предлагаю вашему вниманию перевод на русский. Другие мои переводы вы можете найти на мой странице на хабре. Ссылка на оригинал: португальский, ан...

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

Еще один способ оптимизации docker-образов для Java приложений История по оптимизации образов для java приложений началась с выхода статьи в блоге спринга — Spring Boot in a Container. В ней обсуждались различные аспекты по созданию docker образов для spring boot приложений, в том числе и такой интересный вопрос, как уменьшение размеров...

Microsoft выпустила PowerToys 0.12 с функцией массового переименования файлов Компания Microsoft выпустила новую предварительную версию утилиты PowerToys, которая принесла с собой новую функцию под названием Smart Rename. С помощью этой функции вы сможете осуществлять массовое переименование файлов, используя простую технику поиска и замены, использу...

[recovery mode] Что такое Cordentity? [Перевод статьи] Cordentity — это приложение Corda (CorDapp) позволяющее использовать возможности технологии Self Sovereign Identity (SSI) другим CorDapps. Другими словами, Cordentity = Corda + Identity. Мы рады объявить, что теперь Cordentity является проектом Hyperledger Labs с открытым и...

Российская система психологического профилирования людей по фото BestFitMe привлекла 150 млн рублей от VEB Ventures Новая инвесткомпания планирует вложить 36 млрд рублей в российский венчурный рынок.

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

Как я делал desktop-приложение на Flutter (+ bonus) Недавно попалась на глаза новость, что вышел очередной релиз Flutter (1.9), который обещает разные вкусности и, в том числе, раннюю поддержку веб-приложений. На работе я занимаюсь разработкой мобильных приложений на React Native, но с любопытством поглядываю на Flutter. Для...

Speed Booster 1.4 Speed Booster & RAM Cleaner очистит ваш телефон, повысит производительность и сделает ваше устройство намного быстрее. Особенности : Boost & Clean Пусть телефон станет мощным за одно нажатие. Одно нажатие и Speed Booster & RAM Cleaner даст вашему телефону новую ж...

В OpenStack расширяют портфолио и займутся CI/CD В OpenStack Foundation объявили, что теперь организация будет поддерживать не только открытые проекты для IaaS, но и компании, занятые разработкой решений для контейнеризации, CI/CD и периферийных вычислений. Рассказываем, с чем связана смена направления и кто уже работает ...

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

Сборка Android-проекта в Docker-контейнере Разрабатывая проект под платформу Android, даже самый небольшой, рано или поздно приходится сталкиваться с окружением для разработки. Кроме Android SDK, необходимо чтобы была последняя версия Kotlin, Gradle, platform-tools, build-tools. И если на машине разработчика все эти ...

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

ЕС запустит программу поиска ошибок в открытом ПО Европейский союз объявил о серии программ по выявлению ошибок и уязвимостей в бесплатном программном обеспечении с открытым исходным кодом, включая такие популярные приложения, как VLC Media Player, Filezilla, PuTTY и 7-Zip. Финансовые вознаграждения будут предложен...

[Из песочницы] Профилирование под Linux с помощью Performance Analyzer Профилирование под Linux с помощью Performance Analyzer Коллеги, считаю полезным рассказать об удобном и бесплатном профилировщике кода для Linux/Solaris. Он входит в пакет Sun/Oracle Developer Studio [1]. По моему мнению, другие части этой среды разработки несколько бесполе...

Анонсирован Microsoft Web Template Studio Компания Microsoft объявила о выпуске ранней версии кросс-платформенного расширения для Visual Studio Core под названием Microsoft Web Template Studio, которое призвано упростить и ускорить процесс создания полнофункциональных веб-приложений. Web Template Studio использует ...

Приложения Facebook, Instagram и WeChat не обновляются в Google Play Store Обновление, которое не обновляетРаспространено мнение, что, если человек регулярно обновляет приложения до последней версии, он защищен от хакерских атак. Но это не так. Исследователи Check Point доказали, что патчи в высококлассных приложениях - Facebook, Instagram, WeChat ...

Как сократить time-to-market: история про автоматизацию тестирования в «М.Видео» Быстрая и эффективная разработка ПО сегодня немыслима без отточенных рабочих процессов: каждый компонент передается на сборку к моменту установки, изделие не простаивает в ожидании. Еще два года назад мы совместно с «М.Видео» начали внедрять такой подход в процесс разработ...

Представлена платформа Nvidia Studio Канун выставки Computex 2019 компания Nvidia выбрала, чтобы представить платформу Nvidia Studio, которая «призвана значительно повысить производительность и надежность работы приложений для более чем 40 млн создателей контента по всему миру, работающих над проекта...

Google позволит протестировать новые функции Android, не устанавливая обновлений Обновление Android За что мы так любим обновления? Конечно, за нововведения, которые они содержат. Благодаря им мы получаем доступ к функциям, которые ранее не были нам доступны. Другое дело, что иногда плата, которую нам приходится платить за испытание новых возможностей оп...

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

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

[recovery mode] Как я свою онлайн игру создавал. Часть 1: Работа с сетью Привет всем! У меня недавно был отпуск, и появилось время спокойно попрограммировать свои домашние проекты. Захотел я, значит, свою простенькую онлайн игру сделать на Rust. Точнее, простенькую 2D стрелялку. Решил сначала сделать сетевую часть, а там уже видно будет, что да...

[Перевод] Серверный рендеринг в бессерверной среде Автор материала, перевод которого мы публикуем, является одним из основателей проекта Webiny — бессерверной CMS, основанной на React, GraphQL и Node.js. Он говорит, что поддержка многоарендной бессерверной облачной платформы — это дело, которому свойственны особенные задачи....

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

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

На «Эльбрусе» запустили Counter-Strike и Morrowind В Instagram Яндекс. Музея появились видео, демонстрирующие успешный запуск компьютерных игр на российском компьютере, построенном на основе отечественного процессора «Эльбрус». Первый ролик посвящен The Elder Scrolls III: Morrowind и за минуту показано начало игровой кампани...

Проверка кода компилятора Ark Compiler, недавно открытого компанией Huawei Во время презентаций летом 2019 года Huawei анонсировала технологию Ark Compiler. По заверениям представителей компании, этот проект с открытым исходным кодом позволяет существенно повысить плавность и отзывчивость Android и сторонних приложений. Новый интересный открытый п...

Большинство антивирусных приложений для Android неэффективны Согласно европейской компании AV-Comparatives большинство антивирусных приложений в Google Play Store не работают должным образом. В своем недавнем тесте Android 250 приложений от Google Play Store в 2019 году AV-Comparatives обнаружили, что только 80 приложениям удало...

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

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

[Перевод] 5G — технология, которая, видимо, замедлит веб Технология 5G — это уже реальность. Соответствующий значок начинает появляться в верхних частях экранов телефонов по всему миру. Если вы подключены к 5G-сети, то вы могли заметить, что такая сеть не кажется намного более быстрой, чем 4G-сеть. Я вполне это понимаю. Говорят, ч...

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

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

Бесплатное обновление. Apple объявила дату релиза операционной системы iPadOS Компания Apple объявила дату выпуска операционной системы iPadOS для своих планшетов. Она станет доступна в качестве бесплатного обновления 30 сентября.  Её можно будет установить на iPad Air 2 и новее, все модели iPad Pro, iPad 5‑го поколения и новее, а так...

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

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

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

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

Microsoft улучшает поддержку датчиков для Chromium в Windows 10 Последняя идея Microsoft для Chromium может принести пользу Google Chrome и новому Edge, предлагая улучшенную «совместимость, производительность и использование батареи» для датчиков в браузере. Говорят, что группа разработчиков Microsoft Edge работает над улучшением поддерж...

Чем занимаются опенсорсные фонды — говорим о свежих проектах OpenStack и Linux Foundation Мы решили рассказать о проектах (Kata Containers, Zuul, FATE и CommunityBridge), которые недавно присоединились к двум крупным фондам, и о том, в каком направлении они развиваются. Читать дальше →

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

[Перевод] Введение в Redis с использованием Spring Boot Перевод статьи подготовлен специально для студентов курса «Разработчик на Spring Framework». В этой статье мы рассмотрим основы использования Redis через Spring Boot с помощью библиотеки Spring Data Redis. Мы создадим приложение, которое демонстрирует, как выполнять CR...

Microsoft прекратит поддерживать Windows 10 Mobile в этом году В 2017 году Microsoft прекратила поддерживать Windows Phone 8.1, а теперь сообщила о том, что перестанет поддерживать и последнюю версию своей мобильной операционной системы — Windows 10 Mobile — 10 декабря этого года. При этом, по словам Microsoft, смартфоны с версией 1703 ...

Как превратить приложение на iPad в программу для Mac Презентация macOS Catalina на WWDC 2019 В июне этого года, на WWDC, Крейг Федериги артистично и с примерами рассказал кое о чем очень важном. Благодаря чему в macOS вернулся Twitter, и появились Jira и Asphalt. Но самое главное о причине этих чудес так и не было сказано. Ч...

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

Win32-приложения будут работать на Windows 10X 2 октября Microsoft представила Windows 10X (новую версию Windows 10) вместе с Surface Neo и Surface Duo. По словам руководителей Microsoft, ОС специально создана для устройств с двумя экранами, но ожидается, что Windows 10X будет доступна и в конце 2020 года для ноутбуков. ...

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

Microsoft спасёт мировой запас открытого исходного кода от ядерной войны В прошлом году компания Microsoft завершила покупку Github, крупнейшего сервиса хостинга IT-проектов и их совместной разработки. А теперь стало известно о проекте GitHub Archive, которое призвано укрыть весь мировой запас открытого исходного кода от возможных грядущих к...

Все проблемы решены: за месяц Xiaomi произвела свыше 1,5 миллиона смартфонов Mi 9 и Mi 9 SE С самого начала Xiaomi испытывала большие проблемы с производством моделей серии Mi 9: спрос настолько превышал предложение, что компании пришлось приложить немало усилия для организации бесперебойных поставок. Тут было все: и экстренный запуск сборочного производства н...

[Перевод] Дуглас Энгельбарт: «Augmenting Human Intellect: A Conceptual Framework» (шаг 2) Всем привет. Представляю вам коллективный (хабра-) перевод основного документа (282 000 знаков), дела всей жизни Дугласа Энгельбарта. (Подробнее: 50 лет спустя. The Mother of All Demos) Я считаю, что: Первоисточники крайне важны, иначе появляются «трактователи», кото...

Samsung представила 4 новых приложения для оптимизации Android-смартфонов Samsung хочет сделать свои смартфоны лучше. Поэтому выпустила для них 4 новых приложения Чистка, отладка, откат — все эти манипуляции хорошо знакомы большинству пользователей Android, которые вынуждены время от времени проводить их, чтобы заставить свои смартфоны работ...

Как переместить приложения на SD-карту? Учимся сохранять приложения на карте памяти на Android Сегодня приложения для смартфонов становятся все более объемными. Но для пользователей Android это не является проблемой, ведь программы можно устанавливать на карту памяти. Это не сложно. Но вот что делать, если вам нуж...

[Из песочницы] Neutralinojs — альтернатива Electron, потребляющая меньше памяти Neutralinojs — фреймворк с открытым исходным кодом для создания кроссплатформенных приложений на HTML/CSS/JS. Отличие от Electron в том, что для запуска приложения на Neutralinojs не нужно устанавливать nodejs и сотни зависимостей, тянущихся из package.json. Давайте сравним ...

Save File Me — бесплатный сервис бакапов с шифрованием на стороне клиента Каждый администратор знает, на сколько важно делать ежедневные резервные копии. Для меня «идеальный» сервис резервирования это: Отсутствие регистрации, привязки к почтовому адресу и т.п. Возможность создавать независимые учетные записи, под каждый проект Шифрование на сто...

[Из песочницы] Невидимый деплой монолитного приложения в продакшн на AWS. Личный опыт Я – Lead DevOps Engineer в международной SaaS-компании. Мы разрабатываем платформу для совместной работы кроссфункциональных команд. В статье поделюсь тем, как наша DevOps-команда решила проблему ежедневных серверных релизов монолитного stateful-приложения и сделала их автом...

[Перевод] Quasar 1.0: новый полезный инструмент для Vue-разработчиков и не только для них Автор материала, перевод которого мы публикуем сегодня, занимается работой над фреймворком Quasar. Это — полнофункциональный расширяемый опенсорсный инструмент для разработки современных приложений различного назначения. Он построен на базе популярного фронтенд-фреймворка Vu...

[Перевод] Ускорение instagram.com. Часть 1 В последние годы на instagram.com появилось много нового. Очень много. Например — средства создания историй, фильтры, творческие инструменты, уведомления, прямые сообщения. Однако по мере роста проекта всё это дало один печальный побочный эффект, который заключался в том, чт...

Apple работает над «новым поколением медиа-приложений для Windows» По всей видимости, компания Apple разрабатывает набор мультимедийных приложений для Windows 10, которые могут заменить собой приложение iTunes на платформе. На это указывает открытая вакансия инженера-программиста, обнаруженная на портале LinkedIn. Приложение iTunes по-преж...

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

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

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

React Hook Router современная альтернатива React Router Вольный перевод публикации How React Hooks can replace React Router. Автор Peter Ekene Eze. С момента появления React Hooks многое изменилось. Возможности, предоставляемые хуками, позволили пересмотреть наш подход к определенным концепциям в React, в том числе и к маршрут...

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

[Перевод] Профессиональная контейнеризация Node.js-приложений с помощью Docker Автор материала, перевод которого мы публикуем сегодня, работает DevOps-инженером. Он говорит, что ему приходится пользоваться Docker. В частности, эта платформа для управления контейнерами применяется на разных этапах жизненного цикла Node.js-приложений. Использование Docke...

Nokia пообещала, что ее смартфоны станут безопаснее По мере увеличения объемов информации, которые получали наши смартфоны, понятие безопасности постепенно стало даже более значимым, чем такие параметры, как производительность и разрешение экрана. Дошло до того, что некоторые производители даже начали выпускать аппараты с по...

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

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

Apple планирует выпустить приложения нового поколения для Windows Apple планирует заняться разработкой ПО нового поколения под Windows Этим летом Apple сделала то, чего от неё ждали уже много лет – она отказалась от iTunes. Само собой, прекратила существование только утилита, тогда как онлайн-магазин с музыкой и фильмами, а также её ключев...

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

[Перевод] Выпускаем Predator — предкомпилированные Data-репозитории Сегодня, команда Micronaut в Object Computing Inc (OCI) представила Predator, новый проект с открытым исходным кодом, цель которого — значительно улучшить время выполнения и производительность (по памяти) доступа к данным для микросервисов и serverless-приложений, при этом ...

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

Магазин приложений AppGallery от Huawei стал похож на Google Play Ещё немного и AppGallery станет похож на альтернативу Google Play Запрет на использование сервисов Google в новых смартфонах Huawei вынудил китайского производителя искать им альтернативу. Однако недолгие поиски привели к тому, что Huawei решила не полагаться на сторонние ко...

Оптимизация node.js приложения Дано: старое http node.js приложение и возросшая нагрузка на него. Стандартные решения проблемы: докинуть серверов, все переписать с 0, оптимизировать уже написанное. Давайте попробуем пойти путем оптимизации и разобраться, как можно найти и улучшить слабые места приложения....

10 фактов, которые вы должны знать о Harmony OS На своей на конференции для разработчиков компания Huawei с большой помпой представила Harmony OS. В первую очередь новая операционная система ориентирована на продукты Интернета вещей (IoT, Internet of Things) и является резервным планом, если в какой-то момент Huawei больш...

3D игра на three.js, nw.js Я решил выпустить новую версию своей старой браузерной игры, которая на протяжении пары лет пользовалась успехом в качестве приложения в социальных сетях. На этот раз я задался целью оформить ее также и в виде приложения под Windows (7-8-10) и разместить в различных магазина...

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

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

Семь бесплатных автоматизированных платформ-задачников для прокачки навыков программирования Привет! Недавно сделали подборку бесплатных сервисов для изучения программирования с нуля. В комментариях получили много заинтересовавших нас платформ. Из них составили отдельный список таких, которые подойдут профессиональным программистам. CheckiO Проект из Украины «Чекио»...

Пишем свой язык программирования, часть 2: промежуточное представление программ Введение Приветствую всех, кто заглянул почитать мою очередную статью. Повторюсь, я описываю создание языка языка программирования, на основе проведенной ранее работы, результаты которой описал в этом посте. В первой части (линк: habr.com/post/435202) я описал этапы прое...

Из Google Play удалены вредоносные приложения с агрессивной рекламой Ни одно из девяти приложений не выполняло заявленных в описании функций, говорят в ESET. Вместо этого приложения показывали навязчивую рекламу. Автором всех приложений является один разработчик - Tools4TV.После загрузки каждая из этих программ симулировала подключение пульта...

[Перевод] AWS показал Open Source средний палец От переводчика: мне кажется, заголовок слегка неточный и на самом деле средний палец показали ребятам из MongoDB, которая теперь не очень то и Open Source. Сегодня, Amazon AWS запустил продукт DocumentDB — новую базу данных, совместимую с API MongoDB. Компания описывает Doc...

Chrome Canary получил поддержку Windows Mixed Reality Стало известно, что актуальные сборки браузера Chrome Canary (версия 74) обзавелись поддержкой Windows Mixed Reality. Но важно отметить, что для тестирования вам необходимо вступить в программу Windows Insider и установить сборку Windows 10 под номером 18329 или новее, поск...

Кто кушает память нашего iPhone? Чистим яблоки Все современные устройства дивным образам подчиняются второму началу термодинамики — энтропия (в простонародье — хаос) возрастает, если к системе не прикладывать внешние усилия. За примерно 3 года использования своего iPhone я особо не прикладывал усилий к очистке памяти тел...

[Из песочницы] Лицензия для проектов с открытым исходным кодом, которая обязывает пользователей «не причинять вред» Привет, Хабр! Представляю вашему вниманию перевод статьи «An Open Source License That Requires Users to Do No Harm» автора Klint Finley. Китай использует технологии распознавания лиц, чтобы вычислять уйгурских мусульман. Военные США используют дроны для убийства подозрева...

Google заплатит за баги в приложениях В программе поиска багов участвуют все популярные приложения Несколько лет назад компания Google запустила программу по поиску уязвимостей Android Security Rewards Program. Корпорация «добра» начала платить хакерам за обнаружение уязвимостей и ошибок в Android, а также среди...

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

Шнековый смеситель - динамически активный макет Здравствуйте!Хотим представить вашему вниманию наш пилотный проект шнекового смесителя, который был выполнен в БГТУ им. Шухова на кафедре Механического оборудования в рамках защиты магистерской диссертации. Автор проекта - Полина Самсонова , на момент выполнения проекта маги...

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

Как и зачем мы оптимизировали алгоритм очистки SLAB-кэшей в ядре Linux Рост популярности контейнеров и их использование в совокупности с контрольными группами выявили серьезную проблему масштабируемости, которая приводит к значительному падению производительности на больших машинах. Проблема в том, что время обхода SLAB-кэшей зависит квадратичн...

[Перевод] Путь к проверке типов 4 миллионов строк Python-кода. Часть 1 Сегодня мы предлагаем вашему вниманию первую часть перевода материала о том, как в Dropbox занимаются контролем типов Python-кода. В Dropbox много пишут на Python. Это — язык, который мы используем чрезвычайно широко — как для бэкенд-сервисов, так и для настольных клиентс...

Популярные приложения из Google Play выводят из строя Android-смартфоны По данным издания Ars Technica, вредоносное рекламное ПО под названием BeiTaAd было интегрировано в 238 приложений, найденных в магазине Google Play. Все эти приложения, которые были установлены на смартфоны пользователей более 440 миллионов раз, показывали различного рода ...

Google работает над ARCVM, новым способом запуска Android-приложений в Chrome OS В течение последних нескольких лет на многих устройствах Chromebook можно было установить магазин Google Play и запускать приложения для Android. Это дало Chrome OS возможность стать чем-то большим, нежели просто не очень популярной операционной системой, основанной на попу...

Выпущена новая версия Microsoft Edge Dev под номером 78.0.262.0 На прошлой неделе Microsoft объявила о выходе новой предварительной сборки Microsoft Edge на Chromium для канала Dev с большим количеством изменений, однако до пользователей она не дошла из-за возникших проблем с распространением. Теперь же компания выпускает новую сборку б...

Погружаемся в opensource-экосистему Android Disclaimer о том, что пост не призывает к радикальным формам фанатизмаКаждый выбирает свой "уровень погружения". Вам не обязательно следовать каждому пункту из этого поста. Моя цель — показать, насколько хорошо развита экосистема на данный момент и чего вы можете и не можете...

[Из песочницы] Работа Xamarin c SDK, написанном на C Не так давно у меня был интересный проект на Xamarin Forms для нескольких платформ: Android iOS UWP MacOS Нам было необходимо создать библиотеку, которая смогла бы подключаться к нескольким нашим проектам: Xamarin.Forms, Android на Java, Cordova, а также позволять сторонн...

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

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

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

In-App Updates: ускоряем процесс обновления приложения на Android Среди многообразия инструментов, анонсированных на Android Dev Summit, особое внимание хочется уделить механизму обновления приложения In-App Updates (IAUs), который помогает разработчикам ускорить добавление новых фич, баг-фиксов и улучшений производительности. Поскольку ...

Опыт перевода большого проекта с Flow на TypeScript JavaScript – это один из языков с динамической типизацией. Такие языки удобны для быстрой разработки приложений, но когда несколько команд берутся за разработку одного большого проекта, лучше с самого начала выбрать один из инструментов для проверки типов. Можно начать р...

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

[Из песочницы] Использование Ansible, Terraform, Docker, Consul, Nomad в облаках (Алексей Вахов, Учи.ру) Учи.ру — онлайн-платформа для школьного образования, более 2 миллионов школьников, регулярно решают у нас интерактивные занятия. Все наши проекты хостятся полностью в публичных облаках, 100% приложений работают в контейнерах, начиная от самых маленьких, для внутреннего польз...

[Из песочницы] Как при помощи 2 видов unit-тестов сделать приложение более стабильным Привет, Habr. Меня зовут Илья Смирнов, я Android-разработчик в компании FINCH. Хочу показать вам несколько примеров работы с Unit-тестами, которые мы наработали у себя в команде. В наших проектах используется два вида Unit-тестов: проверка на соответствие и проверка на выз...

Google придумала, как сделать смартфоны на Android 10 быстрее Android 10 ускорит ваш смартфон? Google говорит, что да Зачем нужны обновления? Одним они греют душу, потому что, если смартфон продолжает получать новые версии ОС, значит, он всё ещё актуален. Для других это основной способ получить доступ к новым функциям, которые прежде н...

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

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

Airtest IDE — новый путь в автоматизации тестирования мобильных игр? Сегодня я хочу вам рассказать о достаточно новом open-source инструменте для автоматизированного тестирования под названием Airtest. В дальнейшем я сделаю ещё несколько статей с подробным рассказом об отдельных элементах данного инструментария и как с ними работать, а сейчас...

[Из песочницы] Инкапсуляция для настоящих самураев, или нюансы, связанные с ключевым словом internal в C# Пролог: internal is new public Каждый из нас мечтал о проекте, где всё будет сделано правильно. Это кажется вполне естественным. Как только ты узнаёшь о самой возможности писать хороший код, как только слышишь легенды о том самом коде, который можно легко читать и изменять, ...

[Из песочницы] Кросс-компиляция Scala в Gradle проекте Для Scala проектов довольно распространённым является предоставление бинарных артефактов скомпилированных под несколько версий Scala компилятора. Как правило для целей создания нескольких версий одного артефакта в сообществе принято использовать SBT, где эта возможность есть...

[Перевод] Руководство по React Native для начинающих Android-разработчиков (с примером приложения) Представляем вам перевод статьи Nikhil Sachdeva, опубликованной на hackernoon.com. Автор делится опытом разработки мобильных приложений с помощью React Native и предлагает создать свое приложение, используя этот фреймворк. Я был Android-разработчиком и довольно длительное...

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

[Перевод] 20 лет RollerCoaster Tycoon: интервью с создателем игры 31 марта 1999 года была выпущена игра RollerCoaster Tycoon, полностью созданная одним человеком и написанная на языке ассемблера x86. В честь юбилея игры мы публикуем перевод интервью с автором, записанное в 2016 году. Сегодня мало кто помнит имя шотландского программиста ...

Простейшее профилирование памяти на STM32 и других микроконтроллерах «С опытом приходит стандартный, научный подход к вычислению правильного размера стека: взять случайное число и надеяться на лучшее» — Jack Ganssle, «The Art of Designing Embedded Systems» Привет, Хабр! Как ни странно, но в абсолютном большинстве виденных мной «учебников дл...

[Перевод] Как сделать контейнеры еще более изолированными: обзор контейнерных sandbox-технологий Несмотря на то, что большая часть ИТ-индустрии внедряет инфраструктурные решения на базе контейнеров и облачных решений, необходимо понимать и ограничения этих технологий. Традиционно Docker, Linux Containers (LXC) и Rocket (rkt) не являются по-настоящему изолированными, пос...

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

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

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

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

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

[Перевод] Любопытные извращения из мира ИТ — 3 Сайт The Daily WTF уже 14 лет собирает курьёзные, дикие и/или печальные истории из мира ИТ. Я перевёл несколько рассказов, показавшихся мне интересными. Все имена и названия компаний изменены. Предыдущие выпуски можно найти по метке "любопытные извращения". История первая:...

Анализ кода CUBA Platform с помощью PVS-Studio Для Java программистов существуют полезные инструменты, помогающие писать качественный код, например, мощная среда разработки IntelliJ IDEA, бесплатные анализаторы SpotBugs, PMD и другие. Всё это уже используется в разработке проекта CUBA Platform, и в этом обзоре найденных...

Учебные проекты на Godot — Pong (часть 1) Создание и настройка сцены игрового процесса Приветствую вас, хабровчане! Как и обещал в конце прошлой статьи, я обратил свой взгляд на игровой движок. Правда мне больше приглянулся Godot. Почему? Тема для отдельной статьи размышления, а я не умею долго думать и, тем более, размышлять. Несмотря на то, что Pong имеетс...

Камера в Google Translate получила поддержку NMT и 60 новых языков Google значительно улучшил функциональность камеры в приложении Google Translate. Среди основных нововведений – поддержка 60 новых языков и обновление базовых моделей перевода, что в отдельных случаях позволило сократить количество ошибок на 85%. В рамках обновления Google и...

Как адаптировать UX/UI под permissions Во многих проектах существует процессы аутентификации (в той или иной степени). Написано много “бест практис” во всех известных технологиях и т.д. и т.п. Но вот пользователь сделал логин и? Ведь он далеко не всё может сделать. Как определить что он может видеть, а что нет. ...

Эволюция кластерного взаимодействия. Как мы внедряли ActiveMQ и Hazelcast В течение последних 7 лет я вместе с командой занимаюсь поддержкой и развитием ядра продукта RealtimeBoard: клиент-серверным и кластерным взаимодействием, работой с базой данных. У нас Java с разными библиотеками на борту. Запускается всё вне контейнера, через Maven-плагин....

Уязвимый Twitter API ставит под удар тысячи iOS-приложений Устаревший API-интерфейс, который многие iOS-приложения до сих пор используют для авторизации через Twitter, содержит уязвимость, позволяющую из положения «человек посередине» получить токен доступа OAuth и выполнять различные действия в соцсети от имени жертвы. По...

Microsoft продлила поддержку Windows 7 для некоторых компьютеров до конца 2020 года Microsoft продлила обновления безопасности Windows 7 для компьютеров избирательной системы до конца 2020 года. Для остальных расширенная поддержка Windows 7 заканчивается 14 января 2020.Компания Microsoft объявила, что продлит поддержку операционной системы Windows 7 для ком...

Wireshark 3.x: анализ кода под macOS и обзор ошибок Wireshark Foundation выпустила финальную stable-версию популярного сетевого анализатора трафика — Wireshark 3.0.0. В новом релизе устранено несколько багов, реализована возможность анализа новых протоколов и заменен драйвер WinPcap на Npcap. Здесь заканчивается цитирование ...

Apple выпустила первые бета-версии iOS 12.4, macOS 10.14.6, watchOS 5.3 и tvOS 12.4 Сегодня, 15 мая, Apple выпустила первые бета-версии iOS 12.4, macOS 10.14.6, watchOS 5.3 и tvOS 12.4. Обновления уже доступны для загрузки всем зарегистрированным разработчикам. Установить апдейты можно как по «воздуху», установив специальный профиль, так и с официального с...

[Из песочницы] Как сойти за хорошего программиста Привет, Хабр! Представляю вашему вниманию перевод статьи «How To Fake Being a Good Programmer» автора Stan Sootla. Программисты – это, своего рода, волшебники: слегка потрепанные персонажи-бедняки, которые умеют превращать кофе в строчки кода. Я не владею магией, я всего ...

[Из песочницы] Что в сердце у беспилотника? Автомобильная промышленность сегодня претерпевает революцию автономного вождения. Беспилотный автомобиль может обеспечить более высокий уровень безопасности пассажирам, поскольку управление им лишено человеческого фактора. Широкое распространение беспилотных автомобилей в бу...

Huawei выпускает открытую бета-версию EMUI 10 для 8 устройств, включая серию Mate 20 В настоящее время Huawei выпускает открытую бета-версию EMUI 10 для восьми устройств на международном рынке, включая четыре устройства из серии Huawei Mate 20 и два устройства из европейской линейки Huawei P 2019 Smart. Mate 20 Pro от Huawei также получает бета-версию EMUI 1...

Race condition в веб-приложениях TL;DR Большинство атакующих использовали ненадежные методы race condition, инструмент racepwn поможет это исправить Вася хочет перевести 100 долларов, которые есть у него на счету, Пете. Он переходит на вкладку переводов, вбивает Петин ник и в поле с количеством средств, ко...

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

Легкий способ заработать на Bug Bounty Наверняка вы уже не раз слышали выражение «багхантинг», и я уверен, что вы бы не отказались заработать пару-тройку сотен (а то и тысяч) долларов, найдя в чужой программе потенциальную уязвимость. В этой статье я расскажу о трюке, который поможет исследовать проекты с открыт...

[Перевод] Сравнение одинакового проекта в Rust, Haskell, C++, Python, Scala и OCaml В последнем семестре университета я выбрал курс компиляторов CS444. Там каждая группа из 1-3 человек должна была написать компилятор из существенного подмножества Java в x86. Язык на выбор группы. Это была редкая возможность сравнить реализации больших программ одинаковой фу...

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

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

[Из песочницы] Full-stack TypeScript Apps Привет, Хабр! Представляю вашему вниманию перевод статьи "Full-Stack TypeScript Apps — Part 1: Developing Backend APIs with Nest.js" автора Ana Ribeiro. Часть 1: Разработка серверного API с помощью Nest.JS TL;DR: это серия статей о том, как создать веб-приложение TypeScript ...

Статическое распределение памяти в микроконтроллерах Холмс: Любезнейший, не подскажите где мы находимся? Пастух: Вы находитесь на воздушном шаре!!! Холмс: Вы должно быть программист. Пастух: Да, но как вы догадались? Холмс: Только программист мог дать столь точный и при этом столь бесполезный ответ. … отрывок из известного а...

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

Новые ключевые слова в Java В ближайшем будущем в языке Java появятся новые фичи, над которыми сейчас идет работа в рамках проектов Valhalla, Panama и Loom. Расширение языка — дело непростое, тем более — языка, в котором акцент делается на обратную совместимость; поэтому для того, чтобы их интеграция в...

Галерея дня: скриншоты Android для кнопочных телефонов, Dino Runner прилагается В начале года в сети появилась информация о конкуренте KaiOS, которую создаёт компания Google на основе Android и Chrome. Теперь ресурс 9to5Google опубликовал подборку скриншотов, которые были получены в результате тестирования ранней сборки несенсорного Chrome и Androi...

macOS Catalina лишилась поддержки 32-битных приложений Не самая хорошая новость для тех, кто часто пользуется старыми приложениями — Apple официально лишила macOS Catalina поддержки 32-битных приложений. Это означает, что нам придется распрощаться с большим количеством программ и игр, которые долгое время не получали каки...

Scala + MXNet = Микросервис с нейронкой в проде В интернете есть огромное количество руководств и примеров, на основе которых вы, дорогие читатели, сможете «без особого труда» и с «минимальными» временными затратами написать код, способный на фото отличать кошечек от собачек. И зачем тогда тратить время на эту статью? О...

WinForms: ошибки, Холмс Мы любим искать ошибки в проектах Microsoft. Почему? Всё просто: их проекты, как правило, легко проверить (работу можно вести сразу в среде Visual Studio, для которой у PVS-Studio есть удобный плагин) и они содержат мало ошибок. Поэтому обычный алгоритм работы такой: найти ...

Российская SoC NM6408 НТЦ «Модуль» выходит в свет: 28 нм, 512 гигафлопс, 35 Вт В последней декаде февраля российский научно-технический центр «Модуль» стал участником ряда отраслевых выставок, прежде всего Еmbedded World 2019 и 12-й Международной авиакосмической выставки Aero India ― 2019. На каждом из этих мероприятий разработчик заключил определённые...

Huawei представила ИИ-процессор Ascend 910 и новый фреймворк Mindspore Компаниям, работающим в сфере создания ИИ-технологий и машинного обучения, требуются специальные процессоры высокой производительности. До недавнего времени в этом сегменте было не так много крупных игроков, среди которых можно выделить Intel, NVIDIA, Qualcomm и Google. Судя...

[Перевод] Управление стейтом с помощью React Hooks – без Redux и Context API Всем привет! Меня зовут Артур, я работаю ВКонтакте в команде мобильного веба, занимаюсь проектом VKUI — библиотекой React-компонентов, с помощью которой написаны некоторые наши интерфейсы в мобильных приложениях. Вопрос работы с глобальным стейтом у нас пока открыт. Существу...

Проверка проекта CDK с помощью статического анализатора IntelliJ IDEA Я решил потестировать статический анализатор Java-кода IntelliJ IDEA и с его помощью проверил проект The Chemistry Development Kit. Здесь я приведу некоторые ошибки, которые я нашёл. Думаю, что часть из них характерна для Java-программ в целом, поэтому могут быть интересны. ...

Fancade — приложение для создания собственных миниатюрных игр на мобильных Martin Magni – автор популярной головоломки Mekorama – выпустил свой новый проект Fancade. Пока что он доступен только в Google Play в режиме пробного запуска. Если вы хотите получить доступ и на iOS, напишите автору в Discord – ссылку него и другие полезные материалы можно ...

[Перевод] Внепроцессный отладчик для C++ в Visual Studio 2019 В Visual Studio 2019 Preview 1 представлен улучшенный отладчик для C++, который использует внешний 64-разрядный процесс для размещения своих ресурсозатратных компонентов. Если у вас ранее возникали проблемы с памятью при отладке приложений C++, теперь эти проблемы должны быт...

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

Как Windows 10 May 2019 Update улучшает общую производительность ПК Обновление Windows 10 May 2019 Update предлагает множество улучшений и незначительных изменений, которые могут в некоторой степени повысить производительность вашего компьютера. Windows 10 версии 1903 от Microsoft предлагает столь необходимые усовершенствования Центра обновл...

Kaspersky о безопасности решений для удаленного доступа Эксперт «Лаборатории Касперского» Павел Черемушкин изучил безопасность промышленных систем удаленного доступа (Virtual Network Computing, VNC). В результате исследования в четырех таких решениях было обнаружено 37 уязвимостей, многие из которых годами переходят из ...

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

Анонс Windows 10 Insider Preview Build 19028 (Ранний доступ) Доброй ночи, друзья! Компания Microsoft выпустила новую предварительную сборку Windows 10 20H1 под номером 19028 для участников программы Windows Insider, использующих каналы Fast и Skip Ahead. Полный номер сборки: 19028.1.vb_release.191115-1325. Как можно заметить, сборка ...

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

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

[Из песочницы] Пример реализации Continuous Integration с помощью BuildBot (Image by Computerizer from Pixabay) Привет! Меня зовут Евгений Черкин, я программист команды разработчиков в горнодобывающей компании Polymetal. Приступая к любому крупному проекту начинаешь задумываться: «Какой же софт лучше использовать для его обслуживания?». IT-пр...

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

Уменьшение размера docker образа с spring boot приложением Добрый день. Недавно передо мной встала задача запуска spring boot 2 приложения в kubernetes кластере используя docker образ. Эта проблема не является новой, достаточно быстро я нашел примеры в гугле и запаковал свое приложение. Я был очень удивлен не найдя alpine образ для ...

Как запустить микро-платежи в своем приложении Прошлую неделю я провёл разрабатывая свою первую публичную программку — Telegram-бота который работает в качестве Bitcoin-кошелька и позволяет «бросать монетки» другим участникам групповых чатов а так же совершать внешние Bitcoin-платежи себе или другим т.н. “Lightning Apps”...

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

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

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

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

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

WebStorm 2019.3: ускоренный запуск, усовершенствованная поддержка Vue.js и другие улучшения Всем привет! Давненько на Хабре не было блог-постов от команды WebStorm. Что же, будем исправляться, тем более, есть отличный повод: мы только что выпустили последнее крупное обновление WebStorm в этом году. Если у вас нет времени на чтение всей статьи, вот несколько сло...

Больше упоминаний о Windows Core OS от Microsoft Известная по слухам Windows Core OS (модульная версия Windows) готовится для устройств Microsoft следующего поколения. В профиле LinkedIn Microsoft Software Engineer была обнаружена новая запись:«Предоставление возможностей и протоколов управления устройствами на основе Azur...

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

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

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

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

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

[Из песочницы] Навигация в кроссплатформенных приложениях: почему NavController победил angular/router в Ionic 4 Всем привет! Меня зовут Никита Жигамовский, программист в KitApp и я хочу рассказать о своем опыте построения навигации в Ionic 4: проблеме, с которой столкнулся, и ее решении. Я занимаюсь разработкой кросс-платформенных решений для мобильных приложений с 2018 года. Рань...

CMake: тот случай, когда проекту непростительно качество его кода CMake — это кроссплатформенная система автоматизации сборки проектов. Эта система намного старше, чем статический анализатор кода PVS-Studio, при этом ещё никто не попробовал применить его к коду и сделать обзор ошибок. Ошибок, оказывается, много. Аудитория CMake огромна. Н...

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

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

Test Maturity Model: как тестировщику оценить проект и спланировать процессы Привет! Меня зовут Миша, и я Senior QА с коммерческим опытом более 6 лет. Сейчас я работаю в Provectus, но начинал я свой путь тестировщика еще в студенческие годы с участия в альфа- и бета-тестах различных игр. В какой-то момент подумал: «Почему бы не начать заниматься этим...

[Перевод] Анонс веб-интерфейса Kubernetes Web View (и краткий обзор других web UI для Kubernetes) Прим. перев.: Автор оригинального материала — Henning Jacobs из компании Zalando. Он создал новый веб-интерфейс для работы с Kubernetes, который позиционируется как «kubectl для веба». Почему новый Open Source-проект появился и каким критериям не удовлетворили уже существующ...

Форматирование исходного кода в Linux средствами ClangFormat: проблемы и решение Согласитесь, приятно и полезно, когда в проекте исходный код выглядит красиво и единообразно. Это облегчает его понимание и поддержку. Покажем и расскажем, как реализовать форматирование исходного кода при помощи clang-format, git и sh. Читать дальше →

[Перевод] Встроенная альтернатива Redux с React Context и хуками От переводчика: Представляю вольный перевод стать о том, как реализовать эффективное решение для замены Redux контекстом React и хуками. Указание на ошибки в переводе или тексте приветствуются. Приятного просмотра. С момента выхода нового Context API в React 16.6.0 многие...

Netflix лишила пользователей своего приложения для iOS поддержки функции AirPlay Противостояние Netflix и Apple, похоже, усиливается. Как известно, в представленном недавно сервисе Apple TV+ будет доступен как контент собственного производства компании, так и сторонний. В частности, в Apple TV+ будут HBO и Showtime. А вот Netflix в этом сервисе не б...

Google Drive как хранилище для веб-приложения Предисловие Мое веб-приложение хранит данные в localStorage. Это было удобно, пока не захотелось, чтобы пользователь, заходя на сайт с разных устройств, видел одно и то же. То есть, понадобилось удаленное хранилище. Но приложение «хостится» на GitHub Pages и не имеет сервер...

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

Новый взгляд на изучение и документирование исходного кода TL;DR Привет. Меня зовут Богдан и я изучаю проблемы чтения кода. Я только что закочнил первую рабочую версию «codecrumbs» — визуального инструмента для изучения исходного кода с помощью «хлебных крошек». Гитхаб репозиторий можно посмотреть тут. Проблема Недавно я проводил...

Никогда такого не было, и вот опять: в Google Play появились приложения с вирусами В Google Play Store нашли приложения с вирусами. Опять. Google регулярно вносит в свой магазин Play Store различные улучшения, касающиеся системы безопасности для того, чтобы вирусы и другое нежелательное ПО не попадало на смартфоны пользователей. Но порой кажется, что все э...

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

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

Microsoft полностью перепишет часть Windows на своем новом языке программирования Как пишет CNews со ссылкой на Zdnet, новый язык базируется на набирающем популярность Rust, развитием которого занимается компания Mozilla, разработчик известного браузера Firefox. Проект получил название Verona и, по данным издания, ключевое его отличие от Rust заключается ...

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

OTUS. Наши любимые ошибки Два с половиной года назад мы запустили проект Otus.ru и я написал вот эту статью. Сказать, что я ошибся – это совсем ничего не сказать. Сегодня я хотел бы подвести промежуточный итог и немного рассказать о проекте, что у нас пока получилось, что у нас «под капотом». Начну я...

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

Все новое в iOS 13 Beta 5: параметры главного экрана iPad, новые уровни громкости Вчера Apple выпустила пятую бета-версию iOS 13 для разработчиков, в которой появились новые исправления ошибок, добавлены и улучшены различные функции iOS 13 и iPadOS. В пятой бета-версии изменения и обновления становятся более незначительными, чем изменения, сделанные в бол...

Microsoft опубликовала список известных проблем в Windows 10 May 2019 Update В начале апреля Microsoft официально анонсировала новое функциональное обновление для Windows 10 под названием May 2019 Update. Учитывая проблемы, которые возникли с предыдущим крупным обновлением (речь об October 2018 Update), компания приняла решение провести гораздо боле...

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

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

Будущее инфраструктур центров обработки данных Архитектуры центров обработки данных общего назначения (такие ЦОДы сегодня все еще широко применяются) хорошо отрабатывали свои задачи в прошлом, но с недавних пор большинство из них достигли своих границ масштабируемости, производительности и эффективности. В архитектуре та...

[Из песочницы] Руководство по организации архитектуры Android приложения Привет, Хабр! Представляю вашему вниманию вольный перевод «Руководство по архитектуре приложения (Guide to app architecture)» из JetPack. Все замечания по переводу прошу оставлять в комментариях, и они будут исправлены. Так же для всех будут полезны комментарии от тех кто ис...

Google представляет «Translatotron», технологию прямого перевода вашей речи на другой язык Понимание и перевод живой речи намного сложнее, чем просто обработка письменного текста, ведь в действительности, в отличие от человеческого мозга, машинам обычно приходится проходить три отдельных этапа для преобразования устной речи с одного языка на другой. Первоначально...

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

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

Как обнаружить атаки на Windows-инфраструктуру: изучаем инструментарий хакеров С каждым годом растет количество атак в корпоративном секторе: например в 2017 году зафиксировали на 13% больше уникальных инцидентов чем в 2016 г., а по итогам 2018 — на 27% больше инцидентов, чем в предыдущем периоде. В том числе и тех, где основным рабочим инструментом ...

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

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

Rambler Group обновляет Живой Журнал Как сообщают в компании, изменения начнут реализовываться уже в 1 квартале 2019 года и приведут к росту аудитории "Живого Журнала", позволят быстро внедрять новый функционал и ускорят дальнейшее развитие проекта.Наталия Арефьева, руководитель проекта LiveJournal: &...

Как снизить вес компонента самолета на треть S-образный кронштейн – компонент исполнительного механизма системы увеличения подъемной силы самолета Проект оптимизации и аддитивного производства структурного авиационного компонента, осуществленный компаниями ASCO Industries и SLM Solutions, в очередной раз доказал эффе...

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

[Перевод] Продуманные запросы: стратегии кэширования в век PWA Давным-давно мы, в деле кэширования, всецело полагались на браузеры. Разработчики в те дни почти никак не могли на это повлиять. Но потом появились прогрессивные веб-приложения (Progressive Web App, PWA), сервис-воркеры, API Cache. Внезапно случилось так, что в руках програм...

PHP-Watcher: инструмент, который упрощает разработку долгоживущих приложений Мы любим PHP за простоту: ты пишешь код, обновляешь страницу в браузере и сразу видишь изменения. Но если дело доходит до консольных команд, которые могут быть долгоживущими процессами, — например, если мы пишем асинхронный HTTP-сервер для загрузки файлов, — разработка мож...

Android-приложение в памяти. Доклад об оптимизации для Яндекс.Лончера В облегченной системе Android Go действуют повышенные требования к предустановленным приложениям — размеру и используемой памяти. Перед нами встала задача в эти требования уложиться. Мы провели ряд оптимизаций и решили серьезно поменять архитектуру нашей графической оболочки...

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

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

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

Как мы пилили серверный рендеринг и что из этого вышло Всем привет! На протяжении года мы переходим на React и задумались о том, как бы сделать так, чтобы наши пользователи не ждали клиентской шаблонизации, а видели страницу как можно быстрее. С этой целью решили делать серверный рендеринг (SSR — Server Side Rendering) и оптимиз...

Google добавила в Chrome возможность отправлять ссылки между устройствами Наверное, каждый из нас сталкивался с необходимостью быстро перенести важную веб-страницу со смартфона на компьютер. Кто-то для этой цели использует специальные приложения вроде PushBullet, а кто-то по старинке отправляет ссылку самому себе в мессенджере, чтобы потом открыт...

За счёт чего iOS 13 станет быстрее В прошлом году была представлена iOS 12. Разработчики сделали особый упор на производительность и улучшение скорости работы устройств. Эти заявления не были голословными — многие старые iPhone действительно заметно «ускорились» на новой ОС, после откровенно неудачной ...

[Из песочницы] Как начать программировать в Adobe Illustrator. Скрипт Expand Clipping Mask. Часть первая Сразу хочу предупредить, что эта серия постов не для матёрых программистов и даже не для программистов вообще. Понимаю, что это звучит крайне вызывающе, учитывая IT-тематику ресурса, и все же позвольте объяснить… В качестве аудитории, я вижу обычных дизайнеров, которые хотел...

В анализаторе все должно быть прекрасно: и функциональность, и интерфейс… Изучаем новый интерфейс Solar appScreener 3.1 Как говаривал Генри Форд, все можно сделать лучше, чем делалось до сих пор. Вот и мы так подумали, когда приступили к работе над версией 3.1 нашего анализатора защищенности приложений. Нам ОООЧЕНЬ хотелось сделать наш продукт не только самым крутым по функциональности: напри...

iOS 13 beta 3 серьёзно ускорила запуск приложений Пару дней назад для загрузки стала доступна третья бета-версия iOS 13. В сборке было найдено не так много нововведений, поскольку основной упор был сделан на исправление многочисленных ошибок и недоработок. Однако положительные изменения всё же есть — многие пользоват...

Как выбрать Open Source лицензию для RAD фреймворка на GitHub В этой статье мы немного поговорим об авторском праве, но в основном о выборе свободной лицензии для RAD фреймворка IONDV. Framework и для опенсорсных продуктов на его основе. Мы расскажем о разрешительной лицензии Apache 2.0, о том, что привело нас к ней и с какими решениям...

[Перевод] Svalbard — новое имя проекта Have I Been Pwned перед продажей В 2013 году я начал понимать, что утечки приватных данных становятся повсеместными. Действительно, такие случаи участились. И возросло влияние этих утечек на их жертв, включая меня. Всё чаще я писал в блоге на эту тему, которая казалась увлекательным сегментом индустрии инфо...

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

Chrome Audit на 500: Часть 1. Лендинг В инструментах разработчика браузера хром есть вкладка «Audit». На ней расположился инструмент который называется Lighthouse, служит он для анализа насколько хорошо сделано веб приложение. Недавно я решил протестировать одно приложение и ужаснулся результатам. Сразу по нес...

Apple разрабатывает новые приложения для macOS Catalina На конференции для разработчиков WWDC 2019, в ходе которой были представлены программные продукты, Apple также продемонстрировала возможное будущее macOS — показав Project Catalyst, инструмент для переноса iOS-приложений на Mac. В рамках этой инициативы, разработчики ...

[Перевод] Улучшайте свое знание JavaScript разбирая исходный код Когда вы только начинаете карьеру программиста копание в исходном коде открытых библиотек и фреймворков может казаться чем-то страшным. В этой статье Карл Мунгази делится опытом как он поборол свой страх и стал использовать исходный код для приобретения знаний и развития нав...

[Из песочницы] Внедрение в компании системы поиска конструкторов-механиков с помощью Low-Code платформы Проблема подбора конструкторов для небольшой компании Так получилось, что любой проект в нашей компании не обходится без участия конструктора-механика и они постоянно перегружены работой. Сейчас в штате 4 конструктора. За последние 2 года мы сменили уже троих. Бывали моменты...

[Из песочницы] Опыт использования telegram-канала для повышения узнаваемости и роста доходов игровой студии Telegram-каналов, да ещё про геймдев, не то чтобы много. Тем не менее, это хороший инструмент для привлечения партнёров и клиентов. Иногда даже работников. Делимся личным опытом, с какими сложностями можно столкнуться и какие итоги получили. Исходные данные Мы – небольшая ст...

Популярный open source — часть первая: 3 инструмента для работы с данными Мы решили подготовить серию дайджестов с обзорами наиболее популярных open source проектов. В список попали самые обсуждаемые на Hacker News решения с открытым исходным кодом. Тема первой подборки — инструменты и сервисы для работы с логами и базами данных. Читать дальше →

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

Новый подход к многозадачности в iOS 13 для iPad? Немного времени осталось до Всемирной конференции разработчиков WWDC 2019, где Apple анонсирует свою новую операционную систему iOS 13. Мы уже знаем, что ОС получит темный режим и большое количество других нововведений. Также известно, что в компании вновь решили сосредоточ...

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

Проверка Telerik UI for UWP для знакомства с PVS-Studio Уже стало традицией, что программисты, пополняющие команду PVS-Studio, начинают свою деятельность с написания статьи про анализ проекта с открытым исходным кодом. В этот раз таким проверенным проектом станет Telerik UI for UWP. Читать дальше →

Словарь рекламных метрик.  CTR, CPI, CPM, CPC, CR Для того, чтобы оценить качество рекламных компаний существует большое количество различных метрик. Все они давольно таки простые для понимания, но чтобы было проще ориентироваться, в данном посте будут описаны основные из них. Разберем один из стандартных процессов попа...

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

Apple начала бороться с пиратскими приложениями на iOS Одна из главных причин, по которой разработчики и издатели выбирают iOS в качестве основной платформы — отсутствие пиратства. Практически все доступные приложения распространяются через фирменный магазин App Store, и установить что-то в обход каталога — целый кв...

На реализацию законопроекта об устойчивом рунете выделено около 2 млрд рублей Федеральный закон «О федеральном бюджете на 2019 год и плановый период 2020 и 2021 годов» предусматривает выделение средств на реализацию проекта устойчивого рунета в размере 1,8-2 млрд рублей. Только в этом году планируется освоить 600 млн рублей, о чем сообщает «Интерфакс»...

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

Security Week 25: уязвимость в Evernote и сотни взломанных интернет-магазинов Специалисты компании Guardio обнаружили (новость, исследование) интересную уязвимость в Evernote. Точнее, не в самом приложении для хранения заметок, а в расширении для браузера Google Chrome. Evernote Web Clipper позволяет сохранять веб-страницы, причем как целиком, так и ч...

Серия твердотельных накопителей Kingston DC500R включает модели объемом до 3,84 ТБ Kingston Digital, дочерняя компания Kingston Technology, объявила о выпуске твердотельных накопителей DC500R, оптимизированных для приложений с интенсивным чтением. На следующей неделе производитель обещает выпуститт твердотельный накопитель DC500M, оптимизированный для...

Intel, Lenovo и ряд исследовательских организаций объединяют усилия для ускорения разработок в сфере экзафлопсных суперкомпьютеров Lenovo, Intel и ряд институтов и университетов объявили о создании проекта Everyscale, цель которого — исследовать новейшие технологии, способные ускорить разработку и обеспечить дальнейшее широкое распространение высокопроизводительных компьютеров экзафлопсного уровня, то е...

Анализ исходного кода RPC фреймворка Apache Dubbo статическим анализатором PVS-Studio Apache Dubbo — один из самых популярных Java проектов на GitHub. И это неудивительно. Он был создан 8 лет назад и широко применяется как высокопроизводительная RPC среда. Конечно, большинство ошибок в его коде давно исправлены и качество кода поддерживается на высоком уровн...

[Перевод] Современные возможности C++, о которых надо знать всем программистам Автор материала, перевод которого мы сегодня публикуем, говорит, что C++, в его современном виде, если сравнивать его с тем, чем был этот язык несколько лет назад, значительно изменился в лучшую сторону. Конечно, эти изменения произошли далеко не сразу. Например, в былые вре...

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

Как добавить стикеры из Telegram в WhatsApp Перенести стикеры из Telegram в WhatsApp — дело двух минут Довольно популярный в народе мессенджер WhatsApp, что удивительно, получил поддержку стикеров одним из последних. В то время, как конкуренты в лице Telegram и Viber имели эту функцию довольно давно, создатели W...

[Из песочницы] Построение сервис-ориентированной архитектуры на Rails + Kafka Привет, Хабр! Представляю вашему вниманию пост, который является текстовой адаптацией выступления Stella Cotton на RailsConf 2018 и переводом статьи «Building a Service-oriented Architecture with Rails and Kafka» автора Stella Cotton. В последнее время отчетливо виден перех...

Анонс Windows 10 Insider Preview Build 19030 (Ранний доступ) Добрый вечер, друзья! Компания Microsoft выпустила новую предварительную сборку Windows 10 20H1 под номером 19030 для участников программы Windows Insider, использующих канал Fast (Ранний доступ). Полный номер сборки: 19030.1.vb_release.191119-1609. Как можно заметить, сбор...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 42. Маршрутизация Inter-VLAN и интерфейс SVI Сегодня мы рассмотрим маршрутизацию Inter-VLAN и виртуальный интерфейс свитча SVI. Мы уже знакомились с этими темами в курсе ICND1 и сейчас займемся ими более углубленно. Эти темы упоминаются в разделе 2.0 «Технологии маршрутизации» курса ICND2, подразделы 2.1а и 2.1b. Снача...

Как мы разрабатываем документацию в открытом проекте Embox Добрый день. Являясь одним из разработчиков открытого проекта Embox, я часто слышал (в последнее время слишком часто) о том, что проект интересный, но поскольку документации нет, его невозможно использовать. Мы отвечали, что документация в каком-то виде есть, что мы всегда ...

[Перевод] Как работает kubectl exec? Прим. перев.: автор статьи — Erkan Erol, инженер из SAP — делится своим изучением механизмов функционирования команды kubectl exec, столь привычной для всех, кто работает с Kubernetes. Весь алгоритм он сопровождает листингами исходного кода Kubernetes (и связанных проектов),...

Как изменения в Google Play повлияют на ASO В середине марта прошла конференция Game Developers Conference (GDC 2019), на которой Google представила обновления своего Google Play Store. Обновление нацелено на совершенствование процесса разработки приложений и игр под Android и поддержку общего роста рынка мобильных иг...

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

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

WePOP 6.0 Вот до чего дошла техника: чтобы встретиться со своими друзьями в реале, сначала надо созвониться или списаться в интернете, чтобы обсудить подробности предстоящего мероприятия. Для этого даже программы особенные создаются, такие, как WePopp. Это приложение разработано дл...

Mail.ru подводит итоги программы поиска уязвимостей в браузере Atom Старт программы был анонсирован вместе с запуском браузера Atom. Его главная особенность - повышенный уровень безопасности и усиленная защита приватности пользователей. В программе приняли участие как начинающие баг-хантеры, так и известные в России специалисты по кибербезоп...

Все, что мы знаем о Windows 10X Основываясь на слухах, Microsoft сейчас разрабатывает новую версию Windows 10 с внутренним кодовым названием Windows Core OS / Windows Lite.Сообщается, что Windows 10X, являющаяся частью Windows Core OS, предназначена для потребительских двухэкранных ПК, ноутбуков и аналогич...

Локальные файлы при переносе приложения в Kubernetes При построении процесса CI/CD с использованием Kubernetes порой возникает проблема несовместимости требований новой инфраструктуры и переносимого в неё приложения. В частности, на этапе сборки приложения важно получить один образ, который будет использоваться во всех окруж...

YouTube Music будет предустановлен на всех устройствах с Android 10 Приложение YouTube Music заменит Play Music на новых устройствах. Компания Google решила ускорить процесс перевода […]

Несколько программ из Play Store оказались заражены. Срочно удалите их со своего смартфона! В приложениях Google Play Store нашли вирусы. Опять Операционная система Android является очень удобной и приятной в использовании, ее можно кастомизировать по своему желанию и устанавливать сторонние лаунчеры… примерно такие доводы (и еще массу других) можно услышать ...

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

[Перевод] Первое знакомство с AssemblyScript Поддержка технологии WebAssembly (Wasm) появилась в браузерах относительно недавно. Но эта технология вполне может серьёзно расширить возможности веба, сделав его платформой, способной поддерживать такие приложения, которые обычно воспринимаются как настольные. Освоение Web...

[Перевод] Анонс Github Security Lab: защита всего кода вместе Мы все несем коллективную ответственность за обеспечение безопасности программного обеспечения с открытым исходным кодом — никто из нас не может это делать в одиночку. Сегодня в Github Universe мы объявили Github Security Lab. Место где соберутся вместе исследователи безоп...

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

Facebook пропатчила Fizz — свою реализацию протокола TLS Компания Facebook закрыла серьезный баг в протоколе Fizz — оригинальной реализации TLS с открытым исходным кодом. Эксплуатация уязвимости позволяла удаленному злоумышленнику вызвать отказ в обслуживании и приводила к сбою в работе целевой системы. Баг обнаружили ИБ-специалис...

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

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

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

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

React Native: делаем draggable & swipeable список Сегодня трудно кого-то удивить возможностью свайпать элементы списка в мобильных приложениях. В одном нашем react-native приложении тоже была такая функциональность, но недавно возникла необходимость расширить её возможностью перетаскивать элементы списка. А поскольку процес...

Новости Apple: складной iPhone Каждый день в мире Apple что-то да происходит, а в этом видео мы собираем все самое лучшее и интересное, чтобы вы ничего не пропустили. Сегодня — про складной iPhone, iOS 13 и многое другое! 1. Будьте осторожны — в App Store начали появляться клоны оригинальных...

Участники первой ДАО на базе Waves отберут проекты для получения гранта Децентрализованная автономная организация Ventuary-DAO запустила одноименное приложение для краудфандинга и отбора проектов в грантовую программу подразделения Waves Labs. Об этом журналу ForkLog сообщили представители Waves Platform. С помощью приложения независимые разрабо...

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

[Из песочницы] Используем AppDynamics с Red Hat OpenShift v3 В последние время многие организации хотят, чтобы их приложения переходили из монолитов в микросервисам с использованием «платформы как услуги» (PaaS), таких как RedHat OpenShift v3, AppDynamics сделала значительные инвестиции в обеспечение первоклассной интеграции с такими...

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

[Перевод] Как соединить GitLab и Pantheon и оптимизировать рабочие процессы Drupal и WordPress Наш гость, создатель инструментов для разработчиков из Pantheon, рассказывает, как автоматизировать деплои WordPress с помощью GitLab CI/CD. В Pantheon я занимаюсь связями с разработчиками, поэтому всегда ищу новые способы помочь разработчикам WordPress и Drupal решать проб...

Как распознать текст на изображении. Самый простой способ Распознать текст можно в два счета. Главное — иметь доступ к сети Бывают случаи, когда вам нужно распознать текст на изображении, чтобы в итоге у вас была не картинка, а то, что можно распечатать или отредактировать. Можно, конечно, перепечатать текст самостоятельно, н...

Что Apple Arcade может рассказать об iOS 13 и macOS 10.15 Новый игровой сервис Arcade, который Apple анонсировала на вчерашней презентации, будет одним из немногих по-настоящему кросс-платформенных геймерских площадок. Мало того, что он будет доступен на iOS, tvOS и macOS, так еще и позволит переключаться между ними в режиме реаль...

На практике в 80-90% случаев веб-приложение тормозит из-за фронтенда: интервью с Иваном Акуловым Иван Акулов — Google Developer Expert в веб-технологиях и основатель перформанс-компании PerfPerfPerf. Уже совсем скоро на HolyJS 2019 Moscow он проведет воркшоп, посвященный, как ни странно, перформансу — поиску проблем в React, дебагу медленных приложений и другим рантайм...

[Из песочницы] 4 Причины, почему вы должны забыть о Redux в приложениях на React Я работаю с Реактом на протяжении почти 3 лет, использовал как Redux так и MobX и у меня к текущему моменту возник вопрос. Почему абсолютное большинство front-end разработчиков продолжают свято верить в то, что Redux + Redux Saga + Reselect + 100500 других библиотек «облегча...

[Из песочницы] Google Camera — хайп или замена зеркалки? Все мы знаем про популярное приложение Google Camera (дальше GCam). О нем говорят везде: 4PDA, XDA, на всех официальных форумах о телефонах. Практически каждый владелец устройства пытается найти на свой девайс GCam, потому что их телефоны уже не имеют поддержку производителя...

Функция чата Facebook может вернуться в мобильное приложение Вкратце: помните, когда вы могли общаться с друзьями в основном приложении Facebook, не загружая Messenger? Через пять лет после его исчезновения похоже, что этот вариант может вернуться.Исследователь приложений Джейн Маньчун Вонг, обнаружившая множество функций, протестиров...

[Перевод - recovery mode ] Типичные ошибки при логгировании Привет, Хабр! Я думаю, практически в каждой программе есть логгирование. Более того, в ряде уже неновых приложений (а значит с морем нетривиальных условий) зачастую логи становятся жизненно важными на боевом сервере. Однако, несмотря на всю важность и распространенность подо...

[Из песочницы] SSEGWSW: Server-Sent Events Gateway by Service Workers Привет! Меня зовут Саша и я работаю архитектором в Тинькофф Бизнес. В этой статье хочу рассказать о том, как преодолеть ограничение браузеров на количество открытых долгоживущих HTTP-соединений в рамках одного домена при помощи service worker. Если хотите — смело пропуска...

Famous Four заставят вернуть деньги инвесторам Согласно решению Верховного суда Гибралтара, бывший регистратор доменов в новых gTLD Famous Four Media должен выплатить 1,5 миллиона долларов своим инвесторам - компании Domain Venture Partners.Напомним, чтo Famous Four выбрала невыгодную стратегию развития своих доменных зо...

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

[Перевод] Метрики производительности для исследования невероятно быстрых веб-приложений Есть одно высказывание: «Что ты не можешь измерить, то ты не можешь улучшить». Автор статьи, перевод которой мы сегодня публикуем, работает в компании Superhuman. Он говорит, что эта компания занимается разработкой самого быстрого в мире почтового клиента. Здесь речь пойдёт ...

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

Одна из лучших читалок для iPhone и iPad стала еще лучше Ее уже загрузили тысячи человек. Попробуйте и вы (теперь скачать можно бесплатно!), проходите по этой ссылке, если нет времени читать всю статью. Вообще, мы уже неоднократно рассказывали вам о приложении i2Reader Cloud, которое по мнению нашей редакции является одной из луч...

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

Android-приложения можно запускать на смартфонах на Windows Phone Если в выходные вам нечем заняться, а при этом у вас в ящике завалялся старый смартфон на платформе Windows Phone, можно модифицировать его для запуска Android-приложений. Правда, для этого придётся серьёзно попотеть и обойти стоящие у вас на пути преграды.Два разработчика в...

В Play Store появилось приложение Xiaomi Cleaner Lite для очистки памяти Android-смартфона Оболочка MIUI от Xiaomi является одним из самых популярных скинов для Android-устройств. Как утверждают статистики, на сегодняшний день с ней работают более чем 300 миллионов пользователей по всему миру. MIUI — это «тяжелая» оболочка для Android. Она нацелена на обеспечение ...

Общий объем безналичных операций в 2018 г. превысил 48 трлн рублей Вторым по популярности направлением использования банковских карт по итогам прошлого года стали переводы с карты на карту, опередив операции по получению наличных средств - 14 и 10% всех транзакций соответственно. При этом по объему операций переводы с карты на карту стали а...

[Из песочницы] Python + Raspberry Pi + Pixhawk и квадрокоптер. Или как не надо делать роботов Привет, Хабр! Меня зовут Алексей, уже 7 лет я ведущий разработчик Smart TV-решений в крупной компании из Ижевска, занимающейся заказной разработкой. Каждый год у нас проводится конкурс новогодних украшений, и каждый раз мы ничего не украшаем, а пилим всякие технологичные шт...

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

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

Масштабный проект по очистке океана от пластикового муосора возобновил свою работу Проект Ocean Cleanup в сущности своей крайне перспективен Какое-то время назад мы уже писали вам о довольно масштабном (и в итоге провалившемся) проекте Ocean Cleanup, стартовавшим год назад. Этот проект был призван очистить океан от пластикового мусора. В январе 2019 команд...

[Перевод] Внутри Quake: определение видимых поверхностей Ветеран программирования трёхмерной графики Майкл Абраш на примере разработки первого Quake рассказывает о необходимости творческого мышления в программировании. Много лет назад я работал в теперь уже не существующей компании-производителе видеоадаптеров Video Seven. Там я...

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

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

Делаем свой почти Extended Floating Action Button Всем привет. Не прошло и полгода как работает мое приложение, в котором Floating Action Button меню было реализовано сторонней библиотекой. В какой-то момент захотелось сделать его более приятным и удобным. Было Стало В процессе изменения дизайна я наткнулся на избыт...

Типичные ошибки при работе с PostgreSQL Чуть более месяца назад в Москве состоялась крупнейшая конференция постгресового сообщества PGConf.Russia 2019, собравшая в МГУ свыше 700 человек. Мы решили выложить видео и расшифровку лучших докладов. Выступление Ивана Фролкова с разбором типичных ошибок при работе с Postg...

Карту «Тройка» можно будет добавить в Apple Pay Возможности Apple Pay не ограничиваются только бесконтактной оплатой покупок и денежными переводами через Apple Pay Cash. Благодаря приложению Wallet, в паре с которым работает платежный сервис, пользователи из США и некоторых других стран могут использовать цифровые версии...

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

Samsung Electronics выпускает первый твердотельный накопитель, в котором используется флеш-память V-NAND шестого поколения с более чем 100 слоями Компания Samsung Electronics объявила о начале серийного выпуска твердотельного накопителя объемом 250 ГБ, в котором используется флеш-память V-NAND шестого поколения с более чем 100 слоями (производитель использует обозначение 1xx). В накопителе с интерфейсом SATA испо...

Как приложения попадают в топ App Store Попасть в топ-10 приложений не так-то просто В августе 2019 года App Store исполнилось 11 лет. За этот относительно небольшой промежуток времени, Apple совершила самую настоящую революцию на рынке мобильных приложений. Сейчас фирменный каталог насчитывает сотни тысяч приложе...

Как изменилось приложение «Файлы» в iPadOS Не так давно Apple явила миру новую ОС для планшетных компьютеров — iPadOS. Этот анонс стал полной неожиданностью для многих — мало кто ожидал, что корпорация решится на такие радикальные перемены, отказавшись от привычного наименования. Во время презентации опе...

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

[Из песочницы] Vue.js render-функции и переходы (перевод статьи Hajime Yamasaki Vukelic) Здравствуй, Хабр! Начать свою деятельность решил с перевода на русский статей, который мне самому принесли большую пользу. Надеюсь, вам пригодятся. Отмечу, что я старался переводить литературно, а не дословно. Первым вашему вниманию представляю перевод статьи «Vue.js rende...

5 идей как сделать #ЩедрыйВторник эффективнее для своих крауд-кампаний 3 декабря 2019 года во всем мире пройдет благотворительный флешмоб #ЩедрыйВторник. Краудфандинговая платформа Planeta.ru в четвертый раз присоединится к флешмобу. Рассказываем, как сделать свой #ЩедрыйВторник на «Планете» эффективнее.  «Планета» активно участвует в ...

[Из песочницы] Telegram-bot + Google Analytics Приветствую хабравчане. Хочу рассказать о том, как мы прикручивали Google Analytics к телеграмм-боту, с какими столкнулись проблемами, и что в итоге пока не получилось настроить. По старинке Google Analytics устанавливается на сайт с доменом или в приложение с SDK. Погуглив...

В Play Маркете появилось приложение Xiaomi Cleaner Lite для очистки памяти Android-смартфона Оболочка MIUI от Xiaomi является одним из самых популярных скинов для Android-устройств. Как утверждают статистики, на сегодняшний день с ней работают более чем 300 миллионов пользователей по всему миру. MIUI — это «тяжелая» оболочка для Android. Она нацелена на обеспечение ...

Huawei нашла способ вернуть сервисы Google в свои новые смартфоны Honor 9X — пример того, как можно обойти правила Google Кажется, уже все знают про то, что США наложили на Huawei санкции, запретив ей сотрудничать с американскими предприятиями. Из-за этого китайский производитель лишился возможности устанавливать на свои смартфоны се...

Работали всем миром. Samsung рассказала, как работала над программной частью Galaxy Fold Компания Samsung решила рассказать, как она работала над программным обеспечением для гибкого смартфона Galaxy Fold. Форм-фактор в данном случае обязывает не просто адаптировать интерфейс, а сделать его бесшовным. Для этого, как сообщает корейский гигант, он начал рабо...

Делаем современное веб-приложение с нуля Итак, вы решили сделать новый проект. И проект этот — веб-приложение. Сколько времени уйдёт на создание базового прототипа? Насколько это сложно? Что должен уже со старта уметь современный веб-сайт? В этой статье мы попробуем набросать boilerplate простейшего веб-приложения...

[Перевод] Монорепозитории: пожалуйста не надо От переводчика: Привет, Хабр! Да, это очередная статья о преимуществах и недостатках монорепозиториев. Собирался написать свою статью о том, как мы используем монорепозиторий, как мы переходили с maven на bazel и что из этого получилось. Но пока собирался с мыслями, вышла от...

[Перевод] Асинхронный PHP. Зачем? Асинхронное программирование сегодня востребовано, особенно в веб-разработке, где отзывчивость приложения особенно важна. Никому не хочется ждать, пока приложение «отвиснет», пусть даже в это время оно выполняет запрос к базе данных, отправляет электронное письмо или работ...

[Перевод - recovery mode ] Как правильно обрабатывать ошибки: тишина — не всегда хорошо У меня никогда не было какого-то особого мнения относительно обработки ошибок. Если я начинала работать с существующим кодом, я продолжала выполнять задачу, над которой трудился автор исходника; если писала код с нуля — делала то, что казалось мне правильным. Но недавно...

4 раздражающие проблемы Android и как с ними справиться Делаем Android лучше! Давайте будем честны с самими собой: идеальной мобильной операционной системы не существует. Можно сколь угодно долго спорить о том, что лучше — Android или iOS, но неоспоримый факт всегда будет лишь один — и там, и там, есть раздражающие мо...

Buildbot в примерах Потребовалось мне настроить процесс сборки и доставки на сайт пакетов программ из Git-репозитария. И увидев, ни так давно, тут на Хабре статью по buildbot (ссылка в конце) решил для этого попробовать его и применить. Так как buildbot — это распределённая система, то будет ло...

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

[Перевод - recovery mode ] Популярные расширения Visual Studio Code Code Time Code Time — это плагин с открытым исходным кодом, который предоставляет метрики прямо в редакторе кода. Читать дальше →

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

[Из песочницы] React Native — серебряная пуля для всех проблем? Как мы выбирали кросс-платформенный инструмент для Profi.ru Всем привет, меня зовут Геворг. Я Head of Mobile в Profi.ru. Хочу поделиться с вами историей нашего эксперимента с React Native. Расскажу, как мы оценивали плюсы и минусы разработки на React Native — в теории и на практике. Статья будет полезна тем, кто интересуется кросс-пл...

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

Как я создавал Recycle! VR В предыдущей статье мы попробовали создать базовую сцену в A-Frame, чтобы опробовать основные концепции фреймворка на практике. В этой статье я хотел бы поделится своим опытом создания игры на A-Frame — Recycle! VR. Репозиторий проекта доступен по следующей ссылке. Перера...

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

Safari для macOS научился затемнять содержимое веб-страниц macOS 10.14.4, чей релиз состоялся вечером 25 марта, является обновлением третьего порядка, но, тем не менее, включает в себя ряд значимых функций, прежде недоступных на компьютерах Apple. Одним из нововведений стала поддержка полноценного ночного режима в Safari. Благодаря...

[Перевод] Google Play Store переходит на стандартизацию значков приложений Google объявил, что разработчики приложений, отправляющие свои приложения в Google Play Store, должны будут соответствовать определенным спецификациям, когда дело доходит до дизайна значка их приложения. Спецификация вынудит разработчиков обновлять «магазинный» значок своего...

[Перевод] Не потерял ли GraphQL актуальности в эпоху HTTP/2? Недавно Фил Стерджен опубликовал твит, который сильно задел любителей GraphQL. В этом твите речь шла о том, что GraphQL — это, по определению, технология, которая противоречит сущности HTTP/2. О том, что уже вышел стандарт HTTP/3, и о том, что автор твита не очень понимает т...

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

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

Логи не нужны? Разработка сильно изменилась за последние годы. Вместо монолитных приложений пришли микросервисы и функции. Базы данных из универсальных промышленных монстров переродились в узконаправленные. Docker изменил взгляд на деплой. Но изменилось ли наше представление о логах? Одна...

Как обновить Wear OS на ваших смарт-часах Google официально переименовали свою операционную систему Android Wear в более лаконичную Wear OS еще в начале 2018 года, и с тех пор было выпущено немало обновлений, приносящих все больше возможностей для носимых устройств. Однако многие пользователи оставляют свои смарт-ч...

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

Оптимизация сборки мусора в высоконагруженном .NET сервисе Ежедневно в сервисе Pyrus работают десятки тысяч сотрудников из нескольких тысяч организаций по всему миру. Отзывчивость сервиса (скорость обработки запросов) мы считаем важным конкурентным преимуществом, так как она напрямую влияет на впечатление пользователей. Ключевой мет...

gui приложение для задачи о ходе коня Это туториал по созданию интерактивного приложения для решения задачи о ходе коня на языках processing и p5.js Посмотреть саму программу можно здесь. Для управления «конём» используется метод mouseDragged(); пример программы, использующей этот метод здесь. Отмена хода осуще...

Что мы ждём от macOS 10.15 Считанные дни остаются до всемирной конференции разработчиков WWDC. Совсем скоро топ-менеджеры Apple представят со сцены новые версии операционных систем. Несмотря на множество слухов и утечек, мы по-прежнему не знаем наверняка, что именно подготовила компания. Будем надеят...

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

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

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

Huawei отвечает на вопросы. Прочность складного смартфона Mate X и поддержка приложений Президент мобильного подразделения Huawei Хи Гэнг (He Gang) провёл сессию ответов на вопросы относительно нового складного смартфона Huawei Mate X с гибким экраном.  Хи Гэнг ответил на вопрос относительно прочности смартфона, сколько он может выдержать циклов скла...

Работа «не в стол»: какие проекты по-настоящему зажглись после преакселерации? 22 ноября в Мастерской управления «Сенеж» жюри и эксперты вынесли окончательный вердикт командам, которые на протяжении двух месяцев прокачивали проекты в рамках преакселерационной программы. Спали мало, работали много — но так бывает всегда, когда В этом посте мы подведем...

Лучшие приложения для дизайна и благоустройства дома на Андроид Благоустройство и дизайн дома – задача серьёзная, которая может потребовать от вас немало времени и средств. Ваш смартфон не может сделать всю работу за вас, но может помочь, облегчив процесс. Лучшие приложения для дизайна и благоустройства дома для Android-смартфонов: Buil...

Новая сборка Windows 10 обеспечивает автоматический перезапуск для UWP-приложений Microsoft выпустила сборку Windows 10 Build 18990 для инсайдеров Windows в канале Fast Ring, предоставив поддержку автоматического перезапуска для приложений UWP.Начиная со сборки 18965 пользователям Windows 10 предоставляется специальная опция в приложении «Параметры» для а...

Как развернуть SAP HANA: разбираем разные методы SAP HANA — популярная in-memory СУБД, включающая сервисы хранилищ (Data Warehouse) и аналитики, встроенное промежуточное ПО, сервер приложений, платформу для настройки или разработки новых утилит. За счет устранения задержек традиционных СУБД с SAP HANA можно сильно увеличит...

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

[Перевод] Миграция с Nginx на Envoy Proxy Привет, Хабр! Предлагаю вашему вниманию перевод поста: Миграция с Nginx на Envoy Proxy. Envoy — это высокопроизводительный распределенный прокси-сервер (написанный на C++), предназначенный для отдельных сервисов и приложений, также это коммуникационная шина и «universal data...

Из-за тёмной темы Thunderbird пришлось запускать анализатор кода «Приключение» с почтовым клиентом Mozilla Thunderbird началось с автоматического обновления на версию 68.0. Заметными особенностями этой версии было вот что: больше текста добавляется во всплывающие уведомления и тёмная тема по умолчанию. Повстречалась ошибка, которую захоте...

Лучшие приложения для просмотра видео на Android Смотреть видео на гаджете под управлением Android просто и приятно Если вы пользовались мобильным телефоном в начале-середине 2000-х годов, то наверняка должны помнить, что раньше единственным вариантом посмотреть видео на телефоне (о смартфонах тогда не было и речи) было пе...

Иструменты Node.js разработчика. Очереди заданий (job queue) При реализации бэка веб-приложений и мобильных приложений, даже самых простых, уже стало привычным использование таких инструментов как: базы данных, почтовый (smtp) сервер, redis-сервер. Набор используемых инструментов постоянно расширяется. Например, очереди сообщений, суд...

Windows Core OS будет поддерживать Win32-приложения Microsoft разрабатывает Windows Core OS – новую версию операционной системы Windows без использования Win32-кода. Предполагалось, что запуск Win32-программ будет возможен только при помощи эмуляции или облака, но по последней информации стало известно, что Microsoft работает...

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

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

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

Разворачиваем автоматизацию за пару часов: TypeScript, Protractor, Jasmine Привет, Хабр! Меня зовут Виталий Котов, я довольно много занимаюсь автоматизацией тестирования и мне это нравится. Недавно я участвовал в проекте по настройке автоматизации «с нуля» на стеке TypeScript + Protractor + Jasmine. Для меня этот стек был новым и необходимую инфор...

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

Как построить SDN — восемь инструментов с открытым исходным кодом Сегодня мы подготовили для наших читателей подборку SDN-контроллеров, которые активно поддерживают пользователи GitHub и крупные опенсорсные фонды вроде Linux Foundation. Читать дальше →

Поддержка monorep и multirep в werf и при чём здесь Docker Registry Тема монорепозитория обсуждалась уже не раз и, как правило, вызывает весьма активные споры. Создавая werf как Open Source-инструмент, призванный улучшить процессы сборки кода приложений из Git в Docker-образы (и их последующей доставки в Kubernetes), мы мало размышляем на ...

В Москве пройдет мейкатон для социальных проектов 2 и 3 марта 2019 года в «Благосфере» пройдет мейкатон Американского центра. В нем могут участвовать представители некоммерческих организаций и it-специалисты из Москвы, Санкт-Петербурга, Нижнего Новгорода, Казани, Томска и Екатеринбурга. Заявку можно подать до 20 февраля 201...

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

В VLC Media Player обнаружили критическую уязвимость Специалисты из команды CERT-Bund, правительственной группы реагирования на компьютерные инциденты в Германии, обнаружили критическую уязвимость в популярном кроссплатформенном медиапроигрывателе VLC Media Player. Злоумышленники могут воспользоваться ею для удаленного выполне...

[Из песочницы] Современное программирование: взгляд после 25 лет перерыва или как я писал бота для Телеграм Задача кажется простой, когда ничего про нее не знаешь и когда решил. В один “прекрасный” день, я понял, что мне не интересно сидеть на многочисленных форумах, а хочется создать свой канал и делиться “мудростью”. Мне нравится Телеграм заложенными в него возможностями в то...

Red Hat OpenShift 4.2 делает шаг навстречу разработчикам Kubernetes-приложений Компания Red Hat, поставщик решений с открытым исходным кодом, анонсировала Red Hat OpenShift 4.2, новейшую версию своей Kubernetes-платформы корпоративного класса, уделив в ней особое внимание разработчикам приложений. Решение продолжает курс ...

[Перевод] Руководство по Docker Compose для начинающих Автор статьи, перевод которой мы сегодня публикуем, говорит, что она предназначена для тех разработчиков, которые хотят изучить Docker Compose и идут к тому, чтобы создать своё первое клиент-серверное приложение с использованием Docker. Предполагается, что читатель этого мат...

Анонс Windows 10 Insider Preview Build 19025 (Ранний доступ) Добрый вечер, друзья! Компания Microsoft выпустила новую предварительную сборку Windows 10 20H1 под номером 19025 для участников программы Windows Insider, использующих каналы Fast и Skip Ahead. Полный номер сборки: 19025.1.vb_release.191112-1414. Как можно заметить, сборка...

[Перевод] Ожидаемые новые возможности JavaScript, о которых полезно знать С момента выхода стандарта ECMAScript 2015 (его ещё называют ES6) JavaScript серьёзно изменился и улучшился. Это очень хорошая новость для всех JS-разработчиков. Более того, теперь новая версия ECMAScript выходит каждый год. Возможно, вы не обратили особого внимания на то, ч...

[Перевод] Рассказ о решении проблемы с производительностью Moment.js Moment.js — это одна из самых популярных JavaScript-библиотек для разбора и форматирования дат. В компании WhereTo используют Node.js, поэтому для них применение этой библиотеки было совершенно естественным ходом. Проблем с серверным использованием Moment.js не ожидалось. В ...

Привет из 2014 и 2015 годов. Пользователи четырёх- и пятилетних смартфонов Xiaomi, Sony и HTC тоже могут опробовать Android 10 С момента выпуска операционной системы Android 10 3 сентября лишь избранные модели смартфонов успели получить официальные обновления — серия Google Pixel series, Essential Phone PH-1, Redmi K20 Pro, OnePlus 7 и OnePlus 7 Pro.  Однако благодаря сообществу энт...

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

Как заставить любые Android-приложения работать в режиме разделенного экрана Режим разделения экрана можно использовать даже в программах, которые его не поддерживают Еще несколько лет назад с выходом новой версии Зеленого Робота Android Nougat, Google добавили в свою мобильную операционную систему возможность запуска сразу двух приложений одновремен...

[Перевод] Node.js: управление памятью, доступной приложениям, выполняемым в контейнерах При запуске Node.js-приложений в контейнерах Docker традиционные настройки памяти не всегда работают так, как ожидается. Материал, перевод которого мы сегодня публикуем, посвящён поиску ответа на вопрос о том, почему это так. Здесь же будут приведены практические рекомендаци...

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

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

Как использовать режим разделенного экрана на Android Уже довольно давно (задолго до iOS) операционная система Android предоставила своим пользователям возможность использовать режим разделенного экрана для запуска нескольких приложений в соседних окнах. Это очень удобно как для работы, когда можно без переключения между прогр...

Как обновить смартфоны Huawei на Android 10 Huawei выпустила Android 10 для десяти своих смартфонов, но установить их можно только по-хитрому Несмотря на то что этой весной США наложили на Huawei санкции и запретили ей использовать наработки американских предприятий в своих смартфонах, только два аппарата из почти цел...

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

[Из песочницы] GridmiAPI — простая и гибкая библиотека Android для работы с REST&RPC Здравствуйте, хабровчане! Когда занимаешься разработкой сетевых приложений под платформу Android, понимаешь, что одно и другое приложение похоже друг на друга. С этой мыслью у большинства разработчиков инициализируется и другая мысль — «Почему бы мне не использовать какие-л...

Из Groovy ушёл Cédric Champeau‏ В проекте Apache Groovy перестаёт участвовать один из ключевых участников сообщества, само имя которого у многих ассоциировалось с этим языком. Уходит Седрик Шампо, известный в первую очередь как автор статического компилятора Groovy. Если рассмотреть причины ухода в том ...

Apple работает над новыми программными и аппаратными средствами для поиска своих устройств в случае их потери или кражи Ресурс 9to5Mac, ссылаясь на анонимные источники, сообщил о планах Apple заменить приложения «Найти iPhone» и «Найти друзей» новым приложением с кодовым названием GreenTorch, которое в данный момент активно разрабатывается компанией. Новое универсальное приложение создаётся в...

[Перевод] Введение в детерминированные сборки на С/С++. Часть 1 Перевод статьи подготовлен специально для студентов курса «Разработчик С++». Что такое детерминированная сборка? Детерминированная сборка — это процесс сборки одного и того же исходного кода с одной и той же средой и инструкциями сборки, при котором создаются одни и те же...

Как устроен процесс проверки приложений в App Store Магазин приложений App Store был представлен в далёком 2008 году.  Тогда мало кто себе представлял, что этот амбициозный проект станет настолько успешным и популярным. Сейчас App Store насчитывает сотни тысяч программ и игр, многие из которых — бесплатные. Примечатель...

Эти приложения крадут ваши данные. Срочно удалите их! Уже не первый раз в магазин приложений от Google попадают программы, которые наносят вред вашему смартфону и могут выкрасть конфиденциальную информацию. Вот и недавно исследователи из Digital Security обнаружили ранее неизвестный тип рекламного вредоносного ПО в более, чем ...

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

Стратегия продукта и стратегия организации — как они связаны между собой Иван Подобед, Director of Game Platform в Awem, рассказал о стратегии с точки зрения системной инженерии. Будет полезно всем, кто хочет разобраться в базовых понятиях построения стратегии продукта и организации. Я часто сталкивался с понятием «стратегия» во время карьеры ар...

Бесшовная (почти) миграция между мажорными релизами PostgreSQL с помощью логической репликации У нас в True Engineering на одном проекте назрела необходимость в смене версии PostgreSQL с 9.6 на 11.1. Зачем? База данных на проекте уже объемом 1,5 Tb и растет. Перформанс – одно из основных требований к системе. А сама структура данных эволюционирует: добавляются новые...

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

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

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

Design на CodeFest. Но это не точно Каждый год мы начинаем обсуждение программы CodeFest с вопроса, будет ли дизайн-секция в этом году? Будет, но это не точно. И каждый год мы заканчиваем CodeFest словами: «Классно, что всё-таки сделали дизайн-секцию — на неё столько менеджеров пришло!» Дело в том, что мы ...

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

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

Портирование WPF приложений на netcore 3.0 Ожидаемый релиз netcore 3.0 позволяет запускать wpf на netcore. Процедура перевода для одного несложного проекта занимает один-два дня. Каждый последующий — много быстрее. Читать дальше →

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

SSD Samsung PM1733: скорость чтения 8,0 ГБ/с, производительность 1 500 000 IOPS, объем — до 30,72 ТБ Компания Samsung на днях рассказала о твердотельном накопителе PM1733 с поддержкой PCIe Gen 4. По словам производителя, этим SSD он поддерживает выпуск процессоров AMD EPYC второго поколения. Новый накопитель по пропускной способности вдвое превосходит модели с интерфе...

Google Переводчик на Android получает одну из важнейших функций Google Lens Несмотря на отсутствие успеха со слишком инновационным в свое время продуктом Google Glass, Google твердо верит, что дополненная реальность будет доминировать в будущем таких ее сервисов, как Поиск и Карты. Естественно, приложение Google Lens также не обошли стороной во вре...

Система управления проектами по модели Open Core в госсекторе Продолжаем рассказывать вам об опенсорсных продуктам реализованных на JS фреймворке — IONDV. Framework. Сегодня поговорим о системе управления проектами, которая была одним из наших первых масштабных проектов и которую изначально мы реализовали для правительства Хабаровского...

[Из песочницы] Идея, как можно предоставлять сотрудникам временный доступ к ресурсам клиента, не светя лишний раз пароли Небольшая предыстория После лекции на HighLoad++ 2017. Я посмотрел этот доклад, “Как мы админа увольняли”, в записи. Докладчик сказал, что все web компании испытывает проблемы с паролями, и у меня появилась идея как это решить. Скорее всего кто-то уже сделал, но, если честно...

Приложение AirSynth превращает iPhone с Face ID в терменвокс Несмотря на то, что компания Apple выпустила свой первый смартфон с Face ID уже достаточно давно, сторонние разработчики редко строят свои приложения вокруг этого сканера. Однако интересные проекты время от времени все же выходят. Например, недавно Дэйв Вуд представил AirSyn...

Apple отключила одну из функций Apple Watch. Она позволяла подслушивать пользователей Случаев, когда Apple отключала какую-то функцию в своих устройствах уже после ее релиза, можно пересчитать по пальцам одной руки. Из наиболее известных на ум приходят два примера. Так, в 2013 году компания убрала из финальной бета-сборки iOS 7 поддержку iCloud Keychain, пот...

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

[Из песочницы] Cookie-баннеры: как быстро проверить соблюдение GDPR Недавно был опубликован обзор опенсорсной утилиты, которая помогает проверить cookies сайта на соответствие GDPR. Прочитав и в который раз озадачившись необходимостью установки на своих проектах cookie-баннера для европейских посетителей, взялся изучить вопрос cookies и GDP...

[Перевод] Очень математическая история идеального сочетания цветов Захари Бир создаёт рисунки, используя цветовую палитру от цветовой схемы для Мака Solarized и собственную программу для генерации изображений Geometriq. Пару лет назад я влюбился в цветовую палитру: цвет, чуть темнее белого, выделяемый жёлто-оранжевым и нейтральным голубым...

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

Как решать NP-трудные задачи с помощью параметризованных алгоритмов Научно-исследовательская работа, пожалуй, самая интересная часть нашего обучения. Идея в том, чтобы ещё в университете попробовать себя в выбранном направлении. Например, студенты с направлений Software Engineering и Machine Learning часто идут делать НИРы в компании (в осно...

Новый фонд для DevOps-проектов от Linux Foundation начался с Jenkins и Spinnaker На прошлой неделе организация The Linux Foundation во время своего мероприятия Open Source Leadership Summit объявила о создании нового фонда для Open Source-проектов. Очередной независимый институт по развитию открытых [и востребованных в индустрии] технологий призван объ...

Государство занялось БигДата В середине января на заседании рабочей группы по архитектуре государственных систем и режиму оборота данных одобрили черновой проект концепции Национальной системы управления данными (НСУД). Всего было подготовлено несколько таких документов разными ведомствами, однако наибо...

[Перевод] Python — помощник в поиске недорогих авиабилетов для тех, кто любит путешествовать Автор статьи, перевод которой мы публикуем сегодня, говорит, что её цель — рассказать о разработке веб-скрапера на Python с использованием Selenium, который выполняет поиск цен на авиабилеты. При поиске билетов используются гибкие даты (+- 3 дня относительно указанных дат). ...

Обнаружена утечка документов через приложение для конвертации файлов Бесплатное приложение PDF to Word, как следует из названия, предназначено для конвертации PDF-документов в формат файлов Microsoft Word, позволяющий редактировать текст.Как установил специалист ESET Лукас Стефанко, все исходные документы передавались и сохранялись на FTP-сер...

Почта России переходит на электронный документооборот В результате внедрения ЕСЭД на базе 1С:Документооборота на всех уровнях организационной структуры удалось сократить бумажный документооборот на 35%, снизить трудозатраты по обработке документов на 10%, время исполнения запросов по подбору документов на 50%, значительно сокр...

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

WebRTC,stereopi: telepresense по-домашнему Для начала ролик с youtube для вдохновения: Предупреждение: проект на видео — лишь образец, который можно сделать по туториалу в статье в части стереозрения и «поворотов головой». Танки с пультами xbox не прилагаются. Не смотря на наглядность, скудный рассказ самого авт...

Visual Studio 2019 — свидетельство отсутствия амбиций Microsoft на рынке мобильных ОС Visual Studio 2019 выйдет в апреле этого года, и одним из важных моментов является улучшенная поддержка приложений UWP, на которые Microsoft продолжает делать большую ставки в рамках продвижения Windows 10. Естественно, приложения UWP разработаны с целью поддержки н...

[Из песочницы] Решение проблемы с переключением по alt+shift в Linux, в приложениях на Electron Здравствуйте, коллеги! Хочу поделиться поделиться своим решением проблемы, которая указана в заголовке. Написанием статьи вдохновился от коллеги brnovk, который не поленился и предложил частичное (для меня) решение проблемы. Я сделал свой «костыль», который помог мне. Делюс...

Зрелая исполняемая среда для контейнеров: containerd стал «выпускником» CNCF За проектом containerd мы следим с самого его начала. Посему не можем обойти вниманием значимое событие: минувшей ночью организация CNCF, стоящая за Kubernetes и другими выдающимися Open Source-решениями для мира cloud native, объявила containerd своим «выпускником». Этот пр...

[Перевод] Пишем чистый и масштабируемый JavaScript-код: 12 советов Язык JavaScript родом из раннего веба. Сначала на нём писали простые скрипты, которые «оживляли» страницы сайтов. Теперь же JS превратился в полноценный язык программирования, который можно использовать даже для разработки серверных проектов. Современные веб-приложения силь...

Почему я перешел из UX в PM'а и потом в Lead PM'а и что изменилось? — Привет, Саша. Расскажи, пожалуйста, как долго ты работаешь в Wrike, и чем ты занимался до прихода в компанию? — Привет. В Wrike работаю шесть лет. До этого работал в другой организации и занимался там сначала search engine optimization и потом перешел в проджект-менеджеры....

Tesla бьет рекорды. Их покупают больше, чем Chrysler, Land Rover, Volvo и многих других Несмотря на не самое удачное начало года, а также прогнозы аналитиков, американский производитель электромобилей Tesla смог превзойти все ожидания. Даже свои собственные. Компания Илона Маска отчиталась о последних данных продаж, в которых говорится о том, в мире за второй ...

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

[Перевод] Проект «Прометей»: поиск пожаров с помощью ИИ Перевод Project Prometheus — An AI-powered fire finding solution Мы с коллегами работаем в проекте Prometheus («Прометей») — это решение для раннего обнаружения пожаров, в котором объединены ИИ, компьютерное зрение, автоматические дроны и сервисы прогноза погоды. Этот ком...

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

[Перевод] Пример создания Makefile для Go-приложений В этом руководстве мы рассмотрим, как разработчик Go может использовать Makefile при разработке собственных приложений. Что такое Makefile-ы? Makefile — невероятно полезный инструмент автоматизации, который можно использовать для запуска и сборки приложений не только на G...

Big Data для ТВ-аналитики "ТВ - Аналитика" позволяет определить каналы и передачи, которые смотрит целевая аудитория; предложить оптимальное время и канал присутствия целевой аудитории; проанализировать эффективность прошедшей рекламной кампании.Обезличенные данные собираются по абонентско...

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

Специалисты нашли 36 новых уязвимостей в протоколе 4G LTE Каждый раз переход на всё более новый стандарт сотовой связи означает не только повышение скорости обмена данными, но также позволяет сделать связь более надёжной и защищённой от несанкционированного доступа. Для этого берутся найденные в предыдущих протоколах уязвимости, та...

Разработчик рассказал об опасности шорткатов для iOS Скрипты для приложения Shortcuts, русскоязычным пользователям более известного под названием «Команды», могут содержать в себе вредоносные компоненты. Об этом сообщил разработчик сервиса Codea – twolivesleft. Ему удалось выяснить, что один такой скрипт, якобы предназначенны...

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

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

Исследователь нашел в сети исходный код Boeing 787 и выявил в нем ряд проблем Сотрудник компании IOActive рассказал на конференции Black Hat, что ему удалось обнаружить в сети исходные коды Boeing 787 Dreamliner и найти в них ряд уязвимостей.

[Из песочницы] Забота о себе во время написания кода Привет, Хабр! Представляю Вашему вниманию перевод статьи «Developer health — taking care of yourself as you code» автора Christopher Kad. Недавно мне поставили диагноз «тендинит», и, конечно, в этом нет ничего особенного, и его можно вылечить, но я понял, что не слишком хор...

[Из песочницы] Как хакеры используют Microsoft Excel против самого себя Привет, Хабр! представляю вашему вниманию перевод статьи «How Hackers Turn Microsoft Excel's Own Features Against It» автора Лили Хэй Ньюман. Elena Lacey, getty images Наверняка для многих из нас Microsoft Excel – программа скучная. Она много чего умеет, но всё-таки это н...

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