LINUX.ORG.RU

Главная Java-конференция в России — Joker 2017

 , , joker2017,


4

1

3—4 ноября в Санкт-Петербурге состоится большая хардкорная Java-конференция Joker 2017. Для всех, кому до Питера не добраться, будет онлайн-трансляция.

Как всегда, будет тёплая ламповая атмосфера, хардкорные доклады, крутые спикеры, жаркие дискуссии и холивары c коллегами и многое другое.

Что будем обсуждать:

  • JVM/JDK под капотом (Runtime, GC, OpenJDK);
  • Java Performance;
  • высоконагруженные системы;
  • языки программирования для JVM;
  • распределенные системы.
  • архитектуры Java-проектов;
  • инструменты разработчика;
  • хранилища данных (SQL/NoSQL/Cloud);
  • фреймворки (Spring, Spark, Hibernate и др);
  • Java 9 / Java 10 и будущие версии;
  • DevOps, CD, CI;
  • Data Science / ML;
  • Java EE;
  • Puzzlers!

Программа полностью готова, среди спикеров конференции — Алексей Шипилёв (Red Hat), Александр Борисов (Google), легенда Хабра Сергей Абдульманов (Мосигра), Alvaro Hernandez (8Kdata), Тагир Валеев (JetBrains), Николай Алименков (XP Injection), Барух Садогурский (JFrog) и другие звёзды.

Это будет пятый по счёту Joker: с каждым годом он растёт, становится всё интереснее и хардкорнее. Ежегодно конференция собирает более 1000 участников. Все доклады конференции — только про востребованные в Java технологии.

«Изюминка» конференции — дискуссионные зоны, куда направляются после докладов все спикеры для живого общения. Учитывая, что почти все посетители — Java-разработчики уровня Senior и Middle, можно с уверенностью утверждать, что там, в кулуарах, рождается будущее.

>>> Подробности и регистрация на сайте конференции Joker 2017

★★★★☆

Проверено: Shaman007 ()
Последнее исправление: sudopacman (всего исправлений: 4)

Ответ на: комментарий от stevejobs

Проводите конференции в интернете, не ? И лететь никому не надо и оплачивать ничего не надо. И по затратам ноль;)

Xwo
()
Ответ на: комментарий от cdshines

для джавы нет гц, на который можно положиться независимо от области применения

Чем больше различий в областях применения, чем меньше шансов, что подход «one size fits all» сработает. К.О.

anonymous
()
Ответ на: комментарий от Bioreactor

Мне ваши пословицы нафиг не нужны.

просто - это когда в onclick прописываешь единственную за весь жизненный цикл функцию обработки события, а не лепишь деклатаривную хрень на AngularJS и вопрошаешь на форуме как тебе сделать чтоб работало.

dzidzitop ★★
()
Ответ на: комментарий от dzidzitop

Мне ваши пословицы нафиг не нужны.

Как и в реальном программировании не нужны «специалисты» незнающие Spring, Hibernate, GWT и подобные технологии.

Bioreactor ★★★★★
()
Ответ на: комментарий от Bioreactor

и подобные

Ничего общего в этих базвордах нет ни по смыслу ни по содержанию. так что не знаю что подразумевается под «подобные»


Ну и с трудозанятостью проблем не имею, не зная GWT ни Hibernate ни всего убогого многообразия Spring. Ибо есть более нужные умения и навыки, чем иметь в кэше мозга наборы этих (и любых других) API. Видал я этих «специалистов по технологиям». Потом исправлять за ними же нужно, залезая в кишки этих «технологий», о которых специалисты даже не подозревают.

dzidzitop ★★
()
Последнее исправление: dzidzitop (всего исправлений: 1)
Ответ на: комментарий от Aber

В каждой первой конференции по java.

Повод же есть: Red Hat сейчас ваяет новый GC "Shenandoah", а Oracle на днях объявил о том, что они сейчас заняты ZGC

