Ознакомление с Work Manager в Android

Ознакомление с Work Manager в Android

Work Manager - это компонент Android Jetpack, который помогает выполнять задачи как можно быстрее и в наиболее подходящее время. Ознакомьтесь с его базовыми и продвинутыми возможностями, а также лучшими практиками использования.
ТОП-5 законов для каждого UX-дизайнера

ТОП-5 законов для каждого UX-дизайнера

Когда люди слышат слово «дизайн», они обычно думают, что это творческая работа, которая подразумевает создание красивого внешнего вида. Но UX-дизайн доказывает, что привлекательный продукт...
Отходим от монолита: освоение модульной навигации в Android (Kotlin и компонент Jetpack Navigation)

Отходим от монолита: освоение модульной навигации в Android (Kotlin и компонент Jetpack Navigation)

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

Rust: первые впечатления

Станет ли Rust пределом мечтаний разработчиков и универсальным языком, который заменит все остальные? Что делает его таким особенным? Рассмотрим текущее положение и разберем слабые и сильные стороны Rust.
Python

Импорт в Python

Импорт в Python. Основы В Python ключевое слово import применяется для того, чтобы сделать код в одном модуле доступным для работы в другом. Импорт в Python...
Внимание: работает пакет Python Tweepy!

Внимание: работает пакет Python Tweepy!

Обучающее руководство по извлечению любых данных из твитов посредством пакета Python Tweepy и форматированию их в датафрейм Pandas.
C++: подробное руководство по is_open()

C++: подробное руководство по is_open()

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

Руководство по анализу данных с SQL

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

Как зарабатывать с помощью Python в 2023 году

Извлечь выгоду из навыков программирования можно разными способами. Представляем список навыков Python, которые принесут доход в условиях конкуренции.
5 функций CLI на Rust для оптимизации привычных инструментов

5 функций CLI на Rust для оптимизации привычных инструментов

Хотите стать более продуктивным? Rust предоставит вам возможность обновить некоторые из повседневных инструментов командной строки!
Ruby on Rails  -  пишите тесты, как профессионал

Ruby on Rails  —  пишите тесты, как профессионал

Узнаем на простых и эффективных примерах, как пишутся оптимизированные, быстрые и точные тесты. Хорошие тесты против плохих: как сокращается дублирование, поддерживается четкая структурированность, соблюдается принцип DRY.
R

Введение в R: линейная алгебра

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

Топ-10 самых распространенных ошибок в проектах Go. Часть 1

Неизвестное значение enum Рассмотрим простой пример: type Status uint32 const ( StatusOpen Status = iota StatusClosed StatusUnknown ) Enum создан с помощью iota, что приводит к следующему состоянию: StatusOpen = 0 StatusClosed = 1 StatusUnknown =...
LangChain + Streamlit + LlaMA: установка диалогового бота с ИИ на локальный компьютер

LangChain + Streamlit + LlaMA: установка диалогового бота с ИИ на локальный компьютер

Предлагаем пошаговое руководство по созданию с нуля личного помощника с ИИ. В руководстве используются большая языковая модель LLaMA 7b и Langchain - библиотека с открытым исходным кодом, специально разработанная для бесшовной интеграции с LLM.
Как создать Android-приложение чат-бота с генеративным ИИ Google

Как создать Android-приложение чат-бота с генеративным ИИ Google

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

Поддержание документации в актуальном состоянии с помощью Bit и GitHub

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

Топ-6 инструментов и фреймворков для искусственного интеллекта

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

Как написать хороший README: краткий курс

После Hacktoberfest в проектах с открытым исходным кодом появилось много новых правок. Только за октябрь было сделало более 400 000 запросов на включение кода. Это невероятно! Я...
Графовое моделирование данных на Java

Графовое моделирование данных на Java

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

Как загружать файлы и изображения в приложении Django

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

Язык выражений Spring для создания простого движка правил

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

6 шагов для старта в машинном обучении в 2025 году 

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

Создание анимированной пузырьковой диаграммы Ханса Рослинга на языке R

Статистические выкладки выглядят привлекательней при добавлении анимации. Сегодня мы убедимся в этом, воссоздав пузырьковую диаграмму Рослинга средствами языка R.
C++: полное руководство по обработке файлов с fstream

C++: полное руководство по обработке файлов с fstream

