Библиотека джависта | Java, Spring, Maven, Hibernate
24.9K subscribers
1.86K photos
38 videos
42 files
2.64K links
Все самое полезное для Java-разработчика в одном канале.

Список наших каналов: https://yangx.top/proglibrary/9197

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

По рекламе: @proglib_adv

РКН: https://gosuslugi.ru/snet/67a5bbda1b17b35b6c1a55c4
加入频道
Как классическая классификация ML помогает в реальном мире

🤖 Классификация в ML — это метод обучения, в котором модель обучается на размеченных данных и предсказывает, к какому классу относится новый объект.

Фильтрация спама – чтобы в почте оставалось только важное.
Рекомендации фильмов – Netflix знает, что ты любишь!
Кредитный скоринг – банки решают, дать ли тебе займ.
Предсказание мэтчей – как на нашем вебинаре по speed dating.

14 февраля мы разберём на практике задачу классификации:

- Как выбрать оптимальные признаки

- Что делать с несбалансированными данными

- Как интерпретировать результаты модели

🔥 Если уже работаешь с ML или только начинающий программист – приходи на наш вебинар, в котором мы разберем «как предсказывать мэтч на speed dating» .

Приходи!
💸 Amplicode становится платным (и остается бесплатным)

С апреля прошлого года Amplicode радовал разработчиков бесплатными инструментами для работы со Spring Boot. Теперь команда объявила, что с 15 апреля часть функционала станет доступна по подписке.

Но не волнуйтесь: базовые возможности останутся бесплатными, а новые платные функции помогут сэкономить еще больше времени и сил.

🔗 Подробнее в статье
Please open Telegram to view this post
VIEW IN TELEGRAM
#дайджест #Javadevjob

Вакансии Java разработчиков уровня Junior

▪️ Java Developer
Удалёнка, Prooftech IT

▪️ Java Developer
Гибрид (Санкт-Петербург), Юниверс Дата

Вакансии Java разработчиков уровня Middle

▪️ Java-разработчик
Гибрид (Москва) / Удалёнка (РФ), 1С

▪️ Java-разработчик
Удалёнка / Гибрид (Москва), Swordfish Security

Вакансии Java разработчиков уровня Senior

▪️ Java-разработчик
Удалёнка / Гибрид (Москва), Notamedia

▪️ Java Developer
Удалёнка, Клевертек

Понравились вакансии?
❤️ — да
🤔 — нет
🆕 Метод HTTP QUERY

В спецификации HTTP планируют добавить новый метод — QUERY. Его задача — решить проблему перегруженных GET-запросов, когда в URL передается слишком много параметров. Длина строки запроса при этом может достигать пределов, установленных сервером или клиентом.

Порой разработчики обходят ограничение, используя POST и передавая параметры в теле запроса, что нарушает семантику HTTP. QUERY предлагает альтернативу: он работает как GET, но позволяет передавать параметры в теле запроса.
Please open Telegram to view this post
VIEW IN TELEGRAM
Как применять сторителлинг на IT-собеседовании

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

➡️ Что внутри статьи:

▪️ Почему сторителлинг работает лучше сухого перечисления навыков.

▪️ Советы по созданию историй для IT-собеседований.

▪️ Готовые примеры успешных историй.

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

🔵 Чтобы подготовиться к IT-собеседованию, попробуйте наш курс «Алгоритмы и структуры данных»
Please open Telegram to view this post
VIEW IN TELEGRAM
💬 Используете Lombok в своих проектах?

🔥 — Да, это маст-хэв
🎉 — Иногда
⚡️ — Нет, пишу руками
🤔 — Что такое Lombok?
👾 — Был опыт, но отказался
Please open Telegram to view this post
VIEW IN TELEGRAM
Самые полезные каналы для программистов в одной подборке!

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

🔥Для всех

Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
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++

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

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

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

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

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

* Организация Meta запрещена на территории РФ
⚡️ Параллельные стримы: ускорение или нет?

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

Добавление parallelStream() бездумно — это не "оптимизация", а лотерея с шансом на баги и падение.

Когда не использовать

— При небольшом наборе данных (<10 000 элементов) затраты на управление потоками могут превышать прирост скорости.
— Операции sorted(), distinct() или limit() требуют полного знания данных, что снижает эффективность параллельного выполнения.
— Вложенные parallelStream() в CompletableFuture или ExecutorService могут привести к конкуренции за ресурсы и неожиданному падению производительности.

✔️ Когда использовать

— Обработка больших объёмов данных (100 000+ элементов).
— Операции независимы и ресурсоёмки, например, сложные вычисления, парсинг файлов, загрузка данных из сети.

🔍 Важная особенность

