За последние 7 месяцев я потратил так много времени на приобретение навыков, что был очень рад возможности отдать должное. В качестве цели я выбрал Double H Ranch, проект Ruby for Good.

Мне потребовалось много времени, чтобы решить, над чем я хочу работать. Так много возможностей, и спектр различных вопросов огромен! В конце концов я остановился на проекте/проблеме, который я сделал, потому что, хотя это был отличный баланс между вызовами, но также и чем-то, что было лишь немного за пределами моей досягаемости, так как у меня было много других вещей, на которых нужно сосредоточиться в этом моде.

Моей задачей было добавить функционал обновления и удаления для собственных постов пользователя. Достаточно просто, не так ли? Что стало более сложным, так это локальная настройка проекта.

Приложение не заняло много времени и запустилось в разработке, но когда я начал работать с сообщениями — о-о. Приложение использует Paperclip и AWS S3 для хранения фотографий, которые требуются для каждой публикации. Поэтому я не смог успешно создать сообщение, пока не выяснил, как настроить разрешения для себя! Я не мог хорошо протестировать и реализовать функцию, в которой я должен был обновлять и удалять что-то, если я даже не мог это создать.

Сначала я спросил у организаторов, и они указали, что используют dotenv, а не Фигаро — это был толчок в правильном направлении, так как после этого мне нужно было только настроить свою корзину AWS и пользователя, чтобы получить это работает.

Другой проблемой было тестирование. Когда я изначально клонировал репозиторий, было всего три теста контроллера. Я не особенно хотел, чтобы это был Дикий Запад в моем первом вкладе, поэтому я знал, что мне нужно это настроить. Однако при попытке запустить RSpec с Capybara я постоянно получал одну и ту же ошибку, из-за которой казалось, что я делаю что-то не так, хотя я был почти уверен, что это не так. По счастливой случайности Крейг, друг и однокурсник, работал над тем же проектом и боролся с чудовищем, которое настраивало тестирование для этого проекта, в котором участвовали помощники по настройке из Devise и Смотритель. В духе открытого исходного кода он помог мне настроиться, и я довольно быстро смог работать над выбранной функцией.

В целом, это был отличный опыт, и я с нетерпением жду возможности повторить это снова!