Java - сделали из ООП карго-культ с священным писанием и пророками. Сверху добавились защитные механизмы из мира живущих десятилетиями монолитов, половину кода в которых пишут индусы на аутсорсе. Как итог, в современном мире даже простые микросервисы будут дополнены большим количеством добавленной сложности. Go - создавался по принципу "чтоб не как в жабе", в итоге в культ возвели обычный говнокод, ибо "сишные деды так писали и нам завещали". Что вкупе с общей низкоуровневостью языка, сделанной ради заточки на производительность, порождает пахучий код даже на самых простых проектах. В итоге имеем классические два стула. Впрочем, посередине болтаются остальные языки, в каждом из которых своя заметная кучка проблем.
Да жаба во многом выродилась. Но тут же надо разделять саму жабу и спринг. Мы сути имеем вполне неплохой язык отдельно, а отдельно свернавороченный блексбокс, которому надо молиться как богу-машине. А сама JVM например очень крутая вещь.
за Kotlin и двор стреляю в упор! =) upd. вместо аргументов и попыток копнуть глубже и раскрыть тему, Олег решил просто иронично шутить и снижать тем самым значимость вопросов
А по теме: какие вопросы считаете не раскрытые? Ну т.е. уходы в юмор были, но, например, тема с Spring унифицированным интерфейсом с завышенной значимостью) Т.е. да, это красиво, но нет, это не настолько практично: использовать другой интерфейс часто не настолько проблемно, Олег правильно перечислил кейсы (на базе пофиг, сверху изучать по любому) + чем более линейный код, тем проще использовать новый интерфейс (напр. если перешли в другую компанию).
@@VladimirS-h9o Для меня в определенный момент вышли на первое место качество и скорость разработки, особенно после того как стал team lead'ом. И если будет инструмент, который будет генерировать/создавать пофиг как 100% работающие бэкенд API, которые не будут тупить из-за ошибок в проектировании, то я буду топить за такой инструмент ) Не важно сколько магии в него заложено. Разработчики часто видят только свое копание в проекте (код, фреймворки, паттерны). Но платят не за код, а за работающий продукт )
@@rustam-kuramshin я тоже не первый день в разработке и не встречал "серебрянных пуль") Так что задача принципиально неразрешима) К тому же, я слышал про отсутствие корреляции ЯП на продуктивность разработки (это выявляется не на уровне разработчика и даже не на уровне личного опыта тимлида), а вот корреляция от уровня владения инструментом да, была.
11:17 Олег говорит правильные вещи. Ведущий упорно делает вид, что не понимает его (а может, и правда не понимает). Компании не выращивают кадры. Они хотят сразу с мидлов. И эта ситуация везде. На завод приди - и там не выстроена система обучения. Как итог - проблема с кадрами. Эта проблема на уровне всей экономической системы. Ведущий этого не понял. Поэтому Олег и сказал, что он в пузыре живет.
Где-то выращивают, где-то нет. Я помогал людям развиваться в java-разработке, когда нанимал в командуы, где был лидом. У кого-то может не быть на это ресурсов/желания. Ситуация везде разная.
А с чего вдруг бизнес должен хотеть вкладываться в обучение? Бизнес устроен цинично: выгодно - делаем, не выгодно - не делаем. Наверное пока бизнесу обучение выстраивать невыгодно - не окупается.
@city-dweller, вы все правильно описали. Леваки это называют «внутренние противоречия»)) Когда системе с одной стороны что-то нужно, но с другой стороны она эти проблемы не решает. До революции до фига такого было. Например, все понимали, что нужно всеобщее образование. А с другой стороны, а куда этих грамотных девать, когда 80% населения занято сельским хозяйством на лошадях? И сейчас у нас такого полно. Проблема есть, но в рамках текущей системы ее никто решать не будет.
Уже через 5 минут показалось, что Олегу не присылали заранее вопросы интервьюера) Не скажу, что против рофлов), но, по моему, тема подкаста не была раскрыта совсем
Спасибо за интересное видео, посмотрел на одном дыхании! P.S Не знаю на самом ли деле Олег такой сноб, но слишком много иронии и едкости от него. Скорее всего на работе он общается по другому, просто такой у него стиль общения в неформальной обстановке)
Подкаст был бы интереснее, если бы go разработчик был бы в прошлом джавистом и мог бы сказать что в го лучше чем в джаве. Иначе 5 минут объясняется как в джаве накручено, а go разработчик отвечает "ну ок, у нас вроде всё и так работает"
А что ему отвечать, если в Go нет таких проблем? Там даже не приветствуется ORM использовать. Люди пользуются SQL-билдером или кодогенератором на подобии SQLC. Джависты сначала накрутили сложностей, а потом хотят узнать, как это у других 😂
@@borismor1 В Java тоже достаточно хейтеров ORM. Причина простая - люди, к сожалению, в большинстве своём не любят учиться и разбираться в сложных системах. "Магия" Spring и Hibernate, если принципы её работы понимать хотя бы в общих чертах, ничем не мешает, а лишь ускоряет работу, лишая разработчика необходимости кодить тривиальные вещи. Поэтому, пока гошники думают о том откуда скопипастить тот или иной код, джависты, хорошо владеющие фреймворками, думают больше о собственно бизнес-логике, нежели о рутинном boilerplate коде
@Krishna0666, я так понимаю, ключевые слова «хорошо владеющие фреймворком»?) А если человек плавает, то «черный ящик» выдает не то, что от него ждут. Ну и с кадрами проблемы пока найдёшь того самого хорошего джависта... Гошники допилят свой проект) У меня есть пара знакомых джавистов. Там проекты собираются по часу. Люди покупают себе мощные компы, чтобы все это быстрей собиралось. Версии библиотек из середины 2000-х. Как это не вяжется с быстрыми решениями.
@@rustam-kuramshin просто слушаю и будто нет уважения к людям)) Особенно убило когда он в сторону джавистов сказал, что они меньше думают из-за того что, НЕ дублируют код. По этой же логике не нужно скачивать пакеты в свой проект, а писать свои чтобы больше думать. Я не golang разраб и не Java, но уважаю и тех и других, но Олег видимо слишком умен для того, чтобы уважать кого-то
Олег просто мамкин позер, который оперирует и так всем известными терминами. Я если что юзаю гошку, до этого шарпы, и к жабе (точнее к спрингу) отношусь скептически. Но то что от гошки выступает это чучело картавое - это уже большой минус.
в Go постоянно занимаешься анализом пакетов. Хочу например инмемори кэш прикрутить - смотрю либы, выбираю наиболее подходящее, накрайняк сам пишу. Популярна кодогенерация тоже. А смена базы тоже без проблем происходит если правильно спроектировано приложение. Просто создаешь другую имплементацию для интерфейса (можно его Repository назвать). Вот функциональный код не очень красиво выглядит и сложную бизнес логику на Go не очень удобно писать. Выразительности не хватает. Иногда перехожу на Python если надо какой крон написать не особо производительный. В команде нет с этим проблем. Сервисы все на Go, кроны Go, Python. Интеграционные тесты на Java (так уж повелось). Проблем нет. Просто когда на Go пишешь немного паттерн мышления другой должен быть. Ну и не принято как-то использовать один большой "швейцарский нож" для всего. Чем меньше внешних зависимостей, тем лучше.
in-memory кэши на Go, о да, сколько раз их видел и не понимал понимают ли авторы этой идеи в проекте, что их микросервис будет в нескольких инстансах запущен в k8s ) Надо же распределенный кэш использовать.
@@rustam-kuramshin конечно же понимают, но возможно не все)) Когда надо, то используем внешний кэш. Когда критична производительность или не критичен рассинхрон кэша между микросервисами то используем инмемори. На все есть разные кейсы, ну и кэш кэшу рознь. Поэтому прежде чем имплементировать, то желательно подумать.
Я вот годы сидел на Шарпе, который к 20 годам, стал на мой взляд такой более правильной жабой, современной. А потом как то увидел цитатц Дейкстры о том - , что наследование очень плохая идея, которая могла быть придумана только в Калифорнии) И как то задумался , литературу почитал. И как то так стал с этим согласен) Ну индустрия вроде то же как то согласно - активно набирающие зяыки - Rust, Go более менее свеженький Zig эту идею не используют
1:18 - после такого выражения - предлагаю делать замечание, а потом исключать за нереагирование. меня такое оскорбляет. пришел послушать о технологиях, а тут тебе такое выдают
Нет более токсичного it сообщества, чем гошники. И тут типичный их представитель, бубнящий, как ему безрадостно жить в России, и не приведший ни одного нормального аргумента по теме разговора.
Сравнивают два языка сферы применения, которых не очень пересекаются. Т.е. на go можно пытаться писать энтерпрайзное монолитное с богатой доменной моделью и сложной логикой, но ... Короче, похоже на битву кита и слона))).
Да не , это просто как всегда уровень дискуссий в восточной европе)) Англоязычные Го абассадоры норм. Вообще теч на русском это такое себе. Неплохой го спикер на русском - Балун
Go: мне покайфу, java 1000 лет, ну там это, но я копайлот ставлю и норм Java: у нас стандартно, много всего, да многопоточка такая себе, но она есть, смотрим на звёзды запивая чаем
@@Печенька-з3в Сахарность есть в Kotlin, да. Котлин исправляет проблемы java, которые описаны в "Effective Java" Блоха. Много дискуссий было об этом, сам зарубался в холиварах с упёртыми java-боями почему котлин это не враг java ) Радует, что котлин основательно закрепился в разработке.
@@rustam-kuramshin так а кроме сахара в котлине есть принципиальные отличия от джавы? Сам например миксую джава и редкие котлин классы, потому что сахаром обсыпаться иногда очень приятно - ряд задач решается на котлине проще и красивее. Но не понимаю, когда о котлине говорят прям как о чем-то отдельном от джавы. Не вижу никаких фундаментальных различий
Java - сделали из ООП карго-культ с священным писанием и пророками. Сверху добавились защитные механизмы из мира живущих десятилетиями монолитов, половину кода в которых пишут индусы на аутсорсе. Как итог, в современном мире даже простые микросервисы будут дополнены большим количеством добавленной сложности.
Go - создавался по принципу "чтоб не как в жабе", в итоге в культ возвели обычный говнокод, ибо "сишные деды так писали и нам завещали". Что вкупе с общей низкоуровневостью языка, сделанной ради заточки на производительность, порождает пахучий код даже на самых простых проектах.
В итоге имеем классические два стула. Впрочем, посередине болтаются остальные языки, в каждом из которых своя заметная кучка проблем.
Напиши лучше свой язык программирования, там то точно все будет в порядке)
Ну стул го выглядит привлекательнее
в C# всё хорошо 😊
Да жаба во многом выродилась. Но тут же надо разделять саму жабу и спринг. Мы сути имеем вполне неплохой язык отдельно, а отдельно свернавороченный блексбокс, которому надо молиться как богу-машине. А сама JVM например очень крутая вещь.
Go не про производительность, он новый php со всеми вытекающими
😅 в то время как гошник пьет раф, джавер уже исправил свою банковскую систему так, чтобы до гошника доходили только уведомления, а бабки нет :)
за Kotlin и двор стреляю в упор! =)
upd. вместо аргументов и попыток копнуть глубже и раскрыть тему, Олег решил просто иронично шутить и снижать тем самым значимость вопросов
Да он НЛП владеет походу 😆
@@rustam-kuramshinда не работает ваше НЛП)
А по теме: какие вопросы считаете не раскрытые? Ну т.е. уходы в юмор были, но, например, тема с Spring унифицированным интерфейсом с завышенной значимостью) Т.е. да, это красиво, но нет, это не настолько практично: использовать другой интерфейс часто не настолько проблемно, Олег правильно перечислил кейсы (на базе пофиг, сверху изучать по любому) + чем более линейный код, тем проще использовать новый интерфейс (напр. если перешли в другую компанию).
@@VladimirS-h9o Для меня в определенный момент вышли на первое место качество и скорость разработки, особенно после того как стал team lead'ом. И если будет инструмент, который будет генерировать/создавать пофиг как 100% работающие бэкенд API, которые не будут тупить из-за ошибок в проектировании, то я буду топить за такой инструмент ) Не важно сколько магии в него заложено.
Разработчики часто видят только свое копание в проекте (код, фреймворки, паттерны). Но платят не за код, а за работающий продукт )
@@rustam-kuramshin я тоже не первый день в разработке и не встречал "серебрянных пуль") Так что задача принципиально неразрешима)
К тому же, я слышал про отсутствие корреляции ЯП на продуктивность разработки (это выявляется не на уровне разработчика и даже не на уровне личного опыта тимлида), а вот корреляция от уровня владения инструментом да, была.
11:17 Олег говорит правильные вещи. Ведущий упорно делает вид, что не понимает его (а может, и правда не понимает).
Компании не выращивают кадры. Они хотят сразу с мидлов. И эта ситуация везде. На завод приди - и там не выстроена система обучения. Как итог - проблема с кадрами.
Эта проблема на уровне всей экономической системы.
Ведущий этого не понял.
Поэтому Олег и сказал, что он в пузыре живет.
Где-то выращивают, где-то нет. Я помогал людям развиваться в java-разработке, когда нанимал в командуы, где был лидом. У кого-то может не быть на это ресурсов/желания. Ситуация везде разная.
А с чего вдруг бизнес должен хотеть вкладываться в обучение? Бизнес устроен цинично: выгодно - делаем, не выгодно - не делаем.
Наверное пока бизнесу обучение выстраивать невыгодно - не окупается.
@city-dweller, вы все правильно описали. Леваки это называют «внутренние противоречия»))
Когда системе с одной стороны что-то нужно, но с другой стороны она эти проблемы не решает.
До революции до фига такого было.
Например, все понимали, что нужно всеобщее образование. А с другой стороны, а куда этих грамотных девать, когда 80% населения занято сельским хозяйством на лошадях?
И сейчас у нас такого полно. Проблема есть, но в рамках текущей системы ее никто решать не будет.
Олег единственный номальный чел из всех этой публики айти амбассадоров на ютубе
Респект Олегу, адекватно отвечает на общие вопросы, которые толком не могут сформулировать джависты, и четко излагает мысль.
Чёткий пацык так-то. На go вот только пишет, но все мы ни без греха.
За Rust-ом и Kotlin-ом будущее
Прочитала - за Рустамом и Котлином😆😆😆😆
за растом…
Уже через 5 минут показалось, что Олегу не присылали заранее вопросы интервьюера)
Не скажу, что против рофлов), но, по моему, тема подкаста не была раскрыта совсем
Присылали! Но мы не профессиональные актеры (кроме Олега) 😄
Спасибо за интересное видео, посмотрел на одном дыхании!
P.S
Не знаю на самом ли деле Олег такой сноб, но слишком много иронии и едкости от него. Скорее всего на работе он общается по другому, просто такой у него стиль общения в неформальной обстановке)
Олег хороший парень, да. Всё норм. У него такая харизма.
Подкаст был бы интереснее, если бы go разработчик был бы в прошлом джавистом и мог бы сказать что в го лучше чем в джаве. Иначе 5 минут объясняется как в джаве накручено, а go разработчик отвечает "ну ок, у нас вроде всё и так работает"
А что ему отвечать, если в Go нет таких проблем? Там даже не приветствуется ORM использовать. Люди пользуются SQL-билдером или кодогенератором на подобии SQLC.
Джависты сначала накрутили сложностей, а потом хотят узнать, как это у других 😂
@@borismor1но sqlc это примтивный вариант spring data
@@BorisBobejko да все примитивно и максимально ясно.
@@borismor1 В Java тоже достаточно хейтеров ORM. Причина простая - люди, к сожалению, в большинстве своём не любят учиться и разбираться в сложных системах. "Магия" Spring и Hibernate, если принципы её работы понимать хотя бы в общих чертах, ничем не мешает, а лишь ускоряет работу, лишая разработчика необходимости кодить тривиальные вещи. Поэтому, пока гошники думают о том откуда скопипастить тот или иной код, джависты, хорошо владеющие фреймворками, думают больше о собственно бизнес-логике, нежели о рутинном boilerplate коде
@Krishna0666, я так понимаю, ключевые слова «хорошо владеющие фреймворком»?) А если человек плавает, то «черный ящик» выдает не то, что от него ждут. Ну и с кадрами проблемы пока найдёшь того самого хорошего джависта... Гошники допилят свой проект)
У меня есть пара знакомых джавистов. Там проекты собираются по часу. Люди покупают себе мощные компы, чтобы все это быстрей собиралось. Версии библиотек из середины 2000-х. Как это не вяжется с быстрыми решениями.
Мне понравилось, ребята с головой, это видно по тому как проводят собес
В итоге собес никто не прошел 😆
@@rustam-kuramshin 🤣
Тема не была раскрыта, как авторы языка специально насрали Go разработчикам в штаны, и теперь Go ждёт будущее Java
Клёво, прямо годно. Ждём ещё.
Наладим поставки подкастов 👍
Go притягивает велосипедостроителей и костылистов. Лучше держаться подальше :) Все, что понял из выпуска :)
Go победил
Олег - ксенофоб из мира golang)) Остальные в целом не хейтят golang, просто воспринимают это как другой инструмент.
Хоть не ксеноморф 😂
@@rustam-kuramshin просто слушаю и будто нет уважения к людям)) Особенно убило когда он в сторону джавистов сказал, что они меньше думают из-за того что, НЕ дублируют код. По этой же логике не нужно скачивать пакеты в свой проект, а писать свои чтобы больше думать. Я не golang разраб и не Java, но уважаю и тех и других, но Олег видимо слишком умен для того, чтобы уважать кого-то
@@ctarik3969 всё так, всё так )) Он даже с нами за один стол садиться не хотел. Думали уже телек с его головой ставить 😀
Олег просто мамкин позер, который оперирует и так всем известными терминами. Я если что юзаю гошку, до этого шарпы, и к жабе (точнее к спрингу) отношусь скептически. Но то что от гошки выступает это чучело картавое - это уже большой минус.
Дотнетера на вас нет) Спасибо за выпуск.
следующий выпуск - "Java vs C#. История одного ограбления" 😂
Так это братья-близнецы. Вот Go vs C# - вот это интересно
@@xinitru Да, GO vs C#
Надменность и некомпетентность Олега видна невооруженным взглядом.
Да устал наверное прост )
Да конченый этот ваш Олег, видно не вооруженным взглядом! А уж если вооружить свое око, то и вовсе вся правда всплывет!) Одним словом гофер!
@@olezhek28go такой негатив удалять будем
в Go постоянно занимаешься анализом пакетов. Хочу например инмемори кэш прикрутить - смотрю либы, выбираю наиболее подходящее, накрайняк сам пишу. Популярна кодогенерация тоже. А смена базы тоже без проблем происходит если правильно спроектировано приложение. Просто создаешь другую имплементацию для интерфейса (можно его Repository назвать). Вот функциональный код не очень красиво выглядит и сложную бизнес логику на Go не очень удобно писать. Выразительности не хватает. Иногда перехожу на Python если надо какой крон написать не особо производительный. В команде нет с этим проблем. Сервисы все на Go, кроны Go, Python. Интеграционные тесты на Java (так уж повелось). Проблем нет. Просто когда на Go пишешь немного паттерн мышления другой должен быть. Ну и не принято как-то использовать один большой "швейцарский нож" для всего. Чем меньше внешних зависимостей, тем лучше.
in-memory кэши на Go, о да, сколько раз их видел и не понимал понимают ли авторы этой идеи в проекте, что их микросервис будет в нескольких инстансах запущен в k8s ) Надо же распределенный кэш использовать.
@@rustam-kuramshin конечно же понимают, но возможно не все)) Когда надо, то используем внешний кэш. Когда критична производительность или не критичен рассинхрон кэша между микросервисами то используем инмемори. На все есть разные кейсы, ну и кэш кэшу рознь. Поэтому прежде чем имплементировать, то желательно подумать.
@bossikom возможно. Прост никогда не видел (не измерял) ценности локального кэширования в памяти.
Я вот годы сидел на Шарпе, который к 20 годам, стал на мой взляд такой более правильной жабой, современной. А потом как то увидел цитатц Дейкстры о том - , что наследование очень плохая идея, которая могла быть придумана только в Калифорнии) И как то задумался , литературу почитал. И как то так стал с этим согласен)
Ну индустрия вроде то же как то согласно - активно набирающие зяыки - Rust, Go более менее свеженький Zig эту идею не используют
1:18 - после такого выражения - предлагаю делать замечание, а потом исключать за нереагирование. меня такое оскорбляет.
пришел послушать о технологиях, а тут тебе такое выдают
Какие ранимые оказывается java программисты. Сами то про PHP не шутите?)
Не понял а какая часть была оскорбительной - про россию или джаву. Если про россию то по факту, если про джаву - ну саркастичный юмор. Большое дело
Примем к сведению
Блин если все гоферы такие унылые, лучше тогда cobol ))
какие языки такие и разрабы)) один шутит и пишет с кайфом, другой пытается выдать за плюс сложность языка и фреймворка)
А где курс Олега
в google написать "олег козырев go"
Нет более токсичного it сообщества, чем гошники. И тут типичный их представитель, бубнящий, как ему безрадостно жить в России, и не приведший ни одного нормального аргумента по теме разговора.
Я бы сказал что их побеждают фанатичные шарписты и джависты, объясняющие гоферам или питонистам, что такое настоящее ооп (строго как у них)
Бугага, иди с девопсом пообщайся, побежишь потом обниматься со своими шарпистами и джавистами )))
Словил флешбеки от просмотра) практически такой же разговор был у меня на работе - 0 аргументации от гошников, просто вопли
Да ужасные токсики, разведут по каналам и горутинам на месте )
WTF?
Тоби Магуайр клевый чувак
Сравнивают два языка сферы применения, которых не очень пересекаются. Т.е. на go можно пытаться писать энтерпрайзное монолитное с богатой доменной моделью и сложной логикой, но ...
Короче, похоже на битву кита и слона))).
На битву гофер с чашечкой кофе, которого заставляют насильно её выпить )
Sci-pie?
Олега не особо приятно слушать, как человека
Такой токсичный чувак, что даже к Go отношение стало хуже. Что если синтаксис влияет на характеристики личности?
Да не , это просто как всегда уровень дискуссий в восточной европе)) Англоязычные Го абассадоры норм. Вообще теч на русском это такое себе. Неплохой го спикер на русском - Балун
@mikeofs1304 на Балуна подписан. Классный чел.
Та ладно, Олег из гошки самый добрый)
все сыро. идея крутая, но нужно много чего поменять и докрутить. посмотри подкасты глеба соломина. как пример.
Эти?
ua-cam.com/video/RaIW1Zt308E/v-deo.htmlfeature=shared 😂
Например этот ua-cam.com/video/RaIW1Zt308E/v-deo.html ?
Клоун
Го настолько прост , что его могут выучить даже люди не смогшие выучить как выговаривать букву Р
Конечно Java.
Чел на го работает и не парится, а второй состоит в секте джавы)
Да, давно адептом стал )
Тема интересная, содержание нет
Java, Go... просто умных людей не хватает, язык не важен
Вся боль найма в it в этом
Почему же тогда до сих пор пишут на C++? Стонут, но продолжают жрать кактус
Шутки от Олега Козырева как отдельный вид искусства.
Не зря же в театре играет 🤣
Ведущий тоже похоже хочет на сцену но его не берут. (Я про первые 5 минут. Потом уже спокойней)
Go: мне покайфу, java 1000 лет, ну там это, но я копайлот ставлю и норм
Java: у нас стандартно, много всего, да многопоточка такая себе, но она есть, смотрим на звёзды запивая чаем
Все чилят, обсуждают возраст java
А не лучше ли чтоб и тот и другой ушли в историю?
Да! Поэтому Kotlin наше всё )
@@rustam-kuramshin, Так котлин это же просто засахаренная java
@@Печенька-з3в Сахарность есть в Kotlin, да. Котлин исправляет проблемы java, которые описаны в "Effective Java" Блоха.
Много дискуссий было об этом, сам зарубался в холиварах с упёртыми java-боями почему котлин это не враг java ) Радует, что котлин основательно закрепился в разработке.
@@rustam-kuramshin так а кроме сахара в котлине есть принципиальные отличия от джавы? Сам например миксую джава и редкие котлин классы, потому что сахаром обсыпаться иногда очень приятно - ряд задач решается на котлине проще и красивее. Но не понимаю, когда о котлине говорят прям как о чем-то отдельном от джавы. Не вижу никаких фундаментальных различий
@@Печенька-з3в есть kotlin native.