Автоматический импорт библиотек в IPython или Jupyter Notebook
Если вы — частый пользователь IPython или Jupyter Notebooks и вам надоело постоянно импортировать одни и те же библиотеки, то попробуйте этот способ:
Перейдите к ~/.ipython/profile_defaultСоздайте папку...
Почему Go прекрасно подходит для DevOps
Go — это язык программирования с открытым исходным кодом, история которого началась в Google примерно десять лет назад. Сегодня Go стремительно приобретает популярность как язык будущего....
Как легко оптимизировать Jupyter Notebook. Часть 2
Руководство для начинающих о том, как сделать Jupyter Notebook быстрее, мощнее и круче
Часть 1, Часть 2
Магические команды (Magic)
Magic — это отличные команды, упрощающие нашу жизнь при решении определенных...
Fake-объекты практичнее mock-объектов
Стоит помнить — если вы имеете дело с неудачно разработанным API, предпочтительнее использовать mock-объекты.
Пример кода.
Что такое mock- и fake-объекты
Определения можно найти во множестве статей...
Модули Python для ускоренной обработки JSON
Познакомимся с 5 модулями Python, которые значительно расширяют возможности разработчиков при работе с JSON. Среди них: orjson, tortilla, jsonpickle, jsondiff и GenSON.
Продвинутый Python: оператор dot
Все знают, что оператор dot позволяет реализовать объектно-ориентированную парадигму в Python. Но далеко не все понимают механизм, лежащий в основе оператора dot. У вас есть возможность углубиться в этот вопрос.
Топ-10 самых распространенных ошибок в проектах Go. Часть 1
Неизвестное значение enum
Рассмотрим простой пример:
type Status uint32
const (
StatusOpen Status = iota
StatusClosed
StatusUnknown
)
Enum создан с помощью iota, что приводит к следующему состоянию:
StatusOpen = 0
StatusClosed = 1
StatusUnknown =...
Веб-API для улучшенного UX
Примечание: некоторые из представленных здесь API все еще находятся в разработке или не поддерживаются в некоторых браузерах. Рекомендуем прочитать полную документацию перед их использованием.
Видимость...
Модификатор Kotlin, которого не должно было быть
Большинство разработчиков Kotlin уверены в том, что свойство val здесь эквивалентно использующемуся в Java свойству final. А что, если я скажу, что это не...
Разветвление вселенной UI
В 2023 году нам предстоит увидеть новые версии пользовательского опыта. Ознакомьтесь с некоторыми из них, а заодно поразмышляйте над тем, нужно ли нам отказаться от пользовательского интерфейса вообще или стоит переосмыслить его в пользу более естественных, минималистичных и осязаемых вариантов?
10 шаблонов поведения для UX-дизайна
При разработке любого продукта важно понимать и учитывать ожидания пользователей. Если создавать продукт в вакууме, не принимая во внимание существующие варианты на рынке или...
5 удивительных скрытых возможностей Python. Часть 1
Хотите повысить уровень своих навыков написания кода? Возьмите на заметку 5 скрытых возможностей Python. Они помогут сократить время разработки, улучшить читаемость кода и повысить его эффективность.
Сможет ли Julia занять место рядом с Python
Julia и Python —языки программирования, которыми я очень дорожу. Использование Julia вместо Python обладает множеством преимуществ, таких как меньшее время написания кода и более...
Обзор библиотеки Datatable в Python
Данные, с которыми вы работаете, уже настолько большие, что вы часами ждёте их загрузки? Пора осваивать новый инструмент, который избавит вас от долгого ожидания...
Как написать хороший README: краткий курс
После Hacktoberfest в проектах с открытым исходным кодом появилось много новых правок. Только за октябрь было сделало более 400 000 запросов на включение кода. Это невероятно!
Я...
Изменение типа с помощью typealias
Когда определения типов отвлекают от значения вашего кода из-за нечитабельности, выразительности или просто длины, у Kotlin есть подходящая функция: typealias! Typealias позволяет давать альтернативные...
7 лучших CLI-библиотек Python в 2023 году
Повысьте свой уровень программирования на Python, освоив 7 самых продвинутых CLI-библиотек. Их возможности максимально упростят разработку интерфейса командной строки и позволят сократить код до минимума.
Программируем робота E-puck в симуляторе Webots
Хотите изучить робота, но у вас нет возможности его купить? А может, вы просто не знаете с чего начать? Тогда симулятор роботов Webots вам...
Конвейер данных в реальном времени с Kafka и ClickHouse
Рассмотрим нюансы при запуске обработки на Python. Создадим скрипт для выдачи сообщений, настроим ClickHouse для их получения и обработки. Поэкспериментируем с представлением в реальном времени и удалением данных.
Создание простого клиента RabbitMQ с помощью Go
Как известно, Go — это язык программирования с открытым исходным кодом, позволяющий легко создавать простое, надёжное и эффективное программное обеспечение.
RabbitMQ представляет собой общедоступный программный...
25 основных вопросов для собеседования с Android-разработчиком. Часть 1
Техническое собеседование - важная часть найма разработчика Android-приложения. Чтобы выдержать это испытание, изучите 25 вопросов, которые обычно задают на таких собеседованиях. Разберем их в двух частях.
Микрооптимизации в Java. Enum - хороший, красивый и медленный
Перечисления — важная часть каждого приложения, которое представляет собой чуть больше, чем “Hello World”. Они повсюду. И, на самом деле, перечисления очень полезны: они...
Как защитить учетные данные с помощью переменных среды в Python
Как быстро и без особых усилий скрыть учетные данные, исключив их передачу по сети небезопасным способом.
Как использовать инструменты статического анализа в коде Python
Научимся работать с такими инструментами статического анализа, как MyPy, Bandit и Radon. Они предоставляют мгновенную обратную связь об уязвимостях и ошибках в коде, а также снабжают разработчика полезными метриками.
Ключевые вопросы для собеседования по Spring Boot в 2023 году. Часть 2
Хотите получить должность Java-разработчика или повысить свой профессиональный уровень? Ознакомьтесь с актуальными ответами на 50 ключевых вопросов по микросервисам Spring Boot, которые задают во время собеседования на должность Java-программиста или инженера ПО.
Как создать NFT-маркетплейс с полным стеком
Предлагаем подробное руководство по созданию полнофункционального NFT-маркетплейса. В реализации используются Polygon, Next.js, Tailwind, Solidity, Hardhat, Ethers.js и IPFS.
Spring Data — сила доменных событий
Рассмотрим, как доменно-ориентированный дизайн помогает проектировать более надежные и устойчивые к расширению системы - на примере гипотетического сервиса продажи книг.
Фреймворк Google Wire: автоматическое внедрение зависимостей в Go
Познакомимся с концепцией внедрения зависимостей и поработаем с фреймворком Google Wire, облегчающим определение и настройку зависимостей. Вперед, навстречу гибким и удобным в сопровождении приложениям Go!
Как работает шлюз API на Golang: на примере одного симпатичного платья
Совместим просмотр красивых платьев в веб-магазинах и заодно разберем принцип работы шлюза API на Golang!
Шпаргалка по Kotlin Flow для продвинутых инженеров Android
Изучим ключевые понятия и нюансы: холодные и горячие потоки, каналы channel, потоки flow. Разберем операторы, промежуточные операции и функции для объединения потоков, сценарии применения и фрагменты кода.
Шаблон проектирования прототипов в современном C++
Шаблон проектирования прототипов — это порождающий шаблон проектирования, который помогает в прототипировании (недорогом создании/копировании) объекта с использованием отдельных методов или полиморфных классов. Прототипом можно считать модель...
4 golang-сниппета, которые вводят в заблуждение разработчиков C#!
В лингвистике такое явление получило название ложные друзья переводчика, то есть слова, похожие по звучанию или написанию, но совершенно разные по значению. Например, английское...
Python: публикация ваших пакетов в PyPi
Примечание: исходный код можно найти на GitHub.
Если вы работаете с Python, то, вероятно, знаете о пакетах, которые можно загрузить и импортировать в свои проекты...
Нормальное завершение работы в Go
Go очень популярен среди разработчиков бэкенда, а его сообщество с каждым днем только растет.Лично я предпочитаю писать код на Go.
В этом кратком руководстве описывается...
Как использовать PHP для вывода данных?
Функциональность и простота PHP не вызывают сомнений. Однако знание нюансов этого языка не повредит разработчику, приступающему к его изучению. Сегодня поговорим о выводе данных с помощью PHP.
ТОП-5 законов для каждого UX-дизайнера
Когда люди слышат слово «дизайн», они обычно думают, что это творческая работа, которая подразумевает создание красивого внешнего вида. Но UX-дизайн доказывает, что привлекательный продукт...
3 приема для определения функций в Python
Пополним копилку знаний по Python полезными приемами для определения функций. Разберем применение аргументов по умолчанию, подсказок типов, конструкции *args и **kwargs.
Как создать приложение Android за 7 шагов
Хотите создать свое первое Android-приложение и ищете доступное руководство? Оно перед вами: всего 7 простых шагов - и приложение успешно работает на Android-устройстве.
Логирование — корень всех проблем отладки
Логирование играет важную роль в получении информации о поведении системы, помощи в отладке и эффективном решении проблем. Следуя лучшим практикам и используя инструменты анализа логов, такие как ELK Stack, вы получите более глубокое представление о своих системах и сможете создавать более надежные и производительные приложения.
Actix или Rocket? Сравнение двух мощных платформ для веб-приложений на Rust
Понятие платформ для веб-приложений
Прежде чем приступать к сравнению этих двух платформ Rust, давайте сначала разберёмся, что в принципе собой представляют платформы для веб-приложений.
Для создания...
Как автоматизировать удаление ненужных файлов с помощью Python
Пошаговое руководство по автоматизации удаления ненужных файлов. Поработаем с Python и планировщиком задач cron.
Отображение превью камеры с помощью PreviewView
Расскажем, почему лучше использовать класс PreviewView для отображения превью в приложениях для камеры на Android.
4 способа улучшить навыки написания кода
Чтобы достичь карьерных высот в сфере программирования, нужно постоянно работать над мастерством написания кода. Воспользуйтесь советами опытного программиста, которые помогут стать профессионалом.
10 простых сниппетов Python для веб-разработки, автоматизации и обработки данных
Используйте эти модули и сниппеты в программировании на Python - это позволит автоматизировать сложные задачи и оформлять код так, как вам нравится.
Как установить Anaconda на Mac
Просто и понятно о том, как установить Anaconda на Mac и исправить страшную ошибку «conda command not found»
Необходимость Anaconda
Начав работать в области науки о данных,...
Устранение неполадок в Kubernetes - стратегический подход
Работа с Kubernetes может серьезно озадачивать, особенно когда дело доходит до отладки и устранения сбоев. Основная сложность кроется в недостатке подробных сообщений об ошибках...
Лучшие инструменты для разработки приложений под Android
Android предлагает разработчикам массу возможностей: это универсальная, открытая платформа, используемая миллионами пользователей по всему миру, с удивительно простой в использовании площадкой для распространения приложений....
Миграции баз данных с Golang
Изучим достоинства и недостатки очень полезного инструмента не только для тестирования, но и для контроля и управления версиями БД. Разберем особенности написания и применения SQL-миграций в службах на Go.
Язык С: типы данных
Типы данных в языке C - это обширная система, используемая для объявления переменных или различных функций. Тип переменной определяет, сколько места она занимает в памяти и как интерпретируется хранящийся битовый паттерн.
Ловушка для горутины
Горутина — это эффективный и легковесный механизм многопоточного выполнения, популярный среди разработчиков Go. С помощью семантики горутин программисты добиваются эффективного выполнения параллельных процессов в программе. Впрочем,...
Сферы применения Python
Собираетесь стать Python-программистом, но не знаете, с чего начать? Предлагаем базовые рекомендации о том, в каких областях стоит и не стоит применять этот язык.
Реляционные базы данных в контейнерах Docker Compose
Простое и быстрое руководство по контейнеризации базы данных MySQL.
Java для начинающих: часть 3 из 4
Часть 1, Часть 2, Часть 3, Часть 4
Данные статьи помогут легко и быстро разобраться в концепциях и программировании на Java. Даже при нулевых знаниях...
Как протестировать код на Go с Github Actions
Введение
Процесс тестирования очень важен при разработке программного обеспечения. Разработчики должны быть уверены в стабильности своего кода и в том, что он соответствует требованиям проекта....
Перестановка двух чисел на Си
Что такое перестановка двух чисел?
Перестановкой двух чисел называют обмен значениями двух переменных. Например, переменная num1 содержит значение 20, а num2 содержит значение 40. После перестановки...
Контейнеризация в Python. Часть 2
Часть 1, Часть 2
Это вторая статья серии, посвящённой контейнеризации разработки в Python. В Части 1 мы уже разобрали лучшие практики контейнеризации Python-сервиса. Здесь мы...
Хитрости на Python
Болтовня ничего не стоит. Покажите мне код.
Эти приемы на Python весьма незаурядны и крайне полезны.
Обмен значениями
Создание одной строки из всех элементов списка
Поиск самого частого значения...
Замыкания в Rust
В Rust можно создавать не только именованные функции, но и анонимные, которые называются замыканиями. Сами по себе они не так уж интересны, пока вы...
10 полезных советов по повышению производительности при работе с VS Code
Visual Studio Code - не просто текстовый редактор. Это мощный инструмент, который значительно повышает производительность и оптимизирует рабочий процесс. Воспользуйтесь этими советами по работе с ним.
Middleware Django: пользовательское ПО промежуточного слоя
Что такое middleware, как создать пользовательский Django middleware и как проверить стандартные? Всё, что нужно знать о связующем ПО.
Kepler.gl — инструмент для визуализации геоданных на Python
Познакомимся с отличным инструментом Kepler.gl и с его помощью создадим веб-приложение для визуализации геоданных на Python.
10 лайфхаков для Linux, которые повысят продуктивность
Эти 10 лайфхаков для работы с CLI Linux помогут вам повысить производительность. Все они довольны просты и показывают, как делать больше меньшими средствами.
Анализ автоаварий в Барселоне с использованием Pandas, Matplotlib и Folium
Open Data Barcelona - это сервис, предоставляющий наборы данных Барселоны, который содержит около 400 наборов, охватывающих широкий спектр тем, таких как население, бизнес и...
Магия совместимости XML и Jetpack Compose
Статья подскажет, как перевести проект с представлений XML на Jetpack Compose и воспользоваться всеми его преимуществами.
5 причин грядущего господства Go в мире программирования
Еще пару лет назад Go считался языком с ограниченными возможностями. Однако сегодня у него есть как минимум 5 причин стать номером один в веб-разработке.
Создаём «ToDo» приложение с помощью Electron
Мы будем создавать приложение ToDo с помощью библиотеки Electron. Мы затронем следующие темы: хранение данных, использование нескольких окон, взаимодействие между браузерами.
Что необходимо для этого
Я...
Разработка приложения на ChatGPT: пошаговое руководство
Разработка приложения на ChatGPT - идеальный вариант для того, кто ищет простой и эффективный способ создать уникальный продукт. Предлагаем пошаговое руководство с полезными рекомендациями по разработке приложения, отвечающего потребностям конкретного бизнеса.
Дирижируйте горутинами с помощью каналов
Go получил известность во многом благодаря своему чистому и эффективному подходу к параллельному выполнению. С применением горутин можно добиться огромного повышения эффективности, выполняя несколько...
Строим конвейеры с Pandas, используя «pdpipe»
Введение
Pandas — прекрасная библиотека в экосистеме Python для анализа данных и машинного обучения. Она идеально соединяет мир данных, где живут файлы Excel/CSV и таблицы SQL, и...
Taipy: создание полнофункциональных приложений для работы с данными
Taipy - библиотека Python, предлагающая простые и быстрые способы создания полнофункциональных приложений для работы с данными. Узнайте, чем Taipy отличается от Streamlit и как с помощью Taipy создать простое, но эффективное приложение для работы с данными.
В поисках лучшей среды для Julia: Juno или Jupyter?
Одним из важнейших факторов, влияющих на производительность программирования, является среда разработки. Особенно это относится к науке о данных, так как специалисты, работающие в этой...
Аннотации Java — основы
Разберем базовые аннотации Java и научимся применять их в собственном коде для упрощения как процесса работы, так и читаемости кодовой базы.
Анализ независимых компонент в Python
Предположим, вы на вечеринке беседуете с милой девушкой. Вас атакует множество звуков: разговоры людей по всему дому, громко играющая на фоне музыка. Тем не...
Начало работы с базой данных Room в Android
Хранение данных — один из важнейших аспектов разработки мобильных приложений для Android. Чтобы упростить этот процесс, используйте передовую библиотеку Room. В сегодняшнем гайде пошагово пройдемся по настройке Room и выполнению с ее помощью базовых операций.
Жажда скорости: Python с расширениями С
Хотите, чтобы Python работал на всех скоростях? Тогда пора познакомиться с расширениями С. Узнаем, как их создавать, применять в программах Python, а затем сравним скорость программы с расширениями и без.
Комбинации команд Unix/Linux, которые должен знать каждый разработчик
Экономьте свое время, используя комбинации команд в терминале и скриптах. Они полезны во многих ситуациях, в том числе при повторном выполнении команд, мгновенном переходе в только что созданный каталог и определении статуса долго выполняемой команды.
Scrum: 5–3–5–3–3
В начале работы с Agile и Scrum, оказывая помощь коллегам, я обычно использовал комбинацию 3–5–3, где:
первые “3” — три роли Scrum;“5” — пять событий...
20 экспертных советов по эффективному использованию Python
Хотите раскрыть для себя весь потенциал Python, чтобы легко справляться со сложными проектами? Благодаря этим советам, а также практике и упорству, вы приобретете полезные навыки программирования на Python, которые помогут вам повысить эффективность кода.
Управляем зависимостями: возможности каталога версий и convention-плагина
В Android-разработке нужно учитывать множество факторов. Откройте для себя технологию каталога версий Gradle и силу convention-плагина, которые позволяют забыть о конфликтах версий и сбоях из-за несовместимости.
Шаблоны функционального программирования. Рецепты
Эти рецепты будут наиболее полезны для тех, кто переходит от функциональных библиотек, таких как ramda, к использованию алгебраических типов данных (ADT). Мы будем использовать...
Mito: быстрый анализ данных на Python
Выбиваетесь из графика? Боитесь, что не уложитесь в срок? Mito сэкономит драгоценное время. Эта библиотека Python поможет провести анализ данных в считанные минуты.
Аннотации для параллелизма в Java: расцвечивание потоков
В Miro мы постоянно стараемся улучшить поддерживаемость нашего кода, применяя общепринятые практики, в том числе в вопросах многопоточности. Это не решает всех проблем, возникающих...
Kotlin: продвинутые техники функционального программирования
Подробно и с реальными примерами рассмотрим приемы программирования для создания выразительного и эффективного кода. Изучим мощный инструментарий: от нюансов функций для работы с коллекциями, элегантности композиции функций и до эффективности хвостовой рекурсии.
Python 3.11: функционал, который вам понравится
Стоит ли переходить на новую версию? Рассмотрим пять самых интересных новинок и одно суперкрутое улучшение.
Привет, Go!
За последние пару месяцев я полюбил Go по разным субъективным причинам. Чтобы продемонстрировать всю красоту и простоту языка Go, рассмотрим классическую небольшую программу, которая...
Улучшение визуализации данных с помощью двухосевых диаграмм в Python
Хотите анализировать и представлять данные в удобном для чтения виде? Библиотека Plotly поможет улучшить визуализацию данных с использованием двухосевых диаграмм.
Доступно об API-вызове во Flutter: лучшие практики с демонстрацией кода
Рассказываем, как во Flutter использовать методы API-вызова HTTP, POST, GET и как создавать модели для представления данных, получаемых с сервера. Следуя этим практикам, вы будете писать более надежный и эффективный код.
Python — идеальный инструмент для любой проблемы
Размышления о моей первой программе на Python.
Размышления это всегда помогающее (а иногда и развлекающее) занятие. Из ностальгических соображений, конечно, если можно испытывать ностальгию по...
Создание рекомендательного движка статей на основе ИИ/МО
Обучающее руководство по созданию приложения Flask на Python с реализацией рекомендательного движка статей, в основе которого лежит поиск по сходству и алгоритм МО.
Реализация жизненных циклов React с помощью Reason React Hooks
Использование хуков React дает множество полезных преимуществ. Узнаем, что такое жизненные циклы React и рассмотрим реализацию этих циклов с помощью Reason React Hooks.
После выпуска...
Kotlin 1.5.30 и KMM/KMP
Узнайте, почему специалисты называют Kotlin 1.5.30 поворотным моментом в мультиплатформенном программировании.
Создание интерактивных точечных диаграмм с помощью Python Altair
Рассказываем, как повысить информативность визуализаций данных, создавая интерактивные точечные диаграммы с помощью Python Altair.
Бережливое тестирование, или Почему модульные тесты хуже, чем вы думаете
Тестирование — противоречивая тема. Люди крепко держатся за свои убеждения относительно подходов к тестированию. Разработка через тестирование — самый яркий пример. Нехватка чётких эмпирических данных провоцирует людей на...
Чистая реализация структуры проекта на Go
Изучим модульную структуру проекта для тестируемого и сопровождаемого приложения Go, которое создается по принципам чистой архитектуры. Используя веб-фреймворк Gin и базу данных MongoDB, сделаем простой REST API с функционалом регистрации, авторизации пользователей и управления их профилями.
Модуль Collections в Python - Высокопроизводительный контейнер типов данных
Краткий обзор модуля Collections в Python
Если реализацию сложно объяснить — идея плоха: The Zen of Python
Python — достаточно мощный ЯП с поддержкой модульного программирования. Модульное программирование представляет собой процесс разделения...
Сравниваем целочисленное и линейное программирование в Python
Разбираемся, в чем отличия между целочисленным и линейным программированием. Параллельно решаем распространенную задачу по математической оптимизации.
Новый подход к пониманию RxJava
Реактивное программирование — очень важный способ написания чистого кода, а ReactiveX — одна из самых известных библиотек для асинхронной обработки последовательностей данных реактивным способом.
Для...
Go на пороге третьего десятилетия 21 века: язык программирования для искусственного интеллекта и науки...
Python появился 30 лет назад, но только через 20 лет получил признание разработчиков. Он колоссально вырос за это время, особенно за последние пять лет...
Овладей Python, создавая реальные приложения. Часть 4
Предыдущие части: Часть 1, Часть 2, Часть 3
Время от времени появляются новые языки программирования, а с ними и крупные сообщества пользователей. Python существует уже довольно долго, поэтому...
Поиск и устранение утечек памяти в Python
Одним из основных плюсов динамически интерпретируемых языков (включая Python) является то, что с ними можно легко управлять памятью. По мере необходимости объекты (массивы и...
Работа с панелью индикаторов. Руководство программиста Python.Часть 2
Часть 1, Часть 2
Это вторая статья из нашей серии об использовании Python-фреймворка Dash от Plotly в качестве основной платформы для работы с панелью индикаторов....
Плюсы и минусы React: виртуальная DOM, синтаксис JSX и другие аргументы для спора
Рассмотрим важные достоинства и недостатки React, чтобы с умом выбирать JavaScript-фреймворк и аргументированно отстаивать свой выбор.
Как я наконец перешел от обучения к работе
Даже после прохождения множества курсов, где вы просто копируете код вслед за инструктором, существенного прироста в навыке, как правило, так и не происходит.
Многие наверняка...
3 совета, как стать мастером Йода по JavaScript
Увидев в проекте на Angular или React устаревший код JavaScript, код-ревьюер сразу определит, что разработчик — новичок. Но если вы воспользуетесь 3 советами из...
Области видимости в Android и Hilt
Определение области видимости объекта A в объекте B означает, что на протяжении всего жизненного цикла объект B всегда будет иметь один и тот же...








































































































