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

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

77025

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

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

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

🔤 Азбука SQL в примерах. Часть 3. Обрабатываем результаты и делаем сложные запросы

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

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

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

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

📈 9 главных трендов в разработке фронтенда в 2024 году

В статье разбираем самые популярные языки, технологии, инструменты и архитектурные концепции:

1️⃣ JavaScript — по-прежнему бесспорный лидер
2️⃣ TypeScript набирает популярность
3️⃣ Прогрессивные веб-приложения (PWA) стали стандартом
4️⃣ Микрофронтенды (Micro Frontends) — микросервисы на фронтенде
5️⃣ Feature-Sliced Design — оптимальная архитектура
6️⃣ Jamstack — статические сайты, неотличимые от динамических
7️⃣ SWC — супербыстрый транспайлер
8️⃣ Backend-driven UI — интерфейс, управляемый бэкендом
9️⃣ Использование ИИ на всех этапах разработки фронтенда

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

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

🌳Решение задачи про вырубку деревьев

Обозначим расстояние между деревьями после вырубки d. Тогда существует n – d х (m – 1) – m + 1 способов вырубить деревья. Чтобы найти все варианты, нужно просуммировать способы по всем d. Кроме того, нужно учесть 2 частных случая – когда количество оставшихся после вырубки деревьев равно 0 или 1.

1️⃣ вариант:

n, m = list(map(int, input().split()))
trees = 0
if m == 0:
trees = 1
elif m == 1:
trees = n
else:
for d in range(1, n):
trees += (n - d) // (m - 1)
print(trees)