Разберем основные файловые операции, проиллюстрируем практическими примерами. Обозначим типичные сценарии, дадим рекомендации.
Проекты Go: создаем собственное канареечное развертывание

Проекты Go: создаем собственное канареечное развертывание

Каким образом перенаправляется трафик? Разберем различные подходы к развертыванию с примерами кода.
DataScience

Алгоритм Гровера - квантовые вычисления

Задача Предположим, у нас есть крупная база данных из N элементов. Мы хотим найти один из элементов, например p, по ID, скажем w. Используя классические...
Дирижируйте горутинами с помощью каналов

Дирижируйте горутинами с помощью каналов

Go получил известность во многом благодаря своему чистому и эффективному подходу к параллельному выполнению. С применением горутин можно добиться огромного повышения эффективности, выполняя несколько...
Бесконечное количество репозиториев Git на Cloudflare Worker с быстрым развертыванием

Бесконечное количество репозиториев Git на Cloudflare Worker с быстрым развертыванием

Авторы Gitlip рассказывают о своем продукте — инструменте совместной разработки в эпоху искусственного интеллекта. Это комплексное сочетание контроля версий на основе Git, совместного написания кода и развертывания в один клик. Цель — упростить практическое применение современных моделей искусственного интеллекта.
C++: полное руководство по explicit

C++: полное руководство по explicit

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

Рецензирование кода Flutter: лучшие практики

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

Поиск утечек памяти с помощью автоматизированных тестов

Процесс управления памятью может стать фактором, весьма затрудняющим работу в приложениях iOS. В связи с этим нужно уделять пристальное внимание размещенным в памяти object...
Python/C API  -  ускорение Python при помощи кода на C

Python/C API  -  ускорение Python при помощи кода на C

Пакет ctypes для начинающих: запуск библиотек на C из Python и функции CUDA ускорят не только вычисления, но и процесс разработки.
Git: простое руководство о том, как стать мастером контроля версий

Git: простое руководство о том, как стать мастером контроля версий

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

Функциональное программирование со Scala: введение

Если вас интересует функциональное программирование, в этой статье вы найдете несколько важных аспектов этого направления и особенностей его работы в Scala. Классические программы порождают концептуальные...
8 полезных приемов программирования на C++

8 полезных приемов программирования на C++

1. Как включить все стандартные библиотеки одной командой Чтобы разом включить в проект все стандартные библиотеки, используйте #include <bits/stdc++.h>. Это особенно полезно в условиях дефицита времени...
Плохие модели машинного обучения? Но их можно откалибровать

Плохие модели машинного обучения? Но их можно откалибровать

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

Конвейер данных в реальном времени с Kafka и ClickHouse

Рассмотрим нюансы при запуске обработки на Python. Создадим скрипт для выдачи сообщений, настроим ClickHouse для их получения и обработки. Поэкспериментируем с представлением в реальном времени и удалением данных.
CProgramming

Как работает программа «Hello World!»?

Вы когда-нибудь задумывались о том, как работает знаменитая программа «Hello World!»? Давайте подробно разберём ассемблерный код и увидим, что происходит, так сказать, за кадром...
Подключение приложений Android к серверу с помощью gRPC

Подключение приложений Android к серверу с помощью gRPC

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

Сферы применения Python

Собираетесь стать Python-программистом, но не знаете, с чего начать? Предлагаем базовые рекомендации о том, в каких областях стоит и не стоит применять этот язык.
Python

20 фрагментов Python, которые стоит выучить прямо сегодня

Python — язык программирования без лишнего синтаксиса. Читаемость и простота дизайна — две основные причины его огромной популярности. Как говорится в дзене Python: Красивое лучше, чем уродливое.Явное лучше, чем неявное. Вот...
10 наиболее эффективных CLI-инструментов 

10 наиболее эффективных CLI-инструментов 

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

Рекурсия и цикл, в чем разница? На примере Python

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

Конструктор перемещения на C++

Сравним конструкторы перемещения и копирования: что быстрее? Изучим их связь и соответствующие семантики, варианты применения.
Swift: ссылочные типы и циклы сохранения, weak и unowned

Swift: ссылочные типы и циклы сохранения, weak и unowned

Разберем один из 10 технических вопросов недавнего собеседования по Swift и Objective C. На примере покажем, почему для предотвращения цикла сохранения применяется слабая ссылка weak, а не бесхозная unowned.
Java

