Гостем очередной встречи jug.msk.ru, состоявшейся 14 ноября 2016 года, стал Егор Бугаенко. Темой его выступления стала критика популярного шаблона проектирования MVC (Model-View-Controller).



О докладчике


Егор известен своими нестандартными и смелыми взглядами на тему проектирования и программирования, в частности по поводу правильности ООП («true OOP»). По совместительству является CTO компании Teamed.io.

Широкому кругу русскоязычного Java-сообщества стал известен, вероятно, начиная со скандального эпохального выпуска 105 подкаста «Разбор полётов». Далее, начиная с Joker 2016, ярко выступил (и продолжает выступать) на русскоязычных конференциях России, Украины и Беларуси. Выступления на англоязычных же конференциях в качестве докладчика, судя по официальной странице, начались 23 апреля 2015 года. Там же указаны следующие 6 конференций в качестве докладчика.

Аудио с Егором:


Доклады на русском языке:


Веб-страница со всеми докладами Егора на конференциях (видео, презентации, фото) и графиком следующих выступлений. На той же странице дана краткая оценка конференций с собственным рейтингом (например, JPoint оценена высоко).

Статьи:


Книги:


Книги доступны только в бумажном виде, о причинах автор достаточно аргументированно пишет в одном из постов блога.

Ещё ссылки: сайт Егора, файлы всех презентаций, сайт Teamed.io, программные продукты (Takes, Rultor, jcabi).

О докладе


На встрече jug.msk.ru Егор выступил между участием в конференции XP Days Ukraine в Киеве (11-12 ноября) и конференцией DevOpsPro Moscow 2016 в Москве (15 ноября).

Кирилл Толкачёв, Егор Бугаенко, Андрей Когунь перед началом встречи.



Приветственное слово Андрея. Дружеское пожатие («пожалуйста, запомните этот момент»). Небольшая рекламы книги Elegant Objects автором.



Доклад состоял из трёх частей по одному часу каждая с двумя перерывами между ними. В первой части была, при активном участии аудитории, попытка понять, в чём заключается общая проблема понимания и использования объектов, классов, ООП вообще.



Во второй части Егором была показана типичная реализация шаблона проектирования MVC. Жаркое обсуждение продолжалось и в перерыве. Доклад под чутким наблюдением резидентов «Разбора полётов» — дискуссия Алексея Абашева и Егора Бугаенко.



В третьей части, в противовес классическому MVC, был представлен собственный вариант решения той же задачи. Дополнительно тот же подход был проиллюстрирован кодом проекта Rultor.

Вне зависимости от согласия или несогласия со взглядами Егора:

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

Материалы выступления, фото, видео появятся вскоре здесь и здесь.

В декабре состоится встреча с Иваном Крыловым (компания Azul) о Java 9 (анонс выступления), подписаться на рассылку можно там же.
Поделиться с друзьями
-->

