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

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

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

Зачем Python столько знаков подчеркивания?

Неочевидные примеры использования символа нижнего подчеркивания для обеспечения инкапсуляции и улучшения читаемости вашего кода на Python
Software Development

11 важнейших консольных команд для разработчика

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

Удалённые вызовы процедур в Golang

Что такое удалённые вызовы процедур? Удалённый вызов процедур (RPC) — это подпрограмма в распределённых вычислениях. Реализация RPC напоминает реализацию локальных вызовов, но обычно они не идентичны. Как...
Python Django и OSRM: маршрут на интерактивной онлайн-карте

Python Django и OSRM: маршрут на интерактивной онлайн-карте

Python Django, Folium, Leaflet и OSRM API для веб-приложения с функционалом Google Maps
Python

Продвинутый Python: 9 важнейших аспектов при определении классов

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

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

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

Сниппеты Python для начинающих: распаковка кортежей, пауза в секундах и случайное число

Добавьте в закладки 12 профессиональных Python сниппетов для решения повседневных задач, ведь когда-нибудь они помогут сохранить ваш день!
Java

Java-Lombok: нужны ли геттеры и сеттеры?

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

Мир Docker и Kubernetes в аналогиях с жизнью разработчика

Новый подход к объяснению основных концепций платформы Kubernetes! Автор находит аналогии объектам K8s в реалиях разработчика, что значительно упрощает понимание принципов их работы.
Основы Go: ввод-вывод файловой системы

Основы Go: ввод-вывод файловой системы

Введение Чтение с диска и запись на диск, а также перемещение по файловой системе  —  это основной элемент в любом языке. Узнаем, как все это...
Python

Полное руководство по встроенным структурам данных Python

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

Генерируем образы Docker с помощью Spring Boot

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

Новейшие возможности C# 9

В преддверии релиза .NET 5, объединяющего среды выполнения .NET, Microsoft недавно анонсировали возможности, которые будут включены в C# 9. О выпуске финальной предварительной версии C# было...
Конкурентность на Go: объяснение шаблона Worker Pool

Конкурентность на Go: объяснение шаблона Worker Pool

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

Как оптимизировать код на Python

Как я сократил время выполнения приложения на 1/10 Данные советы просты в реализации и могут пригодиться вам в обозримом будущем. Считается, что первоочередной задачей программиста является написание...
Kotlin & Android

Делегаты в Kotlin для Android

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

Отправляем E-mail с помощью Python

Я участвую в разработке одного проекта на работе. Мы разрабатываем прототипы Raspberry Pi и специальное программное обеспечение. Хоть и разработанное ПО работает блестяще, нам...
Обновления в Android 11: Scoped Storage и другие улучшения конфиденциальности

Обновления в Android 11: Scoped Storage и другие улучшения конфиденциальности

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

Разбираемся с компилятором Go

В статье речь идёт о Go 1.13 Компилятор Go занимает важное место в экосистеме Go. Компиляция — необходимый этап создания исполняемого двоичного кода. Компилятор проходит долгий путь:...
Асинхронная многопоточность в Python

Асинхронная многопоточность в Python

Вступление В этом разделе я попытаюсь сформулировать цель своей статьи (можете пропустить его, если хотите просто узнать, как настроить асинхронную многопоточность в Python). Мне потребовалось...
Графовые сверточные сети: введение в GNN

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

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

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

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

Освойте оконные функции SQL раз и навсегда

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

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

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

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

Null. Правила использования В своем выступлении “Null References: The billion dollar mistake” (“Нулевые ссылки: ошибка на миллиард долларов”), Тони Хоар описывает реализацию нулевых ссылок в...
9 советов, как выделиться среди Java-разработчиков

9 советов, как выделиться среди Java-разработчиков

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

10 отличных JavaScript библиотек на 2020 год

JavaScript  —  язык интернета. Вы можете запускать его в браузере или на сервере, а можете использовать для мобильных приложений. Хотя он и хорош сам по...
Как развернуть GitLab с помощью Docker за 5 секунд

Как развернуть GitLab с помощью Docker за 5 секунд 

GitLab - это веб-инструмент управления репозиториями Git, который помогает командам совместно работать над кодом. Расскажем, как быстро развернуть экземпляр GitLab.
9 Уровней применения функции zip в Python

9 Уровней применения функции zip в Python

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

MVVM на Android с компонентами архитектуры + библиотека Koin

Введение С MVVM (Model-View-ViewModel) процесс разработки графического интерфейса для пользователей делится на две части. Первая — это работа с языком разметки или кодом GUI. Вторая — разработка бизнес-логики или...
Основы многопоточности

