proglibrary | Технологии

Telegram-канал proglibrary - Библиотека программиста | программирование, кодинг, разработка

77049

Все самое полезное для программиста в одном канале. Список наших каналов: https://t.me/proglibrary/9197 Учиться у нас: https://proglib.io/w/a32a0d94 Обратная связь: @proglibrary_feedback_bot По рекламе: @proglib_adv Прайс: @proglib_advertising

Подписаться на канал

Библиотека программиста | программирование, кодинг, разработка

🤷‍♂️ Никогда такого не было, и вот опять…

Опрос Российской ассоциации электронных коммуникаций говорит о снижении доходов IT-специалистов, тогда как те же аналитики hh.ru отмечают рост медианной зарплаты.

💬 А как поживают ваши доходы?

🥱 — упали, но незначительно
🙏 — упали сильно
🤩 — выросли

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

⚡️Свершилось: канал с книгами только по Data Science

Мы создали для вас канал, куда будем публиковать самые полезные книги только для специалистов по Data Science. Подписывайтесь!

👉Книги для дата сайентистов | Data Science

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

💬 Что такое микросервисная архитектура и как правильно ее реализовать с помощью Self-contained Systems?

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

В отличие от микросервисов, существует так называемый подход Self-contained Systems (SCS), который приоритезирует децентрализацию приложений на независимые системы, каждая из которых обладает своей доменной логикой, UI, хранилищем данных и сервисным API в случае необходимости. Обычно за них отвечает одна команда.

📌 Основные преимущества:

☑️ Автономность: каждая SCS работает независимо со своей базой данных, бизнес-логикой и UI
☑️ Ориентированность на домен: SCS структурированы вокруг конкретных бизнес-доменов
☑️ Децентрализованное управление данными: индивидуальные базы данных для каждой SCS обеспечивают консистентность данных в пределах своих границ, уменьшая зависимости между сервисами
☑️ Технологическое разнообразие: позволяет использовать различные технологические стеки в разных SCS, соответствующие конкретным потребностям каждого домена
☑️ Независимый деплой: каждую SCS можно деплоить, масштабировать и обновлять независимо, не влияя на другие системы

📌 Почему SCS можеть быть альтернативой микросервисам:

☑️ Более широкий охват
☑️ Уменьшенная операционная сложность
☑️ Консистентность данных
☑️ Уменьшенное межсервисное взаимодействие

Такие системы хорошо сочетаются с DDD. Первый шаг в создании таких систем — анализ домена, который может быть проведен путем выявления ограниченных контекстов, соответствующих конкретным бизнес-доменам. Каждый ограниченный контекст затем инкапсулируется в SCS, который включает в себя управление данными, бизнес-логику и UI, обеспечивая автономность каждой системы, но при этом способность взаимодействовать с другими через четко определенные API при необходимости.

👉 Источник

#проектирование_систем

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🧰17 суперинструментов для разработки фронтенда

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

🛠 Trigger.dev: управляет долгосрочными задачами в приложении.
🛠 Chart.js: рисует стильные графики и диаграммы.
🛠 React Flow/Svelte Flow: визуализируют любые сложные процессы и структуры.
🛠 Monaco Editor: встраивает редактор кода в ваше приложение.
🛠 Novu: обеспечивает отправку сообщений по любым каналам.
🛠 Nx: масштабирует проект с помощью распределенного выполнения задач и кэширования вычислений.
🛠 ClickVote: добавляет обработку реакций в любые приложения.
🛠 Mantine: предоставляет набор стильных UI-компонентов.
🛠 Styled Components: позволяет использовать CSS прямо в JavaScript.
🛠 Supabase: заменяет Firebase.

🔗 Читать статью
🔗 Зеркало

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

📌Интересные новости и обновления популярных инструментов для разрабов:

