Home

[icon] наивный идеализм
View:Свежие записи.
View:Архив.
View:Друзья.
View:Личная информация.
View:Website (http://dervish-candela.deviantart.com/).
You're looking at the latest 21 entries.

Tags:, ,
Subject:тут внезапно осознал... (мини-анализ метафизических сюжетных устройств)
Time:01:41 pm
Что, кроме дешевого ПАФОСА, я страшно падок на ГИГАНТСКИЕ МЕТАФИЗИЧЕСКИЕ ДЕВАЙСЫ. Это вдруг дошло до меня, когда я поглядел на свои же последние картинки, там сферическая в вакууме мекка из Замда и киллсат из Ар Тонелико II.

Интересно, что МД вообще (и ГМД в частности) является очень мощным и эффективным средством для генерации пафоса и драмы придания сюжету ощутимой опоры, реального воплощения всяким Эфемерными Мистическим Концепциям и Метафизическим Построениям™. Граничным (и сочетающим худшие из обиех сторон) случаем являются вечно-популярные Врата, т.к. они, с одной стороны, забирают на себя сюжетное место МД; а с другой стороны — не выполняют его сюжетных функций (ничего не делают).

То же, хотя и в меньшей степени, относится к микроскопичемским overpowered девайсам (aka магическим артефактам, но технология всё-таки лучше) - при правильном обращении, т.е. при условии их использования персонажами, они спосбны производить похожий эффект на сюжет и создавать соответствующее настроение - например, GBE, Кольцо, или амулет Лалыру. Но большие лучше — от них становится жутко.

Хотя присутствующие в сюжете МД и являются огромным шагом вперед по сравнению с Абстрактной Метафизической Херней с Большой Буквы, они не только не усложняют написание сюжета, но и, наоборот, упрощают это дело, а сам МД как магнитом организовывает сюжет вокруг себя, притягивая и сталкивая персонажей друг с другом без каких-либо заметных усилий со стороны автора. Что косвенным образом увеличивает количество, хотя и не качество, пафоса и драмы. Достаточно даже просто намекнуть, что оно работает, и это уже будет огромный плюс. Поэтому мне совершенно непонятно, почему авторы этим не пользуются.

Можно, кстати, вспомнить и случаи, когда удавалось создать великолепнейшую метафизическую атмосферу без присутствия каких-либо воплощений Абстрактной Хрени, а только за счет качественной работы режиссера и художников - Вольфс Рейн или Кащерн, например, гениально начинают именно с Буквиц (т.е. с пустого места). Но сюжет на одних заглавных буквах не будет хорошо питаться, что тот же ВР и продемонстрировал убедительнее некуда. Кащерн в большей степени был символизмом и сюрреализмом, а потому пострадал не от плохого сюжета, а вообще от его присутствия. А вот например попытки создать Рай в АТII выглядели куда убедительнее поисков оного в ВР, потому что у них был инструмент, специально спроектированный для этой цели. И это же делало их неудачи реально ощутимыми и грустными. А как сочувствовать тем, кто ищет Нечто, даже не зная, как оно выглядит и с чем его едят? Даже попытки люто, бешенно лампшейдить тут не спасают.

Можно припомнить кстати даже весьма интересные случаи (Ваш, Чисе, и в меньшей степени Рюнка), когда (Г)МД и протагонист — это одно и то же тело лицо :) Характерно, что обычно это чисто оружейный вариант (БУХ, большая убийственная хренотень). Попытки совместить сюжетную роль МД более гуманной гуманитарной направленности с главным персонажем, по-видимому, обычно делаются внезапно ближе к окончанию сюжета для пущего пришествия деус экс машины и оканчиваются либо полным евангелионом (Teh Rei), либо полным фейлом. Хотя Saya no Uta справилась, кстати, но именно за счет того, что провернула эту фишку как естественное завершение всей историии (потому что так захотелось персонажам), а не внезапно (потому что так захотелось сценаристам).

Вообще примеры какие-то разрозненные, интересно бы собрать классификацию и статистику. Лично я больше всего люблю упомянутые вначале огромные штуковины с конкретно опредленнной персоналией, обликом и функциональностью. Бонус если штуковина технологическая (АТII) или живая (Замд), главное - чтоб не просто очередной безликий Артефакт Великой Древней Империи™.
comments: 29 комментариев or Оставить комментарий в избранное рассказать другу

Tags:, , , ,
Subject:о художниках и художествах
Time:12:08 pm
Уже который день листаю пиксив. Удалось сформулировать наконец, что меня так притягивает в этих каляках-маляках: Они просто рисуют всё, что приходит в голову. Для европейцев же рисование - это серьезный бизнес. Мы привыкли считать достойными внимания лишь тех, кто жил сто лет назад и посвятил рисованию написанию полотен всю свою жизнь (желательно нищенскую). Человек, который «просто рисует» у нас, не является субъектом художественной культуры. У японцев же этой «культуры» для визуального искусства никогда не было - она не успела выйти за рамки сугубо утилитарного, декоративно-прикладного искусства, росписи стен, кувшинов и иллюстрации бульварных книжек с целью заработать на жизнь. Не успела превратиться в тот высокий, далекий и холодный идеал, что создали сбросившие утилитарное ярмо европейские писцы маслом. Поэтому сегодня там никто ничего и никому не доказывает, нет единственно правильных сюжетов и срдеств, нет запрещенных композиций (помним, как это отношение к композиции в свое время поразило европейцев). Самые дикие стили позволены и оправданы, никто не боится создавать фантастические медиумы и не пытается имитировать традиционные. Там, где европейцы собирались и провозглашали художественное течение или направление под соусом великого художественного эксперимента, илевенский автор успевает сменить двадцать стилей за год и даже не задумывается, импрессионизм у него там, экспрессионизм или вообще пуантилизм.

