Вы даже не представляете себе стандартную библиотеку Питона, правда?
В стандартной поставке Питона – целая куча структур данных, алгоритмов, поддержка сетевых протоколов, форматов файлов, разнообразного кодирования, в т.ч. поддержка записи аудиофайлов (!), UI тулкит (!), встроенная СУБД.
А в ноде – чтение-запись файлов (== потоков байт), простенький веб-сервер и биндинги к openssl.
Сделаем проще: я завтра спрошу у техдира и опубликую его ответ. Годится?
Отличается значительно: язык другой, задание другое, приемочные критерии объективные.
Есть также сходство: никто не заставляет в этом участвовать. Даже вас. Особенно вас. Мы вообще против насилия и за личностные свободы, что бы этот набор слов ни значил.
Именно. Поэтому не надо затачивать, надо переделывать код, чтобы он в принципе работал быстрее. Как в настоящем проекте. В продакшене никаких тестов нет, там юзеры.
Вырожденных дурацких случаев вида "%d%d%d 250 тысяч раз" в финальном тесте не будет.
На олимпиадах по программированию правильность измеряют, а не скорость.
На олимпиадах органичивают снизу скорость, измеряют корректность.
Мы ограничиваем снизу корректность, измеряем скорость.
Такая вот анти-олимпиада.
В бенчмарке будут самые обычные тесты, из кода логирования и т.п. вещей.
Если их раскрыть, то появится возможность написать код, который очень быстро и хорошо проходит все тесты – и только их, т.е. ни в каком другом случае не работает. Формально это является решением.
На олимпиадах по программированию тоже никогда не открывают приемочные тесты, т.к. теряется всякий смысл.
Блоги компаний существуют именно для этого. (Если вы не согласны с этим утверждением, попробуйте придумать, зачем кто-то станет платить деньги за то, чтобы писать потом буковки чужому дяде на коммерческий сайт.)
В стандартной поставке Питона – целая куча структур данных, алгоритмов, поддержка сетевых протоколов, форматов файлов, разнообразного кодирования, в т.ч. поддержка записи аудиофайлов (!), UI тулкит (!), встроенная СУБД.
А в ноде – чтение-запись файлов (== потоков байт), простенький веб-сервер и биндинги к openssl.
Вообще мне самому интересно.
Высокоуровневые примитивы появляются в библиотеках (например, connect).
Направление верное.
Сделаем проще: я завтра спрошу у техдира и опубликую его ответ. Годится?
Отличается значительно: язык другой, задание другое, приемочные критерии объективные.
Есть также сходство: никто не заставляет в этом участвовать. Даже вас. Особенно вас. Мы вообще против насилия и за личностные свободы, что бы этот набор слов ни значил.
Но так уж исторически сложилось.
В этот раз всё лучше: есть и способ валидации, и сроки окончания.
Есть еще какие-то наброски с нативным кодом (модуль Node на C++), но пока JS уделывает этот гибридный вариант.
А на обиженных традиционно воду возят.
Вырожденных дурацких случаев вида "%d%d%d 250 тысяч раз" в финальном тесте не будет.
На олимпиадах органичивают снизу скорость, измеряют корректность.
Мы ограничиваем снизу корректность, измеряем скорость.
Такая вот анти-олимпиада.
Забыть про оптимизацию не позволяют масштабы проекта, увы.
Если их раскрыть, то появится возможность написать код, который очень быстро и хорошо проходит все тесты – и только их, т.е. ни в каком другом случае не работает. Формально это является решением.
На олимпиадах по программированию тоже никогда не открывают приемочные тесты, т.к. теряется всякий смысл.
Именно поэтому теперь у конкурса есть срок окончания.