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

Ракета на палочке Всем привет! Меня зовут Илья!Если вы читали мою прошлую статью, то наверное уже знаете что я увлекаюсь любительским ракетостроением. Это сложная и долгая тема. Давайте сейчас не будем строить большую ракету, а в этой статье давайте поговорим о чём-нибудь попроще. Ну, наприме...

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

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

Flutter for Desktop — новый подход к разработке приложений Язык программирования Dart был изначально разработан как перспективная замена JavaScript в веб-приложениях (с поддержкой асинхронности, потоков, классической поддержки ООП и возможностью использования строгой типизации), но, к сожалению, в этом качестве он так и не достиг зн...

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

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

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

Shared State для React. Часть 1 В данном цикле статей мы рассмотрим задачу синхронизации состояния react-приложения между окнами. В качестве подопытного у нас будет приложение на Electron, работающее в offline/online-режимах, которое также может запускаться в PWA-режиме. Читать далее

Создание внутреннего мобильного приложения «На связи»: от идеи до визуального решения Меня зовут Лена, я дизайнер интерфейсов в Tele2. И я расскажу о создании внутреннего корпоративного мобильного приложения «На связи» для сотрудников Tele2 – его проектировании и выборе визуального решения. Пройдусь по основным этапам работы над digital-продуктом с точки...

Повышаем эффективность работы с Word В данной статье собраны основные операции и алгоритмы работы, позволяющие повысить эффективность разработки документации в редакторе Microsoft Word как индивидуально, так и при командной работе. Не рассматриваются подходы с использованием Markdown, Pandoc, Asciidoc и Conflue...

[Перевод] Лучшие книги по Apache Kafka «Effective Kafka: A Hands-on Guide to Building Robust and Scalable Event-Driven Applications», «Kafka: The Definitive Guide» и другие издания.В этой статье я расскажу, как изучал Apache Kafka и с какими трудностями столкнулся. Я очень надеюсь, что мои наблюдения помогут тем,...

WinAPI из C# Язык программирования C# был создан как язык, который можно использовать для простого программирования в ОС Windows. Позже этот язык получил возможность создавать приложения и на других операционных системах, но в этой статье мы будем говорить только об ОС Windows.Для работы...

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

Большая подборка каналов для продакт менеджеров В последние пару месяцев постоянно слышу от продактов, что они не знают кого почитать по продакт менеджменту, где черпать практическую и актуальную информацию. Большая подборка полезных telegram-каналов и чатов для product managers, project managers и product owners. Здесь т...

Конкурентный анализ приложений из App Store на основе открытых данных В этой статье я покажу, как можно без программирования парсить, анализировать и визуализировать данные из RSS- и Atom-лент на примере загрузки и парсинга фида Apple iTunes, а также проведения последующего конкурентного анализа приложений. Представим, что мы собираемся публик...

Игровой код, который сам себя программирует На сегодняшний день у меня выпущены четыре игры в Steam, и все они написаны на языке Haxe. Мне нравится по-максимуму автоматизировать свою работу, и сегодня я поделюсь некоторыми приёмами, которые я использую при программировании своих игр.Для непосвящённых: Haxe — это язык...

Как сделать красивый вывод текста на C# Прошлый пост на счет сердечка посмотрело много людей и у меня возникла идея сделать еще одну простенькую, но достаточно красивую штуку, а именно такой вот вывод текста(можно сказать анимированного, но язык не поворачивается). Данный пост подходит для новичков, можно потренир...

Kincony KC868-A8: старший брат из Ханчжоу. Часть 2. Программируем A8 В прошлой статье мы познакомились с контроллером Kincony KC868-A8 и его схемотехникой, в этой статье мы разберём программирование его функциональных блоков (входов, реле, температурных датчиков, Ethernet интерфейса и т. д.). Примеры кода из этой статьи вы сможете использов...

Князь Вялых Проектов Этот текст – заказной. Знаю, многие из читателей пытались заказать у меня тексты, но я если и пишу для кого-то, то только для друзей. Нетрудно догадаться, что заказчик – мой друг. Зовут его… Пусть Вася. Он так и не решил, называться ли настоящим именем. Потому что так и не р...

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

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

Разворачиваем Golang приложение в Kubernetes В этой статье я хочу поделиться примером, как можно развернуть простое приложение на Golang в Kubernetes, с помощью helm чартов и skaffold скриптов. Думаю, данная статья может быть полезной тем разработчикам, которые только знакомятся с Kubernetes, а возможно и более опытным...

Старик Дарвин был прав? Языки программирования и «Происхождение видов» Однажды мы с коллегами задумались вот о чём. Существует хронология языков программирования – список дат «с начала времён». Понятное дело, что каждый из них появился под влиянием собственных условий и для выполнения конкретных задач. Но ведь между языками есть тесные связи, и...

Как за час построить CI/CD для высоконагруженного проекта в облаке SberCloud.Advanced Привет, Хабр! Меня зовут Кирилл Шеховцов, и я технический лидер в SberCloud. Сегодня расскажу, как быстро интегрировать пайплайн Continuous Integration/Continuous Delivery (CI/CD) и продуктовый подход к проектированию приложений в облаке SberCloud.Advanced. Эта обзорная стат...

Пример использования WebAssembly-модуля, скомпилированного из Rust, в React-приложении Привет, друзья! На днях прочитал интересную статью, в которой демонстрируется возможность использования WebAssembly-модулей (далее — Wasm), скомпилированных из Rust, в React-приложении. Так вот, статья интересная, но автор толком ничего не объясняет, видимо, исходя из пред...

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

Kincony KC868-A4: ультимативный гайд. Часть 3: управление контроллером через Telegram-бота В предыдущей статье цикла о Kincony KC868-A4 было рассмотрено «атомарное» программирование компонентов этого контроллера, в этой статье будем разбирать более продвинутый пример работы с KC868-A4 — управление вашей (IoT) системой через интернет. Способов управления контрол...

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

Кроссплатформенный путь мобильного тестировщика или как стать Flutter QA Привет, Хабр! В этой статье расскажу, в чём особенности тестирования приложения на Flutter под iOS и Android и чем оно отличается от тестирования нативного приложения. Читать далее

Мониторинг веб-приложения на Rust с использованием Prometheus и Grafana В статье будет показано как настроить мониторинг веб-приложения на Rust. Приложение будет выставлять наружу Prometheus метрики, которые будут визуализированы с помощью Grafana. Мониторинг осуществляется для приложения mongodb-redis demo, детально рассмотренного здесь. В итог...

Как составить личный финансовый план на 2022 год. Часть 1 Речь в статье пойдет не только о финансовом планировании, а скорее здесь будут описаны мои злоключения, в результате которых и родился мой будущий финансовый план на следующий год. А, ну еще и о том, как я смог заработать лишнюю 13 зарплату по факту ничего не делая.Если вы ч...

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

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

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

Kubernetes и другие оркестраторы Привет! Меня зовут Леонид, я DevOps-инженер в компании KTS. В этой статье я рассмотрю различные оркестраторы и объясню, почему Kubernetes — лучший выбор.Нашей компании уже 6 лет, и 4 из них мы живем с Kubernetes. До этого мы испытали все варианты деплоя приложений на се...

Angular Libs как монорепозиторий 2: tree shaking и сборка клонов Всем привет! В прошлом посте мы с вами разобрали механизмы создания библиотек с помощью Angular libs, а также научились настраивать их работу в приложении и друг с другом и даже вынесли наши ассеты в одну из таких библиотек.В этом посте хочу продолжить тему разделения функци...

От LiveData к Flow… Мы Дима и Настя, Android-разработчики в компании СберЗдоровье. В этой статье мы хотим рассказать о том, как мы перевели весь наш проект с LiveData на Flow, с какими трудностями столкнулись и что полезного узнали. Эта статья будет полезна тем, кто работает с LiveData, уже про...

Использование AsciiDoc для управления документацией на проекте (Часть 2) Продолжение статьи об использовании подхода документация как код Читать далее

Деплоим приложение на Django в Kubernetes с нуля Нашей компании уже 6 лет, и 4 из них мы живем с Kubernetes. До этого мы испытали все варианты деплоя приложений на серверах: начиная от простого git pull до ci/cd на нескольких серверах.Сегодня мы на практике разберем, что нужно делать, чтобы ваше приложение оказалось в Инте...

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

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

Первые шаги с werf: собираем и деплоим простое приложение в Kubernetes В этой статье мы рассмотрим, как с помощью Open Source-утилиты werf собрать Docker-образ простого приложения и развернуть его в кластере Kubernetes, а также с легкостью накатывать изменения в его коде и инфраструктуре.Мы поговорим об общих принципах работы с werf при использ...

Замена Mackbook Pro 15 (mid 15) в 2021 В 2018 году я купил macbook pro 15. Это был мой первый мак, до этого я о нём только слышал: "Качество!", "Дец, какой дорогой, но крутой!" и т.д. И вот однажды, мне на почту приходит письмо от одного красного ритейлера на букву "М", что они продают остатки предыдущего поколен...

Новое слово в расчётах систем видеоконференцсвязи — часть №2: расчёт диагонали ТВ и VR-визуализация 360˚ В прошлой статье Часть №1: подбираем видеокамеру, используя 3D-моделирование мы показали удобные современные инструменты для подбора оптимальной камеры для переговорной комнаты или конференц-зала.Этому проекту посвящается цикл статей:Часть 1: Подбираем видеокамеру, используя...

Использование Jetpack Compose в продакшне: первые впечатления Мы в МТС Банке давно ждали релиза Jetpack Compose, чтобы использовать его в продакшне. В прошлом месяце такая возможность наконец появилась — мы решили обновить дизайн одного из экранов нашего приложения «МТС Банк для бизнеса» для Android. В статье я хотел бы поделиться н...

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

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

PascalABC.NET, повторная проверка Приветствуем всех любителей чистого кода. Сегодня у нас на разборе проект PascalABC.NET. Ранее мы уже искали ошибки в этом проекте при помощи сразу двух инструментов статического анализа, а именно плагинов для SonarQube: SonarC# и PVS-Studio. Этому была посвящена статья в да...

Bitrix и Kafka: настраиваем интеграцию с брокером очередей Привет! Меня зовут Саша Шутай, я тимлид в AGIMA. В прошлой статье я рассказывал, что делать, если на проекте Bitrix сожительствует с Vue.js и поисковые боты не видят контента сайта. А в этой помогу разобраться, как на Bitrix-проекте произвести интеграцию с брокером очередей ...

Запуск werf в GitLab CI/CD без Docker-сервера В этой статье рассмотрен новый экспериментальный режим работы werf — Open Source-утилиты для сборки приложений и их деплоя в Kubernetes, — в котором не требуется наличие Docker-сервера. Мы покажем, как убедиться, что это режим будет работать на вашей машине, соберем первый о...

Большому художнику – большой критик: новые версии модели ruCLIP для ранжирования результатов ruDALL-E (и не только) В ​2021 году особенно активно развивались языковые и визуальные трансформеры, что привело к появлению новых разработок в сфере мультимодального анализа данных. Ярким примером стала модель синтеза изображений по текстовым описаниям DALL-E от OpenAI. Команды Сбера - Sber AI и ...

Запись разговоров на мобильных Тут на МВидео выложили статью про 10 лучших приложений для записи звонков на смартфонах, а на 4pda выложили статью, что Гугл совсем запрещает запись звонков на Андроиде. Тема мне близка, т.к. недавно занимался разработкой приложения для записи звонков и все вышло не так как ...

Как посмотреть заряд AirPods Одна из отличительных черт AirPods (как и любых других беспроводных наушников) — это внезапно разрядившийся аккумулятор. Обратил внимание, что многие владельцы наушников Apple перестали проверять заряд аккумуляторов AirPods при подключении, хотя раньше многие с нетерп...

Уроки компьютерного зрения на Python + OpenCV с самых азов. Часть 6 На прошлом уроке мы научились превращать набор особых точек, найденных специальным детектором особых точек, в граф. Там же я объяснил, зачем это вообще надо. Сегодня мы будем изучать такую область науки о компьютерном зрении, как нахождение областей интереса на изображении. ...

Использование ASCIIDoc для управления документацией на проекте (Часть 1) О важности документации на проекте знают все, начиная от технических заданий на реализацию заканчивая пользовательской документацией. Про важность документации и необходимости документировать написано множество статей. Здесь мы расскажем о том как упростить команде жизнь исп...

Создаем и тестируем свой plugin для Gradle 7.0+ Система сборки проектов Gradle стала значительной вехой в эволюции инструментов подготовки артефактов и заменила во многих проектах ранее популярный Maven (который ранее стал заменой для make и ant). Де-факто Gradle является стандартом для сборки проектов для Android, но в д...

5 отличных аналогов Shazam для iPhone Не так давно Apple интегрировала Shazam в iOS: теперь вы можете запускать распознавание музыки прямо из Пункта управления, что намного удобнее, чем искать значок приложения. К сожалению, но Shazam не идеален: в последнее время я часто сталкиваюсь с тем, что он ошибается. Пр...

Как большинство Java проектов выглядят изнутри Меня зовут Аксёнов Вячеслав, я бэкенд разработчик и в последние годы пишу веб приложения на java/kotlin. Основная идея этой статьи описать основные технические задачи, которые ставятся перед современными веб приложениями, а также перечислить те библиотеки, которые чаще всего...

Распределённые транзакции Kafka + PostgreSQL средствами Spring Как известно, во многих IT-проектах есть типичная задача -  транзакционная обработка данных в интеграционных сценариях, когда необходимо согласованно отправить или принять данные из внешней системы и при этом обновить собственное состояние приложения.Особенно интересной...

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

