Полезняшки от "Разбора Полетов"
1.44K subscribers
144 photos
15 videos
4 files
4.51K links
Полезные статьи и новости от авторов подкаста "Разбор Полетов". Единственный подкаст, где бывшие ведущие призывают к убийству бывших слушателей 🔥🔥

По всем вопросам @abashev
Download Telegram
Помните, как во времена 109 выпуска "Разбора Полетов" мы могли спокойно выходить на улицу, летать по миру и пить пиво на лавочках, обсуждая то, как надоели конференции в обсуждениях?

Разбор в "классическом" составе возвращается, чтобы напомнить вам об этих прекрасных временах и обсудить, какие ужасы происходят в мире разработки сегодня.
@jbaruch @gamussa @abashev @tolkv @ligolnik @fundamentalparticle и @golodnyj снова строю, то только на один раз, чтобы обсудить, что изменилось с переходом всего мира на удаленку, как изменились требования к железу для подкастинга и стриминга, и что же стало, когда конференции все перенеслись и переехали в онлайн.
15-го мая в 22:00 по Москве вот тут https://youtu.be/bZfixmGsTro
Промокод на Full Pass - RazborPoletovPC
https://live.jugru.org/
Forwarded from Andrei Listochkin
/cc @JBaruch

Язык хороший. Когда появился в 2016м, в него положили кучи приятных вещей, которые облегчали людям жизнь. По эргрномике язык (не окружения - ide, тулзов, библиотек) был близок к его тогдашним современникам - TS и Swift. Но имхо развиваться дальше он не стал так же быстро, как TS, и после TSа писать на Котлине очень кринжово. Вроде бы все так, но шаг вправо-влево и не хватает мелочей.

Например, array и object destructuring в Котлине работает не по именам, а по позициям полей. Штааа???

У меня есть класс, в нем id, username, email типов int, string, string. Я в коде пишу

val (id, username, email) = user;

все круто.

Теперь прилетяет реквест юзерам роли добавить. Я добавил поле role: string после юзернейма, и теперь в строке выше в переменную email попадет роль. Компилятор и Идея мне ничего не скажет. Получается, позиционные аргументы я не могу юзать без опасений. И я в 2020м году должен писать кода вида

val email = user.email;

как какой-то крестьянин.

Еще напрягает то, как в языке сделаны Корутины. Ты делаешь контекст, в нем уже можешь awaitить. Но из-за того, что асинхронный код в языке явно не виден, в Идее для мест разрывов управления слева добавлен еще один столбик гаттеров и рисуются такие извилистые стрелки. Язык создавался для JVM - среды, где полно синхронного io, и есть большой риск помешать в одном куске кода бликирующие вызовы и корутины. Явно нужно было для корутин сделать синтаксис. Его не сделали, и получается, что в свою среду разработки пришлось добавлять костылики, чтоб визуально асинхронщина была видна. Ну а если ты Котлин пишешь не в их ide, то ссзб, страдай.

Также мне как человеку, который 10 лет под JVM не писал, был непонятен зоопарк с Фьючерами. Чтобы юзать корутины, нужно все джавашные фьючи конвертить в котлиновские. Чем джавашные не угодили я хз. Но даже если и так, что, нельзя автогенерить при компиляции код для конверсии? И нельзя было его сделать для Scala/Akka фьюч и их аналогов в Clojure и мб Groovy (хз есть ли они там). А так пришлось писать дополнительные методы для конвертации ручками.

Опять же. В один мавен артифакт нельзя положить код на Java, Scala, и Kotlin сразу. Почему? Я чего-то думал, что все компилится в .class-файлы и они совместимы между собой. Почему все эти "языки будущего" на JVM за 6-17 лет не смогли друг с другом уживаться, я в упор не понимаю. Но я должен ради них дробить проект на отдельные артифакты, писать билд-скрипты для каждого и для них всех общий.

Есть вопросы по тулингу. Я не хочу в 21м веке гонять форматры-линтеры в ide ручками. Я хочу, чтоб а прекоммит хуке у меня все форматилось и линтилось само собой. Почему JetBrains не предоставляет форматилку-линтилку в виде cli-тулзы? Они что, предлагают мне в CI поднимать в доккере IDEA и по ней чем-то Силиниум-подобным кликать кнопки, чтоб провалидировать, что код в пул-реквесте правильно отформатирован? Нашлись конечно отчаянные ребята в Австралии, которые написали свой линтер. Но не понятно, как гарантируется его совместимость с форматтером, который в Idea зашит.

Я пописал на Kotlin неделю в Виксе в 2019. После TS выглядело как привет мой 2015й. Я понимаю, что им восхищаются андроидщики, тк все ж не Java 6. Но имхо надо стараться лучше.
Свежий выпуск вашего любимого подкаста "Разбор Полетов" !!!
"Episode 210 — Classic - Снова вместе, снова рядом" https://razborpoletov.com/2020/05/episode-210.html
«DevOops в рабочий полдник» — новое шоу с участниками программного комитета и спикерами конференции DevOops.

В первом выпуске 21 мая в 18:00 Барух Садогурский, Андрей Когунь и Михаил Дружинин пообщаются с постоянным спикером DevOops, сооснователем подкаста «Разбор Полетов» и Developer Advocate в Confluent Виктором Гамовым.

Они обсудят Kafka, Stream processing, DevOps и даже порасспрашивают Виктора про качалку.

Присоединяйтесь к трансляции по ссылке: https://meetup.jugru.org/devops-brunch-1
Forwarded from Hydra conference channel
У конференции по разработке многопоточных и распределенных систем Hydra появилось свое онлайн-шоу — «Головы гидры», где участники программного комитета конференции будут обсуждать новости индустрии, алгоритмы и структуры данных, модели памяти, компиляторы и рантайм.

Первый выпуск пройдет 19 мая в 20:00.
В эфире встретятся один из основателей и продюсер JUG Ru Group Алексей Федоров, сотрудник кафедры «Компьютерные Технологии» Университета ИТМО Виталий Аксенов и Никита Коваль, исследователь в команде Kotlin.

В этот раз они поговорят о прошлой Hydra, а также обсудят спикеров и доклады этого года.

Трансляция — по ссылке https://meetup.jugru.org/hydra-heads-1