proglibrary | Technologies

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

77043

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

Subscribe to a channel

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

Эволюция микросервисной архитектуры Airbnb за последние 15 лет: иллюстрация от ByteByteGo (Alex Xu) по мотивам этого выступления на конференции

⏱Микросервисная архитектура Airbnb прошла три основных этапа и продолжает развиваться:

1️⃣Монолит (2008 — 2017)
Сайт Airbnb начинался как простая торговая площадка для хозяев и гостей. Это был огромный монолит на Ruby on Rails.

📌В чем проблема?
— проблемы масштабирования;
— медленный деплой;
— снижение скорости разработки.

2️⃣Микросервисы (2017 — 2020)
Микросервис был призван решить эти проблемы. В микросервисной архитектуре было 4 ключевых сервиса, которые находились за API gateway:
— fetching сервис;
— сервис бизнес-логики;
— workflow сервис;
— UI aggregation сервис.

📌В чем проблема?
Разработчикам было трудно управлять сотнями сервисов и зависимостей.

3️⃣Микро+макросервисы (2020 — настоящее время)
Над этим сейчас работает Airbnb. Гибридная модель микро- и макросервисов фокусируется на унификации API.

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

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

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

👨‍💻 9 мифов об IT и найме айтишников

Развеиваем мифы об ИТ-специалистах, их зарплате, востребованности и процессе найма.

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

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

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

🤖 8 лучших бесплатных курсов по ИИ и глубокому обучению

Расскажем о самых интересных и эффективных курсах, которые помогут начать карьеру AI/ML-разработчика. Ниже — подборка курсов, остальные детали читайте в статье.

👨‍🎓 Введение в искусственный интеллект
👨‍🎓 Основы машинного обучения
👨‍🎓 Быстрый старт в искусственный интеллект
👨‍🎓 Введение в Data Science и машинное обучение
👨‍🎓 ИИ для всех (AI for Everyone)
👨‍🎓 IBM Сертификат инженера по искусственному интеллекту (IBM AI Engineering Professional Certificate)
👨‍🎓 Сборник лекций Инженерной школы Стэнфордского университета
👨‍🎓 Полный курс машинного обучения (CS229 Стэнфордского университета)

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

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

🧰 Измерение производительности Git с помощью OpenTelemetry

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

🔍С помощью инструмента вы сможете определить формы данных, которые приводят к ухудшению производительности, заранее заметить проблемные тенденции и понять, где собственную производительность Git необходимо улучшить. Узнайте подробнее, как использовать новый опенсорсный компонент-приемник Trace2 и OpenTelemetry для сбора и визуализации телеметрии из ваших команд Git.

👉 Читать

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

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

Ищем IT-специалистов, желающих поговорить o SQL

Заполните анкету – https://forms.gle/7X6kuAbE93ckBYcX7
Мы напишем вам, чтобы договориться о времени😉

Кого ищем?
Специалистов, которые учатся SQL самостоятельно и планируют углубить свои знания.

Зачем нам это нужно?
Мы собираемся запускать новый продукт по SQL, хотим сделать его максимально полезным и отвечающим потребностям клиентов.

Как будет проходить?
Длительность до 30 минут в формате онлайн, в удобное для вас время.
Мы пообщаемся про реальные задачи связанные с базами данных и вариантах обучения.

Чего точно не будет:
Никаких продаж с нашей стороны.

Благодарность:
Всем участникам интервью мы дадим в подарок курс по Machine learning c практикующим преподавателем из Stripe.

Приходите, будет уютно🙌

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

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

— Она: как долго ты будешь программировать?

— Он (разработчик): несколько минут... я хочу пофиксить один баг

#юмор

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

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

Почему экосистема фронтенда настолько сложна?

📌Основные тезисы из статьи, которая подчеркивает боль всех фронтендеров:

