uk
Feedback
Уголок сельского джависта

Уголок сельского джависта

Відкрити в Telegram

Пишу на Java и Kotlin, иногда полную ерунду, люто топлю за Spring и чистую архитектуру. Консультирую. Чат: https://t.me/shurik_codes_group

Показати більше
2 044
Підписники
Немає даних24 години
+37 днів
+1930 днів
Архів дописів
Podlodka Techlead Crew – онлайн-конференция для техлидов и опытных инженеров, которая пройдет с 14 по 18 октября. Тема сезона
Podlodka Techlead Crew – онлайн-конференция для техлидов и опытных инженеров, которая пройдет с 14 по 18 октября. Тема сезона – "Проектируем надёжность". В программе много всего интересного, и вот несколько примеров: - Александр Поломодов (Т-Банк) и Олег Бондарь (Яндекс) расскажут о том, как закладывать надёжную архитектуру на старте, используя механизмы самоисцеления и повторных попыток. - Григорий Кошелев проведет публичное собеседование, в ходе которого проверит, насколько техлиды понимают важность надёжности систем. - Алексей Ужва объяснит, как мелкие проблемы и человеческие ошибки могут стать причиной крупных сбоев через месяцы эксплуатации. - Николай Тимонин разберёт, как Feature Toggles помогают гибко управлять функционалом и снижать риски. А еще в командах спроектируем надежную систему в рамках архитектурной каты. Подключайся и учись строить устойчивые системы! https://podlodka.io/techcrew А промокод сообщества techlead_crew_7_lBInOA даёт скидку еще в 500 руб🥳

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

📖 Вкратце о JVM, JRE и JDK Мир Java-разработки полнится аббревиатурами, и в этой статье я предлагаю разобраться, наверно, с самыми основными из них: JVM, JRE и JDK. 📖 Читать на сайте 📖 Читать в VK 📖 Читать на Telegraph 💬 Обсудить в Telegram Поддержать: 💵 В VK | 💵 В Boosty | 💵 Через Tinkoff #java #jvm #jre #jdk #openjdk

Программируешь, небось? ⌨️ Тогда с праздничком тебя и поменьше багов!
Программируешь, небось? ⌨️ Тогда с праздничком тебя и поменьше багов!

📖 CORS в Spring WebFlux Завершаю серию статей о CORS статьёй о поддержке CORS в реактивных веб-приложениях на основе Spring WebFlux. В статье рассматривается настройка поддержки CORS с Spring WebFlux, Spring Security и Spring Boot. В целом процесс очень похож на настройку поддержки CORS в веб-приложениях на основе Spring Web. 📖 Читать на сайте 📖 Читать в VK 📖 Читать на Telegraph 💬 Обсудить в Telegram Поддержать: 💵 В VK | 💵 В Boosty | 💵 Через Tinkoff #java #spring #cors

▶️ Ролики на Платформе Всем привет! Я по-тихоньку начал осваивать новый видео-хостинг — Платформу, создал канал, настроил внешний вид и описание, а также загрузил несколько роликов из вышедшего цикла о разработке проектов со Spring. Админка пока радует удобством и очень похожа на YouTube, да и в целом параллели с YouTube прослеживаются. Ролики грузятся и обрабатываются быстро, что тоже не может не радовать. А ещё есть возможность импортировать ролики со своего канала на YouTube, что очень удобно, но мои ролики пока в очереди. Но есть и свои подводные камни: в описании к ролику не может быть больше 10 ссылок, а в описании канала — максимум 4. Надеюсь, это ограничение будет ослаблено. Посмотрим, как будет работать продвижение контента, хотя я весьма скептично отношусь к отечественным площадкам в этом вопросе. Мой канал на Платформе: https://plvideo.ru/@shurik_codes или https://plvideo.ru/channel/TqocDuCGtOoQ Подписывайтесь! А ещё я хотел начать грузить контент на Nuum, но ему не нравится HEVC в MKV, а у меня все ролики записаны именно в этом формате, поэтому контент на Nuum появится позже, когда мне не лень будет заняться конвертированием роликов.

