Первая PHP олимпиада в СНГ.

HEm

Сетевой бобер
мне вот еще интересно соотношение оценки за стиль и производительность - 200:50
т.е. если названия функций сделаны хорошо, отступы все стильные, комментарии компактные и толковые - 200 очков
если же решение оптимизировано для того, чтобы в 10 раз меньше потреблять ресурсов и работать быстрее - всего 50

как с этим дело обстоит в классических олимпиадах по программированию?
 

viewsonic

Guest
Автор оригинала: crocodile2u Битрикс, действительно, имеет ценность для клиентов Битрикс, в первую очередь. Для программиста его ценность уже не так велика (хотя интересно посмотреть их решения).
Зайди и скачай на их сайте. Любую версию. И смотри их решения хоть до опупения. :) Для этого не надо писать решения к 6 задачам. :)
 

vb

Новичок
admin
Есть такие, причем уже не первый раз на конференции.
Но я надеюсь Вы не утверждаете что их большинство. Я не думаю, что при средней з/п (на мой взгляд) 1000$ отбоя нет от участников, которые желают расстаться с третью своей з/п, чтобы "пообщатся и обменятся опытом", ну а те же кто решает платить за конференцию такие деньги из своего кармана, либо фанаты, либо им эти деньги не так уж нужны. На 300 баксов я бы лучше набрал кучу книг, а пообщался бы в аське, что и делаю.
Есть естественно категория, которая попадает на конференцию бесплатно, но на странице конференции я нашел только строчку "...награждаются бесплатным участием в Конференции" (поясню - нет строки "Выплачивается полная стоимость участия в конференции").
И причем тут работадатель?
1. Это тот кто должен оплатить участие.
2. Имидж нужен в первую очередь для того чтобы найти работу с более высокой оплатой, либо "потребовать" повышения с текущего работодателя.

А имидж ради повышения самооценки мне кажется ... как то по комунистически.... :).

Да с жюри извиняюсь проглядел, но тем не мене мне не дали ответ по каким стандартам будут оценивать архитектуру?

HEm
Спасибо, что высказали свое мнение
Хотелось бы также услышать предложения
То что первое приходит на ум, мое представление об олимпиаде:
1. Участие бесплатное
"В рамках PHPConference-2006 проводится Олимпиада среди php-разработчиков."
Если кто-то хочет выявить лучших, то должен проводить это в рамках бесплатных структур.
2. Задачи прежде всего должны быть на алгоритмы, а не на реализацию продуктов.
Лучшие выявляются тем на сколько они способны мыслить неординарно и насколько их решения хороши. Человек может использовать как известные алгоритмы, так и "свои придуманные" по ходу участия в олимпиаде. В любом случае шансов победить больше становится у того кто больше знает различных путей решений и умеет выбрать из них лучший, либо умеющий придумывать множество хороших вариантов решений.
3. Должны быть известны критерии оценки:
то есть временное ограничение, входные данные выходные данные. А не так как это происходит с заказчиками - сделайте то не знаю что, у васи пупкина это лучше сделано, потому что там кнопочка красивая.
4. Вот что касается того, как првязывать олимпиаду к пхп, то есть то, что называется ПХП-Олимпиадой а не просто олимпиадой, то тут я затрудняюсь, но думаю должно быть только одно ограничение - решения пишутся на пхп, а не на С паскале или еще чем-то...

вот пожалуй все, а детальная проработка всех этих предложений - это уже не мое дело...
 

crocodile2u

http://vbolshov.org.ru
HEm
Оптимизация следует обычно после того как бывает доказано, что в ней есть необходимость, и после получения результатов профилирования. Этот процесс может быть весьма трудоемким, но трудоемкость его значительно снижается при наличии грамотно оформленного и закомментированного кода (впрочем, ябы все это заменил одним выражением "хорошо читаемый код").

-~{}~ 21.04.06 11:30:

viewsonic
Спасибо за информацию. не знал, ибо заходить туда не приходилось..
 

HEm

Сетевой бобер
1. Участие бесплатное, имеется в виду, что эти мероприятия связаны, видимо через предоставление в качестве призов билетов на участие в пхпконф.

