Тренды

Все что касается разработки: образовательные статьи, тренды, технологии, языки, фреймворки и многое другое!

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

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

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

Слияние больших языковых моделей с помощью mergekit

Слияние  —  инновационный способ создания передовых языковых моделей. В сегодняшнем гайде рассмотрим слияние с помощью библиотеки mergekit, подробно опишем, как работают механизмы SLERP, TIES, DARE и passthrough, а также приведем примеры конфигураций.
Подробно об акторах в Swift

Подробно об акторах в Swift

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

Программирование на Java. Глубокое погружение в ключевой функционал Java 21

Разберем новый LTS-выпуск: детализацию, проверку типов, решаемые с помощью записей проблемы, запечатанные классы/интерфейсы и подробнее  -  сопоставление с образцом. Чем обусловлены актуальность и популярность, каковы факторы значимости Java?
Sealed-интерфейс Kotlin: полное руководство для Android-разработчиков

Sealed-интерфейс Kotlin: полное руководство для Android-разработчиков

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

Преобразование речи в текст с помощью ИИ на Python: пошаговый гайд

Давно мечтали о виртуальном собеседнике на базе искусственного интеллекта? Представляем подробное руководство по созданию такой модели с помощью языка Python.
Реализация фильтра Блума на Go

Реализация фильтра Блума на Go

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

Как я создавал систему для алгоритмического трейдинга на Rust и о чем сожалею

Вы когда-нибудь ныряли в бассейне с цепными пилами на дне? Не удивляйтесь, но что-то похожее можно испытать при первом погружении в Rust. Избежать подобного экстрима поможет ознакомление с опытом человека, решившего использовать Rust без предварительной подготовки.
Spring Boot, Kafka и WebSocket для отправки сообщений в реальном времени

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

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

Проектирование и развертывание Python-приложения для машинного обучения. Часть 2

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

Работа с графиками в SwiftUI: руководство для начинающих

Хотите, чтобы визуальный контент приложения был представлен в виде функциональных графиков? Воспользуйтесь руководством по работе со Swift Charts. Оно поможет освоить процесс создания и настройки диаграмм с возможностями модифицирования, комбинирования и интерактивности.
Байт-код JVM: манипулирование и инструментация

Байт-код JVM: манипулирование и инструментация

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

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

Декораторы  -  интересный, мощный и полезный инструмент, способный значительно сокращать и структурировать код Phyton. Убедитесь в этом сами.
Обучение и развертывание пользовательской модели Detectron2 для обнаружения объектов в PDF-документах. Часть 1: обучение

Обучение и развертывание пользовательской модели Detectron2 для обнаружения объектов в PDF-документах. Часть 1: обучение

Предлагаем руководство по созданию приложения компьютерного зрения. Ускорить процесс машинного обучения поможет библиотека нового поколения  -  Detectron2. В результате вы получите модель, способную "видеть" и извлекать нужную информацию из PDF-документов.
Лучшие практики для эффективного кода на Golang. Часть 2

Лучшие практики для эффективного кода на Golang. Часть 2

Продолжаем обработкой паник с Recover, функциями init и defer, составными литералами, параметрами и сложностью функций, явными возвращаемыми значениями. Изучим затенение переменных, интерфейсы для абстракции, разделение библиотечных пакетов и исполняемых файлов.
Многозадачность и параллелизм: руководство для начинающих

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

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

Навигация по ландшафту ИИ в 2024 году: тренды, прогнозы, возможности. Часть 2

2024-й обещает стать годом инноваций, когда ИИ и технологии объединятся, чтобы перекроить карты наших возможностей. Узнайте о катализаторах демократизации и персонализации ИИ, первых маркетплейсах для сервисов и агентов ИИ, новых моделях ценообразования и маркетинговых диджитал-стратегиях.
Подходы к созданию линейных графиков для iOS-приложений на базе фреймворка SwiftUI

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

Специалисты в сфере мобильной разработки могут пользоваться несколькими способами для графического представления контента. Рассмотрим три метода создания диаграмм на iOS, в том числе и с помощью стороннего фреймворка.
Лучшие практики для эффективного кода на Golang. Часть 1

Лучшие практики для эффективного кода на Golang. Часть 1