CORS в Spring Web В предыдущей статье я постарался вкратце объяснить, что такое протокол CORS и как он работает. В этой статье я предлагаю разобраться с настройками CORS на стороне Spring Web, Spring Security и Spring Boot. 📖 Читать на сайте 📖 Читать в VK 📖 Читать на Telegraph 💬 Обсудить в Telegram Поддержать: 💵 В VK | 💵 В Boosty | 💵 Через Tinkoff #java #spring #cors

Cross-Origin Resource Sharing (CORS) Наверняка большинство веб-разработчиков когда-то сталкивались с CORS при выполнении межс
Cross-Origin Resource Sharing (CORS) Наверняка большинство веб-разработчиков когда-то сталкивались с CORS при выполнении межсайтовых запросов из JavaScript. Причём на эти запросы либо приходили ответы со статусом 403 Forbidden, либо сам браузер отказывался работать с запросом или даже успешным ответом. Предлагаю разобраться с темой CORS. 📖 Читать на сайте 📖 Читать в VK 📖 Читать на Telegraph 💬 Обсудить в Telegram Поддержать: 💵 В VK | 💵 В Boosty | 💵 Через Tinkoff #javascript #cors

При этом государство всячески открещивается от каких-либо инициатив по созданию или копированию контента, раз за разом повторяя мантры про "свободный рынок", мол, есть отечественные альтернативы, контент кто-нибудь придумает. Я считаю, что государство должно принимать непосредственное участие в работе с контентом. По соседству у нас есть другое государство, успешно противостоящее западной госпропаганде - Китай. И на местных ресурсах есть иностранный контент в достаточно существенном объёме. Что-то мне подсказывает, что государство в этом принимает участие. Могло ли наше правительство поступить как-то иначе в сложившейся ситуации? Я считаю, что да. Для этого достаточно было развивать качественную госпропаганду внутри страны на отечественных площадках. И я подчеркну - именно качественную пропаганду с фактажом, а не как у нас принято - тяп-ляп, где важнее освоить бюджет, а не получить реальный результат. Я вот не припомню за последнее время примеров качественной отечественной госпропаганды, а вот новости о посадках в верхах МО я вижу практически ежедневно. Качественная госпропаганда в значительной степени снизила бы эффект от антироссийской пропаганды. Будет ли хуже корпорации ABC (читай Google) и YouTube от блокировки последнего в РФ? Нет, так как с 2022 года они не зарабатывают в РФ, оставаясь главной медиа-площадкой. Будет ли хуже россиянам от блокировки YouTube? Я считаю, что да, так как огромный пласт научной и технической информации станет недоступен отечественным специалистам.