Технология пресекла илитарность культуры маcляной живописи в зародыше. В итоге, сегодняшнее японское «свободное искусство» предельно демократично и массово - оно делается на планшете, и благодаря дешевым компьютерам и интернетам, барьер вхождения в «культуру» нулевой (конечно же, это одновременно и отрицательная сторона, но она решается системой рейтингов и image responses :). И никому не приходит в голову вести нищенскую жизнь, можно иметь нормальную работу, а рисовать по вечерам.
Не знаю, что сегодня делают европейцы, но американцы (девиантарт) разрывается посередине между попытками подражания европейскому академизму (с незначительными изменениями и поправками на цифровой медиум, которые сами авторы обычно считают революционными стилистическими открытиями) и попытками подражания несуществующему «японскому искусству» (от осваивания декоративного стиля гравюр до вырсошей из него манги и бесчисленных и неизменных фанартов по наруто и хеталии).

Подводя итоги, подчеркну самое главное — это отсутствие (сверх-)серьезного отношения. Это дает карт-бланш на выбор стиля и сюжета, это дает картины, которые хочется вешать к себе на стенку. Это именно легкое, вульгарное, кричащее прикладное искусство - оно декоративно, оно радует глаз. Оно не претендует на высокость или художественность. Сбрасывать ярмо ДПИ просто... не понадобилось.

Но там редко есть отличное знание анатомии, да. Никто не рисует гипсовые бюсты и эскизы десятилетиями. Как правило, автор разрабатывает и оттачивает схематическую абстрактную систему условностей, позволяющую и ему, и зрителю забыть об анатомии. Лучшие совершенствуются, худшие имитируют мейнстрим. Почувствуйте разницу.
comments: 45 комментариев or Оставить комментарий в избранное рассказать другу

Tags:, , ,
Subject:внезапно, посмотрел «Константина»
Time:04:45 pm
Я давно его хотел глянуть, чтобы понять, что сподвигнуло автора небезызвестного кроссовера «Guristantine». А тут прихожу домой, а родственники как раз сидят смотрят вгромкую. Ну я и присоединился.

Ну что сказать, по большей части фильм вызвал только улыбку. Образ Константина, дейстивтельно, имеет чуть более чем поверхностное (сигареты, лол) сходство с Реки - они оба решали идентичную психоэтическую проблему, хоть и в асболютно разных условиях, и, в общем-то, пришли к неизбежно похожему ответу. Для обоих ненавистная маска, тяжелая повинность (помогать другим ради собственного спасения) оказалась в итоге их истинной природой. Конечно, ХР сильнее во всех аспектах. Мир Константина бесцельно жесток и ходулен одновременно, как бы намекая на комиксное прошлое, так что и решение проблемы кажется достаточно притянутым за уши. ХР же предельно искренне и честно, в рамках жанра слайс-оф-лайф и порядке бытового откровения, показывает суть и механизм действия того, что так беспомощно и фальшиво пытались показать нам в К. под видом "отправки в рай за жертву, одна штука". Ну, лишний раз доказывать самому себе гениальность ХР - дело неблагодарное и пройденное. Зато, в итоге Ракка со смит-энд-вессоном и Реки с Федеральным Дробовиком таки впечатляют :)
comments: 43 комментария or Оставить комментарий в избранное рассказать другу

Tags:, , , ,
Subject:Why learning Haskell/Python makes you a worse programmer
Time:02:38 am
http://lukeplant.me.uk/blog.php?id=1107301645

Позабавило :) Примерно подводит черту под моими отношениями с С++ после знакомства с Питоном. Может бросить хаскель пока не поздно? :)

P.S. Ощущаю всё больший этический и эстетический протест против лживых и подлых нападок на stateful-системы. Что такое алгебраические типы данных? Исходя из того, что я понял, с практической точки зрения это и есть механизм автоматического обеспечения внутренней целостности и непротиворечивости системы с состоянием. Могу предположить, что теория может быть развита далее, до автоматического обеспечения непротиворечивости и целости сложных изменяемых объектно-оринетированных систем, а собственно высокоуровневые «методы» будут прикручиваться уже сверху на полученный костяк. Технологически, часть этого уже реализована в Хаскеле. Причем, подозреваю, большая часть. Идеология объединения данных и мехнизмов их обработки, суть ООП - великое достижение, и принципиальная подверженность получающихся сложных систем ошибкам, как мне кажется, вовсе не вина подхода и уж точно не аргумент в пользу функционального стиля («битый небитого везёт», выезжать на спине других - нехорошо), а всего лишь индикатор несовершенства теоретический и технологической базы.

