solovyov.net

Не можу перестати думати за статтю “The best, worst codebase” — вона починається як звичайна розповідь людини, яка попала в страшнющу, але живу і прибуткову, кодову базу: скінчилися колонки в таблиці, якийсь там календар, який заповнюють руками інтерни, ну кароч, читати дуже смішно. :)

Але одна думка зачепила мене дуже, процитую:

But it was remarkably enjoyable to work in. Gone were the concerns of code duplication. Gone were the concerns of consistency. Gone were the concerns of extensibility. Code was written to serve a use, to touch as little of the area around it as possible, and to be easily replaceable. Our code was decoupled, because coupling it was simply harder.

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

З іншого боку, недавно тут слухав історії, як великі українські компанії використовують Node-RED як платформу для автоматизації бізнесу, і це ж трохи схожий кейс, де ти кожен крок та/або кожен бізнес-процес можеш сидіти вилизувати скіки завгодно не пересікаючись із іншими людьми взагалі.

Aside: Node-RED, n8n та інші схожі продукти (якщо у вас є улюблений — розкажіть, чому, в коментах) — це коли окремо пишеш шматочки коду, а окремо потім, у візуальному інтерфейсі, будуєш із них ланцюжок, який і робить якийсь бізнес-процес. Воно почалося як спосіб автоматизації IoT, бо там багато маленьких непов’язаних процесів, але ось, як бачимо, область використання розростається.

Так от, про що я думаю — наскільки це живий підхід? Які взагалі проблеми? Дуже б цікаво було послухать людину, яка будувала велику систему із таких наносервісів — що вдалося перемогти, а що ні? Бо ця думка про “будуй собі окремо частинку будинка” дуже привабливо звучить, очевидно швидкість незалежної від інших людини може бути неймовірною.

Плюс, здається, що у ніші автоматизації бізнесу — умовно 1C — UI можна стандартизувати і зробити автогенерованим, щоб не треба були окремі фронтендщики.

Кароооч, давайте свій досвід або хоча б роздуми на тему. :)

(@ tg)