Библиотека программиста | программирование, кодинг, разработка
82.2K subscribers
3.12K photos
147 videos
88 files
6.35K links
Все самое полезное для программиста в одном канале.

Список наших каналов: https://tttttt.me/proglibrary/9197
Учиться у нас: https://proglib.io/w/a32a0d94

Обратная связь: @proglibrary_feedback_bot

По рекламе: @proglib_adv
Прайс: @proglib_advertising
Download Telegram
🐘🔧 Расширение pg_variables: мощная альтернатива временным таблицам в PostgreSQL

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

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

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

Флаг is_transactional нужно указывать каждый раз, когда вы изменяете значение транзакционной переменной с помощью функций pgv_set() и pgv_insert(). В противном случае возникнет ошибка. Другим функциям передавать этот флаг не нужно.

Если вызовы функций pgv_free() или pgv_remove() откатываются, затронутые транзакционные переменные восстанавливаются. В отличие от них, нетранзакционные переменные удаляются безвозвратно.

👉 Читать подробнее в статье
Please open Telegram to view this post
VIEW IN TELEGRAM
👨‍💻 Технологии, связанные с API: #инфографика для разработчика

👉 Источник
Вакансии «Библиотеки программиста» — ждем вас в команде!

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

Подробности тут

Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴

Ждем ваших откликов 👾
🏗 3 основных шаблона событийно-ориентированной архитектуры

Знание данных шаблонов позволяет:

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

1️⃣ Шаблон конкурирующих потребителей используется для эффективного распределения большого количества асинхронных сообщений между несколькими потребителями. Ключевой момент в этом шаблоне — необходимость обработки каждого сообщения только одним потребителем. Разные инструменты и платформы решают эту задачу по-своему:
2️⃣ Шаблон повторных попыток сообщений используется для обработки ошибок при работе с очередями сообщений. Этот шаблон позволяет создать надежную систему обработки транзакций, способную справляться с временными сбоями и обеспечивающую контролируемый процесс для работы с проблемными транзакциями, например, при обработке платежей.
3️⃣ Шаблон асинхронного запроса-ответа позволяет создавать масштабируемые и устойчивые к сбоям системы, где сервисы могут взаимодействовать асинхронно, не блокируя друг друга и сохраняя способность корректно обрабатывать ответы даже при изменении состояния системы между запросом и ответом.

👉 Подробнее читайте в нашей статье
👉 Зеркало
Please open Telegram to view this post
VIEW IN TELEGRAM
👨‍💻 Подборка шпаргалок по работе с Git: на заметку разработчику
Об IOCCC (International Obfuscated C Code Contest)

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

К сожалению, конкурс закрыт и больше не проводится, но вы можете изучить работы победителей с 1984года в репозитории
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻 Знаете ли вы, что в VS Code можно просмотреть историю репозитория?! Никакие дополнительные расширения не требуются!

#инструменты
Please open Telegram to view this post
VIEW IN TELEGRAM
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

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

Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.

Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
This media is not supported in your browser
VIEW IN TELEGRAM
Нашли прикольный сайт с играми для кодеров

CodinGame — это платформа, где можно качать свои навыки в программировании и играть одновременно. Тут есть куча языков: Python, Java, C++ и другие.

Игры доступны бесплатно, разобраться несложно — присутствует туториал
This media is not supported in your browser
VIEW IN TELEGRAM
🤖 Supermaven — один из самых быстрых ИИ-помощников для разработчика. Доступен в виде расширения для IDE от Jetbrains, VSCode или Neovim.

👉 Скачать

#инструменты
🙌 Хардкорный вышмат для тех, кто интересуется ML, AI, DS

Начать с вводных занятий можно здесь, ответив всего на 4 вопроса – https://proglib.io/w/3077986f

Что будет на демо?

🔹Вводный урок от CPO курса;

🔹Лекции со всеми преподавателями МГУ по темам: теория множеств, непрерывность функции, основные формулы комбинаторики, матрицы и операции над ними, градиентный спуск;

🔹Практические задания и дополнительные материалы!

⚡️Переходите и активируйте – https://proglib.io/w/3077986f
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram начнет передавать данные пользователей по запросам властей

В телеграм обновили Terms of Service and Privacy Policy, теперь те, кто нарушает правила сервиса, могут быть раскрыты соответствующим органам в ответ на обоснованные юридические запросы. Эти меры должны отпугнуть преступников

Также обновили Telegram search: с помощью AI он отсеивает весь проблемный контент

➡️ Ссылка на новость
Please open Telegram to view this post
VIEW IN TELEGRAM
🔟🏩 ТОП-10 перспективных студий разработки: лучшие компании для вашего карьерного роста

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

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

🔗 Читать статью
🔗 Зеркало
💡 Зачем использовать distributed lock: на заметку разработчику

Распределённая блокировка (distributed locking) — это метод координации доступа к общим ресурсам между несколькими процессами или узлами в распределённой системе.

👉 Источник

#инфографика