Комментарии (23)


  1. UbuRus
    21.11.2016 00:15
    +1

    Я так понимаю на JUGе было то же самое что на JET Conf?
    https://www.youtube.com/watch?v=-Y4XS7ZtQ2g&feature=youtu.be
    https://github.com/yegor256/jetconf-2016


    1. dbelob
      21.11.2016 00:33

      Посмотрел — нет, не то же самое.

      Немного другая тема, продолжительность (3 часа вместо часа). Хотя подобный пример с Takes тоже показывался.


  1. babylon
    21.11.2016 00:59
    +3

    «Классы — это не объектно». Ещё один правильномыслящий чел это немало.


    1. dbelob
      21.11.2016 01:12

      Да, интервью интересное.


  1. pmcode
    21.11.2016 07:24
    +3

    Интересно, а Егор где-то работает на благо энтерпрайза, или только проповедует? Критиковать, даже обоснованно, невеликий труд. Нужно предлагать альтернативное решение и системный подход не уступающие общепринятым. В последнем докладе на JP2016 я его не увидел.


    1. dbelob
      21.11.2016 07:29
      +1

      Интересно, а Егор где-то работает на благо энтерпрайза, или только проповедует?

      Вполне успешно работает, являясь CTO компании Teamed.io.


  1. MonkAlex
    21.11.2016 11:04
    +2

    Ооочень спорный доклад по ООП в шапке посмотрел.

    Да, местами есть хорошие мысли и идеи, но выглядит каким-то передергиванием здравого смысла. Нельзя же говорить что «это всё неправильно, я знаю как правильно». Правильно — это когда удобно, понятно и не добавляет проблем. Пилить идеалистически правильно, но неудобно — для мазохистов.


    1. dbelob
      21.11.2016 11:20

      Ооочень спорный доклад по ООП в шапке посмотрел.

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


      1. MonkAlex
        21.11.2016 14:10
        +1

        Комментарии к статье характерные. Спасибо за ссылку.


        1. dbelob
          21.11.2016 14:21

          Пожалуйста. Те не менее, идеи Егором и компанией используются на практике (см. репозитории раз и два).

          Думаю, при появлении вопросов он сам yegor256 здесь с удовольствием ответит в комментариях.


    1. stokker
      21.11.2016 21:16
      +1

      Он не просто «пилит», он уже работает так…


  1. Cheater
    21.11.2016 14:53
    +4

    > Книги доступны только в бумажном виде, о причинах автор достаточно аргументированно пишет в одном из постов блога.

    Почитал пост по ссылке, аргументация честно говоря не впечатлила:

    Причина 1:
    > The only problem with TeX is that it formats texts for a fixed page size, unlike HTML
    PDF, DJVU, PS… — у всех размер страницы фиксированный, в чём разница с бумагой?

    > I don't know how to format them
    С изучением какого цифрового формата вёрстки с нефиксированной шириной возникли проблемы у человека, освоившего, на минуточку, LaTeX? С fb2?

    Причина 2 вкратце звучит как «тёплые ламповые книги». Это немного странно, что издатель книги ориентируется на свои личные предпочтения в этом вопросе, а не на диапазон предпочтений целевой аудитории.

    Причина 3:
    > All other reasons are derived from the fact that a digital book will inevitably be stolen and posted on torrents or somewhere else, for free download.
    > I want to earn. Not only because I need to pay my bills, but mostly because I want to stay motivated.

    Ну наконец открылась страшная правда. Подозреваю, это причина №1.


    1. dbelob
      21.11.2016 16:34

      Технические проблемы преобразования LaTeX в PDF, конечно, технически преодолимы чем-нибудь вроде этого.

      Причина 3, естественно, является главной:

      • при выкладывании электронной версии книга разойдется по торрентам;
      • автор книги/программы должен мотивироваться продажами.


      1. Borz
        21.11.2016 16:54
        +1

        если содержимое книги будет достаточно интересно сообществу, то оно само бумажный вариант оцифрует. Ну так, как один из показателей ценности содержимого


        1. dbelob
          21.11.2016 17:07

          Тоже предпочту электронный вариант книг (купив их), но право автора (Егора) распоряжаться своим трудом.


  1. kosmos89
    21.11.2016 18:19

    Чем-то напоминает лекции Рыбникова.


  1. stokker
    22.11.2016 07:38
    +1

    dbelob, а что, уже новый язык не разрабатывается? ))


    1. stokker
      22.11.2016 08:18
      +1

      вопрос снимаю, недоглядел…


      1. dbelob
        22.11.2016 13:44
        +1

        Будем надеяться, что будет какое-то продвижение дальше описания.


  1. babylon
    23.11.2016 05:15
    +1

    Мне описание не понравилось. Чего-то не то. Поэтому буду надеяться, что продвижения в данном направлении не будет. Tree от vintage смотрится лучше.


    1. dbelob
      23.11.2016 09:25

      Tree – формат представления данных, не язык программирования.


      1. vintage
        23.11.2016 09:42
        +1

        jack.tree — язык программирования.


        1. dbelob
          23.11.2016 12:19

          Спасибо за ссылку!