Учимся избегать null-значений в современном Java. Часть 1

Null. Правила использования В своем выступлении “Null References: The billion dollar mistake” (“Нулевые ссылки: ошибка на миллиард долларов”), Тони Хоар описывает реализацию нулевых ссылок в...
Инструменты DevOps: интерфейс Docketeer для Docker Desktop

Инструменты DevOps: интерфейс Docketeer для Docker Desktop

Обзор Docketeer, удобного графического интерфейса для Docker с проработанными правами доступа и метриками.
Docker

Docker: привязываем порты

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

Реализация тематических фильтров новостей в приложении TrendNow. Часть 3

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

Знакомство с Kotlin для Android за один день

Имея за плечами опыт с Java, я понял, что синтаксис Kotlin похож на Java, но в то же время может сильно отличаться. Kotlin — очень мощный...
Android

Внедрение зависимостей на Android с помощью Hilt

Внедрение зависимостей (DI) — это метод, широко используемый в программировании и хорошо подходящий для Android-разработки. При нем зависимости предоставляются классу, а не создаются самостоятельно. Следуя принципам...
Настройка компонентов и тем Material UI: современный подход

Настройка компонентов и тем Material UI: современный подход

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

Управляем зависимостями: возможности каталога версий и convention-плагина

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

Как быстро найти проблемы с Python-типами через Pytype

Если вы работаете над большим проектом на Python или предпочитаете лаконичную и понятную базу кода, то Pytype станет для вас отличным помощником. Python — это отличный язык...
Java

String, StringBuilder и StringBuffer: понимаете ли вы разницу?

Все разработчики имеют дело со словами и фразами в некоторых частях кода. String — это тип данных, используемый в программировании для представления текста. В Java есть три...
Кэширование Redis для максимальной производительности в Spring Boot и Java

Кэширование Redis для максимальной производительности в Spring Boot и Java

Кэширование помогает повысить производительность приложений за счет снижения нагрузки на такие ресурсы, как базы данных и удаленные сервисы. Рассмотрим, как применять Redis в качестве кэша в приложении Spring Boot для достижения максимальной эффективности.
Модульное тестирование с помощью JUnit в Android

Модульное тестирование с помощью JUnit в Android

Тестирование  —  неотъемлемая часть полноценной разработки программного обеспечения. Сегодня рассмотрим фреймворк JUnit, а также функции и правила, которые помогут провести тесты Android-продукта на достойном уровне.
Подробно о технологии «Издатель-подписчик» Redis

Подробно о технологии «Издатель-подписчик» Redis

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

Оживляем ООП: создаем на Python текстовую игру-хоррор

Хотите оживить изучение объектно-ориентированного программирования (ООП)? Забудьте о скучном классе BankAccount — создайте на Python текстовую приключенческую игру, действие которой происходит в замке с привидениями! В этом руководстве пошагово описывается разработка "хоррор-квеста", которая позволит вам легко усвоить такие основные понятия, как объект, инкапсуляция и методы.
Python Pandas

Максимальная производительность Pandas Python

В этой статье мы докажем, что использование Nuclio и RAPIDS, бесплатной open-source платформы для ускорения обработки данных от NVIDIA, может значительно увеличить производительность Python. Я...
Мутационное тестирование: создай мутанта и прокачай тест

Мутационное тестирование: создай мутанта и прокачай тест

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

Kotlin: вложенный и внутренний классы

Чем отличаются вложенные классы от внутренних? Как в Kotlin одни классы объявляются внутри других?
Работа с GitHub Actions на маркетплейсе

Работа с GitHub Actions на маркетплейсе

Поиск экшенов Для этого есть два способа. Непосредственно в маркетплейсе GitHub  В маркетплейсе размещается два вида инструментов для расширения основной функциональности GitHub: Приложения.Экшены. Для поиска экшенов в самом маркетплейсе...
Шаблоны проектирования Python: рекомендации и антипаттерны

Шаблоны проектирования Python: рекомендации и антипаттерны

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

Почему микросервисы нужны каждому разработчику

Изучим преимущества и недостатки микросервисов: как здесь создается, развертывается и сопровождается ПО, определяются границы сервисов. Разберем стратегии надежной микросервисной архитектуры.
Насколько С++ быстрее Python