Изучим рекомендации с примерами кода на Go. Рассмотрим отступы, импорт пакетов, названия переменных, длину строк, константы, обработку ошибок, глобальные переменные, структуры для сложных данных, комментарии, горутины.
Навигация по ландшафту ИИ в 2024 году: тренды, прогнозы, возможности. Часть 1

Навигация по ландшафту ИИ в 2024 году: тренды, прогнозы, возможности. Часть 1

2024-й обещает стать годом инноваций, когда ИИ и технологии объединятся, чтобы перекроить карты наших возможностей. Заглянем в ближайшее будущее нейронных сетей, векторных данных, экосистемы агентов ИИ, а также уникальных смарт-девайсов, меняющих наш образ жизни.
Осваиваем ViewThatFits. Часть 2

Осваиваем ViewThatFits. Часть 2

Изучим сложные механизмы макета, попробуем раскрыть его логику и потенциал. Детально проанализируем идеальные размеры и адаптивность ViewThatFits, покажем его роль в различных сценариях применения.
Осваиваем ViewThatFits. Часть 1

Осваиваем ViewThatFits. Часть 1

Рассмотрим критерии оценки и логику представления нового адаптивного контейнера макетов. Как выбирается отображаемое представление? Разберем концепцию «идеального размера».
Go - единственный выбор для бэкенд-разработчика?

Go — единственный выбор для бэкенд-разработчика?

Go впечатляет балансом свой простоты и мощи. Но можно ли его назвать "золотой клеткой" для бэкенд-разработчика? Способен ли он удовлетворить широкий спектр бэкенд-потребностей? Чтобы ответить на этот вопрос, оцените технические возможности языка Go.
Производительность в Jetpack Compose: стабильность и неизменяемость

Производительность в Jetpack Compose: стабильность и неизменяемость

Jetpack Compose  -  мощный набор инструментов для создания современных мобильных приложений. Рассмотрим особенности его работы с пропускаемыми и перезапускаемыми функциями, а также фактор стабильности и его роль в рекомпозиции.
Прогнозирование настроений на фондовом рынке с помощью OpenAI и Python

Прогнозирование настроений на фондовом рынке с помощью OpenAI и Python

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

Карьерные пути в Java: от младшего разработчика до эксперта

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

Разработка приложения на основе генеративного ИИ в React IDE

Создание приложений сопряжено с проблемами, способными замедлить процесс разработки и затруднить совместную работу. Codux  -  бесплатная визуальная среда разработки для приложений React + TypeScript  -  сделает этот процесс намного проще и эффективнее.
Тренды в сфере графического дизайна в 2024 году

Тренды в сфере графического дизайна в 2024 году

Подробно рассмотрим ожидаемые в 2024 году тренды в сфере графического дизайна, а также тенденции, которые будут набирать популярность в предстоящем году.
ViewModel. События как состояние  -  это антипаттерн

ViewModel. События как состояние  —  это антипаттерн

Трижды разоблачим антипаттерн одноразовых событий и сравним аргументацию для осознанного выбора из имеющихся подходов. В чем суть проектного решения команды Kotlin - «гарантии быстрой отмены»?
Обзор итераторов в Go

Обзор итераторов в Go

Релиз Go 1.22 запланирован на февраль 2024 года, но уже сегодня можно оценить некоторые из его возможностей. Поговорим о том, как будут выглядеть итераторы и как может расшириться стандартная библиотека для их поддержки.
Как мобильному разработчику всегда быть в курсе последних событий в своей сфере

Как мобильному разработчику всегда быть в курсе последних событий в своей сфере

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

Quarkus — горячий тренд Java-разработки

С революционным фреймворком Quarkus разработка на Java станет еще проще, быстрее и эффективнее. Оцените его ключевые особенности и преимущества по сравнению со Spring Boot.
Создание Copilot для визуального распознавания в Azure

Создание Copilot для визуального распознавания в Azure

Хотите создать чат-бота для обобщения и релевантного поиска видеоконтента в Azure? Ознакомьтесь с примером разработки и использования цифрового помощника Copilot. Он поможет быстро находить как ключевые моменты видеоролика, так и заданные фрагменты.
Результаты опроса разработчиков Angular в 2023 году

Результаты опроса разработчиков Angular в 2023 году

Ознакомьтесь с инициативами сообщества Angular, высказанными в опросе 2023 года. Многие из них были учтены в дорожной карте Angular на 2024 год, нацеленной на улучшение опыта разработчиков и повышение производительности фреймворка.
iOS/Swift: подробное руководство по модульным и UI-тестам. Часть 2

