Вот я уже почти 5 лет в мире программирования, а до сих пор почти ничего не умею и не знаю. И не только в программировании.
Недавно мне дали задачу, совершенно простую для 2021-го года: сделать программу, где можно на картинке выбирать объект интерьера и будет создаваться его 3D-моделька
Directed by Robert B. Weide я попросил пример поконкретнее и мы остановились на просто прямоугольных объектах типа окон, плитки или чего-то ещёИ вот я вспоминаю, что недавно игрался с фильтрами, сделал что-то типа канни фильтра, и вот никак не могу вспомнить куда я положил код свёртки.
Начинаю злиться ну как так в ПИТОНЕ нельзя просто взять и свернуть что-нибудь. Опять что ли писать эту функцию, опять проходить ошибки, я не помню где я писал эти эксперименты со свёрткой? У меня более 100 директорий с разными проектами и кодами, как мне его найти?
Даже если бы Лайси и Иколайси были бы готовы к этому моменту, то и там возникли бы проблемы со свёрткой. Во-первых, вряд ли стандартные средства Лайси позволят написать свёртку в одну строку, так как при ней используются одни и те же элементы для вычисления разных значений (ну то есть, когда сдвигается на шаг, значение в правой и нижней частях подкернельной области используется).
Хотя в таком случае логичным назревает желание потом написать в liblaisi функцию для свёртки, чтобы не велосипедить. Но если писать такую функцию, то желательно сделать возможность свёртки не только квадратных (линейных, кубических) N-dim, в общем, массивов. Что если кто-то захочет свернуть поле из шестиугольников? Надо иметь возможность взятия значений по отдельной функции, которая будет принимать координаты или я даже не знаю, что. Надо подумать над этим.
В общем, потом я вспомнил про grep и быстренько прошёлся им, ищя название функции и нашёл код, день спасён.
Но я должен был стать к нынешнему времени полубогом программирования, почему я не могу просто сказать в любой части подконтрольной зоны "Главный компьютер, сверни-ка мне картинку по ссылке
https://tratata.blablabla/img.webp сначала кернелем [[-1,-1...]], а потом кернелем [[...]]", после чего ко мне подлетит квадрокоптер с дисплеем и выведет на экран полученное изображение?
Хотя я даже базовые принципы программирования не знаю и не понимаю. Что такое SOLID, зачем нужно наследование? Как проектировать большие системы и как следить за своими функциями, чтобы они выполняли только то, что надо? Я знаю только про WET и DRY, но далеко не всегда следую им.
И так не только в области программирования, но и других вещах. Учил в школьные времена физику, химию и другие науки. В итоге почти ничего не знаю, разве что механику материальной точки, но не факт. Весь этот школьный лохотрон годится разве что образовать специальную картину мира в голове, чтобы была возможность по-настоящему учиться.
Например начал вкатываться в электронику давно, но сейчас ни ИБП, ни радиопередатчик/-приёмник не собрать. Тем временем ушлые китайцы клепают непонятно что и продают мне это. Построил недавно новую муфельную печь, но пикрилейтедный регулятор не справился, сгорел его предохранитель. Или может я его доломал раньше, в общем он не регулировал мощность, тэн сразу до красна нагревался, а я не понимаю в чём дело. Была б технология, а энергия найдётся.