И вообще, это акция вряд ли является претензией на единственно главную и правильную олимпиаду по PHP. Это просто связанное мероприятие, которое вообще-то было бы желательно провести еще два-три года. Тут скорее всего виной довольно вялое течение общественной жизни в России вообще и в сообществе разработчиков в частности и в сообществе веб-разработчиков на PHP в конкретной частности. Но надо же хоть с чего-то начинать!

2. Задачи на алгоритмы уже отходят от тематики PHP. И это будет уже весьма другая олимпиада.

3. Критерии указаны на сайте, они достаточно понятны. Абсолютно их формализовать нереально, иначе тогда не нужны были бы судьи, всю оценку проводил бы автоматизированный комплекс. Потом - как оценить, что юзабилити одного решения лучше чем у другого? Как оценить, что реализация в два раза оригинальнее другой? Все это субъективно, по любому. Остается только правилльно выбрать жюри, чтобы там сидели эксперты, мнение которых было бы принято сообществом.

crocodile2u

Иногда оптимизация сразу закладывается в реализацию и может являться одним из критериев "красивости". Т.е. заложена архитектурно.
 

crocodile2u

http://vbolshov.org.ru
HEm
На суд жюри предоставляется код. Если код криво оформлен, непонятен, то будь он трижды оптимален - я пойму жюри, которое поставит ему оценки ниже, нежели менее оптимальному, но более красивому коду. Хотя, по-моему, чаще всего "оптимальность" и "красота оформления" все же как-то сопутствуют друг другу..
 

viewsonic

Guest
$300 участие??????? Я только сейчас это понял... Блииин, на Siggraph и CA мастер-классы такая же стоимость. И что такое Siggraph, и что такое phpconf? Я просто в шоке. Это при средней зарплате в штуку здесь и пять штук Там...
 

vb

Новичок
HEm
1. Участие бесплатное, имеется в виду, что эти мероприятия связаны, видимо через предоставление в качестве призов билетов на участие в пхпконф.
Речь о том, что для того чтобы попасть туда нужно купить билет.
А если ты занял 6-е место, то получается ты должен заплатить за то, что ты такой не путевый принял участие (опять же грубо говоря).
2. Задачи на алгоритмы уже отходят от тематики PHP. И это будет уже весьма другая олимпиада.
Не соглашусь.
давайте посмотрим на phpclasses.org - репозитарий классов, среди которых есть классы и на интересные алгоритмы. Но "фишка" в том что они реализваны на ПХП. На самом деле большинство алгоритмов используемых в повседневной жизни уже давно придумано, вопрос в реализации. А следовательно реализация на пхп может координально отличаться от реализации на С++. Соответственно задачи на алгоритмы в купе с критерием реализации на ПХП - это будет полноценная ПХП-Олимпиада.
Например, в PHP есть ассоциативные массивы, а в Паскале нет ассоциативных массивов в чистом виде.
Вот вам раз различие в реализации. Дальше сортировки... сколько их в ПХП, и сколько еще языков может похвастаться их изобилием.
А вот например алгоритм находждение наибольшего общего подмножества - в какой функции пхп реализован? Я что-то не встречал. Реализаций с учетом специфики ПХП может быть масса, а критерий времени будет одним из основополагающих.
Причем одна реализация может быстро работать при 1 кб входных данных, а при 100 Кб "загибаться", а другая может чуть медленнее работать на 1 Кб, но стабильно на 100кб входных данных. Причем данный момент может получится непосредственно из-за использования/не использования встроенных функций... например один выбрал str_replace, другой выбрал preg_replace, а третий вообще через pos и substr, в одной и той же части реализации и время выполнения только за счет этого сразу расходится.

Что касается полного перечня критериев я не намерен тут его придумывать - это не моя задача, а то что я понял из поставленных задач - это надо "сливать".
Вечером посмотрю критерии оценки на сайте, отпишусь, с чем не согласен, а с чем нет.
 

Alexandre

PHPПенсионер
я человек особо не тщеславный, но считаю, что:
- быть победителем очень престижно.
Лучшей наградой было бы:
фотографии Победителей (1-5 места) вывесить на отдельной странице РНР Клуба, а также опубликовать в Инсайде (думаю Гл. редактор меня поддержит)

Что касается денег, то не в деньгах счастье.

-~{}~ 21.04.06 13:07:

