Forwarded from Python Academy
Официальное упорядочивание словарей
Кстати, Python 3.7 на официальном уровне зафиксировал соответствие порядка перебора элементов словарей порядку их добавления.
Но для некоторых это не такая уж и новость, так как и в Python 3.6 словари уже были упорядочены, что видно на примере выше.
Однако это был просто побочный результат реализации, не зафиксированный в стандарте. Новый Python оформил его официально. Теперь можно быть уверенным в сохранении порядка вставки.
#словари
Кстати, Python 3.7 на официальном уровне зафиксировал соответствие порядка перебора элементов словарей порядку их добавления.
Но для некоторых это не такая уж и новость, так как и в Python 3.6 словари уже были упорядочены, что видно на примере выше.
Однако это был просто побочный результат реализации, не зафиксированный в стандарте. Новый Python оформил его официально. Теперь можно быть уверенным в сохранении порядка вставки.
#словари
👍1
Forwarded from DevBrain
Доклады с DjangoCon Europe 2023:
— Squeezing Django performance for 14.9 million users on WhatsApp
— Building and scaling a live event platform with django-channels
— Tuning PostgreSQL to work even better
— Good form: How Django’s form rendering improved during the 4.x series
Выше список наиболее интересных с моей т.з. докладов с прошедшей конференции. Полный список можно посмотреть тут.
— Squeezing Django performance for 14.9 million users on WhatsApp
— Building and scaling a live event platform with django-channels
— Tuning PostgreSQL to work even better
— Good form: How Django’s form rendering improved during the 4.x series
Выше список наиболее интересных с моей т.з. докладов с прошедшей конференции. Полный список можно посмотреть тут.
YouTube
DjangoCon Europe 2023 | Squeezing Django performance for 14.9 million users on WhatsApp
Squeezing Django performance for 14.9 million users on WhatsApp
by Rudi Giesler
https://pretalx.com/djangocon-europe-2023/talk/PYFUGF/
At the start of the pandemic, there was a large need for accurate information to combat misinformation. This is how we…
by Rudi Giesler
https://pretalx.com/djangocon-europe-2023/talk/PYFUGF/
At the start of the pandemic, there was a large need for accurate information to combat misinformation. This is how we…
👍1
Транзакции — это фундаментальное понятие во всех СУБД. Суть транзакции в том, что она объединяет последовательность действий в одну операцию «всё или ничего»..
Транза́кция (англ. transaction) — группа последовательных операций с базой данных, которая представляет собой логическую единицу работы с данными. Транзакция может быть выполнена либо целиком и успешно, соблюдая целостность данных и независимо от параллельно идущих других транзакций, либо не выполнена вообще, и тогда она не должна произвести никакого эффекта
Стандарт SQL определяет четыре уровня изоляции транзакций:
Read Uncommitted
Read Committed
Repeatable Read
Serializable
Стандарт SQL определяет 4 уровня изоляции транзакций, но Postgresql реализует только 3 уровня изоляции (Read Committed, Repeatable Read, Serializable).
Подробнее как реализованы уровни транзакций в Postgresql и про аномалии , которые допустимы на этих уровнях , я решил подробно описать в этой статье
#postgresql #вопросынасобеседованиях #базыданных
https://gadjimuradov.ru/post/urovni-izolyacii-tranzakcij-v-postgresql/
Транза́кция (англ. transaction) — группа последовательных операций с базой данных, которая представляет собой логическую единицу работы с данными. Транзакция может быть выполнена либо целиком и успешно, соблюдая целостность данных и независимо от параллельно идущих других транзакций, либо не выполнена вообще, и тогда она не должна произвести никакого эффекта
Стандарт SQL определяет четыре уровня изоляции транзакций:
Read Uncommitted
Read Committed
Repeatable Read
Serializable
Стандарт SQL определяет 4 уровня изоляции транзакций, но Postgresql реализует только 3 уровня изоляции (Read Committed, Repeatable Read, Serializable).
Подробнее как реализованы уровни транзакций в Postgresql и про аномалии , которые допустимы на этих уровнях , я решил подробно описать в этой статье
#postgresql #вопросынасобеседованиях #базыданных
https://gadjimuradov.ru/post/urovni-izolyacii-tranzakcij-v-postgresql/
gadjimuradov.ru
Уровни изоляции транзакций в Postgresql
<p>В этой статье мы рассмотрим как в PostgreSQL реализованы уровни изоляции транзакций , какие аномалии допускаются при разных уровнях изоляции , а какие нет. </p>
<p>Транзакции - это фундаментальное понятие во всех СУБД. Суть транзакции в том, что она…
<p>Транзакции - это фундаментальное понятие во всех СУБД. Суть транзакции в том, что она…
👍1
Forwarded from Полка Разработчика
📖 Оптимизация запросов в PostgreSQL
Автор: Домбровская Г., Новиков Б., Бейликова А., 2022
Описание: Книга поможет вам писать запросы, которые выполняются быстро и вовремя доставляют результаты. Вы научитесь смотреть на процесс написания запроса с точки зрения механизма базы данных и начнете думать, как оптимизатор базы данных. Объясняется, как читать и понимать планы выполнения запросов, какие существуют методы воздействия на них с точки зрения оптимизации производительности, и показано, как эти методы используются вместе для создания эффективных приложений.
• Скачать книгу из архива
• Стоимость в магазине
📚 Полка Разработчика | #PostgreSQL #Оптимизация
Автор: Домбровская Г., Новиков Б., Бейликова А., 2022
Описание: Книга поможет вам писать запросы, которые выполняются быстро и вовремя доставляют результаты. Вы научитесь смотреть на процесс написания запроса с точки зрения механизма базы данных и начнете думать, как оптимизатор базы данных. Объясняется, как читать и понимать планы выполнения запросов, какие существуют методы воздействия на них с точки зрения оптимизации производительности, и показано, как эти методы используются вместе для создания эффективных приложений.
• Скачать книгу из архива
• Стоимость в магазине
📚 Полка Разработчика | #PostgreSQL #Оптимизация
👍1
Forwarded from Библиотека программиста | программирование, кодинг, разработка
📉 Cитуация на рынке труда в IT: зарплаты и куда все катится в 2023 году
Спойлер: все неоднозначно, сложно и, местами, — плачевно. По крайней мере, об этом говорит статистика за первое полугодие 2023 года.
🔗 Основной сайт
🔗 Зеркало
Спойлер: все неоднозначно, сложно и, местами, — плачевно. По крайней мере, об этом говорит статистика за первое полугодие 2023 года.
🔗 Основной сайт
🔗 Зеркало
👍1
Если все еще не используете Python 3.11 в своих проектах , то вам еще одна статья , благодаря которому вы перейдете на эту версию
👍1
Forwarded from Zen of Python
Бенчмаркинг Python 3.10 vs. 3.11: на 64% быстрее?
Благодаря подписчику @Trizalio мы можем поделиться с вами прекрасной статьёй: сравнение производительности разных версий Python.
Автор статьи запускает разные версии ЯП в Docker и использует утилиту
#факты
Благодаря подписчику @Trizalio мы можем поделиться с вами прекрасной статьёй: сравнение производительности разных версий Python.
Автор статьи запускает разные версии ЯП в Docker и использует утилиту
pyperformance
, чтобы вычислить время исполнения аналогичных скриптов.#факты
👍1
Forwarded from Библиотека программиста | программирование, кодинг, разработка
📌 Сохраняй в заметки, чтобы не пропустить самое интересное:
🌐 Service Mesh на стероидах, часть 2: Zero Deployment Downtime в корпоративных приложениях / А. Ефимов
🌐 Эволюция распределенных атак в Интернете: 1994 — настоящее время / Георгий Тарасов (Qrator Labs)
🌐 Под красным флагом: как инженер может понять, что в проекте происходит что-то не то / Д. Подольский
🌐 Одна платформа, чтобы править всеми / Михаил Кабищев (Ozon)
🌐 Архитектура: история и будущее на примере ВКонтакте / Александр Тоболь (ВКонтакте)
🌐 История онлайн-видео / Максим Лапшин (Эрливидео)
🌐 Как не провалить импортозамещение / Евгений Лукин (СберТех)
🌐 Без A/B — результат XЗ, или Как мы построили платформу A/B-тестов в Ozon / Евгений Пак (Ozon)
🌐 Развитие и жизненные циклы пайплайна / Александр Обливальный (ГК Иннотех)
🌐 Микросервисы через боль и превозмогание / Филипп Дельгядо (lekton.io)
🌐 Бесшовное внедрение практик безопасности в DevOps-конвейер / Андрей Иванов
🌐 Блокчейн в корпоративной архитектуре — дань моде или необходимость? / Денис Васин (Waves Enterprise)
🌐 OpenSource как источник атаки. Чем опасно? Как лечить? / Алексей Морозов (Тинькофф)
🌐 Контейнеры мертвы. Да здравствуют виртуальные машины! / Виктор Попов (НЛМК)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Forwarded from Гайды по БД и SQL
Хороший урок с задачами SQL
Есть разные виды баз данных, но этот урок посвящен базам данных, поддерживающим язык SQL. В них любые операции над данными - добавление, удаление, поиск - делаются с помощью отправки SQL-запросов. Сам язык достаточно простой и запросы на нем напоминают обычные предложения на английском языке. Ну к примеру, запрос на удаление из БД пользователя с email ivan@example.com выглядит так: DELETE FROM users WHERE email = 'ivan@example.com'. Если знать английский ("удалить из пользователей где email равен 'ivan@example.com'"), то смысл запроса легко понять, даже не зная SQL. Запросы может отправлять как сам разработчик вручную, так и написанная им программа.
⤷ Ссылка на статью
Гайды по БД и SQL
Есть разные виды баз данных, но этот урок посвящен базам данных, поддерживающим язык SQL. В них любые операции над данными - добавление, удаление, поиск - делаются с помощью отправки SQL-запросов. Сам язык достаточно простой и запросы на нем напоминают обычные предложения на английском языке. Ну к примеру, запрос на удаление из БД пользователя с email ivan@example.com выглядит так: DELETE FROM users WHERE email = 'ivan@example.com'. Если знать английский ("удалить из пользователей где email равен 'ivan@example.com'"), то смысл запроса легко понять, даже не зная SQL. Запросы может отправлять как сам разработчик вручную, так и написанная им программа.
⤷ Ссылка на статью
Гайды по БД и SQL
👍1
Forwarded from Codecademy | Программирование
Python 3.12: новые фичи и возможности, прогресс в скорости, типах и GIL
Смотрите видео ниже, чтобы узнать о топовых фишках и возможностях Python 3.12. Эта версия принесла прогресс в скорости и изменения в GIL, которые позволяют использовать ядра процессора в потоках, чего не было ранее.
👀Смотреть видео
#python #полезное
Смотрите видео ниже, чтобы узнать о топовых фишках и возможностях Python 3.12. Эта версия принесла прогресс в скорости и изменения в GIL, которые позволяют использовать ядра процессора в потоках, чего не было ранее.
👀Смотреть видео
#python #полезное
👍1
Forwarded from DataEng
Обзор новых фич в новой версии PostgreSQL 16: https://www.youtube.com/watch?v=M7m3A68CTJg
YouTube
PostgreSQL 16: обзор релиза с Павлом Лузановым (Postgres Professional)
В данном выпуске Павел Лузанов, руководитель отдела образовательных программ Postgres Professional, рассказывает о наиболее значимых улучшениях, которые стали доступны в PostgreSQL 16. Таймкоды видео:
02:34 Новая система сборки MESON
03:51 Документация …
02:34 Новая система сборки MESON
03:51 Документация …
👍3
На ранних этапах разработки микросервисных решений обычно не задумываешься о том, с какими сложностями предстоит столкнуться. В какой-то момент после релиза обычно возникает необходимость повысить надежность, улучшить масштабируемость, сократить время ответа и разделить ответственность между командами. Однако, решение к этому может быть не готово.
Микросервисы - не новая архитектура и за время своего существования она уже успела обзавестись типовыми решениями - паттернами.
Именно о паттернах мы сегодня поговорим. Что в программе:
* Паттерны декомпозиции монолита на микросервисы.
* Паттерны для повышения надежности синхронного и асинхронного взаимодействия.
* Паттерны observability и организации публичного API.
https://www.youtube.com/watch?v=_RCiOo4Dv8w
Микросервисы - не новая архитектура и за время своего существования она уже успела обзавестись типовыми решениями - паттернами.
Именно о паттернах мы сегодня поговорим. Что в программе:
* Паттерны декомпозиции монолита на микросервисы.
* Паттерны для повышения надежности синхронного и асинхронного взаимодействия.
* Паттерны observability и организации публичного API.
https://www.youtube.com/watch?v=_RCiOo4Dv8w
YouTube
Шаблоны проектирования для микросервисов
На ранних этапах разработки микросервисных решений обычно не задумываешься о том, с какими сложностями предстоит столкнуться. В какой-то момент после релиза обычно возникает необходимость повысить надежность, улучшить масштабируемость, сократить время ответа…
👍1
Forwarded from Zen of Python
Когда речь заходит про взаимодействие микросервисов, все сразу вспоминают о сложных архитектурных паттернах, вроде Event Bus и CQRS
В статье Антон Щербак, разработчик Selectel, рассказывает, как выполнить простенькую задачку для двух микросервисов без навороченной архитектуры.
Скорее читайте статью:
https://habr.com/ru/companies/selectel/articles/724278/
Реклама ООО «Селектел» 2Vtzqwwzcf4
В статье Антон Щербак, разработчик Selectel, рассказывает, как выполнить простенькую задачку для двух микросервисов без навороченной архитектуры.
Скорее читайте статью:
https://habr.com/ru/companies/selectel/articles/724278/
Реклама ООО «Селектел» 2Vtzqwwzcf4
👍1
Forwarded from Библиотека Python разработчика | Книги по питону
This media is not supported in your browser
VIEW IN TELEGRAM
Как создать свою собственную нейронную сеть с нуля на Python
Мотивация: в рамках моего личного пути к лучшему пониманию глубокого обучения я решил создать нейронную сеть с нуля без библиотеки глубокого обучения, такой как TensorFlow. Я считаю, что понимание внутренней работы нейронной сети важно для любого начинающего специалиста по данным. Эта статья содержит то, что я узнал, и, надеюсь, она будет полезна и вам!
https://habr.com/ru/articles/725668/
@BookPython
Мотивация: в рамках моего личного пути к лучшему пониманию глубокого обучения я решил создать нейронную сеть с нуля без библиотеки глубокого обучения, такой как TensorFlow. Я считаю, что понимание внутренней работы нейронной сети важно для любого начинающего специалиста по данным. Эта статья содержит то, что я узнал, и, надеюсь, она будет полезна и вам!
https://habr.com/ru/articles/725668/
@BookPython
👍2
Forwarded from Библиотека программиста | программирование, кодинг, разработка
This media is not supported in your browser
VIEW IN TELEGRAM
➡️ Миграция в Cloud Native: пошаговая демонстрация от ByteByteGo
1️⃣ Application definition development
2️⃣ Orchestration and management
3️⃣ Runtime
4️⃣ Provisioning
5️⃣ Observability
6️⃣ Serverless
#проектирование_систем #инфографика
1️⃣ Application definition development
2️⃣ Orchestration and management
3️⃣ Runtime
4️⃣ Provisioning
5️⃣ Observability
6️⃣ Serverless
#проектирование_систем #инфографика
👍2
Ура!!! Отличная новость
Буквально час тому назад состоялся релиз новой версии Python3.12.0 (финальный релиз) !!!
Основные новые возможности Python 3.12.0 по сравнении с версией Python 3.11
Новые фичи
1. Более гибкий разбор f-строк(More flexible f-string parsing ), позволяющий множество вещей, ранее запрещенных (PEP 701).
2. Поддержка протоколов буфера в коде Python (PEP 688).
3. Новый API для отладки/профилирования (PEP 669).
4. Поддержка изолированных подинтерпретаторов(subinterpreters) с отдельными GIL (PEP 684).
5. Еще более улучшенные сообщения об ошибках. Теперь большинство исключений, вызванных, возможно, опечатками, предлагают пользователю рекомендации.
6. Поддержка профилировщика Linux perf для отображения имен функций Python в трассировках.
7. Множество крупных и мелких улучшений производительности (например, PEP 709 и поддержка бинарного оптимизатора BOLT), обеспечивающих ожидаемое общее улучшение производительности на уровне 5%.
Аннотации типов
1. Новый синтаксис аннотации типов для обобщенных классов (PEP 695).
2. Новый декоратор override для методов (PEP 698).
Устаревшие функции и изменения:
1. Убраны устаревшие элементы wstr и wstr_length из реализации C объектов unicode, согласно PEP 623.
2. В модуле unittest было удалено множество давно устаревших методов и классов (они были устаревшими с версии Python 3.1 или 3.2).
3. Убраны устаревшие модули smtpd и distutils (смотрите PEP 594 и PEP 632). Пакет setuptools продолжает предоставлять модуль distutils.
4. Убраны ряд других старых, испорченных и устаревших функций, классов и методов.
5. Неверные экранирующие последовательности обратной косой черты в строках теперь вызывают предупреждение SyntaxWarning, а не DeprecationWarning, что делает их более заметными. В будущем они станут синтаксической ошибкой.
6. Внутреннее представление целых чисел было изменено в целях подготовки к улучшению производительности. Это не должно повлиять на большинство пользователей, так как это внутренний деталь, но это может вызвать проблемы для кода, созданного с использованием Cython.
#python #python3.12 #программирование
Буквально час тому назад состоялся релиз новой версии Python3.12.0 (финальный релиз) !!!
Основные новые возможности Python 3.12.0 по сравнении с версией Python 3.11
Новые фичи
1. Более гибкий разбор f-строк(More flexible f-string parsing ), позволяющий множество вещей, ранее запрещенных (PEP 701).
2. Поддержка протоколов буфера в коде Python (PEP 688).
3. Новый API для отладки/профилирования (PEP 669).
4. Поддержка изолированных подинтерпретаторов(subinterpreters) с отдельными GIL (PEP 684).
5. Еще более улучшенные сообщения об ошибках. Теперь большинство исключений, вызванных, возможно, опечатками, предлагают пользователю рекомендации.
6. Поддержка профилировщика Linux perf для отображения имен функций Python в трассировках.
7. Множество крупных и мелких улучшений производительности (например, PEP 709 и поддержка бинарного оптимизатора BOLT), обеспечивающих ожидаемое общее улучшение производительности на уровне 5%.
Аннотации типов
1. Новый синтаксис аннотации типов для обобщенных классов (PEP 695).
2. Новый декоратор override для методов (PEP 698).
Устаревшие функции и изменения:
1. Убраны устаревшие элементы wstr и wstr_length из реализации C объектов unicode, согласно PEP 623.
2. В модуле unittest было удалено множество давно устаревших методов и классов (они были устаревшими с версии Python 3.1 или 3.2).
3. Убраны устаревшие модули smtpd и distutils (смотрите PEP 594 и PEP 632). Пакет setuptools продолжает предоставлять модуль distutils.
4. Убраны ряд других старых, испорченных и устаревших функций, классов и методов.
5. Неверные экранирующие последовательности обратной косой черты в строках теперь вызывают предупреждение SyntaxWarning, а не DeprecationWarning, что делает их более заметными. В будущем они станут синтаксической ошибкой.
6. Внутреннее представление целых чисел было изменено в целях подготовки к улучшению производительности. Это не должно повлиять на большинство пользователей, так как это внутренний деталь, но это может вызвать проблемы для кода, созданного с использованием Cython.
#python #python3.12 #программирование
Python documentation
What’s New In Python 3.12
Editor, Adam Turner,. This article explains the new features in Python 3.12, compared to 3.11. Python 3.12 was released on October 2, 2023. For full details, see the changelog. Summary – Release hi...
👍2
Статьи о программировании(Python, Django, Golang) pinned «Ура!!! Отличная новость Буквально час тому назад состоялся релиз новой версии Python3.12.0 (финальный релиз) !!! Основные новые возможности Python 3.12.0 по сравнении с версией Python 3.11 Новые фичи 1. Более гибкий разбор f-строк(More flexible f-string…»