<rmcreative>

RSS

CodeFest 2011, впечатления

27 марта 2011

CodeFest 2011 удался.

Необычности конференции

  • На втором этаже висела доска для хедхантинга, поэтому никто ни за кем не бегал и не вносил в действо дополнительный хаос.
  • Виски-пати. 800 it-шников под виски — это весело :)
  • Как это ни странно, не было накладок. По крайней мере существенных. Уже потом я узнал, насколько долго и кропотливо организаторы ради этого готовились.
  • Содержимое стандартного для конференций спам-пакетика, в котором самым полезным, обычно, являются блокнотики и ручки, оказалось на удивление ещё и приятным.
  • Можно было поиграть в денди :)
  • В задней части зала веб-секции был стол с старыми ноутами, одним из первых вариантов мыши и железным феликсом.

Доклады

Так меня достаточно сильно утомил перелёт, а во второй день виски-пати с продолжением, некоторые доклады я пропустил. Очень надеюсь пересмотреть их на видео. Почти всё, что я не пропустил очень и очень порадовало: понравились доклады веб-секции, удивили невероятно увлекательные доклады секции PM.

Вообще состав докладчиков очень сильный. Если с видео всё будет хорошо, очень рекомендую посмотреть.

Люди

Аудитория на CodeFest просто замечательна: активна, общительна, задаёт интересные вопросы и умеет хорошо провести время. Тех, кто работает с Yii на удивление много. И это не только сотрудники ДубльГИС.

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

Удалось пообщаться с позитивными ребятами из JetBrains и особенно с Николаем Матвеевым, который занимается PhpStorm. Узнал про IDE пару интересных вещей, зарепортил на месте несколько багов (кстати, по крайней мере, один уже исправили) и сильно заинтересовался MPS.

Доклад про Yii и фидбек

Доклад в этот раз был не совсем обычный: рассказывал я больше не про сам фреймворк, а про то, как он создавался, дорабатывается и развивается. Ну и про то, что мы делаем, чтобы всё было хорошо.

По докладу было задано довольно много вопросов. Вместе с ответами, надеюсь, они будут на видео. Уже приехав домой я посмотрел твиттер и, думаю, стоит прояснить пару моментов… на всякий пожарный:

Разработчик Yii рассказывает, что они фапают на Рельсы :)

Рельсы — штука приятная, и она мне, да и многим из Yii core team, в разумных пределах нравится, но в докладе я как раз пытался рассказать, что копирование рельсов 1 в 1 без обдумывания того, подойдёт ли это Yii и PHP в общем — дело гиблое. Мы вообще стараемся обдумывать и обсуждать всё.

Yii красивый api, мощный, гибкий, быстрый и … и … пересекается с joomla? Что? Что он сказал?

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

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

Город и не CodeFest

  • Погода была отличной. Тепло и очень солнечно.
  • Очень-очень понравился офис ДубльГИС.
  • Приятное метро, в котором есть чем дышать и есть на что посмотреть.
  • Отличная инфраструктура. Отличный аэропорт, больше походящий на этот самый аэропорт вокзал, электронные знаки на дорогах и ещё много удобных мелочей.

Пре- и пост-фест

Спасибы

  • Всем, кто помогал привести идеи доклада в логически верный порядок.
  • Организаторам за то, что всё получилось и получилось отлично.
  • Александру Бирюкову за приглашение и радушный приём.
  • Игорю Старикову за приятную кампанию и небольшую, но интересную экскурсию.
  • Команде ДубльГИС за настроение, вопросы, кампанию, поднимающий рабочий дух и настроение офис и бесценный опыт.
  • Всем, кого по какой-то причине забыл упомянуть. Я не специально, так бывает ;)

Ссылки

