0
<< предыдущая заметкаследующая заметка >>
23 января 2024
Программисты и balance.transfer

Для начинающих и умудренных программистов в сети есть поучительный юмористический текст «Код Нинзя» — сборник «вредных советов» на тему хорошего тона при написании кода. В нем перечислены практически все ученические ошибки. И мне, конечно, и смешно, и горько, что все эти пункты я постоянно наблюдаю за собой.

Однако хороший тон всего лишь тон. Его нарушение лишь немного путает тебя самого и тех, кто будет когда-нибудь читать твой код, если вообще будет. Но есть одна не упомянутая в трактате особенность стиля программирования, которая реально выбешивает и причиняет физические страдания в работе. И я бы добавил ее в самом верху:

Никогда не думай про обратную совместимость

Докажи, что идешь в ногу со временем, постоянно учишься новому и призываешь к этому остальных: не сохраняй сделанного надолго! Позаботься, чтобы в твоей документации ссылки перестали открываться уже через неделю, линки на картинки не работали, а вскоре пусть и сама документация выдает ошибку 404. Твои демо не должны запускаться даже в момент публикации. Твой код должен перестать собираться уже к концу месяца. Но главное: как можно чаще меняй свои форматы, протоколы и интерфейсы! Регулярно переделывай имена параметров, переменных, ключей командной строки, форматы входных и выходных данных! В написанных тобой библиотеках как можно чаще заменяй названия методов и функций на более свежие и понятные! Старайся, чтобы после любого мельчайшего усовершенствования твои программы и API перестали работать со всем, что работало с ними прежде! Весь чужой софт, что люди мира отлаживали ради совместимости с твоим, должен становиться негодным всякий раз, когда ты что-то у себя исправляешь! Этим ты помогаешь людям оставаться в тонусе, профессионально расти и непрерывно учиться новому!

Что интересно: это не про новичков, это проблема всех, в том числе корпораций. Даже в документациях Яндекса половина ссылок не работает.

А вот сегодняшняя ситуация: делаю некий платежный софт. Точнее не делаю, а пытаюсь вернуть ему былой функционал прошлого года, потому что мои коллеги переписали заново свой модуль и поменяли протоколы ввода, вывода, имена параметров и форматы данных. Ну конечно я ворчу. Но себе под нос и негромко: дело житейское, работа есть работа. И вот когда все отвалившиеся мелочи отлажены, выясняется проблема ещё масштабнее: оказывается, всё то, что работало в прошлом году, вообще работать перестало на высшем архитектурном уровне, даже не связанном с соседским модулем. Лезу выяснять... И оказывается, блокчейн-среда, с которой мы работаем, изменила сущий пустяк: имя своей главной функции осуществления платежа. Раньше платеж вызывался методом «баланс.трансфер». А теперь этот метод отключен. Взамен, оказывается, был придуман новый метод. Он теперь называется «баланс.разрешитьСмерть» Сука, я не шучу! «баланс.разрешитьСмерть»! Основной метод трансфера средств с аккаунта на аккаунт! Наркоманы, сатанисты, извращенцы, контркультурные маргинальные трансгуманистические либертарианцы на мефедроне!

Зря мы недавно смеялись над разработчиками популярного онлайн-магазина «OpenCart», которые выпустили новую версию «OpenCart-4», поменяли для прикола имена папок и правила вызова функций, и по всему миру сдохли тысячи плагинов и дизайнов, которые поколения программистов создавали и отлаживали последние 10 лет для всех старых версий этого магазина вплоть до 3... Но теперь я уже думаю: спасибо, что хоть хоть так, спасибо, что новую версию вы назвали всего лишь «OpenCart-4». Ведь могли назвать «OpenCart-666-я-в-чулочках-ебу-в-жопу-дохлую-козу-на-Рождество»

<< предыдущая заметка следующая заметка >>
пожаловаться на эту публикацию администрации портала
архив понравившихся мне ссылок

Комментарии к этой заметке скрываются - они будут видны только вам и мне.

Оставить комментарий