Всё-таки многие системы для человеческой мысли гораздо удобнее представлять в виде асинхронных сущностей с состоянием и методами, чем в виде деревьев вызова чистых функций. Именно это и стало причиной появления и формулировки данной проблемы. Будь нам функциональная парадигма ближе, этой проблемы бы даже не появилось.
comments: 30 комментариев or Оставить комментарий в избранное рассказать другу

Tags:, ,
Subject:Когда я вижу фразу knowledge representation, я хватаюсь за свой воображаемый браунинг
Time:05:04 pm
В свете предыдущей дискуссии по Времени Евы я забросил Хаскель и метапрограммирование в Питоне и взялся читать книжку об современных подходах к Artificial General Intelligence (ребрендинг AI в попытке вернуться на изначальную дорожку). Весьма, весьма интересно, кое-что — чуть ли не на уровне откровений. В первую очередь, с философской точки зрения.
comments: 5 комментариев or Оставить комментарий в избранное рассказать другу

Tags:, , , , ,
Subject:AVC, Application View Controller (переписано и дополнено)
Time:01:11 pm
Все мы помним, какая хорошая это идея — архитектура Model-View и её вариации, и какое дикое количество геморроя она вызывает на практике. Связано это с тем, что она никак принципиально не решает проблему переплетения кода модели и кода представления, не убирает этот беспорядок, а всего лишь дает возможность в нем ориентироваться. На гордое звание решения могут претендовать лишь инструменты, избавляющие нас от хаоса.
Об разделении business-кода и интерфейсов много говорили, и иногда по делу, но в итоге все сводилось к вписыванию кода в обработчики событий и бесчиаленные вызовы TextCtrl1.GetText(). Просто вместо хардкода последовательности инициализации интерфейсов хранились в отдельных файлах и представлялись в виде xml — этакий психологичеcкий трюк, чтоб относиться к ним, как данным. И если для компилируемых языков это было критично, то для, скажем, Питона уже никакой разницы между трансляцией xml-файла в интерфейсный код и собственно подгрузкой и непосредственным исполнением файла с уже имеющимся интерфейсным кодом в принципе не существует.

Эти жалкие полумеры меня не могли радовать. Идеальная система, как я её себе воображал, выглядела примерно так: берется алгоритм, где все инструкции вида print(x) или Label.SetText(x) убираются, а вместо них в начале ставятся, «watch(x) as Label»; а всякие словоблудия типа TextCtrl.GetText(s) заменяются на «reflect(s) as TextCtrl». Странные термины были выбраны специально, чтобы подчеркнуть декларативность стиля, вневременность и внеконтекстность связей: мы, Человек, должны только высказать, что хотим отображать переменную или знать значение текстбокса, а остальное - проблемы роботов.

Оказалось, что похожая штука существует: http://avc.inrim.it/
Именно (почти) об этом я мечтал. Это, товарищи, потрясающе. Эта штука автоматически связывает извлекаемые из ресурсов гуи и переменные в коде. Но мало того, по сути дела это ещё и мета-тулкит. Можно писать код, абсолютно агностичный не только к платформе, не только к конкретному тулкиту, — но и к гую как таковому в принципе.

От моей конепции AVC отличается тем, явно что использует xml и редакторы гуя. Это разумное решение - опираться на уже имеющиеся инструменты. А взамен на это она вообще избавляет нас от необходимости явно декларировать, что мы хотим отображать или знать - достаточно просто дать контролам имена соответсвующих переменных. Теоретически, на базе этого легко можно построить предложенную мной систему, которая будет ещё проще и примитивнее, но зато позволит быстро и в два слова писать истинно декларативный гуй от руки. А для случаев посложнее по-прежнему грузить интерфейсные файлы или читать конфигурацию раскладки шуевых элементов из строки с подобием вики-таблицы. Ну это все теоретически, на практике-то у меня кишка тонка такое кодить.

Картинка.

Рабочий код идентичен для любого из пяти тулкитов. Последовательности инициализации и внешний вид, как и следовало ожидать, немного отличаются - и даже этого бойлерплейта можно было избежать, добавив дополнительные обертки и конфигураторы отдельно для каждого тулкита, а также упростить обработку сложных типов (выводить голые словари и списки без требуемого специального форматирования).

P.S. Ещё один похожий концепт был в экспериментальном интерфейсно-остроумном тулките Shoes для Руби, но для написания стандартного интерфейс он не подходил, да и не ставил перед собой такую задачу.
comments: 3 комментария or Оставить комментарий в избранное рассказать другу

Tags:, , ,
Subject:Линус об SCM (спасибо [info]claymore_ws за познавательный материал)
Time:03:34 pm
http://www.youtube.com/watch?v=4XpnKHJAok8

They may not be literally disconnected, but in practice, they aren't really well connected either.
Even if it's not completely offline, it's important to be able to do everything you want to do from any location without having to be able to access a server.


