Вы просто сидите за своим столом, занимаясь своими делами, пытаясь выполнить работу. Затем, как это неизбежно происходит, вы сталкиваетесь с незначительным препятствием: ваш код выдает загадочное сообщение об ошибке.
«Нет проблем», как вы думаете. Это не ваш первый родео. Таким образом, вы копируете и вставляете дословно сообщение об ошибке в Google и смотрите, что вы получаете.
Неудачно.
Есть много результатов поиска, но ни один из них не подходит для вашей ситуации достаточно близко, чтобы действительно дать полезный ответ.
И вот начинается творческий процесс поиска в Google. Вы пробуете несколько комбинаций ошибки + контекст, в котором вы ее используете. Вы пытаетесь включить имя библиотеки, которую вы используете. Вы знаете, что становитесь ближе ...
Теперь, с шестой попытки, вы попробуйте другую комбинацию поисковых терминов и нажмете клавишу возврата Страница загружается, и вы только что начали просматривать результаты, когда вдруг открывается окно вашего браузера, и вы видите это:
«Вы говорите на нашем языке. Готов к испытанию?
"Чего ждать?"
"Откуда это взялось?"
«Какой-то вызов от Google ... Это основано на моей истории поиска?»
Вы полностью забываете об ошибке в своем коде. Теперь вы полностью поглощены странной ситуацией, в которой вы оказались. И, как бы это ни было интересно, вы замечаете что-то, что только добавляет интригу. Рядом с сообщением вы видите, что первая кнопка говорит:
"Я хочу играть"
О, так это игра ? Интересно…
Преодолеть с любопытством, вы принимаете. Раскол в окне вашего браузера медленно увеличивается, показывая большой черный экран, который затем исчезает. Затем вы будете перенаправлены на сайт www.google.com/foobar/ . Появляется черный экран и появляется текст. Это похоже на оболочку Unix.
Эстетика страницы (ретро компьютерный шрифт, скрытый терминал, отсутствие современного пользовательского интерфейса) в сочетании с «007 - Ваша миссия, если вы решите принять ее», ощущение всего этого опыта заставляет вас чувствовать, что вы втянут в тайный мир. Вы теперь полностью поглощены.
В верхней части экрана есть текст:
«У Google есть вызов кода, готовый для вас»
Чуть ниже есть параграф синеватого текста, который готовит почву для фантастического приключения:
«Успех! Вы сумели проникнуть в злую организацию Командора Лямбды и, наконец, заработали себе позицию начального уровня как Миньон на ее космической станции. Отсюда, вы просто можете разрушить ее планы использовать устройство LAMBCHOP конца света, чтобы уничтожить Планету Банни. Проблема в том, что миньоны - это самый низкий из минимумов в иерархии Lambda. Лучше встряхнись и приступай к работе, иначе ты никогда не доберешься до вершины ... »
"Ладно. Похоже, я могу либо исследовать терминал, либо начать испытание ... »
Ваше любопытство снова побеждает в вас, и вы думаете: «Я не могу просто начать игру, не подглядывая немного». Таким образом, вы набираете «помощь» и нажимаете клавишу возврата. Появится список команд оболочки.
"Очень интересно. Итак, мы явно будем работать с файловой системой. Но это довольно ограниченный список вариантов ».
Вы решаете проверить, доступны ли какие-либо из перечисленных общих команд, поэтому попробуйте что-нибудь простое:
foobar: ~ / guest $ pwd
Оно работает! Ты видишь:
/ Главная / гость
Потрясающие.
«Хорошо, давайте посмотрим на этот домашний каталог. Там наверняка будет еще кое-что интересное »
Итак, вы попробуйте:
foobar: ~ / guest $ cd ..
А также…
Ничего такого.
Вы получаете новую строку без ошибок, но когда вы запускаете pwdснова, просто чтобы проверить, вы все еще видите /home/guest. Хорошо, так что, вероятно, это не оболочка unix с открытым миром, переполненная пасхальными яйцами, как вы и надеялись. Таким образом, вы решили просто продолжить вызов.
Вы вводите слово «запрос» и нажимаете клавишу возврата.
Появится приглашение, предупреждающее вас о том, что это временное задание, и у вас будет 48 часов на его выполнение.
"Вот это да. Хорошо, так что пора ...
Вы соглашаетесь и продолжаете.
Больше научной фантастики, и тогда вы увидите, что что-то названное solar_doomsdayбыло добавлено в вашу домашнюю папку. Итак, вы переходите к папке, открываете ее и находите четыре файла:
constraints.txt
readme.txt
solution.java
solution.py
Readme кажется очевидным местом для начала. Вы открываете файл readme и видите следующее: