Библиотека программиста | программирование, кодинг, разработка
88.5K subscribers
3.14K photos
148 videos
88 files
6.36K links
Все самое полезное для программиста в одном канале.

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

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

По рекламе: @proglib_adv
Прайс: @proglib_advertising
Download Telegram
🪶 Как следовать принципу DRY при настройке Apache APISIX

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

☑️ Делает конфигурацию более компактной и легкой для понимания.
☑️ Упрощает поддержку — когда нужно внести изменения, вы делаете это только в одном месте.
☑️ Повышает читаемость — конфигурация становится более структурированной и логичной, что облегчает ее понимание.
☑️ Улучшает масштабируемость — при усложнении конфигурации принципы DRY помогают сохранять ее управляемой и расширяемой.
☑️ Сокращает время на настройку — используя переиспользуемые компоненты, можно быстрее создавать новые конфигурации или модифицировать существующие.

В качестве примера в статье рассматриваем, как применять DRY при настройке конфигурации API-шлюза Apache APISIX.

🔗 Читать статью
🔗 Зеркало
💡 Полезные паттерны для интеграции/проектирования систем: на заметку разработчику

👉 Источник

#инфографика
📨 Как работают очереди и брокеры сообщений

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

1️⃣ Пользователь загружает большой файл для обработки.
2️⃣ Веб-сервер принимает файл и создает задание.
3️⃣ Задание добавляется в очередь задач, а файл загружается в объектное хранилище.
4️⃣ Позже рабочий процесс забирает задания из очереди одно за другим и обрабатывает их, получая файл из хранилища.

Это самый простой пример. Очереди сообщений можно использовать для:

✔️ Планирования и управления фоновыми задачами.
✔️ Распределения задач между несколькими рабочими процессами.
✔️ Управления сервисами подписки и уведомлений.
✔️ Буферизации данных.
✔️ Повторных попыток обработки платежей и многого другого.

Подробнее читайте в нашем гайде 👇

🔗 Читать статью
🔗 Зеркало
🔘 Bracket Pair Colorization Toggler — расширение VS Code (имеет более одного миллиона установок 🤯), которое предоставляет простую команду для быстрого переключения глобального параметра Bracket Pair Colorization, добавленного в VS Code версии v1.60.

Просто нажмите Ctrl + Shift + P (Win, Linux) / Cmd + Shift + P (Mac) и найдите команду Toggle 'Bracket Pair Colorization'.

📦 Установить

#инструменты
🤖 Напоминаем, что у нас есть еженедельная email-рассылка, посвященная последним новостям и тенденциям в мире искусственного интеллекта.

В ней:
● Новости о прорывных исследованиях в области машинного обучения и нейросетей
● Материалы о применении ИИ в разных сферах
● Статьи об этических аспектах развития технологий
● Подборки лучших онлайн-курсов и лекций по машинному обучению
● Обзоры инструментов и библиотек для разработки нейронных сетей
● Ссылки на репозитории с открытым исходным кодом ИИ-проектов
● Фильмы, сериалы и книги

👉Подписаться👈
🤔 Основы математики в Machine Learning / Deep Learning

🗓 16 октября мы разберем ряд Тейлора, собственные векторы и другие ключевые понятия в ML – https://proglib.io/w/508933a2

Спикер: Иван Потапов – Staff Machine Learning Engineer at ShareChat. Руководит командой, отвечающей за качество рекомендаций, и имеет 8-летний опыт в сфере машинного обучения.

😮 Что будем обсуждать:

– Теорию вероятностей: случайные величины, математическое ожидание и дисперсию.

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

Математический анализ: производные и разложение функций в ряд Тейлора.

👨‍💻 А еще после каждого блока вас ждет практика в применении полученных знаний.

🎯 Почему это важно?
Понимание математических основ помогает глубже разобраться в работающих под капотом алгоритмах ML/DL и эффективно применять их на практике.

Присоединяйтесь к нам и совершенствуйте свои навыки в машинном обучении!