И хотя Линус говорил о преимуществах распределённых SCM над централизованными, думаю, это хорошо выражает и суммирует моё недоверие к любым формам "веб-приложений". Их единственное назначение как я его вижу - это попытка стртегического перенаправления контроля (а значит, в итоге и денежного потока) из рук людей в руки корпораций. Никаких технологических преимуществ концепция веб-приложений не содержит, и любые проблемы, которые она якобы рещает, решаются более эффективно и надёжно традиционными средствами. А в вопросах обеспечения безопасности третья сторона (сервер: бэкап, CA, мёртвая рука итд) будет требоваться независимо от технологической парадигмы.

Это в продолжение дискуссии с некоторыми людьми об этих новомодных глупостях. Разница между теоретическим «not disconnected» и практической инженерной оценкой «not well connected» хорошо иллюстрирует мертворожденность подобных штук. Не говоря уж о невозможности обосновать необходимость их использования, — пока сеть не станет действительно жёсткой системой, работоспособность любых таких вещей не гарантирована, на них нельзя положиться, а значит — их использование требует принятия идеологии смирения и беспомощности.

А жесткой системой сеть станет не раньше, чем у нас наступит полный blame.
comments: 9 комментариев or Оставить комментарий в избранное рассказать другу

Tags:, ,
Subject:love is war
Time:10:59 am
Настроение:программинг, лол, лытыдыбр
Совершенно случайно (ну не совсем, конечно, но всё же) наткнулся на ресурс того самого чувака, что написал «Cathedral and Bazaar». Если честно, я с некоторым снобизмом отношусь к амерканскому популизму. Кто читал то, что я имею в виду (статьи того самого роквелла или например free-culture.cc - хороший пример) поймут меня. Этот стиль "для идиотов", с многократным разжёвыванием и повторением, пrотивен нашей кльтуrной душонке. Или, например, взять RMS. Мужик прост как топор, и какие бы правильные вещи он ни говорил, читать его не слишком интересно. Потому я решил потыкать веточкой что-нибудь помельче, а именно пафосно названную «Месть Хакеров». Каково же было моё огромное удивление, когда я обнаружил потрясающе чёткое, сжатое и динамичное чтиво, в чуть ли не каждом предложении открывавшее новый взгляд или идею. Антрополог по самоопределению, ESR и вправду оказался действительно скорее публицистом и историком, чем программистом или активистом. Мне почти удалось поверить в ту грандиозную картину эпической битвы идей (гиасс отдыхает) на поле PR, технологий, капризной прессы и безжалостных гигантов бизнеса. Может быть, так оно и было, но это настолько красиво, что российскому инженеру, знакомому со стандартной судьбой блестящих идей в нашей стране, поверить в это реально трудно. Но даже в качестве белетристики этот чел омега-жжот.
comments: 10 комментариев or Оставить комментарий в избранное рассказать другу

Tags:, , ,
Subject:Ещё трёпля о программировании
Time:09:55 am
Как сказал Роквелл, "Есть два типа любителей фотографии: любители фотографировать и любители потрепаться." Ну так вот я скорее во вторую категорию попадаю. Не то чтобы это очень плохо (я предпочитаю ассоциировать себя с тем человеком из «игры в бисер», который Игру очень любил, но играть не мог и не умел)... о чём это я. А, так вот, о нашей Игре. Тут меня ласково упрекнули в незнании матчасти. В принципе, до того, что С++ является не то что не лучшим языком для решения конкретных задач, но вообще абсолютно неподходящим языком для решения каких-то ни было задач, я догадался давно. Но я продолжал восхищаться сложностью структуры и эстетически цельной системой противоречий, заложенной в язык. Для меня он был скорее любимой собакой, чем ездовой. Однако недавно я на практике убедился в том, почему промышленную разработку ПО ведут на том же C#: по-видимому, в отличие идейного (крайне левого) фронта С++, поставившего перед собой во многом нереализуемый и противоречивый идеал развития, центристские платформы разработки типа .NET более приземлены, либеральны то есть по уши коммерциализированы, и ставят своей основной целью решать проблемы, а не их создавать. Какие из этого выводы?... Страуструп как-то говорил о более простом и гениальном языке, который пытается вылезти на свет из С++. Ну так вот, тот язык, похоже, безнадёжно опоздал...
comments: Оставить комментарий в избранное рассказать другу

Tags:, , , , , , ,
Subject:Закончил третий в своей жизни кусок полезного прикладного кода.
Time:03:40 pm
Это маленькая гуй-программа с таблицей и несколькими подсчётами и пересчётами. Я и не подозревал, как я на самом деле ненавижу С++. Все эти скобочки (всё равно все, всё и всегда выделяют отступами!), несистематические точки с запятой (тысячи их!), двойные объявления (зачем?!), необходимость помнить, понимать и учитывать разницу между инициализацией, копированием и присваиванием; невозможность перегрузить точку (а значит, все умные указатели в борланде и не только пишутся через ->); кучи словесного мусора — по два указания на тип в одной инструкции там, где нам вообще всё равно, какого оно будет типа — это нормально? десятки строк только для того, чтобы воспользоваться парочкой шаблонов и опреаций над ними — это нормально?! Ненависть, ненависть!!

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

