Как стать автором
Обновить
0
0.3
Алексей @Alex-Freeman

Пользователь

Отправить сообщение

Администрирование PostgreSQL для начинающих (часть 2)

Уровень сложностиПростой
Время на прочтение17 мин
Количество просмотров3.8K

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

Читать далее
Всего голосов 12: ↑7 и ↓5+4
Комментарии10

Администрирование PostgreSQL для начинающих (часть 3)

Уровень сложностиПростой
Время на прочтение18 мин
Количество просмотров3.9K

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

Читать далее
Всего голосов 8: ↑6 и ↓2+6
Комментарии1

Администрирование PostgreSQL для начинающих (часть 4)

Уровень сложностиПростой
Время на прочтение25 мин
Количество просмотров3.3K

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

Читать далее
Всего голосов 9: ↑7 и ↓2+7
Комментарии6

Администрирование PostgreSQL для начинающих (часть 5)

Уровень сложностиПростой
Время на прочтение17 мин
Количество просмотров4.2K

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

Читать далее
Всего голосов 15: ↑8 и ↓7+3
Комментарии50

Спидран карьеры software-архитектора

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров10K
О software-архитекторах сейчас не говорит только ленивый. По мере усложнения структуры современных приложений команды разработки все больше нуждаются в «дирижере» для своего «оркестра», в специалисте, который предсказывает, какими нефункциональными требованиями будет обладать система и как довести ее до нужных характеристик.



Однако у рядового разработчика вопросов о сути работы «софтварных» архитекторов нередко остается больше, чем ответов:

Чем именно архитектор занимается? Какими навыками должен обладать? Да и как им вообще можно стать?

На наш взгляд, развитие IT-специалиста можно сравнить с классическим мифическим путем героя: победил дракона — стал лидом.

Чтобы узнать, как этот «путь» выглядит в архитектуре ПО, мы пообщались с Анной Мелеховой (AnnaTref), Software Architect & Software Development Group Manager в KasperskyOS — собственной микроядерной операционной системе «Лаборатории Касперского». Мы пройдем путь героя вместе: посмотрим на основные карьерные треки, выявим их особенности и выясним, каких драконов надо победить. Поехали!

Читать дальше →
Всего голосов 34: ↑29 и ↓5+27
Комментарии10

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

Уровень сложностиПростой
Время на прочтение13 мин
Количество просмотров9.6K

Подчёркивание _ — это символ, который используются в именах в коде на Питоне. Он влияет на то, как код работает и как код читают. Знания о том, куда поместить подчёркивание, помогает писать код.

Читать далее
Всего голосов 19: ↑19 и ↓0+24
Комментарии13

Пошаговое руководство по созданию синтетических данных в Python

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров3.9K

Простое руководство для новичков: как самому генерировать данные для анализа и тестирования

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

В этих, да и во многих других ситуациях могут пригодиться синтетические данные. Реальные данные часто недоступны: уже кому-то принадлежат или дорого стоят. Так что умение создавать синтетические данные — важный навык для дата-сайентистов.

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

Читать далее
Всего голосов 11: ↑11 и ↓0+14
Комментарии2

Apache Avro — на светлой стороне Кафки

Уровень сложностиСложный
Время на прочтение5 мин
Количество просмотров5.5K

Добрый день, Хабр!

Меня зовут Сергей Игнатенко, я — девлид в поезде «Операционная платформа» ВСК. Хочу сегодня рассказать об опыте использования SchemaRegistry и Avro в Kafka.

Начну с базовой схемы работы с Kafka, которая, возможно, будет знакома многим, но важна для понимания контекста.

Принцип работы прост: продюсер отправляет сообщение в Kafka, где оно размещается в очереди. Далее один или несколько консюмеров считывают это сообщение.

Читать далее
Всего голосов 7: ↑6 и ↓1+8
Комментарии11

Интернационализация FastAPI

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров2.2K

Чтобы прикрутить gettext к FastAPI есть куча решений, я, например, пользовался этой статьей.

Проблема в том, что все они переводят текст сразу, в мне нужно хранить его в pydantic модели переводить на язык пользователя в момент сериализации т.е. lazy evaluation

Читать далее
Всего голосов 1: ↑1 и ↓0+3
Комментарии1

Решаем загадку Джиндоша из Dishonored 2 на SQL перебором с возвратом

Уровень сложностиСредний
Время на прочтение18 мин
Количество просмотров14K


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

Сегодня мы рассмотрим решение непростой загадки Джиндоша из замечательной игры Dishonored 2 с помощью SQL.
SQL Может Многое!
Всего голосов 71: ↑71 и ↓0+91
Комментарии38

Раскрываем секреты роя: оптимизация на Python с помощью PSO

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров6.8K

Начну с небольшой шутки:

"Знаете ли вы, что до изобретения часов людям приходилось активно ходить повсюду и спрашивать время?"

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

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

Индивидуально оптимальная позиция: то, что особь считает наилучшим для себя.

И глобально оптимальная позиция: определяемая коллективным взаимодействием частиц, своего рода "инструкция", получаемая особью от "лидера группы".

В связи с этим возникает естественный вопрос: что считать "оптимальным" в природе? Что является наилучшим для отдельной особи и для всей группы? Не будучи биологом, я не могу дать ответы на эти вопросы. Однако, наблюдая за подобным поведением в природе, мы можем разработать эффективный алгоритм оптимизации. Другими словами, определив критерии "оптимальности", мы можем применить этот эволюционный подход для оптимизации заданной функции.