📌 Регистрация по ссылке: https://proglib.io/w/508933a2
Please open Telegram to view this post
VIEW IN TELEGRAM
PostgreSQL захватил мир баз данных

На карточке показано, как PostgreSQL интегрируется с различными системами и инструментами
🦀 Как начать разработку ядра Linux на языке Rust?

Существует несколько способов установки инструментов Rust, необходимых для разработки ядра. Простой способ — использовать пакеты вашего Linux-дистрибутива, если они подходят. Преимущество заключается в том, что дистрибутив обычно соответствует версии LLVM, используемой Rust и Clang.

Другой способ — использовать предварительно собранные стабильные версии LLVM+Rust с kernel.org. Это те же компактные и быстрые сборки LLVM с добавленными версиями Rust, которые поддерживает проект Rust для Linux. Предоставляется два набора: latest LLVM и matching LLVM.

В качестве альтернативы можно установить основные компоненты с помощью rustup, standalone установщика Rust и/или сборки.

👉 Подробнее
💬 Пусть Т9 продолжит эту фразу за вас:

Как же меня бесит в программировании...

#интерактив
Самые полезные каналы для программистов в одной подборке!

Сохраняйте себе, чтобы не потерять 💾

🔥Для всех

Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы
Азбука айтишника — здесь мы познаем азы из мира программирования

🤖Про нейросети
Библиотека робототехники и беспилотников | Роботы, ИИ, интернет вещей
Библиотека нейрозвука | Транскрибация, синтез речи, ИИ-музыка
Библиотека нейротекста | ChatGPT, Gemini, Bing
Библиотека нейровидео | Sora AI, Runway ML, дипфейки
Библиотека нейрокартинок | Midjourney, DALL-E, Stable Diffusion

#️⃣C#

Книги для шарпистов | C#, .NET, F#
Библиотека шарписта — полезные статьи, новости и обучающие материалы по C#
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel

☁️DevOps

Библиотека devops’а — полезные статьи, новости и обучающие материалы по DevOps
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования

🐘PHP

Библиотека пхпшника — полезные статьи, новости и обучающие материалы по PHP
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты

🐍Python

Библиотека питониста — полезные статьи, новости и обучающие материалы по Python
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты

Java

Книги для джавистов | Java
Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков

👾Data Science

Книги для дата сайентистов | Data Science
Библиотека Data Science — полезные статьи, новости и обучающие материалы по Data Science
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту

🦫Go

Книги для Go разработчиков
Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go

🧠C++

Книги для C/C++ разработчиков
Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++

💻Другие каналы

Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика
Библиотека разработчика игр | Gamedev, Unity, Unreal Engine
Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности

📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈

Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT

Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *

* Организация Meta запрещена на территории РФ
ℹ️ Сайт dev.to совместно с компанией Wix запустил новый челлендж для разработчиков

Тема: разработка креативных решений с использованием технологий Wix

Призовой фонд: победители получат денежные призы

Подробности и правила участия можно узнать по ссылке:
🔗 Wix Studio Challenge
Please open Telegram to view this post
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
🐧 omakub — настройка Omakase для разработчиков Ubuntu 24.04 от создателя Ruby on Rails David Heinemeier Hansson

Превратите новую установку Ubuntu в полностью настроенную, красивую и современную систему веб-разработки, выполнив одну команду. Omakub — это взгляд на то, каким Linux может быть в лучшем виде.

wget -qO- https://omakub.org/install | bash


👉 Подробнее
Очереди задач: простой способ пакетной обработки

Как работает очередь задач на примере создания миниатюр для видео.

Цель: после загрузки видео оно должно высветиться в виде миниатюры
🤯 Ситуация:

Вам поступает задача, вы на глаз оцениваете ее в две недели и получаете одобрение по срокам. Сначала все идет хорошо, пилите проект и ничто не предвещает беды.

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

А когда приходит время сдачи работы, выясняется, что большинство работы сделано неправильно.

💬 Как думаете, как стоило поступить исполнителю?