Позабавило, каким хреновым программистом я оказался. Я всегда объяснял всем вокруг, как надо хорошо и правильно писать программы, но сам допускаю такие глупости, что потом, — а глупости в программировании имеют циничное свойство всплывать потом, — в ужасе хватаюсь за голову. Впрочем, как я уже убедился, с повышением уровня сама необходимость делать эти глупости во многом пропадает. Большая часть проблем решается улучшением доступности средств высокого уровня. Сегодня цена использования инфраструктуры STL в С++ — это страницы лишнего кода. Цена использования её аналога в питоне равна нулю, все основные средства встроены в язык. Сравнение основного инструмента работы с контейнерами, цикла перебора — в С++ for(sequence<type>::iterator i= seq.begin(); i!=seq.end(); ++i) c питонским for i in seq: говорит само за себя более чем убедительно.

Интересно только, почему я не убедился лет на пять раньше? Инерция мышления — страшная штука.
comments: 15 комментариев or Оставить комментарий в избранное рассказать другу

Tags:, , , , , ,
Subject:об экзистенциальном страхе ясности
Time:12:57 pm
Можно много рассуждать о людях и их недостатках. В своё время я был просто потрясён, например, заметив ,что большая часть бытового общения является просто взаимной стимуляцией ("поглаживанием" в терминологии Берна), абсолютно никак не вовлекая сознание. Начитав книжек по психологии, я узнал про такую штуку как бессознательное и иррациональное, но для меня по-прежнему было, и во много остаётся загадкой, резко выраженное негативное отношение к любым попыткам мышления на бытовом уровне. Ставшие классикой абибосы с "ты чё, самый умный штоле" на самом деле даже не являются самым ярким или тяжёлым случаем - как бы ни была мне ненавистна эта формулировка. В том же самом "сильно умный" от старушки таится что-то неизмеримо более глубокое. Если внимательно присмотреться, ненависть к "умным" не получается свести к советскому феномену типа пресловутая нелюбовь к интеллигенции или частным проявлениям человеческой психологии. Люди на проверку вовсе не ненавидят конкретных врачей, интеллигентов, учёных или инеженеров. Особенно если не в состоянии постичь суть деятельности тех. Люди не ненавидят здравый смысл. Они уважают смекалку. Но неизменно с обжигающей ненавистью высказываются в адрес любых попыток облечь здравый смысл в слова. Любых попыток подвергнуть повседневность анализу и чётко выразить причинно-следственные связи. Такое впечатление, что эта ненависть к облечённой в слова рефлексии - это страх перед собственной разумностью. Перед тем, что, обретя ясность, мы вынуждены будем встать в конфликт с собственным бездеятельным омутом, признать жалкие оправдания жалкими, бессмысленное прозябание бессмысленным, а достойные вещи — достойными и давно заждавшимися нас... Что наша собственная "разумность" означает нечто большее, чем выбор дешёвой картошки на базаре или негнилой - в «копейке». И не просто означает — обязывает, требует...

В таком случае, можно ли вообще считать сознанием 99% времени нашего бытия?

Изначально мне просто вспомнилась жуткая отрицательная реакция людей на слова "философия" и "психология". Как правило, слишком драматичная, вплоть до истерического смеха или кривых спесивых улыбок "молодой ещё мальчик, перебесится, станет как все"... Люди не верят и не хотят верить, что что философия есть абсолютно любая «мысль, додуманная до конца», а «психология» - это всё, что мы есть и что мы думаем о том, что нас окружает. Люди страшно боятся поумнеть. Чувствуют, блин, что толку от этого никакого, наверное ^^

(Наверное, наша система образования провалилась и должна убить себя. Вслед за Хоппе я ратую за возвращение элиты в общество!)
comments: 3 комментария or Оставить комментарий в избранное рассказать другу

Tags:,
Subject:о разрешении
Time:10:52 am
я не совсем верно выразился про "большее разрешение указателя". Но тут стоит немножко пояснить. Любой школьник и его собака сегодня знают, что разрешение - это количество пикселов по горизонтали, потом буква «х», а потом количество пикселов по вертикали. Если думать только об этом, то, конечно, всё ясно: мышь работает в системе координат самой мыши, и на разрешение указателя влияет только разрешение её сенсора, которое никоим образом не зависит от размера экрана и количества пикселов на нём. Правда, школьник уже не совсем в курсе, что такое разрешение сенсора. А те устройства (планшеты), что работают в системе координат экрана (в абсолютном режиме), как правило, имеют разрешение, заведомо превосходящее разрешение экрана для любого размера.

Так почему же удобнее играть в УТ на маленьком экране? А всё гениальное просто: размер картинки меньше. Одно и то же перемещение указателя будет проецироваться в физически меньший дисплей, соответственно коэффициент усиления системы, жёсткость выше. Выше, конечно же, и услиение входных погрешностей, но это уже пить надо меньше чтоб руки не дрожали. А малую картинку куда проще охватить взглядом, глазные яблоки не мечутся по полуметровой плоскости, а держатся в маленьком круге у центра экрана.

