Продолжаю работу с курсантами.
Реализовать интеграционное тестирование оказалось намного сложнее, чем в гайдах по документации. Теперь понял, в чём конкретно надо разбираться в веб фреймворках - где и что подкрутить, чтобы всё заработало :)
Но из хороших новостей, я пока читал ваши статьи про интеграционное тестирование, увидел упоминание про контрактное программирование с ассертами, и так углубился, что какое то озарение пришло того, о чём был первый курс по ООАП. Пост + предусловия, атомарные операции АТД, использование ассертов для валидации инвариантов. Я по началу вообще не понял зачем они нужны :)
Дня 3 в общем переписывал импортную функциональност на работе, потел думал какие типы данных выудить, какими операциями они описываются(самое тяжелое). Расставлял ассерты для подтверждения инвариантов, делал атомарные операции и старался, чтобы они не зависели от последовательности вызовов. Короче мозг кипел на 100%, но начало получаться. От этого аж прямо драйв. Использовал в частности Chain of Responsibility, чтобы просто флоу настраивать, а не последовательность вызовов.
До меня как то во время курса мало доходит, но когда носишь ваши идеи и думаешь о них, через некоторое время наступает озарение. Но ассерты вообще мощь!
...Во второй половине курса меня не покидало ощущение, что материал усваивается поверхностно, не было ощущения закипания мозга, которое было ранее на 28и задачах. Постоянно искались какие-то оправдания сделать все на скорую руку, участилась копипаста. Затем окончательно меня добил пост для донов из «Начинающих программистов». Проанализировав изменения в собственных подходах к выполнению задач пришел к выводу, что моим false friend’ом, костылем, подпоркой стала ChatGPT. Сам не заметил как стал злоупотреблять данным инструментом, буквально «тупея» на глазах. Когда не работает «S2 по Канеману», тогда и не рождаются новые уровни понимания.
Упомянутый пост -- это вот про что:
Вы изучили лучшие методы обучения, опробовали их на практике и…
Ничего.
Вы всё ещё чувствуете себя так, словно:
- Вы не можете эффективно решать задачи.
- Вы забываете всё, что раньше учили.
- Ваше понимание программирования остаётся поверхностным.
Итак, давайте разберемся, почему это так.
Но для этого мне нужно изложить одну из самых важных идей в обучении.
(на мой взгляд, наверное, самую важную, без преувеличения)...
В паблике для начинающих дополнительно рассказываю донам про разные методики самообучения и тайм-менеджмента, ориентированные на айтишку.
Начинаю там также мини-сериал про карьеру:
"...Вам рассказывают из каждого видео-утюга, что вы должны хотеть, и какие возможности у вас есть. Но для меня это странно, потому что я уверен, что те, кто вам об этом говорит, на самом деле знают об этом очень мало. Когда дело доходит до карьеры, у вас появляется куча советников, которые могут вести стрим продолжительностью от 15 минут и далее до многих часов. Он в основном бессвязный, с кучей непрошеных советов, и вы начинаете слушать его фоном почти всё время, потому что совершенно очевидно, что "эксперт" понятия не имеет, о чём говорит, и всё, что он вам рассказывает, устарело лет на 45. Однако вы нередко принимаете важные карьерные решения на основе того, что рассказывают эти люди. Довольно странно."
C завтрашнего дня стоимость подписки для новых донов в паблике для начинающих вырастет.