Потом - как оценить, что юзабилити одного решения лучше чем у другого? Как оценить, что реализация в два раза оригинальнее другой? Все это субъективно, по любому
HEm Я был членом жури по выбору лучшей статьи (на конкурсе статей ) от РНРИнсайда. Скажу, что оценить статью было очень трудно. Статьи оценивались по:
- стилю написания и читаемости
- технической грамотности
- актуальности проблематике
- сложности освещаемого вопроса
критериев было меньше (три), но я после писал свое предложения Гл. Редактору. По каждому критерию выставлялась оценка 1-5, далее брался средний бал.

Очевидно, что код оценивать не менее сложно, чем статьи. (Например по критерию технической грмт я почти всем поставил 5)
Скорее всего - организаторы уже знают критерии оценки. Да, они во многом субъективны. Но я последнее время очень много дела имею с чужим кодом, и на своей шкуре прочуствовал, что такое юзабилити кода. Дается время на реализацию проекта, юзабилити кода можно довести до соответссвующего тебе уровню.
Архитектура - ее оценить сложно. Сколько людей, столько и мнений. Оценить Архитектуру сложно, особенно если одни приверженники использования стандартных паттернов, другие приверженники собственных. Третьи - вообще не применяют ООП.
 

asm

Пофигист
Выскажу и я свои 5 копеек:

По моему мнению олимпиада она на то и олимпиада что бы продвигать новичков. Или покрайней мере что бы опыт не был главным критерием победы. Красивые решения намного лучше стандартных!!!

Или это олимпиада что бы померятся старожилам своими пиписками... Так я думаю за такие призы вряд ли кто из старожилов будет учавствовать :)))

Да и Битрикс кому он нужен? Бесплатно будут раздавать не буду использовать.
 

Alexandre

PHPПенсионер
Причем одна реализация может быстро работать при 1 кб входных данных, а при 100 Кб "загибаться", а другая может чуть медленнее работать на 1 Кб, но стабильно на 100кб входных данных. Причем данный момент может получится непосредственно из-за использования/не использования встроенных функций...
с этим я полностью согласен, кроме архитектуры решения, должно учитываться производительность того или иного решения, т.е. профайлинг - должен быть как один из дополнительных критериев.

По моему мнению олимпиада она на то и олимпиада что бы продвигать новичков. Или покрайней мере что бы опыт не был главным критерием победы. Красивые решения намного лучше стандартных!!!
Согл. по этому один из критериев - оценка архитектуры. В задачах нет ничего особо сложного. Остается их сделать красиво.

Да и Битрикс кому он нужен?
Битрикс - это спонсор, Спонсору надо как-то себя рекламировать. Вот он под видом Олимпиады - рекламирует свой продукт, чтоб слово Битрикс было на слуху. Это как реклама на ТВ, началась - мы сразу идем в туалет или переключам канал. Уже вошло в привычку. Но кто-то ее смотрит и ругается - что много рекламы. А итог - только себе нервы портит, все равно он ничего не изменит.

Помниться на 3й Конференции разыгрывализа за анкетирование NetCat, Тоже промо акция. Смотреть надо на вещи проще (например относиться как к рекламе на ТВ ).
 

aanabar

Новичок
Автор оригинала: Alexandre
Скорее всего - организаторы уже знают критерии оценки. Да, они во многом субъективны. Но я последнее время очень много дела имею с чужим кодом, и на своей шкуре прочуствовал, что такое юзабилити кода. Дается время на реализацию проекта, юзабилити кода можно довести до соответссвующего тебе уровню.
Архитектура - ее оценить сложно. Сколько людей, столько и мнений.
Основные критерии оценки и акценты опубликованы на сайте Олимпиады. Что касается субъективизма оценкок, то мы можем только снизить эту проблему правильно подобрав состав жюри. Мне кажется, что у нас оно получилось достаточно представительным, хотя идеал, разумеется, не достижим ;)
 

vb

Новичок
Саша, еще раз это НЕ ОЛИМПИАДА!
А быть первым среди кого?