Каким местом тут участвует разрешение? :) Так вот, что такое разрешение как характеристика системы? Это её плавность. И малый экран в системе «мышь - экран - глаз» даёт куда большую плавность, чем большой. Т.е. субъективно в психовизуальной модели размер экрана выполняет ту же функцию, что FPS - чем меньше экран (и больше FPS), тем выше разрешение и жёсткость системы.
comments: 7 комментариев or Оставить комментарий в избранное рассказать другу

Tags:, ,
Subject:удивляюсь
Time:11:51 am
сколько раз встречал в сети и книжках рассуждения в виде "добавить функцию вывода нашего класса мы в std::ostream, к сожалению, не можем...". каким надо идиотом быть ,чтоб не понимать, что это разделение не только естестенно, но и необходимо? что сама суть ostream - потоковый вывод строк символов, а не каких-то классов, и он предоставляет этот функциональный интерфейс в виде набора стандартных operator<< . И если класс хочет выводить себя туда, — даже не именно туда, а вооббще куда-то, — он должен предоставить внешнее представление, соответствующее интерфейсу - ведь он сам отвечает за свою семантику. Добавление автоматического преобразования типа к строке operator<std::string> спасёт любой класс, желающий выводить себя в поток. Написание дополнительных внешних operator<< или субклассирование std::ostream — это фгм терминальной стадии.

по-моему, за всей этой объектной мишурой мы начинаем часто забывать, что она создавалась для облегчения написания программ.
comments: Оставить комментарий в избранное рассказать другу

Tags:, , , ,
Subject:Функциональный ГУЙ!
Time:10:34 am
В общем, я ляпнул что для излечения от виджетной тулчанки нам нужно использование функциональных парадигм, и пришлось задуматься:

— как применить функциональную парадигму к гую?
В предельно общем случае мы получаем следующее:

watch(var)
react(button)
reflect(var ←→ input)

Получается весьма, симпатично.
Заметим, что отказ от императивного подхода в пользу функционального предполагает, что мы понимаем и отдаём в себе отчёт: мы теряем тотальный, параноидальный контроль над тем, как это будет выглядеть, но ведь он для нас априори не важен: имплементация пусть предоставит модуль для настройки результирующего внешнего вида или сверхумное конфигурационное устройство - нас это не волнует.

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

Ну, например, вот так:
(псевдокод, но валидный питон... почти. префиксы мы добавлять не будем, хотя wxХрень или QХрень смотрится, конечно, в сто раз круче, чем просто Хрень </ирония>)
with App:
    with Window1:    
        watch(var1) //отображение
        react(button1) = proc1  //уравнение :)
        reflect(var2 <> input1)  //отражение

В принципе, этот код уже должен работать без дополнительной рихтовки. Всё остальное должен либо (автоматически) конфигурировать отдельный девайс настройки, либо и знакомый нам по дельфям метод прямого обращения к свойствам компонента с помощью контекстного менеджера (который уже сам решит, когда выполнять данные ему инструкции настройки) тоже подойдёт. Важно не перегнуть абстракцию: в нашем случае компоненты должны реализовывать высокоабстрагированный интерфейс и сохранять функциональный стиль. Тут можно придумать множество синтаксического сахара - например, каждая из трёх фундаментальных инструкций watch/react/reflect могла бы сама служить контекстным менеджером настройки упомянутого в ней элемента интерфейса, и это было бы хорошо, но в отсутствие рабочей имплементации это — бессмысленное занятие.

Заметим, что я сделал формы нарочно непохожими: оно лучше, когда «разные идиомы выглядят по разному»©. А т.к. их назначения принципиально различны, то имеет смысл сделать их использование тоже разным. Хотя синтаксис можно допилить, и, особенно значки операторов, — их можно использовать любые. Например, вот такая версия с учётом вышесказанного:
reflect(var2 = input1) | proc2 //отражение в виде уравнения и ещё обработчик
    style="border:1pt;font-family:verdana" //внезапно набигает цсс! 
react(button1) >> proc1  //злой c++ возвращается и мстит! ха-ха-ха!!
    caption="push me" //а вот более традиционный подход
    appearace=schema1 //а ещё хорошо бы не прописывать все эти visible = true руками,ね
    behavior=follow(!proc1) //да и с задолбавшим enabled = false давно пора что-то делать

или даже вот такая спекуляция на идее корутин: reflect(var2 < proc2 > input1) //хотя это выглядит уже чересчур грязно
Можно всё. Кроме react(button1, proc1), конечно. За такое убивают.
comments: 16 комментариев or Оставить комментарий в избранное рассказать другу