🤖 Google представила ИИ-модель Gemini, которая обходит GPT-4 в большинстве тестов. Вместе с семейством моделей Gemini был показан видеоролик, где человек взаимодействует с мультимодальной языковой моделью. Позже Google признала видео постановочным.
🗣 Линус Торвальдс рассказал о Rust в Linux, усталости сопровождающих ядра проекта и будущей роли ИИ в новых версиях ОС
⚡ На Rostelecom Tech Day представлена ОС «Аврора 5.0» и проект Aurora Foundation
😎 Опубликованы результаты анализа популярности открытых лицензий, в зависимости от используемых в проектах ЯП
🤝 Сформирован AI Alliance для совместного развития открытых технологий ИИ

🔸 Релиз ядра Linux 6.6.6, в котором предложено изменение, затрагивающее беспроводной стек cfg80211
🔸 Релиз системы сборки CMake 3.28
🔸 Обновление Debian 12.4
🔸 Выпуск Electron 28.0, платформы создания приложений на базе Chromium
🔸 Релиз веб-браузера Chrome 120

#чтопроисходит

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🧠Чему вы бы хотели научиться?

Расскажите нам о ваших пожеланиях: какие навыки вы хотели бы прокачать в ближайшее время или какую профессию хотели бы приобрести?

За прохождение опроса вы получите промокод на скидку 15% на все наши курсы до конца 2024 года.

👉Опрос по ссылке👈

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🐍 5 задач для подготовки к собеседованию по Python

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

🔗Читать статью

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

👨‍💼 Часто карьерную лестницу технических менеджеров представляют исключительно через количественный рост в зоне ответственности, горизонте планирования и числе людей.

🤔 Почему это не так и в чем есть качественные отличия объясняет Евгений Кот, которого вы могли слышать в подкасте «Доктор Кот» про психологию в айти.

Apple Подкасты | Google Подкасты | Яндекс Музыка

#подкасты

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🏃 Самоучитель по Go для начинающих. Часть 2. Ресурсы для изучения Go с нуля

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

🔗 Читать статью
🔗 Ссылка на первую часть

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🗄 ACID в контексте транзакции базы данных: наглядная демонстрация от ByteByteGo (Alex Xu)

🔹 Atomicity (атомарность) гарантирует, что каждая транзакция будет выполнена полностью или не будет выполнена совсем. Не допускаются промежуточные состояния.
🔹 Consistency (согласованность). Благодаря тому, что транзакция не допускает промежуточных результатов, БД остается консистентной. Есть такое определение транзакции: «Упорядоченное множество операций, переводящих базу данных из одного согласованного состояния в другое». То есть до выполнения операции и после БД остается консистентной (согласованной).
🔹 Isolation (изолированность). Во время выполнения транзакции параллельные транзакции не должны оказывать влияния на ее результат.
🔹 Durability (надежность). Если пользователь получил подтверждение от системы о выполнении транзакции, он может быть уверен, что сделанные им изменения не будут отменены из-за какого-либо сбоя.

#вопросы_с_собесов

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🗄 Endatabas (endb) — документная SQL база данных с полной историей.

📌 Что скрывается за этими словами?

🚀 Неизменяемость данных с полной историей: все записи в endb являются неизменяемыми, что обеспечивает полную историю изменений данных. Это делает endb идеальным выбором для приложений, где требуется аудит или отслеживание истории изменений, например, в финансовых системах или системах управления версиями.
🚀 SQL-совместимость с гибкой схемой: endb поддерживает SQL-запросы, что облегчает интеграцию с существующими системами и упрощает переход для команд, уже знакомых с SQL. Гибкая схема данных позволяет легко адаптироваться к изменяющимся требованиям без необходимости миграции данных.
🚀 Хранение данных в Apache Arrow: использование Apache Arrow для хранения данных обеспечивает высокую производительность и эффективность, особенно при работе с большими объемами данных и аналитических запросах.
🚀 Разделение хранения и вычислений: архитектура endb позволяет масштабировать хранилище и вычислительные ресурсы независимо, что делает endb подходящей для облачных и распределенных систем.
🚀 Поддержка HTAP (Hybrid Transactional/Analytical Processing): endb стремится обеспечить возможности HTAP, что делает ее подходящей как для транзакционных, так и для аналитических нагрузок без необходимости использования отдельных систем.