🤯Нет единой системы импортов: ESModules, CommonJS, Asynchronous Module Definition (AMD), Universal Module Definition (UMD)
🤯Многочисленные шаги минификации, траспиляции
🤯Совершенно разные условия запуска кода: разные версии браузеров, server side, client side и т. д.
🤯Слишком многие фронтенд-инструменты полагаются на определенную структуру файлов в проекте
🤯Configuration hell: огромное количество инструментов, которые нужно как-то подружить между собой
🤯Из-за множества слоёв преобразования затруднён hot reload

💬Согласны с автором?

👍 — в точку
🤔 — нет, я не испытываю таких проблем при разработке

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

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

📊 Опрос о состоянии WebAssembly (Wasm) за 2023 год завершен, результаты получены ... и они очень увлекательны!

👉 Читайте полный отчет или основные моменты в нашей подборке:

🔹Использование Rust и JavaScript продолжает расти, но некоторые более заметные изменения происходят немного ниже — Swift и Zig увеличивают свою популярность
🔹Желание разработчиков использовать Zig, Kotlin и C# превышает текущее использование
🔹Wasm по-прежнему чаще всего используется для разработки веб-приложений, но серверные решения также набирают популярность, как и использование Wasm в качестве окружения для плагинов
🔹Потоки, сборка мусора и относительно новое предложение по компонентной модели — это разработки Wasm, которые наиболее интересуют людей
🔹Что же касается WASI, то наибольший интерес привлекают предложения по I/O (например, HTTP, файловая система)
🔹Многие респонденты поделились тем, что ожидают от Wasm выполнения обещания "write once and run anywhere", которое первоначально было дано Java

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

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

🤩От шаверма-бота до игры в слова

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

И есть немало примеров, когда такие пет-проекты становились не только полем развития навыков разработчика, но и коммерческой идеей. Ребята из Selectel собрали шесть подобных задач — для вдохновения и прокачки навыков.

🐍 Shawarma as a service
🐍 «Minecraft» на Python
🐍 Мод для Cyberpunk 2077
🐍 Динозаврик Google на тачбаре
🐍 Рускоязычная игра в слова с ИИ
🐍 Тетрис в QR-коде

#оффтоп

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

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

📈Каким бы противоречивым ни был индекс TIOBE, который отслеживает показатель популярности языков программирования, но согласно ему C# потихоньку обгоняет Java.

«Разрыв между C# и Java никогда не был таким маленьким», — говорится в последнем выпуске. «В настоящее время разница составляет всего 1,2 процента, и если тенденция сохранится, C# превзойдёт Java примерно через 2 месяца».

📌Почему этим данным можно верить?

💬Снижение популярности Java может быть вызвано решением Oracle ввести модель платного лицензирования после Java 8 и ростом популярности Kotlin. .NET/C# в свою очередь повернулся в сторону открытого исходного кода и сообщества.

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

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

⚡️ Полный релиз бесплатного интерактивного 700-страничного учебника по тестированию

Спустя полтора года работы восьми айтишников с суммарным опытом в IT 130 лет достигнут результат в виде учебника по тестированию, которого еще никто и никогда не делал.

🚀700+ страниц без учета картинок — один из самых полных источников по тестированию
🚀Интерактивный — более 40 наборов встроенных тестов (если не прошел тест, то к следующей теме не перейти) и 40 ДЗ
🚀На русском и полностью бесплатный

100-Year QA-Textbook включает 42 модуля (130 занятий), 42 набора онлайн-тестов, 700+ страниц базовых знаний, посвященных тест-дизайну, работе с требованиями, тестовой документации, тестированию на всех уровнях и локализации дефектов в трехзвенной архитектуре, базам данных, Linux, сетям, методологиям разработки и другим полезным для новичков темам. Опытные специалисты могут просто «прогнать тесты» учебника и при обнаружении провалов/забытого быстро освежить знания.

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

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

Проверка функциональности системы на практике: наглядное объяснение от ByteByteGo (Alex Xu)

1️⃣Модульное тестирование
2️⃣Интеграционное тестирование
3️⃣Тестирование системы
4️⃣Нагрузочное тестирование
5️⃣Тестирование на ошибки
6️⃣Автоматизация тестирования

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

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

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

🛡️ 8 способов защиты от манипуляций на работе

Столкнулись с эмоциональным давлением на работе? Рассказываем, как действуют манипуляторы, и как обезопасить себя.

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

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

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

🔥 Участвуйте в исследовании от Proglib и получите скидку на новые курсы

Как мы уже писали, скоро в Proglib.Academy появятся новые курсы. Первый из них будет посвящен языку запросов и базам данных.

Если вы разработчик, Data-аналитик, техлид, QA-инженер или просто понимаете, что время SQL пришло — наш курс именно для вас.

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

Интервью будет проходить в онлайн-формате (25 минут) в ламповой и позитивной обстановке. Мы представим наши идеи и наработки, а также поговорим о ваших целях обучения.

🎁 Каждый участник получит 15-процентную скидку на будущий курс или новый курс по Machine Learning в подарок!

👉 Для записи заполните анкету тут.

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

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

🐍 Где изучать Python в 2023 году: 75 ресурсов для начинающих

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

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

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

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

🤩 Гайды с кликабельными иллюстрациями — отдельный вид искусства. Особенно когда они рассказывают про не самые очевидные вещи в программировании или информатике.

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

🔢 Хеширование
🤯 Выделение памяти
🏄 Балансировка нагрузки

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

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

Если вы проектируете сложные системы, вам понравятся диаграмма последовательности

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

🚀Отобразить рабочие процессы системы от начала до конца
🔍Объяснить взаимодействие между компонентами
📚Создать ясную и сжатую документацию
🔧Выявить недостатки дизайна архитектуры

👉 Один из инструментов, который поможет легко создать диаграммы последовательностей с помощью текста: WebSequenceDiagrams.

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

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

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

🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

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

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

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

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.

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

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

📊 Эффективная работа с JSON в Go

В статье рассматриваются основные подходы для работы с JSON в языке Go. Большое внимание уделено определениям из документации, а также конкретным примерам.

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

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

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

👩‍💻 Conventional Commits является соглашением о структуре сообщений коммитов, которое предлагает простой и понятный набор правил для создания истории изменений. Это помогает в написании ясных сообщений коммитов, которые облегчают процесс создания и поддержки открытых и закрытых исходных кодов.

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

1️⃣Структурированный формат: каждое сообщение коммита следует определенному формату:

<type>[optional scope]: <description>

[optional body]

[optional footer(s)]

, где

type обозначает тип изменений (например, feat, fix, chore).
scope является необязательным и указывает часть проекта, к которой относится коммит (например, компонент или файл).
description — краткое описание сделанных изменений.

2️⃣Семантическое версионирование: поддерживает семантическое версионирование, позволяя автоматически генерировать версии и записи изменений.

3️⃣Четкое разделение: помогает разделять различные типы изменений для более четкого понимания и организации истории изменений.

4️⃣Автоматизация: позволяет разработчикам использовать скрипты для автоматизации различных частей рабочего процесса разработки, таких как генерация заметок о выпуске или определение следующей версии.

5️⃣Совместимость с другими системами: соглашение обеспечивает совместимость с другими системами и инструментами, которые могут обрабатывать семантику сообщений коммитов.

#советыдляразрабов

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

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

🤔А что дальше, искусственный интеллект?

Reuven M. Lerner, преподаватель и автор онлайн-курсов по Python и Pandas, поделился историей одной несостоявшейся рекламной кампании.

Он разместил рекламу курсов на Facebook (Meta*) и забыл про неё. Спустя год увидел, что учётная запись заблокирована за несоблюдение политики платформы на пожизненный срок.

Знаете почему? Дело в том, что решение о блокировке и отмене апелляции принимали боты, которые приняли рекламу курсов за продажу настоящих питонов и панд 🤦

*организация, деятельность которой запрещена на территории РФ

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

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

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

Решение — добавлять уникальную соль к паролю, что позволит получить уникальный результат хеширования для каждого пароля. И если даже вашу базу взломают, алгоритм формирования пары пароль + соль никто не узнает 🤷‍♂️

