Oh My Git — интерактивная игра для изучения Git.
Она визуализирует внутреннюю структуру Git-репозиториев в режиме реального времени. Получается очень наглядно.
https://ohmygit.org
Она визуализирует внутреннюю структуру Git-репозиториев в режиме реального времени. Получается очень наглядно.
https://ohmygit.org
ohmygit.org
Oh My Git!
An open source game about learning Git
🔥3❤1👍1
Как сократить потребление памяти в интеграционных тестах с Kafka с помощью GraalVM
Довольно интересный опыт описан в статье по созданию нативного образа для EmbeddedKafka с использованием GraalVM. В теории можно поэкспериментировать подобным образом и с другими продуктами.
https://habr.com/ru/articles/788812/
Довольно интересный опыт описан в статье по созданию нативного образа для EmbeddedKafka с использованием GraalVM. В теории можно поэкспериментировать подобным образом и с другими продуктами.
https://habr.com/ru/articles/788812/
Хабр
Как сократить потребление памяти в интеграционных тестах с Kafka с помощью GraalVM
В данной статье я хочу поделиться своим опытом создания нативного образа для EmbeddedKafka с использованием GraalVM. Использование такого образа в интеграционных тестах позволяет увеличить скорость...
👍2🔥2
Туториал по нотификациям через RSocket: от концепции до запуска в продакшн
Статья про разработку системы нотификаций для Альфа-Онлайн — мобильного банка в вебе. В решении использовались WebSocket в связке с RSocket.
https://habr.com/ru/companies/alfa/articles/788398/
Статья про разработку системы нотификаций для Альфа-Онлайн — мобильного банка в вебе. В решении использовались WebSocket в связке с RSocket.
https://habr.com/ru/companies/alfa/articles/788398/
Хабр
Туториал по нотификациям через RSocket: от концепции до запуска в продакшн
Однажды мы решали задачу разработки системы нотификаций для Альфа-Онлайн — мобильного банка в вебе. Нам было необходимо разработать инструмент по отправке сообщений (нотификаций) со стороны сервера в...
🔥2
Машинное обучение для Java разработчиков: конвейеры данных машинного обучения
В статье описано как создать и развернуть модель данных машинного обучения в ПРОМ среде на базе Java с использованием Weka, Docker и REST.
Weka представляет собой набор современных алгоритмов машинного обучения и инструментов предварительной обработки данных.
https://www.infoworld.com/article/3454363/machine-learning-for-java-developers-machine-learning-data-pipelines.html#tk.rss_java
В статье описано как создать и развернуть модель данных машинного обучения в ПРОМ среде на базе Java с использованием Weka, Docker и REST.
Weka представляет собой набор современных алгоритмов машинного обучения и инструментов предварительной обработки данных.
https://www.infoworld.com/article/3454363/machine-learning-for-java-developers-machine-learning-data-pipelines.html#tk.rss_java
InfoWorld
Machine learning for Java developers: Machine learning data pipelines
Learn how to build and deploy a machine-learning data model in a Java-based production environment using Weka, Docker, and REST.
🔥4
Разбираемся с «MavenGate», новой атакой на цепочку поставок для Java и Android-приложений
Ей подверженны более 18% всех Java-библиотек. Суть ее основана на логике работы сборщиков Java/Android-проектов и разрозненности репозиториев, которые хранят эти библиотеки.
https://habr.com/ru/companies/swordfish_security/articles/790544/
Ей подверженны более 18% всех Java-библиотек. Суть ее основана на логике работы сборщиков Java/Android-проектов и разрозненности репозиториев, которые хранят эти библиотеки.
https://habr.com/ru/companies/swordfish_security/articles/790544/
Хабр
Разбираемся с MavenGate, новой атакой на цепочку поставок для Java и Android-приложений
Всем привет! Сегодня с вами Юрий Шабалин, генеральный директор «Стингрей Технолоджиз», и я хотел бы разобрать в этой статье новый тип атаки на цепочку поставок под названием «MavenGate». А что в ней,...
🔥2👍1
Как мы начали использовать виртуальные потоки Java 21 и на раз-два получили дедлок в TPC-C для PostgreSQL
В этом посте рассказано о примере дедлока в TPC-C для PostgreSQL, причиной которого является исключительно переход на виртуальные потоки - и никаких проблем обедающих философов ))
https://habr.com/ru/companies/ydb/articles/786550/
В этом посте рассказано о примере дедлока в TPC-C для PostgreSQL, причиной которого является исключительно переход на виртуальные потоки - и никаких проблем обедающих философов ))
https://habr.com/ru/companies/ydb/articles/786550/
Хабр
Как мы начали использовать виртуальные потоки Java 21 и на раз-два получили дедлок в TPC-C для PostgreSQL
Привет, хабр! Меня зовут Евгений Иванов, я разработчик YDB . Но сегодня я бы хотел представить Вашему вниманию пост не о YDB, а о виртуальных потоках Java 21 на примере TPC-C для PostgreSQL. Дедлок у...
👍3🔥1😁1
Как подружить нейросети и разработку: программируем с ChatGPT
Задача: создать простой REST-сервис на Java (с использованием Spring Boot и JPA) без написания кода.
Технологии: ChatGPT 3.5 + JAIG.
Итог: если бы автор статьи самостоятельно, вручную писал код, то по его оценке уложился примерно в один рабочий день. На работу с ChatGPT и JAIG у него ушло в общей сложности 10 дней 🤡
https://habr.com/ru/companies/ibs/articles/792032/
Задача: создать простой REST-сервис на Java (с использованием Spring Boot и JPA) без написания кода.
Технологии: ChatGPT 3.5 + JAIG.
Итог: если бы автор статьи самостоятельно, вручную писал код, то по его оценке уложился примерно в один рабочий день. На работу с ChatGPT и JAIG у него ушло в общей сложности 10 дней 🤡
https://habr.com/ru/companies/ibs/articles/792032/
Хабр
Как подружить нейросети и разработку: программируем с ChatGPT
Большинство людей используют ChatGPT и подобные ему технологии как альтернативу Google. Но насколько нейросеть для бизнеса пригодна для написания рабочего программного кода? Помогает ли она упростить...
🔥2
Maven плагин для проверки семантической схемы версионирования Java-библиотек.
Возможно вы тоже сталкивались с тем, что патч-версия якобы содержит обратно несовместимые изменения. Автор написал maven-плагин, который автоматически проверяет внесенные изменения и предлагает, какую часть номера версии нужно изменить.
https://foojay.io/today/semantic-versioning-your-java-libraries/
Возможно вы тоже сталкивались с тем, что патч-версия якобы содержит обратно несовместимые изменения. Автор написал maven-плагин, который автоматически проверяет внесенные изменения и предлагает, какую часть номера версии нужно изменить.
https://foojay.io/today/semantic-versioning-your-java-libraries/
foojay
(Semantic) Versioning your Java libraries
Refine Java library versions seamlessly with Semantic Versioning, ensuring compatibility and efficient upgrades. Learn More!
👍2🔥2🤷♀1
MyBatis «на минималках»
Я не фанат этого фреймворка, но для кругозора посмотреть можно. Исходя из статьи в CDEK он используется в большинстве проектов. Лично я давно не слышал о его использовании в ПРОМе.
https://habr.com/ru/companies/cdek_blog/articles/771714/
Я не фанат этого фреймворка, но для кругозора посмотреть можно. Исходя из статьи в CDEK он используется в большинстве проектов. Лично я давно не слышал о его использовании в ПРОМе.
https://habr.com/ru/companies/cdek_blog/articles/771714/
Хабр
MyBatis «на минималках»
Привет, Хабр! Меня зовут Пётр Гусаров, я Java‑программист в CDEK. В этой статье расскажу про не очень распространённый фреймворк MyBatis. Почему MyBatis? Потому что мы...
👍2🤣1
Project Valhalla: эпичный квест Java за перфомансом
Project Valhalla, задуманный еще в 2014, призван дать возможность создавать кастомные примитивные или "value" объекты. Эти объекты должны представлять собой плоскую структуру, подобно рассмотренному выше массиву
В статье приводится довольно интересное сравнение.
https://habr.com/ru/articles/787166/
Project Valhalla, задуманный еще в 2014, призван дать возможность создавать кастомные примитивные или "value" объекты. Эти объекты должны представлять собой плоскую структуру, подобно рассмотренному выше массиву
int[]
, а не дерево "указателей".В статье приводится довольно интересное сравнение.
https://habr.com/ru/articles/787166/
Хабр
Project Valhalla: эпичный квест Java за перфомансом
Project Valhalla , по моему скромному мнению, это самое важное и в то же время самое сложное нововведение в JVM, улучшающее производительность. Бэкграунд: как модель памяти Java влияет на перфоманс...
❤2👍2🔥1
Игра Untrusted
Untrusted — это необычная образовательная игра. В данной игре игрокам предстоит управлять персонажем и разгадывать головоломки, применяя программирование и логическое мышление для прохождения уровней.
Почему я решил запостить здесь?!?!? Потому что по слухам там есть задачки на Java ))
Сам я пока эту игру не играл. В детстве помню подобную консольную играл. Прям ностальгия ))
https://www.playuntrusted.com
Untrusted — это необычная образовательная игра. В данной игре игрокам предстоит управлять персонажем и разгадывать головоломки, применяя программирование и логическое мышление для прохождения уровней.
Почему я решил запостить здесь?!?!? Потому что по слухам там есть задачки на Java ))
Сам я пока эту игру не играл. В детстве помню подобную консольную играл. Прям ностальгия ))
https://www.playuntrusted.com
Untrusted
Untrusted – web of cybercrime – the social deduction hacking game – multiplayer online, Untrusted
About the game Untrusted is an online multiplayer (10 to 16 players) hacking/social deduction game, inspired by the Werewolf/Mafia genre and similar games...
👍2🔥2
Java ScopedValue: Ускоренный ThreadLocal
В инкубаторе JEP-429 появилась новая альтернатива ThreadLocal под названием ScopedValue. Она предназначена для того, чтобы предоставить более легкую альтернативу ThreadLocal. ScopedValue сейчас в стадии превью в Java 20+ (включая последний релиз Java 21).
https://habr.com/ru/companies/otus/articles/787978/
В инкубаторе JEP-429 появилась новая альтернатива ThreadLocal под названием ScopedValue. Она предназначена для того, чтобы предоставить более легкую альтернативу ThreadLocal. ScopedValue сейчас в стадии превью в Java 20+ (включая последний релиз Java 21).
https://habr.com/ru/companies/otus/articles/787978/
Хабр
Java ScopedValue: Ускоренный ThreadLocal
В инкубаторе JEP-429 появилась новая альтернатива ThreadLocal под названием ScopedValue (в значительной степени как поддержка и развитие Virtual Threads ). ScopedValue предназначен для того, чтобы...
🔥3
Java Flight Recorder ожидает улучшения
В рамках проекта Skogsluft будут представлены продвинутые возможности профилирования Java приложений.
https://www.infoworld.com/article/3712811/java-flight-recorder-eyed-for-improvement.html#tk.rss_java
В рамках проекта Skogsluft будут представлены продвинутые возможности профилирования Java приложений.
https://www.infoworld.com/article/3712811/java-flight-recorder-eyed-for-improvement.html#tk.rss_java
InfoWorld
Advanced profiling proposed for Java Flight Recorder
Skogsluft project would introduce profiling features that span Java and native code execution and provide more precise and flexible profiling options.
🔥5
Применение ООП на практике
Чаще всего задачу можно решить интуитивно понятным процедурным способом. Однако самый простой вариант не всегда самый лучший. Предлагаю посмотреть на примере реальной задачи, как можно сделать решение объектно-ориентированным, и какую пользу это может принести.
https://habr.com/ru/companies/pvs-studio/articles/793900/
Чаще всего задачу можно решить интуитивно понятным процедурным способом. Однако самый простой вариант не всегда самый лучший. Предлагаю посмотреть на примере реальной задачи, как можно сделать решение объектно-ориентированным, и какую пользу это может принести.
https://habr.com/ru/companies/pvs-studio/articles/793900/
Хабр
Применение ООП на практике
Чаще всего задачу можно решить интуитивно понятным процедурным способом. Однако самый простой вариант не всегда самый лучший. Предлагаю посмотреть на примере реальной задачи, как можно сделать решение...
👍2🔥2🤣1
Spring Boot. Реактивный асинхронный неблокирующий REST vs традиционный синхронный блокирующий
Статья конечно «однобокая», но новичкам для иллюстрации разницы синхронных и асинхронных запросов подойдет.
https://habr.com/ru/articles/793494/
Статья конечно «однобокая», но новичкам для иллюстрации разницы синхронных и асинхронных запросов подойдет.
https://habr.com/ru/articles/793494/
Хабр
Spring Boot. Реактивный асинхронный неблокирующий REST vs традиционный синхронный блокирующий
Введение В этой статье я хочу простым языком рассказать о некоторых особенностях работы реактивного веб-сервиса в сравнении с традиционным REST. На данном этапе не буду углубляться в спецификацию....
👍3
🔥3👍2
Как разработчику организовать личную базу знаний: систематизация информации из книг, статей, видео и курсов
Я давно задумывался о подобной систематизации, но так комплексно к этому вопросу не подходил. Лично я предпочитаю AsciiDoc. Он гибче и богаче md, а также можно собирать все в удобный pdf. Для сборки можно использовать как консольную утилиту так и maven плагин, если оформить репозиторий как maven проект. По моей субъективной оценке проще структурировать в разных репозиториях информацию по разным топикам, но это наверное дело вкуса.
https://habr.com/ru/companies/lanit/articles/793444/
Я давно задумывался о подобной систематизации, но так комплексно к этому вопросу не подходил. Лично я предпочитаю AsciiDoc. Он гибче и богаче md, а также можно собирать все в удобный pdf. Для сборки можно использовать как консольную утилиту так и maven плагин, если оформить репозиторий как maven проект. По моей субъективной оценке проще структурировать в разных репозиториях информацию по разным топикам, но это наверное дело вкуса.
https://habr.com/ru/companies/lanit/articles/793444/
Хабр
Как разработчику организовать личную базу знаний: систематизация информации из книг, статей, видео и курсов
Привет, Хабр! Хочу поделиться своими мыслями и опытом («сыном ошибок трудных») в организации своей базы знаний, регулярно приобретаемых после прочтения разных книг, статей, просмотра видосов,...
🔥2🤪1
Автоматизируем проверку содержимого PDF-файлов с помощью pdf-test
Задача на мой взгляд довольно редкая. Отсутствие поддержки таблиц не радует, но с другой стороны можно попробовать добавить самому и получить еще один плюс в карму за opensource ))
https://habr.com/ru/companies/simbirsoft/articles/794728/
Задача на мой взгляд довольно редкая. Отсутствие поддержки таблиц не радует, но с другой стороны можно попробовать добавить самому и получить еще один плюс в карму за opensource ))
https://habr.com/ru/companies/simbirsoft/articles/794728/
Хабр
Автоматизируем проверку содержимого PDF-файлов с помощью pdf-test
Многие сервисы в различных отраслях генерируют печатные формы счетов, отчётов и прочего в формате PDF. И конечно, перед специалистами тестирования встаёт вопрос о проверке этих документов. Обычно...
👍5
Вариантность обобщенных типов в картинках и простых примерах
В статье приведены неплохие схемы, но ей не хватает для полноты картины описания PECS и более сложных кейсов. Для новичков изучающих эту тему будет полезна. В целом мне понравилась описанная часть.
https://habr.com/ru/articles/795083/
В статье приведены неплохие схемы, но ей не хватает для полноты картины описания PECS и более сложных кейсов. Для новичков изучающих эту тему будет полезна. В целом мне понравилась описанная часть.
https://habr.com/ru/articles/795083/
Хабр
Вариантность обобщенных типов в картинках и простых примерах
Ковариантность, контравариантность, инвариантность В большинстве статей на тему вариантности авторы слишком быстро погружаются в детали и сложные схемы, из-за чего у людей которые только пытаются...
🔥3
Гексагональная Архитектура и Spring Boot
Интересный опыт применения гексагональной архитектуры в одном микросервисе. Правда тема с entity в данном контексте раскрыта не полностью.
https://habr.com/ru/articles/795127/
Интересный опыт применения гексагональной архитектуры в одном микросервисе. Правда тема с entity в данном контексте раскрыта не полностью.
https://habr.com/ru/articles/795127/
Хабр
Гексагональная Архитектура и Spring Boot
Всем привет! Хочу рассказать про опыт применения гексагональной архитектуры в одном из наших микросервисов. С чем столкнулся и какие выводы сделал. Боль Как обычно выглядит java проект на spring boot?...
🔥5👍4