Еще раз прочитал, теперь уже кажется все, на страницах "олимпиады" и сделал вывод - "сливать".
1. Однозначно - просто инструмент наживы под красивым словом "олимпиада".
работы, занявшие первые три места по каждой задаче публикуются на сайте phpconf.ru в открытом доступе под лицензией BSD, то есть могут без каких-либо ограничений использоваться третьими лицами в своих продуктах
2. Не знаю ни одной олимпиады, в которой задания выполняются не на равных условиях (то есть одно дело, когда все сидят в одном помещении и делают за четко определенное время, а другое дело то что вы предлагаете).
3. Не знаю ни одной олимпиады по программированию, где такие критерии оценки.
Безопасность // 150 - 15%
Архитектура // 250 - 25%
Качество кода // 200 - 20%
Документация // 100 - 10%
Usability // 250 - 25%
Производительность // 50- 5%
Где это видано????
Качество кода - А где хоть одно слово о той самой стилистике кода? Может стилистика как у золотого спонсора должна быть? Я бы за такую стилистику по 0 ставил бы.
Документация - Наверное "олимпиада" - это соревнование по тому кто лучше документирует.
Usability - Так "олимпиада" PHP или по навыкам дизайна?
Производительность - очень "хороший" подход, подозреваю даже, что для некоторых систем, это стандарт уделять производительности 5% внимания.
а теперь скажите, как будут оцениваться не доделанные работы из этих критериев? То есть человек сделал красивый и удобный дизайн, написал документацию несуществующего решения и создал архитектурное решение <? php class Task {} ?> - расширяйте до безумия :) соответственно в кармане 60% выполнения - бред.
Задача прежде всего должна оцениваться - работает или нет - 50%
производительность следующий по важности критерий, дальше может быть можно еще включить безопасность. Стилистика должна иметь не больше 5%. расширяемость не больше 5%, над прочими параметрами не мне думать. Но все это очень плохо продумано!
4. О платном участии я говорил, о призе, да хрен с ним с призом, он и вовсе не нужен, но при условии, что задачи ОЛИМПИАДНЫЕ, а не заказы от спонсоров.
5. О жюри ничего не могу сказать не знаю, но хотелось бы увидеть все результаты.
6. При публикации подобных решений лицензия BSD не допустима, без согласия разработчика. Допустима лицензия только для не коммерческого использования.
7 и последнее, реплики не нравится не участвуй прошу оставить при себе, я попытался внести критику и предложения, потому как считаю, что это кто то должен делать если хочет чтобы идея реализовалась, а не была тем "чудом" которое нам пихают.

Спасибо.
 

confguru

ExAdmin
Команда форума
vb

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

Alexandre

PHPПенсионер
Задача прежде всего должна оцениваться - работает или нет
должно стоять на главном месте.
Из сделанных задач необходимо выбирать претендентов на победу, т.е. все критерии по определению кто лучше должны применяться только к выполненным (рабочим) задачам (без багов). Это должно быть краеугольным камнем.
 

master_x

Pitavale XXI wieku
crocodile2u
Для программиста его ценность уже не так велика (хотя интересно посмотреть их решения)
персональный вопрос:
слушай, ты же ведь наверняка программист достаточно опытный, что для тебя там может быть интересным??? какие решения? все, что касается CMS, гестбукс, форумов уже давно обмусолено в интернете/книгах вдоль и поперек. разницы между твоими, моими решениями, решениями Васи Пупкина, программистов Битрикс нет. что там может быть интересного? имо, битрикс-- самая дурацкая награда для программиста.
 

vb

Новичок
Спасибо за критику и предложения, обязательно учту
На здоровье.
в будующем и даже включу в состав жюри.
Это предложение? Если речь идет о предложении, то мне это интересно, но только при условии координального изменения формата мероприятия.
А еще у меня личная не любовь к битриксу, и поэтому я бы не хотел видеть портного не умеющего шить в спонсорах мероприятия, где выявляется лучший модельер.
должно стоять на главном месте.
Из сделанных задач необходимо выбирать претендентов на победу, т.е. все критерии по определению кто лучше должны применяться только к выполненным (рабочим) задачам (без багов). Это должно быть краеугольным камнем.
А я думал это только в аське :). И еще раз, ты не прав. Да ты уже наверное и сам понял.
 

crocodile2u

http://vbolshov.org.ru
master_x
Интересны в первую очередь архитектурные решения. Очередная рализация гостевой книги вряд ли представляет большой интерес :).
А вот архитектура, например, Limb или WACT, на мой взгляд, весьма хороша (хороша уже и продолжает совершенствоваться). И нет ничего не зазорного в том, чтобы подглядеть удачные решения у других разработчиков...
А Битрикс не видел пока. Но, возможно, посмотрю, благо viewsonic мне глаза открыл :)
 
Сверху