⛔️ Вставлю свои пять копеек насчёт замедления и блокировки YouTube на территории РФ. Государевы лица с усами и без заявляют, что ухудшение качества работы главного на планете видеохостинга связано с деградацией оборудования Google, находящегося на территории РФ. Но по факту всё указывает на то, что траффик режется по DPI, вероятнее всего, силами Роскомнадзора. Если уж ломаете, то имейте совесть признаться, что ломаете, а то хуже малых детей. Являются ли адекватными попытки заблокировать YouTube на территории РФ? Я считаю, что да. С одной стороны на данной площадке размещено огромное количество западной и откровенно антироссийской госпропаганды (да, госпропаганда существует вообще везде - государство, у которого отсутствует пропаганда либо не существует, либо транслирует чью-то пропаганду, как, например, могучие балтийские державы), а с другой - российская госпропаганда запрещена. Более того, на YouTube нельзя транслировать сколько-нибудь патриотические взгляды, если ты - русский. Иначе чем можно объяснить блокировки каналов артистов? Да, я и сам не являюсь поклонником отечественных эстрадных исполнителей вроде Гагариной или Газманова, но удаление их каналов выглядит самой натуральной дискриминацией по национальному признаку (Хотя, может так YouTube Олегу Газманову мстят за забранные им ясные дни?). Что насчёт альтернатив? Да, они существуют: VK.Видео, Rutube, Дзен, Nuum и Платформа. Являются ли они действительно альтернативами? Нет. Абсолютно для всех площадок характерно одно и то же поведение: пользователям они предлагают в первую очередь контент, который выгодно продвигать площадкам, лишь слегка разбавляя его контентом, который интересен пользователям. Яркий пример - главная страница Rutube, на которой в первую очередь выводится всякая околополитическая чушь, от которой уже тошно, и не менее тошнотворные шоу с телеканалов. А VK.Видео скорее является довеском к VK, но не самостоятельным продуктом. Вторая проблема заключается в продвижении - авторам либо предлагается создавать какое-то огромное количество контента (в т.ч. навязывается необходимость записывать короткие ролики), либо пользоваться платным продвижением. Как-то так получилось, что у меня на YouTube почти 10 000 подписчиков, но я ничего не делал для продвижения канала, кроме выкладывания роликов. А на Rutube, VK.Видео и Дзене суммарное количество подписчиков едва ли перевалило за 800 (из которых 200-300 - за последнюю неделю), при том, что весь мой контент - русскоязычный, и все ролики я выклаывал на эти площадки одновременно с YouTube. Писать много контента я не могу, а вкладываться в продвижение не вижу смысла, так как контент у меня - узконаправленный. Третья проблема - крайне слабо развитые инструменты администрирования и аналитики. Но сами площадки бесполезны без контента, поэтому ещё одна проблема кроется в авторах. Да, отечественные авторы либо сразу свой контент заливали на несколько площадок, либо переехали на отечественные площадки, либо планируют. Но YouTube берёт тем, что это международная площадка, где есть контент от авторов со всего света, а отечественные площадки кроме россиян могут заинтересовать разве что авторов с постсоветского пространства (а по факту - вообще никого). И я, как технический специалист, могу сказать, что русскоязычного контента по многим темам исчезающе мало, либо он сильно слабее иностранного контента. Сам я в основном изучаю технологии по книгам, статьям и репозториям исходных кодов, но немалый объём информации о некоторых технологиях я получил как раз из иностранных роликов на YouTube.

Принял участие в проекте "На двоих" от PR-отдела Maxim Technology https://www.youtube.com/watch?v=xHCmlake1Jc Новые ролики пока только в планах, а следующая статья, про CORS - на следующей неделе.

🛡 Анализ уязвимостей в зависимостях В современных условиях разработки программного обеспечения крайне редко встречаются прое
🛡 Анализ уязвимостей в зависимостях В современных условиях разработки программного обеспечения крайне редко встречаются проекты, не имеющие внешних зависимостей, и большинство из них — различные библиотеки для работы с различными базами данных. Большая же часть проектов разрабатывается с использованием сторонних зависимостей — библиотек и фреймворков, которые предоставляют готовые решения для большого количества задач. Однако в сторонних зависимостях могут скрываться уязвимости, которыми злоумышленники могут воспользоваться при атаке на разрабатываемые вами проекты. Но потенциальное наличие уязвимостей в сторонних библиотеках не должно стать поводом для отказа от них — вместо этого лучше поддерживать зависимости в актуальном состоянии и анализировать их на предмет уязвимостей. Различные инструменты для отслеживания уязвимостей в зависимостях интегрированы в IDE, SonarQube и CI/CD-решения, а в этой статье речь пойдёт о Dependency Track. 📖 Читать на сайте 📖 Читать в VK 📖 Читать в Telegra.ph 💬 Обсудить в Telegram Поддержать: 💵 В VK | 💵 В Boosty | 💵 Через Tinkoff #java #безопасность #maven #gradle #owasp

