Size: a a a

2018 June 08
javawatch
Новый Scala-дайджест, я зделяль!
(Вместе с Вадимом, конечно.)

Очередной выпуск Scala-дайджеста!
(Заметьте, что вы можете участвовать в формировании списка обсуждаемых новостей. Закинуть туда свои любимые проекты, например. Подробности - в самом конце статьи).

https://jug.ru/2018/06/scala-digest-3/
источник
javawatch
Графики посещений одного из ресурсов с джава-новостями. Смотрите на субботу. В субботу читать запрещено! 😊
источник
2018 June 13
javawatch
Ребятки, мне нужны ваши души, плюсы и каменты!

JUG.ru Group запускает совершенно новый наимоднейший IT-фестиваль, на котором будет треш, угар и тыщи программистов, манагеров, стартаперов, итд итп - короче, весь цвет российского IT. (Но это не точно.)  Прям щаз зайдите на Хабру и оставьте комментарий, социофобия не требует отлагательств!

Специально для этого я сфотался в своей естественной среде обитания - бомжуя на улице, написуя наибыстрейшие коды на Джава с использованием жит конпелятора Graal и сборщика мусора Shenandoah. Куртка не моя, а Максова (стибрил с вешалки, пока его не было) - на свою еще не заработал.

https://habr.com/company/jugru/blog/412541/
источник
2018 June 15
javawatch
Без раздельной компиляции сборка больших проектов в SubstrateVM будет занимать неразумное количество времени.

Сделал тикет на эту тему, запасаемся попкорном и ждем ответа. Дополнительный бонус знатокам за правильное предположение, кто решится отвечать на этот неприятный тикет.

https://github.com/oracle/graal/issues/475
источник
javawatch
источник
2018 June 17
javawatch
По поводу раздельной компиляции, ответил Codrut Stancu. Да, ее нет, но они это обдумывали и решили, что она теоретически возможна. Хотя, дальше мысленного эксперимента они не продвинулись. Суть в том, что можно, например, покэшировать результаты статического анализа, и вычислять их только для нового кода. Статический анализ занимает половину времени сборки, и не масштабируется линейно при увеличении кодовой базы. Придется выбрать какую-то гранулярность анализируемого кода - например, пакет, модуль, и так далее, и пере-анализировать только внутри него. Впрочем, никаких конкретных планов на эту фичу пока нет.
источник
javawatch
Предрекаю, что сразу же после получения широкой популярности, SVM сразу же получит фреймворк вроде Spring Boot :)

Поясню на примере.

Глядите, регистрируете вы у себя shutdown hook:


Runtime.getRuntime().addShutdownHook(new Thread(() -> {
   shutdown();
}));


Жмете ctrl+C, и хук не срабатывает. WTF?

Этому посвящен вот этот баг: https://github.com/oracle/graal/issues/465

Вкратце, Виммер считает, что SVM должна быть капец какой embedded-friendly, а значит нельзя при стартапе регистрировать всё подряд, а только самый минимум.

Ну и sigint в этот минимум у него не попадает.

Чтобы хук заработал, нужно пойти и вручную где-нибудь в main (первой же строчкой, наверное), добавить нужный вызов:


Signal.handle(new Signal("INT"), sig -> System.exit(0));


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

Логично сюда сразу же притащить некий фреймворк, который будет заниматься такой деятельностью вместо тебя. Из предположения, что всё-таки это не embedded приложуха, а обычный ынтерпрайзный микросервис. Или обычное десктопное приложение. В мире Spring тоже есть такая проблема, и ее решение - Spring Boot. Здесь же нужно фигачить некий Substrate Boot, или SVM Boot.

Уверен, что регистрация хэндлера - это первая ласточка, только самое начало. Например, если когда-нибудь появится раздельная/инкрементальная компиляция, я не верю, что найдется человек, который захочет разбираться, как приложуху правильно бить на модули. В чудесное время живем - можно своими глазами наблюдать за рождением костылей, которые потом будут тащить десятилетиями :)
источник
javawatch
Если кому-то нужна нормальная телеграм-группа по Гралю, то вот она: @graalvm_ru

Кто-то раньше делал группу graal_ru, но она превратилась в фарс и из нее все удалились.
источник
2018 June 18
javawatch
Новый Джокер на подходе!

https://habr.com/company/jugru/blog/413675/
источник
2018 June 20
javawatch
Я тут взял старенький фреймворк Octane, давно заброшеный гуглом, и возродил в виде отдельного проекта Carbon. Ну как возродил, проверил, что все запускается на Graal.js.

Так вот в чем цимес. Циферки пока получаются очень печальные, нужно расследовать, почему так происходит.

https://github.com/graalvm-community/graalvm-carbon
источник
javawatch
источник
2018 June 22
javawatch
Часто слышу возмущенные вопли о том, как же так может быть, что количество багов - бесконечно. Поэтому, посмотрим-ка на статистику какого-нибудь нормального процесса.

В JDK сейчас 19492 только открытых багов (в статусах open, in progress, итп)). Ему 20 лет. В IntelliJ IDEA сейчас 40132 бага в открытых статусах (из них 2877 с приоритетом Critical). Идее сейчас 17 лет. Они проживут еще пару десятков лет точно.

Баги в очередях никогда не закончатся, и чем дальше будет идти время - тем больше будет разрыв между решенными и созданными багами (очень характерный график с двумя расходящимися линиями). Может статься, что количество открытых багов пойдет на сотни тысяч.

Я не смог построить график по Идее, потому что у YouTrack нет столько памяти, чтобы построить такой график с 2005 года (Идея родом с 2001, но с 2005 есть данные). Но вот по JDK посмотреть можно.
источник
javawatch
источник
2018 June 25
javawatch
А между тем JUG.ru выпустили анонс конфы DevOops

https://habr.com/company/jugru/blog/415159/
источник
2018 June 26
javawatch
Иногда Докер поражает) Например, раньше можно было перебрасывать ENV между разными стейджами в multistage build, а потом это починили в #33753 в конце прошлого года. У кого-то от этого сломалось? Да насрать, мы же не обещали)

А для нас как жабистов, это понижает удобство сборки образов, пачками основывающихся на openjdk8. Вместо удобного мультистейджа приходится тянуть полновесный CI, хотя он там ни для чего больше не нужен.

Зафигачил прямо противоположную заявку. Посмотрим, что ответят.

https://github.com/moby/moby/issues/37345
источник
javawatch
Вместе с подкастом "Разбор Полётов" мы сделали дайджест этой недели в новом формате: собрались с РП и сделали подкаст с хайлайтами, а на сайт JUG.ru  выложили текстовую версию с полным списком новостей и источниками. Подробности по ссылке!

https://jug.ru/2018/06/digest-week-63/
источник
2018 July 09
javawatch
Запилили свежий выпуск "Java-дайджеста"! Как и в прошлый раз, в двух вариантах: текст на сайте JUG.ru , и его подробное обсуждение в "Разборе Полётов". На этот раз вместе со мной в студии был Барух Садогурский.

https://jug.ru/2018/07/digest-week-65/
источник
2018 July 11
javawatch
Кстати, мы тут на халяву выложили почти все видосы с Joker 2017! 35 докладов в плейлисте

https://jug.ru/2018/07/video-joker-2017
источник
javawatch
Десять лучших докладов Джокера с особым цинизмом обозрел Евгений Трифонов

https://jug.ru/2018/07/top-10-joker-2017/
источник
2018 July 25
javawatch
Очередное интервью с Thomas Wuerthinger

https://jaxenter.com/graalvm-nashorn-interview-147115.html
источник