Основы многопоточности

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

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

Создаем систему распознавания речи с использованием искусственного интеллекта (ИИ) для транскрибирования звука. Рассмотрим особенности создания такой системы на языке Python с использованием сетевой платформы AssemblyAI.
Простое руководство по форматированию строк в Python с помощью f-строк

Простое руководство по форматированию строк в Python с помощью f-строк

Использование f-строк - 5-го способа форматирования строк, появившегося в Python 3.6, - повысит ваш профессиональный уровень. В отличие от других способов в Python, f-строки являются более гибкими, работают быстрее и улучшают читаемость кода.
Как запустить любое ПО с графическим интерфейсом в Docker?

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

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

5 основных фреймворков для Java-разработчиков

Приветствую вас, Java-разработчики! Размышляете над тем, какой фреймворк освоить, чтобы стать полноценным специалистом? Спешу вас обрадовать  —  это как раз тема данной статьи. Как-то...
Простое объяснение интерфейсов на Golang

Простое объяснение интерфейсов на Golang

Что общего у электророзеток с интерфейсами? Как создавать интерфейсы правильно? Попробуем понять этого непонятного зверя!
Создаем бота клиентской службы с помощью Python, Flask и Pinecone

Создаем бота клиентской службы с помощью Python, Flask и Pinecone

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

Сможете ли вы решить эти 3 «простые» задачи на Python?

Правильное решение вас удивит Попробуйте решить эти задачи самостоятельно, а потом проверьте себя по готовым ответам. Подсказка: У всех задач есть нечто общее. Так что если разобраться...
Data Science

QR-разложение матрицы

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

9 странностей Python и их объяснение

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

Осваиваем реактивное программирование на Java

Асинхронный ввод/вывод уже какое-то время используется в обиходе. При этом разные языки реализуют его по-разному, но все предоставляют способ уменьшить количество потоков, давая вроде...
Шорткаты VS Code, с которыми ввод кода напоминает игру на пианино

Шорткаты VS Code, с которыми ввод кода напоминает игру на пианино

Застряли в замкнутом круге "клавитура-мышка", из-за которого устаете и теряете время при написании кода? Представляем вашему вниманию полезные шорткаты VS Code, которые избавят от этих проблем.
Golang

Приключения Java-разработчика, решившегося изучать Go

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

Новое в Android 11