iOS/Swift: подробное руководство по модульным и UI-тестам. Часть 2

Рассмотрим особенности тестирования моделей декодирования и HTTP-запросов, настроим идентификаторы доступности. Протестируем ввод в поисковую строку, прокрутку в tableView, навигацию, статичные и динамические метки.
Миграции баз данных с Golang

Миграции баз данных с Golang

Изучим достоинства и недостатки очень полезного инструмента не только для тестирования, но и для контроля и управления версиями БД. Разберем особенности написания и применения SQL-миграций в службах на Go.
Как тестировать приложения Gofr?

Как тестировать приложения Gofr?

Разработка через тестирование. Как применяется этот подход? Напишем тесты для уровня хранения и обработчика.
iOS/Swift: подробное руководство по модульным и UI-тестам. Часть 1

iOS/Swift: подробное руководство по модульным и UI-тестам. Часть 1

Добавим тесты в имеющийся проект, создадим новый и основательно все настроим. Распишем тестовый сценарий.
Мифы Go, в которые мы верим: емкость

Мифы Go, в которые мы верим: емкость

Узнаем правильный ответ на вопрос: «Как растет емкость среза?» В каких случаях она удваивается, а в каких нет?
Как создать на Python скринер акций и выполнить анализ настроений на основе ИИ

Как создать на Python скринер акций и выполнить анализ настроений на основе ИИ

Ищете продвинутый способ скрининга акций для инвестирования? Предлагаем руководство по запуску программы, которая поможет получить список "недооцененных" акций с их обзором и список статей с последними финансовыми новостями с их общим настроением.
Swift: ссылочные типы и циклы сохранения, weak и unowned

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

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

Байт-код Java: назначение, структура и использование

Занимаетесь разработкой компиляторов, современных фреймворков или Java-инструментов? Тогда вам необходимо знать, как что такое байт-код, какова его структура, зачем он нужен и как с ним работать. Эти знания позволят эффективно использовать байт-код Java в своих целях.
Kotlin изнутри: как работают inline-функции

Kotlin изнутри: как работают inline-функции

Inline-функции могут как и увеличить код, так и повысить его производительность. Чтобы с выгодой использовать этот Kotlin-инструмент, необходимо понять принцип его действия, а заодно разобраться в том, зачем нужен crossinline и как работает reified.
Taipy: создание полнофункциональных приложений для работы с данными

Taipy: создание полнофункциональных приложений для работы с данными

Taipy - библиотека Python, предлагающая простые и быстрые способы создания полнофункциональных приложений для работы с данными. Узнайте, чем Taipy отличается от Streamlit и как с помощью Taipy создать простое, но эффективное приложение для работы с данными.
Java и базы данных NoSQL: практическое руководство

Java и базы данных NoSQL: практическое руководство

Интеграция Java с такими базами данных NoSQL, как MongoDB, Cassandra и Neo4j, позволяет создавать масштабируемые, высокопроизводительные приложения, способные обрабатывать большие объемы данных. Предлагаем руководство по настройке этих баз данных, выполнению основных операций и применению лучших практик интеграции с Java.
Как узнать, допускает ли изменения коллекция в Java?

Как узнать, допускает ли изменения коллекция в Java?

Ответ на этот вопрос - никак. Между тем преимущества различения изменяемых и неизменяемых коллекций в Java очевидны. Это не менее важно, чем отличать мастику для натирки полов от начинки для десерта.
Продвинутое применение «select» в Ruby

Продвинутое применение «select» в Ruby

На примерах изучим, как select комбинируется и объединяется с другими методами. Рассмотрим особенности ключевого слова next со сложными условиями.
Производительность Redis и атомарность в Golang. Возможности конвейеров, транзакций и Lua-скриптов

Производительность Redis и атомарность в Golang. Возможности конвейеров, транзакций и Lua-скриптов

Попробуем кэшировать блог, сократив время выполнения. Реализуем ограничитель просмотров страницы, исправим командой WATCH невыполнение транзакции. Сравним Lua-скрипты со встроенными командами и транзакциями.
Написание кода как создание бестселлера

Написание кода как создание бестселлера

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

Join-операции в MySQL — инструмент оптимизации поиска данных

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

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

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

