Game.Exe
— Это ж ты вешал в Алаваре табличку «Политрук лжет»?
— Конечно
— Ну молодец. Вышел свежий номер Game.Exe со статьями про новосибрские игровые компании. Иллюстрацией к статье про Алавар служит эта табличка.
Я не программист
Дальше я пишу о себе всякие хвалебные вещи, читать не обязательно. Как написано в качестве эпиграфа здесь. detail.phpclub.net/
Я на самом деле не программист. Я, конечно, умею программировать, но... не люблю это делать. Я просто люблю решать проблемы (ну и создавать заодно). Я скорее разработчик или дизайнер (дизайнер — это не «оформитель», а, опять таки, «разработчик»). Я умею писать такие ТЗ, что самому читать приятно. Дело в том, что я умею программировать, поэтому мои ТЗ основаны не только на «а вот хочу того и того», а еще и на знании «почему хоть то-то и то-то правильно, а то-то и то-то — нет, и как это все в конце концов реализовать».
Лирическое отступление:
На прошлом месте работы начальник как-то сказал что-то вроде (за точность не ручаюсь, но по духу примерно так) «Вот ты написал два ТЗ, а кому оно нужно? Наш программист сам знает, что нужно». Потом, увидив Spesta, он сказал (дословно): «Блин, классная статистика. Гораздо лучше Киселевской — ты ему ее показывал?». (Диме Кисилеву привет!). При этом я, с присущей мне скромностью, не считаю, что оно лучше запрограммировано. Оно лучше придумано. Именно для этого и нужно ТЗ — не смотря на то, что программист знает, «что нужно», главное — это «как нужно», потому что конечному пользователю все равно общаться с уровнем «как нужно», а «что нужно» его не интересует.
То есть пользователю совершенно не важно, что «нужно собирать такую-то статистику». Ему важно, как потом работать с этой статистикой. Ну, это мы уже залезли, опять же, в интерфейс...
Я тут пару дней думал на тему «Идеальная CMS». Здесь, опять же, проходит грань между программистом и разработчиком. Я придумал пару архитектурных решений и свежих идей, которые «программист» не придумал бы — только потому, что программисту не доводилось так плотно общаться с контентом, как мне.
Основная проблема в том, что я знаю, как ее сделать, но делать не хочу: очень уж лениво так много программировать. Есть, конечно, хороший принцип «If you want something to be done — do it yourself», но...
Шли мы 22-ого февраля и обсуждали все эти гендерные праздники. Дело понятно в чем: отсутствие основ и оснований. Дата 23 феврая вообще чуть ли не с потолка взята, никакого знаменательного исторического события в тот день не было. 8 марта — еще хуже. Группа персон женского пола во главе с Кларой Цеткин Все должно быть не так. Должен существовать праздник мужского и женского начала. Праздник мужского начала должен базироваться на каком-нибудь древнем фаллическом культурном мероприятии. Что-то вроде культа Диониса вполне подойдет. Праздники плодородия сюда вообще ложатся очень хорошо. Мужской праздник — это Праздник Посева урожая, а женский — это соответственно Праздник Плодородия. И между ними должно быть 6 месяцев — чтобы разнести их в году напртив друг друга.
Вот такие праздники я готов отмечать.
Люди делятся, как известно, на тех, кто сидит на трубе и тех, кому нужны деньги. (© «Игла», the movie). Люди вообще имеют свойство делиться на как им чорт на душу положит: на гуманитариев и технарей, мальчиков и девочек, тварей дрожащих и право имеющих, на Дедов Морозов и Снегурочек (вот так вот мягко и ненавязчиво — с наступающим вас), на «плохих» и «хороших», то есть тех, кто с нами и тех, кто против нас.
Принадлежность к «нашим» и «не нашим» каждый раз определяется по все новым и новым признакам, давая почву для очередных классификаций. Конечная прагматическая ценность любого деления состоит в том, чтобы отделить На сей радостной ноте и перейдем о очередному делению на.
В Programmers’ Stone люди делятся на паковщиков и картостроителей. А на самом деле они делятся на обезъян, велосипедистов и дрессировщиков. Что, в принципе, почти одно и тоже.
Но есть нюанс.
Для сначала — поучительная история из жизни, которую я вспоминаю с содроганием и содрогаюсь тем сильнее, чем больше времени проходит с ее начала. Я ходил к отцу на работу «чинить» компьютер. Не считая штук семь разных червей, в целом все работало. Поставил «Касперского» и все вылечил. Но он, как обычно, начал с чем-то конфликтовать и при загрузке громко ругаться. Выход нашелся сразу — я просто объяснил секретарше, как каждый раз при (пере)загрузке отключать «Касперского». Это была моя little revenge за то, что меня заставили полтора часа моей жизни (считая дорогу) потратить на это.
Прошло два года...
Велика вероятность, что там ничего не изменилось, и секретарша все так же совершает эти магические действия — по нескольку раз за день.
Возвращаемся к нашим обезъянам... Не все так плохо, ибо бывает гораздо хуже. (Urban legends: я знал человека, который работал в IT фирме «менеджером» и форматировал тексты в «Ворде» пробелами). Так вот. При создании одного сайта дизайнер неосторожно упустил из виду некоторые очевидные вещи, как, например, прописать в CSS ссылки. В результате, если вы ставили в текст просто Вы не поверите, но вот реальный пример того, что нужно было написать, чтобы получить работающую ссылку:
Я это увидел и прикинул, как в течение лет двух человек, который обновлял этот сайт регулярно, (и при этом не являлся секретаршей) ставил ссылки только таким образом. После чего я пережил сильнейшее экзистенциальное потрясение в моей жизни.
Иными словами, я просто охуел.
«Обезъяна» — это всего лишь метафора. Но иногда я в этом сомневаюсь.
Итак, «обезъяны» — это люди, которые делают так, потому что дрессировщик показал («научил») именно так. Слово «научил» я специально взял в кавычки, потому что это не научение/наука/понимание, а что-то типа рефлекса или мышечной памяти.
Вопрос «почему так?» если и возникает, то его полностью удовлетворяют типа «потому что так надо» или «потому что так оно работает/будет работать». А вот уже вопросы «а почему оно так работает?» или «а как оно может работать по-другому?» уже полностью выходят за границы мира «обезъян».
«Делай, как я/делай, как я сказал» — оптимальная форма обучения обезъян.
«Велосипедист» — коль мы будем продолжать эту метафору с велосипедом — это человек, которого научили кататься на велосипеде, и он совершенно осознанно получил в свое распоряжение способ быстрого передвижения и стал ездить не только в цирке, но и за бананами.
«Велотренер» — это человек, который может учить других велосипедистов.
«Дрессировщик» — это человек, который может учить «обезьян» кататься на велосипеде.
То, что мы называем «менеджер» — это комбинация дрессировщика с «велотренером» — в зависимости состава руководимого коллектива. И уровня «менеджера».
Еще бывают «Велосипедисты — самоучки» и «Изобретатели велосипедов». Несмотря на такое ироничное название, мы должны отдавать себе полный отчет в том, что все равно кто-то изобрел первый велосипед...
Главное, на мой взгляд, в этой жизни — не быть обезъяной. То есть не опускаться до уровня шаблонной деятельности, особенно когда это мозговая деятельность. Сам я себя приписываю, конечно же, к «самоучкам-изобретателям велосипедов». По природе очень ленивый во всем, что касается монотонного труда, и не верящий в людей, я предпочитаю не валить что-то на других, а долго думать, как что-то оптимизировать. «Лучше весь день потерять, зато потом за пять минут долететь» © мультик. На практике же, как правило, выходит, что время на оптимизацию все равно меньше времени, которое мы сэкономили.
(Верх оптимизации — это когда после рассмотрения чего-нибудь оказыватся, что данная задача настолько ненужная, что ее делать вовсе необязательно).
К тому же сам процесс оптимизации чего-то — это помимо всего прочего процесс оптимизации оптимизации (т.е. мы набираемся опыта в оптимизации и в следующий раз можем оптимизировать что-то уже более оптимально).
Смотрите также: Programmers’ Stone, деление на паковщиков и картостроителей.
I actually hate programming,
but I love solving problems.
Rasmus LerdorfПраздники
залу... выступила за равноправие женщин. Что привело в конце концов к Международному Женскому, то есть к празднику выделения женщин, когда они просили всего лишь равноправия.
12 monkeys
мух от котлет и зерна от плевел. Любое деление, разумеется, субъективно — как и все в этом мире.
Можно научить ездить обезьяну на велосипеде. Но ей никогда не придет в голову поехать на нем в ближайшие джунгли за бананами.
© Саша Ларьяновский, много лет назад.
(Саша, в натуре, ты когда на кофе позовешь?)