July 11th, 2016

404

философское

Я только что за два дня реализовал rest API с новым функционалом к софтинке, которая раньше ни сном ни духом про API. Реализовал на flask'е. Оно работает. Вроде, даже, офигенно.

Но меня страшно испугало то, что я притащил flask в проект - гигантский микрофреймворк, который использует чёрную магию, thread-local variables и ещё какую-то чёртову магию с декораторами из отсутствующих объектов для реализации всего этого.

Оно работает и работает хорошо, но я не могу объяснить как.

И я начинаю понимать, что это и есть основа современной разработки ПО. Программист-божий одуванчик ничего не знает про ту чёртову магию, что творится в opless serverless doker distibuted database sniplets, которые он продеплоил скопипастив их с stackoverflow. Но они так хорошо работают, что оно реально "почти готово к продакшену", и кроме нескольких corner case, которые теряют данные, и пары багов с не до конца откатывающимися транзакциями, оно в 99% случаев реально работает. И этого достаточно.

А потом на базе этого строится новый проект, ещё более opless docker cloud, который тоже вроде бы работает.

И драма состоит в том, что автор приложения не может объяснить как работает его приложение - оно использует чёрную магию из Крутой Библиотеки. И трагедия состоит в том, что автор Крутой Библиотеки тоже не может объяснить как оно работает. И оказывается, что никто не может. Оно просто работает почти так, как всех устраивает. И компетенция, для того, чтобы разобраться в этом, оказывается больше, чем пересечение компетенций всех участвующих в проекте людей.

И вот тут вот становится страшно.