Обнаружение и предотвращение утечек памяти в Java

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

Android 14: обновления в области конфиденциальности и безопасности

Узнайте о новых функциях Android 14, чтобы обновить свои приложения в соответствии с ними. Это поможет обеспечить безопасность приложений и соблюдение конфиденциальности пользователей.
Ошибки в Rust: формула

Ошибки в Rust: формула

Сравним философию обработки ошибок Go, Java и Rust. Рассмотрим ошибки на уровне крейта и модуля, попробуем создать иерархию ошибок. Как происходит отображение ошибок?
Порты Docker: что вы на самом деле открываете?

Порты Docker: что вы на самом деле открываете?

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

Go: точечная вставка значения в структуру

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

Kotlin: продвинутые техники функционального программирования

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

В чем разница между ListView и RecyclerView?

Как Android-разработчик, вы наверняка стоите перед выбором: RecyclerView или ListView? Настало время выяснить, когда стоит использовать каждый из этих виджетов. Правильный выбор позволит вам обеспечить идеальный пользовательский опыт.
Топ-13 пакетов Python в 2023 году

Топ-13 пакетов Python в 2023 году

Предлагаем обзор 13 лучших пакетов Python, которые помогут ускорить процесс разработки. Оцените невероятные возможности Python, широту и глубину доступных ему задач (особенно в сфере машинного обучения).
Реализация односвязного списка в Golang

Реализация односвязного списка в Golang

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

Какую архитектуру выбрать  —  с единой или множеством Activity?

Обе архитектуры - как с единой, так и со множеством Activity - находят свое место в Android-разработке. Изучаем плюсы и минусы каждого подхода, а также их случаи использования.
Основные принципы сборки мусора в Java

Основные принципы сборки мусора в Java

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

DALL·E 3  —  генератор изображений для продуктовых дизайнеров

Знакомьтесь с продвинутой третьей версией DALL·E 3 - генератора изображений с ИИ от OpenAI. Вы узнаете не только о поразительных возможностях нового инструмента, но и о главной его фишке  -  внедрении в ChatGPT для уточнения промптов.
Ключевые вопросы для собеседования по Spring Boot в 2023 году. Часть 2

Ключевые вопросы для собеседования по Spring Boot в 2023 году. Часть 2

Хотите получить должность Java-разработчика или повысить свой профессиональный уровень? Ознакомьтесь с актуальными ответами на 50 ключевых вопросов по микросервисам Spring Boot, которые задают во время собеседования на должность Java-программиста или инженера ПО.
Сложные вопросы на собеседовании для тех, кто 7 лет работал с Java. Часть 2

Сложные вопросы на собеседовании для тех, кто 7 лет работал с Java. Часть 2

Увеличьте свои шансы на успех, впечатлив потенциальных работодателей знаниями и навыками. Разберем некоторые вопросы с подробными объяснениями и примерами.
Управляем зависимостями: возможности каталога версий и convention-плагина

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

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

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

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

Понимание шаблонов проектирования: шаблон “Строитель”

Опытный разработчик должен иметь в своем арсенале различные устоявшиеся инструменты проектирования. Сегодня рассмотрим полезный шаблон "Строитель".
Ключевые вопросы для собеседования по Spring Boot в 2023 году. Часть 1

Ключевые вопросы для собеседования по Spring Boot в 2023 году. Часть 1

Хотите получить должность Java-разработчика или повысить свой профессиональный уровень? Ознакомьтесь с актуальными ответами на 50 ключевых вопросов по микросервисам Spring Boot для собеседования с кандидатами на должность Java-программиста или инженера ПО.
Сложные вопросы на собеседовании для тех, кто 7 лет работал с Java. Часть 1

Сложные вопросы на собеседовании для тех, кто 7 лет работал с Java. Часть 1

Увеличьте свои шансы на успех, впечатлив потенциальных работодателей знаниями и навыками. Разберем некоторые вопросы с подробными объяснениями и примерами.
Реализация параллакс-карусели из SwiftUI в Jetpack Compose

Реализация параллакс-карусели из SwiftUI в Jetpack Compose

Можно ли перевести захватывающую параллакс-карусель с SwiftUI на Jetpack Compose? Следуя предложенному руководству, вы успешно осуществите эту идею, убедившись в гибкости и функциональных возможностях Jetpack Compose.
Создание чат-бота с помощью LLM и LangChain