Что лучше: Переводчик Apple, Google Translate или Яндекc.Переводчик В современном мире с необходимостью перевода сталкиваются все. Давно прошли времена, когда пользователь, увидев сайт в интернете на английском языке, закрывал его и искал отечественные аналоги. Еще бы: переводчик нынче встроен в браузер. Теперь любой текст можно перевести п...

Археология: IT в изучении материального прошлого Археология — наука, которая изучает материальный мир прошлого. Как и многие другие науки, она возникла в далёком прошлом и вскоре подверглась внедрению информационных технологий. И в этой статье вы узнаете, что это за технологии, и почему они так полезны для археологии. Чи...

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

[Перевод] Создание нативных CLI приложений на Java с помощью Graalvm и Picocli Язык программирования Go стал популярным для написания приложений командной строки. Для этого может быть много причин, но один аспект, в котором выделяется Go, - это возможность скомпилировать программу в один нативный исполняемый файл. Это значитель...

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

Как мы создавали курс по C# и боролись за секунды У сервиса онлайн-обучения программированию Хекслет есть собственный Open Source проект Code Basics, на котором выходят бесплатные курсы для начинающих на разных языках. Когда-то их было только два – PHP и JavaScript, сейчас уже более десятка. В компании Dodo Engeneering есть...

[Перевод] Как выбрать подходящий Go-роутер? (с блок-схемой) Когда вы начинаете разрабатывать веб-приложение с применением Go, один из первых вопросов, которым вы, вероятно, зададитесь, — “Какой роутер мне следует использовать?”.И это не такой простой вопрос, как может показаться сначала. Доступно более 100 различных роутеров с разным...

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

Пишем сервис на GO. Runtime контроллер и Graceful Shutdown Напишем вместе HTTP-сервис на golang с нуля? Я уверен, что это довольно несложно. Для тех, кто каждую неделю этим занимается, моя статья не будет особенно интересна, но я все равно рекомендую взглянуть и оценить, возможно, ваши комментарии спасут кому-то жизнь. А может кое-...

UX-текст на языке Шекспира: заповеди, грехи и табу Изменив одно местоимение, можно на 90% увеличить показатель кликабельности (CTR) кнопки, которая приведет новых пользователей. Дописав одно предложение, можно увеличить количество оплаченных покупок и снизить нагрузку на саппорт. Поставив одну запятую, можно было бы сохранит...

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

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

Мой первый Pet-проект — Regexoop Спустя некоторое время я увидел интересный метод "12 проектов за 12 месяцев". Суть метода состоит в том, что ты каждый месяц делаешь 1 продукт и показываешь его людям. Неважно насколько он готов.Regexoop - переосмысление подхода написания regex. 30 сентября я подумал - "Хм, ...

Как устроены цикл событий и стек вызовов в JavaScript Цикл событий (event loop) — ключ к асинхронному программированию на JavaScript. Сам по себе язык однопоточный, но использование этого механизма позволяет создать дополнительные потоки, чтобы код работал быстрее. В этой статье разбираемся, как устроен стек вызовов и как они с...

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

Путь к автотестированию Android нативными инструментами: испробовали всё, что есть на рынке и сделали свои выводы Давайте сначала представимся. Мы - команда управления тестирования и контроля качества в БКС Мир Инвестиций. Наш продукт - это приложения и сайты, созданные для удобства всех желающих окунуться в мир ценных бумаг и инвестиций. Конкретно в нашем “ведомстве” приложения на IOS&...

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

Держи свой трафик в тайне. SSL Pinning — ещё раз о том же самом Всем привет! Меня зовут Юрий Шабалин, я один из основателей компании Stingray Technologies. Мы разрабатываем платформу анализа защищенности мобильных приложений iOS и Android. Сегодня я хотел бы снова затронуть тему безопасности сетевого взаимодействия между приложением и ег...

Идея для языка программирования искусственного интеллекта. Свойство-ориентированный подход В данной статье предлагается новый свойство-ориентированный подход к организации объектной модели в языках программирования. Основная идея - вынести свойство из объекта и сделать понятия свойства и объекта равноправными. Это позволит получить крайнюю гибкость и универсально...

Способ качественно изучить паттерны проектирования Привет, Хабр! Когда я изучал паттерны проектирования, я делал это с помощью прочтения двух книг: простую и понятную книгу от Head First одновременно со сложной и менее понятной книгой от Банды Четырех. Ниже описан мой опыт того, как именно я это делал, плюс выводы, впечатлен...

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

Синтезируем SystemVerilog код в OpenSource среде Yosys/NextPNR В предыдущей статье я поделился опытом работы с ПЛИС фирмы Lattice через инструменты с открытым исходным кодом Yosys и NextPNR. Как я отмечал, освоить их меня заставило не столько любопытство, сколько требования Заказчика. В том проекте у меня просто не было выбора. И та ста...

Green server для PET-проектов на базе Raspberry Pi – часть третья (сравнение с нетбуком) В двух предыдущих статьях я рассказывал как создавал мини-сервер из Rasbperry Pi model B и его старшего брата Raspberry Pi 4B. В комментариях часто писали, что стоило остановиться на б/у устройствах(нетбуках, ноутбуках, неттопах и т.д.). Данные устройства можно было найти по...

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

Правила переезда на СПО: наш опыт миграции 13 сервисов в 7 филиалах Привет, Хабр! Сегодня я расскажу об одном реальном переезде с проприетарного ПО на opensource-аналоги. Миграция на СПО — тема, конечно, избитая до безобразия. Но этот кейс интересен тем, что задача решалась в комплексе: под замену пошла вся экосистема инфраструктурного и при...

Настройка LEMP сервера для простых проектов. Инструкция для самых маленьких. Часть третья Приветствую читателей! В рамках текущей серии статей я рассказываю о том, как настроить сервер для простых проектов. Имеется ввиду сервер для работы нескольих сайтов, с небольшой нагрузкой под наиболее популярной CMS такой например как Bitrix. Основная цель статьи указать н...

[Перевод] Как у нас в Slack проектируются API Более пяти лет назад мы запустили платформу Slack, предоставив разработчикам легкий способ создавать приложения в Slack и публиковать их в нашей App Directory. Сегодня миллионы пользователей переносят свою работу в Slack, и их приложения, создаваемые более чем 885 000 а...

Мой новый домашний сервер, часть 4: использование unraid Для тех, кому лень читать предыдущие части — я переходил с HP Microserver Gen8/Windows Server на самосборный сервер с Unraid в качестве базовой ОС. Unraid — это коммерческая ОС для NAS/домашнего сервера на базе ядра Linux. Основные возможности — гибкое управление массивом д...

Microsoft Edge получит боковую панель с ярлыками веб-приложений Office В актуальных сборках Microsoft Edge для канала Canary началось тестирование новой боковой панели, на которой размещаются ярлыки веб-приложений Office, таких как Word, Excel и PowerPoint, Outlook, OneDrive, Teams и OneNote. Текст в верхней части гласит, что все эти сервисы д...

Как поживает DevOps в 2021: результаты большого исследования В 2021 году компания Экспресс 42 совместно c hh.ru и OTUS Онлайн-образование провели исследование состояния DevOps в России. Оно позволило нам отследить динамику изменений по сравнению с прошлым годом, получить еще больше полезных данных, а также рассмотреть состояние отрасл...

Неочевидные возможности ZIP на macOS Не так давно я изучал интересный проект – защищенное хранилище файлов. Одной из задач было найти возможности обхода проверки расширения файла внутри zip-архива. Пользователь мог отправить на сервер zip-архив, но сохранялся он только в том случае, если в нем лежали файлы с ...

Отечественный аналог Instagram ускорился в 3-5 раз. Приложение Now стало доступно в Google Play Разработчики социальной сети Now, нового российского аналога Instagram (принадлежит компании Meta, которая признана экстремистской и запрещена в России), поделились хорошей новостью. В онлайн-магазине приложений Google Play стало доступно официальное приложение Now. Та...

Простой GUI калькулятор на Python #1. Создание дизайна приложения Штош. Наверное, каждый начинающий программист после "Hello, world!" хочет написать какой-нибудь простенький проект. Почти всегда в голову приходит идея создания калькулятора. Но консольный калькулятор - это как-то скучно и просто. Хочется сделать приложение вот прямо как в с...

Что вы делали прошлым летом: на лыжах по городу Прошлым летом я тестировал батарейку. Я уже здесь писал о своей шайтан-арбе, которую я сделал весной. Но батарейки, которые у меня были, позволяли проехать чуть больше 25 км — маловато будет. Захотелось мне разжиться новой. О том и история, но будьте готовы к тому, что в ...

[Перевод] Как обновить образы контейнеров с помощью Podman Изображение Hessel Visser с сайта Pixabay Поддержание образов в актуальном состоянии является стандартной процедурой при эксплуатации и управлении контейнерной средой. Далее мы рассмотрим, как следует это делать. Podman — это daemon-less движок для разработки, управления ...

Шифры замены В предыдущей статье были рассмотрены простые шифры, использующие алфавиты естественных языков (ЕЯ). Автоматическая обработка сообщений в компьютерных и сетях связи предусматривает использование искусственных языков (ИЯ), что более эффективно во многих отношениях. Ранее описы...

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

Психология языкового барьера, или Какого черта нельзя просто взять и заговорить на английском 63% россиян учили английский в школе или университете, но при этом только около 5% граждан могут похвастаться свободным владением языка. Это один из самых низких показателей в Европе по рейтингу EF English Proficiency Index.По нашему личному опыту, больше половины студентов ...

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

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

Тестирование GraphQL: подходы, инструменты, автоматизация Несколько месяцев назад на моем пути возник GraphQL.Это произошло, когда я присоединилась к одному из наших проектов, где был не только привычный REST, но и GraphQL API. Это было моё первое знакомство с ним. Я понятия не имела, что он собой представляет, в чем его особенност...

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

