Привет август. И прощай, июль. Как пришла и ушла твоя слава середины лета.

До сих пор это была довольно веселая двухмесячная поездка на 8th Light. Создавая игры в крестики-нолики, я многому научился в написании и организации кода. Я также научился доверять своим инстинктам, когда дело доходит до программирования. Если он выглядит громоздким, или если он делает слишком много, или если он неправильно назван, я работаю над тем, чтобы сделать его лучше.

Первая половина месяца была потрачена на завершение Ruby-версии крестиков-ноликов, а вторая половина — на создание игры на Clojure. Честно говоря, мне нравится собирать крестики-нолики снова и снова. Мне это не скучно. Есть некоторые основные сходства, но есть и нюансы в построении одного и того же метода на разных языках. Вы сталкиваетесь с новыми проблемами, основанными на дизайне и стратегиях, которые вы использовали. И я хотел бы сделать это снова, когда я изучаю новый язык!

Хорошие новости
Во время личного ретро-тестирования мои наставники упомянули, что я хорошо справляюсь с публикациями в блогах и предоставляю своевременные, структурированные ежедневные обновления. Утверждение было приятно слышать! Ежедневные «стендапы» (только в кавычках, потому что я не встаю) были мне полезны, так как они помогают мне сформулировать свои намерения на этот день и позволяют мне озвучить любые проблемы, которые я не смог решить за день. днем ранее. Я думаю, что лучше устанавливаю для себя внутренние дедлайны!

Ближе к концу моего проекта Ruby TTT, когда мы приближались к дедлайну, я также начал выпускать последние новости. Мне не нужно было делать это с Clojure TTT, но я думаю, что теперь, когда у меня есть четкие сроки, мне это понадобится. Например, 19 августа — прогнозируемый крайний срок для Clojure TTT. И на этой неделе я работаю над созданием полностью работающего минимаксного алгоритма и реализацией `defprotocol` и `deftype`. Если минимакс продолжит доставлять мне неприятности, могу поспорить, что завтра вечером я сообщу своим наставникам.

Я горжусь двумя достижениями в этом месяце. Во-первых, мой Clojure TTT полностью управлялся тестами, за небольшим исключением минимакса (который я сначала разбил на более мелкие тестируемые единицы, но все еще не использовал тесты для управления его разработкой). Вы можете себе представить, что это настоящий подвиг, учитывая, что 1) моя первоначальная заявка на роль стажера-резидента не вообще не тестировалась, 2) я боролся с TDD во время своего Ruby TTT. Я бы приписал это поведенческое изменение простому факту, что написание на новом языке похоже на исследование новой территории. Вы бросаете приманку в мир, чтобы убедиться, что вы в безопасности, чтобы двигаться вперед, а затем вы рискуете идти вперед. Точно так же написание теста помогает вам сформулировать желаемый результат, а затем вы приступите к написанию метода. Кроме того, я сделал свое первое кодовое ката! Если это и не помогло мне перейти в режим TDD, то определенно помогло отточить навыки работы с Vim.

Во-вторых, я горжусь своим прогрессом как разработчика. Сообщение, которое любой может закодировать, опасно. Хотя я считаю, что программирование должно быть доступным, основной посыл о том, что это невероятно просто и что его можно освоить за три месяца, — не что иное, как ложь. Быть программистом — это постоянное путешествие, и у него нет установленной даты окончания. Программирование настолько многогранно и сложно; Я просто царапаю поверхность. С учетом сказанного, стать разработчиком для меня было не совсем просто. Я боролся с паническими атаками и полным разочарованием, вызванным неспособностью решить проблему. Последний месяц или около того стал для меня настоящим поворотным моментом. Я стала более терпеливой к себе, но также восстановилось чувство уверенности в себе. Я определенно чувствую это, когда работаю над Clojure TTT. Сначала было замешательство, когда я начинал, но как только я преодолел этот удар, все пошло гладко. И под этим я не имею в виду, что я знал все и это было легко — я просто справлялся с проблемами с более уверенным изяществом. Через серию проб и ошибок (и, в конечном счете, к успеху) я чувствую, что могу сделать все, что угодно, если у меня будет достаточно времени. А иногда это просто вопрос времени, будь то полчаса или день, чтобы увидеть ту же проблему в другом свете.

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

Столько хорошего происходит!

Вызовы
В прошлом месяце я поставил перед собой цель как можно больше объединяться в пары и взаимодействовать с другими. Есть несколько учеников, которые заканчивали свою резидентуру, так что это не всегда хорошо. Обычно я разговаривал с людьми и просил совета, который все еще был полезен. Кроме того, я стараюсь изо всех сил в своих сообщениях в блоге, но чувствую, что некоторые из более сложных тем (например, параллелизм, многопоточность) представляют собой резюме глав. Я хотел бы изменить то, как я подхожу к сообщениям в блоге.

Всегда совершенствоваться
Вот несколько целей на этот месяц:

  • В своих сообщениях в блоге я буду писать на конкретные темы и углубляться в них. Если я читаю книгу, я погружаюсь в интересную или актуальную тему и использую ее как возможность провести исследование перекрестных ссылок. В противном случае, я бы хотел писать в блогах о том, что я узнал в тот день. Думайте об этом как о способе документирования моего обучения.
  • У меня была возможность поработать в паре со своим наставником Сильвией в нерабочее время. Мы постараемся делать это чаще, либо удаленно в нерабочее время, либо в пятницу после обеда. Я думаю, это было бы очень полезно.

Спасибо за чтение - это все люди!