2️⃣ вариант:
n, m = map(int, input().split())
trees = 0
if m == 0:
trees = 1
elif m == 1:
trees = n
else:
for d in range(1, (n - 1) // (m - 1) + 1):
trees += n - (m - 1) * d
print(trees)


👉Ещё четыре олимпиадных задачи с решениями ищите в нашей статье👈

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

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

🛠️ Better Commits — CLI-инструмент для написания коммитов в соответствии с соглашением Conventional Commits, которое предлагает простой и понятный набор правил для создания истории изменений (писали подробнее здесь).

👉 cz-cli — аналогичный инструмент с бОльшим количеством звезд, но с менее активной поддержкой

#инструменты

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

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

💡От Big Bang до Canary: шпаргалка с ключевыми стратегиями деплоя ПО

☑️ Big Bang
☑️ Rolling
☑️ Canary
☑️ Blue-Green
☑️ A/B тестирование
☑️ Shadow
☑️ Immutable
☑️ Feature Toggle

👉 Читайте на Medium или в PDF (файл в комментариях)

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

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

🤯🔥Сеньор немного накосячил на проде...

Сам виноват, но быстро исправился и не потерял атмосферу!

#юмор

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

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

💰IT-специалистам в РФ с большим стажем предложили выдавать звание «Ветерана труда»

10 января 2024 года СМИ сообщили, что депутат Госдумы Яна Лантратова предложила IT-специалистам в РФ с большим стажем трудовой деятельности выдавать звание «Ветерана труда».

В случае принятия предложения со стороны правительства, мужчины смогут получить новые льготы после 40 лет работы в IT-отрасли, а женщины — после 35 лет. Внутри: ежемесячные выплаты, компенсация за коммуналку и льготные проездные. Размер выплат и порядок предоставления льгот будут разными в зависимости от региона.

🤷‍♂️ И да, на картинке должен был быть мем, но мы его еще не придумали. Есть идеи?

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

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

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

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

🔥Для всех

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

#️⃣C#

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

☁️DevOps

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

🐘PHP

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

🐍Python

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

☕Java

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

👾Data Science

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

🦫Go

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

🧠C++

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

💻Другие профильные каналы

Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика

💼Каналы с вакансиями

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

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

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

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

* Организация Meta запрещена на территории РФ

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

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

🏃 Самоучитель по Go для начинающих. Часть 5. Условные конструкции if-else и switch-case. Цикл for. Вложенные и бесконечные циклы

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

👉 Читать статью
👉 Часть 1
👉 Часть 2
👉 Часть 3
👉 Часть 4

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

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

💡Как сделать неправильный код заметным: по мотивам статьи 2005 года от Joel Spolsky, автора Trello и сооснователя Stack Overflow

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

📌 Несколько примеров кода, основанных на материалах статьи:

1. Венгерская нотация для разделения безопасных и небезопасных строк:

✔️ Небезопасная строка (например, ввод пользователя): usUserInput
✔️ Безопасная строка: sSafeString

Пример использования:

char *usUserInput = getUserInput();
char *sSafeString = sanitizeInput(usUserInput);


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

Пример на C++:

struct SafeString { std::string value; };
struct UnsafeString { std::string value; };

SafeString sanitize(UnsafeString us) {
// ...
return SafeString{/* ... */};
}


3. Семантическая разница между похожими действиями:

✔️Явное разделение функций с похожими действиями, но разными последствиями.

Пример на Python:

def delete_file_safe(file_path):
# Безопасное удаление файла с проверками
pass

def delete_file_force(file_path):
# Принудительное удаление файла без проверок
pass


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

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

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

🛒 Несколько дней назад OpenAI официально запустила магазин кастомных чат-ботов GPT Store

В ноябре 2023 года OpenAI представила функцию GPTs, с помощью которой пользователи могут создавать кастомных чат-ботов. Сообщалось, что с её помощью можно добавлять специальные возможности, навыки и знания. Настройка чат-бота осуществляется с помощью текстового описания его роли. Кроме того, можно передать системе источник специфических данных.

В OpenAI подчеркнули, что лучшие решения могут появиться только благодаря усилиям сообщества. Поэтому вместе с GPTs анонсировали магазин GPT Store для общедоступной публикации пользовательских чат-ботов.

Функция GPTs и площадка GPT Store постепенно появятся у пользователей с платными подписками уровня Plus, Team и Enterprise. Кроме того, в первом квартале 2024 года станет доступна система денежного поощрения создателей кастомных чат-ботов, а корпоративные клиенты получат возможность создавать частные разделы в GPT Store.

👉 Источник

#новости

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

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

👨‍🎓Направления проектирования систем: шпаргалка для подготовки к собесу от ByteByteGo

☑️ Балансировка нагрузки
☑️ API Gateway
☑️ Протоколы связи
☑️ CDN
☑️ База данных
☑️ Кэш
☑️ Очередь сообщений
☑️ Генерация уникальных идентификаторов
☑️ Масштабируемость
☑️ Доступность
☑️ Производительность
☑️ Устойчивость к сбоям и восстановление
☑️ Безопасность и многое другое

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

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

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

🤔 ПО с открытым исходным кодом: что это, зачем нужно и как на этом заработать простому программисту и большой компании

🕐 00:00 Что такое опенсорс
🕐 00:36 Лицензии на код
🕐 05:28 Монетизация
🕐 12:33 Успешные примеры
🕐 16:00 Как выбрать идею
🕐 16:58 Открытый код от больших компаний

👉 Смотреть

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

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

🎉 Python и неопытные программисты: наши лучшие статьи за 2023 год

За 2023 год «Библиотека программиста» опубликовала 227 статей, и Питон второй год подряд в ТОПе.

Вот 5 самых популярных материалов (сохраняй, если не читал):

🐛 9 признаков неопытного программиста
😢 Обратная сторона медали: 9 причин, почему тебе не нужно идти в IT
🚩 Кому не подходит работа в IT: 6 красных флагов
🐍📚 ТОП-15 книг по Python для начинающих и опытных разработчиков в 2023 году
🐍 Самоучитель по Python для начинающих. Часть 11: Функции с позиционными и именованными аргументами

Ещё больше итогов года, а также ссылки на «Самоучитель по Python для начинающих» здесь 👈

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

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

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

🛠️ 17 суперинструментов для разработки фронтенда
🏃 Самоучитель по Go для начинающих: часть 3 + часть 4
 🔟🏢 ТОП-10 российских IT-работодателей
📁💡Где программисту взять идеи для портфолио
🐍📋 F-строки в Python для интерполяции и форматирования строк
🤖 Машинное обучение: что это такое и как оно работает
🌎 ТОП-10: рейтинг лучших зарубежных работодателей в IT
🐍🤖✍️ Документирование кода и проектов на Python с помощью ChatGPT
📈 Обзор рынка труда в ИТ: III квартал 2023 года
🐍⚙️ Python или Rust: что выбрать для анализа данных и машинного обучения
🧠🧩 Зачем айтишнику психолог?
🐍🧫 Создаём игру «Жизнь» Джона Конвея на Python
👨‍🎓 14 бесплатных ресурсов, которые пригодятся каждому разработчику
✍️ Почему отсутствие технической документации убьёт ваш проект?
❓👨‍💻 Вопросы для подготовки к собеседованию по JavaScript. Часть 1
🎄🎁 10 абсурдных подарков программисту на Новый год
😺🐙✅ Как разобраться в Git: краткая инструкция для джунов
🔥 12 признаков выгорания или как понять, что вам пора в отпуск
⚙️✅📕 Ответы на вопросы для самопроверки из книги «Тестирование Дот Ком» Романа Савина
🏦⚠️ Борьба с ошибками разработки ПО в финтехе

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

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

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

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

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

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

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

🤔 Rust ужасен или просто многословен? Решать вам!

Если хотите немного погрузиться в #rust, здесь есть отличное объяснение всех типов строк языка.

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

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

Если вы думаете, что всё готово, подумайте дважды

#жиза

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

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

Когда осознал, что 2024 год — високосный. А это значит, что придётся работать НА ОДИН ДЕНЬ БОЛЬШЕ.

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

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

🤖 Итоги недели в мире ИИ и обзоры новых сервисов

Мы написали статью на VC, которая основана на очередном выпуске нашей рассылки про последние новости и тенденции в мире ИИ. Залетайте и читайте!

👇Ниже — мини-подборка из статьи 👇

📰 Новости

▫️ OpenAI объявила о запуске долгожданного магазина кастомных чат-ботов.
▫️ В Пасадене (штат Калифорния) открывается первая закусочная CaliExpress by Flippy, полностью управляемая ИИ.
▫️ NVIDIA выпустила модель для распознавания речи Parakeet, которая по всем показателям превосходит OpenAI Whisper.
▫️ Использование ИИ в совместном научном проекте Microsoft и Тихоокеанской северо-западной национальной лаборатории в течение недели помогло определить новый элемент, который поможет снизить на 70% использование лития в батареях. Без ИИ такое исследование заняло бы по меньшей мере 20 лет.
▫️ Компания ByteDance выпустила новую модель MagicVideo-V2 для генерации видео.

🛠 Инструменты

◾️ Auto Wiki — генерирует вики-документацию для GitHub репозиториев.
◾️ Code to Flow — визуализирует, анализирует и объясняет код, написанный на всех популярных языках и фреймворках.
◾️ Concepto — платформа для создания прототипов веб-приложений.
◾️ Afforai — выполняет суммаризацию, перевод и поиск по множеству документов.
◾️ Corgea — исправляет уязвимые фрагменты кода.
◾️ Jan — опенсорсный оффлайновый чат-бот.
◾️ Plus AI — плагин для Google Slides: делает профессиональные презентации, персональные и командные дашборды, любые отчеты.

🤙 Сделай сам

🔸 WikiChat — опенсорсный инструмент для коррекции галлюцинаций с помощью информации из Википедии.
🔸 Подробная шпаргалка и советы по созданию продвинутых RAG.
🔸 OpenVoice — опенсорный инструмент для мгновенного клонирования голоса.

🎓 Туториалы

🔹 Туториал по работе с новым API Query Pipelines показывает примеры создания простых линейных цепочек и сложных ациклических графов из модулей LlamaIndex.
🔹 Туториал по объединению LLM с помощью mergekit детально разбирает 4 основных метода объединения моделей.

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

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

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

Представьте: вас берут на новый проект, а там сплошной легаси-код. Ваши действия👇

👍 — останусь, разберусь и постараюсь развить его
🤔 — любым способом перейду в другой проект
🥱 — а где эта грань между легаси и нормальным проектом?
❤️ — свой вариант (напишу в комментариях)

#холивар

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

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

«Библиотека программиста» ищет контент-менеджера для ведения телеграм-каналов

Ищем человека, который грамотно пишет и разбирается в одной из этих тем:
👉С++
👉C#
👉DevOps

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

Подробнее о вакансии и форма для отклика — по ссылке.

Ждем вас в команде!

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

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

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

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

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

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

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

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

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

👨‍💻Шпаргалка по Git от GitHub, GitLab и Atlassian

#шпаргалки

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

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

🏖️ Синдром упущенного отпуска: почему так опасно игнорировать заслуженный отдых

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

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

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

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

💣 Кем вы видите себя через 5 лет: как отвечать на странные и неудобные вопросы на собеседовании

7 самых распространенных вопросов, которые точно задавали каждому из вас.

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

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

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

🧩 Как разместить резюме на GitHub Pages?

GitHub Pages — удобная платформа для размещения статических веб-страниц. На ней можно размещать любой контент, не нарушающий правила сервиса.

🧙‍♂️ Из преимуществ:

Размер сайта — до 1 Гб.
Объем трафика — 100 Гб в месяц.
Количество сборок в час — до 10.

Но, вместе с плюсами, есть и минусы. О них и обо всём другом в статье 👇

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

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

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

💡Шпаргалка по REST API для начинающих

📌 Шесть фундаментальных принципов, которые служат строительными блоками архитектуры REST API:

1️⃣ Клиент-серверная архитектура
2️⃣ Взаимодействие без сохранения состояния
3️⃣ Возможность кэширования
4️⃣ Многоуровневая система
5️⃣ Поддержка кода по требованию
6️⃣ Унифицированный интерфейс

👉 Читайте подробнее на Medium или в PDF (файл в комментариях)

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

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

🤔 Как Instagram увеличился до 14 миллионов пользователей силами троих инженеров?

С октября 2010 по декабрь 2011 года аудитория Instagram (принадлежит Meta*) увеличилась с 0 до 14 миллионов пользователей благодаря трём ключевым принципам и надёжному технологическому стеку:

1️⃣ Делать всё как можно проще
2️⃣ Не изобретать велосипед
3️⃣ По возможности использовать проверенные и надёжные технологии

👉 Подробнее

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

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

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

🍾 C# — язык программирования 2023 года по версии индекса TIOBE

Впервые в истории индекса TIOBE C# получил награду «Язык программирования года». C# входил в десятку лучших игроков на протяжении более двух десятилетий, а теперь, догоняя четыре языка, он получил заслуженную награду, став языком с самым большим ростом за год (+1,43%).

На втором месте Scratch (+0,83%) и Fortran (+0,64%). C# отнимает долю рынка у Java и становится все более популярным в таких областях, как бэкенд веб-приложений и геймдев (спасибо Unity).

И последнее: индекс TIOBE хоть и показывает тенденции развития языков программирования, выбор в пользу того или иного языка необходимо делать из следующих источников:

☑️ Опросы разработчиков от StackOverflow и JetBrains
☑️ Тренды Github
☑️ Тренды StackOverflow того, о чём спрашивают разработчики
☑️ Тренды Google того, что ищут разработчики

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