parallelStream() использует ForkJoinPool.commonPool(). Если есть другие задачи, использующие этот же пул, они могут начать конкурировать за потоки, замедляя всё приложение.

💬 Делитесь в комментах интересными кейсами
Please open Telegram to view this post
VIEW IN TELEGRAM
🧩 Что такое Service Discovery

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

🛠 Как это работает

1. Каждый сервис регистрируется в реестре сервисов при запуске.

2. Регулярно отправляет сигналы keep-alive, подтверждая свою работоспособность.

3. Другие сервисы запрашивают реестр, чтобы узнать, где находится нужный им сервис.

Способы настройки реестра

1️⃣ Клиентское обнаружение. Клиент сам запрашивает реестр и выбирает нужный сервис.

2️⃣ Серверное обнаружение. Клиент делает запрос на балансировщик нагрузки, который сам перенаправляет его на рабочий экземпляр сервиса.

➡️ Подробнее про Service Discovery

🐸Библиотека devops'a
Please open Telegram to view this post
VIEW IN TELEGRAM
📊 Как себя чувствует IT-рынок в 2025 году?

Друзья, запускаем важное исследование рынка труда в IT!

Нам очень важно понять:

• Как изменились зарплаты
• Что происходит с наймом
• Есть ли сокращения или рост

🔐 Опрос полностью анонимный
⏱️ Займёт всего 3-5 минут
📈 Результаты опубликуем в подробной статье

Ваши ответы помогут составить реальную картину происходящего в индустрии.

🔗 Пройти опрос
Please open Telegram to view this post
VIEW IN TELEGRAM
🏗 🔨 Как не сломать продакшен: 8 основных паттернов распределенных систем

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

В статье рассматриваются ключевые шаблоны, помогающие строить надёжные и эффективные распределённые системы.

➡️ Читать статью

🐸Библиотека devops'a
Please open Telegram to view this post
VIEW IN TELEGRAM
😳 Если бы языки программирования были девушками

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

Мы заглянули в Тиндер разработчика и нашли там Java. Как вам? 😏

Еще больше прекрасных дам языков программирования — в нашем канале Библиотека программиста

Свайпайте и выбирайте свой мэтч ❤️
🛡 Что такое JWT?

JWT (JSON Web Token) — это компактный формат токенов для безопасной передачи данных между сторонами. Используется для аутентификации и авторизации, особенно в веб-приложениях.

🔹 JWT состоит из трёх частей, разделённых точками

1️⃣ Header — тип токена и алгоритм подписи (например, HMAC или RSA).
2️⃣ Payload — полезная нагрузка (данные, например userId, roles).
3️⃣ Signature — цифровая подпись для защиты от подделки.

⚙️ Как работает

Клиент аутентифицируется, сервер создаёт JWT и отдаёт его клиенту. Затем при каждом запросе клиент передаёт JWT в заголовке Authorization: Bearer <token>. Сервер проверяет подпись и, если токен валиден, разрешает доступ.

⚠️ JWT самодостаточен: сервер не хранит состояние токенов.

💬 Используете JWT в своих проектах?
Please open Telegram to view this post
VIEW IN TELEGRAM
⚠️ В машинном обучении, как в любви: слишком идеальные предсказания – это подозрительно!

Когда модель слишком прилипчива к тренировочным данным, результат оказывается… ну, как в отношениях, когда всё кажется идеальным, но реальность ломает сердце.

Оверфиттинг (Overfitting) – модель так хорошо запомнила тренировочные данные, что на реальных данных начинает путаться.
💔 В любви: «Я выбрал идеального партнёра по профилю, а в жизни выяснилось, что его «идеальность» – всего лишь иллюзия!»

Андерфиттинг (Underfitting) – модель обучена настолько поверхностно, что предсказывает мэтчи случайным образом.
💔 В любви: «Мне нравятся только люди с именем Александр, а всех остальных я даже не замечаю – бедный фильтр!»

Неправильный выбор фичей (Feature Selection Fail) – если модель опирается на неважные признаки, она предсказывает мэтчи хуже случайности.
💔 В любви: «Ты любишь авокадо? Значит, мы созданы друг для друга!» – а потом оказывается, что это вовсе не про важное.

🎯 На вебинаре мы разобрали, как избежать этих ошибок и создать работающую модель для speed dating, которая на самом деле помогает находить любовь! Вчера мы не просто говорили о любви – мы её предсказывали!

🔥 Спасибо всем, кто был с нами и участвовал!

💘 Как же это было?

Если ты пропустил вебинар или хочешь пересмотреть запись – просто перейди по [ссылке] и получи видео 😉
🤫 Заговор разработчиков против корпораций

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

Предупрежден - значит вооружен.

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

🔗 Подробнее в статье
Please open Telegram to view this post
VIEW IN TELEGRAM