😎 Вы просили — мы сделали. Самый долгожданный анонс этого лета!
Мы открываем набор на второй поток курса «AI-агенты для DS-специалистов»!
На курсе мы учим главному навыку 2025 года: не просто «болтать» с LLM, а строить из них рабочие системы с помощью Ollama, RAG, LangChain и crew.ai.
📆 Старт потока — 15 сентября.
💸 Цена 49 000 ₽ действует только в эти выходные — до 17 августа. С понедельника будет дороже.
👉 Занять место
Мы открываем набор на второй поток курса «AI-агенты для DS-специалистов»!
На курсе мы учим главному навыку 2025 года: не просто «болтать» с LLM, а строить из них рабочие системы с помощью Ollama, RAG, LangChain и crew.ai.
📆 Старт потока — 15 сентября.
💸 Цена 49 000 ₽ действует только в эти выходные — до 17 августа. С понедельника будет дороже.
👉 Занять место
❤1😁1
🔹 Spring Debugger: Working With Dynamic Database Connections Just Got Simpler
При запуске Spring-приложения или тестов в режиме отладки этот плагин автоматически находит и регистрирует в секции DataSource подключения к БД, которые были подняты в Testcontainers
🔹 An Introduction to Jakarta Persistence 3.2 by Examples
Статья о нововведениях Jakarta Persistence 3.2. Несмотря на минорное обновление, фич добавили много.
🔹 RESTful API Guidelines
Статья о распространенных ошибках в REST API — несогласованные URIs, неверное использование HTTP-методов и кодов, отсутствие версионирования и стандартов.
#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2❤1👍1
Forwarded from Библиотека задач по Java | тесты, код, задания
Что выведется в консоль при запуске?
Anonymous Quiz
17%
CommandLineRunner, затем PostConstruct
19%
Только PostConstruct
51%
PostConstruct, затем CommandLineRunner
4%
Только CommandLineRunner
9%
Посмотреть ответ
🔥4❤1👍1
Java-разработчик — от 220 000 ₽ — удалёнка
Программист Kotlin (бэкэнд) Middle/Senior — от 150 000 до 300 000 ₽ — удалёнка
Java Developer — 300 000 — 450 000 ₽ — гибрид (Москва, Санкт-Петербург, Екатеринбург, Нижний Новгород, Казань, Новосибирск, Симферополь, Минск)
Senior Java разработчик — удалёнка
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍1🔥1🥱1
🚀 Индексы в PostgreSQL
Когда сервис начинает работать с десятками миллионов строк, простое findById уже не выглядит «мгновенным». Тут в игру вступают индексы.
🔍 Что такое индекс
Индекс в PostgreSQL — это отдельная структура данных, которая позволяет находить строки намного быстрее, чем полный перебор таблицы.
⚡️ Типы индексов и когда применять
— B-Tree (по умолчанию)
Отлично работает для операций =, <, >, ORDER BY.
Частый кейс: поиск по id, created_at, username.
— GIN (Generalized Inverted Index)
Для jsonb, массивов и полнотекстового поиска.
Например, поиск по тегам или WHERE metadata @> '{"os":"android"}'.
— GiST (Generalized Search Tree)
Для геоданных, поиска по диапазонам (tsrange, daterange).
— Hash Index
Для очень быстрого поиска по точному совпадению, но реже нужен (B-Tree почти всегда быстрее).
⚠️ На что обратить внимание
— Индекс ускоряет SELECT, но замедляет INSERT/UPDATE/DELETE (нужно обновлять и таблицу, и индекс).
— Слишком много индексов = «смерть от оптимизации». Держите баланс.
— Никогда не делайте индексы «на всё подряд». Индекс должен соответствовать реальным запросам.
💬 А вы чаще оптимизируете запросы через индексы или через переписывание логики?
🐸 Библиотека джависта
#буст
Когда сервис начинает работать с десятками миллионов строк, простое findById уже не выглядит «мгновенным». Тут в игру вступают индексы.
🔍 Что такое индекс
Индекс в PostgreSQL — это отдельная структура данных, которая позволяет находить строки намного быстрее, чем полный перебор таблицы.
⚡️ Типы индексов и когда применять
— B-Tree (по умолчанию)
Отлично работает для операций =, <, >, ORDER BY.
Частый кейс: поиск по id, created_at, username.
CREATE INDEX idx_user_email ON users(email);
— GIN (Generalized Inverted Index)
Для jsonb, массивов и полнотекстового поиска.
Например, поиск по тегам или WHERE metadata @> '{"os":"android"}'.
CREATE INDEX idx_logs_metadata ON logs USING gin (metadata jsonb_path_ops);
— GiST (Generalized Search Tree)
Для геоданных, поиска по диапазонам (tsrange, daterange).
CREATE INDEX idx_places_geom ON places USING gist (geom);
— Hash Index
Для очень быстрого поиска по точному совпадению, но реже нужен (B-Tree почти всегда быстрее).
CREATE INDEX idx_sessions_sid ON sessions USING hash (session_id);
⚠️ На что обратить внимание
— Индекс ускоряет SELECT, но замедляет INSERT/UPDATE/DELETE (нужно обновлять и таблицу, и индекс).
— Слишком много индексов = «смерть от оптимизации». Держите баланс.
— Никогда не делайте индексы «на всё подряд». Индекс должен соответствовать реальным запросам.
#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥3❤1🤔1