Написал небольшой пост про скрытую возможность в IntelliJIDEA:
http://antkorwin.com/idea/openfile.html
оказывается, идея фоном стартует веб-вервер, и с его помощью можно переходить в исходники из браузера. Тоесть вы просто кликаете по ссылке и вас редиректит в идею, в нужный вам класс.
http://antkorwin.com/idea/openfile.html
оказывается, идея фоном стартует веб-вервер, и с его помощью можно переходить в исходники из браузера. Тоесть вы просто кликаете по ссылке и вас редиректит в идею, в нужный вам класс.
Antkorwin
How to open files in IDEA from a browser
This media is not supported in your browser
VIEW IN TELEGRAM
Эта фича уже успела нам пригодиться в парочке внутренних приложений для анализа логов и ошибок.
Теперь в браузере можно не просто смотреть стек-трэйс, но и быстро перейти к исходникам проблемного места.
Теперь в браузере можно не просто смотреть стек-трэйс, но и быстро перейти к исходникам проблемного места.
В новом выпуске подкаста, у нас очень необычная тема и гость - ЗОЖ
[эпизод совсем не технический]
но что-то мне подсказывает, что равнодушных к этой теме будет мало
обсуждали:
- правильное питание и сон
- очень глубоко про онкологические заболевания
(потому что наш гость изучает современные препараты от рака)
- обсудили такую популярную тему как эпидемия вирусов,
(довольно познавательно, можно понять жизненный цикл вируса, как он распространяется и почему от вирусов не помогают обычные лекарства)
https://bitcask.live/2020/03/19/0x07-zog/
[эпизод совсем не технический]
но что-то мне подсказывает, что равнодушных к этой теме будет мало
обсуждали:
- правильное питание и сон
- очень глубоко про онкологические заболевания
(потому что наш гость изучает современные препараты от рака)
- обсудили такую популярную тему как эпидемия вирусов,
(довольно познавательно, можно понять жизненный цикл вируса, как он распространяется и почему от вирусов не помогают обычные лекарства)
https://bitcask.live/2020/03/19/0x07-zog/
Последнее время совсем не успеваю заглянуть в твитер или написать что-то в канал, навалилось очень много работы...
Надо сказать спасибо Всеволоду Брекелову, что с его подачи мы запостили расшифровку доклада про тестирование IoT.
Получилось аж три части, если кто-то хочет вспонить о чем был доклад, или еще лучше - спросить у меня что-то, то не стесняйтесь - приходите в комментарии на хабре, сейчас это стало проще(регистрируешься и пишешь...) Кстати говоря, я долгое время обходил Хабр стороной, предпочитал постить заметки у себя в блоге, но тут послушал Севу и решил поэкспериментировать...
Надо сказать спасибо Всеволоду Брекелову, что с его подачи мы запостили расшифровку доклада про тестирование IoT.
Получилось аж три части, если кто-то хочет вспонить о чем был доклад, или еще лучше - спросить у меня что-то, то не стесняйтесь - приходите в комментарии на хабре, сейчас это стало проще(регистрируешься и пишешь...) Кстати говоря, я долгое время обходил Хабр стороной, предпочитал постить заметки у себя в блоге, но тут послушал Севу и решил поэкспериментировать...
В этом месяце настраивал pipeline для CI/CD новых проектов и решил попробовать GitHub Actions, мне нравится динамика изменений гитхаба, страшно подумать, но похоже Microsoft влияет на них позитивно…
До этого я активно использовал TeamСity и TravisCI, и там и там есть свои плюсы и минусы, но сегодня говорим про GitHub Actions. По моему мнению, самая главная фича гитхаба - это сам гитхаб. Мало кто может похвастаться таким комьюнити, а возможность держать свой код, CI/CD конвейер и бинарные артефакты в одном месте делает его довольно самодостаточным инструментом. Прибавьте к этому простоту распространения своих экшенов и возможность в один клик найти исходники того, что подключаете в скрипт сборки.
Не хватает только инструментов разработки, ну и отладка своих pipeline-ов пока что - занятие не самое простое.
До этого я активно использовал TeamСity и TravisCI, и там и там есть свои плюсы и минусы, но сегодня говорим про GitHub Actions. По моему мнению, самая главная фича гитхаба - это сам гитхаб. Мало кто может похвастаться таким комьюнити, а возможность держать свой код, CI/CD конвейер и бинарные артефакты в одном месте делает его довольно самодостаточным инструментом. Прибавьте к этому простоту распространения своих экшенов и возможность в один клик найти исходники того, что подключаете в скрипт сборки.
Не хватает только инструментов разработки, ну и отладка своих pipeline-ов пока что - занятие не самое простое.
Для тех, кто хочет технических деталей, я написал статью со всеми этапами построения пайплайна: от сборки до мониторинга. Конечно, там есть про тестирование и статический анализ:
https://habr.com/ru/company/jugru/blog/505994/
https://habr.com/ru/company/jugru/blog/505994/
Хабр
Круги ада с GitHub Actions (строим CI/CD pipeline для Java-проекта)
Мне частенько приходится строить пайплайн для сборки проектов на Java. Иногда это опенсорс, иногда нет. Недавно я решил попробовать перенести часть своих репозиториев с Travis-CI и TeamCity на...
Сегодня выступал на конференции heisenbug, в онлайне. Я готовил материал, ещё до того как все тотально перешло в онлайн. И честно говоря, было довольно сложно придумать, что делать, чтобы выступление не стало скучным вебинаром.
🥱😴🥱
Выступать перед экраном сложно, даже именитые спикеры не всегда справляются с этим: над твоей шуткой никто не посмеётся, зал не захлопает, когда будет подгорать, зрительного контакта нет...
🤐😶😷
Но сегодня было весело не только в части того как построить интерактив в докладе, а ещё пару сюрпризов преподнёс онлайн.
🥱😴🥱
Выступать перед экраном сложно, даже именитые спикеры не всегда справляются с этим: над твоей шуткой никто не посмеётся, зал не захлопает, когда будет подгорать, зрительного контакта нет...
🤐😶😷
Но сегодня было весело не только в части того как построить интерактив в докладе, а ещё пару сюрпризов преподнёс онлайн.
Мой топ того, что пошло не так:
1. за десять минут до начала эфира соседи начинают сверлить стены, хотя я специально договорился с ними, чтобы они отложили свой перфоратор себе в ...🤬... хотя бы на пару часов, но нет же
2. Дальше ещё веселее, буквально за пять минут до эфира у нас прорвало трубу на кухне, хорошо что это только слив посудомойки, но вот ни раньше, ни позже...🔧💦
3. Когда после этого в эфире начались какие-то проблемы со звуком, меня это уже не сильно тревожило 🤪🎙🎚
Так что да, онлайн это весело!
🎉🎉🎉
Ребята из jugru большие молодцы, несмотря на все сложности мы смогли успешно провести свой трэк...
1. за десять минут до начала эфира соседи начинают сверлить стены, хотя я специально договорился с ними, чтобы они отложили свой перфоратор себе в ...🤬... хотя бы на пару часов, но нет же
2. Дальше ещё веселее, буквально за пять минут до эфира у нас прорвало трубу на кухне, хорошо что это только слив посудомойки, но вот ни раньше, ни позже...🔧💦
3. Когда после этого в эфире начались какие-то проблемы со звуком, меня это уже не сильно тревожило 🤪🎙🎚
Так что да, онлайн это весело!
🎉🎉🎉
Ребята из jugru большие молодцы, несмотря на все сложности мы смогли успешно провести свой трэк...
Чуть позже закину сюда все полезняшки и ссылки на примеры с кодом,
stay tuned...
stay tuned...
Forwarded from Anatoliy Korovin
HEISENBUG
Очень насыщенная неделя получилась, надеюсь вам тоже понравилось на Heisenbug =)
Собрал полезные материалы, как и обещал:
⚠️ Приложение с примерами из доклада:⚠️
https://github.com/antkorwin/heisenbug_2020_demo
Библиотеки для работы с postgresql / mysql/ rabbitmq / activemq ..
https://github.com/jupiter-tools/spring-boot-extensions
Клевая штука для тестирования данных в mongodb:
https://github.com/jupiter-tools/spring-test-mongo
Еще библиотеки для того чтобы стартовать нужный контейнер в докере одной аннотацией:
- Kafka:
https://github.com/jupiter-tools/spring-test-kafka
- Redis:
https://github.com/jupiter-tools/spring-test-redis
- ElasticSearch:
https://github.com/jupiter-tools/spring-test-elasticsearch
Очень насыщенная неделя получилась, надеюсь вам тоже понравилось на Heisenbug =)
Собрал полезные материалы, как и обещал:
⚠️ Приложение с примерами из доклада:⚠️
https://github.com/antkorwin/heisenbug_2020_demo
Библиотеки для работы с postgresql / mysql/ rabbitmq / activemq ..
https://github.com/jupiter-tools/spring-boot-extensions
Клевая штука для тестирования данных в mongodb:
https://github.com/jupiter-tools/spring-test-mongo
Еще библиотеки для того чтобы стартовать нужный контейнер в докере одной аннотацией:
- Kafka:
https://github.com/jupiter-tools/spring-test-kafka
- Redis:
https://github.com/jupiter-tools/spring-test-redis
- ElasticSearch:
https://github.com/jupiter-tools/spring-test-elasticsearch
GitHub
GitHub - antkorwin/heisenbug_2020_demo: DataSet Driven Testing DEMO Application for Heisenbug Conf 2020
DataSet Driven Testing DEMO Application for Heisenbug Conf 2020 - antkorwin/heisenbug_2020_demo
Добавил в библиотеку для тестирования Kafka поддержку удобной работы с дата-сэтами. Теперь можно описать JSON файлом то, что ждем после выполенения тестового кейса в Kafka топике.
https://github.com/jupiter-tools/spring-test-kafka#a-better-way-to-test-your-data-in-integration-tests
https://github.com/jupiter-tools/spring-test-kafka#a-better-way-to-test-your-data-in-integration-tests
GitHub
GitHub - jupiter-tools/spring-test-kafka: Tools for integration testing of Apache Kafka with SpringBoot applications
Tools for integration testing of Apache Kafka with SpringBoot applications - GitHub - jupiter-tools/spring-test-kafka: Tools for integration testing of Apache Kafka with SpringBoot applications
Еще появилась возможность одной аннотацией проверить, что в результате выполнения теста ничего не прилетело в топик, иногда бывает полезно проверить что код не шлет что-то лишнее…
Сегодня заходил в гости к jug.ru
Записали выпуск Heisenbug Show про разработку и тестирование всякой дичи ;)
IoT, VR, embedded soft...
как всегда времени в эфире не так много чтобы обсудить все, но получилось неплохо:
https://youtu.be/awxt77BT6l4
Записали выпуск Heisenbug Show про разработку и тестирование всякой дичи ;)
IoT, VR, embedded soft...
как всегда времени в эфире не так много чтобы обсудить все, но получилось неплохо:
https://youtu.be/awxt77BT6l4
YouTube
Heisenbug Show / Дичь, хардкор и экзотичный софт // 6 октября 2020
Ближайшая конференция: Heisenbug 2023 Autumn — 10–11 октября (online), 15–16 октября (offline)
Подробности и билеты: https://bit.ly/3qd3swV
— —
Дичь, хардкор, экзотика и будущее — в этом выпуске Heisenbug Show!
Есть диковинные области разработки и тестирования…
Подробности и билеты: https://bit.ly/3qd3swV
— —
Дичь, хардкор, экзотика и будущее — в этом выпуске Heisenbug Show!
Есть диковинные области разработки и тестирования…
На прошлой неделе попался реальный пример, когда пригодилось использование фантомных ссылок в java.
Решил написать небольшую заметку об этом:
http://antkorwin.com/gc/autodeletable_temp_files_in_java.html
Решил написать небольшую заметку об этом:
http://antkorwin.com/gc/autodeletable_temp_files_in_java.html
Antkorwin
Автоматически удаляемые temp файлы в java
Сегодня открыли сезон heisenbug-show, вышли в эфир jvm-ной командой. Обсуждали junit5, зачем оно нужно, как мигрировать если ещё не успели, всегда ли полезна параметризация тестов, и многое другое...
Посмотреть можно тут:
https://www.youtube.com/watch?v=w1ey2zjf3-s
Пока собирали материал к эфиру, перерыли кучу анти-паттернов из личных коллекций и всем известных open source проектов, которые даже страшно показывать ;) как обычно, за кадром осталось много всего, думаю нужно будет делать продолжение...
Посмотреть можно тут:
https://www.youtube.com/watch?v=w1ey2zjf3-s
Пока собирали материал к эфиру, перерыли кучу анти-паттернов из личных коллекций и всем известных open source проектов, которые даже страшно показывать ;) как обычно, за кадром осталось много всего, думаю нужно будет делать продолжение...
YouTube
Heisenbug Show / Круглый стол: junit-изация и assert-овщина // 16.03.2021
Ближайшая конференция — Heisenbug 2025 Spring, 5—6 апреля (Москва + онлайн-трансляция).
Подробности и билеты: https://jrg.su/Tq0vcu
— — junit5/junit4/assertions: кто как готовит свои тесты, кто на чем обжегся и какие вещи никогда не стал бы использовать,…
Подробности и билеты: https://jrg.su/Tq0vcu
— — junit5/junit4/assertions: кто как готовит свои тесты, кто на чем обжегся и какие вещи никогда не стал бы использовать,…
В spring-test-mongo появилась поддержка транзакций
🎉🎉🎉
https://github.com/jupiter-tools/spring-test-mongo/releases/tag/v0.15
конечно надо было начать с того что в mongodb появилась поддержка транзакций =)
Для этого нужно использовать репликацию (replica set) пусть даже в single-node реплике. Вся магия транзакций в монге построена на этом.
Как результат мы получаем возможность делать транзакционно изменение сразу нескольких документов. Примеры можно посмотреть тут: https://www.baeldung.com/spring-data-mongodb-transactions
Важно понимать что multi-document транзакции приводят к снижению производительности и начинать стоит с рефактооринга структуры данных, а только если упаковать все в один документ невозможно, то нормализовывать данные и делать multi-document транзакции.
О том как работают транзакции в монге: https://docs.mongodb.com/master/core/transactions/
Ну и конечно, чтобы все это удобно работало в спринге уже все сделали: https://docs.spring.io/spring-data/mongodb/docs/current/reference/html/#mongo.transactions.tx-manager
🎉🎉🎉
https://github.com/jupiter-tools/spring-test-mongo/releases/tag/v0.15
конечно надо было начать с того что в mongodb появилась поддержка транзакций =)
Для этого нужно использовать репликацию (replica set) пусть даже в single-node реплике. Вся магия транзакций в монге построена на этом.
Как результат мы получаем возможность делать транзакционно изменение сразу нескольких документов. Примеры можно посмотреть тут: https://www.baeldung.com/spring-data-mongodb-transactions
Важно понимать что multi-document транзакции приводят к снижению производительности и начинать стоит с рефактооринга структуры данных, а только если упаковать все в один документ невозможно, то нормализовывать данные и делать multi-document транзакции.
О том как работают транзакции в монге: https://docs.mongodb.com/master/core/transactions/
Ну и конечно, чтобы все это удобно работало в спринге уже все сделали: https://docs.spring.io/spring-data/mongodb/docs/current/reference/html/#mongo.transactions.tx-manager
GitHub
Release 0.15 Release · jupiter-tools/spring-test-mongo
🚀 New Features
add the mongodb replica set for transactions support
❤️ Contributors
Thanks to @vladislav-shelengovskiy
add the mongodb replica set for transactions support
❤️ Contributors
Thanks to @vladislav-shelengovskiy