🔗 Документация

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🎉 В прошлом месяце Turbo Pascal исполнилось 40 лет! Это был знаковый инструмент разработки, положивший начало компании Borland и тысячам карьер в области разработки ПО. Turbo Pascal в далеком 1983 году стала первой популярной IDE. В Embarcadero, компании, продолжающей работать над преемниками Turbo Pascal, выпустили 36-ю версию этого компилятора.

🤩 Хотите погрузить в историю? Читайте статью David Intersimone (Chief Evangelist & VP-Developer Relations в Embarcadero Technologies), где он делится воспоминаниями первой встречи с Philippe Kahn и начала работы с Turbo Pascal 40 лет назад.

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

📊 Состояние экосистемы разработчиков в 2023 

🤩 Команда JetBrains опубликовала результаты ежегодного опроса 26 348 разработчиков со всего мира. Он охватывает широкий спектр тем: от языков программирования, инструментов и технологий до демографических данных и интересных фактов.

📌 Основные тенденции в нашей подборке:

1️⃣ Тенденции в программировании:
• Наблюдается небольшое снижение популярности JavaScript за последние три года.
• Rust увеличивает свою популярность и является единственным широко используемым языком, который установил новый рекорд популярности в этом году.
• Objective-C теряет свою пользовательскую базу.

2️⃣ Тенденции зарплат разработчиков:
• Разработчики на Scala, Go и Kotlin входят в топ-3 категорий с самыми высокими зарплатами в 2023 году.
• Гендерный разрыв в индустрии остается значительным, только 5% разработчиков — женщины.

3️⃣ Генеративные ИИ-сервисы:
• 77% разработчиков используют ChatGPT.
• 46% используют GitHub Copilot.

4️⃣ Психическое здоровье в сообществе разработчиков:
• Разработчики, пережившие выгорание, проявляют больший интерес к своему психическому здоровью.
• 73% испытали выгорание в своей карьере.

5️⃣ Обучение и развитие:
• Большинство разработчиков сообщили, что изучали программирование в университетах и других образовательных учреждениях.
• В областях науки о данных, машинного обучения или инженерии данных более половины респондентов сообщили, что они самоучки.

6️⃣ Тестирование ПО:
• 58% респондентов, участвующих в тестировании, сообщают, что они разрабатывают автоматизированные тесты.
• 46% используют проектирование тестовых кейсов как часть своего процесса тестирования.

7️⃣ Опенсорсные проекты: 41% респондентов внесли свой вклад в проекты с открытым исходным кодом.

8️⃣ Удаленная и совместная разработка:
• 49% респондентов занимаются удаленной разработкой.
• 61% сообщили о практике совместной разработки.

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

✍️ Библиотека программиста» находится в поиске переводчика и автора оригинальных статей

Кто нужен?
● Энтузиасты, которые держат руку на пульсе, читают помимо книг зарубежные техноблоги
● Энтузиасты, которым есть что сказать

Тематика
● Java, C#
● В четырех случаях из пяти вы предлагаете тему статьи

Объем
● От 7 до 15 тыс. знаков без учета кода
● 3-4 статьи в месяц

Оплата
● 4к руб. за статью
● Перевод — 250 руб. за 1000 символов без учета кода
● В месяц выйдет ~16к руб.
● Работаем с самозанятыми (компенсируем налог), ИП

Тестовое задание
Автор: написать статью по Java или C#
Переводчик: перевести статью или часть статьи по Java или C#
● Тема: на ваше усмотрение
● ЦА: начинающие/джуны
● Объем: 5-7к символов без пробелов
● Не оплачивается

Не хочу выполнять тестовое задание
Если у вас есть опубликованные статьи, пришлите ссылки на них.