Tags:, , ,
Subject:из истории моего романа с С++
Time:02:03 pm
Заодно вспомнилась книжка Д. Элджера «C++ for Real Programmer», когда-то познакомившая меня с программированием как направлением человеческой мысли, а не управления компьютерами, где примеры кода подавались как анекдоты и неизменно сопровождались комментариями типа "хахахаха, облом!" или "помогите, убивают!". И хотя книжка эта очень старая, технологически к 2000 году она уже была неактуальна - стандарт С++ и его компиляторы уже реализовывал практически все идеи и идиомы оттуда в языке и STL (а Проблема Сборки Мусора™ как-то отпала сама собой, вместе с необходимостью этот мусор генерировать), я навсегда усвоил, что программирование - это такой себе тихий омут, и заодно полюбил С++ как вещь в себе. (Хотя, в принципе, если следовать мудрым заповедям Страуструпа, на нём по-прежнему можно писать достаточно эффективные и красивые программы)...
comments: Оставить комментарий в избранное рассказать другу

Tags:, , ,
Subject:ГУЙ!
Time:11:37 am
Почему я принципиальный противник написания GUI-кода руками? Да потому, что это идиотизм: это сущностно противоречит самой идее гуя как такового. Все знают, насколько отвратительной порой бывает такая отвратительная каша GUI-кода и функционального кода, особенно когда возникает необходимость вычленить функциональный код из приложения на какой-нибудь древней платформе. Но! В системах RAD, оборудованных автоматической генерацией гуи-кода типа Дельфи/Билдер этот недостаток хотя бы консистентен (аналоги мне неизвестны, и не уверен, насколько нынче зелена трава на майкрософтовской лужайке). Код гуя генерируют роботы, а мы им просто поклоняемся. То есть знаем типичные недостатки, где их искать и как их лечить. Когда же код гуя пишет вручную человек на том же gtk, результат в каждом конкретном случае непредсказуем. Фактически, ничего не изменилось со времён печально знаменитой закусочной Steve Balmer's MFC's - я не вижу никаких качественных отличий кодинга на тех же ГТК или Qt. Только количественные: на порядок меньше гемора, -//- проще, -//- красивее, -//- функциональнее.
comments: 5 комментариев or Оставить комментарий в избранное рассказать другу

Tags:,
Subject:оказывается, не я один такой умный </sarcasm>
Time:10:52 am
wiki> During the second half of the 20th century, philosophers extensively debated the possible methods or approaches to building ontologies, without actually building any very elaborate ontologies themselves. By contrast, computer scientists were building some large and robust ontologies (such as WordNet and Cyc) with comparatively little debate over how they were built.

бесценно, бесценно, товарищи! алсо, наивный советский материализм, считавший метафизические области философии далёкими от прагматической пользы, а саму метафизику ругательным словом, в итоге сам оказался... бесполезен - так как бесплоден и идеологически пассивен вследствие своей саомдовольной ограниченности. Это — достойный, гёделевски эпичный тупик. Направление мысли, основной целью которого являлось "учить людей не думать А, а думать только Б" , никак не может претендовать на научную методологию — оно не может претендовать ни на что вообще. Когда приходит пора думать хоть о чём-то, оказывается, что граница между "не думать А" и "не думать вообще" — тоньше, чем кажется. Поэтому сейчас "прагматичные" дяди на западе придумывают семантические технологии, а в наших университетах студенты пишут лабы по схемотехнике на дельфи.
comments: Оставить комментарий в избранное рассказать другу

Tags:,
Subject:DOUBLETHINK: when you see it, you will shit bricks
Time:11:13 am
на просторах одиозного проекта, сокращающего период варварства до тысячи лет, в одной очень политкорректной статье найден чудесный, очаровательный перл.

In a recent article anthropologist Norman Sauer asked, "if races don't exist, why are forensic anthropologists so good at identifying them." [97] Sauer observed that the use of 19th century racial categories is widespread among forensic anthropologists:
"In many cases there is little doubt that an individual belonged to the Negro, Caucasian, or Mongoloid racial stock."[98]
"Thus the forensic anthropologist uses the term race in the very broad sense to differentiate what are commonly known as white, black and yellow racial stocks."[99]
"In estimating race forensically, we prefer to determine if the skeleton is Negroid, or Non-Negroid. If findings favor Non-Negroid, then further study is necessary to rule out Mongoloid."[100]

According to Sauer, "The assessment of these categories is based upon copious amounts of research on the relationship between biological characteristics of the living and their skeletons." Nevertheless, he agrees with other anthropologists that race is not a valid biological taxonomic category, and that races are socially constructed.

(cp) http://en.wikipedia.org/wiki/Race_(classification_of_human_beings) , курсив мой.

Мне живо напомнило сюжет из советской книжки про Авиценну (вроде бы) для детей:
- учитель, в вашей книге почти нигде не упоминается Аллах!
- а, и правда. чёрт. вставь, что ли, где сочтёшь нужным.
«И вот мы видим, что дважды два, с Божьей помошью, стало равно четырём.»

Если у него и правда были такие сообразительные ученики, то ибн Сине очень повезло: как мы знаем, с божьей помощью 2х2 не менее легко становится равным пяти. Вообще связь двоемыслия с авторитарным общественным устройством отмечалась неоднократно, а также тот факт, что если доемыслие является необходимым условием выживания в государстве, то речь может идти о тоталитаризме. Впрочем, ещё Гедель цинично усмехался, когда США называло себя свободной демократией.
comments: Оставить комментарий в избранное рассказать другу