Насколько С++ быстрее Python

Есть миллион причин любить Python (особенно специалистам по данным). Но сильно ли он отличается от более профессиональных низкоуровневых языков программирования, таких как С или С++? Скорее всего, многие дата-специалисты или пользователи Python задавались этим вопросом или однажды задумаются об этом.
Нативные, гибридные и web-приложения в сравнении

Нативные, гибридные и web-приложения в сравнении

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

3 классные малоизвестные функции Pandas

Я и раньше писал о Pandas по очевидным причинам — это изумительная библиотека для анализа данных и даже для визуализации. Предыдущая статья была о функциях, которые...
Java-библиотеки, которые повысят вашу производительность

Java-библиотеки, которые повысят вашу производительность

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

Подходы к созданию линейных графиков для iOS-приложений на базе фреймворка SwiftUI

Специалисты в сфере мобильной разработки могут пользоваться несколькими способами для графического представления контента. Рассмотрим три метода создания диаграмм на iOS, в том числе и с помощью стороннего фреймворка.
C++: руководство по сортировке строк

C++: руководство по сортировке строк

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

Модификатор Kotlin, которого не должно было быть

Большинство разработчиков Kotlin уверены в том, что свойство val здесь эквивалентно использующемуся в Java свойству final. А что, если я скажу, что это не...
JavaScript

Rust для разработчиков JS

Rust не вызвал у меня большого интереса, когда я впервые прочитал о нём. Это было около двух лет назад. Я работал веб-разработчиком, программировал в...
Принципы SOLID в Kotlin

Принципы SOLID в Kotlin

Изучаем, как использовать принципы SOLID в Kotlin. Разбираемся на примерах, что это за принципы и для чего они нужны.
Тип Result в Rust

Тип Result в Rust

Рассмотрим тип Result для обработки случаев успеха и случаев ошибок в вычислениях на Rust и методы для манипулирования значениями и их обработки. Изучим примеры использования и функциональность методов.
Spring Boot, Kafka и WebSocket для отправки сообщений в реальном времени

Spring Boot, Kafka и WebSocket для отправки сообщений в реальном времени

Мгновенный обмен сообщениями необходим в приложениях социальных сетей, инструментах совместной работы и платформах прямых трансляций. При этом значительно улучшается взаимодействие между пользователями. Рассмотрим создание приложения для чата, используя Spring Boot, Kafka и WebSocket.
Секрет производительности Kafka

Секрет производительности Kafka

Kafka - это распределенная платформа потоковой передачи событий с открытым исходным кодом, обеспечивающая высокую пропускную способность. Платформа позволяет передавать большие объемы данных с минимальной задержкой  -  вот в чем ее секрет.
[SwiftUI] @AppStorage: управление UserDefaults с помощью ViewModel

[SwiftUI] @AppStorage: управление UserDefaults с помощью ViewModel

Чем @AppStorage отличается от @State и как решается потенциальная проблема @AppStorage с самим SwiftUI? Применим подход со ViewModel.
Многозадачность и параллелизм: руководство для начинающих

Многозадачность и параллелизм: руководство для начинающих

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

Хитрости объектно-ориентированного программирования. Часть 1: Искусство разделения команд и запросов

Это мини-серия статей по написанию поддерживаемого объектно-ориентированного кода без лишней нервотрепки.   У функций есть побочные эффекты. Иногда они изменяют состояние системы в самый неожиданный момент и...
Эти декораторы Python позволят сократить код вдвое

Эти декораторы Python позволят сократить код вдвое

Декораторы  -  интересный, мощный и полезный инструмент, способный значительно сокращать и структурировать код Phyton. Убедитесь в этом сами.
Python

Работа с панелью индикаторов. Руководство программиста Python. Часть 3

Часть 1, Часть 2, Часть 3 В этой серии статей в качестве основной платформы для Dashboarding используется Dash от Plotly. Прежде чем перейти к этой статье,...
C++: полное руководство по функциям Floor и Ceil

C++: полное руководство по функциям Floor и Ceil

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

Как запустить любое ПО с графическим интерфейсом в Docker?

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

[C++] часть 3: синхронизация потоков в ресторане

Часть 1, Часть 2, Часть 3 Мы уже видели, как разные потоки с помощью мьютекса спокойно могут получать доступ к общим данным. Но что делать,...
3 способа локального хранения и чтения учетных данных в Python

