Это еще не сервис — это пока только идея, которую я отдаю на суд читателей моего блога. Здесь многого нет, но много хочется сделать. Планов масса, но показать я Вам его хочу уже сейчас и именно в таком виде.
Наша цель – отвлечь уже опытных программистов от их, иногда, рутинной работы, и дать возможность подразмять мозги нетривиальными задачами. Для молодых программистов – начать пробовать свои силы в питоне. Публиковать свои решения и получать отзывы и рекомендации.
В авторизацию мы напихали по-максимуму, по крайней мере для такого этапа. Тут Вы можете авторизоваться через твиттер, линкедин, фейсбук, оупенайди. Но для пришельцев из других галактик мы все-таки оставили простую и банальную регистрацию.
Дальше каталог. Ну, тут все просто, разделы и задачи. Выбираете, переходите к описанию, читаете, переходите к решению. Вотить и комментить можно уже сам таск.
После прочтения описания переходим к решению. В качестве решения Вам необходимо написать функцию checkio. Требования к этой функции ( что в нее входит и что она возвращает ) описано в самой задаче на предыдущей странице.
В редакторе у Вас уже лежит заготовочка функции checkio и ниже примеры для самоконтроля. Вы можете просто запустить программу (Run code) и справа увидеть результат выполнения.
Когда Вы решили, что правильно решили задачу, то наступает кульминационный момент, надо проверить решение. Нажимаете Check Task. Система проверяет Ваше решение. Если оно неверно, то система ненавязчиво Вам про это намекает красной надписью справа.
Но, если Вы решили все верно, появляется авторитетный кангратилейшен виндов! Тут Вам сразу предлагается опубликовать решение или пойти решать какую-нибудь другую задачу. Ну или можете закрыть это окно.
Мы Вам настоятельно советуем первый раз закрыть
, т. к. после публикации вашего решения — его будут видеть другие пользователи, которые опубликовали свое решение. А первое решение, как правило, содержит много дебажного кода, поэтому мы его чистим, проверяем задачу еще раз и публикуем решение.
После публикации Вы переходите в каталог уже опубликованных решений другими пользователями. Можете просмотреть их и ценить каждое решение. Прокомментировать их решения.
Все воты за ваши решения суммируются в Ваш рейтинг. А по рейтингу мы строим топ игроков.
Если Вы зайдете в профиль другого пользователя, то Ваши успехи будут сравниваться. Что решили вы, а не он, что решил он, а не Вы, что вы вместе решили, над чем он сейчас работает.
Также есть тестовая эксклюзивная задача – игра сапер. Задача простая: Вам необходимо написать программу, которая бы полностью открывала все поле в сапере. Для этого мы Вашу функцию checkio запускаем не один раз, а несколько, и каждый раз ей на вход передается текущее открытие карты, а возвратить она должна свой следующий ход или установку мины. Программа будет считаться правильной, когда будут установлены все мины.
Проверяется программа дважды. Результат первой проверки выводится пользователю. Он в поле результатов работы программы видит, как открывается поле и даже все свои принты между запусками. И второй раз на другой карте, такого-же размера, но промежуточные результаты пользователю не показываются, а только конечный.
С чего начать? Можете прочитать how to. Для начала опробовать функционал на какой-нибуть простенькой задачке, например складывания цифр. Ну и так далее
Вот пока и все. Создавался продукт на джанго, были сделаны некоторые форки с оупенсорсных продуктов и доведены до лучшего решения. О них я расскажу в следующих статьях «Checkio.org взягляд изнутри» вот с таким вот популистическим названием.
Основной вопрос – как вам в целом?
Что стоит добавить? От чего стоит отказаться?
Задач сейчас тоже не много, но мы будем работать и в этом направлении, так что, если у кого есть идеи по задачам, то мы будем рады выслушать Ваши предложения.







Recent Comments