Социальные сети Рунета
Суббота, 25 сентября 2021

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

Материальный дизайн. Создание анимаций в Kivy Приветствую всех любителей и знатоков языка программирования Python! В этой статье я покажу, как работать с анимациями в кроссплатформенном фреймворке Kivy в связке с библиотекой компонентов Google Material Design — KivyMD. Мы рассмотрим структуру Kivy проекта, использован...

[Из песочницы] Материальный Python. Что нового в библиотеке KivyMD Приветствую! Не так давно уже писали о Python в Mobile development и разработке мобильных приложений на Python с помощью библиотек Kivy и KivyMD. Эта статья продолжит знакомить вас с кроссплатформенными Python инструментами, а конкретно сегодня мы рассмотрим новинки, котор...

Разработка мобильных приложений на Python. Библиотека KivyMD Приветствую! Сегодня речь снова пойдет о библиотеке KivyMD — наборе виджетов для кроссплатформенной разработки на Python в стиле Material Design. В этой статье я сделаю не обзор виджетов KivyMD, как в недавней статье, а, скорее, это будет материал больше о позиционировании...

Публикуем дизайн-библиотеки компонентов VKUI в Figma Библиотеки в дизайн-инструментах — это важная часть дизайн-системы. Мы считаем, что дизайнеры должны работать с элементами, которые максимально приближены к реализации в коде. Поэтому в библиотеках мы собрали для них самые актуальные компоненты, которые отражают все те же со...

Компонент Slider из библиотеки материального дизайна Началось с небольшой детективной истории — разглядывая сайт Material Design, наткнулся на страницу Sliders. В описании говорилось, что данный компонент доступен для Android и даже дана ссылка на Гитхаб. Меня это немножко удивило, так как я ни разу о нём не слышал. Перехожу п...

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

Трепещущий Kivy. Обзор возможностей фреймворка Kivy и библиотеки KivyMD Kivy и Flutter — два фреймворка с открытым исходным кодом для кроссплатформенной разработки. Flutter: создан компанией Google и выпущенный в 2017 году; в качестве языка программирования использует Dart; не использует нативные компоненты, рисуя весь интерфейс внутри со...

Библиотека ASE для атомных симуляций: создаем наночастицы Библиотека ASE Библиотека ASE — это python-библиотека для проведения атомных манипуляций и вычислений. В данной статье мы будем создавать наночастицы с помощью этой библиотеки. Установка Устанавливается ASE стандартно через pip: pip install ase. Читать дальше →

Kivy. Сборка пакетов под Android и никакой магии Во вчерашней статье Python в Mobile development, в которой речь шла о библиотеке KivyMD (коллекции виджетов в стиле Material Design для использования их в кроссплатформенном фреймворке Kivy), в комментариях меня попросили рассказать о процессе сборки пакета для платформы A...

Использование Obj библиотек в KolibriOS в языках высокого уровня Вступление В KolibriOS системные библиотеки имеют формат MS COFF и расширение Obj. В этой статье будет рассказано как их импортировать и использовать в C--, GCC и TinyC. Читать дальше →

Чему я научился, написав библиотеку компонентов на Svelte Попробовав Svelte в личных проектах, мне захотелось двигаться дальше, и взять фреймворк в проект побольше. Для этого написал библиотеку компонентов svelte-atoms. За основу я взял UI кит на React, который используем на работе. Каким приемам Svelte я научился, читайте под кат...

Кастомизация компонентов Ant Design и оптимизация бандла The Archivist by juliedillon Я Иван Копенков, ведущий фронтенд-разработчик в Mail.ru Cloud Solutions, в статье расскажу, какие есть подходы к кастомизации компонентов UI-библиотеки Ant Design, как это сделали мы, а так же покажу, как удалось полностью избавиться от неисполь...

Функциональные тесты в Циан Привет! Меня зовут Тимофей, я Python-разработчик в команде Платформа компании Циан. Наша команда занимается разработкой инструментов для продуктовых разработчиков. Это и библиотеки: HTTP-клиент, веб-сервер, библиотеки доступа к базам данных, и средства мониторинга микросерв...

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

Taiga UI — библиотека компонентов под Angular, которую вам стоит попробовать Привет!Саша Инкин и я регулярно пишем на Хабр статьи по Angular. Почти все они основаны на нашем опыте разработки большой библиотеки компонентов.Эту библиотеку мы развиваем, перерабатываем и дополняем уже несколько лет, а свои идеи проверяем на нескольких десятках проектов Т...

Meow Framework: MVVM и материальный дизайн Meow Framework — MVVM Android/Kotlin фреймворк, упрощающий работу с MVVM-архитектурой и создание приложений с Material Design. Внутри расширения, инструменты для работы с Retrofit и OKHttp, корутины для REST API, динамическая локализация, дневная/ночная тема, виджеты и...

[Перевод] 20 инструментов Android-разработчика, о которых вы могли не знать Набор полезных, но не очень известных инструментов и библиотек Android.Работая над статьями о 30 лучших библиотеках и проектах Android 2019 г. и 25 лучших библиотеках и проектах Android 2020 г., я наткнулся на множество замечательных инструментов и проектов, которые могут пр...

Загрузка и обработка изображений в .NET Core В этой статье я хочу рассказать о своём опыте реализации механизма загрузки изображений в .NET Core приложении с последующим их ресайзом и сохранением в файловой системе. Для обработки изображений я использовал кроссплатформенную библиотеку ImageSharp от Six Labors. Существу...

Redux Toolkit как средство эффективной Redux-разработки В настоящее время разработка львиной доли веб-приложений, основанных на фреймворке React, ведется с использованием библиотеки Redux. Данная библиотека является самой популярной реализацией FLUX-архитектуры и, несмотря на ряд очевидных преимуществ, имеет весьма существенные ...

Что нужно знать о популярных фреймворках Привет! Меня зовут Дима Чудинов, я наставник на веб-факультете Яндекс.Практикума, Head of Group, Front-end, ABBYY. Студенты недавно задали мне вопрос: «Что лучше: Angular или React?». Я начал отвечать и понял, что мне понадобится для этого статья. Позже я понял, что и одной...

Введение в Redux & React-redux Оглавление Введение 1. Установка и начало работы 2. Redux ....2.1 createStore ....2.2 reducer() ....2.3 dispatch() ....2.4 actionCreator() ....2.5 Actions ....2.6 getState() ....2.7 subscribe() ....2.8 combineReducers() ....2.9 initialState 3. React-redux ....3.1 Provider ...

First DI: Первый DI на интерфейсах для Typescript приложений Делюсь одной из своих библиотек которая называется First DI. Она уже много лет помогает мне решить проблему внедрения зависимостей в браузерных приложениях для таких библиотек как React, Preact, Mithril и другие. При написании First DI за основу была взята идеология DI библи...

Дайджест интересных материалов для мобильного разработчика #325 (2 — 8 декабря) Новый дайджест о кроссплатформенной разработке, о лучших приложениях 2019 года, о минимализме в дизайне и темных темах, о перспективах AR-очков, библиотеках и даже цвете 2020 года. Читать дальше →

Accompanist — первый аккорд. Обзор библиотеки для Jetpack Compose Обычно новым фреймворкам не хватает хороших примеров использования, туториалов и инструментов. Но не в случае с Jetpack Compose: параллельно с разработкой фреймворка Google развивал репозиторий, богатый на примеры использования. Вырисовывался набор полезных утилит,...

Создание Python-обвязки для библиотек, написанных на C/C++, с помощью SIP. Часть 1 Иногда во время работы над проектом на языке Python возникает желание использовать библиотеку, которая написана не на Python, а, например, на C или C++. Причины для этого могут быть разные Во-первых, Python — язык замечательный, но в некоторых ситуациях недостаточно быстрый....

Hello, Word! Разрабатываем браузерное расширение в 2021-м Привет! Меня зовут Саша Коновалов, я разработчик в компании Oxonit и наставник на программе «Мидл фронтенд-разработчик» в Яндекс.Практикуме. На примере разработки расширения «Hello, Word» я расскажу, как разрабатывать кроссбраузерное расширение со знаниями современного фро...

[Перевод] Как сделать интерактивную карту с помощью Python и open source библиотек Сегодня делимся с вами пошаговым руководством создания интерактивных карт для веб-приложения или блога. Просто сохраните эту статью в закладках. Хоть и существует, например, библиотека d3.js, которая может создавать пользовательские карты, есть несколько инструментов еще пр...