Создание чат-бота с помощью LLM и LangChain

Хотите создать диалогового чат-бота на основе собственных наборов данных? Воспользуйтесь пошаговым руководством по разработке диалогового чат-бота с оптимизированной памятью с использованием LLM и LangChain.
Развертывание Gradio на AWS: краткое руководство для начинающих

Развертывание Gradio на AWS: краткое руководство для начинающих

Предлагаем пошаговое руководство по развертыванию базового приложения Gradio с помощью Amazon Web Services (AWS). Предварительный опыт работы с AWS не требуется, поскольку каждый шаг будет сопровождаться детальными инструкциями.
Как создать приложение Android за 7 шагов

Как создать приложение Android за 7 шагов

Хотите создать свое первое Android-приложение и ищете доступное руководство? Оно перед вами: всего 7 простых шагов - и приложение успешно работает на Android-устройстве.
Глубокое погружение в Java: рефлексия и загрузчик классов. Часть 3

Глубокое погружение в Java: рефлексия и загрузчик классов. Часть 3

В этой части рассмотрим использование рефлексии и загрузчика классов на примере добавления функциональности плагина в Java-приложение и модификации классов во время выполнения. В завершение поговорим о том, почему две мощные функции Java - динамическая типизация и изменяемые во время выполнения классы - должны войти в арсенал каждого программиста.
10 рекомендаций, которые повысят производительность разработки на Flutter в 2023 году

10 рекомендаций, которые повысят производительность разработки на Flutter в 2023 году

Flutter предлагает множество функций и инструментов, которые могут значительно повысить производительность при разработке мобильных приложений. Предлагаем подробное руководство по использованию этих возможностей.
Продвинутый Python: оператор dot

Продвинутый Python: оператор dot

Все знают, что оператор dot позволяет реализовать объектно-ориентированную парадигму в Python. Но далеко не все понимают механизм, лежащий в основе оператора dot. У вас есть возможность углубиться в этот вопрос.
LangChain + Streamlit + LlaMA: установка диалогового бота с ИИ на локальный компьютер

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

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

Глубокое погружение в режим Copy-on-Write в pandas. Часть 3

Внедрение процесса Copy-on-Write (CoW) является серьезным изменением, которое способно оказать определенное влияние на код pandas. В этой части мы изучим способы адаптации кода, чтобы избежать ошибок при включенном по умолчанию CoW.
Глубокое погружение в Java: рефлексия и загрузчик классов. Часть 2

Глубокое погружение в Java: рефлексия и загрузчик классов. Часть 2

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

Как с легкостью создать установщик пакетов Android

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

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

Инженеры по безопасности приложений напоминают канатоходцев. Им постоянно приходится балансировать: быть универсальными специалистами по всему спектру приложений и экспертами по ряду флагманских приложений. Узнайте о том, как ИИ способен помочь в этой непростой ситуации.
Cosmo Route  -  молниеносный маршрутизатор с открытым исходным кодом и поддержкой Federation V1/V2

Cosmo Route  —  молниеносный маршрутизатор с открытым исходным кодом и поддержкой Federation V1/V2

Elastic-лицензия Apollo Router мешает внедрению? Хотите работать еще быстрее? Для подобных случаев идеально подойдет Cosmo Router - быстрый маршрутизатор с открытым исходным кодом, совместимый с Federation V1/V2.
Глубокое погружение в режим Copy-on-Write в pandas. Часть 2

Глубокое погружение в режим Copy-on-Write в pandas. Часть 2

В первой части мы рассказывали о том, как работает механизм Copy-on-Write. Там указывались области, в которых копии внедряются в рабочий процесс. Во второй части сосредоточимся на оптимизациях, которые позволят избежать замедления среднестатистического рабочего процесса.
Глубокое погружение в Java: рефлексия и загрузчик классов. Часть 1

Глубокое погружение в Java: рефлексия и загрузчик классов. Часть 1

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

7 фреймворков для работы с LLM

Предлагаем детальное описание 7 фреймворков с открытым исходным кодом для развертывания и обслуживания LLM. Сравните особенности, преимущества, ограничения и затратность таких фреймворков, как vLLM, Text Generation Inference, OpenLLM, Ray Serve, CTranslate2 и MLC LLM.
Глубокое погружение в режим Copy-on-Write в pandas. Часть 1