Данный алгоритм известен как оптимизация роем частиц (Particle Swarm Optimization, PSO). Возможно, это звучит несколько сложно. Что подразумевается под "оптимизацией"? Какова роль математики в этом процессе? Что именно оптимизируется? В статье я постараюсь подробно разъяснить все эти моменты. Более того, мы применим ООП на Python для создания собственного класса ParticleSwarmOptimizer(). И таким образом, мы пройдем путь от теоретических основ PSO до их практической реализации.

Итак, приступим! Желаю приятного чтения.

Читать далее
Всего голосов 21: ↑20 и ↓1+21
Комментарии12

Как сменить технологию и не закопаться в рефакторинге: опыт внедрения DDD в проект на FastAPI — Часть 2

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров3.5K

Привет, хабравчане!

В первой части были рассмотрены паттерны проектирования Repository и Unit of Work.

Это вторая часть цикла о DDD. В ней расскажу, как добавить к проекту событийно-ориентированную архитектуру.

Код подопытного приложения ищите в репозитории по ссылке. Подробнее о DDD и паттернах Repository и Unit of Work читайте в первой части по ссылке...

Читать далее
Всего голосов 7: ↑7 и ↓0+7
Комментарии2

REDIS: такой простой и такой сложный

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров21K

Меня зовут Андрей Комягин, я СТО компании STM Labs. Мы занимаемся разработкой очень больших распределённых высоконагруженных систем для различных отраслей и в своей работе широко используем open-source решения, в том числе СУБД Redis. Недавно я подробно рассказывал об этой системе на конференции Saint HighLoad++, а теперь с удовольствием поделюсь основной информацией с читателями Хабра. Итак, поехали.

Читать далее
Всего голосов 50: ↑49 и ↓1+60
Комментарии28

Знакомимся с линейной алгеброй в NumPy

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров8.7K

Краткий гид по основам библиотеки NumPy и основным линейно-алгебраическим операциям с её использованием

Читать!
Всего голосов 11: ↑8 и ↓3+6
Комментарии0

Задача коммивояжёра в общем виде. Наибыстрейшее точное решение

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров15K

Эта работа является заключением пятилетнего марафона по поиску самого быстрого способа нахождения минимального точного решения для задачи коммивояжёра в общем виде.

Тут я хочу подытожить все опробованные подходы и выбрать лучший по моему мнению.

Читать далее
Всего голосов 36: ↑35 и ↓1+42
Комментарии29

Как создать часы на Python: уроки программирования для школьников

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров13K

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

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

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

Читать далее
Всего голосов 10: ↑6 и ↓4+5
Комментарии14

Kafka для самых маленьких разработчиков, аналитиков и тестировщиков

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров25K

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

С одной стороны, это может быть и хорошо. Такие шаги стимулируют индустрию. Но всё же лучше понимать, что ты делаешь, иначе проекту можно сделать только хуже. В этой статье я обращаюсь к разработчикам, аналитикам и тестировщикам, которые еще не сталкивались с Kafka по работе. Помогу понять, почему все же в микросервисной среде многие не ходят просто по REST, а используют этот инструмент - что конкретно делает Kafka и когда есть смысл её применять.

Читать далее
Всего голосов 34: ↑33 и ↓1+40
Комментарии15

Чат-бот с ИИ для тренировки английского произношения и грамматики

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров11K

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

Читать далее
Всего голосов 12: ↑8 и ↓4+6
Комментарии15

Django 5: асинхронный бекенд и эффектный фронтенд с минимальными затратами времени

Время на прочтение17 мин
Количество просмотров4.3K

Приветствую, друзья!

Уже давно у меня возникала мысль подробно, как в случае с FastAPI и Aiogram 3, разобрать «суровый» Django 5. Однако, из-за большого дефицита свободного времени и масштабности Django, руки до этого не доходили. Сегодня, как вы уже поняли, момент настал.

В процессе написания кода мы затронем следующие темы: маршрутизация, работа со статическими файлами, асинхронное использование Django 5, работа с базой данных SQLite через встроенное ORM и многое другое.

Сегодня мы создадим простой сайт, который будет демонстрировать гороскоп на завтра для любого знака зодиака. Чтобы было интереснее, гороскоп будем парсить в момент обращения к знаку зодиака (об этом подробнее далее).

Читать далее
Всего голосов 11: ↑9 и ↓2+10
Комментарии12

Как котята лапками настраивают GPU в Kubernetes и при чем тут эффект Манделы

Уровень сложностиСложный
Время на прочтение9 мин
Количество просмотров6.7K
image

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

Привет, Хабр! Меня зовут Антон. Мне часто приходится настраивать инфраструктуру для обучения и инференсинга моделей на GPU в Kubernetes. Хочу поделиться волшебным инструментом, который позволяет это делать без костылей и велосипедов, если у вас лапки.

В этой статье расскажу и про боли при настройке GPU для ML-задач, и про лекарство — GPU-оператор. Разберемся на примере с GPU NVIDIA, но и для AMD общая концепция будет похожа. Ранее я выступал с этим материалом на конференции Pycon 2024.
Читать дальше →
Всего голосов 29: ↑29 и ↓0+41
Комментарии0

Информация

В рейтинге
2 274-й
Откуда
Cascais, Lisboa, Португалия
Зарегистрирован
Активность

Специализация

Специалист
От 7 000 €
Python
SQL
Golang
RabbitMQ
Apache Kafka
Docker
Redis
Fastapi