3 способа локального хранения и чтения учетных данных в Python

Хранение учетных данных в качестве глобальных переменных среды Если учетные данные хранятся в виде глобальных переменных среды, к ним можно получить доступ с помощью любого...
Как писать промпты для ChatGPT

Как писать промпты для ChatGPT

Чтобы научиться писать промпты для ChatGPT, требуется время и практика. Эти рекомендации помогут создавать качественные промпты, с которыми ChatGPT будет генерировать точные и релевантные ответы.
C++: практическое руководство по побитовым операциям

C++: практическое руководство по побитовым операциям

Изучим, что происходит на битовом уровне. Разберем основные побитовые операторы и реальные сценарии, дадим рекомендации и практические задачи с решением.
Python

Как специалисту по данным написать веб-приложение, используя простой Python

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

Как отобразить индикатор выполнения на стандартной консоли с помощью Java

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

Вся правда об использовании навигационной библиотеки Jetpack в модульных проектах

Jetpack - популярный инструмент современного разработчика. Но так ли удобна эта библиотека для модульных проектов?
Golang

Go: стратегия встраивания и ограничение

ℹ️ В статье используется Go 1.13. Процесс встраивания состоит в замене вызова функции на тело этой функции. И хотя такая оптимизация увеличивает размер двоичного кода,...
12 актуальных идей для портфолио Python: веб-сайты, аналитика данных, автоматизация и парсинг

12 актуальных идей для портфолио Python: веб-сайты, аналитика данных, автоматизация и парсинг

Анализатор настроения, виртуальный ассистент, бот-трейдер, компьютерное зрение - лучшие идеи для pet-проекта или стартапа на Python!
Бенчмарки в Golang: тестируем производительность кода

Бенчмарки в Golang: тестируем производительность кода

Честно вам признаюсь  —  бенчмаркинг (тестирование производительности) не входит в число моих самых сильных сторон, к тому же и провожу я его не так...
Опыт работы с Golang: путь проб и ошибок

Опыт работы с Golang: путь проб и ошибок

В течение года мы разрабатывали сложную систему, функционирующую в режиме полуреального времени в производственной среде. Было принято решение написать ее на Golang. Поскольку опыт...
Bitboard and Bitwise Operations

Экспериментируем с битбордом и битовыми операциями в Unreal 4

Идея прототипа игры Главный герой Таичи застрял в мире клеток. Он пытается найти выход и может передвигаться только, если мы поможем ему раскрасить клетки, указав...
Создание оркестратора для событийно-ориентированного приложения с Golang и RabbitMQ

Создание оркестратора для событийно-ориентированного приложения с Golang и RabbitMQ

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

Руководство по созданию интерактивных визуализаций на Python

Хотите научиться создавать эффектные интерактивные визуализации? Сегодня разберем построение графиков и диаграмм, а также развернем контрольную панель на Heroku.
VSCode

Пишем быстрее в любой IDE

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

Ловушка для горутины

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

Обнаружение компонентов с Bit ✨

Представляем обновленный способ обнаружения и обмена компонентами С момента первого релиза Bit в 2018 году, тысячи команд и разработчиков начали использовать его при создании приложений...
Файл package-lock.json: полное руководство

Файл package-lock.json: полное руководство

Файл package.json - ключевой элемент баз кода для многих приложений, основанных на экосистеме Node.js. Это своего рода манифест проекта. Предлагаем подробный гайд по использованию этого файла и решению связанных с ним проблем.
WebSocket для получения автоматически обновляющихся криптографических данных

WebSocket для получения автоматически обновляющихся криптографических данных

WebSocket - крайне важный инструмент для получения постоянно обновляющихся данных. Знакомство с ним пригодится тем, кому нужна самая свежая информация, будь то текущие ставки, цены на акции, курсы криптовалют или обмен сообщениями в режиме реального времени.
Будьте благодарны за массивы JavaScript: сравнение с языком C

Будьте благодарны за массивы JavaScript: сравнение с языком C

Изучение того, как массивы и простые методы типа .push() работают в языках более низкого уровня, может значительно углубить понимание JavaScript и вызвать признательность за его чудо-массивы.
Apache Spark

Об Apache Spark - интересно и со вкусом!

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