👩‍💻 SC24EP22 Шаблонизация с Helm - Разработка проектов со Spring В заключительном ролике цикла я хочу вкратце рассказать о
👩‍💻 SC24EP22 Шаблонизация с Helm - Разработка проектов со Spring В заключительном ролике цикла я хочу вкратце рассказать о Helm - инструменте, который позволяет упростить процесс написания дескрипторов развёртывания для Kubernetes за счёт шаблонизации. Все написанные ранее дескрипторы развёртывания для сервисов имеют по большей части схожую структуру, и шаблонизация в данном случае позволит уменьшить дублирование кода и в целом ускорить процесс развёртывания. В цикле роликов "Разработка проектов со Spring" я рассказываю на простых примерах о процессе разработки веб-приложений и REST-сервисов на языке программирования Java с использованием экосистемы Spring. Данный цикл охватывает разработку классических и реактивных проектов, вопросы их сопровождения, такие как документация и мониторинг, адаптацию их к облачной инфраструктуре и процесс их развёртывания в Docker и Kubernetes. 👩‍💻 Репозиторий проекта: https://github.com/alex-kosarev/sc24/tree/SC24EP22-helm ▶️ Смотреть на YouTube ▶️ Смотреть в VK ▶️ Смотреть в Boosty ▶️ Смотреть в Дзене ▶️ Смотреть на Rutube 💬 Обсудить в Telegram Поддержать: 💵 В VK | 💵 В Boosty | 💵 Через Tinkoff #java #spring #cloud #k8s #kubernetes #helm #howto

👩‍💻 SC24EP21 Kubernetes без Spring Cloud - Разработка проектов со Spring Kubernetes предоставляет богатый набор инструменто
👩‍💻 SC24EP21 Kubernetes без Spring Cloud - Разработка проектов со Spring Kubernetes предоставляет богатый набор инструментов, благодаря чему вам не требуется Spring Cloud для развёртывания проектов на основе Spring Boot. Это позволяет более рационально использовать ресурсы облака и даже немного сэкономить на облачных услугах. В двадцать первом ролике цикла речь пойдёт о замене Spring Cloud Gateway, Spring Cloud Netflix Eureka и Spring Cloud Config на средства Kubernetes. В цикле роликов "Разработка проектов со Spring" я рассказываю на простых примерах о процессе разработки веб-приложений и REST-сервисов на языке программирования Java с использованием экосистемы Spring. Данный цикл охватывает разработку классических и реактивных проектов, вопросы их сопровождения, такие как документация и мониторинг, адаптацию их к облачной инфраструктуре и процесс их развёртывания в Docker и Kubernetes. 👩‍💻 Репозиторий проекта: https://github.com/alex-kosarev/sc24/tree/SC24EP21-cloudless-k8s ▶️ Смотреть на YouTube ▶️ Смотреть в VK ▶️ Смотреть в Boosty ▶️ Смотреть в Дзене ▶️ Смотреть на Rutube 💬 Обсудить в Telegram Поддержать: 💵 В VK | 💵 В Boosty | 💵 Через Tinkoff #java #spring #cloud #k8s #kubernetes #howto

👩‍💻 SC24EP20 Развёртывание сервисов в Kubernetes - Разработка проектов со Spring В двадцатом ролике цикла речь пойдёт о Kub
👩‍💻 SC24EP20 Развёртывание сервисов в Kubernetes - Разработка проектов со Spring В двадцатом ролике цикла речь пойдёт о Kubernetes, инструменте, который в значительной степени упрощает развёртывание и сопровождение проектов с микросервисной архитектурой в облачной инфраструктуре. Оркестраторы, реализующие спецификации k8s, позволяют автоматизировать процессы развёртывания, миграции и масштабирования сервисов. В рамках ролика будет продемонстрировано развёртывание ранее написанных сервисов, а так же используемой инфраструктуры. Примеры в ролике демонстрируются при помощи minikube, минималистичного дистрибутива Kubernetes для локального тестирования. В цикле роликов "Разработка проектов со Spring" я рассказываю на простых примерах о процессе разработки веб-приложений и REST-сервисов на языке программирования Java с использованием экосистемы Spring. Данный цикл охватывает разработку классических и реактивных проектов, вопросы их сопровождения, такие как документация и мониториг, адаптацию их к облачной инфраструктуре и процесс их развёртывания в Docker и Kubernetes. 👩‍💻 Репозиторий проекта: https://github.com/alex-kosarev/sc24/tree/SC24EP20-k8s ▶️ Смотреть на YouTube ▶️ Смотреть в VK ▶️ Смотреть в Boosty ▶️ Смотреть в Дзене ▶️ Смотреть на Rutube 💬 Обсудить в Telegram Поддержать: 💵 В VK | 💵 В Boosty | 💵 Через Tinkoff #java #spring #k8s #kubernetes #howto

