Kotlin 1.5.30 и KMM/KMP

Kotlin 1.5.30 и KMM/KMP

Узнайте, почему специалисты называют Kotlin 1.5.30 поворотным моментом в мультиплатформенном программировании.
Python

Модуль Collections в Python - Высокопроизводительный контейнер типов данных

Краткий обзор модуля Collections в Python Если реализацию сложно объяснить — идея плоха: The Zen of Python Python — достаточно мощный ЯП с поддержкой модульного программирования. Модульное программирование представляет собой процесс разделения...
Go на пороге третьего десятилетия 21 века: язык программирования для искусственного интеллекта и науки о данных

Go на пороге третьего десятилетия 21 века: язык программирования для искусственного интеллекта и науки...

Python появился 30 лет назад, но только через 20 лет получил признание разработчиков. Он колоссально вырос за это время, особенно за последние пять лет...
Новый подход к пониманию RxJava

Новый подход к пониманию RxJava

Реактивное программирование  —  очень важный способ написания чистого кода, а ReactiveX  —  одна из самых известных библиотек для асинхронной обработки последовательностей данных реактивным способом. Для...
Python

Овладей Python, создавая реальные приложения. Часть 4

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

Поиск и устранение утечек памяти в Python

Одним из основных плюсов динамически интерпретируемых языков (включая Python) является то, что с ними можно легко управлять памятью. По мере необходимости объекты (массивы и...
Асинхронный Rust: проблемы и способы их решения

Асинхронный Rust: проблемы и способы их решения

В 2013 году я открыл для себя Rust и сразу решил изучить его, сделав своим основным языком программирования. Через четыре года я переехал в Берлин...
3 функции Python Matplotlib: повысьте информативность визуализации данных

3 функции Python Matplotlib: повысьте информативность визуализации данных

Форма представления так же важна, как и содержимое. Python Matplotlib поможет вам в создании понятных и лаконичных визуализаций.
Циклы Java в сторону - даешь потоки!

Циклы Java в сторону - даешь потоки!

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

Как создать простую браузерную игру с помощью Phaser 3 и TypeScript

Большую часть своего времени я занимаюсь backend-разработкой, поэтому я не могу похвастаться большим опытом во frontend. Какое-то время назад у меня возникло желание создать...
Постквантовая криптография на Python, C и Linux

Постквантовая криптография на Python, C и Linux

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

Swift: 7 секретов оптимизации 

Обзор 7 функциональностей Swift для создания качественного кода: ключевое слово indirect, атрибут @autoclosure, свойства Lazy и другие.
Node

Как создать HTML-таблицу и PDF с Node и Google Puppeteer

В этой статье мы узнаем о возможностях встроенного инструмента утилиты Node под названием fs (file system). В документации fs говорится: Модуль fs предоставляет API для взаимодействия...
Язык C: константы и литералы

Язык C: константы и литералы

Константы - фиксированные величины, которые не изменяются во время выполнения программы. Эти фиксированные величины также называются литералами.
Приемы работы в терминале Linux для повышения продуктивности

Приемы работы в терминале Linux для повышения продуктивности

Освоим приемы, хитрости, рекомендации, сочетания клавиш в терминале Linux. С им помощью упростим повседневную рутину и облегчим выполнение многих задач.
Django Google SEO: поисковая оптимизация сайта на Python для индексации в Google

Django Google SEO: поисковая оптимизация сайта на Python для индексации в Google

Показываем четыре простых шага для повышения рейтинга сайта в поисковой системе Google благодаря улучшению Django Search Engine Optimization.
Как компьютер выполняет математические вычисления

Как компьютер выполняет математические вычисления

Что позволяет вашему ПК, ноутбуку или смартфону быть легким, быстрым и относительно недорогим девайсом? Что делает компьютер эффективным, сокращая энергопотребление и тепловыделение? Поищем ответы на эти вопросы "под капотом" вычислительной машины.
Что возвращать в Go: структуры или интерфейсы?

Что возвращать в Go: структуры или интерфейсы?

В подробном руководстве исследуем преимущества и особенности возвращения структур и интерфейсов на Go. Рассмотрим реальные сценарии с практическими примерами, рекомендации, альтернативные стратегии.
Что нового в Python 3.10?

Что нового в Python 3.10?

Разработка Python 3.10 стабилизировалась, и пришло время наконец-то протестировать все те новые функции, которые войдут в финальный выпуск. Мы расскажем все самое интересное о том,...
Git

Команда Git Rerere — автоматизируйте решения для устранения конфликтов слияния

rerere - сокращение от "reuse recorded resolution" (повторное использование сохраненных разрешений конфликтов). С помощью этой команды Git запоминает, каким образом был разрешен конфликт, чтобы при...
Перехват сетевых запросов из мобильного приложения

Перехват сетевых запросов из мобильного приложения

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

Как реализовать древовидную сортировку в стандартной библиотеке Go

Двоичная куча Итак, двоичная куча — это:  Контейнер, предоставляющий свой максимальный элемент за время O(1), добавляющий элемент за O(log n) и удаляющий максимальный элемент за O(log n).Неполное бинарное...
Android

Чистый код в Android

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

Как спроектировать REST API для выполнения системных команд с помощью Actix Rust

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

JSON-сериализация необязательных полей в Go

Язык Go получил широкое распространение в бэкенд-программировании, и с каждым днем сообщество его разработчиков становится все больше.Мне тоже очень нравится писать код на Go. Недавно...
45 сочетаний клавиш в VSCode, чтобы ускорить написание кода

45 сочетаний клавиш в VSCode, чтобы ускорить написание кода

Visual Studio Code (VS Code) — бесплатный редактор кода с открытым исходным кодом, выпущенный Microsoft. Благодаря легкому дизайну, мощным функциям и обширным возможностям настройки VS Code быстро стал самым популярным редактором кода среди разработчиков. VS Code также имеет богатую коллекцию расширений, поддержку широкого спектра языков программирования, автодополнение кода IntelliSense, возможности отладки и встроенное управление Git.
Data science

Изучение нового языка для работы с данными

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

Рост производительности машинного обучения с Rust

Сделаем с нуля небольшой ML-фреймворк на Rust для создания нейросетевых моделей. За счет чего скорость обучения здесь в 5,5 раза выше, чем с Python и PyTorch?
Python/C API  -  ускорение Python при помощи кода на C

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

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

Как объединить несколько CSV файлов через 8 строчек кода

Зачем это нужно? Копипаст вручную — это, может, и не самый плохой вариант для небольшого количества файлов. Но представьте, что вам нужно объединить 100+ файлов… готовы ли вы сделать...
Python

Не автоматизируйте всё подряд

Я склонен попадать в ловушку, пытаясь автоматизировать все подряд. Изучение и внедрение чего-то нового — это очень весело. Особенно если вы новичок в программировании: всё выглядит так,...
Jetpack DataStore: улучшенная система хранения данных

Jetpack DataStore: улучшенная система хранения данных

Что такое DataStore На протяжении многих лет разработчики Android хранили небольшие фрагменты конфиденциальных пользовательских данных с помощью общих настроек (shared preferences). Этот подход имеет следующие...
Artificial Intelligence

Обратные вызовы Keras за 2 минуты

Что такое обратный вызов Keras? Из документации Keras: Обратный вызов — множество функций, применяемых на данной стадии тренировки. Вы можете использовать их, чтобы посмотреть на внутреннее состояние...
Golang

Шаблон Flyweight (Приспособленец) на Go

Определение: Приспособленец — это структурный шаблон проектирования, в котором объект, представляющий себя как уникальный экземпляр в разных местах программы, по факту не является таковым. Цель — оптимизация работы с...
Сделай сам  -  как автоматизировать прошивку смартфонов

Сделай сам  -  как автоматизировать прошивку смартфонов

Иногда выдается свободное время, когда можно смастерить что-нибудь полезное из старых гаджетов. Однажды я подумал… сколько добра пропадает! Ведь вся эта вычислительная мощность может быть...
Основы ​программирования на Ruby

Основы ​программирования на Ruby

Изучим типы данных на Ruby, напишем и запустим простую программу. Разберем, как получаются данные от пользователя, текущая дата и время, чем методы отличаются от функций, как создается массив.
Конвейер BitBucket CI/CD для синхронизации веток с GitHub

Конвейер BitBucket CI/CD для синхронизации веток с GitHub

Зачастую возникает необходимость синхронизировать ветки между двумя различными репозиториями  —  например, репозиторий BitBucket и репозиторий GitHub. Это распространенный сценарий при работе с облачным репозиторием, но...
iOS

Анимируем скучные табличные представления в iOS-приложении

Почти в любом iOS-приложении присутствуют табличные представления. Их применяют для отображения одиночного столбца содержимого с вертикальной прокруткой, разделённого на строки. Анимация  —  отличный способ привлечь...
Android and iOS Libraries

Топ-10 самых популярных библиотек Android и iOS

Хотите быть в курсе трендов этого сезона? Представляем вашему вниманию список из десяти популярных библиотек Android и iOS на GitHub на конец 2019 года!
RxJS и Angular: декларативный If/Else

RxJS и Angular: декларативный If/Else

Исходный код: Github 🚀 | Интерактивные примеры и фрагменты кода🚀 Цель статьи 🎯 Задействование оператора фильтра RxJS. Использование последовательной парадигмы декларативного программирования для потенциального улучшения ясности кода...
Golang

Go: трассировочный пакет

ℹ️ В статье речь идёт о Go 1.13. В Go имеется инструмент для проведения трассировки и получения подробного представления о работе программы во время её...
Python

Одно слово для «быстрой» Pandas

Она навсегда изменит вашу жизнь Вы загрузили данные в DataFrame и уже готовы провести предварительный анализ…, но сначала придется создать кое-какие дополнительные функции. Как правило, вы...
Как я создал 2D-игру с помощью Ebiten за 40 минут

Как я создал 2D-игру с помощью Ebiten за 40 минут

Хотите создать видеоигру менее чем за час? Следуйте руководству по максимально упрощенной разработке 2D-игры с использованием языка Go и библиотеки Ebiten и возможностью развертывания на Windows, macOS и Linux. 
Как оптимизировать навигацию в Jetpack Compose

Как оптимизировать навигацию в Jetpack Compose

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

Распознаём 50 видов текста на C++ с Plywood

Посмотрим на скромный текстовый файл: Этот файл может содержать удивительное количество различных форматов. Текст может быть закодирован как ASCII, UTF-8, UTF-16 (с прямым или обратным...
5 крутых функций Chrome DevTools, о которых не знают большинство разработчиков

5 крутых функций Chrome DevTools, о которых не знают большинство разработчиков

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

5 команд Linux, которые облегчают жизнь программистам

Повысьте свою производительность с помощью эффективных команд Linux. Они значительно упростят выполнение повседневных задач - от эффективного управления файлами и папками до навигации по каталогам и запоминания команд. 
Android

Какие языки программирования нужно знать, чтобы разрабатывать приложения под Android?

Итак, вы решили научиться разрабатывать приложения под Android? Отлично! Но нужно понимать, что без труда не вынешь и рыбку из пруда. Программирование — это крайне обширная...
Golang

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

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

Событийно-ориентированная архитектура

Создадим простой проект Spring Boot с темами и разделами Kafka для публикации событий отправителями и подписки получателей. Разберем стратегии реализации повторных попыток, масштабируем микросервисы.
Основы безопасного программирования

Основы безопасного программирования

Безопасность приложений не ограничивается только аутентификацией. У хакеров есть бесчисленное множество способов атаковать систему в обход этой процедуры. Программистам важно обладать базовыми знаниями, чтобы не...
10 способов повысить качество Python-кода

10 способов повысить качество Python-кода

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

Стоит ли учить Julia?

Julia — это новейший IT-язык, поэтому я решил его попробовать. Вопрос в том, стоит ли добавлять его в арсенал специалиста по данным? Установка Первое, что стоит знать о...
В гостях у GitHub Package Registry

В гостях у GitHub Package Registry

Сервис управления пакетами GitHub Package Registry был разработан и представлен в середине 2019 компанией Microsoft. Его создание, наряду с приобретениями GitHub и NPM, говорит...
Python

Контейнеризация в Python. Часть 3

Часть 1, Часть 2, Часть 3 Это последняя статья серии, посвящённой контейнеризации, в которой мы рассмотрели настройку и оптимизацию контейнеризованной среды разработки Python. В Части...
Android

Топ-5 трендовых библиотек для Android за 1 квартал 2020 года

Мы находимся почти в конце первого квартала 2020 года и много всего происходит в сообществе Android. Android 11 Developer Preview уже вышел с большим...
Pandas

TextHero - самый простой способ чистки и анализа текста в Pandas

Упрощенная обработка естественного языка (NLP) Я всегда нахожусь в поиске новых инструментов, которые помогут мне упростить процедуру обработки естественного языка, поэтому, когда я наткнулся на короткий...
Запуск тестовых сценариев с Maven

Запуск тестовых сценариев с Maven

Не знакомы с Maven? Здесь представлена кое-какая информация об этом инструменте. Ее должно быть достаточно для начала работы с ним. Для запуска тестовых сценариев традиционно...
AWS

Автоматизация скриптов на Python при помощи AWS Lightsail

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

Очереди с приоритетом в Java

В Java включает очереди с приоритетом в рамках Collections Framework. Очередь приоритетов называется так по одному из главных способов применения  —  планирования работы в...
Переоткрываем для себя эмулятор Android для ускорения тестирования

Переоткрываем для себя эмулятор Android для ускорения тестирования

Нет смысла подслащивать пилюлю: UI-тесты на Android могут быть медленными, особенно если со временем у вас накопилось их много. Итак, что же делать, когда у...
Создание GUI PyWebIO для удаления пакетов Python

Создание GUI PyWebIO для удаления пакетов Python

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

Рефакторинг кода Go для тестопригодности: возможности интерфейсов

Раскроем возможности модульных тестов для раннего обнаружения багов. Продемонстрируем на конкретном примере, как сделать приложение на Go более тестопригодным.
Использование конкурентности при создании API в Go

Использование конкурентности при создании API в Go

Когда в 2014 году я впервые начинал писать приложения на Golang, мое внимание сразу же привлекло самое необычное и интересное, что есть в этом...
Как создать инструмент PGP-шифрования на основе Python

Как создать инструмент PGP-шифрования на основе Python

Сделаем первый шаг в мир кибербезопасности и шифрования. Для этого создадим инструмент командной строки для PGP-шифрования с помощью Python.
Переход с VS Code на Neovim: повысьте свою продуктивность 

Переход с VS Code на Neovim: повысьте свою продуктивность 

Переход с VS Code на Neovim может кардинально изменить ваш рабочий процесс. Настраиваемость, скорость и эффективность Neovim позволит быстрее и продуктивнее писать код и управлять проектами. Узнайте, как установить, настроить и использовать этот инструмент.
Как создать чат-бот на основе данных CSV с LangChain и OpenAI

Как создать чат-бот на основе данных CSV с LangChain и OpenAI

Хотите пообщаться с чат-ботом, основанном на вашем собственном файле CSV? Не стоит отказываться от такого интересного опыта. При создании чат-бота поработаем с Langchain и OpenAI.

Знакомство с Papermill

Как превратить Jupyter Notebook в рабочий процесс по обработке данных 1. Введение Jupyter Notebook — это «золотой стандарт» в разведочном анализе данных (EDA-анализ) и отличный инструмент для документирования...
20 Python-скриптов для автоматизации повседневных задач

20 Python-скриптов для автоматизации повседневных задач

Эта коллекция из 20 скриптов усилит арсенал любого питониста. Став ее обладателем, вы сможете легко решать такие задачи, как поиск дубликатов файлов, преобразование текста в речь, создание собственного чат-бота, мониторинг цен на криптовалютном рынке и многие другие. 
Реализация GitHub Action в контейнере Docker

Реализация GitHub Action в контейнере Docker

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

Создание общей библиотеки Linux

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

Выбор лучшего фреймворка для создания мобильного приложения

Для создания мобильных приложений есть множество фреймворков. Но выбрать нужно лишь один. Совсем недавно каждый разработчик занимался разработкой мобильных приложений, используя Software Development Kit (SDK),...
Kotlin

Использование свойств lazy в Kotlin для связывания представлений Android

Чтобы выполнить операцию над одним из представлений при работе с UI-слоем приложения Android, его нужно получить его через findViewById. Несмотря на то, что использование...
Язык С: структура программы

Язык С: структура программы

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

C++ и Java: сравнительный анализ

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

Как использовать GitLab в качестве реестра Helm-чартов

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

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

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

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

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

Как создать масштабируемую архитектуру для крупных мобильных проектов

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

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

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

Дизайн системы для Чайников. Создаём стиль для приложения на React Native за 3 простых шага

В наше время, создать собственное приложение уже не кажется чем-то сложным. Ещё несколько лет назад вам пришлось бы освоить две экосистемы, чтобы создать кроссплатформенное...
Koin

Релиз Koin 1.0.0✨

Так, так, так… вот оно! Уважаемые пользователи Koin, настал момент релиза нашей первой стабильной версии Koin. Спустя чуть больше года после начальной версии, мы...
Что такое ViewModel

Что такое ViewModel

Представляем ViewModel доступным языком. Рассказываем, что такое ViewModel и как эффективно использовать этот компонент в Android-приложениях.
Хитрости и приемы эффективного программирования на Kotlin

Хитрости и приемы эффективного программирования на Kotlin

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

Распространенные и нелепые ошибки разработчиков Android-приложений

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

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

Ответ на этот вопрос - никак. Между тем преимущества различения изменяемых и неизменяемых коллекций в Java очевидны. Это не менее важно, чем отличать мастику для натирки полов от начинки для десерта.
Создание оркестратора для событийно-ориентированного приложения с Golang и RabbitMQ

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

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

Синхронизация в Java. Часть 2

Часть 1, Часть 2 Состояние гонки Вновь приветствую вас в теме “Синхронизация в Java”! Надеюсь, что вы прочли мою предыдущую статью. Давайте разберёмся, что же такое состояние...
Карусель изображений в React Native

Карусель изображений в React Native

Пошаговое руководство по созданию карусели изображений с помощью библиотеки React Native Snap Carousel, которая превращает этот процесс в истинное удовольствие.
Python

Овладей Python, создавая реальные приложения. Часть 3

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

Кастомизируем дефолтную заставку во Flutter

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

8 частых ошибок в Android-разработке

Ошибка № 1: не учитывать, что всё должно быть на своих местах Экосистема Android стремительно распространяется по всему миру. Вместе с этим растёт и сообщество, состоящее...
Почему Dockerfile больше не нужен для создания контейнера в Go

Почему Dockerfile больше не нужен для создания контейнера в Go

Интегрируя, адаптируя и обучая новых инженеров в FlowUp, я пришел к выводу: на формирование глубокого понимания того, как работают Dockerfiles, уходит слишком много времени....
Язык C: основы синтаксиса

Язык C: основы синтаксиса

От ознакомления с базовой программной структурой C перейдем к усвоению других строительных блоков этого языка.
Python

Обработка аргументов в Python с помощью argparse

Если вы хотите разрабатывать ПО на Python, то умение использовать argparse в своих скриптах будет крайне полезным. Если же вы специалист по данным, то,...
Лучшие практики для эффективного кода на Golang. Часть 1

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

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

3 способа мониторинга изменений лог-файлов в Java

Научимся отслеживать изменения файлов тремя разными способами: запланированная задача + File.lastModified, WatchService и Apache Commons-IO.
JavaScript

Как пересчитать слова в массиве используя JavaScript

Считаем слова в массиве Дано: let array = ; Задача: посчитать все слова в данном массиве. Способ №1: используем цикл for function getWordCount() { let map = {}; for...
Python

Овладей Python, создавая реальные приложения. Часть 5

Делаем анализ тональности высказываний в Twitter за 3 минуты Предыдущие части: Часть 1, Часть 2, Часть 3, Часть 4 В этой части мы создадим скрипт Python, который при помощи Twitter поможет...
Python

Полезные Python модули, которыми мало кто пользуется

Python — это прекрасный язык с множеством встроенных модулей, цель которых — помочь нам писать более красивый и качественный код. Цель В данной статье мы будем работать с малоизвестными методами...
Как использовать перечисления в Golang

Как использовать перечисления в Golang

Изучим способы создания перечислений с идентификатором iota и структурными тегами. Проверим поведения на тестовых сценариях.
Автоматизируем задачи на Python с помощью ChatGPT

Автоматизируем задачи на Python с помощью ChatGPT

Используйте мощь искусственного интеллекта для построения графиков, отправки электронных писем и скрейпинга. Каждая из этих операций при участии ИИ займет всего несколько секунд.
Programmer Technician

Падение разработчиков ПО, рост специалистов по программированию

История Заглянув в истоки информатики, можно обнаружить, что изначально она не только не имела такого названия, но и не преподавалась ни в одном университете. Информатика...
Как использовать PHP для вывода данных?

Как использовать PHP для вывода данных?

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

Создание пользовательских хуков React: полное руководство

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