Комментарии RSS

  1. №4218
    Али
    Али 27 марта 2011 г., 1:49:20

    Эхх, жаль мне пока никак не попасть на такие фесты :-(

  2. №4219
    nixennixenovich
    nixennixenovich 27 марта 2011 г., 6:00:17

    /из презентации/

    код без документации = мусор ,значит код = мусор + документация :)

    шучу

  3. №4220
    Павел
    Павел 27 марта 2011 г., 9:29:03

    Александр, в типичном action меня зацепила строка if (!$post) throw new CHttpException(404);

    С Yii не знаком, но мне интересно, такой вариант разработчики рассматривали (грубо): myAssert($post, 'Http 404'); // Или встроенный в PHP assert можно настроить

    Концепция assert мне показалась выразительной ещё в Delphi, лет 10 назад. С тех пор таскаю её с собой.

    Отсюда интерес: если вдруг рассматривали и отвергли, то почему?

  4. №4221
    Sam
    Sam 27 марта 2011 г., 9:54:57

    Павел,

    assert не рекомендуется использовать не для дебага:

    Assertions should be used as a debugging feature only. You may use them for sanity-checks that test for conditions that should always be TRUE and that indicate some programming errors if not or to check for the presence of certain features like extension functions or certain system limits and features.

    Assertions should not be used for normal runtime operations like input parameter checks. As a rule of thumb your code should always be able to work correctly if assertion checking is not activated.

  5. №4222
    Павел
    Павел 27 марта 2011 г., 10:58:40

    Хорошо, опустим допущение, что штатный assert (о котором речь идёт в цитате) можно допилить.

    Вопрос всё равно актуален, с точки зрения практики программирования. Я так понимаю, что в этом ключе не рассматривали?

  6. №4223
    Sam
    Sam 27 марта 2011 г., 13:08:36

    С точки зрения практики и то и то видится мне эквивалентным.

  7. №4224
    Dr0ID
    Dr0ID 27 марта 2011 г., 13:26:32

    блин, жаль из-за дел не получилось прийти :(

  8. №4225
    x007xx36
    x007xx36 27 марта 2011 г., 13:58:50

    тебе респект

  9. №4226
    resurtm
    resurtm 27 марта 2011 г., 14:27:35

    Мелочь и К.О., но было бы приятнее в презентации, на странице 3 сделать так:

    $this->render('view', compact('post'));
    
    

    Хороший отчет, спасибо!

  10. №4227
    idle sign
    idle sign 27 марта 2011 г., 20:06:39

    В следующий раз будем глядеть на памятники: от колбасы до Владимира Семеновича.

  11. №4231
    Sasha
    Sasha 27 марта 2011 г., 22:24:00

    Очень интересно, что за MPS? Читал, смотрел по ссылке. Но как-то и не понял совсем((( Александр, не получится в 2-х словах, на русском, что это и для чего?)) Пожалуйста!)

  12. №4239
    hlopetz
    hlopetz 29 марта 2011 г., 14:16:31

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

  13. №4240
    Dr0ID
    Dr0ID 29 марта 2011 г., 14:29:53

    hlopetz,

    $post = Post::model()->findByPk($id);
    
    аналог
    $post = new Post;
    $post = $post->findByPk($id);
    
  14. №4244
    Sam
    Sam 30 марта 2011 г., 2:39:09

    Dr0ID, не аналог.

    Dr0ID, hlopetz, статический метод model возвращает модель в состоянии finder, которое не содержит каких-либо данных. А вот после findByPk($id) уже получаем модель с данными и работаем с ней уже без статических методов.

    hlopetz, а в чём проблема с тестами? Вот так тестим.

  15. №4245
    Sam
    Sam 30 марта 2011 г., 2:41:03

    Sasha, в двух словах про MPS у меня не получится.

  16. №4254
    Misha
    Misha 30 марта 2011 г., 17:37:31

    Насчёт MPS действительно хотелось бы увидеть на практике, как помогает. Понимаю, что времени совсем нет. Сашик, но вдруг получится, будет оооооочень хорошо :)

  1. Почта опубликована не будет.

  2. Можно использовать синтаксис Markdown или HTML.

  3. Введите ответ в поле. Щёлкните, чтобы получить другую задачу.