Не позволяйте названию сбить вас с толку. Я благодарен за свой первый в истории хакатон, который привел к победе, и я приложил немало усилий, чтобы ее заработать. Но я не думаю, что получил максимально возможный опыт. Позвольте мне подготовить почву, а затем я объясню.
Настройка
Я объединил усилия со своим давним другом и гуру компьютерной безопасности, Коннором Эгбертом, для BrickHack 4, ежегодного зимнего хакатона Рочестерского технологического института, открытого для публики. Мы оба учимся в четвертом классе школы, но никогда раньше не участвовали ни в одном из этих тестов на выносливость. Поскольку пресловутые часы отсчитывают нам оставшийся учебу в колледже, мы решили попробовать.
Коннор принес на стол оборудование и серверную часть, а я - программное обеспечение и дизайн. В течение следующих 24 часов мы превратим идею в полностью работающий прототип внутри столовой, ставшей цифровой.
Идея
Придя к участию в хакатоне, мы знали, что хотим сделать: предоставить не «умные» стиральные машины (стиральные и сушильные машины) интеллектуальными возможностями за небольшую часть стоимости. Как первокурсники, Коннор и я испытывали легкие неудобства, когда приносили грязную одежду вниз с шести этажей в общую прачечную нашего общежития и обнаруживали, что все машины заняты. Вздох.
Путем хитроумных разработок мы могли разместить датчик движения внутри каждой машины и транслировать информацию о ее профессиональном статусе, основанную на движении, на конкретный «хаб» (сервер) прачечной.
Мы пришли к подходящему лозунгу: если трясется, значит, занято.
Мы могли бы установить эти устройства на всех общедоступных машинах по всему университетскому городку, менее чем за 1/25 стоимости их обновления через розничную торговлю.
Не выходя из своих комнат в общежитии, студенты могли использовать созданный мной мобильный интерфейс для поиска в прачечной самообслуживания и проверки наличия открытых машин.
Это решение не полагается на информацию из краудсорсинга и является масштабируемым. Мы назвали его Lndry, «прачечная» без гласных. (Послушайте, мы всю свою креативность направили в другое место…)
Если вы хотите узнать больше о разработке и технической стороне дела, ознакомьтесь с нашим Листингом для разработчиков.
Lndry выиграл хакатон в категории Интернет вещей после того, как мы полдюжины раз продемонстрировали его различным судьям, сотрудникам и другим хакерам. Людям очень понравилась идея и наши презентации, и мне очень понравился мой первый опыт хакатона.
Ну, в основном.
Оглядываясь назад, я мог бы достичь почти такого же конечного результата, если бы сменил свое мышление с желания победить на желание повеселиться… или, может быть, на хорошую золотую середину.
Что бы я сделал по-другому
Я бы больше исследовал свое окружение. Я был так сосредоточен на контрольном списке того, что мне нужно было сделать, что у меня не было возможности увидеть, что делают другие люди. Конечно, я знал, что творят друзья из моего окружения, но как насчет других 490 человек в зале? Какие чудеса инженерной мысли Red Bull строились прямо за углом?
Мне так редко удается испытать этот тип творческой перегрузки в обстановке, и я разочарован, что мне не удалось больше пожать руки и заинтриговаться. Бездумное блуждание вполне могло помочь мне выбраться из блока кодера, с которым я сталкивался несколько раз в течение дня. Я мог бы вдохновить и получить вдохновение.
Я бы не стал «доказывать» себя . Начало мероприятия вселило в меня странное чувство, что мне нужно показать всем, что я могу добиться успеха. Это было не на словах, а скорее психологически. Я занимаюсь творчеством почти половину своей жизни, но никогда в такой интимной и неопределенной обстановке. Когда я понял, что все здесь только для того, чтобы хорошо провести время и чему-то научиться, меня охватило чувство комфорта.
Хакатон - это соревнование против вас самих, а не против других команд.
Да, я выиграл категорию, в которую вошли другие люди, но в конце дня (полтора) я создал то, чего физически не существовало, когда я проснулся. То же самое сделали сотни других людей. И это круто.
Я бы больше доверял другим . Лндри.
Мне было трудно представить себе ближайшее будущее, в котором Коннор и наш наставник, Анмол Модур, могли бы решить кажущийся бесконечным поток проблем во время нашей демонстрации. Я не сомневался в их способностях. Я был просто ошеломлен, потому что решения проблем выходили за рамки моего набора инструментов. Кроме того, мне приходилось заниматься отладкой программного обеспечения самостоятельно.
Им удалось исправить практически все.
Я чувствовал стресс, но этого не должно было быть по трем основным причинам:
- Я подготовил план Б там, где это возможно, например, моделирование данных на стороне клиента вместо фактического получения данных с сервера.
- Хакатон - хорошее место для ошибок. Худшим, что могло бы случиться, если бы проблема не исчезла, была бы неоптимальная демонстрация нашего продукта. На кону не было ничего серьезного.
- Мои товарищи по команде были честными и прозрачными. Когда они сказали, что могут что-то исправить, я должен был им поверить. Зачем мне врать, если они заинтересованы в нашем конечном результате столько же, если не больше?
Я бы вышел из зоны комфорта. Подытоживая пару предыдущих пунктов, я чувствую, что получил бы больше пользы от хакатона, если бы попытался сделать что-то, чего раньше не делал. В то время как BrickHack 4 ознаменовал мой первый раз, когда я создал что-то с React Native, я не впервые использовал JavaScript или создавал приложения.
Если бы с нуля я попытался, например, погрузиться в «Малиновые пироги», возможно, я смог бы помочь своим товарищам по команде с проблемами, с которыми они столкнулись позже в будущем. Это произошло бы за счет отсутствия интерфейса к тому, что мы делали, но мы все равно создали бы что-нибудь.
Хакатон - прекрасная возможность познакомиться с новым и незнакомым. В повседневной жизни я склонен придерживаться того, что знаю, за исключением естественных диковинок.
Находиться в среде, которая в основном кормит меня с ложечки, а я не откусываю пару кусочков, - это упущенная возможность. К счастью, я не раз подвергался чудесам 3D-печати и крутизне неопиксельного кольца. В следующий раз я хочу попробовать покататься на некотором оборудовании и на практике вместо того, чтобы смотреть пассивно.
Я бы раньше использовал Open Source. Вы постоянно слышите это в программах: не изобретайте велосипед. Только потратив впустую то, что я считал значительным количеством времени на создание некоторых компонентов приложения, я заглянул в общедоступные репозитории, которые сделали то, что мне нужно (что находится в рамках правил хакатона).
У меня было всего 24 часа, чтобы написать это программное обеспечение, а Rome.js был создан не за один день.
Я бы не набирался кофеина в течение 30 часов. Кофе и Monster Zeroes помогли мне преодолеть волны истощения, с которыми я столкнулся во второй половине мероприятия, но это было нездорово. Мне потребовалось две ночи отдыха после марафона, чтобы почувствовать себя восстановленным после напряжения, которое я оказал на свое тело.
Я участвовал в 7:00 утра восходящей йоги, которую предлагал BrickHack. Это был мой первый раз, когда я пробовал заниматься йогой, и после 22 часов бодрствования я почувствовал себя на удивление обновленным (и болезненным). В оставшиеся 10 часов я часто делал растяжки и заставлял свое тело двигаться. На будущих хакатонах я буду больше нервничать и, может быть, даже буду быстро вздремнуть.
Да, в следующий раз я сделаю кучу вещей по-другому. Но не менее важно для меня извлечь выгоду из того, что пошло правильно.
Что я рад, что сделал
Мне понравилось «достаточно близко». Как только я преодолел это мышление «доказывать себя» в самом начале мероприятия, мне стало удобнее, что моя работа была сносной. Лучше быть готовым, чем быть идеальным в пикселях. То, что мы сделали, лучше, чем то, что мы хотели сделать.
Я нашел время и спланировал. Вносить изменения в продукт, когда он все еще находится на стадии идеи, значительно проще, чем когда это связано с переписыванием кода. Примерно 20 минут, которые я потратил на создание каркаса и повторение дизайна с Коннором и некоторыми рандомами на моей стороне, того стоили.
… Но я взмахнул ползучими опорами и поворотами прицела. Наш проект вырос из идеи поставить Raspberry Pi на стиральную машину, которая общается с приложением, на что-то более элегантное. Мы прошли лишь половину хакатона, когда нам пришло в голову, что базовая функциональность завершена. Нам просто не хватало этого умопомрачения. Мы начали мозговой штурм, где мы могли бы реализовать эту идею. Это привело к печати футляров как для датчика, так и для новинки настольной игрушки, которая загорается, когда ваша одежда готова!
Дважды замеряли, один раз отрезали. Но у нас не было четкого графика производства, которому нужно было следовать. Эта непосредственность делала каждый час захватывающим.
Я задокументировал свой прогресс. Потому что тогда у меня получилось вот такое классное покадровое изображение в формате GIF!
Я заранее сформировал команду и идею, но оставил двери открытыми. Было полезно знать Коннора до BrickHack, потому что я знал о его навыках, сильных и слабых сторонах. Это сделало разделение задач легким.
Чего я не ожидал, так это того, что нам помогала третья сторона. Анмол, наставник BrickHack, помог нам сформировать конечный результат, направив нас в правильном направлении, когда дело дошло до 3D-печати, резки стекла и некоторых схемотехники. В начале дня мы не знали, что будем иметь такую привилегию работать с сокровищницей информации, которой был Анмол.
Держите глаза и уши чистыми.
Я нашел время, чтобы помочь другим командам. Несколько хакеров попросили меня о помощи с React Native, потому что они увидели, что я его использую. Я бы прекратил то, что делал, чтобы помочь им. Эта помощь вызвала парочку интригующих бесед, в которых я, в свою очередь, кое-что узнал. Опять же, не рассматривайте другие команды как соперников. Рассматривайте их как потенциальных друзей (/ cheesy).
Альтруизм Анмола действительно сказался на мне.
Я показал, а не сказал. Я принес с десяток экземпляров своего резюме, но раздал только один. Если бы я действительно хотел, я мог бы передать их все в руки других людей (или в урны для мусора). Тем не менее, я понял, что поразить судей и представителей компании тем, что я могу сделать за 24 часа, было более впечатляющим, чем 32-фунтовая хлопковая бумага Times New Roman on Sea Form с 12 кеглями.
Последние мысли
Я удивился тому, что смог сделать. Нет ничего лучше. Я горжусь трудовой этикой Коннора и Анмола. Но на следующий хакатон я не пойду с таким менталитетом «хочу выиграть».
Все, что получается в результате победы - не считая приза - это пара слов хорошая работа!, Несколько пятерок и небольшой рост самооценки. Настоящими трофеями хакатона были те, которые собирала каждая команда, вне зависимости от величия.
Отойти от компьютера на следующем хакатоне, чтобы поговорить с единомышленниками-разработчиками и протестировать экспериментальные проекты, звучит как ад. И если это драгоценное время, я мог бы потратить его на работу над своим собственным делом, пусть будет так.
Потому что, даже если я не создаю проект, я все равно создаю себя.
(Просто, пожалуйста, о, пожалуйста не забудьте взять с собой дезодорант.)
Привет! Спасибо, что прочитали мой первый пост на Medium. У меня есть блог на моем личном веб-сайте zackbanack.com/blog, где я делаю уроки по программированию и занимаюсь забавными постами, связанными с разработкой игр.