Я пишу «так себе», что делать?
Чтобы написать статью, которую не стыдно опубликовать, достаточно овладеть инфостилем. У нас есть бесплатный курс для начинающих копирайтеров «Статьи для IT: как объяснять и распространять значимые идеи». Время прохождения курса: 1-2 недели.

Где публикуется статья?

Статья публикуется на сайте proglib.io, в группе ВК (425к подписчиков), на канале «Библиотека джависта» (24к подписчиков) и в «Библиотека шарписта» (20к подписчиков).

Вакансию закроем 15 января. У вас есть время пройти курс и написать тестовое задание.

➡️ Заполнить анкету ⬅️

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

Правильная IT-иерархия в 2024 году. Кто знает — тот поймет!

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

⚡️ Если я слышу, что DevOps-инженеру достаточно владеть Docker и Kubernets я скидываю канал DevOps Academy.

В канале я научился:

• Проектировть высоконагруженные приложения
• Выстраивать правильную архитектуру приложения
• Правильно экономить ресурсы системы
• Решать практические задачи с собеседований
• Узнал огромное количество фич с кодом

Для вас мы собрали целую папка DevOps разработчика: /channel/addlist/qht-ouKSGaQwNjcy

Подписывайся, правильно поданная, структурированная информация, это залог роста – @DevOPSitsec

Реклама. ИП Хоруженко Егор Сергеевич, ИНН 550149218060. Erid 2Vtzqv9XsFR

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🏃 Самоучитель по Go для начинающих. Часть 3. Организация кода. Пакеты, импорты, модули. Ввод-вывод текста

В этом уроке мы создадим и запустим простую программу на Go и на её примере познакомимся с организацией кода и основными функциями.

🔗 Читать статью
🔗 Часть 1
🔗 Часть 2

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

Внутренний Я(ндекс)

Любопытный опыт прохождения собеседования в Яндекс на С++ разраба с несколькими этапами и вот этим всем. Без лишних слов, просто прочитайте это👇

👉 Читать

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🔍Вопросы с собеседований и задачи по C#

У нас появились новые каналы по C#, в которых мы готовимся к собеседованиям и проверяем себя на практических задачках 🚀

Подписывайтесь:
👉Библиотека собеса по C# — тут мы готовимся к интервью
👉Библиотека задач по C# — тут решаем задачи, проходим тесты и изучаем код

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

Как работают SQL Joins: шпаргалка от ByteByteGo (Alex Xu)

SQL Join используется для поиска информации в базах данных по заранее определенным критериям. В частности, Join отвечает за объединение нескольких групп данных в единый поток информации.

🔹INNER JOIN возвращает совпадающие строки в обеих таблицах
🔹LEFT JOIN возвращает все записи из левой таблицы и соответствующие записи из правой
🔹RIGHT JOIN возвращает все записи из правой таблицы и соответствующие записи из левой
🔹FULL OUTER JOIN возвращает все записи, в которых есть совпадения, в левой или правой таблице

#cheatsheet

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

Привет! Приглашаем на девятый QIWI Server Party. В этот раз своими историями поделятся спикеры из QIWI, Яндекса и Альфа-Банка.

В программе митапа:
— Павел Черняк, QIWI «Нельзя просто так взять и обновить»
Обновление Java до 17 версии, Spring Framework до 6-й и связанные с этим подводные камни;

— Андрей Свиридов, Альфа-Банк «Как TDD поможет вам лучше работать»
Польза TDD как подхода для повышения качества кода;

— Дмитрий Некрылов, Yandex 360 «Защищаем пользователей от раздвоения конференций»
Лучше практики Яндекса для спасения пользователей Телемоста от раздвоения;

— Самвел Барсегян, QIWI «Инфраструктурная платформа QIWI»
Знакомство с Platform engineering на практическом примере.

Приезжай на митап или подключайся к трансляции.
Детали и регистрация по ссылке.

Реклама. Рекламодатель: КИВИ Банк (АО). ИНН: 3123011520. Erid: 2SDnjdmYEvL

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

Первая конференция Сбера по ИТ-архитектуре «Arch.Conf by Sber» уже совсем скоро! ⏱️

12 декабря спикеры из Тинькофф, Газпром нефти, Норникеля, Билайна, Русагро Тех, Cloud.ru, СберАвто, Сбера и других компаний расскажут о:

— Трендах и развитии управления IT-архитектурой, «Архитектуре как код» и облачных технологиях

— Собственном опыте в принятии архитектурных решений

— Практиках и инструментах трансформации и контроля IT-ландшафта и построения геораспределённых систем

Познакомьтесь с действующими IT-архитекторами и управленцами крупных компаний и станьте частью большого архитектурного сообщества!

Узнать программу и зарегистрироваться на Arch.Conf by Sber

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

Python-разработчики, готовы к новым карьерным возможностям? Тогда One Day Offer от Сбера для вас!

16 декабря вы сможете пройти fast-интервью и при успешном прохождении получить оффер. Чем предстоит заниматься?

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

Присоединяйтесь к команде SberDevices, которая создает голосовые продукты, умные устройства, виртуальных персонажей и другие интересные проекты:
• Поисковый сервис SmartSearch
• Краудсорсинговую платформу TagMe для разметки данных
• Intelligent Document Processing – продукты для решения задач обработки неструктурированного контента
• Мультимодальную нейросетевую модель GigaChat.

Работа в крупнейшем IT-сообществе ждет вас. Все, что нужно сделать – зарегистрироваться на One Day Offer и готовиться к интервью.

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

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

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

👉Подписаться👈

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

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

Трехчасовой курс погрузит вас в тему на примере реального проекта: от сбора данных до деплоя, с использованием самых современных инструментов, включая ZenML, MLflow и различные библиотеки MLOps.

📺 Смотреть

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🎙Серия языковых и платформенных выпусков подкаста Podlodka пополнилась интересной темой про язык TypeScript, который настолько глубоко проник во фронтенд-экосистему, что JavaScript де-факто зависит от него.

Андрей Старовойт, тимлид команды WebStorm в JetBrains, который много лет занимался поддержкой TypeScript в IDE, рассказал всё про принципы дизайна языка, устройство системы типов, экосистему и известные проблемы.

⏯️ YouTube | Apple Подкасты | Google Подкасты | Яндекс Музыка

#подкасты

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

⚡️Свершилось: канал с книгами только по C#

Мы создали для вас канал с книгами по C#, куда будем публиковать самые полезные книги по C#, F#, .NET и ASP.NET. Подписывайтесь!

👉Книги для шарпистов | C#, .NET, F#

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🤔 Как вкатиться в Machine Learning с нуля за ноль рублей? Универсального ответа нет, но можно опереться на опыт других айти-специалистов.

👾 Лаида Кушнарева, старший Академический Консультант в Huawei (AI Foundation and Algorithm Lab), делится своим мнение о том, что, где и в какой последовательности изучить.

👉 Читать

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

Когда ИИ станет настоящим конкурентом человека?

На конференции «Импульс Т1», организованной Холдингом Т1, Пётр Басин, эксперт по исследованиям пользовательского опыта из Группы «Иннотех», поделился размышлениями на эту тему.

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

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

Такая сложная технология, как генеративный ИИ, может представлять определенные риски, например, помогать злоумышленникам, поэтому мир пытается контролировать развитие ИИ.

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

Конференция «Импульс Т1» собрала вокруг себя множество интересных спикеров и докладов про технологии. Больше ИТ-новостей и экспертных мнений читайте здесь

Реклама. ООО «Т1», ИНН 7720484492

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

🔤 Азбука SQL в примерах. Часть 2. Ограничения, которые упрощают жизнь

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

🔗 Читать статью
🔗 Зеркало

Читать полностью…
Подписаться на канал