X-Pilot ★★★★★
()
Ответ на: комментарий от Deleted

Это когда они делают побитовую операцию, а потом так озаряются на коллег с прищуренным взглядом и тихо так себе под нос... шёпотом, «я сука хакер, я апасный» =)

Dron ★★★★★
()
Ответ на: комментарий от anonymous

еще расскажи про write once, run anywhere. джава одна - на сервере. десктопная джава (идея и эклипс) будет довольствоваться тем, что есть на серверах. «архитекторы бекенда» могут сколько угодно рассуждать о том, что «когда как», но потом садятся в кружок и дружно наяривают на: короткие паузы, параллельный гц, минимальный STW, работа из коробки. То, что сборщиков дохера, говорит только о том, что работа движется и эволюция на месте не стоит, а не о том, что гц просто много на вкус и цвет.

давненько не слышал еще аргументов про эмбеддед джаву, но на всякий случай - она отличается от традиционной чуть меньше, чем полностью, поэтому можно этот момент опустить.

Ну, я так на своем опыте знаю, если у кого-то есть настоящая истори про то, как они на CMS перешли, потому что он решил все проблемы, будет интересно почитать.

cdshines ★★★★★
()
Ответ на: комментарий от stevejobs

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

кому нужны эти знания о тонкостях сборки мусора (?) — если создаваемая программа тупо не удовлетворяет критериям качества своей работы, сравнивая с другими (не Java) программами?

взять например софт который Google (а не какая-то школота) сделали в качестве инструментария к разработке Андроида — ды подобного ДЕРЬМИЩА нужно ещё и поискать :-) — эти программы даже не стесняются перезаписывать промежуточные файлы внутрь чужих символьных ссылок, созданных злоумышленником по предсказуемому пути в общедоступном для записи каталоге..

.. нужно быть полным профаном-делетантом чтобы допускать такое. но по какой-то нелепой СЕКТАНСКОЙ причине Java-разработчики хотят думать будто JVM сама якобы решает все проблемы коректного поведения Java-программы в разных ОС, без необходимости знания программистом тонкостей конкретной ОС.

ды будь ты хоть трижды специалистом в кишках своего любимого компилятора\интерпрератора, но если ты не умеешь писать софт под Linux, то твои Linux-программы будут соответствующего говнокачества! :-)

user_id_68054 ★★★★★
()
Ответ на: комментарий от user_id_68054

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

То, что кто-то на Си налабал херотень допускающее такое, заместо изоляции приложений друг от друга, не делает прикладника «профаном-делетантом». Кто-то из прикладников, например, может впечатлиться секурностью линуха и подумать, что такие банальные вещи там уж не прокатят. А по сути Си-лошары создали дыру на дыре, а виноват конечно прикладник... И это лишь говорит об уровни чмошности разработчиков такой архитектуры, допускающие такие вещи - «нужно быть полным профаном-делетантом чтобы допускать такое» (с)

foror ★★★★★
()
Последнее исправление: foror (всего исправлений: 2)
Ответ на: комментарий от foror

А по сути Си-лошары создали дыру на дыре, а виноват конечно прикладник... И это лишь говорит об уровни чмошности разработчиков такой архитектуры, допускающие такие вещи

тонны man-страниц написали же, разжовывающие как пользоваться системными вызовами и glibc..

с чего бы не прочитать их?

есть и открытые исходники, в которых можно посмотреть интересующие нюансы, если сомниваешься по какому-то вопросу.

ды куча информации — читай-не-хачу!

но нет — Java-разраб будет лучше сидеть и читать про свои чёртовы сборщики мусора, и всякие блоггерские статьи об очередном никчёмном фреймворке и депенденси-инъекциях через аннотации (и прочии «крутые» способы написания кода, которые как правило только приумножает проблем, делая Java-код более крассивым но зато более глупым)

user_id_68054 ★★★★★
()
Ответ на: комментарий от user_id_68054

