Размышления о неделе баз данных и решения проблем

Итак, эта неделя была для меня в Makers немного странной. Помимо того, что это была четырехдневная неделя (в конце концов, у всех длинных праздников есть своя цена - мы платили за солнце своим временем), это была Неделя баз данных - то, о чем мы слышали от предыдущих когорт эмоциональная нагрузка на уровень или около того ниже, чем у «Недели JavaScript».

Образ мышления и сокровищница нашей когорты

С самого начала недели я решил, что, учитывая обстоятельства и давние советы наших тренеров, я буду отдавать предпочтение пониманию, а не выполнению поставленных задач. Из тренеров и предыдущей когорты было ясно, что выполнение всех задач не является обычным явлением. Наши уважаемые Mids, которые проходили через Rails Week, также было ясно, что настоящее понимание синтаксиса CRUD и SQL принесло нам огромную пользу.

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

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

Я также хочу поблагодарить Бена Фербера, Джорджа, Уилла и Джона за вдумчивые обсуждения, которые помогли мне конкретизировать многие концепции. Муцци и Бен Фурбер также помогли мне по-настоящему задуматься о def ==(other) методе, который, по сути, является мощным.

Я был немного удивлен, обнаружив, что всю неделю не менял репо. Я всегда отставал от своих парных партнеров, но я как раз собирался приступить к задаче, над которой они работали, так что никаких больших пробелов - в этот момент я понял, что, по крайней мере, в парах, с которыми я был в паре, все прогрессировали примерно в одном темпе. с несколькими отклоняющимися впереди. Это реальность сосредоточения внимания на собственном прогрессе - что, возможно, является одним из постулатов идеологии Makers - все в любом случае движутся примерно с одинаковой скоростью немного разными путями, поэтому очень мало полезных данных можно получить, если таковые имеются, путем сравнения вашего прогресса с успехами других.

Это также дало мне возможность объяснить свой код другим, а затем оценить, по мере того, как мы продвигались с задачами, находили ли другие разработчики мой код легко читаемым и понимают ли мои намерения. Я чувствую, что мне не удалось написать читаемый код, поскольку для такого относительно небольшого приложения потребовалось некоторое время, чтобы ознакомиться с кодом. Я также переключился на Haml для своего механизма шаблонов в тот день, когда работал без пары - и это тоже внесло свой вклад в некоторую первоначальную путаницу, хотя мои партнеры по сопряжению с энтузиазмом относились к использованию другого движка шаблонов, поэтому его оставили.

Прохождения: Костыль или Благо

Прохождения на этой неделе вызвали некоторое замешательство в нашей когорте. Это было по нескольким причинам, но на мета-уровне это, по сути, сводилось к наиболее частой причине всех проблем - ошибкам, внесенным авторами. Кодирование отражает жизнь в большем количестве способов, чем мы думаем.

Дело в том, что я слышал об этих проблемах от других, но я вообще не сталкивался с какими-либо проблемами с пошаговыми руководствами - по той простой причине, что я не использовал их, за исключением того, чтобы прочитать абзац одного из них и почувствовать себя так, как будто я был обманываю себя из-за знаний. Ключевым моментом было осознание того, что между мной и моим партнером по спариванию теперь у нас достаточно знаний и навыков, чтобы самостоятельно находить решения и применять то, что мы узнали до сих пор. Например, мы практически сразу же выделили процесс подключения к базе данных в отдельный класс, задолго до того, как пошаговое руководство повторило то же самое. Конечно, позже моей паре пришлось реализовать обмен флеш-сообщениями намного позже, чем пошаговое руководство, но мой партнер по спариванию уже сделал это, и я прочитал ссылку на ресурс в инструкциях, поэтому к тому времени, когда это был правильный инструмент, мы оба легко поняли, как использовать его и реализовать.

Я предполагаю, что вывод здесь состоит в том, что пошаговые руководства для будних дней действительно являются самым последним из ресурсов - действительно интересно, должны ли они на данном этапе быть такими же подробными, как есть, а не должны быть разнообразными «подсказками» более высокого уровня. Обратной стороной текущей настройки является то, что можно начать постоянно полагаться на пошаговые руководства, и, если пошаговые руководства не были должным образом `` отлажены '' (опять же, на мета-уровне), это может быть препятствием для обучения, тем более чем помощник. Если вы хотите кататься на этом кодирующем велосипеде, на каком-то этапе должны сойти предохранительные колеса. **

В конце недели я прочитал пошаговые инструкции по задачам, которые я не выполнил, и выбрал несколько концепций: отношения между базами данных один-ко-многим и многие-ко-многим и взаимодействие с базой данных Rakefile среди прочего. Но я никоим образом не чувствую себя обделенным тем фактом, что не использовал пошаговые руководства в течение недели. Вспоминаются слова последнего из Пяти добрых императоров:

Нашим действиям могут препятствовать…, но не может быть никакого препятствия нашим намерениям или нашим настроениям. Потому что мы можем приспосабливаться и адаптироваться. Ум приспосабливает и преобразует препятствие для наших действий в своих целях. Препятствие к действию продвигает действие. То, что стоит на пути, становится путем.

- Марк Аврелий

Напоминаем: Проверки кода вернулись! Моя первая задача показалась мне очень полезной - настоятельно рекомендую воспользоваться этой возможностью и отправить свой код на проверку. Чем больше вы вкладываете в мини-обзор, который составляете как часть заявки, тем более выгодным будет этот процесс.

** Пошаговые руководства на выходных - они обычно предоставляются в форме подсказок, а не полных решений, и я лично начал их читать прямо перед тем, как приступить к задаче на выходных. Для меня это помогает предотвратить ненужную погоню за кроликами, а также дает отличные подсказки.