Оцените превью для обновлений некоторых уже существующих функций, а также доступных нововведений, таких как IME animation control. Синхронизированные анимации IME Идея заключается в том, что IME (редактор...
Графовое моделирование данных на Java

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

Моделирование данных  —  это жизненно важная часть разработки ПО, а выбор подходящих структур данных или баз данных  —  основа успеха приложения или сервиса.  В этой...
Автоматизируем задачи на Python с помощью ChatGPT

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

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

R - язык для статистической обработки данных. Часть 1/3

Я сам изучал R в течение последних нескольких недель.  В своей статье я рассказываю о языке программирования R и его главных концепциях, которые пригодятся каждому...
7 расширенных возможностей Python

7 расширенных возможностей Python

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

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

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

Создаем юнит-тесты с помощью ИИ-инструмента

В этой статье мы воспользуемся плагином на базе искусственного интеллекта для IntelliJ, чтобы автоматически сгенерировать юнит-тесты. Шаг 1. Установка плагина и импорт проекта Плагин для IntelliJ IDEA...
Architecture

Clean Architecture с Kotlin

Мощная базовая архитектура — важный показатель для масштабируемости приложения. Внесение таких изменений, как замена API на обновленную и оптимизированную структуру API, требует переписать практически все приложение...
Python

Создаем чат-бот в Python с помощью nltk

Чат-бот — это искусственный интеллект, который может имитировать разговор с пользователем на естественном языке через мессенджеры, веб-сайты, мобильные приложения, телефон и т.д. Чат-боты можно использовать в...
Среда разработки Entity Framework в Docker

Среда разработки Entity Framework в Docker

Рассмотрим наглядный пример использования среды разработки Docker, который поможет разобраться в настройке и инициализации серверной базы данных.
Как использовать Laravel Sail с бэкендом Docker Desktop на WSL 2

Как использовать Laravel Sail с бэкендом Docker Desktop на WSL 2

Каждому разработчику рано или поздно приходится иметь дело с Docker и контейнерами. Посмотрим, как происходит установка Docker Desktop на Windows 10, как она интегрируется...
От Pandas к Pyspark

От Pandas к Pyspark

Если Pandas удобно использовать для небольших наборов данных, то Pyspark - отличный инструмент для распределенных вычислений огромных массивов данных. Возьмите на заметку готовую инструкцию по преобразованию кода Pandas в Pyspark.
Наследование и полиморфизм в Python

Наследование и полиморфизм в Python

Наследование Наследование  —  это способность объекта принимать одну или несколько характеристик от других классов объектов, обычно переменных или функций-членов. Можно провести аналогию между этим понятием...
SQL

Инъекция SQL: руководство для начинающих

Внедрение кода или инъекция SQL — это уязвимость системы безопасности в Интернете, позволяющая злоумышленнику завладеть доступом к SQL-запросам в базу данных. Так он может получить...
Python

Встроенная база данных Python

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

Введение в программирование на Rust

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

Как построить масштабируемый API на Go с помощью Gin

Пошаговое руководство по проектированию API, от с создания базы данных и прописывания основных маршрутов до тестирования его работоспособности.
Python

3 секретных оружия в арсенале Python

Я уже пишу на Python более 5 лет. Примечательно, что при этом мой арсенал инструментов с течением времени не увеличивался, а наоборот уменьшался. Многие...
Python

Пять действительно крутых пакетов Python

Обширная экосистема Python содержит в себе пакеты, модули и библиотеки, которые можно использовать для создания собственных приложений. Некоторые пакеты и модули включены в Python...
Основы API Time для Java

Основы API Time для Java

Во многих языках программирования работа с датой и временем  —  непростая задача. Но, начиная с Java 8, JDK предоставляет новый API Time, полностью меняющий...
Rust

Использование SQLite с Rust и Actix Web (с тестами)

В этой статье мы рассмотрим, как использовать SQLite (вместе с Diesel) и Rust как в файловом режиме, так и в режиме памяти. Необходимые условия Кроме Rust...
Как создавать легкие платформонезависимые приложения на Go  -  без JS и BS

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

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

Потоковые и многопроцессорные модули на Python

Главная идея потоков заключается в выполнении последовательности таких инструкций внутри программы, которые могут выполняться независимо от другого кода. Так в чём же разница между потоковой...
Как оркестровать микросервисы с помощью Docker Compose

Как оркестровать микросервисы с помощью Docker Compose

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

5 задач для Python

Лучший способ укрепить знания и попрактиковаться в Python Цель этой статьи — помочь вам разобраться в основах языка, а не поделиться готовыми ответами, которые легко вызубрить и списать. 5...
Jupyter

Интерактивные отчеты в Jupyter Notebook

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

Продвинутый функционал Git: хитрые приемы и команды

git  —  очень мощный инструмент, который практически каждый разработчик задействует ежедневно. Но для большинства его использование сводится всего к нескольким командам: pull, commit и...
Избегаем исключения Null Pointer Exception в Java с помощью Optional

Избегаем исключения Null Pointer Exception в Java с помощью Optional

В 1964 году британский ученый-компьютерщик Тони Хоар изобрел ссылки на нулевые указатели (Null Pointer References). Исключение Null Pointer Exception составляет львиную долю всех исключений, которые...
Julia

Стоит ли заменить Python на Julia?

В течение последних двух лет популярность интерпретируемого языка Python, который был написан на C, резко возросла. Хоть он и является полезным языком, который стал...
8 рекомендаций по написанию читаемого кода на C# с помощью .NET 6

8 рекомендаций по написанию читаемого кода на C# с помощью .NET 6

Научитесь избегать лишних операторов else, извлекать и именовать методы, грамотно использовать Linq и применять прочие подходы для придания коду читаемости и прозрачности.
Python

7 ошибок Python, от которых стоит немедленно избавиться

Введение Python относительно прост в освоении, но, учитывая его обширный функционал, в нём легко допустить ошибку. Кроме того, ошибки в течение длительного времени могут оставаться...
Программа на Си для проверки числа: положительное или отрицательное

Программа на Си для проверки числа: положительное или отрицательное

Чему вы научитесь в этой статье? Проверять, является ли число (введенное пользователем) отрицательным или положительным. Какие нужны знания для понимания этой программы? Потребуются знания по следующим темам на...
Rust: первые впечатления

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

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

Битва 4 инструментов визуализации данных на языке Python

Предлагаем сравнить потенциал Pyecharts, Plotly, Matplotlib и Seaborn, а также возможности использования каждого инструмента (на примерах визуализации данных фондового рынка).
Python

Перестаньте использовать range() в цикле for в Python

Цикл for. Краеугольный камень программирования. Технологический приём, который вы осваиваете, ещё будучи новичком, и продолжаете использовать в течение всей своей карьеры программиста.  Если вы использовали...
Audio Data Analysis

Анализ аудиоданных с помощью глубокого обучения и Python (часть 2)

Предыдущая часть: Часть 1 Сверточные нейронные сети (CNN) схожи с обычными нейронными сетями: они состоят из нейронов с обучаемыми весами и сдвигами. Каждый нейрон получает...
Kotlin-реализация RecyclerView на Android

Kotlin-реализация RecyclerView на Android

RecyclerView - улучшенная замена устаревшего и во многом несовершенного ListView. С помощью этого краткого обзора вы легко сможете создать свой собственный пользовательский RecyclerView.
Python

На собеседование в Google через челлендж Python #1

Как-то раз я искал в гугле что-то насчёт Python, как вдруг всплыло приглашение принять участие в испытании по программированию от Google (так называемое foo.bar...
SQL

Запросы сразу к нескольким базам данных MySQL

Представьте, что вы создаёте SaaS-продукт (связанный с электронной торговлей), где каждый пользователь занимает свою собственную маленькую базу данных (MySQL). Можно гарантировать, что данные пользователя...
Python: декоратор @retry

Python: декоратор @retry

Python часто называют “склеивающим” языком. Для меня этот термин означает, что язык помогает соединять системы и обеспечивает передачу данных из A в B в...
Генерация API-документации из docstrings на Python

Генерация API-документации из docstrings на Python

pdoc3 - профессиональная документация с LaTeX и markdown, автоматическая генерация HTML и CSS из docstrings
9 встроенных декораторов Python, которые помогут оптимизировать код

9 встроенных декораторов Python, которые помогут оптимизировать код

Делайте больше меньшими средствами: используйте возможности декораторов. Они помогут сэкономить время на написание кода и откроют новые функциональные возможности Python.
Кэширование Redis для максимальной производительности в Spring Boot и Java

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

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

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

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

Как автоматизировать электронную почту с помощью Python

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

Лучшие практики написания кода в Spring Boot

Фреймворк Spring Boot позволяет быстро создавать и легко запускать высокопроизводительные Spring-приложения корпоративного уровня. Рекомендации опытного специалиста помогут максимально упростить разработку такого приложения.
Java

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

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

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

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

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

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

Импорт в Python: часть 2

Часть 1, Часть 2 Система импорта Python Мы видели много преимуществ системы импорта Python и способов их использования. В этой статье мы приподнимем завесу над тем, что...
Lombok: хорошее и плохое применение

Lombok: хорошее и плохое применение

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

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

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

Создание дашбордов в Dash

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

5 впечатляющих возможностей Julia, которых не хватает в Python

Считаете Python верхом совершенства? А как насчет альтернативы - высокопроизводительного языка Julia? Некоторые из возможностей Julia явно не помешали бы старому доброму Python.
Как определить содержимое ZIP-файла без скачивания

Как определить содержимое ZIP-файла без скачивания

Расскажем, как определить содержимое ZIP-файла и при этом обойтись без его скачивания! Для этого нам понадобятся всего 52 строки кода и немного полезных знаний!
Обучение программированию лучше начать с языка С. И вот почему

Обучение программированию лучше начать с языка С. И вот почему

Изучать основы программирования можно на любом языке, но более эффективно это получится на C! И на это есть 4 причины.
OOP

Хитрости объектно-ориентированного программирования. Часть 2: Закон Деметры

Это мини-серия статей по написанию поддерживаемого объектно-ориентированного кода без лишней нервотрепки.  Предыдущие части: Часть 1   Единственный закон в программировании — это отсутствие законов. А закон Деметры — это, скорее, рекомендации, а...
Психология цвета в UX

Психология цвета в UX

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

Как украсть секреты разработчиков через Websocket?

Это история о запутанном и не очень полезном методе извлечения кода, создаваемого ничего не подозревающими JavaScript разработчиками, занятыми над секретными проектами.  Недавно в сети появилась...
8 экспертных советов по использованию Apache Spark

8 экспертных советов по использованию Apache Spark

Хотите в совершенстве освоить Apache Spark? Воспользуйтесь советами эксперта, 1,5 года проработавшего с клиентами Databricks. Узнайте, как работает Spark, что общего между этим фреймворком и продовольственным магазином и как добиться в работе с ним оптимальных результатов.
Оптимизация кода Python с помощью конечных запятых: мощная техника

Оптимизация кода Python с помощью конечных запятых: мощная техника

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