Глубокое погружение в режим Copy-on-Write в pandas. Часть 1

Хотите разобраться в том, как новый режим Copy-on-Write (копирование при записи) изменил поведение pandas? Тогда углубимся в механизм Copy-on-Write и остановимся на некоторых фактах, которые полезно знать каждому пользователю pandas.
Вопросы для собеседования iOS - Swift. Часть 2

Вопросы для собеседования iOS — Swift. Часть 2

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

10 проектов для изучения Golang в 2023 году

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

Настройка Detekt с помощью каталога версий и convention-плагина

Не упустите возможность поднять свою Android-разработку на новый уровень. Эти знания и инструменты помогут повысить качество кода и сделать Android-приложение надежным и поддерживаемым.
Извлечение текста из PDF-файлов с помощью Python: исчерпывающее руководство

Извлечение текста из PDF-файлов с помощью Python: исчерпывающее руководство

Ознакомьтесь с полным процессом извлечения текстовой информации из таблиц, изображений и обычного текста, заключенных в PDF-файле. Этот подход использует лучшие характеристики многих Python-библиотек и применим к различным типам PDF-файлов и элементов.
Вопросы для собеседования iOS - Swift. Часть 1

Вопросы для собеседования iOS — Swift. Часть 1

Рассмотрим самый важный и частый вопрос - шаблон делегирования. А также проверки времени выполнения, соответствие NSObject классу Swift, протоколы.
Rust: безопасный парсинг с нулевым копированием

Rust: безопасный парсинг с нулевым копированием

В Rust парсинг с нулевым копированием избавляет от ошибок безопасности памяти, возникающих в других языках. Руководство по использованию такого алгоритма позволит повысить общую производительность системы.
Малоизвестный пакет Go, который пригодится при выполнении SQL-миграций

Малоизвестный пакет Go, который пригодится при выполнении SQL-миграций

Пакет embed, который появился в Go 1.16, предоставляет возможность встраивать файлы и каталоги в бинарные файлы Go. Предлагаем узнать, как этот пакет используется для встраивания файлов миграции SQL в бинарный файл.
Автоматизация скриншот-тестирования предварительных просмотров Compose с использованием отражения

Автоматизация скриншот-тестирования предварительных просмотров Compose с использованием отражения

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

Графовые сверточные сети: введение в GNN

Предлагаем подробное описание механизма работы графового сверточного слоя. Пошаговое руководство по использованию PyTorch Geometric (PyG) позволит на практике применять этот механизм для решения задач классификации узлов.
Принципы SOLID в Kotlin

Принципы SOLID в Kotlin

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

Рисуем Дораэмона с помощью Python

Хотите нарисовать популярного аниме-персонажа Дораэмона с помощью языка Python и его библиотеки turtle? Воспользуйтесь пошаговым гайдом, который поможет вам успешно справиться с этой задачей.
7 признаков того, что вы стали продвинутым пользователем Sklearn

7 признаков того, что вы стали продвинутым пользователем Sklearn

Мечтаете присоединиться к клубу опытных пользователей Sklearn - настоящих мастеров машинного обучения? А может, вы уже состоите в нем, не подозревая об этом? Давайте проверим!
Как создавать легкие платформонезависимые приложения на Go  -  без JS и BS

Как создавать легкие платформонезависимые приложения на Go  —  без JS и BS

Ознакомимся с методами, виджетами и функционалом библиотеки Gio, сделаем приложение GoGiggles, запустим его в ОС. Добавим функционал СhatGPT, кнопку, обработку событий нажатия.
Machine Learning

Подробное руководство по свёрточным нейронным сетям

Искусственный интеллект существенно развился на своём пути сокращения разрыва между возможностями людей и машин. Разработчики наравне с энтузиастами работают над великим множеством аспектов в...
8 советов по улучшению качества кода

8 советов по улучшению качества кода

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

Управляем интернетом с помощью Python

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

Изучаем Python: генераторы, стримы и yield

В Python часто используются generator иyield. Расскажу в этой статье об основных свойствах generator, а также преимуществах работы с ним. Разберёмся в подробностях, как...
Как создавать собственные хуки на React

Как создавать собственные хуки на React

Учимся использовать логику компонентов для создания многоразовых хуков Хуки React, впервые появившиеся в версии React v16.8, кардинально изменили подход к написанию кода. Из коробки React...