о нет — Java-разраб будет лучше сидеть и читать про свои чёртовы >сборщики мусора, и всякие блоггерские статьи об очередном >никчёмном фреймворке и депенденси-инъекциях через аннотации (и >прочии «крутые» способы написания кода, которые как правило ?>только приумножает проблем, делая Java-код более крассивым но ?>зато более глупым)

Конечно, мы все должны поверить «знатоку Java». И конечно вы приведете примеры кода показывающий все эти нюансы, а еще свободно приведете примеры эквивалентного не глупого кода на С выполняющего тоже самое.

Smetchik
()
Ответ на: комментарий от user_id_68054

взять например софт который Google (а не какая-то школота) сделали в качестве инструментария к разработке Андроида — ды подобного ДЕРЬМИЩА нужно ещё и поискать :-) — эти программы даже не стесняются перезаписывать промежуточные файлы внутрь чужих символьных ссылок, созданных злоумышленником по предсказуемому пути в общедоступном для записи каталоге..

если про это не знать и не использовать posix api со специальным флажком, то поведение нативной программы будет таким же.

а есть ли на жабе способ не резолвать ссылки при открытии дескрипторов файлов - хз.

dzidzitop ★★
()
Ответ на: комментарий от dzidzitop

нет, это когда ты пишешь многопоточный код с учётом lock contension.

А contention предугадывается или выясняется профилировщиком?

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Это процесс творческий. Особенно если библиотеку пишешь и не знаешь наверняка в каких условиях она может использоваться.

Инструментальная поддержка нужна в том числе.

Ну и *contension -> contention

dzidzitop ★★
()
Последнее исправление: dzidzitop (всего исправлений: 2)
Ответ на: комментарий от dzidzitop

это когда ты пишешь многопоточный код с учётом lock contension.

А contention предугадывается или выясняется профилировщиком?

то процесс творческий. Особенно если библиотеку пишешь и не знаешь наверняка в каких условиях она может использоваться.

Тогда «не с учетом lock contention», а с «учетом своих предположений о lock contention». И получается почти по Кнуту.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Ну как сказать. Классический уже пример - сравни java.util.Collections.synchronizedMap() и java.util.ConcurrentHashMap.

Бенчмарки в этом деле нужны в любом случае. Гаданием сложно что-то проверять.

dzidzitop ★★
()
Ответ на: комментарий от dzidzitop

Ну как сказать.

Ну, например, так: «при проектировании библиотеки одним из критериев является минимизация lock contention с учетом предвидимых сценариев использования» (и возможны доработки по результатам реальной эксплуатации).

Классический уже пример - сравни java.util.Collections.synchronizedMap() и java.util.ConcurrentHashMap.

Не понял, что именно это должно показывать. Разные сценарии использования ведут к разным решениям.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

synchronizedMap() использует один мьютекс на любые чтение и запись.
ConcurrentHashMap использует несколько мьютексов одновременно для увеличения параллелизма и при чтении использует мьютексы только при несинхронизированных кэшах.

Оба используются для многопоточного кода.

dzidzitop ★★
()
Ответ на: комментарий от dzidzitop

говно у тебя в черепной коробке, а эльбрус интересный и доклад был шикарен особенно последний.
Надеюсь может на какой нибудь конференции по джаваскрипту так-же доклад сделают про «V8 на Эльбрусе».

uin ★★★
()
Ответ на: комментарий от user_id_68054

взять например софт который Google (а не какая-то школота) сделали в качестве инструментария к разработке Андроида

Мое личное мнение: АНДРОИД НИКАКОГО ОТНОШЕНИЯ К JAVA НЕ ИМЕЕТ

(можно на ЛОРе это как-то вставить в подпись под постом, чтобы было как в письмах у Столлмана - «не Линукс, а GNU/Linux»?)

По крайней мере, не имел до выхода Android N, на который, по слухам, таки портировали OpenJDK.

