Ви перестали читати документацію, і тепер не розумієте систем

Я не вивчав комп'ютерні науки в університеті. Я вивчав геофізику.

Я вивчав програмне забезпечення через читання. Я читав документацію, вихідний код та GitHub issues. Я читав старі дописи в блогах та гілки RFC. Я не проходив буткемпи. Я використовував браузер і першоджерела.

Коли я вивчав Cloudflare Workers, у мене не було курсів. У мене була документація та changelog. Я тричі перечитував конфігурацію binding, щоб виправити зламане розгортання о першій годині ночі. Я знаходив відповіді в гілках GitHub багаторічної давнини.

Я вчився, занурюючись у матеріал доти, доки все не ставало на свої місця.

Тепер я бачу нову закономірність. Люди не питають, чому певний розділ є незрозумілим. Вони просять код для X. Вони не відстежують вихідний код, щоб зрозуміти поведінку системи. Вони питають, що робить функція.

Раніше метою було розуміння. Тепер мета — результат. Люди називають це ефективністю. Насправді це технічний борг.

Ви можете згенерувати circuit breaker, не знаючи, що таке стан half-open. Він працює у ваших тестах. Він виходить з ладу в продакшені через шість тижнів під великим навантаженням. Ви зазнаєте невдачі, тому що у вас немає ментальної моделі. Ви отримали «що», але не «чому».

Саме «чому» — це єдине, що має значення.

Читання документації будує ментальну модель. Ви бачите компроміси та граничні випадки у примітках. Те саме тертя, яке ви відчуваєте під час читання, і є моментом навчання.

Коли я створював Bookmark Brain, мені потрібно було зрозуміти Cloudflare Vectorize. Я не просто використовував API. Я вивчав розмірності embedding, поведінку індексів та метрики відстані запитів. Я прочитав статтю про HNSW. Я сидів над незрозумілим, доки воно не перетворилося на знання.

Ці знання дозволяють моїм системам працювати в продакшені. Якщо щось зламається о другій годині ночі, у мене є ментальна модель, яка мене зорієнтує. Якби я використовував лише промпти, у мене було б демо, а не система, яку я можу логічно аналізувати.

Це створює розрив в інженерії.

  • У рев'ю коду: один розробник миттєво помічає проблему N+1, тому що читав документацію ORM. Інший розробник пропускає її, бо лише згенерував код.
  • В архітектурі: один розробник розуміє партиції та офсети Kafka. Інший знає лише термінологію, але не розуміє структури.
  • У налагодженні: дебаг — це функція вашої ментальної моделі. Без неї ви просто змінюєте щось наосліп, сподіваючись на краще.

ШІ не може охопити всю архітектуру. Він не бачить загальної картини вашої кодової бази. Я бачив, як згенеровані ШІ рівні кешування проходили всі тести, а потім обвалювали продакшен, тому що жодна людина не розуміла race conditions.

Розрив полягає не в самому використанні ШІ. Він у тому, як саме ви його використовуєте.

Ви використовуєте його, щоб зрозуміти компроміси? Чи щоб уникнути розуміння?

Найкращі розробники не просто рухаються швидко. Вони все ще читають changelogs та вихідний код. Вони будують ментальну модель, яку неможливо відтворити за допомогою промптів.

Читання документації — це практика. Це не податок на вашу продуктивність. Це те, що робить вас незамінним, коли система ламається.

Якщо ви пропускаєте читання, ви пропускаєте мислення. Ви не усвідомите цього, поки не опинитеся в продакшені без жодної опори.

Джерело: https://dev.to/dannwaneri/you-stopped-reading-the-docs-now-you-dont-understand-the-systems-go1

Додаткова спільнота для навчання: https://t.me/GyaanSetuAi