Tags:,
Subject:Ubermensch \o/
Time:11:49 am
поправлюсь: Сверхчеловек не надуманная тема. Это - метапеременная, функционально: это Цель, которая оправдывает нашу жизнь. Это такой же поэтический образ, как и всё остальное в речах Заратустры, как орёл, змея, лев, дракон, и прочие символы аспектов Человека. Это 42. Надумана - трактовка Сверхчеловека как чего-то потенциально существующего в реальности или как будущего биологического вида - нас ждёт или сингулярность или вырождение, никаких хомо люденсов не будет.

Под философией я понимаю серьёзные работы в ключе научного метода. Философия в общем смысле, как гуманитарная дисциплина, как антропология, - несомненно, является основным предметом Заратустры: о чём же эта книга, как не о людях.

(Научный метод применим к философии условно: такие люди, как Спиноза, Кант или Хайдеггер фактически создали свою символическую вселенную, замкнутую Теорию (систему парадигм, терминов и поддерживающих аксиом). Поэтому, строго говоря, в общем смысле применить к таким системам научный метод в базовой реальности не совсем возможно, они, по-моему, непроверяемы (доказывают или не доказывают сами себя) по Геделю, - то есть, интуиция мне говорит, что они с высокой степенью вероятности изолированы от основной системы здравого смысла - и именно потому они так завораживают людей. Ну и, я првык ей верить, так как мозгов на основательное разбирательство у меня явно не хватает)
comments: 22 комментария or Оставить комментарий в избранное рассказать другу

Tags:,
Subject:Ницше и тема В.Возвращения...
Time:01:37 pm
Широко известная фраза о Заратустре: (нам не важно, кто её сказал ©Anonymous) "Я был потрясен - не учением Ницше, - а атмосферой глубины духовной жизни, духовного борения, которой веяло от этой книги". Полностью подпишусь под этой микро-рецензией: Заратустра есть великая поэма о человеческом духе, но никак не философская книга. Это в первую и в последнюю очередь художественное произведение. Если там и было чего-то стоящее, оно прошло мимо меня. Но интуиция и то, что осталось от мозга, говорят - не было. Тема Сверхчеловека и, особенно, - «вечного возвращения» - показались мне абсолютно надуманными. Зато образ самого Заратустры - это нечто. И лично мне кажется (на самом деле, я уверен), что его (Заратустры) философия служит скорее для того, чтобы показать и сделать ощутимым его характер, чем как самоцель - так же, как, например, клингонский или эльфийский языки не нужны в реальности (нет тех, кто бы создал эти средства общения), а нужны лишь там, где они и применялись. И хотя мы знаем, что сам Ницше относился к этой своей wannabe-философии очень серьёзно, я не могу воспринимать её как философию более серьёзного порядка, чем какой-нибудь основной закон алхимии из известного аниме.
comments: 6 комментариев or Оставить комментарий в избранное рассказать другу

Tags:,
Subject:ницше
Time:11:20 pm
Странно видеть, как ошибочно понят и недооценён этот гениальный человек. Мыслитель проблем морали сильнее Достоевского, высказавший в паре метких слов то, что когда-то мне казалось гениальными откровениями в многостраничных томах Фромма, он не высказал ни одной интересной мысли. ни синергетики, ни социального анализа. Только обычные, нормальные мысли любого человека, который рискует их подумать. И облёк их в поэтический стиль, воспринятый идиотами буквально. Заратустра - это на треть библия, на треть мужская психология, на треть священеное творческое безумие.

"Ницшеанство" - потчи синоним нигилизма и жестокости. Никто не читал Ницше, но все его боятся. А о чём ещё он говорил, как не об истинно моральном идеале? он всего лишь видел человека выполняющим дух, а не букву, всей истории человеческой же морали. О жизни как цели жизни. Только и всего.

Хорошо, что я не читал ницше раньше. мне повезло: я бы просто не понял ничего.

Я давно перерос Фромма как индивидуального психолога. Нет, не так - я, скорее, наконец, дорос до него - до того субъекта, чьи проблемы стали темой всей фроммовской психологии. Прочувствовал на своей шкуре. И теперь, когда свобода и воля стали понятиями ощутимо тяжёлыми, хотя мне их лишь предстоит приподнять, - но уже так близко ощутимыми под ладонями, не абстракциями, - спускающийся с горы в сиянии заката грубоватый поэт даёт нечто большее - ничего не объясняя, но обращаясь прямо к моему воображению, он показывает всё - верхом, на образах и символах, - куда яснее, чем холодные рассуждения немецкого еврея о природе любви... смысл жизни не выразить силлогизмами. Фромм - гениальный социолог, неисправимый социалистический идеалист и мечтатель, и очень хороший подростковый писатель. Он на многое может открыть глаза. Но подтолкнуть - падающего - к падению, к падению созревшего плода, к истинному закату - это может Заратустра.
comments: 7 комментариев or Оставить комментарий в избранное рассказать другу

Реклама

[icon] наивный идеализм
View:Свежие записи.
View:Архив.
View:Друзья.
View:Личная информация.
View:Website (http://dervish-candela.deviantart.com/).
You're looking at the latest 21 entries.