Как загружать файлы и изображения в приложении Django
Вы каждый день загружаете какой-нибудь контент, будь то документы коллегам по работе или же различные файлы в любимую социальную сеть. В этом гайде вы узнаете, как это делается в приложении Django.
Зачем Python столько знаков подчеркивания?
Неочевидные примеры использования символа нижнего подчеркивания для обеспечения инкапсуляции и улучшения читаемости вашего кода на Python
11 важнейших консольных команд для разработчика
Командная строка сильно облегчает нам жизнь, позволяя легко автоматизировать несколько рутинных задач и повысить плавность хода всего процесса. Вместо того, чтобы постоянно кликать повсюду...
Удалённые вызовы процедур в Golang
Что такое удалённые вызовы процедур?
Удалённый вызов процедур (RPC) — это подпрограмма в распределённых вычислениях. Реализация RPC напоминает реализацию локальных вызовов, но обычно они не идентичны. Как...
Python Django и OSRM: маршрут на интерактивной онлайн-карте
Python Django, Folium, Leaflet и OSRM API для веб-приложения с функционалом Google Maps
Продвинутый Python: 9 важнейших аспектов при определении классов
По своей сути, Python является объектно-ориентированным языком программирования, вследствие чего он работает с данными и функциональностями, поддерживая различные объектно-ориентированные возможности. Например, все структуры данных — это...
3 способа локального хранения и чтения учетных данных в Python
Хранение учетных данных в качестве глобальных переменных среды
Если учетные данные хранятся в виде глобальных переменных среды, к ним можно получить доступ с помощью любого...
Сниппеты Python для начинающих: распаковка кортежей, пауза в секундах и случайное число
Добавьте в закладки 12 профессиональных Python сниппетов для решения повседневных задач, ведь когда-нибудь они помогут сохранить ваш день!
Java-Lombok: нужны ли геттеры и сеттеры?
Привет всем энтузиастам Java! Давайте поговорим о Java и рефакторинге. Как известно, Java остается одним из наиболее популярным языком программирования. В каждом новом релизе...
Мир Docker и Kubernetes в аналогиях с жизнью разработчика
Новый подход к объяснению основных концепций платформы Kubernetes! Автор находит аналогии объектам K8s в реалиях разработчика, что значительно упрощает понимание принципов их работы.
Основы Go: ввод-вывод файловой системы
Введение
Чтение с диска и запись на диск, а также перемещение по файловой системе — это основной элемент в любом языке. Узнаем, как все это...
Полное руководство по встроенным структурам данных Python
Структуры данных — это просто специализированные форматы для организации и хранения данных. Они крайне необходимы для разработки программного обеспечения, поэтому их правильный выбор очень важен.
“Плохие программисты...
Генерируем образы Docker с помощью Spring Boot
Почему контейнеры?
В мире, где пользователи обращаются к приложениям, способным возвращать данные за считанные миллисекунды, есть единственный в своем роде инструмент, который любая компания стремится...
Новейшие возможности C# 9
В преддверии релиза .NET 5, объединяющего среды выполнения .NET, Microsoft недавно анонсировали возможности, которые будут включены в C# 9. О выпуске финальной предварительной версии C# было...
Конкурентность на Go: объяснение шаблона Worker Pool
Введение
Если хотите, можете пропустить вводную часть и переходить сразу к подробному разбору реализации.
Когда я только начинал работать с языком Go, то немного скептически относился...
Как оптимизировать код на Python
Как я сократил время выполнения приложения на 1/10
Данные советы просты в реализации и могут пригодиться вам в обозримом будущем.
Считается, что первоочередной задачей программиста является написание...
Делегаты в Kotlin для Android
Kotlin действительно красивый язык, в котором есть очень крутые фичи. Из-за них разработка приложений становится веселым и захватывающим опытом. Одна из этих фич — делегированные свойства....
Отправляем E-mail с помощью Python
Я участвую в разработке одного проекта на работе. Мы разрабатываем прототипы Raspberry Pi и специальное программное обеспечение. Хоть и разработанное ПО работает блестяще, нам...
Обновления в Android 11: Scoped Storage и другие улучшения конфиденциальности
Все последние улучшения в Android на уровне ОС касаются защиты приложений и пользовательских данных, а также более упорядоченного предоставления доступа. Несмотря на преимущества изменений,...
Разбираемся с компилятором Go
В статье речь идёт о Go 1.13
Компилятор Go занимает важное место в экосистеме Go. Компиляция — необходимый этап создания исполняемого двоичного кода. Компилятор проходит долгий путь:...
Асинхронная многопоточность в Python
Вступление
В этом разделе я попытаюсь сформулировать цель своей статьи (можете пропустить его, если хотите просто узнать, как настроить асинхронную многопоточность в Python). Мне потребовалось...
Графовые сверточные сети: введение в GNN
Предлагаем подробное описание механизма работы графового сверточного слоя. Пошаговое руководство по использованию PyTorch Geometric (PyG) позволит на практике применять этот механизм для решения задач классификации узлов.
Изучаем Python: генераторы, стримы и yield
В Python часто используются generator иyield. Расскажу в этой статье об основных свойствах generator, а также преимуществах работы с ним. Разберёмся в подробностях, как...
Освойте оконные функции SQL раз и навсегда
Пошаговое руководство по освоению оконных функций поможет решать различные задачи. Изучите на конкретных примерах, как оконные функции помогают выполнять агрегирование, ранжирование и смещения данных.
Как специалисту по данным написать веб-приложение, используя простой Python
Проект машинного обучения нельзя назвать действительно законченным, пока у вас нет хорошего способа его продемонстрировать.
Раньше для демонстрации проекта хватало хороших визуализаций или небольших PPT,...
Учимся избегать null-значений в современном Java. Часть 1
Null. Правила использования
В своем выступлении “Null References: The billion dollar mistake” (“Нулевые ссылки: ошибка на миллиард долларов”), Тони Хоар описывает реализацию нулевых ссылок в...
9 советов, как выделиться среди Java-разработчиков
На протяжение десятилетий Java считается одним из самых популярных языков программирования. Все больше и больше людей желают освоить этот язык, из-за чего образуется сильная...
10 отличных JavaScript библиотек на 2020 год
JavaScript — язык интернета. Вы можете запускать его в браузере или на сервере, а можете использовать для мобильных приложений.
Хотя он и хорош сам по...
Как развернуть GitLab с помощью Docker за 5 секунд
GitLab - это веб-инструмент управления репозиториями Git, который помогает командам совместно работать над кодом. Расскажем, как быстро развернуть экземпляр GitLab.
9 Уровней применения функции zip в Python
Введение
В Python есть несколько встроенных функций, которые делают код очень элегантным. Одна из них — функция zip. Но начинающим не всегда бывает понятно, как...
MVVM на Android с компонентами архитектуры + библиотека Koin
Введение
С MVVM (Model-View-ViewModel) процесс разработки графического интерфейса для пользователей делится на две части. Первая — это работа с языком разметки или кодом GUI. Вторая — разработка бизнес-логики или...
Основы многопоточности
Вкратце знакомимся с понятием и принципами работы многопоточности, а также наглядно убеждаемся в преимуществах ее применения.
Как использовать ИИ и Python для распознавания речи
Создаем систему распознавания речи с использованием искусственного интеллекта (ИИ) для транскрибирования звука. Рассмотрим особенности создания такой системы на языке Python с использованием сетевой платформы AssemblyAI.
Простое руководство по форматированию строк в Python с помощью f-строк
Использование f-строк - 5-го способа форматирования строк, появившегося в Python 3.6, - повысит ваш профессиональный уровень. В отличие от других способов в Python, f-строки являются более гибкими, работают быстрее и улучшают читаемость кода.
Как запустить любое ПО с графическим интерфейсом в Docker?
Вы, конечно, прекрасно знаете, что такое docker и контейнеры и даже как развернуть модель машинного обучения в docker? Но есть еще один интересный вопрос:...
5 основных фреймворков для Java-разработчиков
Приветствую вас, Java-разработчики! Размышляете над тем, какой фреймворк освоить, чтобы стать полноценным специалистом? Спешу вас обрадовать — это как раз тема данной статьи. Как-то...
Простое объяснение интерфейсов на Golang
Что общего у электророзеток с интерфейсами? Как создавать интерфейсы правильно? Попробуем понять этого непонятного зверя!
Создаем бота клиентской службы с помощью Python, Flask и Pinecone
Простой и наглядный пример создания бота, способного заменить специалиста клиентской службы по основным вопросам. Экономит время и не требует зарплаты.
Сможете ли вы решить эти 3 «простые» задачи на Python?
Правильное решение вас удивит
Попробуйте решить эти задачи самостоятельно, а потом проверьте себя по готовым ответам.
Подсказка: У всех задач есть нечто общее. Так что если разобраться...
QR-разложение матрицы
Наука о данных и разложение матриц
Специалистам по данным стоит хорошо знать несколько разложений матриц, потому что они помогают находить методы для актуальных вычислений и...
9 странностей Python и их объяснение
Python - элегантный, но далеко не идеальный язык. Некоторые необычные функции могут сбивать с толку даже опытных разработчиков. Рассмотрим такие фрагменты в Python и постараемся дать им точное объяснение.
Осваиваем реактивное программирование на Java
Асинхронный ввод/вывод уже какое-то время используется в обиходе. При этом разные языки реализуют его по-разному, но все предоставляют способ уменьшить количество потоков, давая вроде...
Шорткаты VS Code, с которыми ввод кода напоминает игру на пианино
Застряли в замкнутом круге "клавитура-мышка", из-за которого устаете и теряете время при написании кода? Представляем вашему вниманию полезные шорткаты VS Code, которые избавят от этих проблем.
Приключения Java-разработчика, решившегося изучать Go
Мне нравится изучать что-то новое, особенно новые языки. Всегда интересно узнать, как с одной и той же проблемой справляются разные языки и как различается...
Новое в Android 11
Оцените превью для обновлений некоторых уже существующих функций, а также доступных нововведений, таких как IME animation control.
Синхронизированные анимации IME
Идея заключается в том, что IME (редактор...
Графовое моделирование данных на Java
Моделирование данных — это жизненно важная часть разработки ПО, а выбор подходящих структур данных или баз данных — основа успеха приложения или сервиса.
В этой...
Автоматизируем задачи на Python с помощью ChatGPT
Используйте мощь искусственного интеллекта для построения графиков, отправки электронных писем и скрейпинга. Каждая из этих операций при участии ИИ займет всего несколько секунд.
R - язык для статистической обработки данных. Часть 1/3
Я сам изучал R в течение последних нескольких недель.
В своей статье я рассказываю о языке программирования R и его главных концепциях, которые пригодятся каждому...
7 расширенных возможностей Python
Python - один из самых продвинутых языков программирования, который широко используется во многих отраслях. Он обладает множеством расширенных функций, которые делают его мощным инструментом в руках опытных программистов. Вот подборка из 7 наиболее полезных расширенных возможностей Python.
Руководство по использованию регулярных выражений Python
Одна из главных задач при работе с текстовыми данными — это создание множества текстовых функций.
Некоторые функции ищут конкретные паттерны в тексте, например, адреса электронной почты или...
Создаем юнит-тесты с помощью ИИ-инструмента
В этой статье мы воспользуемся плагином на базе искусственного интеллекта для IntelliJ, чтобы автоматически сгенерировать юнит-тесты.
Шаг 1. Установка плагина и импорт проекта
Плагин для IntelliJ IDEA...
Clean Architecture с Kotlin
Мощная базовая архитектура — важный показатель для масштабируемости приложения. Внесение таких изменений, как замена API на обновленную и оптимизированную структуру API, требует переписать практически все приложение...
Создаем чат-бот в Python с помощью nltk
Чат-бот — это искусственный интеллект, который может имитировать разговор с пользователем на естественном языке через мессенджеры, веб-сайты, мобильные приложения, телефон и т.д. Чат-боты можно использовать в...
Среда разработки Entity Framework в Docker
Рассмотрим наглядный пример использования среды разработки Docker, который поможет разобраться в настройке и инициализации серверной базы данных.
Как использовать Laravel Sail с бэкендом Docker Desktop на WSL 2
Каждому разработчику рано или поздно приходится иметь дело с Docker и контейнерами. Посмотрим, как происходит установка Docker Desktop на Windows 10, как она интегрируется...
От Pandas к Pyspark
Если Pandas удобно использовать для небольших наборов данных, то Pyspark - отличный инструмент для распределенных вычислений огромных массивов данных. Возьмите на заметку готовую инструкцию по преобразованию кода Pandas в Pyspark.
Наследование и полиморфизм в Python
Наследование
Наследование — это способность объекта принимать одну или несколько характеристик от других классов объектов, обычно переменных или функций-членов. Можно провести аналогию между этим понятием...
Инъекция SQL: руководство для начинающих
Внедрение кода или инъекция SQL — это уязвимость системы безопасности в Интернете, позволяющая злоумышленнику завладеть доступом к SQL-запросам в базу данных. Так он может получить...
Встроенная база данных Python
Если вы разработчик программного обеспечения, то, скорее всего, вы знакомы с невероятно легкой базой данных SQLite или даже уже использовали ее. Она содержит практически...
Введение в программирование на Rust
Rust — это перспективный язык программирования, набирающий рекордную популярность для низкоуровневых систем, таких как операционные системы и компиляторы.
В 2020 году по итогам опроса разработчиков...
Как построить масштабируемый API на Go с помощью Gin
Пошаговое руководство по проектированию API, от с создания базы данных и прописывания основных маршрутов до тестирования его работоспособности.
3 секретных оружия в арсенале Python
Я уже пишу на Python более 5 лет. Примечательно, что при этом мой арсенал инструментов с течением времени не увеличивался, а наоборот уменьшался. Многие...
Пять действительно крутых пакетов Python
Обширная экосистема Python содержит в себе пакеты, модули и библиотеки, которые можно использовать для создания собственных приложений. Некоторые пакеты и модули включены в Python...
Основы API Time для Java
Во многих языках программирования работа с датой и временем — непростая задача. Но, начиная с Java 8, JDK предоставляет новый API Time, полностью меняющий...
Использование SQLite с Rust и Actix Web (с тестами)
В этой статье мы рассмотрим, как использовать SQLite (вместе с Diesel) и Rust как в файловом режиме, так и в режиме памяти.
Необходимые условия
Кроме Rust...
Как создавать легкие платформонезависимые приложения на Go — без JS и BS
Ознакомимся с методами, виджетами и функционалом библиотеки Gio, сделаем приложение GoGiggles, запустим его в ОС. Добавим функционал СhatGPT, кнопку, обработку событий нажатия.
Потоковые и многопроцессорные модули на Python
Главная идея потоков заключается в выполнении последовательности таких инструкций внутри программы, которые могут выполняться независимо от другого кода.
Так в чём же разница между потоковой...
Как оркестровать микросервисы с помощью Docker Compose
Развертывание приложений с микросервисной архитектурой - довольно громоздкий процесс, занимающий много времени. Уменьшить рабочую нагрузку позволяет Docker Compose, инструмент оркестрации контейнеров. Рассказываем об упрощенном создании микросервисных приложений на Spring Boot.
5 задач для Python
Лучший способ укрепить знания и попрактиковаться в Python
Цель этой статьи — помочь вам разобраться в основах языка, а не поделиться готовыми ответами, которые легко вызубрить и списать.
5...
Интерактивные отчеты в Jupyter Notebook
Jupyter Notebook - важный инструмент для специалиста по науке о данных. С его помощью можно выполнять базовые задачи, такие как очистка данных, визуализация, создание...
Продвинутый функционал Git: хитрые приемы и команды
git — очень мощный инструмент, который практически каждый разработчик задействует ежедневно. Но для большинства его использование сводится всего к нескольким командам: pull, commit и...
Избегаем исключения Null Pointer Exception в Java с помощью Optional
В 1964 году британский ученый-компьютерщик Тони Хоар изобрел ссылки на нулевые указатели (Null Pointer References).
Исключение Null Pointer Exception составляет львиную долю всех исключений, которые...
Стоит ли заменить Python на Julia?
В течение последних двух лет популярность интерпретируемого языка Python, который был написан на C, резко возросла. Хоть он и является полезным языком, который стал...
8 рекомендаций по написанию читаемого кода на C# с помощью .NET 6
Научитесь избегать лишних операторов else, извлекать и именовать методы, грамотно использовать Linq и применять прочие подходы для придания коду читаемости и прозрачности.
7 ошибок Python, от которых стоит немедленно избавиться
Введение
Python относительно прост в освоении, но, учитывая его обширный функционал, в нём легко допустить ошибку. Кроме того, ошибки в течение длительного времени могут оставаться...
Программа на Си для проверки числа: положительное или отрицательное
Чему вы научитесь в этой статье?
Проверять, является ли число (введенное пользователем) отрицательным или положительным.
Какие нужны знания для понимания этой программы?
Потребуются знания по следующим темам на...
Rust: первые впечатления
Станет ли Rust пределом мечтаний разработчиков и универсальным языком, который заменит все остальные? Что делает его таким особенным? Рассмотрим текущее положение и разберем слабые и сильные стороны Rust.
Битва 4 инструментов визуализации данных на языке Python
Предлагаем сравнить потенциал Pyecharts, Plotly, Matplotlib и Seaborn, а также возможности использования каждого инструмента (на примерах визуализации данных фондового рынка).
Перестаньте использовать range() в цикле for в Python
Цикл for. Краеугольный камень программирования. Технологический приём, который вы осваиваете, ещё будучи новичком, и продолжаете использовать в течение всей своей карьеры программиста.
Если вы использовали...
Анализ аудиоданных с помощью глубокого обучения и Python (часть 2)
Предыдущая часть: Часть 1
Сверточные нейронные сети (CNN) схожи с обычными нейронными сетями: они состоят из нейронов с обучаемыми весами и сдвигами. Каждый нейрон получает...
Kotlin-реализация RecyclerView на Android
RecyclerView - улучшенная замена устаревшего и во многом несовершенного ListView. С помощью этого краткого обзора вы легко сможете создать свой собственный пользовательский RecyclerView.
На собеседование в Google через челлендж Python #1
Как-то раз я искал в гугле что-то насчёт Python, как вдруг всплыло приглашение принять участие в испытании по программированию от Google (так называемое foo.bar...
Запросы сразу к нескольким базам данных MySQL
Представьте, что вы создаёте SaaS-продукт (связанный с электронной торговлей), где каждый пользователь занимает свою собственную маленькую базу данных (MySQL). Можно гарантировать, что данные пользователя...
Python: декоратор @retry
Python часто называют “склеивающим” языком. Для меня этот термин означает, что язык помогает соединять системы и обеспечивает передачу данных из A в B в...
Генерация API-документации из docstrings на Python
pdoc3 - профессиональная документация с LaTeX и markdown, автоматическая генерация HTML и CSS из docstrings
9 встроенных декораторов Python, которые помогут оптимизировать код
Делайте больше меньшими средствами: используйте возможности декораторов. Они помогут сэкономить время на написание кода и откроют новые функциональные возможности Python.
Кэширование Redis для максимальной производительности в Spring Boot и Java
Кэширование помогает повысить производительность приложений за счет снижения нагрузки на такие ресурсы, как базы данных и удаленные сервисы. Рассмотрим, как применять Redis в качестве кэша в приложении Spring Boot для достижения максимальной эффективности.
Пишем быстрее в любой IDE
У каждого разработчика программного обеспечения есть любимая IDE. IDE предоставляют нам все необходимые инструменты, чтобы писать чистый, читаемый код быстрее и с меньшим количеством...
Как автоматизировать электронную почту с помощью Python
С помощью Python можно с легкостью автоматизировать ежедневные задачи. Используя комбинацию API и простых для понимания библиотек, можно настроить системы, которые выполняют скрейпинг веб-сайтов,...
Лучшие практики написания кода в Spring Boot
Фреймворк Spring Boot позволяет быстро создавать и легко запускать высокопроизводительные Spring-приложения корпоративного уровня. Рекомендации опытного специалиста помогут максимально упростить разработку такого приложения.
Учимся избегать null-значений в современном Java. Часть 2
Предыдущая часть: Часть 1
В предыдущей статье мы разобрали, почему в некоторых случаях null оказывается необходимым злом, а также узнали, что есть правильные и ошибочные...
Методы лингвистического моделирования с использованием Python
Лингвистическое моделирование как способ адекватной интерпретации текста, выявления и предупреждения в нем ошибок - один из конкурентных инструментов Python. Научитесь владеть этим инструментом и станьте грамотным программистом.
Внедрение зависимостей на Android с помощью Hilt
Внедрение зависимостей (DI) — это метод, широко используемый в программировании и хорошо подходящий для Android-разработки. При нем зависимости предоставляются классу, а не создаются самостоятельно. Следуя принципам...
Импорт в Python: часть 2
Часть 1, Часть 2
Система импорта Python
Мы видели много преимуществ системы импорта Python и способов их использования. В этой статье мы приподнимем завесу над тем, что...
Lombok: хорошее и плохое применение
Lombok - популярная библиотека, облегчающая рутинную работу с классами в Java. Но даже хороший инструмент можно применять неправильно. Дадим несколько рекомендаций, как этого избежать.
Java-библиотеки, которые повысят вашу производительность
Время - деньги, так что повышая эффективность труда - вы экономите одно и помогаете преумножить второе. Расскажем о нескольких полезных библиотеках, с помощью которых вы сможете избавиться от шаблонного кода и сосредоточиться на разработке бизнес-логики.
Создание дашбордов в Dash
Дашборды - отличные инструменты для мониторинга бизнес-целей, отслеживания прогрессов и анализа данных. Читайте о том, как с минимальными усилиями создать, настроить и запустить Dash-приложение.
5 впечатляющих возможностей Julia, которых не хватает в Python
Считаете Python верхом совершенства? А как насчет альтернативы - высокопроизводительного языка Julia? Некоторые из возможностей Julia явно не помешали бы старому доброму Python.
Как определить содержимое ZIP-файла без скачивания
Расскажем, как определить содержимое ZIP-файла и при этом обойтись без его скачивания! Для этого нам понадобятся всего 52 строки кода и немного полезных знаний!
Обучение программированию лучше начать с языка С. И вот почему
Изучать основы программирования можно на любом языке, но более эффективно это получится на C! И на это есть 4 причины.
Хитрости объектно-ориентированного программирования. Часть 2: Закон Деметры
Это мини-серия статей по написанию поддерживаемого объектно-ориентированного кода без лишней нервотрепки.
Предыдущие части: Часть 1
Единственный закон в программировании — это отсутствие законов. А закон Деметры — это, скорее, рекомендации, а...
Психология цвета в UX
Введение
Считается, что цвет — это необходимый визуальный элемент, который легко запоминается. Каждый раз, когда мы открываем глаза, различные внешние факторы охватывают наше поле зрения....
Как украсть секреты разработчиков через Websocket?
Это история о запутанном и не очень полезном методе извлечения кода, создаваемого ничего не подозревающими JavaScript разработчиками, занятыми над секретными проектами.
Недавно в сети появилась...
8 экспертных советов по использованию Apache Spark
Хотите в совершенстве освоить Apache Spark? Воспользуйтесь советами эксперта, 1,5 года проработавшего с клиентами Databricks. Узнайте, как работает Spark, что общего между этим фреймворком и продовольственным магазином и как добиться в работе с ним оптимальных результатов.
Оптимизация кода Python с помощью конечных запятых: мощная техника
Конечные запятые в списке или словаре могут показаться избыточными. Но на самом деле они позволяют улучшить читабельность Python-кода, предотвращают ошибки при перестановке строк, облегчают форматирование кода. Почувствуйте мощь этой техники, изучив примеры фрагментов кода с конечными запятыми и без них.








































































