Java - это то, что проходит тесты совместимости с платформой Java. Андроид ни на Дальвике, ни на ART, их не проходит по понятной причине - потому что Андроид - не Java.

Причем Дальвик настолько убог, что они раньше на всех конференциях упрашивали пользователей не злоупотреблять ООП, а то если сильно много классов отнаследовать - оно начинает люто тормозить

Поэтому всю свою ненависть к Дальвику можешь выслать маркетологам Гугла, которые годами пытаются всех обмануть что их поделия имеют отношение к Java

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от user_id_68054

У меня на прошлой работе было приложение, которое со старта выжирало терабайт памяти. Было приложение, обрабатывающее десятки тыяч транзакций в секунду. Java - средство решения проблем с производительностью, именно поэтому жабисты читают и про GC, и про тонкие детали реализации систем, и по алгоритмы, итп.

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

Если же кто-то скрипт из трех строчек пишет на Java, а не на Python или Golang, скопипастив его со StackOverflow и ни в чем не разобравшись, и потом ругается на непонятно куда девшуюся память, ему остается только посочувствовать и отрубить руки

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от uin

Нет, в черепной коробке у меня эльбруса нет. У меня там мозг.

А эльбрусу место на помойке.

dzidzitop ★★
()
Ответ на: комментарий от Bioreactor

Не лопни от важности, то сборщик мусора захлебнется.

pylin ★★★★★
()
Ответ на: комментарий от dave

«этот товарищ» объективно оценивает рыночную конкурентоспособность этой процессорной архитектуры и конечной продукции - т.е. процессоров, сделанных по ней.

Будет продаваться эльбрус за $10 за младшую модель - можно будет о чём-то говорить.

А вы там надувайте щёки и дальше.

dzidzitop ★★
()
Ответ на: комментарий от dzidzitop

Понимаю и завидую. Я просто пишу на скале и у нас еще и монорепа с примерно таким же количеством модулей. Недавно пришлось пописать на ванильной джаве, я просто обалдел от того, насколько шустрее все

cdshines ★★★★★
()
Ответ на: комментарий от cdshines

Это да. Билды кода на скала + play на Turion X2 1.8GHz + 1.8GiB RAM занимали по 20 минут.

dzidzitop ★★
()
Ответ на: комментарий от Xwo

интересно другое, спич о том, что люди по миру используют уже больше 5 лет.

можно с уверенностью утверждать, что там, в кулуарах, рождается будущее.

у стиви как обычно своё, особое, будущее.

anonymous
()
Ответ на: комментарий от stevejobs

Java - средство решения проблем с производительностью

именно поэтому жабисты читают и про GC

Хотел было написать тебе, но передумал. Ты и сам всё знаешь, маркетолог.

Xwo
()

У меня вопрос к хардкорным сеньорам: где можно почитать как jvm верифицирует байт-код?

Пилю VM, и никак не могу сделать статичную проверку типов агрументов функций. В JVM это должны были решить давным-давно.

anonymous
()
Ответ на: комментарий от anonymous

стартовую точку легко ж найти - реализацию ClassLoader#loadClass в исходниках. Грепом за 30 минут точно получится.

dzidzitop ★★
()
Ответ на: комментарий от dzidzitop

Оба используются для многопоточного кода.

Они используются по-разному. У тех, кто их делал, было неплохое представление «в каких условиях она может использоваться».

tailgunner ★★★★★
()
Ответ на: комментарий от stevejobs

жабисты читают и про GC, и про тонкие детали реализации систем, и по алгоритмы, итп.

...а почитав, идут в евангелисты. Наверное, есть в прочитанном что-то религиозное.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Они используются почти одинаково. Просто раньше не было ConcurrentHashMap, а потом его придумали, чтобы поднять производительность многопоточного кода.

Разница в использовании - ConcurrentHashMap завязан на том, что там не может быть ключей и значений null. Обычный HashMap + synchronizedMap() обёртка может содержать значения null (ключи не может тоже).

dzidzitop ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.