👩‍💻 SC24EP19 Контейнеризация приложений с Docker и Docker Compose - Разработка проектов со Spring В девятнадцатом ролике ци
👩‍💻 SC24EP19 Контейнеризация приложений с Docker и Docker Compose - Разработка проектов со Spring В девятнадцатом ролике цикла речь пойдёт о развёртывании сервисов в контейнерах Docker, я расскажу о том, как можно написать универсальный Dockerfile, продемонстрирую запуск сервисов в контейнерах. А затем я перейду к Docker Compose, при помощи которого можно управлять развёртыванием не одного контейнера, а набором контейнеров, необходимых для работы проекта. Кроме этого вкратце будут затронуты темы использование механизма поиска сервисов и масштабирования в Docker Compose. В цикле роликов "Разработка проектов со Spring" я рассказываю на простых примерах о процессе разработки веб-приложений и REST-сервисов на языке программирования Java с использованием экосистемы Spring. Данный цикл охватывает разработку классических и реактивных проектов, вопросы их сопровождения, такие как документация и мониториг, адаптацию их к облачной инфраструктуре и процесс их развёртывания в Docker и Kubernetes. 👩‍💻 Репозиторий проекта: https://github.com/alex-kosarev/sc24/tree/SC24EP19-docker ▶️ Смотреть на YouTube ▶️ Смотреть в VK ▶️ Смотреть в Boosty ▶️ Смотреть в Дзене ▶️ Смотреть на Rutube 💬 Обсудить в Telegram Поддержать: 💵 В VK | 💵 В Boosty | 💵 Через Tinkoff #java #spring #docker #dockercompose #howto

👩‍💻 SC24EP18 Шлюз API Spring Cloud Gateway - Разработка проектов со Spring В некоторых случаях вам может понадобиться реали
👩‍💻 SC24EP18 Шлюз API Spring Cloud Gateway - Разработка проектов со Spring В некоторых случаях вам может понадобиться реализовать единую точку входа для множества REST API, реализованных в рамках разных сервисов. В экосистеме Spring Cloud для данных целей существует Spring Cloud Gateway, позволяющий реализовать шлюз API (API Gateway) и гибко настраивать маршрутизацию запросов к вашим REST API. В цикле роликов "Разработка проектов со Spring" я рассказываю на простых примерах о процессе разработки веб-приложений и REST-сервисов на языке программирования Java с использованием экосистемы Spring. Данный цикл охватывает разработку классических и реактивных проектов, вопросы их сопровождения, такие как документация и мониториг, адаптацию их к облачной инфраструктуре и процесс их развёртывания в Docker и Kubernetes. 👩‍💻 Репозиторий проекта: https://github.com/alex-kosarev/sc24/tree/SC24EP18-api-gateway ▶️ Смотреть на YouTube ▶️ Смотреть в VK ▶️ Смотреть в Boosty ▶️ Смотреть в Дзене ▶️ Смотреть на Rutube 💬 Обсудить в Telegram Поддержать: 💵 В VK | 💵 В Boosty | 💵 Через Tinkoff #java #spring #cloud #apigateway #howto

👩‍💻 SC24EP17 Сервис конфигураций Spring Cloud Config - Разработка проектов со Spring В семнадцатом ролике цикла речь пойдёт
👩‍💻 SC24EP17 Сервис конфигураций Spring Cloud Config - Разработка проектов со Spring В семнадцатом ролике цикла речь пойдёт о сервисе конфигураций Spring Cloud Config. При сопровождении большого количества сервисов процесс изменения их настроек становится сложнее, особенно если речь заходит о массовом изменении настроек, так как у каждого сервиса есть свой файл с параметрами, который находится на сервере с запущенным сервисом. Spring Cloud Config позволяет централизованно управлять файлами настроек, упрощая тем самым процесс сопровождения сервисов. В цикле роликов "Разработка проектов со Spring" я рассказываю на простых примерах о процессе разработки веб-приложений и REST-сервисов на языке программирования Java с использованием экосистемы Spring. Данный цикл охватывает разработку классических и реактивных проектов, вопросы их сопровождения, такие как документация и мониториг, адаптацию их к облачной инфраструктуре и процесс их развёртывания в Docker и Kubernetes. 👩‍💻 Репозиторий проекта: https://github.com/alex-kosarev/sc24/tree/SC24EP17-cloud-config ▶️ Смотреть на YouTube ▶️ Смотреть в VK ▶️ Смотреть в Boosty ▶️ Смотреть в Дзене ▶️ Смотреть на Rutube 💬 Обсудить в Telegram Поддержать: 💵 В VK | 💵 В Boosty | 💵 Через Tinkoff #java #spring #cloud #config #howto

