Здравствуй, дорогой дневничок.
Сегодня постараюсь быть краток, насколько это получится. Все-таки дела не ждут, и надо так много суметь сделать.
В который раз благодарю свою мудрую интуицию за то, что в свое время преподносила мне практики и знания, которые теперь позволяют сложившуюся ситуацию воспринимать достаточно спокойно.
Пройдя путь от того подростка, кем я был, и осознавая то состояние сознания, которым я стал, я могу сказать, что наибольшей мотивационной силой, которая двигала меня вперед, стала когда-то увиденная мною в детстве фраза: “Совершенство достигается практикой”.
Я совершенно не помню, кому приписывали её авторство в тот момент времени. Это была надпись на стене какого-то крупного городского учреждения: библиотеки, здания администрации или больницы.
Чего-то, что специально создавалось, чтобы нести свою функцию в веках.
Что-то, каждый элемент которого не случаен и специально выбирался, чтобы быть построенным на века, и вдохновлять собой людей, которые это здание посещают.
С точки зрения вечности каждый глиф этого символа был напитан мотивационной силой целого народа, создавшего это строение, согласных с тем, что там будет написано.
И вот мне, когда-то ребенку, запала эта фраза в глаза. И где-то выжглась на моей подкорке, что в моих игровых девизах, коих я имел честь поиграть, писалось: “Совершенство достигается практикой (с) Кто-то из великих”.
При этом я её не повторяю себе в каждый момент времени. Я скорее с этим соглашаюсь, когда вижу результат рук своих.
Это очень пиздатое чувство, хочу сказать, гордиться тем, что сделал.
Гордиться тем, как работает собственный код. Гордиться тем, как читается текст. Гордиться тем, как написана картина. Гордиться тем, как помог человеку. Да и вообще честно гордиться тем, что сделано своими руками.
С удовольствием смотрю на графики, как пользователи пропускают данные через спроектированные мною структуры: время отклика, количество ошибок, процент данных.
Это как раз то, что в любом разговоре позволяет сказать “я сделал”, потому что в каждый момент времени я сознательно стремился к тому, чтобы минимизировать свою необходимость возвращаться к уже написанному.
Не жаловаться о том, что что-то не получается сделать, кто-то не дает или обстоятельства не позволяют, а рассказывать, что получилось и показывать результат.
Чтобы оно работало само по себе и не требовало переделки.
А если и требовало, то только по делу, и не отвлекая меня от других моих задумок.
Будучи программистом, я никогда не хотел программировать после того, как заканчивал что-то интересное из того, что я реализовывал.
Однако все то, что я реализовывал в процессе практики оказывалось вполне себе работоспособными решениями, которые я мог развивать дальше и использовать все имеющиеся наработки как фундамент для дальнейшего пути.
И вот я здесь.
Да, я скорее предпочту дальнейшую свою роль как писателя. У меня множество интересных задумок, которые требуют детализации той же природы, которой обладает программный код, который я создаю. Главная функция которого: ты должен работать. Должен быть реален, и функционировать, выполняя свою задачу.
Я точно знаю, что есть мой программный код, который работает неизменным с 2010 года, до сих выполняя свои бизнес-задачи, и способный закрыть кейсы типовых бизнесов, которые прямо сейчас должны будут расти как грибы в сырую погоду. Региональные автосалоны б/у автомобилей, работа с коммерческой недвижимостью, онлайн-магазины и еще куча всего, что когда-то на заре этого направления в Москве полностью закрывало потребности заказчика, давая ему кратную прибыль. Даже что-то для обменников делалось.
И этот софт кое-где до сих пор работает в неизменном виде, и я не занимаюсь его поддержкой. И не дою заказчика.
И самое смешное, что я несколько лет удалил исторический репозиторий с этим кодом. И есть разве что виртуалка, на который могут быть крайние версии.
Это я к тому, что если кому-то интересно, то можем договориться.
Я из тех программистов, который не хочет поддерживать уже написанный код. Который не хочет возвращаться к тому, что уже было сделано.
Я видел программистов, которые неделями делали редизайн кнопок. Я видел программистов, которые не понимали взаимосвязей компонент между собой.
Я многое видел. Я сам нанимал программистов на оклад. И то, только потому, что это обязывало его работать с кодом, который слабо документирован и имеет тенденцию к спонтанному расширению. То есть его требуемый функционал еще не стабилизирован, и может дополняться новыми элементами предметной области.
То есть задача сводится не только к оптимизации уже написанного кода, сколько к созданию нового, хоть и в устоявшейся парадигме.
Скорее сеньор, чем миддл. Только там еще надо преодолеть барьер скепсиса касательно принятых решений и используемых технологий.
А теперь понимаю, что могу стать хорошим ментором для молодых специалистов, которые хотят работать не на оклад, а на подряд или процент.
Это при том, что у меня уже есть очередь заказов, и я еще даю никому понять, что я в той или иной степени свободен по времени.
Но я хочу эту свободу получить.
Свободу не получать деньги за обслуживание чужого времени и чужой идеи, а заниматься развитием идей собственных. Которые и приносят требуемый доход. Двойная положительная обратная связь.
Так вот, к чему это я.
Когда-то давно меня посетил инсайт: “профессионалом еще нужно стать”. Он пришел ко мне, когда я внедрял какой-то достаточно нетривиальный модуль в большой проект, написанный мною же, и понимал, что решение, которое я придумал - оно вполне, вполне даже ничего.
То есть моя практика в коде, в развитии собственного оптимального видения того, как он должен быть написано, чтобы решить задачу целиком, в общем и целом привела меня к тому, что я эту задачу с каждым разом решал все лучше и лучше.
Как кузнец, который выковывает себе новый молот, лучше предыдущего. Лучше того, что уже сделано и что приносит доход.
И выковав новый, задается идеей проверить, что такого интересного можно выковать на нем, и как его можно улучшить. И какой новый молот можно выковать им.
Собственно, все мои проекты, коих я релизнул немало - счет уже перевалил за десятки - это мои гипотезы о том, каким должен быть пиздатый код, чтобы быстро решать эту задачу. При возможности в одно лицо.
При возможности из готовых блоков. И как сложно их дополнять и расширять.
И как можно совмещать уже имеющееся решение с типовыми технологиями.
Я решал эту задачу на PHP, на Node, на MySQL и NoSQL. И оно с каждым разом получалось лучше и лучше.
И вот я здесь.
А где-то там без малого третья мировая война. А если очень увлеченно заниматься своим делом, то можно вполне себе пропустить и конец света.
Как я это делал уже не раз, занимаясь каким-то финальным релизом в очередную бессонную ночь. Предпочитая кончать не в женщину, а заканчивать задуманное.
А после такого можно и в женщину хуем потыкать. С чувством собственного достоинства. А не между делом, между тем, как думаешь о том, что где-то там совершил вероятную ошибку, и теперь надо думать, как её исправить.
И это я сейчас не только о коде.
Мне в свое время очень понравился тезис, озвученный в книгах Кастанеды: безупречное поведение.
Поведение, за которое тебе не нужно извиняться и оправдываться. Поведение, о котором тебе не нужно думать и помнить. Состояние предельной осознанности и крайней эгоистичности.
Поведение, которое обязывает тебя быть настолько честным по отношению к себе, что умри ты прямо сейчас, тебе нечего будет бояться. И стань у тебя выбор ответить за свои слова или отказаться от них, у тебя даже не будет стоять выбора.
Правда, там еще есть контролируемая глупость, которая в случае накатной волны позволит тебе не встречать ее в лоб, а уйти от столкновения. Но то-ли у нас слишком много практикующих, то ли она не контролируемая.
Сам факт поведения: делать свою работу так, чтобы она была закончена. И больше к ней без нужды не возвращаться.
Лучший код, это код, который работает сам по себе, и не требует лишнего внимания.
Лучшее действие, это действие о котором можно немедленно забыть, и вернуться к практичному созерцанию Нагваля, из которого извлекаются новые острова Тоналя, по которым так смешно прыгает искра сознания.
Даже если выбираешь провести время на работе на окладе, не ограничивай себя ею, и планируй время, которое будешь думать о чужой проблеме. Надо иметь практичную мечту, которую можно показать людям и дать подержать её в руках.
Хорошее нужно преумножать. А не вот это вот МММ и биткоины ради биткоинов.
Так вот, к чему это я.
Практика. Практика и профессионализм.
Самый первый инсайт на этот счет я получил в начале 2010-х, когда первый раз ехал на сеанс массажа, лечить забитую постоянным сидением за компьютером спину.
И учился заранее расслабляться, осознавая, что Аня, занимаясь массажем не первый десяток лет, уж поди знает о теле человека не меньше меня, занимающегося столько же компьютерной практикой.
И тем самым доверять профессионалу свое тело, свои деньги.
Хуже нет ощущения, чем потратить деньги на человека, который их не заслужил.
Хуже нет ощущения, чем получить деньги, в которых я был нечестен с заказчиком, и где-то его наебал.
Репутация, она такая. Сам себя не обманешь. Одно дело если не знаешь, что лжешь, и просто дурак. А другое дело, если знаешь, понимаешь, что может вернуться бумерангом, и все-равно лжешь.
Освобождение себя от ответственности: моя работа здесь сделана, дальше я хочу рассматривать другие предложения сотрудничества.
И вот я здесь.
И у меня есть чем и как решать разные задачи, осталось найти кем их решать.
Ловись рыбка большая и маленькая.
Так вот, о книгах.
Я как-то понял, что является показателем хорошей книги: для читателя её мир воспринимается реальным. Сам автор, создавая сюжет, не просто пишет слова о какой-то фантазии, а создает мир со своей историей, своей культурой, традициями и возможными последствиями.
Все хорошие книги от моих любимых в разное время авторов - Олди, Желязны, Сильверберг, Ле Гуин и многие другие - содержали в себе как раз такой мир: цельный, непротиворечивый, каким является и наш собственный мир, в котором мы живем и существуем со своей историей.
Задача писателя оживить такую реальность в чужом воображении, пропустить реальность героев через реальность читателя и тем самым на время оживить их всех.
А книги - лишь правильная последовательность символов, которые позволяют это сделать.
Не просто буквы, а программный код. Со своей ритмикой, своей функцией, своей задачей.
Созданной намеренно, проверенной и прожитой через себя.
Поставленная здесь так, чтобы потом её не надо было исправлять.
И чтобы ею можно было гордиться.
И чтобы после сделанного не жалко было и умереть. И при этом не спешить слиться с вечностью, а проявить азарт и извлечь из неё ещё приятных ништяков, которые могут сделать что-то приятное и полезное.
В общем, непростое это дело - практика. Ею прям заниматься надо, целенаправленно. И не стыдиться получать за это любое количество требуемых денег, потому что профессионалу не выгодно обманывать своего клиента, так как он знает, что тем самым обманывает сам себя.
Или какой он после этого профессионал?
В общем да, хотел быть краток, а получилось как всегда.
На самом деле про это можно писать много и густо: оно ведь все о прекрасном, куда ни плюнь. И это даже может быть практикой.
Или не быть, дорогой дневничок.