И снова количество открытых табов на браузере зашкаливает -- перед написанием очередного текста нужно срочно их все закрыть.
Международное общество усиленного познания --
http://www.augmentedcognition.org/ -- занимается улучшением принятия решений с использованием вычислительной техники. Лекарства, улучшающие рабочую память --
http://scienceblogs.com/developingintelligence/2006/12/enhancement_of_working_memory.php. Lifeboat foundation --
http://lifeboat.com/ex/main (куча ссылок на разную алармистскую футурологию).
Каких только шахмат не бывает: Кригшпиль (
http://www.cs.unibo.it/~cianca/wwwpages/chesssite/kriegspiel/kriegspiel.html) -- шахматы, в которых игроки не видят чужих фигур и ходов. Так это более напоминает войнушку. Стремительно распространяется по компьютерным олимпиадам. Сюда же -- презентация на итальянском о современном состоянии шахмат:
http://www.cs.unibo.it/~cianca/wwwpages/seminari/torino.pdf Два уровня ACM Computing Classification System (1998):
http://www.acm.org/class/1998/overview.html -- ну очень старинная какая-то, даром что десяток лет всего прошло...
Computing Research Repository (CoRR) --
http://www.acm.org/corr/, откуда взято несколько следующих статей. Забавное место: публикация кучи недоделанных работ.
Walid S.Saba, Language, logic and ontology: uncovering the structure of commonsence knowledge (
http://arxiv.org/PS_cache/cs/pdf/0610/0610067v3.pdf) -- знаниевая структура здравого смысла должна быть открыта, а не придумана. Логика -- это язык, а не исчисление. Математика -- это тоже язык. Нет разницы между формальными и естественными языками. Онтология нужна для чего-то навроде проверки типов в языке. Недостаточно только логического вывода (как обычно в AI), или только common sence (как у Лената). Нужно объединить оба подхода: для этого нужно открыть знаниевую структуру, которая есть в естественном языке -- а не придумать ее.
Онтологическое представление для software patterns --
http://arxiv.org/PS_cache/cs/pdf/0605/0605059v1.pdf. Паттерны -- важный источник роста базовых концепций, интегрируемых затем в инструменты и даже в языки программирования. Каноническое (неформальное) представление непригодно для какой-то автоматизированной обработки (а паттернов уже сотни). Представление на UML языках спецификаций типа OCL (Object Constraints Language) -- недостаточное. Предлагается онтологическое представление того, что такое паттерны дизайна -- хотя и ничего не говорится о самом таком представлении, только об идее. Интересно, что к классическому представлению онтологии как "формализация концептуализации" тут добавляется второе -- общий словарь, в котором агенты обмениваются сообщениями. Если пара агентов разделяет онтологию, то они могут обмениваться знаниями. Если репозиторий паттернов придерживается некоторой онтологии, то другие инструменты могут с этими онтологиями что-то делать. То есть онтология -- это еще один способ говорить о "стандартах" и "протоколах"... Интересно, что через пару часов мне встретилась работа на эту же тему онтологии и дизайн-паттернов --
http://www-poleia.lip6.fr/~razavi/aom/papers/ecoop2000/richard.mcclatchey.zip, на этот раз использование подхода в работе над данными физических экспериментов, требующих разной обработки одних и тех же данных.
Список российских "официальных" магистерских программ в области менеджмента --
http://www.umoman.ru/magister_list.html, ведется Учебно-Методическим Объединением Вузов России (sic, все с больших букв!) по образованию в области менеджмента. От "управленического консультирования" до "креативного менеджмента", от "гостиничного и туристического бизнеса" до "организации производственных систем (в том числе по отраслям)". Читаешь там про "логистику предпринимательства в химической, нефтеперерабатывающей, нефтехимической и биохимической промышленности", и понимаешь, что уж точно не нужно ограничивать себя замшелыми рамками MBA и MPA.
v_novikov прислал ссылку на Entrepreneurial Firms, Giant Firmas and Growth (
http://www.econ.nyu.edu/user/baumolw/html/Small%20Firms%20Giant%20Firms%20and%20Growth.ppt) -- еще один сборничек экспоненциальных графиков мирового роста и прорывов, которые осуществили мелкие фирмочки, а не крупные предприятия. Проктер и Гэмбл имеет больше ученых, чем Гарвард, Стэнфорд и MIT вместе взятые -- и другие занятные факты.
sbobrovsky указал на перевод замечательной статьи Мартина Фаулера "Языковой инструментарий: новая жизнь языков предметной области" --
http://www.maxkir.com/sd/languageWorkbenches.html. Тут нужно еще напомнить, что Мартин Фаулер -- это соавтор Кена Бека в книжке Planning eXtreme Programming. Смысл этой статьи -- это появление нового поколения "языковых инструментариев" (Language Workbench) дает новую жизнь "предметным языкам" (domain-specific languages). Языковый инструментарий, как образец типового "мета" -- это как раз направление, в котором я сейчас усиленно размышляю. Проблема с DSL -- это большая сложность разбирательства новых людей с многочисленными вводимыми языками. Но с того момента, как новые люди разобрались, их производительность может быть существенно повышена. DSL сегодня связаны с 1. "малыми языками" Linux, 2. Lisp и его "программирование снизу вверх" (кстати, мой любимый стиль в любых языках -- с самой моей программистской юности, см.
http://www.paulgraham.com/progbot.html), 3. Активные модели данных, 4. Адаптивные (активные) объектные модели (интересно, что с этим случилось после 2002 примерно года? --
http://www-poleia.lip6.fr/~razavi/,
http://www.adaptiveobjectmodel.com/WICSA3/ArchitectureOfAOMsWICSA3.htm), 5. Конфигурационные файлы XML, 6. GUI builders.
Такое впечатление, что подобный стиль программирования со "слоями абстракций" весьма сложен для понимания и сопровождения написанных на нем программ, хотя он и сверхмощен. С этим нужно поразбираться подробнее.
Блог Мартина Фаулера --
http://martinfowler.com/bliki/. Восхитительные заметки. Так, 17 марта 2007г. он подчеркивает важность программирования высокопроизводительных базоданческих приложений без транзакций -- на примере eBay (transactionless,
http://martinfowler.com/bliki/Transactionless.html). У него же куча (хотя и спорных) материалов по DSL и много-много других вкусностей. Похоже, сейчас Мартин пишет на Java. Некоторые темы попадают прямо в направления моих текущих размышлений:
http://martinfowler.com/bliki/RoleInterface.html -- про ролевые интерфейсы. Более того, пример прямо касается WBS (мы только вчера разбирали с
vvagr необходимость разбирательства с объектной онтологией в этом месте).
Обзор XP версии 2.0 (пять ценностей, четырнадцать принципов, тринадцать главных практик и одиннадцать дополнительных -- 2005г., написана Кентом Беком и Цинтией Андерс):
http://www.maxkir.com/sd/extreme_programming_2.html. Изменения существены: практика "планирующая игра" заменена четырьмя разными -- "рассказы", "еженедельный цикл", "ежеквартальный цикл" и "слабина"; практика "метафора" выкинута, и т.д.
Множество чудесных презентаций с авангардистской (т.е. странноватой -- организована Novamente) майской 2006г. конференции по искусственному общему интеллекту (AGI -- artifitical general intelligence):
http://www.agiri.org/forum/index.php?act=ST&f=21&t=23. Оттуда, например: строительство искусственных мозгов за менее чем $10000 --
http://www.agiri.org/forum/index.php?showtopic=161.
Мысль про программы:
we run a program because we know something about the output and we don't know the output (
http://www.agiri.org/forum/index.php?showtopic=173)
и схожая мысль про метаданные:
MetaData is just saying that if something is going to vary in a predictable way, store the description of the variation in a database so that it is easy to change. In other words, if something is going to change a lot, make it easy to change. The problem is that it can be hard to figure out what changes, and even if you know what changes then it can be hard to figure out how to describe the change in your database. Code is powerful, and it can be hard to make your data as powerful as your code without making it as complicated as your code. But when you are able to figure out how to do it right, metadata can be incredibly powerful, and can decrease your maintenance burden by an order of magnitude. Or two. (
http://www.adaptiveobjectmodel.com/)