👩‍💻 SC24EP16 Реестр сервисов Spring Cloud Netflix Eureka - Разработка проектов со Spring В проектах с микросервисной или ра
👩‍💻 SC24EP16 Реестр сервисов Spring Cloud Netflix Eureka - Разработка проектов со Spring В проектах с микросервисной или распределённой архитектурой количество запускаемых сервисов может исчисляться десятками, а в больших проектах их количество может и вовсе переваливать за сотню. И чтобы упростить работу при настройке экземпляров тех или иных сервисов придуманы реестры сервисов, которые в свою очередь позволяют реализовать механизм поиска сервисов (Service Discovery). При запуске сервис регистрируется в реестре сервисов, а так же получает из него адреса сервисов, от которых он зависит. Это всё позволяет отказаться от прописывания адресов сервисов в файлах настроек, что в свою очередь снижает объем работ, возникающих при миграции сервисов. Spring Cloud Netflix Eureka - реестр сервисов в экосистеме Spring Cloud, и в шестнадцатом ролике этого цикла речь пойдёт о настройке и использовании его клиента и сервера. В цикле роликов "Разработка проектов со Spring" я рассказываю на простых примерах о процессе разработки веб-приложений и REST-сервисов на языке программирования Java с использованием экосистемы Spring. Данный цикл охватывает разработку классических и реактивных проектов, вопросы их сопровождения, такие как документация и мониториг, адаптацию их к облачной инфраструктуре и процесс их развёртывания в Docker и Kubernetes. 👩‍💻 Репозиторий проекта: https://github.com/alex-kosarev/sc24/tree/SC24EP16-eureka ▶️ Смотреть на YouTube ▶️ Смотреть в VK ▶️ Смотреть в Boosty ▶️ Смотреть в Дзене ▶️ Смотреть на Rutube 💬 Обсудить в Telegram Поддержать: 💵 В VK | 💵 В Boosty | 💵 Через Tinkoff #java #spring #cloud #eureka #servicediscovery #howto

👩‍💻 SC24EP15 Сбор трассировок с Grafana Tempo - Разработка проектов со Spring Пятнадцатый ролик серии завершает тему монито
👩‍💻 SC24EP15 Сбор трассировок с Grafana Tempo - Разработка проектов со Spring Пятнадцатый ролик серии завершает тему мониторинга сервисов, а посвящён он распределённым трассировкам с использованием Micrometer Tracing и Grafana Tempo. В процессе обработки запроса может быть задействовано большое количество компонентов: сервисов, баз данных, очередей сообщений и т.д. Трассировки предоставляют информацию о прохождении запроса через компоненты ваших сервисов, а собираемая статистика может помочь вам найти проблемные места. В цикле роликов "Разработка проектов со Spring" я рассказываю на простых примерах о процессе разработки веб-приложений и REST-сервисов на языке программирования Java с использованием экосистемы Spring. Данный цикл охватывает разработку классических и реактивных проектов, вопросы их сопровождения, такие как документация и мониториг, адаптацию их к облачной инфраструктуре и процесс их развёртывания в Docker и Kubernetes. 👩‍💻 Репозиторий проекта: https://github.com/alex-kosarev/sc24/tree/SC24EP15-tracing ▶️ Смотреть на YouTube ▶️ Смотреть в VK ▶️ Смотреть в Boosty ▶️ Смотреть в Дзене ▶️ Смотреть на Rutube 💬 Обсудить в Telegram Поддержать: 💵 В VK | 💵 В Boosty | 💵 Через Tinkoff #java #spring #micrometer #tracing #tempo #grafana #howto