📌Как в таком случае проверить пароль?

1️⃣Пользователь вводит пароль.
2️⃣Система извлекает соответствующую соль из БД.
3️⃣Система добавляет соль к паролю и хеширует его. Назовем хешированное значение H1.
4️⃣Система сравнивает H1 и H2, где H2 — это хеш, хранящийся в базе данных. Если они одинаковы, пароль действителен.

👉 Более детально данный вопрос рассмотрен в визуальном руководстве.

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

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

💥Хотите увидеть, как серверы падают из-за неправильной обработки повторных запросов?

Sam Rose для блога Encore создал интерактивный гайд, в котором исследует различные методы повтора запросов к серверу и показывает, почему одни методы лучше других. В качестве бонуса — небольшая реализация идеальной стратегии на Go.

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

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

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

Всё, что для этого нужно — принять участие в One day offer от разработчика офисного ПО МойОфис. Ищут: 
— бэкенд-разработчика Go с опытом разработки на Golang от 3 лет, навыками конкурентного и асинхронного программирования и работы с noSQL базами данных;
— разработчика C++ с опытом работы от 3-х лет, хорошим знанием C++ 11/4, STL, Boost, QT и владеющего техническим английским.

Обещают интересные задачи, конкурентную заработную плату, полный соцпакет с приятными бонусами и возможность реализовать свои идеи вместе с командой профессионалов. И всё это без долгих собеседований! Подайте заявку до 13 ноября и получите приглашение на техническое онлайн-собеседование, которое пройдет 25 ноября. Результаты объявят уже в тот же вечер (до 23:59 мск). 

Все подробности тут.

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

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

💬 Какие технологии/фреймворки/ЯП/стеки, по вашему мнению, будут доминировать в индустрии разработки в ближайшие пять лет?

#холивар

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

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

📈Компания Sonatype, специализирующаяся на защите от атак на цепочки поставок, опубликовала результаты исследования (62 стр.) проблем с зависимостями и сопровождением открытых проектов на Java, JavaScript, Python и .NET, представленных в репозиториях Maven Central, NPM, PyPl и Nuget.

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

💬Страшные цифры, которые каждый год приводят к страшным последствиям. Кстати, вы анализируете сторонние зависимости? Если да, то как?

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

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

Интенсив «Архитектуры и шаблоны проектирования» для middle и senior-разработчиков

Проверьте свои знания, ответив на 8 вопросов – https://proglib.io/w/68a66cf6

🧐 Кому подойдет?

Разработчикам, которые знают любой объектно-ориентированный язык программирования.

🧐 Как проходит обучение?

В течение всего интенсива вы будете создавать игру «Звездные войны». У вас будет собственный корабль, который научится летать по полю битвы, стрелять основным оружием и применять секретное оружие.

👉 Подробная программа обучения

👉 Купить со скидкой 30%

Промокод MIDDLE действует до 25 октября

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

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

🍏📚 ТОП-7 книг по Swift и iOS-разработке в 2023 году

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

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

#книги

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

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

👀Ловите весь плейлист и подборку топовых докладов:

📺Как отдавать технический долг / Олег Федоткин (СберМаркет)
📺Тестирование умерло. Да здравствует Тестирование! / Артем Ерошенко (Qameta Software)
📺Под капотом SAST: как инструменты анализа кода ищут дефекты безопасности / Сергей Васильев
📺Архитектура — зеркало корпоративных ценностей / Екатерина Лысенко (Самокат)
📺Гранулярность микросервисов. Как мелко нарезать? / Руслан Сафин (Биндюсофт)

💡Также смотрите интересный доклад Кирилла Мокевнина (2021 год) на тему «Как мы ушли от локальной разработки в облака и что выиграли».

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

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

🤖ChatGPT теперь умеет анализировать интернет за вас, чтобы предоставлять актуальную и достоверную информацию с прямыми ссылками на источники.

🚀Чат-бот больше не ограничивается данными до сентября 2021 года. Новая фича называется Browse with Bing.

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

Читать полностью…
Subscribe to a channel