Расширяем Laravel за счет собственных компонентов Задача Добавить в приложение систему оповещения пользователей через СМС-сообщения с возможностью выбора провайдера. Решение Оптимальным решением, на мой взгляд, является добавление собственного компонента. Компонент — блок программы с четко определенным набором действий (ко...

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

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

[Из песочницы] Бот для сборов. Собираемся на футбол с новыми технологиями Введение Всем привет. В этой статье я опишу своего чат-бота для сервиса обмена сообщениями telegram и социальной сети VK с использованием NodeJS. На этом месте у многих читателей должно вырваться что-то вроде: "Доколе!" или "Что, опять ?!". Да, похожие публикации уже были и ...

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

[Перевод] Добро пожаловать в Angular 11 Специально к старту нового потока курса «Fullstack веб-разработчик на JavaScript» представляем вам обзор новой версии популярного фреймворка JavaScript — Angular. 11.0.0 версия уже доступна, и в ней есть отличные обновления, которые затрагивают всю платформу, включая сам фре...

«Хамелеон», которого мы создали и приручили Речь, конечно, пойдет не о харизматичных ящерках, а о нашем собственном инструменте автоматизированного тестирования. Представляем вашему вниманию кейс создания фреймворка «Хамелеон» и рассказ о его функциональности. Его появлению предшествовало 15 лет практики тестирования...

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

[Из песочницы] Перенаправление функций в native-библиотеках на Android В данной статье я немного расскажу о том, как c помощью фреймворка AndHook можно перенаправлять вызовы функций в native-библиотеках. Можно перехватывать вызовы как публичных (экспортируемых функций), так и непубличные, напрямую по их адресу. Подробнее о перенаправлении можно...

Паттерн порталов в Angular: для чего нужен root-компонент в Taiga UI Мой коллега Роман недавно объявил о выходе нашей новой библиотеки компонентов под Angular Taiga UI. В инструкциях Getting started сказано, что приложение нужно обернуть в некий tui-root. Давайте разберемся, что он делает, узнаем, как и зачем мы используем порталы и что это в...

[Из песочницы] Todolist на React Hooks + TypeScript: от сборки до тестирования Начиная с версии 16.9, в библиотеке React JS доступен новый функционал — хуки. Они дают возможность использовать состояние и другие функции React, освобождая от необходимости писать класс. Использование функциональных компонентов совместно с хуками позволяет разработать полн...

Упрощаем работу с Angular с помощью @taiga-ui/cdk: 5 наших лучших практик CDK — базовый пакет библиотеки компонентов Taiga UI. Он не имеет никакой привязки к визуальной составляющей библиотеки, а скорее служит набором полезных инструментов для упрощения создания Angular-приложений.Среди всех этих инструментов я выделил мою пятерку фаворитов. Я исп...

Взять и заняться цифровой обработкой сигналов — какие библиотеки стоит попробовать в деле В прошлый раз мы рассказали о библиотеках для аудиосинтеза на C++. Сегодня поговорим об альтернативных инструментах, которые заточены под работу с объемным звуком и подходят для коррекции акустики помещения, — библиотеках CamillaDSP и DaisySP, а также фреймворке Spatial Audi...

[Перевод] Полируем UI в Android: StateListAnimator Привет, Хабр! В преддверии старта курса «Android Developer. Professional» мы подготовили для вас перевод еще одного интересного материала. Большую часть времени разработки нашего Android-приложения мы тратим отнюдь не на работу над пользовательским интерфейсом — мы просто...

Finances: лучшее в Android-разработке Finances — приложение для управления финансами как площадка для применения всех новых возможностей в Android-разработке. Есть: Kotlin GitHub Actions Kotlin serialization Gradle Kotlin DSL Многомодульная архитектура Чистая архитектура Корутины и Kotlin Flow Java 8 desug...

Что выбрать в качестве библиотеки компонентов для React-проекта Меня зовут Ксюша Луговая. В СберКорусе я занимаюсь поддержкой библиотеки React-компонентов Korus-UI. С проблемой выбора библиотеки рано или поздно сталкивается почти каждый разработчик, и порой решение может быть нетривиальным. Возникают вопросы: чем руководствоват...

Настройка CI/CD в Plesk+Github Actions для проекта на Flask+Angular В этой статье я поделюсь своим опытом настройки CI/CD с использованием панели управления Plesk и Github Actions. Сегодня будем учиться деплоить простенький проект с незамысловатым названием «Helloworld». Он написан на Python-фреймворке Flask, с воркерами на Celery и фронтен...

Построение компонентов с выпадающими блоками с помощью Angular и Material CDK Каждое приложение использует компоненты с выпадающими блоками. Такие панели используются в выпадающем списке, Autocomplete, Tooltip и т.д. В Material CDK есть инструмент Overlay для создания такого функционала.В этой статье мы рассмотрим какую проблему решает Overlay CDK, к...

[Перевод] 3 полезных Python-инструмента для упрощения работы с кодом Любой разработчик использует те или иные вспомогательные инструменты. Какие-то из них позволяют ускорить процесс, какие-то — избавиться от ошибок, сделать код более понятным. Такие инструменты есть практически в любой сфере разработки. Престон Бадир (Preston Badeer), Pyth...

Собираем свою библиотеку для SSR на React Server Side Rendering часто применяется в разных проектах. Существуют крутые фреймворки для React – NextJS и Gatsby. Но в то же время любой фреймворк диктует архитектуру приложения, а это приводит к проблемам в больших приложениях. Поэтому часто можно встретить собственные с...

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

Рассказываем про библиотеку для Process Mining: теперь SberPM в открытом доступе Process Mining – это подход к извлечению, анализу и оптимизации процессов на основе данных из так называемых журналов событий (event logs), доступных в корпоративных ИТ-системах. Являясь своеобразным мостиком между Data Mining и Process Management, он выводит исследование би...

Глава Минцифры: За два дня почти 134 тыс. украинцев успешно подали через «Дію» заявки на материальную помощь ФОПам 14 декабря в мобильном приложении и на сайте «Дія» по инициативе президента Украины Владимира Зеленского была запущена онлайн-услуга по оформлению единовременной материальной помощи ФОПам и наемным работникам. За два дня ею успешно воспользовалось почти 134 тыс. человек, рас...

Vuetify  —  создаем свое простое приложение В этой небольшой статье мы с вами напишем свое простое приложение по типу "заказа еды". Само приложение если что будет статичным и здесь главный упор будет сделан на использование компонентов Vuetify и рассмотрение того как именно они работают. Также добавлю что здесь мы не ...

[Перевод] Как создать свой первый open source проект на Python (17 шагов) Каждый разработчик ПО должен знать как создать библиотеку с нуля. В процессе работы Вы можете многому научиться. Только не забудьте запастись временем и терпением. Может показаться, что создать библиотеку с открытым исходным кодом сложно, но Вам не нужно быть потрепанным ж...

OpenPGP переписывают на Rust: проект Sequoia Секвойя Стагг в роще Олдер-Крик, Калифорния В 2018 году три бывших разработчика GnuPG начали работу над проектом Sequoia — реализацией OpenPGP на Rust. Как известно, OpenPGP — это открытый стандарт шифрования данных, часто используемый для защищённой электронной почты; а G...

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

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

[Из песочницы] Частотный анализ русского текста и облако слов на Python Частотный анализ является одним из сравнительно простых методов обработки текста на естественном языке (NLP). Его результатом является список слов, наиболее часто встречающихся в тексте. Частотный анализ также позволяет получить представление о тематике и основных понятиях т...

Портировать игры на DirectX 12 станет еще проще Компания Microsoft на прошлой неделе выложила в открытый доступ библиотеку D3D12 Translation Layer, которая должна упростить портирование игр на API DirectX 12. D3D12 Translation Layer – это одна из вспомогательных библиотек для переноса графических концептов и команд с API ...

Фреймворки и библиотеки для кроссплатформенной разработки десктопных программ В этой статье я расскажу вам о некоторых самых популярных фреймворках, которые помогут вам при разработке программ для компьютеров под управлением Windows/MacOS/Linux. Если вы опытный программист, то вряд ли найдете в этой статье что-то новое для себя. Она скорее для новичко...

Paradigm 2.0 — как мы переосмыслили дизайн-систему Mail.ru Про дизайн-системы сказано и написано уже многое. Дизайнеры прошли долгий путь от обсуждения шаблонов в Sketch к компонентам в коде, а от компонентов — к рамкам в дизайне и границам системности. В этой статье мы расскажем не о том, как создавать дизайн-системы, а о том, как...

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

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

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

[Перевод] Java: свертывание многострочных логов в однострочный лог с помощью Spirng и логгера Logback или Log4j2 Logback и Log4j2 – одни из самых известных фреймворков логирования в JAVA. Фреймворк Logback используется только совместно с библиотекой SLF4J, которая представляет собой интерфейс для систем протоколирования событий. Log4j2 представляет собой вторую, улучшенную версию логге...

RUI – библиотека для создания web-приложений на языке go Хочу представить вам свой проект – библиотеку RUI (Remote User Interface). Библиотека предназначена для создания web-приложений на языке go.  Особенностью библиотеки заключается в том, что вся обработка данных осуществляется на сервере, а браузер используется как тонкий...

[Перевод] Работа с библиотеками KTX Когда вы используете Android Java API в Kotlin, к вам достаточно быстро приходит понимание, что вам не хватает некоторых фич Kotlin, которые делают написание кода намного проще и приятнее. Вместо того, чтобы писать свои собственные обертки и функции расширения для этих API, ...

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

Производство Material иконок для MacOSX приложения Home Assistant на Electron В первой серии я заварил умный дом на Home Assistant. В процессе я влюбился в Home Assistant и подумал, не написать ли десктопное приложение для этой системы. У Home Assitant есть прекрасный web-интерфейс и показалось разумным завернуть его в Electron, чтобы получить красиву...

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

Можно ли подружить Stream API и JPA? В этой статье я хотел бы познакомить сообщество с библиотекой JPAstreamer. Идея этой библиотеки очень проста, но в то же время гениальна - получать нужные нам сущности из базы так, как если бы мы просто обрабатывали поток сущностей в стриме.Если интересно посмотреть, что мож...

Праздничный венок из раритетных компонентов AMD/ATI украсил канадский офис Украшение из подручных материальных ценностей.

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

Книга «Изучаем Python: программирование игр, визуализация данных, веб-приложения. 3-е изд.» Привет, Хаброжители! Мы выпустили третью версию #1 Best Seller in Python Programming Amazon — популярного в мире руководства по языку Python. Вы сможете не только максимально быстро его освоить, но и научитесь писать программы, устранять ошибки и создавать работающие прило...

FigmaGen: Автоматизация стилей в iOS-приложении Сейчас многие команды систематизируют дизайн своих приложений. Мы решили пойти дальше и автоматизировать синхронизацию кода с нашей библиотекой компонентов.  Дело в том, что в hh для проектирования UI используется небезызвестный сервис Figma, который, кроме прочих своих плю...

[Из песочницы] Nuxt + Django + GraphQL на примере Предисловие Nuxt — "фреймворк над фреймворком Vue" или популярная конфигурация Vue-based приложений с использованием лучших практик разработки на Vue. Среди них: организация каталогов приложения; включение и преконфигурация самых популярных инструментов в виде Nux...

[Перевод] Wasm или не Wasm? Мы, в компании Linkurious, занимаемся работой над Linkurious Enterprise. Это — веб-платформа, которая, используя возможности графов и средства их визуализации, призвана помогать компаниям и органам власти, расположенным по всему миру, бороться с финансовыми преступлениями. ...

[Перевод] Marshmallow vs. Pydantic: две лучшие библиотеки для сериализации и валидации данных на Python Сериализация и десериализация данных — это преобразование между необработанной структурой данных и экземплярами классов для их хранения и передачи. Например, преобразование объектов Python в JSON-представление. Мы рассмотрим две популярные Python-библиотеки Marshmallow и Pyd...

Дружим STM32 с LCD дисплеем 1604 по I2C шине (библиотека HAL) Привет, Хабр! В этой статье я хотел бы рассказать о своем опыте подключения LCD дисплеев к микроконтроллеру STM32 с использованием библиотеки HAL по I2C шине. Подключать буду дисплей 1602 и 2004. Они оба имеют припаянный I2C адаптер на основе чипа PCF8574T. Отладочной пл...

Интеграция в проект LVGL графической библиотеки для микроконтроллеров LVGL — Light and Versatile Graphics Library также известная как LittleVGL. Библиотека поддерживает большое количество микроконтроллеров, таких как STM32, ESP32 и другие. Мне пока удалось запустить полноценную демо программу на ESP32 и STM32f429 Discovery. Библиотека открыт...

Из репозитория PyPI удалили два вредоносных пакета Два поддельных пакета, размещенных в репозитории Python Package Index (PyPI), содержали вредоносный сценарий для кражи данных с компьютера пользователя. Авторы назвали свои фальшивки созвучно легитимным библиотекам, чтобы заставить авторов приложений включить зловред в соста...

Concurrent Mode в React: адаптируем веб-приложения под устройства и скорость интернета В этой статье я расскажу о конкурентном режиме в React. Разберёмся, что это: какие есть особенности, какие новые инструменты появились и как с их помощью оптимизировать работу веб-приложений, чтобы у пользователей всё летало. Конкурентный режим — новая фишка в React. Его зад...

Aсинхронный PHP Десять лет назад у нас был классический LAMP-стек: Linux, Apache, MySQL, и PHP, который работал в медленном режиме mod_php. Мир менялся, а с ним и важность скорости. Появился PHP-FPM, который позволил значительно увеличить производительность решений на PHP, а не срочно переп...

[Из песочницы] Создание простого Discord бота с помощью библиотеки discord.py Асинхронная библиотека discord.py содержит все что нужно для бота, с помощью нее даже можно работать с голосовыми каналами сервера. В этой статье я расскажу как создать простенького бота для вашего discord сервера. Читать дальше →

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

Вредоносные Python-библиотеки воровали ключи SSH и GPG Из PyPI были удалены две вредоносные библиотеки, пойманные на краже ключей SSH и GPG из проектов разработчиков. Одна из библиотек оставалась незамеченной почти год.

Зачем вам чужие ошибки? Исправляем уязвимости в сторонних библиотеках Любое ПО содержит уязвимости, причем они появляются на разных этапах его жизненного цикла. Полностью избавиться от уязвимостей в коде достаточно сложно, но можно, как минимум, сократить их количество. Для этого используются средства SAST, DAST и IAST – статический, динамичес...

Функциональное программирование в Python. Генераторы, как питонячий декларативный стиль Общее введение ФП Введение в ФП Главные свойства функционального программирования Основные термины Встроенное ФП поведение в Python Библиотека Xoltar Toolkit Библиотека returns Литература Генераторы Введение в итераторы Введение в генераторы Генераторы vs итераторы Генер...

Дайджест интересных материалов для мобильного разработчика #285 (2-8 декабря) Новый дайджест о кроссплатформенной разработке, о лучших приложениях 2019 года, о минимализме в дизайне и темных темах, о перспективах AR-очков, библиотеках и даже цвете 2020 года.

[Перевод] Itertools в Python Модуль itertools стандартизирует основной набор быстрых эффективных по памяти инструментов, которые полезны сами по себе или в связке с другими инструментами. Вместе они формируют «алгебру итераторов», которая позволяет лаконично и эффективно создавать специализированные инс...

Библиотека ttf2mesh — преобразование TrueType шрифтов в сетку Многим известна проблема трёхмерной графики — отсутствие легковесных кроссплатформенных решений в вопросе вывода текста. Большинство реализаций позволяет использовать выбранный шрифт в виде текстуры. Публикуемая библиотека ttf2mesh реализует другой способ — она преобразует в...

Новая библиотека для уменьшения размерности данных ITMO_FS — зачем она нужна и как устроена Студенты и сотрудники лаборатории Машинного обучения Университета ИТМО разработали библиотеку для Python, которая решает ключевую задачу машинного обучения. Расскажем, почему появился этот инструмент и что он умеет. Читать дальше →

Python в Mobile development Ни для кого не секрет, что область применения Python довольно широка: начиная от web-технологий, игровой индустрии и заканчивая проектами NASA. Python работает практически везде: от карманных компьютеров и смартфонов до серверов сети и практически на всех известных платфор...

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

Фреймворк-независимое браузерное SPA Учитывая насколько hype-driven является разработка софта в наше время, можно быть уверенным в том что через несколько лет будут существовать новые модные фреймворки для фронтенд разработки. В момент когда фреймворк на базе которого построено приложение вы...

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

Опасная уязвимость в популярной библиотеке Sequelize Привет, Хабр! Данная статья будет интересна тем, кто уже использует библиотеку Sequelize или же только собирается с ней работать. Под катом мы расскажем, чем встроенный функционал operatorAliases может быть вреден и как избежать утечки из собственной базы данных. Читать да...

Минцифры: За первую неделю 283,5 тыс. украинцев оформили заявки на материальную помощь ФОП-ам Ровно неделю назад, 14 декабря 2020 года, на портале «Дія» была запущена онлайн-услуга по оформлению единовременной материальной помощи ФОПам и наемным работникам. За первые семь дней действия предложения им успешно воспользовались 283,595 украинцев. Вице-премьер и министр ц...

[Из песочницы] BoxView — удобный autolayout для iOS Хочу поделиться библиотекой для эффективного построения пользовательского интерфейса iOS приложений на основе autolayout. Хотя с появлением SwiftUI актуальность autolayout быстро уменьшается, пока этот механизм все еще активно используется, и библиотека может быть полезна ...

ABBYY NeoML 2.0: Python и многое другое Прошел почти год с тех пор, как мы опубликовали на GitHub библиотеку для машинного обучения NeoML. О чем, конечно же, была статья на Хабре. Мы обещали поддерживать и развивать ее. Свое обещание мы сдержали, и на днях свет увидела вторая версия библиотеки! С первой версии ...

Разработка сервера для многопользовательской игры с помощью nodejs и magx Многие разработчики начинают разработку многопользовательского онлайн сервера на основе библиотеки socket.io. Эта библиотека позволяет очень просто реализовать обмен данными между клиетом и сервером в реальном времени, но продумать и реализовать всю логику и интерфейс взаимо...

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

Как сделать Swift-friendly API с Kotlin Multiplatform Mobile Kotlin Multiplatform Mobile позволяет компилировать Kotlin код в нативные библиотеки для Android и iOS. И если в случае с Android полученная из Kotlin библиотека будет интегрироваться с приложением написанным на Kotlin, то для iOS интеграция будет с Swift и на стыке Kotlin и...

Vue.js: Хуки жизненного цикла ваших и сторонних компонентов Lifecycle hooks (Хуки жизненного цикла) — это очень важная часть любого компонента. Нам, нашему приложению, часто нужно знать что происходит с компонентом, когда он создан, смонтирован, обновлен или уничтожен. В компоненте мы можем отлавливать эти события используя соотве...

Использование STL для обработки сигналов в реальном времени. Доклад в Яндексе Компьютерные игры, обработка аудиосигналов в режиме реального времени и другие подобные приложения низкой задержки требуют, чтобы код был не только корректным. Он также должен исчислять требуемый результат надёжно за детерминированный срок выполнения. В этом докладе head of ...

Код на React и TypeScript, который работает быстро. Доклад Яндекса Евангелисты Svelte и других библиотек любят показывать примеры тормозящих компонентов на React. React и TypeScript дают много возможностей создавать медленный код. После доклада Виктора victor-homyakov вы сможете писать более производительные компоненты без усложнения кода. ...

The GoldMovies: кино для Android  The GoldMovies – приложение о кино. Данные – The Movies Database. Внутри – Kotlin, MVVM, корутины, Dagger, Koin и материальный дизайн с анимациями. Исходники: https://github.com/skydoves/GoldMovies

Почему Flutter побеждает? Последний год я так или иначе пишу приложения на Flutter для iOS и Android. До этого у меня был и есть 5 летний опыт работы с Xamarin. Это были замечательные 5 лет. Благодаря Xamarin и моей любви к этому фреймворку я, в принципе, перешел в стан разработчиков, этот инструмент...

ViennaNET: набор библиотек для backend’а. Часть 2 Сообщество .NET-разработчиков Райффайзенбанка продолжает краткий разбор содержимого ViennaNET. О том, как и зачем мы к этому пришли, можно почитать в первой части. В этой статье пройдемся по еще не рассмотренным библиотекам для работы с распределенными транзакциями, очеред...

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

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

ruleguard: динамические проверки для Go В этой статье я расскажу о новой библиотеке (и утилите) статического анализа go-ruleguard, которая адаптирует gogrep для использования внутри линтеров. Отличительная особенность: правила статического анализа вы описываете на особом Go-подобном DSL, который на старте rulegua...

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

Добавление EA Play в состав Xbox Game Pass для ПК отложили на 2021 год В сентябре этого года Microsoft объявила, что подписка EA Play станет частью сервиса Xbox Game Pass как на консолях, так и на ПК, предоставив доступ к десяткам игр от Electronic Arts без дополнительной платы. На консолях EA Play был добавлен в Xbox Game Pass Ultimate ещё в ...

[Перевод] Стратегия тестирования REST API: что именно вам нужно тестировать? Слой API любого приложения - один из важнейших программных компонентов системы. Это канал, который соединяет клиента с сервером (или один микросервис с другим), управляет бизнес-процессами и представляет сервисы, которые  приносят пользу пользователям. Общедоступны...

Создаем веб-приложение на Haskell с использованием Reflex. Часть 1 Введение Всем привет! Меня зовут Никита, и мы в Typeable для разработки фронтенда для части проектов используем FRP-подход, а конкретно его реализацию на Haskell – веб-фреймоворк reflex. На русскоязычных ресурсах отсутствуют какие-либо руководства по данному фреймворку (да и...

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

[Перевод] Библиотека Oboe для высокопроизводительного аудио в играх и приложениях Мы добавили в Android Game SDK библиотеку Oboe C++ для работы со звуком. Она позволяет разрабатывать высокопроизводительные аудиоприложения с низкой задержкой для максимального спектра устройств Android. Эта библиотека также отлично подойдет большинству разработчиков игр. О ...

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

В YouTube Music появился инструмент для переноса библиотеки из Google Play Music Достаточно пары кликов и вся библиотека будет перенесена в YouTube Music. После того, как Google […]

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

[Из песочницы] JavaScript библиотека Webix глазами новичка Я начинающий JS front-end разработчик. Сейчас я учусь и стажируюсь в одной минской IT компании. Изучение основ web-ui проходит на примере JS библиотеки Webix и я хочу поделиться своим первым опытом и оформить, своего рода учебное пособие по освоению этой элегантной и мощно...

Moko Widgets: кроссплатформенный UI для Kotlin MultiPlatform Kotlin MultiPlatform все ближе к реальной кроссплатформенной разработке. Moko Widgets — библиотека для Kotlin MultiPlatform, реализующая декларативный UI и управление экранами. В общем — единый код для Android и iOS. Пока в глубокой бете, но само направление раду...

[Перевод] Python и разработка простого веб-приложения, использующего технологии машинного обучения Тот, кто занимается машинным обучением (Machine Learning, ML), обычно, реализуя различные проекты, выполняет следующие действия: сбор данных, их очистка, разведочный анализ данных, разработка модели, публикация модели в локальной сети или в интернете. Вот хорошее видео, в ко...

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

GitHub: библиотека для сбора SSL-сертификатов Представляем еще одну библиотеку, написанную на Go – GoTransparencyReport предназначенную для автоматизации сбора и обработки SSL-сертификатов по API сайта transparencyreport.google.com (ранее мы уже размещали библиотеку для поиска данных о корпоративных email по домену). Су...

ViennaNET: набор библиотек для backend’а Всем привет! Мы сообщество .NET-разработчиков Райффайзенбанка и мы хотим рассказать про набор инфраструктурных библиотек на .NET Core для быстрого создания микросервисов с единой экосистемой. Вывели его в Open Source! Читать дальше →

Исследование качества кода Open XML SDK от Microsoft Моё знакомство с Open XML SDK началось с того, что мне понадобилась библиотека для создания документов Word с некоторой отчётностью. После работы с Word API более 7 лет, захотелось попробовать что-нибудь новое и более удобное. Так я узнал, что у Microsoft есть альтернативно...

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

Python & EEL. Делаем просто на Python’е и красиво на JS Тема красивых интерфейсов была и будет актуальна всегда, кто-то использует для создания графических приложений C#, кто-то использует Java, кто-то уходит в дебри C++, ну а кто-то извращается с Python, используя tkinter или PyQT. Существуют различные технологии, позволяющие со...

Fastify.js — не только самый быстрый веб-фреймворк для node.js Последние 10 лет среди веб-фреймворков для node.js самой большой популярностью пользуется Express.js. Всем, кто с ним работал, известно, что сложные приложения на Express.js бывает сложно структурировать. Но, как говорится, привычка — вторая натура. От Express.js бывает слож...

[Перевод] Сравнение Blazor и JavaScript-инструментов В последние несколько лет JavaScript был самым популярным и распространённым языком для разработки одностраничных приложений (Single Page Application, SPA). Это так и сегодня. Но недавно Microsoft выпустила новый фреймворк, который называется Blazor. Он позволяет писать брау...

[Перевод] Простая интеграция RabbitMQ и Spring Boot Перевод статьи был подготовлен в преддверии старта курса «Разработчик на Spring Framework». Всем привет! Я хотел бы поделиться с вами библиотекой с открытым исходным кодом, которая облегчает интеграцию RabbitMQ с приложениями на Spring Boot. Кроме того, эта библиотека пре...

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

Microsoft работает над улучшением дизайна Windows 10 Инсайдерские сборки Windows 10 не так часто радуют нас новыми функциями, но внутри компании, конечно, разрабатывается и тестируется гораздо большее количество изменений. И о некоторых из них мы всё же можем узнать, проанализировав отладочные файлы (PDB) и получив список наз...

[Из песочницы] Виджеты на Android. Редкая фича, в которой придется разобраться Привет, Хабр! Меня зовут Александр Хакимов, я android-разработчик в компании FINCH. У вас бывало такое, что ваш дизайн был под iOS, а вам приходится адаптировать его под android? Если да, то часто ли ваши дизайнеры используют виджеты? К сожалению, виджет — редкий кейс для ...

[Из песочницы] Создаем аудиовизуальный VR-опыт с применением A-Frame и Tone.js Привет, Хабр! Представляю вашему вниманию перевод статьи «Creating A VR Audio/Visual Experience On the Web With A-Frame and Tone.js» автора Sean Sullivan. A-Frame — это фреймворк для создания виртуальной реальности в вебе. Используя лишь ссылку, любой человек с VR-шлемом ...

Как мы делаем базовые компоненты в Taiga UI более гибкими: концепция контроллеров компонента в Angular В процессе эволюции нашей библиотеки компонентов Taiga UI мы стали замечать, что некоторые компоненты посложнее имеют @Input просто для того, чтобы прокинуть его значение в @Input другого нашего базового компонента внутри себя. Иногда встречается такая вложенность даже в три...

MEGOGO расширяет библиотеку 4К-контента: Форсаж, Варкрафт, Джейсон Борн — уже более 850 фильмов Онлайн-кинотеатр MEGOGO объявил о расширении библиотеки фильмов с разрешением 4K.

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

[Из песочницы] C++/Qt: пора валить?. Если бы раньше я запускал новый долгоживущий проект, в котором основные функции связаны с большим объёмом вычислений при каком-то взаимодействии с пользователем через графический интерфейс, я бы не задумываясь использовал С++/Qt. Это позволяло использовать один фреймворк/яз...

[Перевод] React Intl: интернационализация React-приложений Библиотека React Intl предоставляет механизм для перевода текста на другие языки. В данном "туториале" мы используем названную библиотеку для реализации интернационализации в проекте, написанном на React. Мы создадим простое приложение, позволяющее пользователю вы...

ABBYY NeoML: как мы делали библиотеку машинного обучения и зачем она нужна Привет, Хабр! Меня зовут Стас, и я отвечаю за направление Common Libraries в компании ABBYY. Недавно мы выложили на GitHub созданную нами библиотеку для машинного обучения NeoML. NeoML — это кроссплатформенная C++ библиотека, позволяющая организовать полный цикл разработки ...

Почему новые приложения не отображаются на рабочем столе iPhone с iOS 14 Одна из действительно стоящих фишек iOS 14 — это библиотека приложений. Она распределяет иконки всех приложений на смартфоне по категориям. Так любое приложение можно удалить с рабочего стола, но в библиотеке его иконка останется. Это сделано, чтобы иметь возможность д...

[Из песочницы] Повысьте производительность SPA, разбив ваши библиотеки Angular на несколько частей Привет, Хабр! Представляю Вашему вниманию перевод статьи «Improve SPA performance by splitting your Angular libraries in multiple chunks» автора Kevin Kreuzer. Angular — отличный фреймворк. Мы все его любим <3. Одна из вещей, которая делает Angular успешным и прекрасным в...

Цифровая логистика: решение транспортной задачи спроса и предложения с помощью библиотеки DOcplex от IBM Всем привет, меня зовут Дмитрий Кузин (Application Development Senior Analyst в Accenture), и в своей статье я делюсь историей о том, как запрос на решение задачи в корпоративной рассылке привел к освоению Python библиотеки DOcplex от IBM, предназначенной для решения оптими...

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

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

[Из песочницы] Нетривиальное слияние репозиториев с помощью GitPython Задача Дано: проект на основе OpenWRT (а он — на основе BuildRoot) с одним дополнительным репозиторием, подключенным как feed. Задача: слить дополнительный репозиторий с основным. Предыстория Мы делаем маршрутизаторы и, однажды, захотели дать клиентам возможность включать с...

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

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

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

Dapp. Vue.js + ethers.js В этой статье я попытаюсь максимально кратко и информативно пройтись по всем пунктам создания создания полноценного Децентрализованного приложения в сети Ethereum используя JavaScript фреймворк - Vue для создания веб-приложения и библиотеку ethers.js для общения со смарт кон...

Проверка коллекции header-only C++ библиотек (awesome-hpp) Волею судьбы мы проверили большинство библиотек, входящих в коллекцию под названием "Awesome hpp". Это небольшие проекты на языке C++, состоящие только из заголовочных файлов. Надеемся, найденные ошибки помогут сделать эти библиотеки немного лучше. Также мы будем ...

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

JavaScript библиотека Webix глазами новичка. Часть 2. Работа с формами Я начинающий front-end разработчик. Сейчас я учусь и стажируюсь в одной минской IT компании. Изучение основ web-ui проходит на примере JS библиотеки Webix и я хочу поделиться своим скромным опытом и сохранить его в виде небольшого учебного пособия по этой интересной UI биб...

JavaScript библиотека Webix глазами новичка. Часть 3. Модули, диаграммы, древовидные таблицы Я — начинающий front-end разработчик. Сейчас я учусь и стажируюсь в одной минской IT компании. Изучение основ web-ui проходит на примере JS библиотеки Webix и я хочу поделиться своим скромным опытом и сохранить его в виде небольшого учебного пособия по этой интересной UI б...

[Перевод] Разработка более быстрых приложений на Vue.js JavaScript — это душа современных веб-приложений. Это — главный ингредиент фронтенд-разработки. Существуют различные JavaScript-фреймворки для создания интерфейсов веб-проектов. Vue.js — это один из таких фреймворков, который можно отнести к довольно популярным решениям. Vu...

[Из песочницы] Создание Discord-бота, используя библиотеку discord.js | Часть №1 Введение В этой статье я подробно расскажу о том, как работать с библиотекой discord.js, создать своего Discord-бота, а также покажу несколько интересных и полезных команд. Сразу хочу отметить, что я планирую сделать ряд подобных статей, начиная с простых команд, заканчивая...

Citrus: Набор стилей для AvaloniaUI В комментариях к новостям об изменениях и улучшениях в новых версиях кроссплатформенного GUI-фреймворка AvaloniaUI довольно часто можно увидеть критику тем оформления, используемых по умолчанию. Дело в том, что данные темы были созданы на основе Metro — художественного стил...

Вышел пакет Sequoia 0.20.0, реализация OpenPGP на Rust Вчера был представлен выпуск пакета Sequoia 0.20.0. Он предлагает библиотеку функций и инструментарий командной строки с реализацией стандартов OpenPGP (RFC-4880). Команда проекта состоит из трех человек — участников проекта OpenPGP (RFC-4880). Для повышения безопасности и ...

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

Унифицируем арсенал Gatling Тестирование производительности — это непрерывный процесс оптимизации, контроля быстродействия систем и подтверждения их отказоустойчивости как на стадии моделирования и проектирования, так и на каждой итерации внесения изменений. Сейчас в Тинькофф мы активно занимаемся разв...

[Перевод] Заметки о Unix: история Unix до readline Unix и программы, работающие в этой ОС, существуют уже очень давно. В частности, библиотека GNU Readline появилась в 1989 году (как и Bash). Времени существования этой библиотеки (и подобных проектов) вполне достаточно для того чтобы она стала бы распространённым инструменто...

14 самых популярных Node.js-библиотек в 2020 году Доброго времени суток, друзья! Представляю Вашему вниманию перевод статьи «14 Most Useful NodeJS Libraries in 2020». В данной статье автор делится своими находками среди многочисленных пакетов Nodejs. Express Быстрый, гибкий, минималистичный, легкий в изучении фреймворк...

Представляем .NET 5 Preview 1 В конце прошлого года мы выпустили .NET Core 3.0 и 3.1. В этих версиях добавлены модели настольных приложений Windows Forms (WinForms) и WPF, ASP.NET Blazor для создания одностраничных приложений и gRPC для кроссплатформенного обмена сообщениями на основе контрактов. Мы такж...

11 друзей Sanic’а – собираем асинхронное веб-приложение на Python Рано или поздно маленькие приложения разрастаются до нагруженных production-решений, поэтому программисту необходимо заранее продумать стек технологий. Для Python концептуальный выбор стоит между синхронными и асинхронными фреймворками. После появления библиотеки asyncio поп...

Книга “Разработка мобильных приложений на C# для iOS и Android” Уважаемые читатели, рады представить вам книгу “Разработка мобильных приложений на C# для iOS и Android” от уже хорошо известного вам автора и эксперта в Xamarin, Вячеслава Черникова из компании Binwell. Без долгих прелюдий передаю слово автору. Добрый день, уважаемый хабр...

[Перевод] Сравнение производительности CSS и CSS-in-JS в реальном мире Технология CSS-in-JS заняла прочное место среди инструментов фронтенд-разработки. И возникает ощущение, что CSS-in-JS-тренд в ближайшем будущем лишь усилится. Особенно — в мире React. Например, в исследовании State of CSS, проведённом в 2020 году, приняли участие 11492 челов...

Зал Трудовой Славы JavaScipt С появлением библиотек JavaScript, которые разрабатываются большими коллективами, таких как Angular, React, Vue, — безвозвратно ушли с арены гении-одиночки, которые разрабатывали всю или, по крайней мере, основную часть библиотеки самостоятельно. Предлагаю вместе вспомнить н...

Как писать музыку на Python — помогут три тематические библиотеки (для специалистов разного уровня) Продолжаем тему музыкального программирования — ранее мы говорили о языках Csound, SuperCollider и Pure Data, а сегодня рассказываем Python и библиотеках FoxDot, Pippi и Music-Code. Читать дальше →

PVS-Studio впечатлен качеством кода Abbyy NeoML На днях компания ABBYY опубликовала исходный код своего фреймворка NeoML. Нам предложили проверить эту библиотеку с помощью PVS-Studio. Это интересный проект с точки зрения анализа, так что мы не стали откладывать его в долгий ящик. Чтение этой статьи не займет у вас много ...

С GitHub удалили 18 проектов для скачивания контента с YouTube Правообладатели из Американской ассоциации звукозаписывающих компаний (RIAA) добились удаления проекта youtube-dl с GitHub. Данная Python-библиотека применялась во многих инструментах и сервисах для копирования контента с YouTube, и была удалена из-за нарушения DMCA.

Создание дополнительного kube-scheduler’a с кастомным набором правил планирования Kube-scheduler является неотъемлемым компонентом Kubernetes, который отвечает за планирование подов по нодам в соответствии с заданными политиками. Зачастую, в процессе эксплуатации Kubernetes-кластера нам не приходится задумываться о том, по каким именно политикам происход...

OCS начала продвигать инструменты визуализации данных для разработчиков от Steema Software Steema направляет в ИТ-канал продуктовое предложение для разработчиков приложений – библиотеки диаграмм и набор функций для работы с таблицами.

[Перевод] Ускоряем код на Python с помощью Nim Python — один из самых популярных и доступных языков программирования, но далеко не самый быстрый. Многие создатели библиотек и фреймворков прибегали к использованию расширения на С, чтобы их код работал быстрее, чем код на нативном Python. Этот способ вполне рабочий, н...

Как быстро и удобно документировать Angular проект с помощью модуля AddOnDoc из TaigaUI Не так давно вышла новая библиотека компонентов Taiga UI. Как говорят сами создатели Александр Инкин и Роман Седов, это конструктор Lego. И действительно: в нём есть много полезных модулей, которые можно использовать в своём проекте. В этой статье мы рассмотрим модуль AddOnD...

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

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

Разработка круговых интерфейсов. Часть 2. Перенос библиотеки с JavaScript на QML Оглавление Введение Библиотека круговых интерфейсов v2.0 Круговая CAPTCHA Перенос библиотеки с JavaScript на QML Демонстрационное мобильное приложение Заключение Введение Предыдущая статья была вводной к вопросу разработки круговых интерфейсов. В ней рассмотрены определение,...

Война с тормозами. Оптимизация количества рендеров компонентов в React Native Привет, Хабр! Меня зовут Камо Сперцян, я занимаюсь React Native разработкой в Profi.ru. Если вы решили воспользоваться технологией React Native для быстрой доставки продуктовых фич и сосредоточились на скорости разработки, то, скорее всего, столкнётесь с проблемами производи...

Адаптируем существующее бизнес-решение под SwiftUI. Часть 1 Доброго всем времени суток. О технологии SwiftUI, которую Apple анонсировали в прошлом году WWDC 2019, говорили уже много. В принципе уже довольно материала про ее особенности, что у нее под капотом и как это использовать для быстрого и красивого UI. Предлагаю вам небол...

Apple наконец опубликовала библиотеку macOS Big Sur Sketch для дизайнеров и разработчиков Почти через два месяца после публичного выпуска macOS Big Sur компания Apple наконец выпустила обновленную библиотеку Sketch, оптимизированную и переработанную в соответствии с требованиями новой операционной системы. Дизайнеры и разработчики пользовательского интерфейса оче...

Идеальный инструмент для создания прогрессивных веб-приложений или Все, что вы хотели знать о Workbox. Часть 2 Что такое Workbox? Workbox (далее — WB) — это библиотека (точнее, набор библиотек), основной целью которой является "предоставление лучших практик и избавление от шаблонного кода при работе с сервис-воркерами" (далее — СВ). Если вы впервые слышите о СВ, то перед и...

Microsoft помогает с обновлением Google Flutter 2 для улучшения приложений на Surface Duo Flutter от Google — это кросс-платформенный фреймворк пользовательского интерфейса, который позволяет разработчикам создавать приложения на нескольких платформах, использующих единую кодовую базу. Flutter работает с iOS, Android, Windows, macOS, LInux и Интернетом. 3 марта G...

CLI приложение + Dependency Injector — руководство по применению dependency injection + Вопросы / ответы Привет, Я создатель Dependency Injector. Это dependency injection фреймворк для Python. Это завершающее руководство по построению приложений с помощью Dependency Injector. Прошлые руководства рассказывают как построить веб-приложение на Flask, REST API на Aiohttp и монитор...

Около 8% приложений в Google Play Store уязвимы перед багом в библиотеке Play Core Эксперты компании Check Point предупредили, что разработчики многих популярных Android-приложений (включая Microsoft Edge, Grindr, OKCupid и Cisco Teams) забыли обновить одну важную библиотеку и теперь уязвимы для атак.

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

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

Репозиторий youtube-dl восстановили на GitHub после вмешательства EFF Сегодня на GitHub восстановили репозиторий опенсорсного проекта youtube-dl, который ранее был удален из-за нарушения DMCA. Данная Python-библиотека применяется во многих инструментах и сервисах для копирования контента с YouTube, имеет более 72 000 звезд на GitHub и представ...

Яндекс инвестирует $40 млн в инструменты для разработки ИИ Платформа Яндекс.Облако и американская компания – разработчик оборудования Nvidia открывают для российских компаний библиотеку приложений для работы с искусственным интеллектом Nvidia GPU Cloud (NGC). Ранее ею пользоваться могли только иностранные клиенты и партнеры Nvidia. ...

Самодельные библиотеки ассемблера FASM Здесь я немного расскажу о библиотеках strnum.inc и myMSVlib.dll, которые я сам сделал. Они могут кому-то пригодится. Я уверен что написал не без ошибок. Все ниже перечисленные функции сохраняют состояние регистров, кроме регистра eFLAGS. Исходный код прилагается. Все функци...

Зачем нужна выделенная Frontend Core команда и как мы внедряли дизайн систему Всем привет, меня зовут Ростислав, я занимаю должность Front Lead в компании ДомКлик. Хочу поделиться с вами опытом создания Front Core команды и сразу ответить на следующие вопросы: Необходима ли такая команда в компании? После года существования команды Front Core, у в...

[Перевод] 10 вещей, которые вы могли не знать о scikit-learn В этой переведенной статье ее автор, Rebecca Vickery, делится интересными функциями scikit-learn. Оригинал опубликован в блоге towardsdatascience.com. Фото с сайта Unsplash. Автор: Sasha • Stories Scikit-learn является одной из наиболее широко используемых библиотек Pytho...

Sony хочет, чтобы владельцы Nintendo Switch играли на ней в игры для PS4 Sony PS4 — самая популярная игровая консоль своего поколения. Nintendo Switch — самая быстрорастущая. Неудивительно, что у Sony возникла идея дать возможность владельцам Switch играть в игры для PlayStation. Пока не стоит говорить, что такая возможность точн...

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

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

[Из песочницы] Актуальные библиотеки визуализации данных для react-разработчиков Привет, Хабр! Представляю вашему вниманию перевод статьи «Data Visualization Libraries for React Developers in 2019» автора Veronika Rovnik. Вот уже несколько лет подряд React не сдаёт позиции и входит в тройку самых любимых библиотек профессиональных разработчиков по всему...

Apple анонсировала iPadOS 15 с новыми виджетами и библиотекой приложений Система для iPad получила ряд полезных функций, направленных на повышение вашей продуктивности.

20 популярных игр Bethesda пополнят библиотеку игр Xbox Game Pass 12 марта Как и ожидалось, в рамках сегодняшнего круглого стола «Bethesda joins Xbox» объявили масштабное расширение библиотеки подписочного сервиса Game Pass играми Bethesda — уже завтра, 12 марта, 20 знаменитых игр издательства. 16 из этих игр будут доступны на ПК, Xbox и в xCloud. ...

Sony хочет, чтобы владельцы Nintendo Switch играли на ней в игры для PS4 Sony PS4 — самая популярная игровая консоль своего поколения. Nintendo Switch — самая быстрорастущая. Неудивительно, что у Sony возникла идея дать возможность владельцам Switch играть в игры для PlayStation. Пока не стоит говорить, что такая возможность точ...

Блоки и атрибуты блоков Использование блоков считается у проектировщиков хорошим тоном. А применение собственной библиотеки блоков – признаком мастерства при работе в САПР. Как создать свою библиотеку блоков? Зачем использовать атрибуты в блоках? Разберем подробнее эти и другие интересные вопросы.Б...

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

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

Reactive Data Display Manager. История одного рефакторинга Борясь с рутиной по конфигурации UITableView и UICollectionView, мы создали библиотеку RDDM. В её основе — адаптер, имплементирующий DataSource и Delegate, и генератор, соответствующий ячейке коллекции.Библиотека дорабатывалась и становилась мощнее. Но чем больше мы вно...

[Перевод] «Ленивая» загрузка с помощью Intersection Observer API Доброго времени суток, друзья! В данной статье мы познакомимся с Intersection Observer API, новым мощным инструментом для «ленивой» загрузки изображений и других элементов на странице, поддерживаемым всеми современными браузерами. Мы можем использовать этот инструмент для...

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

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

Управление Яндекс.Станцией и другими колонками с Алисой из Home Assistant Мы привыкли называть умными устройства, которыми можем управлять, не вставая с дивана. Включить лампочку, вентилятор, кофеварку или стиральную машину. Колонки с Яндекс Алисой хоть и называются умными, но вы не можете изменить громкость не находясь рядом с колонкой (орать че...

[Перевод] Интерактивная визуализация данных при помощи Plotly: строим красивые графики с Express и Cufflinks Если Вы все еще используете Matplotlib для создания графиков в Python, самое время взглянуть на мир с высоты альтернативной библиотеки интерактивной визуализации. Plotly позволяет создавать красивые, интерактивные, экспортируемые графики с помощью всего нескольких строк к...

[Перевод] Разработка MQ JMS приложения на Spring Boot Разработчики приложений, работающие на Java, при использовании интерфейса JMS, часто предпочитают работать со Spring Framework. Spring может упростить написание кода новых приложений, предоставляя шаблоны для общих паттернов (templates for common patterns) и успешно исполь...

SQL в DjangoORM Меня зовут Алексей Казаков, я техлид команды «Клиентские коммуникации» в ДомКлик. В большинстве приложений, с которыми мне приходилось иметь дело, при взаимодействии с БД не ограничиваются лишь драйвером, который позволяет выполнять сырые запросы. Для удобства и избавл...

Победители Material Design Award 2020 Победители конкурса Material Design Award служат отличным примером материального дизайна в действии, используя систему в качестве гибкой настраиваемой основы для создания красивых и удобных приложений.

Скажи мне что ты измеряешь… На недавно прошедшем курсе «Управление архитектурой предприятия на основе TOGAF и IT4IT» возник вопрос о соотношении/противопоставлении моделей, предлагаемых для описания функционирования ИТ, IT4IT (The Open Group IT4IT Reference Architecture) и библиотекой ITILv3. На самом ...

Идеальный инструмент для создания прогрессивных веб-приложений или Все, что вы хотели знать о Workbox. Часть 1 Что такое Workbox? Workbox (далее — WB) — это библиотека (точнее, набор библиотек), основной целью которой является "предоставление лучших практик и избавление от шаблонного кода при работе с сервис-воркерами" (далее — СВ). Если вы впервые слышите о СВ, то перед и...

[Из песочницы] Urban Bot или как писать чат-ботов для Telegram, Slack, Facebook… на React.js В этой статье я хочу познакомить с новой библиотекой Urban Bot, которая адаптирует React для написания чат-ботов. Ниже я расскажу, зачем эта библиотека появилась на свет, какие дает преимущества и как написать вашего первого чат-бота. Чат-бот — это чаще всего отдельный чат ...

[Перевод] Продвинутый уровень визуализации данных для Data Science на Python Как сделать крутые, полностью интерактивные графики с помощью одной строки Python Когнитивное искажение о невозвратных затратах (sunk cost fallacy) является одним из многих вредных когнитивных предубеждений, жертвой которых становятся люди. Это относится к нашей тенденции...

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

Моментальная загрузка с instant.page instant.page — это небольшой скрипт, позволяющий ускорять навигацию по сайту с помощью just-in-time предзагрузки. Когда пользователь наводит курсор на ссылку, страница предзагружается в фоне, и при переходе по ссылке открывается моментально. По тому же принципу работает In...

Виджеты на главном экране, библиотека приложений и App Clips: Apple выпустила финальную версию iOS 14 Обновление совместимо с iPhone SE, iPhone 6s и новее, а также последней моделью iPod Touch.

[Перевод] Проект ELISA: Linux в Safety-Critical системах Представляем вам перевод пресс-релиза (февраль 2019) в котором анонсируется проект ELISA, который позволит включать Linux в системы, для которых критически важна безопасность. За наводку спасибо lingvo Arm, BMW Car IT GmbH, KUKA, Linutronix и Toyota присоединяются к прое...

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

Bison, dynamic linking и… обработка BMP изображений В этом посте я постараюсь раскрыть тему написания несложного модульного приложения на языке C89 для обработки 24-битных BMP изображений, использующего в своей работе простой скриптовый язык.Если вы заинтересованы в разработке языков или вам необходимо быстро разобраться как ...

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

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

Android: обнаружение Frida, отключение проверки на root и Android 11 Для подписчиковСегодня в выпуске: восемь способов обнаружить внедрение Frida в приложение, три совета, как защитить нативные библиотеки от реверса, отключение проверки на root в подопытном приложении, защита от метарефлексии в Android 11, принцип работы Huawei Quick Apps, а ...

Фреймворк Camel: сравнение компонентов HTTP и AHC В данной статье производится сравнение работы простейших сервисов реализованных с помощью фреймворка Camel и двух его компонентов: HTTP и AHC. Углубляться в структуру и работу с самим фреймворком не будем, предполагается что читатель уже немного знаком с ним. Читать далее

Я бы не отказался от библиотеки приложений на Mac, а вы? Библиотека приложений стала одним из главных дизайнерских нововведений iOS 14. И в то же время самым спорным обновлением из всех. Одни пользователи нашли ее очень удобной, в то время как остальные, кто аккуратно годами складывал приложения по папкам, оказались возмущены еще...

«Яндекс» откроет библиотеку приложений для работы с ИИ Nvidia GPU Cloud (NGC) — это библиотека специализированного ПО, сейчас в ней доступно более 80 оптимизированных приложений для работы с искусственным интеллектом, машинным обучением, нейронными сетями и высокопроизводительными вычислениями.

Navigation Component-дзюцу, vol. 1 — BottomNavigationView Два года назад на Google I/O Android-разработчикам представили новое решение для навигации в приложениях — библиотеку Jetpack Navigation Component. Про маленькие приложения уже было сказано достаточно, а вот о том, с какими проблемами можно столкнуться при переводе большого...

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

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

Тесты в Python: все основные подходы, плюсы и минусы. Доклад Яндекса Перед вами доклад Марии Зеленовой zelma — разработчика в Едадиле. За час Маша рассказала, в чём состоит тестирование программ, какие тесты бывают, зачем их писать. На простых примерах можно узнать про библиотеки для тестирования Python-кода (unittest, pytest, mock), принципы...

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

[Из песочницы] Валидация данных в C++ с использованием библиотеки cpp-validator Казалось бы, валидация данных — это одна из базовых задач в программировании, которая встретится и в начале изучения языка вместе с "Hello world!", и в том или ином виде будет присутствовать в множестве зрелых проектов. Тем не менее, Google до сих пор выдает ноль ...

Microsoft выпустила Project Reunion Preview 0.5 Project Reunion — это новый набор компонентов и инструментов для разработчиков, который представляет собой следующую эволюцию платформы разработки приложений Windows. Project Reunion предоставляет унифицированный набор API-интерфейсов и инструментов, которые могут согласован...

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

Новогодний IMaskjs 6 — React Native, Pipes, ESM Всем привет! Я только что выпустил релиз шестой версии библиотеки imaskjs. После каждого мажорного релиза мне кажется, что это последняя версия. Библиотеке уже не один год, она стабильна и достаточно популярна среди сообщества. Что там еще можно сделать да еще и на мажорную...

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

[Из песочницы] Управление интерфейсом приложения при помощи жестов (Keras + CoreML) В настоящее время популярность программ с использованием искусственных нейронных сетей растет, в связи с этим появляется большое количество технологий, позволяющих упростить работу связанную с ними. В настоящей статье будет описан один из возможных путей реализации приложени...

AMD выпустила открытую библиотеку FEMFX для создания реалистичной физики Компания AMD сообщила о доступности библиотеки деформируемой физики FEMFX (Finite Element Method — метод конечных элементов), предназначенной для расчета процессов на многоядерных ЦП. Библиотека является частью инициативы GPUOpen. Разработчики могут получить доступ к.....

jsqry — лучше, чем jq В своей прошлой статье на Хабре я писал про библиотеку Jsqry, которая предоставляет простой и удобный язык запросов (DSL) к объектам JSON. С тех пор прошло много времени и библиотека тоже получила свое развитие. Отдельный повод для гордости — библиотека имеет 98% покрытие ко...

Повторяем когортный анализ, выполненный в Power BI, силами Python Добрый день уважаемые читатели! Поводом для написания данной публикации послужил вебинар, который я посмотрел на Youtube. Он был посвящен когортному анализу продаж. Автор использовал для работы с данными платформу Power BI Desktop. Ссылку на указанное видео приводить не буду...

Представляем бета-версию Jetpack Compose Совсем недавно, 24 февраля, мы анонсировали запуск бета-версии Jetpack Compose. Этот новый набор инструментов для разработки пользовательского интерфейса позволит легко и быстро создавать оригинальные приложения для всех платформ Android. Jetpack Compose предоставляет с...

Как визуализировать граф Spring Integration с помощью Neo4j? Фреймворк Spring Integration умеет отдавать текущее состояние всех EIP-компонентов и их связей в виде JSON-графа. Это кажется очень удобным для изучения и отладки, но увы, ни один из нагугливаемых инструментов (коих всего-то раз /два) не даёт достаточной гибкости для визуал...

[Перевод] Дизайн-токены способны на большее: создаем единый источник информации о компонентах UI Термином «дизайн-система» в IT давно никого не удивишь. Компании систематизируют дизайн продуктов, придумывая свои или используя чужие инструменты для управления стилями, паттернами и компонентами.  Badoo не является исключением: с помощью нашей дизайн-системы Cosmos мы подд...

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

Новые «плюшки» для игр в Windows 10. Microsoft выпустила значимое обновление Xbox Game Bar Компания Microsoft выпустила значимое обновление для игрового инструмента Xbox Game Bar в операционной системе Windows 10. Обновление приносит новые функции, которые позволяют управлять ресурсами и производительностью, не покидая игры.  Теперь пользователи могут б...

Взрослый back-end на node.js возможен? В экосистеме Node.js существует довольно много библиотек и фреймворков, которые пользуются определенной популярностью в сообществе. Но ни один из инструментов не решил главную проблему, с которой сталкиваются разработчики, когда пытаются писать бэкенд на Node.js. Это проблем...

[Перевод] Добавляем параллельные вычисления в Pandas Возможно вы сталкивались с задачей параллельных вычислений над pandas датафреймами. Решить эту проблему можно как силами нативного Python, так и с помощью замечательной библиотеки — pandarallel. В этой статье я покажу, как эта библиотека позволяет обрабатывать ваши данные с ...

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

[Перевод] Архитектурный шаблон MVI в Kotlin Multipaltform, часть 1 Около года назад я заинтересовался новой технологией Kotlin Multiplatform. Она позволяет писать общий код и компилировать его под разные платформы, имея при этом доступ к их API. С тех пор я активно экспериментирую в этой области и продвигаю этот инструмент в нашей компани...

[Перевод] Как защитить Python-приложения от внедрения вредоносных скриптов Python-приложения используют множество скриптов. Этим и пользуются злоумышленники, чтобы подложить нам «свинью» — туда, где мы меньше всего ожидаем её увидеть. Одним из достоинств Python считается простота использования: чтобы запустить скрипт, нужно просто сохранить его ...

Книга «C++ для профи» Привет, Хаброжители! С++ — популярный язык для создания ПО. В руках увлеченного программиста С++ становится прекрасным инструментом для создания лаконичного, эффективного и читаемого кода, которым можно гордиться. «C++ для профи» адресован программистам среднего и продвину...

Виджеты и библиотека приложений в iOS 14 навсегда изменят экран вашего iPhone Главный экран iPhone практически не менялся со времени дебюта iPhone 13 лет назад. Он представлял собой простую сетку иконок и оставался таким же вплоть до выхода iOS 13 (где в iPad впервые появились виджеты). В iOS 8 Apple добавила поддержку виджетов, хотя снова по своему ...

[Перевод] Чем отличаются Dagger, Hilt и Koin под капотом? Dagger и Koin, без сомнения, являются двумя самыми популярными фреймворками для внедрения зависимостей на Android. Обе эти библиотеки служат одной цели и кажутся очень похожими, но работают они по-разному.А при чем здесь Hilt? Hilt — это библиотека, которая использует Dagger...

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

Flutter BloC паттерн + Provider + тесты + запоминаем состояние Эта статья выросла из публикации “BLoC паттерн на простом примере” где мы разобрались, что это за паттерн и как его применить в классическом простом примере счетчика. По комментам и для своего лучшего понимания я решил попробовать написать приложение в котором будут получены...

Некоторые методы детектирования отладки iOS приложений Изучение приложений на платформе iOS - это достаточно сложная задача, которая разрешима, если использовать правильный набор инструментов. Основа такого набора - устройство с установленным jailbreak и инструмент frida Frida.Далее будет рассказано о нескольких способах детекти...

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

Архитектура и дизайн Android приложения (мой опыт) Хабр, привет! Сегодня я хочу рассказать об архитектуре, которой я следую в своих Android приложениях. За основу я беру Clean Architecture, а в качестве инструментов использую Android Architecture Components (ViewModel, LiveData, LiveEvent) + Kotlin Coroutines. К статье прил...

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

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

Spiral: высокопроизводительный PHP/Go фреймворк Привет, Хабр. Меня зовут Антон Титов, CTO компании Spiral Scout. Сегодня я хотел бы рассказать вам про нашего PHP-слона. А точнее про вторую версию опен-сорсного full-stack PHP/Go фреймворка — Spiral. Spiral — это компонентный full-stack фреймворк, разрабатываемый нашей к...

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

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

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

JavaScript: изучаем регулярные выражения на практике Регулярное выражение (далее также — регулярка) — это последовательность специальных символов, формирующих паттерн или шаблон (pattern), который сопоставляется со строкой. Цель такого сопоставления может состоять либо в поиске подстроки в строке, например, для замены подстро...

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

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

Хакеры используют .NET библиотеку для создания вредоносных файлов Excel Группировка Epic Manchego использует в атаках специальные файлы Excel, созданные для обхода защитных механизмов, обнаружили аналитики NVISO Labs. Такие файлы создаются не через Microsoft Office, а с использованием .NET библиотеки EPPlus.

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

[Перевод] Первое знакомство с Moon.js Сегодня речь пойдёт об очередной JavaScript-библиотеке, предназначенной для разработки интерфейсов. Возникает такое ощущение, что такие библиотеки появляются всё чаще и чаще. В этом материале мы рассмотрим библиотеку Moon.js и раскроем её особенности, о которых нужно знать д...

Проект Natasha. Набор качественных открытых инструментов для обработки естественного русского языка (NLP) Два года назад я писал на Хабр статью про Yargy-парсер и библиотеку Natasha, рассказывал про решение задачи NER для русского языка, построенное на правилах. Проект хорошо приняли. Yargy-парсер заменил яндексовый Томита-парсер в крупных проектах внутри Сбера, Интерфакса и РИА...

Пентест вебсайта с помощью Owasp Zap Сегодня защита веб-приложения имеет решающее значение, поэтому осваивать пентест инструменты приходится и самим разработчикам. О мощном фреймворке WPScan для пентеста WordPress мы уже писали, но сайты бывают и на других движках. Именно поэтому сегодня разберем более универс...

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

[Перевод] Разработчик популярного веб-фреймворка FastAPI — об истории его создания и перспективах аннотаций типов Python Python-девелопер и писатель Рики Уайт взял интервью у Себастьяна Рамиреса, разработчика из Explosion AI. Но Себастьян не просто разработчик, это заметная фигура в open source сообществе, создатель популярных фреймворков FastAPI и Typer. В основном речь шла про широкие возм...

[Из песочницы] Что такое Flutter и почему вы должны изучать его в 2020 году Привет, Хабр! Представляю вашему вниманию перевод статьи: "What is Flutter and Why You Should Learn It in 2020" автора Gaël Thomas. Что такое Flutter? Flutter — бесплатный и открытый набор средств разработки мобильного пользовательского интерфейса, созданный компанией Google...

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

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

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

QSerializer умер, да здравствует QSerializer Прошло несколько месяцев с тех пор, как я здесь рассказал о своем проекте Qt-based библиотеки для сериализации данных из объектного вида в JSON/XML и обратно. И как бы я не гордился выстроенной архитектурой, надо признать — реализация получилась, прямо скажем, спорной. Вс...

iOS 14: что умеет новая библиотека приложений На презентации новой iOS 14 Apple представила так называемую библиотеку приложений (App Library). Она должна помочь навести порядок на рабочем столе. О том, что может эта библиотека, рассказываем в статье. 

[Перевод] Почему Context — это не инструмент «управления состоянием» TL;DR Context и Redux — это одно и тоже? Нет. Это разные инструменты, делающие разные вещи и используемые в разных целях. Является ли контекст инструментом «управления состоянием»? Нет. Контекст — это форма внедрения зависимостей (dependency injection). Это транспортный м...

[Перевод] 5 возможностей Python, о которых я не знал — а зря Python можно без сомнений называть языком, испытавшим в последнее десятилетие значительный рост, языком, который доказал свою мощь. Я создал множество Python-приложений — от интерактивных карт до блокчейнов. Python обладает огромным количеством возможностей. Начинающим очень...

Государство дало «Роснано» 2 миллиарда на ИТ Обновленная версия федерального проекта "Цифровые технологии" нацпрограммы "Цифровая экономика" предполагает новую цель - увеличения объема выручки проектов в сфере цифровых технологий (в том числе сквозных цифровых технологий), поддержанных фондом прямых...

[Перевод] Делаем печатные ссылки кликабельными с помощью TensorFlow 2 Object Detection API TL;DR В этой статье мы начнем решать проблему того, как сделать печатные ссылки в книгах или журналах кликабельными используя камеру смартфона. С помощью TensorFlow 2 Object Detection API мы научим TensorFlow модель находить позиции и габариты строк https:// в изображениях ...

Что такое v9s, и почему потребовалось писать еще одну библиотеку валидации? Примерно год назад фронтенд нашего проекта, в качестве фреймворка для которого используется Vue.js 2, дошел до состояния, хорошо описываемого словами "проще сжечь".К тому времени наш нетипизированный корабль уже трещал по всем швам, и решено было убить сразу нескольких зайце...

Что нового в RxJava 3 Весной 2020 года вышла свежая версия фреймворка RxJava – RxJava 3. Давайте рассмотрим, в чем заключаются основные изменения, как можно перейти с RxJava 2 на новую версию и стоит ли вообще мигрировать. Отметим, что в новой версии нет глобальных изменений, но появилась подде...

Мотивация персонала: материальная и нематериальная Ох, уж эта мотивация! Какая хитрая и гибкая штука. Сколько подводных камней и тонкостей скрыто под этим термином. Как умело манипулируют персоналом матёрые HR и руководители. Но я вам сегодня расскажу, что работает, а что нет. Где в холостую, а где в самую цель. Конечно,...

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

[Перевод] Как Asana использует Kubernetes В Asana мы используем Kubernetes для развертывания сервисов и управления ими независимо от монолитной инфраструктуры. Поначалу у нас были некоторые проблемы, и чтобы стандартизировать создание и обслуживание приложений Kubernetes, мы создали фреймворк с незамысловатым назва...

Стала известна цена компонентов Samsung Galaxy S20 Ultra Профильный ресурс TechInsights подсчитал стоимость компонентов топового смартфона Samsung Galaxy S20 Ultra, базовая версия которого продается по цене в 1400 долларов. Итак, компоненты, а также сборка одного смартфона обходятся Samsung в 528,5 доллара. Для сравнения, себестои...

[Перевод] Результат интеграции Pine A64 и TRS-80 Model 100 В этой статье подводятся итоги установки компонентов однопалатного компьютера Pine A64 LTS SBC в корпус старинного компьютера TRS-80 Model 100. При этом подключается дополнительный дисплей, задействуется аппаратная клавиатура, и в целом в старое устройство вдохнули новую ж...

Pixockets: как мы написали собственную сетевую библиотеку для игрового сервера Привет! На связи Станислав Яблонский, Lead Server Developer из Pixonic. Когда я только пришел в Pixonic, наши игровые сервера представляли собой приложения на основе Photon Realtime SDK: многофункционального, но весьма тяжелого фреймворка. Решение это, казалось бы, должно...

[Из песочницы] Переключение шаблона страниц во vuejs Иногда в приложении требуется шаблоны для различных страниц, чтобы не копировать код от компонента к компоненту, мы прописываем шаблон в основном компоненте (он же, обычно, App.vue) и с помощью <router-view> подставляем в него различные вьюшки. Как мы видим, у различ...

Работа с камерой на платформе HMS: улучшаем качество съёмки и добавляем различные режимы в свои приложения Привет, Хабр! Пользователям смартфонов HUAWEI и HONOR по умолчанию доступно большое количество режимов и эффектов съёмки: ночная съёмка, распознавание сцен, HDR, широкая диафрагма и т. д. С помощью набора инструментов Camera Engine эти и другие режимы можно добавить в любое ...

Web Sip клиент на основе JsSIP + FreePBX У FreePBX есть Web Sip клиент. Мне было интересно как он работает. Начав изучать технологию WebRTC я наткнулся на 3 библиотеки — это JsSIP, его fork SIP.js, а также sipml5. JsSIP и SIP.js не удалось запустить с первого раза, не хватало опыта. А вот sipml5 оказался самым про...

Наследование компонентов в Angular: простой способ решить проблему с Dependency Injection Итак, собственно проблема: порой у нас в проекте есть много похожих компонентов, с одинаковой логикой, одинаковыми DI, свойствами итд и возникает мысль: а почему бы не вынести все это дело в базовый компонент (точнее директиву) абстрактным классом, а остальные компоненты уже...

В мае в библиотеку Xbox Game Pass войдут Red Dead Online, Final Fantasy X/X-2, FIFA 21 и другие игры Команда Xbox в своём блоге опубликовала список игр, которые появятся в каталоге подписки Xbox Game Pass до 13 мая этого года. В частности, на консолях в библиотеку будет добавлен Red Read Online. Новинки Xbox Game Pass на ближайшие недели: Dragon Quest Builders 2 (Xbox и П...

[Из песочницы] NodeJS Бот для Телеграм с обработкой математических выражений Начало работы Сначала создаём каталог где будет храниться сам бот. Здесь инициализируем npm. npm init Используемые модули В разработке я буду использовать TypeScript и библиотеку SlimBot. Читать дальше →

CucumberTalks: избегаем антипаттернов и пишем выразительные сценарии Фреймворк Cucumber используют как часть bdd-подхода к разработке, так и как отдельный инструмент для автотестов. 40+ млн скачиваний обеспечили фреймворку богатый опыт использования, но актуализировали поверхностное отношение к этому инструменту. Разбираем популярные огуреч...

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

[Перевод] 5 визуализаций, который помогут улучшить Data Story Статья переведена в преддверии запуска курса «Разработчик Python». Сторителлинг – один из важнейших навыков для специалистов, которые занимаются анализом данных. Чтобы доносить идеи и делать это убедительно, нужно простраивать эффективную коммуникацию. В этой статье мы поз...

Разработка приложения с использованием Python и OpenCV на Android устройстве В это статье я хочу показать пример того, как андроид устройство можно использовать для разработки на таких языках программирования как python с библиотекой opencv в среде VSCode (будет использован code-server). В конце статьи приведено небольшое сравнение производительнос...

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

Бинарная совместимость Reaktive: как мы её обеспечиваем Привет! Меня зовут Юрий Влад, я Android-разработчик в компании Badoo и принимаю участие в создании библиотеки Reaktive — Reactive Extensions на чистом Kotlin. Любая библиотека должна по возможности соблюдать бинарную совместимость. Если разные версии библиотеки в зависимостя...

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

[Перевод] React: наглядное пособие для начинающих. Создаем свой компонент без знаний JavaScript React — это библиотека JavaScript для создания пользовательского интерфейса. Это официальное определение React. Но что если вы не знаете, что такое JavaScript? Что если вы не разработчик? Смогли бы вы тогда понять, что такое React? Однозначно ДА. Именно поэтому я и написал ...

[Перевод] Python-пакеты для Data Science Python — это один из самых распространённых языков программирования. Хотя стандартные возможности Python достаточно скромны, существует огромное количество пакетов, которые позволяют решать с помощью этого языка самые разные задачи. Пожалуй, именно поэтому Python и пользуетс...

До 26 августа в библиотеку Xbox Game Pass войдут Psychonauts 2, Humankind, Twelve Minutes и другие игры Команда Xbox в своём блоге опубликовала список игр, которые появятся в библиотеке Xbox Game Pass до 26 августа этого года. Новинки Xbox Game Pass на ближайшие недели: Humankind (ПК) — 17 августа Recompile (Xbox и ПК) ID@Xbox — 19 августа Train Sim World 2 (Xbox и ПК) — 19 ...

Про кластер серверов 1С Кластер — это разновидность параллельной или распределённой системы, которая: 1. состоит из нескольких связанных между собой компьютеров; 2. используется как единый, унифицированный компьютерный ресурс Gregory F. Pfister, «In search of clusters». Дано: есть бизнес-прило...

Настройка инструментов стандартной библиотеки Golang для production Привет, Хабр, меня зовут Богданов Илья, я работаю ведущим инженером в команде веб-разработки. Сегодня я вам расскажу, как настроить стандартную библиотеку Golang так, чтобы избежать неожиданных ошибок в production.Моя статья ориентирована в основном на начинающих разработчик...

[Перевод] 5 современных альтернатив старым инструментам командной строки Linux Используя более современные альтернативы наряду со старыми инструментами командной строки, можно получить больше удовольствия и даже повысить производительность труда. В повседневной работе в Linux / Unix мы используем множество инструментов командной строки — например, d...

Deepcool CL500 4F AP выглядит интересно Официально представлен новый компьютерный корпус Deepcool CL500 4F AP, который выглядит весьма интересно и современно — ровные панели, серебристый цвет и прочие тонкости делают продукт весьма интересным приобретением. При этом стоит сказать, что в комплекте с устройством иде...

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

Простое и удобное журналирование ошибок для сайтов на .NET Core Возможно, многим знакома библиотека ELMAH (Error Logging Modules and Handlers), которая позволяет организовать простое журналирование ошибок для любого сайта, созданного с помощью .NET Framework. Этот простой и проверенный временем инструмент выручал меня во многим проектах...

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

В январе библиотека Xbox Game Pass пополнится новыми играми: Torchlight III, Injustice 2, eFootball PES 2021 В декабре мы рассказали о том, что игровой облачный сервис Xbox Game Pass обзаведётся достаточно большим количеством игр (сюда входит даже серия Yakuza). Уже начиная с 7-го декабря библиотека этого сервиса пополнится новыми играми. Он доступен на PC, консоли от Microsoft (Xb...

[Из песочницы] Различные способы передачи данных в компоненты Angular Привет, Хабр! Представляю вашему вниманию перевод статьи «Different Ways to Pass Inputs to a Component in Angular» автора Netanel Basal. В этой статье, мы разберём три разных способа передачи данных в компонент. В следующем примере мы будем использовать select как главный...

Работа с файлами в C++ с использованием Boost Привет! Я время от времени рассказываю на Хабре о решениях распространённых задач на C++, и вообще люблю делиться опытом. Поэтому даже написал целую книгу, которая называется «Разработка приложений на С++ с использованием Boost». Она может быть интересна разработчикам, кото...

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

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

[Из песочницы] Flutter. Как прокачать ваш BLoC Реализующих BLoC паттерн библиотек много. Но та, о которой я расскажу, необычная, и называется isolate_bloc. Как можно понять из названия — это какой-то необычный блок, а особенность его в том, что он работает в отдельном Isolate (далее изолят) и не тормозит ваш UI. В че...

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

[Перевод] Расширьте возможности машинного обучения Azure с помощью расширения VS Code Привет сообществу Python! Прошло много времени с тех пор, как мы последний раз писали об этом, но мы рады представить новые возможности, добавленные в расширение VS Code Azure Machine Learning (AML). Начиная с версии 0.6.12, мы представили изменения в пользовательском интерф...

Пользователи GeForce NOW теперь могут синхронизировать игры с библиотекой Steam Компания NVIDIA объявила о появлении новой функции в облачном сервисе GeForce NOW, которая облегчит жизнь пользователям Steam с большой библиотекой — теперь служба сама сканирует и добавляет в библиотеку доступные игры. Теперь пользователи могут синхронизировать свои библиот...

[Перевод - recovery mode ] Программирование GPU на Java Получение доступ к GPU из Java раскрывает огромную мощь. Здесь рассказывается как GPU работает и как получить доступ из Java. Программирование устройства графического процессора (GPU) является заоблачным миром для Java программистов. Это понятно, так как обычные задачи для ...

Активисты построили в Minecraft свободную «Библиотеку без цензуры» Студия BlockWorks, коллектив художников и дизайнеров, построила в игре Minecraft глобальную цифровую библиотеку «The Uncensored Library»(Библиотека без цензуры). Ее открытие состоялось 12 марта, во Всемирный день борьбы с киберцензурой, и это не просто масштабный игровой объ...

oVirt за 2 часа. Часть 2. Установка менеджера и хостов Эта статья — следующая в цикле по oVirt, начало здесь. Статьи Введение Установка менеджера (ovirt-engine) и гипервизоров (hosts) — Мы здесь Дополнительные настройки Итак, рассмотрим вопросы первичной установки компонентов ovirt-engine и ovirt-host. Читать дальше →

Microsoft отделяет панель задач от Explorer.exe в Windows 10 Компания Microsoft, по всей видимости, работает над отделением панели задач от Explorer.exe, перенеся соответствующий исходный код в отдельную DLL-библиотеку. Инсайдер, известный под ником Albacore, обнаружил соответствующее изменение в инсайдерской сборке Windows 10 под но...

[Перевод] Docker Compose: от разработки до продакшена Перевод транскрипции подкаста подготовлен в преддверии старта курса «Администратор Linux» Docker Compose — это удивительный инструмент для создания рабочего окружения для стека, используемого в вашем приложении. Он позволяет вам определять каждый компонент вашего приложени...

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

[Перевод] Clustergram: визуализация кластерного анализа на Python В этой статье, переводом которой мы решили поделиться специально к старту курса о Data Science, автор представляет новый пакет Python для генерации кластерограмм из решений кластеризации. Библиотека была разработана в рамках исследовательского проекта Urban Grammar и совмест...

Отдельная подписка Xbox Game Pass для ПК доступна в России и по всему миру Компания Microsoft начала продажи отдельной подписки Xbox Game Pass для ПК по всему миру, включая Россию.  Ранее подписка Xbox Game Pass для ПК была доступна только в составе Xbox Game Pass Ultimate. В России доступ к библиотеке Xbox Game Pass для ПК на 3 месяца м...

Можно ли сложить N чисел типа double наиболее точно? В предыдущих сериях… Прошлая статья рассказала о двух способах сложения двух двоичных чисел с плавающей запятой без потери точности. Чтобы добиться этого, мы представили сумму c=a+b в виде двух чисел (s,t)=a+b, причём таких, что s — наиболее близкое к a+b точно-представимое ...

[Перевод] Напишем и поймем Decision Tree на Python с нуля! Часть 3. Библиотека для анализа данных Pandas Привет, Хабр! Представляю вашему вниманию перевод статьи "Pythonで0からディシジョンツリーを作って理解する (3. データ分析ライブラリPandas編)". Это третья статья из серии. Ссылки на предыдущие статьи: первая, вторая В данной статье я объясню, как работать с библиотекой Pandas, чтобы создавать De...

Google закрывает сервис обмена 3D-моделями Poly Компания Google снова показала, что слишком полагаться на ее сервисы не стоит. Поисковый гигант объявил, что закрывает Poly, библиотеку 3D-объектов и платформу для обмена ими, которая была запущена в 2017 году и, в первую очередь, нацелена на создателей VR и AR. Сервис ...

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

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

Я выпустил Grafar — JS-библиотеку для визуализации После пяти лет в столе я готов представить свою библиотеку для визуализации — grafar. У нас есть: 3D, реактивные вычисления и самое простое АПИ для построения математических графиков прямо в браузере. В статье рассказываю, что я сделал и как этим пользоваться. Читать далее

[recovery mode] Уйти от jQuery к Svelte, как это было Всем привет. Это отчёт в продолжение статьи "Уйти от jQuery к Svelte, без боли". Ниже я расскажу о трудностях с которыми столкнулся, их было не много, и только одна была настолько фундаментальной, где без поддержки сообщества я бы не справился. Введение Я планир...

Наследование шаблонов в ванильном PHP за 35 строк кода? В WordPress шаблоны нативные, что хорошо, - не надо учить дополнительный язык. Но очень хочется наследовать шаблоны как в Twig, а PHP из коробки так не умеет. Вдохновляться было решено библиотекой phpti, в которой нашлось несколько обидных моментов, которые очень захотелось ...

Жуки, бабочки, цикады и прочие. Google пополнила библиотеку AR-поиска более чем двумя десятками разных насекомых Google продолжает активно наполнять библиотеку 3D-объектов, с которыми можно взаимодействовать в дополненной реальности прямо из результатов поиска. Google объявила о внедрении поддержки дополненной реальности в рамках расширения функциональности панели Knowledge Panel в 201...

[Из песочницы] Aspect Oriented Programming (AOP) через исходный код Аспектно-ориентированное программирование очень привлекательная концепция для упрощения кодовой базы, создания чистого кода и минимизации ошибок типа копипасты. Сегодня, в большинстве случаев, внедрение аспектов идёт на уровне байт кода, т.е. после компиляции, некий инстр...

На iPad запустили «Библиотеку приложений» и виджеты на рабочем столе. Apple, неужели это так трудно? Ждем официально в iOS 15 таких же «плюшек»

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

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

Авалония для самых маленьких В свежем превью Rider, помимо прочего, появилась поддержка Авалонии. Авалония — это самый крупный .NET фреймворк для разработки кроссплатформенного UI, и его поддержка в IDE — отличный повод наконец разобраться, как писать десктопные приложения для любых платформ. В этой ст...

Benchmark OpenCV на STM32 Сегодня обработка изображений прочно вошла в нашу жизнь. Никого не удивляет распознавание лиц или дорожной разметки. Самой распространенной библиотекой для этих целей на данный момент является OpenCV. На сегодняшний день OpenCV ориентирован прежде всего на большие платформы...

[Перевод] Первое знакомство с JavaScript-библиотекой Solid Solid — это реактивная JavaScript-библиотека для создания пользовательских интерфейсов без использования виртуальной DOM. Она однократно компилирует шаблоны, превращая их в узлы реальной DOM, а благодаря тщательно спланированным механизмам обновления контента при изменении с...

Линус Торвальдс остался недоволен рядом моментов в использовании Rust для Linux В прошлом году разработчики ядра Linux предложили использовать Rust для нового встроенного кода. В марте 2021 года эта идея была частично реализована — в состав ветки linux-next, на которой будет базироваться Linux 5.13, включили начальный набор компонентов для разработки д...

Wonder Bar — это как Touch Bar, только для мобильных ПК с Windows 10X Как известно, компания Microsoft разработала специально для двухэкранных мобильных устройств операционную систему Windows 10X. Конечно, это не полностью новая ОС, а скорее просто оптимизированный вариант обычной Windows 10 с рядом изменений и новых функций. Одна из них ...

ChatLayout: UI для чатов ChatLayout — альтернатива MessageKit, набор компонентов для создания чатов. Использует кастомную UICollectionViewLayout и инструменты UICollectionView, упрощая отображение переписок.  Поддерживает автоматическое изменение размеров ячеек, анимацию элементов, необходимое...

Open source: CI/CD и тестовая инфраструктура Авито для Android Мы вынесли в open source инфраструктуру Авито для Android: Gradle плагины, эмуляторы и библиотеки для тестов. Наш код будет полезен при автоматизации CI/CD, а также облегчит написание и поддержку автотестов. В этой обзорной статье мы расскажем, по...

Facebook объявил о покупке Giphy Facebook покупает один из самых популярных поисковиков по GIF в интернете – Giphy. По данным Axios, стоимость сделки составила $400 млн. Согласно официальному заявлению Facebook, сотрудники стартапа присоединятся к команде Instagram. Библиотека Giphy будет интегрирована с In...

[Из песочницы] Установка и настройка RTKRCV (RTKLIB) на Windows 10 с использованием WSL Здравствуйте, в данной статье разбирается процесс установки и запуска приложения RTKRCV из открытой библиотеки RTKLIB, разрабатываемой командой Томоджи Такасу (Япония). RTKLIB — это программный пакет с открытым исходным кодом для стандартного и точного позиционирования с и...

[Перевод] Стек технологий Shiro Games Наш игровой движок Heaps.io и набор инструментов и технологий, на котором он основан, являются результатом опыта, накопленного за двадцать лет, посвященных созданию игр: сначала в компании Motion-Twin (создатели Dead Cells), а с 2012 года в Shiro Games (Evoland, Northgard и ...

Установка УТМ 4.x на АТОЛ-HUB20 Установка УТМ 4.x на АТОЛ-HUB20.В январе 2021 года компания АТОЛ прекратила развитие проекта «HUB-УТМ». На сайте появилась прошивка для Атол-Hub20 с возможностью установки УТМ 4.x , но УТМ не стартует. Запускаем УТМ4 путем подмены бинарников и библиотек Java и библиотеки PKC...

[Перевод] Безопасность hdfs hive hbase используя knox и ranger Apache HDFS (Hadoop Distributed File System) — файловая система, предназначенная для хранения файлов больших размеров, поблочно распределённых между узлами вычислительного кластера. Apache Hive — система управления базами данных на основе платформы Hadoop. Apache HBase — СУБ...

[Перевод - recovery mode ] Понимание LDAP-протокола, иерархии данных и компонентов записей Введение LDAP, или Lightweight Directory Access Protocol, является открытым протоколом, используемым для хранения и получения данных из каталога с иерархической структурой. Обычно используемый для хранения информации об организации, ее активах и пользователях, LDAP является ...

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

Зачем нужна библиотека приложений в iOS 14 Помимо виджетов, одной из главных фишек iOS 14 стала библиотека приложений (App Library). Это новая функция, которая автоматически группирует все приложения на iPhone. Больше не нужно самостоятельно создавать папки, и у вас не будет 10-15 рабочих столов с приложениями, кото...

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

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

«Яндекс» запускает рекомендательную систему для медиа Она будет представлять собой блок релевантных для каждого читателя медиа материалов и текстово-графической рекламы. 23 января &laquo;Яндекс&raquo; запускает рекомендательную систему для медиа для интернет-изданий, сообщает &laquo;Коммерсантъ&raquo;. Она пр...

Microsoft и Google объединяются для создания лучших PWA Приложения, созданные с использованием инструмента Microsoft PWABuilder, будут использовать утилиту и библиотеку Google Bubblewrap, чтобы воспользоваться преимуществами новых функций.

[Перевод] С Vue 3 вам может и не понадобиться Vuex Vuex — это потрясающая библиотека управления состояниями. Она проста и хорошо интегрируется с Vue. Зачем кому-то уходить от Vuex? Причина может быть в том, что предстоящий релиз Vue 3 раскроет заложенную в ее основе систему реактивности и предложит новые способы структуриров...

[Из песочницы] Unity, ECS, Actors: как поднять FPS в своей игре в три раза, когда оптимизировать уже нечего → Что такое ECS → Что такое Actors Не раз слышал, как хорош шаблон ECS, и что Jobs и Burst из библиотеки Unity — решение всех проблем с быстродействием. Чтобы не добавлять каждый раз слово «наверное» и «может», рассуждая о быстродействии кода, решил проверить всё лично. М...

Как мы подружили Flutter с CallKit Call Directory Привет! В этом лонгриде я расскажу о том, как мы в Voximplant пришли к реализации собственного Flutter плагина для использования CallKit во Flutter приложении, и в итоге оказались первыми, кто сделал поддержку блокировки/определения номеров через Call Directory для Flutter....

Google Фото против iCloud Фото: где лучше хранить фотографии? Хранение фотографий в облаке стало тем, что могут предложить только крупные технологические компании из-за постоянно растущей стоимости хранения файлов и повышения качества мультимедиа. Да, само хранение становится дешевле (раньше о накопителе 2 ТБ можно было только мечтать...

[Перевод] Ванильный JavaScript и HTML. Никаких фреймворков. Никаких библиотек. Никаких проблем Используете для создания приложений Vue, React, Angular или Svelte? Я использую, и если вы тоже, и уверен, что вам уже давно не приходилось писать приложение, которое выводит информацию без этих прекрасных инструментов. Когда-то многие из нас писали веб-приложения только с...

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

Проектируем мультипарадигменный язык программирования. Часть 6 — Заимствования из SQL Продолжаем рассказ о создании мультипарадигменного языка программирования, сочетающего декларативный логический стиль с объектно-ориентированным и функциональным, который был бы удобен при работе со слабоструктурированными данными и интеграции данных из разрозненных источник...

Тестирование Flutter-приложений: инструменты, преимущества, проблемы Привет! Меня зовут Мария Лещинская, я QA-специалист в Surf. Наша компания разрабатывает нативные приложения с 2011 года, а с 2018-го мы занимаемся ещё и разработкой под Flutter. В этом материале сравним возможности тестирования нативных и кроссплатформенных приложений. Я по...

Рендеринг шрифтов для WebGL при помощи инструмента msdf-bmfont-xml и технологии MSDF 18/3/2021 Наконец-то была закончена интеграция инструмента msdf-bmfont-xml для библиотеки openglobus. Текстовые метки стали выглядеть гораздо красивее! Мне помог инструмент msdf-bmfont-xml для создания атласов шрифтов и рендеринга текстур для (multichannel signed distance fi...

До 9 сентября в библиотеку Xbox Game Pass войдут Final Fantasy XIII, The Artful Escape и другие игры Команда Xbox в своём блоге опубликовала список игр, которые появятся в библиотеке Xbox Game Pass до 9 сентября этого года. Новинки Xbox Game Pass на ближайшие недели: Craftopia (предварительная версия) (Xbox и ПК) — 2 сентября Final Fantasy XIII (Xbox и ПК) — 2 сентября Si...

Самые полезные новинки C++ 20 В сентябре прошлого года профильный комитет ISO утвердил С++ 20 в качестве текущей версии международного стандарта. Предлагаю ознакомиться с самыми полезными и долгожданными изменениями нового стандарта. Библиотека концепций C++ Библиотека определяет фундаментальные понят...

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

Реализация автодополнения кода в Ace Editor Ace (Ajax.org Cloud9 Editor) — популярный редактор кода для веб-приложений. У него есть как плюсы, так и минусы. Одно из больших преимуществ библиотеки — возможность использования пользовательских сниппетов и подсказок. Однако, это не самая тривиальная задача, к тому же не ...

Bitdefender открыла код технологии интроспекции гипервизора HVI Компания Bitdefender объявила об открытии кода своей технологии интроспекции гипервизора (Hypervisor Introspection, HVI). Она была разработана совместно с проектом Xen. История проекта началась в 2015 году, тогда для гипервизора 4.6 была представлена библиотека libbdvmi...

Интервью с Сергеем Жуком — автором книг и скринкастов по ReactPHP Мир IT полон интересных людей, что стало причиной создание проекта MoreView где я беру интервью у разных людей и познаю IT. Я достаточно давно связал свою жизнь с PHP и уже брал интервью у разработчика фреймворка Yii. Чуть более 7 лет назад в мир ворвался асинхронный PHP с б...

Создание пакета NuGet для библиотеки с платформозависимым API Когда речь заходит о создании .NET библиотеки, части API которой являются платформозависимыми, приходится думать, как всё это оформить в NuGet пакет, да так, чтобы установленная из пакета библиотека работала в разных сценариях (.NET Framework, .NET Core, self-contained app и...

Compositional Layout: стоит ли игра свеч? Всем привет! Меня зовут Алексей Скоробогатов, я ведущий iOS-разработчик в Delivery Club. Сегодня я хотел бы рассказать про вёрстку в нашем приложении на примере использования Compositional Layout. В конце прошлого года волевым решением iOS-команды и апрувом руководства мы ...

Приобретайте по оптимальной цене комплекты «IP-АТС Yeastar серии P + лицензия на расширение функционала» Уважаемые партнеры Yeastar и компании АйПиМатика! С 15 февраля по 10 августа 2021 года приобретайте комплекты "IP-АТС Yeastar серии P + лицензия на расширение функционала" с дополнительной партнерской скидкой и регистрируйте проекты с ...

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

Эксперименты с микроконтроллерами в Jupyter Notebook Jupyter Notebook — любимый инструмент-среда для data scientist'ов, аналитиков, инженеров, математиков, студентов и даже для нас — самых обычных ученых в экспериментальной физике. Этот инструмент предназначен для работы с интерпретируемыми языками и удобного графического пре...

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

Создаем Swift Package на основе C++ библиотеки Данная статья поможет вам создать свой первый Swift Package. Мы воспользуемся популярной C++ библиотекой для линейной алгебры Eigen, чтобы продемонстрировать, как можно обращаться к ней из Swift. Для простоты, мы портируем только часть возможностей Eigen. Читать далее

Пиратский симулятор Sea of ​​Thieves появится в магазине Steam Microsoft усиленно продвигает свои игры, добавляя их в библиотеку Steam. Видеоигра Sea of ​​Thieves пополнила список магазина. Точной даты пока что нет, но игра уже опубликована с пометкой "Скоро". Sea of ​​Thieves - это многопользовательская игра в жанре приключения на пи...

Библиотека от AMD стала причиной плохой производительности процессоров AMD в Cyberpunk 2077 После выхода Cyberpunk 2077 пользователи процессоров AMD заметили, что игра не полностью использует все логические ядра. Выглядело это следующим образом: Читать дальше →

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

Microsoft лишила Windows 10 ещё одной функции. Убрано приложение Connect Компания Microsoft обновила список компонентов и функций, удаленных в Windows 10.  Теперь в список попало приложение Connect (Подключиться) для беспроводного проецирования на дисплеи по стандарту Miracast. В версии Windows 10 2004, также известного как May 2020 Up...

JavaScript библиотека Webix глазами новичка. Часть 4. Работа с данными. CRUD Я — начинающий front-end разработчик. Сейчас я учусь и стажируюсь в одной минской IT компании. Изучение основ web-ui проходит на примере JS библиотеки Webix и я хочу поделиться своим скромным опытом и сохранить его в виде небольшого учебного пособия по этой интересной UI б...

Microsoft анонсировала октябрьский пакет обновлений для OneDrive Компания Microsoft анонсировала декабрьский пакет обновлений для OneDrive. [Создание общей библиотеки в OneDrive в Интернете OneDrive подключает вас ко всем вашим файлам - будь то индивидуальные рабочие файлы или общие командные файлы. Microsoft обновляет существующий опыт с...

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

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

Старые смартфоны и планшеты Android перестают получать обновления Google Play Services Библиотека Google Play Services есть на всех сертифицированных Google Android-устройствах. Она необходима для работы Google Play Store и десятков API-интерфейсов, которые могут использоваться сторонними приложениями. Google Play Services также используется для добавлени...

iOS 14 всего лишь копирует Android После выхода оболочки MIUI 12 на базе операционной системы Android 10 многие заговорили о том, что она стала очень похожа на iOS 13. Теперь же, после презентации iOS 14, заговорили о том, что Apple скопировала то, что давно есть в Android. Одним из основных моментов iOS...

[Перевод] Почему это антипаттерн? Всем привет. В сентябре в OTUS стартует сразу несколько курсов по JS-разработке, а именно: JavaScript Developer. Professional, JavaScript Developer. Basic и React.js Developer. В преддверии старта этих курсов мы подготовили для вас еще один интересный перевод, а также предла...

Flutter. RenderObject — замеряй и властвуй Всем привет, меня зовут Дмитрий Андриянов. Я Flutter-разработчик в Surf. Чтобы построить эффективный и производительный UI достаточно основной библиотеки Flutter. Но бывают случаи, когда нужно реализовывать специфичные кейсы и тогда придётся копать в глубь. Читать дальше &...

О классах Program и Startup — инициализация ASP.NET приложения. Часть I: Program и IHostBuilder Не так давно на Хабре я увидел статью с многообещающим названием "Что из себя представляет класс Startup и Program.cs в ASP.NET Core" (https://habr.com/ru/company/otus/blog/542494/). Меня всегда нтересовало и интересует, что именно происходит под капотом той или иной библиот...

[Перевод] Разработка REST-серверов на Go. Часть 1: стандартная библиотека Это — первый материал из серии статей, посвящённой разработке REST-серверов на Go. В этих статьях я планирую описать реализацию простого REST-сервера с использованием нескольких различных подходов. В результате эти подходы можно будет сравнить друг с другом, можно будет поня...

Twitter Text: парсинг текста Twitter Text — Swift-реализация библиотеки синтаксического анализа текста твитов. В библиотеке есть методы для анализа текста и вычисления длины, валидности, синтаксического анализа @mentions, #hashtags, URL-адресов и т.д. Исходники: https://github.com/nysander/twitter...

[Из песочницы] Использование библиотеки OpenCV для распознавания эллиптических дуг на 2D сечениях 3D облаков точек В связи с все более широким распространением доступных лазерных сканеров (лидаров), способных получать 3D облака точек (3dОТ) и все более широким применением этой технологии в различных областях (от машиностроения до безопасности, от нефтяной промышленности до архитектуры), ...

Только 39% функций в node_modules уникальны в дефолтном Angular проекте 39% — это количество уникальных функций в папке node_modules в дефолтном Angular проекте, созданном командой ng new my-app. Мне было интересно посмотреть, сколько похожих функций существует в node_modules. Ведь наверняка же разработчики открытых библиотек решают проблемы оди...

Material Design Search UI iOS: красивый поиск Material Design Search UI iOS — экран поиска в материальном дизайне для iOS. Представляет стилизованную поисковую строку и соответствующий View с результатами. Написано на Swift 5.0 и работает начиная с iOS 11.0. Исходники: https://github.com/twho/material-design-searc...

Представляем Quarkly – инструмент для react-разработчиков и дизайнеров, который поможет оптимизировать вашу разработку Всем привет! Идеологически Quarkly – это проект, который призван упростить жизнь веб-разработчикам и веб-дизайнерам. В этом посте я коротко расскажу, за счет чего это возможно. Прежде всего, давайте посмотрим, как выглядит типичный цикл разработки веб-приложения в 2020 году?...

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

Мы разобрали новую «Капсулу». Знаем, сколько микрофонов, и как она работает В конце января была представлена «Капсула» — умная колонка с ассистентом «Маруся». С 22 апреля ее можно купить. Мы делали полный обзор функционала новинки, но всегда интересно, что внутри. По просьбе Hi-Tech Mail.ru я разобрал «Капсулу» и описал свои впечатления. Мне всегд...

До 1 октября в библиотеку Xbox Game Pass войдут Sable, Lemnis Gate, Aragami 2 и другие игры Команда Xbox в своём блоге опубликовала список игр, которые появятся в библиотеке Xbox Game Pass до 1 октября этого года. Стоит отметить, что 8 из 13 игр будут доступны по подписке со дня релиза. Новинки Xbox Game Pass на ближайшие недели: Flynn: Son of Crimson (Xbox и ПК)...

Смартфоны серии Samsung Galaxy S20 вышли в России Компания Samsung Electronics дала старт российским продажам флагманских смартфонов Samsung Galaxy S20, Galaxy S20+ и Galaxy S20 Ultra, которые оценены в 69 990, 79 990 и 99 990 рублей соответственно. При этом для смартфонов до сих пор действует акции, по которой покупатели п...

Кроссплатформенная растеризация SVG — сравниваем библиотеки и экспериментируем На карте 2ГИС очень много картинок — те же знаки дорожного движения и логотипы компаний. Графические API, которые в наши карты предоставляют Android и iOS, обычно не могут рисовать векторную графику напрямую, поэтому нам приходится её растеризовать. А так как мы заранее не з...

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

15% надбавка и «страховка» 25 000 грн. Укрпошта обеспечит сотрудникам специальные условия на время карантина Гендиректор Укрпошты Игорь Смелянский на своей страничке в Facebook объявил о дополнительных гарантиях для сотрудников (в штате компании — 65 000 человек) на время карантина. Во-первых, вводится система специального страхования для сотрудников, и каждый, в случае заболевания...

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

Обучение с подкреплением: как работают новые возможности библиотеки SberPM Что такое Process Mining и как его применять, мы рассказывали в первом посте. Во второй части мы представили краткое руководство пользования библиотекой для интеллектуального анализа процессов SberPM. В данной статье мы подробнее раскроем функционал библиотеки и расскажем о...

В декабре библиотеку Xbox Game Pass расширит Control и еще десяток игр для Xbox, ПК и Android Microsoft анонсировала декабрьское обновление библиотеки Xbox Game Pass, в котором геймеры получат Control и десяток других игры.

[Перевод] Профилирование производительности React-приложений Сегодня поговорим об измерении производительности рендеринга React-компонентов с использованием API React Profiler. Ещё мы будем оценивать взаимодействия с компонентом, применяя новый экспериментальный API Interaction Tracing. Кроме того, мы воспользуемся API User Timing для...

Большое обновление библиотеки "Кино+" на Vodafone TV Vodafone обновил библиотеку в пакете "Кино+" на Vodafone TV.

Новая функциональность в RESTinio и опять с помощью C++ных шаблонов Увидело свет очередное обновление небольшой библиотеки для встраивания асинхронного HTTP-сервера в C++ приложения: RESTinio-0.6.12. Хороший повод рассказать о том, как в этой версии с помощью C++ных шаблонов был реализован принцип "не платишь за то, что не используешь&q...

BlazingPizza: приложение на Blazor от начала и до конца. Часть 2. Добавляем компонент Привет всем! Всем тем, кто хочет узнать о Blazor немного больше. Сегодня мы продолжим создание нашего сайта для пиццерии, а именно, создадим web api контроллер и попробуем отобразить данные которые поступают из него на компоненте Blazor. Поскольку наше приложение о пицце, т...

Эмулятор Windows 10X и Surface Neo доступен для загрузки В рамках конференции разработчиков Microsoft 365 Developer Day, посвящённой устройствам с двумя экранами, компания объявила о публичном выходе предварительной версии эмулятора Windows 10X. Этот эмулятор позволяет эмулировать интерфейс Windows 10X и различные положения Surfa...

Автоматизация Для Самых Маленьких. Заметки. RESTful API Эта статья — одна из обещанных коротких заметок по ходу цикла статей Автоматизация Для Самых Маленьких. Поскольку основным способом взаимодействия с IPAM-системой будет RESTful API, я решил рассказать о нём отдельно. Воздаю хвалы архитекторам современного мира — у нас ест...

Работа с pdf-файлами с помощью библиотеки fitz Возникла идея создать небольшую утилиту на Python, которая будет парсить PDF и сверять со списком швов, взятых из BIM модели. Изначально я обратился к библиотеке pdfminer, вернее к ее форку pdfminer.six. Но скорость работы меня совершенно не устраивала. Вот, например, загруз...

Это мог быть очередной JavaScript-фреймворк Прошлым летом, в процессе подготовки статьи для Хабра, я не поленился упаковать свой шаблон для бэкэнд-приложений на Node.js в npm-пакет, сделав из него cli-утилиту для быстрого старта. Никаких надежд на то, что этим пакетом будет пользоваться кто-то, кроме меня, не было изн...

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

Разбираемся, как работает Spring Data Repository, и создаем свою библиотеку по аналогии В статье показано, как работают библиотеки Spring (Spring Data, Spring Feign), и показано, как можно создать свою похожую библиотеку. Читать далее

Видео-стриминг на iOS Недавно получил интересную задачу в работу, сделать приложение для видео-стриминга, это для стартапа ShopStory (e-comm live streaming). Первую версию приложения реализовал используя Open Source библиотеку для стриминга по RTMP HaishinKit. А вторую версию на Larix SDK. В этой...

Laravel–Дайджест (24 августа – 6 сентября 2020) Что нового в Laravel 8. Руководство по обновлению до новой версии. Laravel Jetstream. Пакетирование задач. Набор компонентов для Blade-шаблонов. Читать дальше →

Изучаем VoIP-движок Mediastreamer2. Часть 2 Материал статьи взят с моего дзен-канала. Создаем тональный генератор В предыдущей статье мы выполнили установку библиотеки медиастримера, инструментов разработки и проверили их функционирование, собрав пробное приложение. Сегодня мы создадим приложение, которое сможет пропи...

[Из песочницы] Кроссплатформенный многопоточный TCP/IP сервер на C++ Как-то раз встала задача по написанию простого и быстрого многопоточного TCP/IP сервера на C++ и при этом, чтобы работал из под Windows и Linux без требования как-либо изменять код за пределами класса самого сервера. Ранее, на чистом C++ без библиотек вроде Qt, Tcp-сервер не...

AWS Meetup Terraform & Terragrunt. Антон Бабенко (2020) Terraform — это популярный инструмент компании Hashicorp, для управления вашей облачной инфраструктурой в парадигме Infrastructure as a Code. Terragrunt — это wrapper для Terraform, которая предоставляет дополнительные инструменты для хранения ваших конфигураций Terraform, ...

Linux Kernel Library: ядро Linux в форм-факторе so или dll Когда-то читал статью о выборе файловых систем «чтоб везде-везде работало». В ней в очередной раз увидел жалобы, что Ext4 замечательная файловая система, но на Windows есть только кривые неточные проприетарные драйверы. Но отмотаем ленту ещё на пару лет назад: тогда на Хабре...

[Перевод] Перевод книги Эндрю Ына «Страсть к машинному обучению». Главы 51 и 52 ← предыдущие главы 51. Выбираем компоненты конвейера: простота решения задач Вторым важным фактором, который нужно учитывать при построении «конвейера», кроме доступности обучающих данных, является простота использования компонента. Нужно попытаться выбрать такие компоненты ...

[Перевод] Visx — коллекция графических примитивов для React-приложений, созданная в Airbnb После 3 лет разработки и 2,5 лет использования в продакшн-проектах Airbnb, после переписывания кода на TypeScript, мы рады представить вам официальный релиз коллекции графических примитивов visx 1.0  (раньше она называлась vx). Вот — страница проекта на GitHub. Документацию ...

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

Jupyter для .NET. «Как в питоне» Несколько месяцев назад Microsoft рассказали о Jupyter в .NET. Но активности по этому топику очень мало, а ведь тема очень интересная. Но что такое прикольное придумать? Я решил сделать удобный вывод класса Entity из библиотеки символьной алгебры: Выглядит круче, чем в пи...

[Из песочницы] База данных на ScriptableObject c системой сейва/загрузки Введение В каждой игре есть данные, с которыми работают гейм-дизайнеры. В рпг — это база данных айтемов, в матч-3 — стоимость в кристаллах инструментов из магазина, в экшенах — количество хп, на которое лечит аптечка. Для хранения таких данных существует много способов — кт...

[Перевод] Почему я выбрал Next.js, а не Gatsby, Gridsome или Nuxt? Мы, выбирая фреймворк для нового веб-проекта, обычно склонны останавливаться на инструментах, с которыми знакомы, не обращая внимания на то, насколько хорошо они подходят для этого проекта. Я же пробую поступать с точностью до наоборот. Всякий раз, когда у меня возникает так...

В России появилась «Библиотека стратегий цифровой трансформации» Фонд развития цифровой экономики (ФРЦЭ) сформировал Библиотеку стратегий цифровой трансформации субъектов Российской Федерации и отраслей экономики.

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

[Перевод] Веб-скрейпинг на PHP Термин web scraping означает извлечение информации из веб-страниц в интернете. Его ещё называют web crawling или web data extraction. PHP широко используется в качестве серверного скриптового языка для создания динамических сайтов и веб-приложений. И на нём можно написать...

[Перевод] Reagent: Минималистичный React для ClojureScript Хабр, привет. Я — PM, которые лезет в то, что его может сожрать. Так что, я перевела часть документации по Reagent, если будет полезно, выложу продолжение. In the no-holds-barred world of coding, the end justifies the extreme. Введение в Reagent Reagent обеспечивает мини...

Трансформация Android-разработки с Jetpack Compose и Корутинами Jetpack Compose — одна из наиболее обсуждаемых тем из серии видео про Android 11, заменивших собой Google IO. Многие ожидают от библиотеки, что она решит проблемы текущего UI-фреймворка Android, содержащего много легаси-кода и неоднозначных архитектурных решений. Другим не м...

Kotlin Lifecycle Delegates: управление жизненным циклом Kotlin Lifecycle Delegates — легкая библиотека для управления полями жизненным циклом Android-приложения. Удобный способ избежать переопределения полей lateinit и методов жизненного цикла в компонентах Android (фрагментах, активити). Исходники: https://github.com/Link1...

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

[Из песочницы] Генерируем тексты песен Кис Кис цепями Маркова в 50 строк Сегодня я хочу рассказать про свой опыт генерации текста песен с помощью python и библиотеки Markovify Дисклеймер: автор хотел повеселить себя вечером и не придумал ничего лучше, как: В качестве корпуса для "обучения" цепи я буду использовать текст песен группы Ки...

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

Tesseract OCR tips — создание своего словаря для повышения эффективности OCR Это мой первый пост об оптическом распознавании текста (OCR) с использованием Tesseract. Tesserast это очень популярная open source библиотека для OCR поддерживаемая Google, которая дает высокие результаты точности и поддерживает более 100 языков. В этом посте я расскажу как...

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

32 отличия дизайна мобильного приложения под iOS и Android Железный дизайнер из Redmadrobot Design Lab Артур Абраров делится наблюдениями. Адаптировать дизайн под другую платформу — неотъемлемая часть работы дизайнера мобильных приложений. Цель этой работы — органично вписать дизайн в паттерны взаимодействия пользователя. К тому ...

Bedrock Linux: лего-набор для создания идеального linux-дистрибутива С момента появления Linux достаточно скоро возникло множество дистрибутивов: Slack, RedHat, Debian, SUSE и т. д. Тогда же возникла и проблема выбора дистрибутива, ведь каждый из них имеет свои особенности и преимущества, которые делают его особенным. RedHat и Debian наибол...

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

Может ли Wear OS стать более интересной для пользователей? Платформа вскоре получит поддержку плиток для сторонних приложений Умные часы с Wear OS не особо популярны на рынке. Многие компании прекратили использовать эту платформу, но в скором времени, согласно множеству слухов и утечек, Wear OS получит огромное обновление, которое может сделать эту платформу намного пр...

Быстрый расчет формул из Excel на C# Как часто вы слышите от заказчиков, что они пришлют данные в Excel или просят вас сделать импорт или выгрузку в Excel-совместимом формате? Я уверен, что в большинстве сфер Excel — один из самых популярных, мощных и в то же время простых и удобных инструментов. Но самым пробл...

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

Android Broadcast: все тайны MVI Обсуждаем паттерн MVI от начала и до конца: в чем отличие, преимущества, как эффективно построить свое приложение с ним и почему для Compose — это лучшая архитектура. Делиться опытом будет ведущий Android-разработчик из Badoo — Аркадий Иванов, который на работе и...

Stargate: что это, как работает и зачем использовать Stargate — это open source фреймворк для работы с Apache Cassandra. Как он устроен и какие преимущества даёт, на конференции Cassandra Day Russia 2021 рассказал Дмитрий Бурлачков, Software Engineer в DataStax и один из разработчиков Stargate. Под катом расшифровка его докл...

Для Minecraft вводят новую подписку Realms Plus с кучей бонусов в придачу к частному серверу Я даже не догадывался, что в Minecraft есть подписка, но оказывается, это вполне интересное и справедливое предложение. Minecraft Realms — это возможность играть на собственном частном сервере. Если на компьютере его можно обустроить самостоятельно, то смартфон для этих цел...

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

[Из песочницы] Flutter. BlOC, Provider, async – архитектура «по полочкам» Вступление Когда пытаешься написать приложение, то первое с чем сталкиваешься – это как организовать архитектуру приложения. А когда еще при этом речь идет про Flutter, так голова совсем может пойти кругом от того, что выдает Гугл — Vanilla, Scoped Model, BLoC, MVP, MVC, MVV...

Svelte: знакомимся с Действиями Недавно на Хабре появилась статья от @sanReal, где Александр рассказал о том, каким приёмам и каким возможностям Svelte он научился на собственном опыте. Я был немного удивлён не увидев в его списке упоминания одного из самых мощных инструментов фреймворка — Действий. К тому...

В начале августа в библиотеку Xbox Game Pass войдут Hades, Curse of the Dead Gods и другие игры Команда Xbox в своём блоге опубликовала список игр, которые появятся в библиотеке Xbox Game Pass до 17 августа этого года. Также стало известно, что уже 8 августа GTA V покинет каталог подписки на консолях Xbox. Новинки Xbox Game Pass на ближайшие недели: Curse of the Dead...

Пример event-driven приложения на основе вебхуков в объектном S3-хранилище Mail.ru Cloud Solutions Rube Goldberg coffee machine Event-driven architecture повышает ценовую эффективность используемых ресурсов, потому что они задействуются только в тот момент, когда они нужны. Существует масса вариантов, как это реализовать и не создавать дополнительные облачные сущности в...

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

[По докам] Flutter. Часть 3. Для разработчиков React Native Продолжаем лаконичную интерпретацию официальной документации Flutter в формате «вопрос-ответ». Вот уже 3-я часть, и она в большей степени будет полезна React Native-разработчикам. В данной интерпретации вы можете найти ответы на частые вопросы, а также определить для себя, с...

[Из песочницы] 5 фич JavaScript, без которых я не мог бы писать код (перевод) Доброго времени суток, друзья! Представляю Вашему вниманию перевод статьи Kent Dodds «5 JavaScript Features I Couldn't Code Without». Это мой первый перевод, так что буду рад любым замечаниям. 5 фич JavaScript, без которых я не мог бы писать код Прежде чем мы начнем, по...

[Из песочницы] A* pathfinding на C#: двоичные кучи и борьба с аллокациями Сегодня мы разбираем один из популярнейших алгоритмов поиска пути. Работать будем с двумерным массивом целочисленных координат. Сначала кратко ознакомимся с методами обхода графов, напишем собственно поиск пути, а затем перейдём к самому вкусному: оптимизации быстродействия...

[Перевод] Делаем волшебный шар на основе Arduino Pro Mini Я смотрел какой-то фильм, у одного из героев которого был волшебный шар, отвечающий на вопросы. Мне тогда подумалось, что неплохо было бы сделать такой же, но цифровой. Я порылся в своих запасах электронных компонентов и посмотрел, есть ли у меня то, что нужно для сборки так...

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

Представлен главный конкурент EMUI и MIUI в лице OriginOS Компания Vivo вчера раскрыла подробности о новой фирменной оболочке на базе Android под названием OriginOS, которая заменит фирменную надстройку FuntouchOS. OriginOS предлагает переосмысленную систему виджетов, расширенную систему жестов, оптимизацию памяти и совершенно...

Автоматизированное развертывание в Kubernetes с помощью Helm и дополнительной шаблонизации В этой статье я расскажу и покажу, как при помощи Helm и некоторых дополнительных инструментов построить и настроить автоматическое развертывание в Kubernetes для системы из (микро)сервисов и не потеряться во множестве шаблонов и манифестов. Мы успешно реализовали такой подх...

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

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

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

[Перевод] А вы знаете о том, что в Python есть встроенная СУБД? Если вы — программист, то я полагаю, что вы, наверняка, знаете о существовании чрезвычайно компактной и нетребовательной к ресурсам СУБД SQLite, или даже пользовались ей. Эта система обладает практически всеми возможностями, которых можно ожидать от реляционной СУБД, но при ...

Готовим Большую Фичу™ на Kotlin Multiplatform. Доклад Яндекса Предположим, вы решили внедрить Kotlin Multiplatform в свой проект, чтобы переиспользовать логику на iOS и Android. Рано или поздно вы захотите сделать Большую Фичу, которая будет включать в себя и сложную многопоточную логику, походы в сеть, кэширование. Каждый из этих этап...

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

Пластины, которыми комплектуются водоблоки EK-Quantum Vector FE RTX 3080 и 3090, стали доступны отдельно Компания EK, специализирующаяся на компонентах систем охлаждения, сообщила, что задние панели, которыми комплектуются водоблоки для видеокарт Nvidia GeForce RTX 3080 и 3090 Founders Edition, стали доступны как самостоятельные изделия. По словам производителя, этот сдела...

5 игрушек, чтобы ребёнок почувствовал программирование Власть над материальными объектами — пожалуй, лучший способ оценить мощь программирования. Читать далее

Spring-анимации во Vue Привет, Хабр! Мне давно хотелось добавлять в любые проекты Spring-анимации. Но делал я это только для React-проектов с помощью react-spring, так как не знал ничего другого. Но наконец я решил разобраться, как оно все устроено и написать свою реализацию! Если вы тоже хоти...

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

Создаем готовый для опенсорса проект на Angular в пару кликов Недавно я публиковал статью о том, как быстро настраивать npm-пакеты перед публикацией в opensource. В ней я разобрал настройку версионирования, CI, построение воркфлоу и удобный деплой на страничку с демо. Все советы той статьи распространяются и на библиотеки Angular. Но в...

ЛитРес:Школа и Мегафон запустили детскую цифровую библиотеку ЛитРес:Школа - это проект который предоставляет образовательным организациям доступ к мобильной библиотеке с возможностью дистанционно выдавать электронные книги.

Есть ли жизнь без Auto Layout? Технология Auto Layout появилась в 2012 году, но споры и дебаты о том, как правильно верстать интерфейс, не утихают до сих пор. Использовать ли Auto Layout интерфейс в билдере или в коде? Верстать без него на фреймах или вообще использовать что-то стороннее? Тема такая горяч...

Вариант работы с вебсокетами в iOS на языке Swift / Написал менеджер для работы с websocket Всем привет. 4 года назад я уже разбирался с вебсокетами в iOS, тогда я решил задачу с помощью одной из библиотек cocoapods, статья есть на Хабре. А сегодня хочу продемонстрировать еще одно решение, нативное без cocoapods. Я написал свой менеджер для работы с вебсокетами ...

Как заработать на несовершенстве 1С Помните, как на заре появления WhatsApp и Viber сотовые операторы в России хотели брать деньги за работу этих сервисов в своих сетях. Слава Богу, рынок, здравый смысл и возмущения общественности не позволили реализоваться этому печальному сценарию. В середине 2000-х основн...

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

[Перевод] Генерация изображений с помощью echo/printf в 5 строчках кода без библиотек и заголовков tl;dr: форматы файлов Netpbm позволяют легко выводить пиксели, используя только текстовый ввод-вывод. Вот весь генерирующий это изображение скрипт bash без зависимостей: #!/bin/bash exec > my_image.ppm # Все инструкции echo будут писать в этот файл echo "P3 ...

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

Kafka Streams — непростая жизнь в production Привет, Хабр! Вокруг меня сформировался позитивный информационный фон на тему обработки событий через Kafka Streams. Этот инструмент привлекает множеством видео-докладов и статей на Хабре, подробной документацией, понятным API и красивой архитектурой. Некоторые мои знакомые ...

Создаем веб-приложение на Haskell с использованием Reflex. Часть 3 Часть 1. Часть 2. Всем привет! В этой части мы рассмотрим использование класса EventWriter и библиотеки ghcjs-dom. Читать дальше →

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

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

Опыт работы над проектом на базе Vue3 в 2021 году Около полугода пришлось поработать над миграцией неработающего проекта на базе Vue 2 на проект Vue v.3. Поскольку до сих пор работа с ним остаётся экзотикой, попробую описать состояние развития этого проекта в июле 2021 года, через 10 месяцев после релиза, и какие особеннос...

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

Почему я сделал личный проект учёта трат на Git+JS Здравствуйте, господа, в этой статье я поделюсь опытом создания приложения учёта трат, в частности отвечу на следующие вопросы: Зачем мне приложение учёта трат? Почему это личный проект? Почему проект на Git+JS? 1. Зачем мне приложение учёта трат? Как и многие другие люди...

Android: реверс-инжиниринг Flutter-приложения Для подписчиковСегодня в выпуске: реверс-инжиниринг Flutter-приложения, подборка полезных функций-расширений на Kotlin, две статьи об ошибках использования корутин и Flow в Kotlin, заметка об автоматически устаревающих комментариях, а также подборка из одиннадцати must have ...

Apache Software Foundation опубликовала релиз платформы Apache Hadoop 3.3.0 Apache Software Foundation выпустила свежий релиз своей платформы — Apache Hadoop 3.3.0. С момента последнего обновления прошло полтора года. Сама платформа представляет собой инструмент для организации распределенной обработки больших объемов данных с использованием MapR...

Kotlin Multiplatform. Работаем с многопоточностью на практике. Ч.2 Доброго всем времени суток! С вами я, Анна Жаркова, ведущий мобильный разработчик компании «Usetech». В предыдущей статье я рассказывала про один из способов реализации многопоточности в приложении Kotlin Multiplatform. Сегодня мы рассмотрим альтернативную ситуацию, когда м...