Обзор kubenav для управления Kubernetes-кластерами со смартфона Kubenav — бесплатное приложение с открытым исходным кодом. Его основная цель — предоставление удобного GUI для управления кластером Kubernetes из-под всех возможных платформ. Их ассортимент действительно богат: десктоп-клиенты (для Linux, macOS и Windows), мобильные (для And...

Миграция данных из различных RDBMS в HADOOP В статье будет рассмотрен процесс экспорта данных в Hadoop из различных РСУБД посредством фреймворка Spark. Для взаимодействия с фреймворком Spark будет использован язык программирования Python с применением api pySpark. Читать далее

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

Как начать писать программный код Си в ОС Linux (Руководство для совсем начинающих) Этот материал рассчитан на людей, будущих программистов, которые только начинают разбираться в программировании под ОС Linux, или может быть долго были пользователями ОС Windows. Я попробую здесь показать прямое руководство к действию на примере ОС Ubuntu и тех простых инстр...

Пишем свой плагин для IDEA для поддержки нового языка (часть 1) В статье рассмотрено как создается языковой плагин для IDEA на примере учебного языка Monkey. Приведены примеры из других плагинов. Пишем на Java и Kotlin. Читать далее

[Перевод] Мои главные принципы работы после 20 лет опыта в программировании Начиная новый проект, хорошо вспомнить полезные принципы программирования, которые помогут правильно расставить приоритеты и избежать многих ошибок. Рекомендациями от автора с опытом программирования в 20 лет делимся к старту курса по Fullstack-разработке на Python. Читать д...

Обзор ORM для C#: что подойдет для проекта Одна из проблем использования языков объектно-ориентированного программирования (ООП) и баз данных в сложности их согласования между собой. Знание языка структурированных запросов (SQL) и умение писать запросы позволяют взаимодействовать с БД напрямую. Но использование «чист...

React Hooks простыми словами О хуках в фронтенд-разработке на Хабре писали уже не раз, и в этой статье мы не сделаем великого открытия. Наша цель другая – рассказать про React Hooks настолько подробно и просто без трудной терминологии, насколько это возможно. Чтобы после прочтения статьи каждый понял пр...

Опыт организации диалога с модулями ICP DAS I-7000 по RS-485 используя только bash В моем конкретном случае все казалось нерадужно, я опускал руки, думал о неизбежности начать писать на Си, компилировать ядро, уходить в отшельники для отладки приложения и т.п. Нельзя сказать что результата в Bash не было, он просто не устраивал. Пока программированием по н...

Design Sapiens: путь к дизайн-системе, которой удобно пользоваться Я UX/UI-дизайнер, уже два года работаю в ISPsystem. Одной из глобальных моих задач все это время было сделать нашу дизайн-систему удобной для использования.Полноценная дизайн-система — с гайдами, состояниями и борьбой с разработчиками — испытание не только для новичка в диза...

Из Java в Kotlin: туда и обратно В статье рассмотрены проблемы и решения, которые возникли при добавлении Kotlin в небольшой существующий микросервис на Spring Boot, написанный на Java. В рамках статьи не будут рассматриваться плюсы и минусы того или иного языка - здесь и так сломано много копий. В рамках п...

Кратко, но по делу про энергонезависимую память Intel Optane Поймал себя на ощущении, что хочется поделиться своим опытом работы с интеловской энергонезависимой памятью (Intel Optane memory или Intel PMem). Я буду для краткости называть ее ПМем. Думаю, что несмотря на объем продаж в сотни миллионов долларов, пока мало кто с ней сталк...

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

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

[Перевод] Шаблоны C++: как итерировать по std::tuple — std::apply и еще пара приемов В предыдущей статье, посвященной перебору элементов кортежей, мы рассмотрели только основы. В результате нашей работы мы реализовали шаблон функции, который принимал кортеж и мог красиво вывести его в консоль. Мы также реализовали версию с оператором <<.Сегодня мы пойд...

«Магнитофон» для ZX Spectrum на базе Arduino Есть у меня аналог Спекки — персональный компьютер «Мастер». Он прошел несколько модернизаций, так что сейчас работает от обычного USB и с любым телевизором по SCART. Но вот с загрузкой программ есть небольшие сложности: магнитофона у меня уже нет, ноут для этих целей развор...

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

Собственный голосовой помощник off-line Никогда не был любителем голосового интерфейса, но пробовал дома и Amazon Echo, и Алису. Все-таки очень долго это и недостаточно надежно - произносить фразу и думать потом - правильно ли меня поняли и всё ли сделано, как я хотел.Но после прочтения статьи и, главное, обсужден...

Как разработать микросхему, от идеи до результата. Часть 4. DRC/LVS/PEX В прошлой статье мы сделали Layout, а в этой части мы проведём LVS/DRC/PEX и исправим ошибки из прошлой статьи. Для тех, кто пропустил прошлые части, вот ссылки на них. Как разработать микросхему, от идеи до результата. Ссылки на все статьи։ ...

Книга «C# 9 и .NET 5. Разработка и оптимизация» Привет, Хаброжители! В этой книге опытный преподаватель Марк Прайс дает все необходимое для разработки приложений на C#. В пятом издании для работы со всеми основными операционными системами используется популярный редактор кода Visual Studio Code. Издание полностью обновле...

Django-sockpuppet, интересная альтернатива React, Vue, Angular или очередная заброшенная джанговская «батарейка»? Всем доброго времени суток! В данной статье я хотел бы очень кратенько, без подробностей рассказать про интересный проект, который будучи достаточно простым, сильно увеличивает возможности Django фреймворка. Мне он показался достаточно интересным. Сейчас хайп вокруг с...

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

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

Теплый резерв Jira и Confluence (на пороге импортозамещения) За почти четырнадцатилетнюю историю использования Jira и Confluence на Московской бирже в них накоплен огромный объем данных: у нас более 350 проектов в Jira и более 200 пространств в Confluence. Не будет преувеличением сказать, что в этих продуктах сейчас работает вся Биржа...

GraphQL: как сделать бэкенд приложения экономнее и быстрее Самый распространённый стандарт для обмена информацией внутри приложений — это REST API. Его все любят, но знают, что он не идеален. В этой статье обсудим его альтернативу — GraphQL. Мы расскажем, в чём преимущество GraphQL, как выглядят запросы и с чего начать. Читать далее

Физика в Python с использованием Pymunk Физика. Кто-то её любит, кто-то нет, но определённо это неотъемлемая часть нашего существования. В этой статье мы рассмотрим как самому создавать физические симуляции используя всего 2 библиотеки Python. К концу статьи мы сделаем интерактивную симуляцию взаимодействия тел и ...

От малого до энтерпрайза: коллекция статей по DevSecOps Споры на тему «DevOps — это человек или методология?» уже неактуальны: всем надоело. Зато появился DevSecOps. И хотя термин не нов (первая конференция DevSecOps Summit прошла в 2016 году), его точное содержание бывает не до конца понятно и новичкам, и бывалым айтишникам. Ес...

О Thread и ThreadPool в .NET подробно (часть 2) В предыдущей публикации мы рассмотрели некоторые базовые вопросы относительно потоков и пулов потоков и готовы двигаться дальше. Давайте проведём эксперимент и найдём правильный объём работы для пула потоков. Чтобы его издержки не давлели над объёмом полезной работы⚠️ М...

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

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

Мой опыт первой игры — Escape from the 70's Захотелось мне делать игры… Хотя бы одну! И записался я тогда на курс Unreal Engine в середине июня 2020 - просто в гугле набрал курсы по анрниалу и на самом первом в списке я зарегистрировался. Хочу сделать отступление и акцентировать на том, что это моя первая игра. Я...

Обучение рукописной OCR на синте от GAN'ов Модели распознавания печатного текста (например, с фотографий документов) дают довольно высокие результаты. Это происходит за счёт ограниченного набора шрифтов, цель которых – быть максимально понятными человеку, а также благодаря генерации простой синтетики в виде печати ра...

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

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

9 лучших расширений для Safari в iOS 15 Вы уже знаете, что Safari в iOS 15 получил множество новых функций, среди которых группирование вкладок, жесты для переключения между вкладками, но и расширения для браузера. В прошлый раз мы рассказывали вам о некоторых из них, но с того момента App Store стал заметно бога...

Новый язык обычного и параллельного программирования Planning C 2.0 Здравствуйте, уважаемые читатели.Хочу написать здесь об одном из своих проектов -- языке Planning C (v2.0). Он является расширением C++, дополняющим базовый язык рядом новых конструкций. В настоящее время проект доступен в репозитории (исходный код прототипного транслятора-п...

Поисковик новостей (RSS), написанный на Java + SQLite Вы скорее всего подумаете: "Зачем десктопная программа, если можно, как минимум, загуглить?". А затем, что моя программа автоматически "гуглит" за тебя! Причём не только по одному ключевому слову, а по нескольким, которые вы, само собой, можете редактировать. А результат пои...

Чем хороший программист отличается от плохого, или почему нужно выходить за рамки Это будет моя самая короткая статья.Когда-то я был молод и зелен и решал проблемы именно так, как их решают джуны. Алгоритм такой:1. Узнать о проблеме2. Локализовать проблему3. Загуглить проблему и решение4. Пофиксить проблемуНапример: эксель-файл содержит ошибку, и поэтому ...

Такси подорожало? Yandex GO теперь обосновывает цену В августе 2020 года приложение «Яндекс. Такси» стало лишь частью нового и «всеобъемлющего» приложения «Яндекс Go» – с прошлого года в одном значке меню вашего смартфона и вызов такси онлайн, и каршеринг, и заказ еды, и отслеживание передвижения общественного транспорта. ...

Почему каждый сайт пытается продвинуть своё нативное приложение? Странная вещь: вот сайты (теперь не все, но всё ещё многие) отлично работают в браузере. Но только заходишь со смартфона, начинается цирк. Всплывающее окно — хотите открыть ссылку в приложении? В каком? У меня нет никакого приложения! Если случайно нажать «Да», то начнётся...

Kui — «гибридное» CLI/GUI-приложение для работы с Kubernetes Не секрет, что большинство из нас, когда речь заходит о таких вещах, как управление сервером или кластером Kubernetes, в первую очередь думают не про какой-то GUI, а любимый терминал. Для многих это как езда на автомобиле с ручной коробкой передач: просто, удобно, гибко, бол...

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

Что такое ECS и с чем его компилят Привет! Эта статья — первая в блоге MY.GAMES, международного разработчика и издателя видеоигр. Здесь мы объединим наработки и экспертизу всех 14 наших игровых студий. Впрочем, будем рассказывать не только о внутренней кухне экосистемы MY.GAMES, но и о том, чем живет геймдев ...

Dart Code Metrics — мой первый pull request В статье рассмотрел инструмент для анализа кода Dart Code Metrics и о том, насколько полезно его использовать. Постарался поделиться своими знания в создании нового правила для анализатора. Автоматизировали проверку имени класса и названия файла не только для своего проекта...

Айти в Казахстане: обзор рынка и заработных плат за 2021 год Kolesa Group провели второе исследование казахстанского IT-рынка. В первую очередь нас интересовали зарплата и мотивация специалистов, а также отдельно взятые направления в разработке. Мы сопоставили данные 2020 и 2021 гг, чтобы выяснить:• насколько увеличились зарплаты...

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

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

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

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

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

Собираем генератор данных на Blender. Часть 1: Объекты Привет, Хабр! Меня зовут Глеб. Я работаю в компании Friflex над проектами по оцифровке спорта. Работая над idChess (приложением для распознавания и аналитики шахматных партий), мы расширяем наш датасет синтетическими данными. В качестве движка используем Blender. В этой ста...

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

Посмеяться над мемами, стать мемологом, найти связь между «Симпсонами» и «Риком и Морти»: итоги конкурса про мемы На прошлой неделе прошла конференция по мобильной разработке Mobius 2021, на которой мы выступили с докладом про анализ данных в приложениях, а также предложили участникам поиграть в мем-квиз и Memology Game. Cуть последней — найти связь между мемами и выстроить их в ед...

15 стран, 9 языков: трудности перевода одного iOS-приложения В 2017 году у Додо Пиццы появилось приложение для iOS на русском языке, а в 2019 его понадобилось перевести на румынский, а потом ещё на несколько языков. При этом ни одна строка не была обёрнута в макрос NSLocalizedString(…).В этой статье я расскажу, какие инструменты мы ис...

Улучшаем процесс ведения проекта в Git Привет! Я давно заметил, что процесс добавления нового кода в проект в большинстве команд может быть не всегда стандартизирован. Из-за этого могут возникнуть сложности с коммуникациями разработчиков как на уровне описания добавленного кода, так и понимания, какое влияние нес...

Дайджест событий для эйчаров и рекрутеров в IT на февраль 2022 В феврале организаторы курсов, вебинаров и конференций для HR в IT предлагают узнать об актуальных подходах к управлению персоналом и инструментах для поиска кандидатов, а также как сформировать стратегию сорсинга и разобраться, какую роль в этом всем может играть Agile. А д...

Чем заменить TeamViewer в России. 2 крутых способа Буквально пару дней назад российские пользователи заметили, что на их компьютерах перестал работать TeamViewer. Если кто не знал, Тимвивер — приложение, с помощью которого можно удаленно подключиться не только к компьютеру Mac, но и к любому другому. За долгие годы св...

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

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

Странная история: Появившийся новый сотрудник — не тот человек, которого мы собеседовали На портале AskaManager, где сотрудники делятся своими рассказами о работе, поделились забавной историей. Дальше прямая речь.«Эта ситуация прямо сейчас разворачивается в офисе моего мужа, так что я здесь просто удивленный наблюдатель и подумала, что стоит узнать ваше мнение о...

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

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

[Перевод] От Java 8 до Java 15 за 10 минут В данной статье рассмотрены крупные нововведения Java начиная с 8 по 15 версии. Читать далее

[Перевод] Базовые принципы Availability О чем статьяВ этой статье речь пойдет о БАЗОВЫХ подходах и принципах к такому quality attribute (QA) как Availability. Никаких сложных случаев, ничего слишком сложного, только теория с двумя примерами, скипайте, если искали что-то эдакое.Вся информация основана на парах книг...

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

FullHD vs 4k и integer scaling: всегда ли 2 x 2 = 4? «Лучше быть богатым и здоровым, чем бедным и больным» © Аксиома В статье Простой способ получения ”Flicker-Off”: «отключение» ШИМ мерцания подсветки LCD мониторов и телевизоров я обозначил несколько смежных тем, заслуживающих на мой взгляд отдельного разговора, которы...

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

Как поделиться паролем от Wi-Fi с Айфона на Андроид Компания Apple старается добавлять новые фишки в свои устройства чуть ли не с каждым обновлением. Но, к большому сожалению, большинство из них работает исключительно внутри яблочной экосистемы. Иной раз задумываешься, как было бы хорошо иметь одну единственную операционку н...

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

Как пользоваться ВК на Айфоне. Самые популярные вопросы После того как Роскомнадзор начал блокировку Инстаграм многие пользователи начали массово искать замену для любимого сервиса. Из множества приложений в лидеры сразу вырвались два — Телеграм и ВК. Сразу скажу, что я делаю ставку на второе. Банально из-за удобной и пон...

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

Идеальный каталог, пример использования Я разрабатываю библиотеку для работы с Entity Attribute Value (репозиторий), сокращенно EAV (структура базы данных для хранения произвольных данных). В конце прошлой статьи я спросил у вас о чём мне ещё надо написать, вы попросили показать пример использования и сделать заме...

Интеграция amoCRM с сайтом API AmoCRM одна из самых популярных CRM, при этом ее API один из самых странных, по моему субъективному мнению. Понадобилось передавать формы с сайта в crm. Использовать CRM Формы вместо своих дизайнерских не хочется. Было бы здорово открыть статейку в гугле, подставить ключ и н...

Citrix Xen Center – Опыт работы с полностью бесплатной виртуализацией Сразу опишу главный плюс такого решения – Это бесплатно! Любой может более менее полноценно администрировать рабочие места(Windows машины/сервера, linux сервера, любые ОС), работать с бекапами и эффективно использовать мощность железа.Так уж вышло, что профессиональные решен...

HAProxy, Nginx и Docker: как это сделано в Roxy-WI Продолжаем цикл статей о возможностях Roxy-WI. Сегодня мы поговорим ещё об одном важном наборе функций, связанных с управлением сервисами (а именно ― HAproxy и Nginx) в docker-контейнерах. Мы старались сделать эту функцию максимально простой и удобной в использовании. О том,...

Асинхронное программирование в однопоточных средах JavaScript Асинхронное программирование в однопоточных средах JavaScript Моя прошлая обучающая статья Введение в Redux & React-redux набрала больше 100к просмотров. Что же это не может не радовать меня. И поэтому я решил порадовать и вас написав очередную статью по JavaScript. Хотя...

Microsoft начинает убирать важные функции из Панели управления в Windows 11 Панель управления Windows существует уже некоторое время и является приложением по умолчанию для управления настройками в Windows 7 или более ранних версиях. С момента выпуска Windows 8 Microsoft сосредоточилась на современной альтернативе Панели управления и намерена перене...

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

JavaScript: заметка о WebAssembly Привет, друзья! В 2019 году WebAssembly (далее — WA или wasm) стал четвертым "языком" веба. Первые три — это, разумеется, HTML, CSS и JavaScript. Сегодня wasm поддерживается 94% браузеров. Он, как утверждается, обеспечивает скорость выполнения кода, близкую к нат...

Мосметро, ВТБ и Яндекс Go тестируют инновационный сервис «МультиТранспорт» MaaS - это комфортная альтернатива использованию личного транспорта, которая позволяет значительно улучшить трафик города Москвы. Каждый пассажир получает возможность выбрать для себя наиболее быстрый и экономически выгодный вариант поездки, при этом процесс оплаты понятен и...

5 фишек Google Docs, которые пригодятся в работе Вы замечали, что в последнее время все больше пользователей отказывается от работы в Microsoft Office в пользу Google Docs? В целом, их понять можно: сейчас главное — работа с файлами в онлайн-режиме, и Документы от Google с этим справляются на порядок круче, чем дети...

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

Bottom Sheet, перейдём на «ты»? Bottom Sheet представлялся мне сложным и недосягаемым. Это был вызов! Я не понимал, с чего начать. Возникало много вопросов: использовать view или view controller? Auto или manual layout? Как анимировать? Как скрывать Bottom Sheet интерактивно?Но всё изменилось после работы ...

Управление распределенными транзакциями с помощью Camunda "Всякое решение плодит новые проблемы" (закон Мерфи)В этой статье я собираюсь поговорить о подходе к решению задачи обеспечения консистентности данных в микросервисной архитектуре, т.н. распределенных транзакциях. Почти два года назад я впервые познакомился с инструментом Ca...

Style transfer для сериала «Друзья» В данном посте мы, с помощью методов автоматической обработки текстов (Natural Language Processing или просто NLP), исследуем стиль речи 6 главных героев знаменитого сериала “Друзья”, проведем мультиязычный анализ для русского и английского языков, а также обучим большие GPT...

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

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

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

Poetry — прекрасная альтернатива pip (шпаргалка) Poetry - это инструмент для управления зависимостями в Python проектах (аналог встроенного pip). Идея реализации данного инструмента пришла его создателю в связи с тем, что различные способы менеджмента пакетов (requirements.txt, setup.cfg, MANIFEST.ini и другие) показались ...

5 отличных видеоредакторов для iPhone Рассказываем о крутых приложениях для редактирования видео iPhone и iPad обладают неплохими встроенными инструментами для редактирования видео, но они обладают ограниченным набором функций. Понятное дело, что на стандартных функциях iOS далеко не уедешь. Хотя некогда известн...

Использование Gatling. Разбираемся в тестировании HTTP Всем привет! Это команда тестирования производительности Тинькофф, и мы продолжаем цикл статей о Gatling. В предыдущей статье мы рассмотрели базовые возможности инструмента Gatling, узнали, как быстро создать шаблон gatling-проекта, и познакомились с новыми функциями би...

35 реальных рисков, убивающих data- и machine learning проекты Всем привет! Эта статья - обобщение моего опыта 30+ проектов, связанных с обработкой данных и машинным обучением. Здесь не будет теории про управление рисками и общего перечня проектных рисков. Я перечислил только наиболее частые “грабли” именно из data-специфики, с которыми...

Flutter: простыми словами про ассинхронность и параллельность Всем привет, читатели Хабра! В этой статье я хочу простыми словами рассказать про асинхронность и параллельность в Dart/Flutter. Многие новички сталкиваются с непонимаем того, что это и когда что использовать. Я сам столкнулся с этой проблемой в начале своего карьерного пути...

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

Как сделать просмотр картинок в браузере удобнее? Для прокачки подойдёт любой браузер на Chromium, поддерживающий установку плагинов из фирменного магазина Chrome. После этого ваш браузер станет не только более удобным для просмотра графики, но и даст некоторые примитивные, но весьма удобные и полезные инструменты для раб...

Как удаленно управлять компьютером Mac Многие начинающие пользователи Mac задаются вопросом, реально ли каким-то образом получить удаленный доступ к другому компьютеру Mac или использовать специальную функцию, которая позволит устранить проблемы на другом Mac? Признаться честно, я не представлял, что магия Apple...

Я у мамы программист: как найти лучший IT-курс для ребенка Технологии IT/Игры 17.02.2022, 13:12 Я у мамы программист: как найти лучший IT-курс для ребенка Авторы доклада НИУ ВШЭ «Универсальные компетентности и новая грамотность» считают, что в XXI веке умение программировать — такой же важный ...

С 2 лет до 6 месяцев: как мы ускорили “доставку” почтового ПО в 4 раза Всем привет! Меня зовут Антон, я системный архитектор отдела разработки курьерских сервисов в Почтатехе. Мы разрабатываем сложные цифровые продукты Почты России. Помогаем ей стать удобнее, быстрее, качественнее и технологичнее для вас. Команда нашего отдела создаёт и ра...

SQL HowTo: генерируем лабиринты (алгоритм Прима и геометрические типы) SQL является мощным инструментом для обработки множеств, а функционал PostgreSQL позволяет делать многие вещи еще проще, поэтому идеально подходит для реализации некоторых алгоритмов на графах.Причем работа с графами - это не просто разминка для ума, а вполне себе прикладная...

[Перевод] Автоматическая суммаризация текстов с помощью трансформеров Hugging Face. Часть 1 В июле 2020 года компания OpenAI выпустила свою модель машинного обучения третьего поколения, GPT-3, ориентированную на генерирование текстов. Тогда я понял, что мир уже не будет прежним. Эта модель задела меня за живое. Те системы такого рода, что выходили раньше,...

Java: есть ли жизнь на десктопе? Привет! Я Виктор Барсуков, Java-разработчик в Lamoda. В этой статье хочу рассказать о своем опыте разработки десктопного Java-приложения в рамках пет-проджекта. Что из этого получилось и что можно было бы сделать иначе. Читать далее

Security микросервисов с помощью Spring, OAuth2, JWT и Service Account Не так давно я начинал свой первый проект с микросервисами и не знал как реализовать security. Сейчас информации по этому вопросу уже больше однако она не всегда актуальна и как правило не раскрывает проблему security межсервисного взаимодействия. Поэтому я решил написать ка...

Представляем .NET MAUI Preview 12 Сегодня мы выпускаем 12 превью-версию .NET Multi-platform App UI со многими улучшениями качества и некоторыми новыми возможностями. По мере того, как мы приближаемся к выпуску нашей первой стабильной версии, баланс работы начинает смещаться в сторону улучшения качества и ста...

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

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

Как сжать видео на Маке без сторонних приложений Если вы хоть раз снимали видео в 4K, то представляете, сколько оно весит. Минута ролика в 4K 60 fps на iPhone обойдется вам чуть ли не в 500 МБ свободного пространства. На других устройствах, я уверен, такого качества видео займет ничуть не меньше памяти. Понятно, что если ...

Мнение: Почему я не пользуюсь App Store на Mac Впервые App Store на Mac вышел еще в далеком 2011 году. Тогда Apple обещала нам удобный способ покупки приложений и кучу разных плюшек. Прошло чуть больше 11 лет, и до сих пор магазин приложений на Mac не производит больших впечатлений, во всяком случае у меня. Гораздо прощ...

Собираем компилятор для ПЛИС Lattice ECP5 в лице Yosys и NextPNR для работы в ОС Windows Наш цикл про ПЛИС Lattice ECP5 растянулся уже на шесть статей. Мы уже научились не только создавать простые проекты для них, но набили руку в разработке сложных систем на базе кроссплатформенной открытой среды LiteX. В целом, я уже набрал материалов, чтобы выдать инструкцию,...

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

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

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

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

Руководство по Supabase. Часть 1 Привет, друзья! В этом цикле из 2 статей я хочу рассказать вам о Supabase — открытой (open source), т.е. бесплатной альтернативе Firebase. Первая статья будет посвящена теории, во второй — мы вместе с вами разработаем полноценное social app с аутентификацией, базой данных...

Security Week 2209: криптография в смартфонах На прошлой неделе исследователи из Тель-Авивского университета опубликовали научную работу, в которой сообщили об обнаружении серьезных недостатков в системе шифрования данных смартфонов Samsung. Уязвимости, на данный момент исправленные, были найдены в защищенном приложении...

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

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

Разработка приложения на Flutter с нуля до релиза: Идея + Базовая инфраструктура Привет! В данном цикле статей я хотел бы показать, как может происходить создание приложений с использованием Flutter. У меня есть несколько Open Source решений, которые будут использованы в данном приложении. Что из этого получится - увидим в скором будущем. Если долго муча...

Цифровая свобода. Часть 1. Менеджер паролей Всем привет! Я хочу запустить цикл статей с инструкциями которые помогут, отвязаться от сервисов и вернут вам контроль над вашими данными. Тут будут представлены opensource аналоги сервисов, которыми все мы пользуемся каждый день и утилиты для бекапа ваших данных из цепких л...

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

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

Альфа-банк отключает старые версии своего приложения для iOS. Что делать В середине апреля Apple удалила из App Store приложения сразу нескольких российских банков из-за блокирующих санкций США. Несмотря на это, уже установленные клиенты не сломались и, по уверениям их создателей, должны были продолжать работать и дальше. До недавнего времени та...

Мой друг Netmiko Ansible с костыльком может автоматизировать сеть и non-CloudEngine коммутаторов Huawei, как недавно было доказано на нашем Enterprise форуме. Однако в сети, в которой работают разные модели коммутаторов, Ansible не представляется эффективным инструментом на данный момент. И ...

Как установить Сбербанк Онлайн, ВТБ Онлайн и другие приложения, которых уже нет в App Store Несмотря на обещания российских банков, попавших под санкции, что после удаления из App Store их приложения продолжат работать без ограничений, по факту всё получилось не совсем так. Некоторые пользователи обнаружили, что банковские клиенты ВТБ, Альфа-банка и Сбербанка стал...

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

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

[Перевод] Скриптинг без скриптинга Уже давно считается, что многие (если не все) игры или приложения можно улучшить, добавив в них поддержку скриптов.Для этого есть несколько разных способов. Наиболее распространенный подход - встроить Lua (или другой язык, который вам больше нравится). Если это по каким-то п...

[Перевод] Звёздный рейтинг: решение с использованием SVG Для некоторых веб-сайтов и платформ в интернете важно предоставлять пользователям звёздный рейтинг для возможности выставить оценку материалу. Недавно мне довелось реализовать для одного проекта компонент звёздного рейтинга. Я решил использовать SVG и не пожалел об этом. В д...

Как нативно визуализировать голос в iOS Реализовать запись и проигрывание аудиофайлов в iOS несложно. Но если к этому добавляется задача визуализировать звук в момент записи с микрофона, это может вызвать сложности даже у опытного программиста, который мало работал с AVFoundation — мультимедийным фреймворком ...

Что там у ReactOS? 16 декабря сего года, команда разработчиков ReactOS, спустя долгое время после последнего релиза (с последнего прошло почти полтора года) выпустила новую версию под номером 0.4.14. Это все еще альфа-версия.В данной статье мы рассмотрим основные новшества как со стороны разра...

Совет по торговле и технологиям США-ЕС 15-16 мая проведет встречу во Франции Совет по торговле и технологиям (TTC) США-ЕС соберется во Франции 15-16 мая. Это второе собрание органа, созданного в прошлом году для улучшения напряженных трансатлантических торговых отношений и помощи союзным демократиям в лучшей конкуренции с Китаем. О планах совета...

Знакомимся с Javassist Всем большой привет! Перед началом стоит сказать, что библиотека Javassist довольно мощный инструмент, так как стирает почти все границы у того безграничного языка JAVA, позволяя разработчику осуществлять манипуляции связанные с байткодом.Конечно, получив доступ к байткоду, ...

Как я создал Spring Boot startup analyzer Ни для кого не секрет, что приложения на Spring могут задумываться на старте. Особенно это заметно с развитием проекта: новый сервис стартует быстро и радует отзывчивостью, потом начинает обрастать функционалом, появляются всё новые и новые зависимости, а итоговый дистрибути...

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

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

Тестирование офисных пакетов Р7-Офис, МойОфис, LibreOffice и MS Office Всем доброго времени суток. В рамках импортозамещения или точнее ухода от MS Office, на работе, возникла необходимость в рассмотрении российиских аналогов офисных пакетов и пакета LibreOffice, т.к. он автоматически установлен в дистрибутивах astra linux. Здесь хочу поделитьс...

Как смотреть презентацию Apple 8 марта на русском языке Презентация Apple пройдёт 8 марта в 21:00 Уже сегодня, 8 марта, пройдёт первая презентация Apple в 2022 году. Несмотря на то что в последние годы компания постаралась максимально сократить количество официальных мероприятий, сопровождая запуск новых устройств только пресс-ре...

И снова про App Transport Security: что это и зачем Привет, Хабр! Меня зовут Юрий Шабалин, и, как я пишу в начале каждой своей статьи, мы разрабатываем платформу анализа защищенности мобильных приложений iOS и Android. В этой статье мне бы хотелось затронуть тему безопасной конфигурации сетевого взаимодействия, а также немног...

Что вижу, то и программирую Не знаю, как у вас, в большом мире программирования, а у нас, в 1С, очень распространён подход «что вижу, то и программирую». Есть более удобоваримое название: «программирование от данных». Однако, чаще всего это называют говнокод. Хотя, тут я не согласен – до говнокода ещё ...

Bitsy. Make games, without operations Если вы давно хотели научиться делать игры, но не знали с чего начать, то рекомендуем попробовать Bitsy.Это редактор полного цикла для создания простых игр и маленьких миров на основе html. Это значит, что ваша игра максимально доступна и не требовательна, ее легко можно опу...

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

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

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

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

[Перевод] 30 лучших Python-проектов на GitHub на начало 2022 года Наверняка многим из вас любопытно было бы узнать, какие Python-проекты являются самыми популярными на начало 2022 года. GitHub, безусловно, лучшее место для получения этой статистики. Пусть здесь можно найти не все проекты, но ему нет достойной альтернативы. Читать далее

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

Щуп осциллографа. Устройство и принцип работы Эта статья для тех кто всегда хотел знать как устроен щуп осциллографа, но боялся спросить. Для тех кто начинает работать с осциллографом, а также для тех кто много лет работает, но никогда не хватало времени и сил для того, чтобы разобрать как устроен щуп(пробник) осциллогр...

Автомобильный плеер Spotify Car Thing поступил в продажу за 90 долларов Еще в апреле прошлого года Spotify выпустила свой первый аппаратный продукт под названием Car Thing — устройство для потоковой передачи аудио, предназначенное для облегчения использования приложения во время вождения. Изначально его можно было получить бесплатно,...

[Перевод] От песочных часов к пирамиде: как усовершенствовать структуру тестов Меня зовут Владислав Романенко, я Senior iOS QA Engineer в Badoo и Bumble. Мы регулярно внедряем новые фичи в приложения, и автоматизация тестирования — один из способов не пропустить баги. Фактически автотесты входят в жизненный цикл всех частей наших приложений: бэкенда, с...

OneDrive получит поддержку Windows on ARM и Apple M1 в качестве бета-версии в конце этого года Клиент синхронизации OneDrive для Windows и macOS скоро получит нативную поддержку устройств на базе ARM. На конференции Ignite 2021 Microsoft объявила, что инсайдеры Office с устройствами Windows на базе ARM смогут использовать предварительную версию OneDrive для ARM «к кон...

Сравнение архитектур Arm, RISC-V и E2K со стороны развития бизнеса Недавно здесь была опубликована великолепная статья, сравнивающая архитектуры с технической точки зрения. И мне пришла идея написать статью про три популярных архитектуры со стороны развития бизнеса: какая их них более интересна и может принести больше денег. Читать далее

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

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

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

WireGuard клиент для Windows на основе BoringTun В начале 2019 года компания Cloudflare представила BoringTun, реализацию WireGuard протокола, написанную на языке Rust. Код проекта распространяется под лицензией BSD-3-Clause и включает в себя библиотеку, которая может использоваться для интеграции функц...

Как устроены первые в мире соревнования беспилотных болидов Fomula 3 на Indy Autonomous Challenge 2021. Команда TUM Команда Мюнхенского технического университета (TUM Autonomous Motorsport team) только что выиграла первые в мире соревнования беспилотных болидов Formula 3 во время Indy Autonomous Challenge 2021 (далее, IAC 2021) проведённого 23 октября 2021 года компанией Cisco и большим к...

[Перевод] Миллион одновременных соединений Я слышал ошибочные утверждения о том, что сервер может принять только 65 тысяч соединений или что сервер всегда использует по одному порту на каждое принятое подключение. Вот как они примерно выглядят: Адрес TCP/IP поддерживает только 65000 подключений, поэтому придётся на...

Кубер или два service discovery на один service mesh Привет! Я Алексей, старший системный администратор ЮMoney. Так уж вышло, что я — главный по Куберу в компании. Поэтому когда меня попросили рассказать, как мы создавали сервис Kubernetes и что у нас в итоге получилось, уговаривать меня долго не пришлось.Зачем вообще компании...

Ищем ошибки в C# коде GUI-фреймворка Eto.Forms Популярность GUI-фреймворков для .NET постоянно растёт – появляются новые, развиваются старые. Мы решили не обходить эту тему стороной и рассмотреть подозрительные места, найденные в C# коде одного из таких проектов – Eto.Forms. Читать далее

Меняем стек с PHP на Golang, или Разработка под Kubernetes Привет, Хабр!На связи Паша Емельянов, тимлид в AGIMA. В этой статье расскажу, как на одном из проектов мы переписывали старый функционал, разработанный когда-то на PHP, на Golang, с какими проблемами столкнулись и как их решали. Статья будет интересна и начинающим, и миддлам...

Apple объявила об изменениях в использовании сторонних систем оплаты в приложениях, представленных в нидерландском App Store В прошлом месяце Apple разрешила приложениям для знакомств в Нидерландах использовать сторонние платежные сервисы по распоряжению Управления по делам потребителей и рынков Нидерландов (ACM). Теперь Apple объявила об изменениях, которые упростят задачу для разработчиков,...

Просто о сложном — move в языке C++ Здравствуйте уважаемые читатели. Данная публикация адресована начинающим разработчикам С++ которые только становятся на путь высокой производительности и "отстрелянных конечностей". Опытные разработчики найдут здесь скорее повторение тех вещей, которые сами мучительно осваив...

Как подружить Git с приложением на Webpack+React Иногда бывает полезно отображать некоторую информацию из Git-репозитория прямо в приложении. В статье мы воспользуемся преимуществом встроенной в NodeJS функции execSync и будем показывать в приложении три версии мастер-ветки. Читать далее

[Перевод] C++20 Ranges — Полное руководство C++20 Ranges, также известная как STL v2, представляет из себя более эффективную замену существующих алгоритмов и технических средств STL. В этой статье мы пройдемся по изменениям, введенным Ranges (диапазоны/интервалы), обсудим представления (views), которые представляют со...

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

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

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

Q&A по QA: разбираем вопросы митапа по автоматизации тестирования Привет, Хабр!В октябре мы провели онлайн-митап по тестированию, в котором спикеры из Badoo, Skillbox, Почтатех и SuperJob поговорили о своем опыте перехода от ручного тестирования к автоматизации, рассказали о подходах к стабилизации тестов для мобильных приложений и многом ...

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

Разработка приложения на Flutter с нуля до релиза: Part 2 Привет! Это вторая статья из цикла о разработке приложения на Flutter. В этом "номере" я опишу создание сетевого слоя, работу с локализацией, удобный способ работы с ассетами, локальный поиск и создание UI для одного из двух экранов приложения. Также я выведу интересные метр...

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

Алгоритм Томасуло как фактор импортозамещения российских процессоров Проектированием простого процессора сейчас никого не удивишь. Любой способный студент может за пару недель написать на верилоге однотактный RISC-V или ARM процессор и синтезировать его для ПЛИС. Процессор будет работать на учебной плате и выполнять простые программы на Си и ...

YouTube Vanced — всё. Разрабтчиков заставли закрыть проект Приложение YouTube Vanced, которое позволяло смотреть все видеоролики без реклам, официально закрывается. Это была альтернатива платной подписке YouTube Premium, которая официально предоставляет доступ к тем же возможностям (просмотр без рекламы, проигрывание в фоне, с ...

Как я визуализировал граф билда. Build Graph for Xcode Каждый год я стараюсь запускать по одному пет-проекту. Самый первый начинался ещё до того, как я умел пользоваться Git, а последний вообще был не программой, а книгой про доступность. Каждый проект учил меня как программированию, так и подходу к продуктовой разработке, что п...

Здесь все, что известно об Android 13 на данный момент Прошло уже больше полугода с того момента, как Google официально представила нам Android 12 на конференции для разработчиков Google I/O. Пользователи потихоньку начинают осваивать систему, разработчики выкатывать новые приложения и оптимизировать старые. В это время Google ...

ua-hosting.company — задизайнено в студии Артемия Лебедева, 15 лет спустя Проект ua-hosting.company берёт своё начало еще в далёком 2006 году, когда услуги хостинга предоставлялись в рамках некоммерческого проекта, который требовалось окупать. Подробнее об этом Вы можете узнать из нашей исторической статьи — «ua-hosting.company» или как стать хост...

TINKOFF-INVEST. Разработка торгового робота на JAVA. Часть 2 Как же быстро летит время... Прошло почти 2 месяца с момента публикации моей первой статьи о работе с TINKOFF INVEST API – Разработка торгового робота на JAVA. Часть 1, в которой мы начали свое знакомство с инструментарием автоматизации торговли, предоставляемым брокеро...

Чем заменить YouTube на Android TV YouTube — уникальная платформа, на которой собрано множество интересных видео. Наверное, на все случаи жизни. В официальном приложении YouTube есть, в общем-то, все необходимые функции. Правда, YouTube для Android TV — не самое гибкое приложение и подвисает даже...

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

Представляем онлайн-самоучитель по Kubernetes и деплою с werf для разработчиков Рады представить новую версию онлайн-самоучителя по werf, нашей CI/CD-утилите с открытым кодом!Общая идея самоучителя — познакомить разработчиков с Kubernetes, показав на простых приложениях (готовы примеры для Ruby on Rails, Node.js и Laravel), как можно развертывать прилож...

Уж+ёж: реактивные компоненты в сервлетном окружении (2/3) В предыдущей заметке было показано несколько подходов к управлению зависимостями в «гибридных» приложениях (использующих части сервлетного и реактивного стеков), а также вариант реализации универсального механизма для поддержки MDC-меток в логах. А в этой заметке речь пойдёт...

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

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

Как писать посты в стиле Артемия Лебедева? Подробный анализ телеграм-канала и кое-что еще Дисклеймер номер один: 18+. В этой статье присутствует ненормативная лексика, так как автор текстов, которые мы анализируем, не стесняется в выражениях. Мы не хотим никого задеть или оскорбить чьи-то чувства, присутствие мата объясняется лишь объектом нашего исследования. ...

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

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

[Перевод] Состояние PHP в 2021 году: тенденции в разработке и прогнозы развития В 2021 году благодаря его новым фичам и возрастающей потребности в безупречно проработанном цифровом взаимодействии с клиентами PHP продолжал жить и здравствовать. Что же ждет PHP в будущем?В этой статье мы рассмотрим текущие реалии PHP landscape 2021, ответим на некоторые о...

Как открыть HEIC на Android и перевести в JPG Apple всегда стремилась сделать iOS до известной степени непохожей на Android. Поэтому компания из Купертино создавала свои приложения и сервисы заведомо несовместимыми с операционкой своего главного конкурента. Что и говорить, если даже сообщения от пользователей Android в...

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

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

Получите работу в Альфа-Инвестициях за 24 часа! One Day Offer для iOS/Android-разработчиков 19 марта Расширяем команду разработчиков в Альфа-Инвестициях – одном из приоритетных проектов Альфа-Банка. Нашим мобильным приложением пользуется более миллиона человек, и мы хотим сделать для них лучшее решение на рынке. Ищем коллег, которые усилят команду, и чтобы не тратить время ...

OAuth в мобильных приложениях Привет! Меня зовут Максим, я занимаюсь мобильной разработкой в KTS.Ни один сервис не обходится без логина. Часто в мобильных приложениях требуется интегрировать вход через сторонние соцсети — например, зайти через Google или VK. А при обучении мобильной разработке используют...

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

Микросервисный фреймворк Flogo — собираем систему из кирпичиков Для создания микросервисной архитектуры на Go может использоваться фреймворк Flogo, основанный на идеях потока сообщений/данных между микросервисами и реакции на события. В этой статье мы рассмотрим его возможности на примере простой задачи обработки данных телеметрии. Читат...

Elementary: новый взгляд на архитектуру Flutter-приложений Elementary — это архитектурный пакет, который создали в Surf на основе опыта разработки приложений на Flutter и лучших практик современной разработки. Решение позволяет чётко разделить слои согласно ответственностям, сделать код прозрачнее, а тестирование проще. На примере р...

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

Сеансы продуктивной работы в Windows 11: опыт использования спустя два месяца «Сеансы продуктивной работы» (Focus Sessions) — одна из множества значимых функций Windows 11, которая является частью нового системного приложения «Часы». По крайней мере Microsoft выделяет её, рассказывая про свою новоиспеченную версию ОС в рекламных роликах, в социальных...

Почему Вы так не любите Chrome? Привет!Я много лет посещал Хабр в режиме "рид онли", но сегодня, читая очередную новость про новую версию Google Chrome 96 и комментарии к ней, я всё же решился на написание статьи.Я работаю в в офисе достаточно крупной Кампании, и для просмотра видео на ютуб по работе посто...

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

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

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

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

Как мы собирали компьютер для российского инженера-проектировщика Мне действительно нравится собирать компьютеры. Чувствуется какая-то магия, когда куча железок превращается в умную полезную машину. И вот это предвкушение новой скорости и новых возможностей… Ух! 25 лет практикуюсь, и все не надоедает.Но в комментариях к моим статьям и роли...

K8S для начинающих. Первая часть Технологический прогресс не стоит на месте, особенно если это касается области IT. Еще в 2014 году, когда Google открыл исходный код проекта Kubernetes, который вобрал в себя лучшее из Borg и Omega - внутренних систем Google, его мало кто знал и использовал. Но прошло 7 лет ...

Сбербанк Онлайн удалили из App Store. Что теперь делать Сегодня, 12 апреля, Apple удалила из App Store приложение Сбербанк Онлайн, как и было обещано в конце прошлой недели. Об этом Сбер официально сообщил у себя в телеграм-канале. Теперь мобильный клиент больше нельзя скачать на iPhone традиционным способом. Несмотря на это он ...

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

Создание Single Page Application на Marko.js — ZSPA Boilerplate В данной статье вы познакомитесь с Marko.js актуальной на данный момент пятой версии. Пару лет назад на Хабре уже была отличная статья (за авторством apapacy) о том, как работает этот замечательный реактивный фреймворк, разработанный где-то в недрах eBay.В своем комментарии ...

Что нужно знать про Postman: максимально коротко о Mock Servers, Flow и Visualize На просторах интернета часто встречается информация о платформе Postman. Большинство статей включают информацию о переменных, различных скриптах и автоматизации при тестировании. Но на самом деле Postman – это не только инструмент для тестирования, а платформа, которая помог...

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

Xiaomi Mi 11 ограничивает работу некоторых приложений Снижение производительности на основе приложения может быть более распространенным явлением. Джон Пул соучредитель Primate Labs и создатель Geekbench обнаружил, что результаты Xiaomi Mi 11 заметно ниже с измененной версией теста. Результаты показывают снижение производительн...

WEKA. Руководство по использованию Начав изучать библиотеку Weka я обнаружила, что в Интернете очень мало информации о ней на русском языке – как с ней работать и как ее использовать. Эта статья будет вводной для знакомства с библиотекой. Читать далее

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

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

Как проходит интервью мобильных разработчиков в Тинькофф Привет! Я Максим Коробов, руководитель отдела разработки мобильного приложения Тинькофф. В статье расскажу о том, как проходит отбор кандидатов на вакансии разработчиков iOS и Android, что спрашивают на первичном и техническом интервью и какие задачи предлагают решать во вре...

А вы знаете, где используется Haskell? Всем привет! Мы хотим продолжить серию постов на тему “где используются эти ваши странные языки программирования”. В прошлый раз мы рассказали про Лисп, а сегодня продолжим разговор про функциональные языки и обратим внимание на Haskell.  Он является основным языком раз...

Microsoft выпустила бета-версию клиента OneDrive для Windows on ARM и Mac с Apple M1 Microsoft объявила о начале тестирования клиента OneDrive для устройств под управлением Windows on ARM, а также компьютеров Mac на базе ARM-процессоров Apple M1. Нативная версия клиента должна обеспечить более высокую производительность работы по сравнению с x86-версией, ра...

В чем риски перевода крупной организации на опенсорс Привет, Хабр! Меня зовут Дмитрий Комиссаров, я член совета директоров и основатель МойОфис. За годы работы в ИТ я не раз наблюдал, как перед разработчиками встает дилемма: задействовать СПО или написать весь код самостоятельно «с нуля»? На этот вопрос нет универсального от...

Как я тестировал Android-приложения с помощью Samsung Remote Test Lab Меня зовут Игорь. В прошлом году, параллельно с учебой в 11 классе, я проходил обучение в “IT-Школе Samsung” на базе томского IT-Куба. В конце курса обучения я одержал победу во Всероссийском конкурсе компании Samsung по разработке мобильных приложений «IT Школа выбирает сил...

Названы призеры ЛАНИТ Product Manager 2.0 В рамках второго набора корпоративного акселератора Центр инноваций ЛАНИТ успешно состоялось отчетное мероприятие, за время которого жюри оценило презентации участников и выявило четырех победителей. Целью ежегодного проведения корпоративного акселератора стал поиск собствен...

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

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

Чем заменить приложение Mi Fit для Mi Band Фитнес-браслеты стали невероятно удобными за счет того, что имеют своей кроссплатформенности, а также повышенной кастомизации. Если думаете, что Mi Band можно настроить исключительно с помощью стандартного приложения Mi Fit, то сильно ошибаетесь — существует сразу нес...

Как обнулить карму на хабре Статья больше не о том как это сделать, а о предложении к усовершенствованию UI/UX, потому как делается обнуление довольно просто: в своем профиле жмешь на кнопку Whois (это оказывается кнопка) и в выпадающем списке выбираешь "Обнуление кармы". Обнуление происходит не сразу,...

Как открыть Заметки с iPhone на компьютере Владельцы техники Apple, в отличие от владельцев устройств под управлением Android или Windows, гораздо чаще пользуются нативными приложениями, которые предлагаются из коробки. Родной Safari, Музыка, FaceTime, ну и конечно же, Заметки. Знаю, что многие пользователи iPhone д...

Huawei показала удобные платежи с помощью «Кошелька» на Huawei Watch 3 в России — с поддержкой Mastercard и Visa Компания Huawei провела сегодня в Москве конференцию Huawei Developer Day. И в рамках конференции была торжественно проведена первая первая в России бесконтактная оплата умными часами серии Huawei Watch 3 (обзор) с помощью приложения «Кошелёк».  Н...

Arbitrary Precision — удобная C++ библиотека для работы с длинными целыми числами Вопреки тому, что авторских C++ библиотек для длинных целых очень много, мне было трудно найти решение, которое было бы простым в использовании на всех этапах (интеграция зависимости, разработка, релиз с зависимостями). Авторские библиотеки имеют одну или несколько проблем р...

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

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

Как устроен счетчик ссылок в Swift Мы в iOS команде Vivid Money стремимся глубже понимать инструменты, которыми пользуемся каждый день. Один из таких – это язык программирования Swift. Он состоит из нескольких частей: компилятора, стандартной библиотеки и рантайма. Компилятор преобразует код понятный для чело...

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

Московские фотолабы vs принтер Epson: сравнение качества печати (и фотолабов на честность) Идея зрела очень давно и вот, наконец, дозрела. Как вам такой эксперимент: сравнить отпечатки, полученные в домашних условиях на одном из фотопринтеров Epson с отпечатками, заказанными у сервисов коммерческой фотопечати. Это, по большей части, скорее вопрос чистого любопытст...

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

Обсуждение: сможет ли апгрейд сорокалетнего стандарта поменять подход к записи музыки В прошлый раз мы рассказали о формате MQA, цель которого — предоставить студийное качество звукозаписи при меньшем размере файлов. Сегодня продолжим тему стандартов и поговорим о протоколе MIDI. Точнее, о его обновлении, вышедшем почти 40 лет спустя. Обсудим изменения и мнен...

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

ЦРУ? ФСБ? Нет мой друг… Маркетологи. ADINT или как за тобой следят через рекламу DISCLAIMER: Данная статья написана в ознакомительных целях и не является руководством к неправомерным действиям или обучающим материалом для сокрытия правонарушений.В качестве небольшого предисловия… Каждый из нас пользуется смартфоном. Это просто факт. И каждый из нас замеч...

Шейдеры в Unity — это не сложно. Часть 3 — добавляем блеска Всем привет! Благодарен всем за замечания и комментарии к предыдущим статьям. Благодаря всем нам мы наполняем интернет доступными знаниями и это действительно круто.Сегодня продолжаем разбираться с шейдерами, а именно с работой с освещением. В прошлой части мы разобрали тип ...

[Перевод] Магазины приложений до эпохи AppStore Как-то так сложилось, что Apple и её продукцию или хвалят, или ругают. В этой статье мы не будем поддерживать ни одну из сторон, а просто расскажем о том, как выглядели магазины приложений до появления «яблочной» экосистемы, а также Google Play и прочих. Читать далее

Мой друг Netmiko. Часть 3: один скрипт для разных устройств Huawei Мы уже разобрали в прошлых частях как накатить на сетевые устройства Huawei список команд из внешнего файла. И это работает, если у нас сеть состоит из одинаковых устройств. Конечно, в реальной практике такое встречается редко. В этой работе мы рассмотрим как использовать ра...

Приложение Xbox для Windows теперь позволяет устанавливать игры в любую папку на ПК Стало известно, что приложение Xbox для ПК теперь позволяет устанавливать игры из магазина Microsoft Store в любую папку, доступ к которой не ограничен пользователем. Тестирование этой функции началось в прошлом году, а теперь она добралась до всех пользователей Windows 11 и...

В Netflix запустили «суперлайки» Команда потокового видеосервиса Netflix объявила о запуске новой функции, которая призвана сделать рекомендации более точными. Для пользователей стала доступна функция Two Thumbs Up («Два пальца вверх» или «суперлайк») в дополнение к уже привычн...

Pega vs Camunda: выбор между платформой и библиотекой при создании BPM-решения Определение подходов к автоматизации бизнес-процессов и связанный с этим выбор конкретных технологий, особенно в крупной организации, - комплексная задача, которая требует учитывать экономические, организационные, функциональные, технические и другие аспекты. Сегодня на рынк...

История одной случайной поделки Доброго всем дня!Хотелось рассказать еще про одну самоделку, которая родилась ну прям совершенно случайно. Так уж получилось, что работал я с одним очень весёлым и крайне креативным коллегой, который постоянно что-то мастерил для дома. Многое из того, что он делал я бы и бли...

[Перевод] Надежность как фича продукта Толчком к появлению SRE было рассмотрение надежности продукта как одной из его функциональных возможностей. Однако последнее время внимание в основном уделяется SLO, бюджетам на ошибки (error budget), организации промышленной эксплуатации и другим SRE-практикам, и многие заб...

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

Что случилось с faker.js? При создании нового проекта я попытался использовать свою любимую библиотеку генерации случайных данных facker.js. Установилась версия [email protected].Однако при попытке использовать привычные методы библиотеки выскакивала ошибка. Начав разбираться в проблеме, я перешел на gith...

Переводы всех статей Пола Грэма на всех языках (210+) Пол Грэм — один из самых уважаемых людей среди ИТишников, основателей и инвесторов. Он первоклассный программист (написал два языка программирования), хакер, создатель дерзкого акселератора Y Combinator, философ. Своими помыслами и разумом Пол Грэм врывается в широкий сп...

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

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

Ряд способов для передачи голоса на расстояние, с помощью ESP32/Arduino Источник картинки: silenthollywood.com Использование микроконтроллеров ESP32/Arduino позволяет создавать достаточно любопытные проекты, среди которых особняком стоят проекты для передачи голоса. Например, создать собственную рацию, которая может быть весьма тонко настроена...

Мнение: Чего не хватает в Apple Watch Мне кажется, что Apple Watch — один из лучших продуктов компании Apple за последние 5 лет. Во всяком случае ни один из других гаджетов не дарил мне кардинально нового опыта использования. С момента покупки прошло уже много времени, а я до сих пор не могу нарадоваться....

База знаний wiki сохранит внутренние документы компании — как сделать ее удобной для пользования Привет, Хабр! Я Вика Левена, тимлид продуктовой аналитики AGIMA. В этой статье я расскажу, как сделать хранилище для сотен документов, созданных десятками людей, удобным и работающим инструментом, а главное — популярным среди коллег. Читать далее

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

Как детей учат эмоциональному интеллекту Очевидная первая мысль была такая: EQ в России? Детям? Серьёзно? У нас тут по стране ходит очень дофига взрослых без понимания, как вообще разговаривать ртом — а тут курс для детей. Пока мы с делали сервис для назначения встреч-консультаций, к нам вдруг пришла детская школ...

Смартфоны Samsung Galaxy S22 отказались от приложения Samsung Messages для SMS. Вместо него установлено приложение Google Messages Источники сообщают, что смартфоны серии Samsung Galaxy S22 поставляются с предустановленным сообщением Google Messages для обмена сообщениями по умолчанию на американском рынке. Пользователи Samsung Galaxy могли и раньше установить приложение Google Messages на свои уст...

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

Авторизация для бедных или как сделать RBAC для REST API с помощью OPA Когда речь заходит про права доступа в приложении, то из этой ситуации появляется два результата:Либо в коде приложения появляются привязки к неким ролям/scope’ам;Либо разработчик обрастает бородой и начинает сыпать фразами вроде abaс, xacml и матрица доступа; Если вам ...

«Озарк» от Netflix: знаем дату выхода 2 части 4 сезона Если точнее, то называют 29 число. Интересно, что с дебюта первой части от 21 января прошло всего два месяца. Читать полную статью

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

Кто тебя за Цанцзе тянул В прошлом году в СМИ начали активно говорить о том, что совсем скоро у Huawei появится собственный язык программирования Cangjie (читается как «Цанцзе»). Так вот, кажется, ждать его появления осталось совсем недолго. Читать далее

03. С прозрачными воротами и яркою звездой Предыдущие статьи о реверсе данных автомобильных навигаторов Siemens/VDO Dayton CARMiN:Реверс черного тессеракта01 Сшей красное с красным, желтое с желтым, белое с белым. Наверняка будет хорошо02. Я уже даже не вижу код. Я вижу блондинку, брюнетку и рыжуюПолучив в прошлой ст...

Улучшение Visual Studio Code для новичков VSCode — Самый популярный редактор кода среди веб-разработчиков. Вы можете использовать его с нуля, однако для опытных программистов его базовых функций недостаточно. Здесь я описал, то как сам докрутил этот редактор под свои потребности. Я фронтенд-разработчик, но также ис...

Программа для школьников от ЛАНИТ и “1С” получила одобрение Минцифры России Компания “Мобильное Электронное Образование” (проект совместно разработанный “1С” и ГК ЛАНИТ) создала образовательные курсы для обучения российских школьников основам программирования. Программа дает возможность детям бесплатно осваивать актуальные и перспективные профессии....

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

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

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

Вангеры 3D: пример использования Emscripten в Rust Вангеры в 2022 году продолжают удивлять, прежде всего людьми которые когда-то полюбили эту игру, но сегодня не забывают и вкладывают много сил, делая её лучше, современнее. Оригинальная игра получила обновление с поддержкой полноценного 3D, да не абы какого, а кросс платформ...

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

Ошибка App Store: не скачиваются приложения на iPhone, iPad и Mac Проблемы с техникой Apple — явление редкое. За годы использования этих устройств мы настолько привыкаем к отсутствию лагов и ошибок, что когда они появляются, негодованию нет предела. На днях я столкнулся с тем, что приложения в App Store попросту перестали загружатьс...

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

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

CSS в Oxygen XML для гуманитариев Всем привет!Меня зовут Татьяна и я старший технический писатель в компании Orion Innovation. В нашей уже немаленькой команде мы используем довольно обширный стэк инструментов и технологий, но наиболее востребованы и удобны в работе - XML-редакторы с поддержкой DITA архитекту...

Module Federation: простая загрузка динамических модулей Всем привет! Меня зовут Евгений, я работаю frontend-разработчиком в платформенной команде. Моя задача — помогать другим frontend-разработчикам выполнять их задачи эффективнее. Мы в Delivery Club больше года назад внедрили подход с микрофронтендами, о чём писали здесь. Вы мож...

Лучший сотрудника банка. Часть 3 — Головной офис изнутри Если вы не читали прошлые статьи, очень рекомендую начать с них:Лучший сотрудник банка. Часть 1Лучший сотрудник банка. Часть 2 — Мама, я в Головном ОфисеЯ счастлив! Моя мечта сбылась - я попал в крутой офис, мне дали свободу в разработке, и теперь я могу не 30% времени уделя...

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

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

Как я стал «лицензиатом» ZOON. Очередной отрицательный отзыв о “премиум” разводилове zoon Наверное, все знают Zoom — программу для организации видеоконференций, которую разработал умница Эрик Юань из Zoom Video Communications. Но не все знают Zoon — "инновационный комплексный b2b-инструмент для привлечения клиентов и управления репутацией в интернете", которым ко...

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

Трекер привычек и 3 простых правила для их закрепления Чуть больше года назад я решил первый раз в своей жизни закрепить полезные привычки. Полный мотивации и намерений изменить свою жизнь, каждый день я вставал в 6 утра, занимался спортом, читал книги по 30 минут и даже начал медитировать. Пару дней все было в порядке, я дейст...

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

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

WoG уже 20 лет… Все это уже история... И я даже писал об этом (не на habr). Поэтому, возможно, кому-то это знакомо. Не думал, что тут стоит писать подобное, но, вижу, что фанаты Героев 3 (и вообще серии HoMM) тут очевидно присутствуют, поэтому рискну... Время: 20 лет назад. Место: Ээээ… ...

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

WhatsApp станет удобнее для использования WhatsApp для iOS начал тестировать новую страницу с контактной информацией. Это должно сделать приложение удобнее.

Альтернативный подход к динамическим окружениям: использование Octopod Как Octopod помогает сделать динамические окружения доступными для всехПривет, Хабр! В этой статье я хочу рассказать как мы в Typeable используем динамические окружения (review- или preview-окружения) в нашей работе, какие проблемы нам удалось решить, почему и как мы применя...

Мобильная разработка: Cross-platform или Native Всем привет! Я Игорь Веденеев, руководитель мобильной разработки в AGIMA. Поговорим немного о нативной и кроссплатформенной разработке. Раньше я по большей части скептически относился ко второй: не устраивало качество конечных приложений в первую очередь. Однако за последний...

Улучшаем дизайн React приложения с помощью Compound components Сегодня я хочу рассказать про один не очень популярный но очень классный паттерн в написании React приложений - Compound components.Что это вообще такоеCompound components это подход, в котором вы объединяете несколько компонентов одной общей сущностью и общим состоянием. От...

Потратил 1 000 000 $, чтобы сделать свой переводчик. Продолжение истории Начало этой истории тут:https://habr.com/ru/post/492524/ ВступлениеЯ занимаюсь переводчиками с 2012 года, и эта тема выбрана не случайно. Еще тогда было замечено, насколько сильно переводы могут влиять на показатели бизнеса. В нашем случае поддержка всего 15 языков вмес...

Ну вылитый Шарик! Google поможет найти «двойника» вашего питомца на мировых шедеврах Компания Google объявила о запуске новой забавной функции в фирменном приложении Google Arts & Culture (Google Искусство и культура).  Помимо уже доступных ранее «арт-селфи», которые позволяли найти своих двойников на мировых шедеврах, теперь польз...

Изучаем протоколы со Scapy Статья расскажет, как можно использовать Scapy для создания пакетов UDP и TCP протокола, так же попробуем реализовать взаимодействие по сети, отправив короткое сообщение с использованием каждого из протоколов. Читать далее

iPhone провёл в рабочем унитазе 10 лет и остался в довольно хорошем состоянии Жительница Мэриленда, США рассказал о том, как она нашла свой потерянный в 2012 году смартфон iPhone. Бекки Бекманн достала свой iPhone из унитаза через десять лет после того, как он исчез. Несмотря на попытки найти устройство, Бекманн не смогла точно понять, что случил...

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

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

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

3D-печать для «чайников» от «чайника» Недавно я стал владельцем 3D принтера, до этого практически ничего не зная о 3D печати, поэтому и решил поделиться своим опытом с такими же «чайниками», людьми, далекими от этой технологии. Моя статья предназначена именно и только для таких людей; советы же “3D печатников» с...

Девять кругов объективности: Пешка — это не фигура? (нет) Буквально на днях на Хабре вышло две статьи про шахматы от @andyshark1974. Первая называлась "Изучаем пешку (часть 5)" и была, собственно, про пешку. В самой статье, Андрей назвал пешку фигурой и в комментариях сразу появилось уточнение, что пешка - не фигура. Автор статьи о...

Что нового в react-router v6 Совсем недавно состоялся релиз 6-ой версии react-router. Вообще создатели react-router часто меняют подходы, используемые в библиотеке, но в этот раз они объединили лучшее, что было в прошлых версиях.В статье приведен краткий обзор того, что поменялось. Читать далее

Изучаем язык ассемблера на примере TSR программы под MS-DOS. Часть 1 Эта серия статей посвящена изучению и практике программирования на языке ассемблера.Материал рассчитан на новичков в ассемблере, студентов, которым пришлось столкнуться с «динозавром» в виде MS-DOS, и может быть интересен тем, кто хочет нем...

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

Blazor: Нужен ли нам .Net в вебе? Всем доброго времени суток, меня зовут Михаил. Я .net разработчик в компании Orion Innovation. Сегодня речь пойдет про наш опыт создания веб приложения при помощи Blazor. Обсудим с какими проблемами мы столкнулись при разработке и почему вообще решили использовать Blazor.Ста...

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

Топ-10 ошибок в C++ проектах за 2021 год На улице мороз, ёлка наряжена, мандарины разложены. Дело идёт к Новому году, а значит — время рассмотреть самые интересные срабатывания, найденные C++ анализатором PVS-Studio в 2021 году. Читать далее

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

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

Сомнительная популярность: фейковый «Россграм» установили уже более 100 тысяч раз Команда «Россграма», широко разрекламированного отечественного аналога Instagram (запрещен в РФ; принадлежит признанной в РФ экстремистской компании Meta), только вчера показала приложение в работе, однако установить официальное приложение пока нельзя. Попу...

Как искали в 90-х и куда исчезли российские поисковые системы? Если сегодня кто-то говорит «поищи в интернете», обычно подразумевается «Яндекс» или Google. Но так было далеко не всегда. Во второй половине 90-х ассортимент поисковых систем был намного шире: в зарубежном интернете успешно работали AltaVista и Yahoo, Lycos и WebCrawler, ...

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

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

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

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

[Перевод] Дзен Nim 1. Копирование плохого дизайна — плохой дизайн.2. Если компилятор не может рассуждать о коде, то и программист не может.3. Не стой на пути у программиста.4. Перенеси работу на этап компиляции: программы запускаются гораздо чаще, чем компилируются.5. Настраиваемое управление ...

Сервер «1С: Предприятие» на Linux: настройка доменной авторизации В данной статье мы рассмотрим настройку сервера «1С:Предприятие» для использования Microsoft AD в качестве системы авторизации клиентов 1С. Статья представляет собой описание успешно внедрённого решения, за основу брались различные статьи из открытых источников, в частн...

Погружение в Charles Proxy Привет, Хабр! Статья была ранее опубликована в блоге компании, который сейчас удален. Перевыкладываю, так как считаю, что статья не потеряла актуальность на текущий момент времени. При приёмке задач мы уделяем большое внимание проверке клиент-серверного взаимодействия. Опы...

Kaggle titanic dataset. Анализ данных с помощью SQL запросов Не смотря на то, что Python был бы предпочтительным инструментом для исследовательского анализа, я хотел посмотреть, смогу ли я провести весь исследовательский анализ с помощью SQL-запросов. Моя цель - показать, насколько сильно может помочь SQL для рабочего процесса.Хотя SQ...

Обнаружение препятствий на OpenCV Моя первая статья на Хабре, не судите строго, надеюсь содержание будет как минимум интересно, а если окажется кому-то полезным - буду просто счастлив!Не так давно, ко мне в руки попала модель радиоуправляемого катера с мощным бесколлекторным двигателем. Быстро наигравшись с ...

Автоматизируем iOS-сборку c помощью Jenkins Всем привет! Меня зовут Иван Чечиков, я QA-инженер в МТС Digital, работаю в проекте WASD.TV. В этой статье я расскажу о своем способе автоматизации iOS-сборки в TestFlight через Jenkins. С помощью такого метода можно настроить автоматизацию как локально, так и на удаленной м...

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

Как снова начать читать книги, а не ленту. Часть 1 За последние полгода я прочитала около 20 книг и перечитала ещё десяток старых и любимых. Это не то чтобы очень много, но в пять раз больше, чем я прочитала за полгода перед этим.Зачем вообще читать книги, а не ленту, лонгриды или смотреть сторисы? Сейчас даже довольно сложн...

Внедрение агентов и конфликт с антивирусами — как мы сделали собственную Deception-систему Уже больше двух лет мы разрабатываем Bastion Security Platform. В прошлой статье мы рассказали, как научились создавать дешевые сетевые ловушки в больших количествах. Но ловушки — всего лишь базовый компонент эффективной сетевой защиты. Сегодня мы расскажем, как сделали из н...

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

Новые АЭС в России и рост доли атома до 25% В этой статье я расскажу о том какие новые атомные станции и энергоблоки планируется построить в России в ближайшие десятилетия. Для их строительства есть несколько причин. Во-первых, парк российских АЭС устаревает. Уже выводятся из эксплуатации реакторы прошлых поколений, т...

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

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

Android Studio. Kotlin. Сохранение файла в общедоступной папке Download В работе над своим проектом больше всего времени я убил на то, чтобы разобраться, как правильно сохранить файл в общедоступную папку, например, Download. Мне не удалось найти четкого и ясного объяснения в интернете. Собирал информацию по частям и доходил до результата методо...

Язык программирования C∀(CForAll) Мой интерес к дизайну языков программирования приводит меня иногда к интересным, но почти неизвестным в широких кругах проектам. Один из таких проектов - язык C∀ (CForAll), разрабатываемый Университетом Ватерлоо. C∀ является расширением ISO C и обеспечивает обратную совмести...

Что делать, если Айфон вибрирует без уведомлений iPhone — достаточно высококачественный смартфон, с которым практически не возникает проблем, но, как и все современные устройства, время от времени он начинает чудить. Если заглянуть в Гугл, то можно найти множество разных «болячек». Лично я крайне редко ста...

Вы хочете песен? Их есть у меня! (Poison Message #2) Самое время рассмотреть “достаточно хороший” алгоритм для борьбы с Poison Message. Здесь будет уже специфика RabbitMQ и к Apache Kafka она не применима, точнее применима только частично - но это уже совсем другая история. Читать далее

OpenVPN от Ubiquiti до Mikrotik Рано или поздно в любой системе начинают появляться какие-то новые компоненты, с которыми раньше не приходилось сталкиваться. Так и в моем случае в парке удаленных маршрутизаторов Mikrotik под моим управлением появилось некоторое количество устройств Ubiquity, которые тоже т...

Тернистый путь BlackBerry OS 10 Всем привет. Давненько не было статей от меня. Вот, решил исправиться. Сегодня хотел бы показать вам тот тернистый путь развития, через который прошла BlackBerry OS 10. Читать далее

История жестких дисков, часть III — Миниатюризация Жесткие диски знакомы всем пользователям, без них сложно представить современный компьютер. Конечно, SSD вытеснили жесткие диски в сценариях, где требуется максимальная производительность, например, для загрузочного раздела ОС. Но если нужна максимальная емкость, то без HDD ...

Java 17 для тех, кто не следил. Часть 1 Уже вышла Java 18, но для всех, кто сидит на LTS, по-прежнему остаётся актуальной версия 17. Такие люди могут не отслеживать постоянно фичи каждой новой версии, а спокойно заниматься своими делами и иногда навёрстывать сразу всё. И как раз на такое «навёрстывание» рассчитан...

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

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

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

«День с̶у̶р̶к̶а̶ Redux» — как бороться с рутиной, применяя автоматизацию "Ух-ты! Какая интересная задача! И оценка времени на разработку хорошая! ..." 2 часа спустя: "Какой же это ужас, ещё 10 редьюсеров создать, ещё 10 раз описать зависимости состояний. Типы, компоненты... Сколько же бесполезной рутины... Вот бы можно было писать только декларат...

Полуструктурированные данные в Аналитических Хранилищах Привет! На связи Артемий – Analytics Engineer @ Wheely.В последние годы явным стал тренд на анализ слабоструктурированных данных – всевозможных событий, логов, API-выгрузок, реплик schemaless баз данных. Но для привычной реляционной модели это требует адаптации ряда новых...

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

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

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

Разбираемся с библиотекой лексического анализа ANTLR4 У нас в SberDevices разрабатывается платформа по управлению рекомендациями, которая взаимодействует с разными ML-движками. Со временем их станет много, и, когда пользователь умных устройств Sber будет запрашивать контент – искать фильмы, музыку, спрашивать о чём-то виртуальн...

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

Какую СУБД выбрать и почему? (Статья 2) После публикации статьи “Какую СУБД выбрать и почему? (Статья 1)” ко мне поступили справедливые комментарии о том, что я не упомянул такие типы СУБД, как Time Series и Spatial. В этой статье я кратко опишу их и добавлю еще два типа — Search engines и Object-oriented (объект...

Эволюция UI-тестов в iOS-приложении Test-driven development — по-прежнему спорная тема. Часто встречается обоснованное, в общем-то, мнение, что такая разработка нужна только большим компаниям, потому что только у них достаточно ресурсов для создания и поддержки большого количества тест-кейсов. Но сегодня на п...

… И убрать 99 из 100. Как разгрести последствия мозгового штурма Как-то раз я поставил себе задачу придумать сто тем для диплома. О чем и написал в этой статье. Время расплаты. Сейчас я расстанусь с большинством из них. Если вам лень читать все, хотя бы ознакомьтесь со списком в конце и скажите, что думаете о нем. Вполне возможно, что им...

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

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

Что делать, если наушники не подключаются к Apple Watch Я уже не один раз говорил, что возможность подключения наушников к Apple Watch — одна из моих любимых фич умных часов от Apple. Это удобно, потому что можно без проблем оставить смартфон дома и пойти куда глаза глядят, не думая о связи с внешним миром. Музыка в ушах, ...

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

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

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

Как разработать микросхему, от идеи до результата. Часть 3. Схемотехническое представление и Layout В прошлой статье мы установили все программы, а в этой части, мы наконец приступим к практической части. Готовьтесь, эта часть будет очень большой. Для тех кто пропустил прошлые части — ссылки ниже. Как разработать микросхему, от идеи до результат...

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

На каких бесплатных инструментах строить Observability и зонтичный мониторинг: ELK vs Graylog vs Grafana Loki vs Monq Сами по себе логи, трейсы, метрики - это очень узкие артефакты состояния нашего объекта наблюдения и обслуживания. Для понимания общей картины нужен взгляд сверху, сбор всех важных сигналов в одну систему и работа с большими данными в ней. Зонтичный подход близок по своим це...

Как мы сделали фильтр «бабушкин ремонт» Найти и выбрать квартиру в современном мире — что может быть проще? Берёшь смартфон, скачиваешь приложение и находишь подходящий вариант. Так же просто разместить объявление о продаже или аренде недвижимости. Пользователи смотрят десятки квартир в поисках подходящей — качест...

Чем заменить WhatsApp, если его заблокируют в России Роскомнадзор уже заблокировал Instagram и Facebook в России, теперь туча нависла над YouTube. Если перспективы видеохостинга туманны (да и заменить его вполне реально), то с WhatsApp пока нет никаких проблем. Но, как вы уже поняли, в 2022 году все может случиться. Тем не ме...

Топ вопросов работодателю от Android-разработчика Представьте: вы на собеседовании, только что закончили отвечать на кучу вопросов и были на высоте. Наконец наступает ваш черед задавать ваши вопросы работодателю. Не знаю как вы, а я в таких ситуациях часто начинал теряться и забывал самое важное, о чем стоило бы спросить. О...

Бабушки, аудиты и брутфорс — истории о безопасности Wi-Fi-сетей Привет, Хабр! Мы в CTI 20 лет строим и тестируем беспроводные сети. Время от времени сталкиваемся с забавными ситуациями, которые показывают серьёзную уязвимость в клиентском Wi-Fi. Причём о некоторых вещах мы узнали только в процессе работы. Всё это совершенно неочевидные м...

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

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

Ускоряем hugo на 20% простым изменением в пакете reflect Найти значительное узкое место в производительности стандартной библиотеки или зрелого приложения — это редкость. Я был удивлён, когда в top10 списке CPU-профиля hugo при сборке digitalgov.gov на первой позиции находился метод reflect.Type.MethodByName(). flat flat% ...

Что купить вместо AirPods, если нет денег Цены на товары от Apple растут с каждым днем — в то же время их становится все меньше и меньше из-за прекращения поставок в Россию. Читатели нашего Telegram-чата постоянно интересуются: что купить вместо AirPods? Кажется, сейчас этот вопрос актуален как никогда ранее....

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

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

Проверяем Архитектурные стили на движке Factorio (часть 1) Добрый день всем, дорогие читатели!Если вы хотя бы чуть-чуть имели неудачу пообщаться с Архитекторами, то знаете, что в их понимании не существует идеальной архитектуры ПО и вся их работа состоит во взвешивании плюсов и минусов того или иного Архитектурного стиля. И поскольк...

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

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

Использование Gatling. Введение Привет! Мы — команда тестирования производительности в Тинькофф, и мы любим инструмент Gatling. В цикле статей мы расскажем об использовании Gatling и дополнительных инструментов, упрощающих разработку скриптов.Возможно, вы уже читали наши статьи про Gatling: первую и вторую...

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

О том, как мы с сочувствием смотрим на вопрос на StackOverflow, но молчим Иногда на сайте stackoverflow.com мы видим очередной вопрос, как искать баги определённого типа. И знаем, что решением проблемы может стать использование PVS-Studio. К сожалению, мы вынуждены молчать, иначе ответ будет интерпретирован как неприкрытая реклама. Это статья про...

10 лет Oil Rush: как не сгореть, создавая игру на собственном движке В этом году Oil Rush, нашей первой игре на собственном движке, исполнилось 10 лет. Основной профиль деятельности нашей компании — не совсем игры, но разработка Oil Rush помогла не только продемонстрировать технологию UNIGINE во всей красе, но и сделать ее еще лучше.Три года,...

Flutter: автоматизация UI тестирования Мы — команда мобильного проекта FL.ru. В своей статье хотим познакомить вас с Flutter Driver и рассказать об автоматизации UI тестирования мобильных приложений с помощью данного инструмента. Читать далее

Путешествие по камням, или Как мы скрестили криптошлюзы S‑Terra с Ansible для автоматизации конфигурирования устройств Однажды моей команде довелось организовывать несложную кустовую схему шифрования для компании, у которой было более 2,5 тысяч офисов продаж и около ста региональных центров. Всё техническое описание решения легко излагалось в таблице Excel размером 2 800 строк на 25 столбцов...

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

[Перевод] Rustenstein 3D: программируем, как будто сейчас 1992 год Дважды в год компания NextRoll организует мероприятие Hack Week, на котором сотрудники на неделю берутся за проект по своему выбору. Это превосходная возможность для экспериментов, изучения новых технологий и объединения с людьми из всех отделов компании. Узнать о Hack Week...

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

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

Хакеры освоили метод заражения ПО на стадии исходного кода Как пишет D-Russia со ссылкой на The Record, злоумышленники эксплуатируют т.н. двунаправленные управляющие Unicode-символы внутри комментариев исходного кода. Такие символы нужны, чтобы "объяснить" алгоритму, как отображать текст: слева направо или справа налево, ч...

“Сетевая Академия ЛАНИТ” провела проект для ИТ-специалистов Системного оператора Единой энергетической системы В 2021 году в рамках проекта “Сетевой Академии ЛАНИТ” (входит в ГК ЛАНИТ) было проведено повышение квалификации ИТ-специалистов Системного оператора Единой энергетической системы. Для решения поставленной задачи “Сетевая Академия ЛАНИТ” создала курсы, способствовавшие освоен...

МВД отжал у меня телеграмм, или о дыре в защите Хабр не жалобная книга, однако мой опыт может быть полезен другим. Съездил в РБ, отсидел, потерял аккаунт в телеге. Читать далее

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

Использование Typescript для создания react компонента «Простой фабрики» Использование Typescript при создании React компонента «Простой фабрики»Создадим типизированный компонент-фабрику правильно. Так, чтобы он принимал только нужные параметры и ругался на некорректные. Данный подход применим и в других ситуацией, но&nbs...

«Право на забвение» или как просто удалять персональные данные по запросу пользователя Удалять персональные данные пользователя по его запросу, чтобы продукт соответствовал законам CCPA или GDPR, можно по-разному. Хоть вручную каждую заявку на почте разбирать. Главное — сделать процесс максимально простым и понятным для пользователя. А это уже хороший повод за...

TourBox Elite - первый в мире Bluetooth контроллер для редактирования Дизайнеры, ищущие более эффективный способ ускорить свой рабочий процесс, могут быть заинтересованы в новом контроллере редактирования TourBox Elite, который позиционируется как первый контроллер редактирования Bluetooth в отрасли дизайна. Компоновка TourBox Elite не только ...

[Перевод] Развёртывание в Kubernetes из GitLab Развёртывание в Kubernetes из GitLab Это продолжение предыдущего туториала про командную разработку с использованием GitLab. Фокус предыдущей статьи был на организации непрерывной поставки в работе команды. В этой статье мы уделим основное внимание именно практическим дейст...

Шрифты в играх: как из 191 Мб сделать 12 Мб Каждый, кто хоть раз играл в игры Playrix, замечал, что в них приходится много читать. Тексты окружают игрока повсюду: это разные элементы интерфейса, окна сезонов, баннеры, а также диалоговые окна, в которых разворачиваются целые сюжетные линии. Иногда нам кажется, что если...

Google Chrome OS стала быстрорастущей операционной системой в мире Компания Google  утверждает, что Chrome OS является самой быстрорастущей операционной системой в мире. Ещё в мае поисковый гигант сообщил, что популярность Chrome OS выросла на 92% по сравнению с прошлым годом. По мнению поискового гиганта, популярность Chrome OS в...

Как переориентировать продуктовый подход облачного провайдера на быстрые изменения Привет, Хабр! Меня зовут Николай, я работаю менеджером по продукту в ИТ.  В прошлом году я перешел из компании поменьше в DataLine, где как раз начались интенсивные изменения в управлении продуктами.  В этой статье вместе с нашим операционным директором @abagaev ...

Теперь полноценно и на новых Mac. Облачный сервис GeForce Now теперь имеет нативную поддержку SoC Apple M1 Nvidia обновила свой облачный игровой сервис GeForce Now, добавив официальному приложению поддержку SoC Apple M1.  Сейчас на компьютерах Mac с M1 тоже можно запускать GeForce Now, но только через браузер. Nvidia же всегда говорила, что родное приложение является л...

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

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

Google запустила проект Ripple для расширения сферы применения крошечных радаров Google намерена расширить область использования крошечных радиолокационных чипов. Хотя радар Soli, использовавшийся в фирменных смартфонах Pixel, трудно назвать удачным решением, Google запустила API Ripple с открытым исходным кодом, который должен помочь перенести эту техно...

Платформа Pinterest позволит «примерять» с помощью дополненной реальности мебель из популярных магазинов Популярная платформа Pinterest, предназначенная для обмена «визуальными»» идеями и продвижения товаров, готовится добавить в своё приложение функцию Try On for Home Decor, позволяющую с помощью систем дополненной реальности увидеть, как именно будет выглядеть та или иная меб...

[Перевод] Blogged Answers: (почти) полное руководство по особенностям рендеринга в React. Часть 1 Подробности о том, как происходит рендеринг в React и как влияет на рендеринг применение контекста.Я часто сталкиваюсь с недопониманием относительно того, как, почему и когда React повторно рендерит компоненты и каким образом применение контекста и React-Redux влияет на врем...

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

Задача про две ёмкости для жидкости Существует классическая задача:Есть 2 емкости: 5 литров и 3 литра. Как отмерить 4 литра жидкости используя только эти 2 емкости?В этом тексте я решу эту задачу в общем виде при помощи конечного автомата.  Также я упомяну про малоизвестный язык программирования Dot. Чит...

Tidy stemming велосипед, который поехал Когда в NLP задачах речь доходит до стемминга, то никто особо не заморачивается - берет готовую реализацию, и она работает. Правда работает она только в тех случаях, когда текст является "классическим", то есть это человекочитаемый текст без огромного числа сокращений сл...

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

Награды GSMA GLOMO Award удостоены Safaricom, Close the Gap и Huawei Компании Safaricom, Close the Gap и Huawei удостоены награды Global Mobile (GLOMO) Award за совместный проект TECH4ALL DigiTruck и значительный вклад в достижение Целей устойчивого развития ООН (ЦУР ООН) в области мобильной связи. Церемония вручения прошла в ходе выставки MW...

Официальное приложение для iOS позволяет перенести фотографии и видео из iCloud в Google Фото В прошлом году стало известно, что Google работает над специальным приложением для iOS, чтобы упростить переход с iPhone или iPad на телефон или планшет с Android. Это приложение позволяет подключить ваше старое устройство iOS к вашему новому Android-смартфону через Wi-...

Реверс уязвимого приложения от Delivery Club: результаты конкурса Привет! Меня зовут Илья Сафронов, я руковожу направлением информационной безопасности Delivery Club. Третьего дня мы запустили конкурс по реверсу и поиску уязвимости в тестовом Android-приложении. Целью было выполнение кода на бэкенде (RCE). За время конкурса APK скачали бол...

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