пятница, 28 декабря 2007 г.

SSH Filesystem

sshfs - утилита, которая позволяет примаунтить директорию на сервере. Все, что надо от сервера - это поддерживать SSH File Transfer Protocol. Все, что надо пользеватетю - установить FUSE(фреймворк виртуальных файловых систем) и sshfs. После установки достаточно создать точку монтирования и запустить команду:
Для размонтирования:
Have a lot of fun!

Read More...

BPEL Learning Guide


BPEL Learning Guide

Read More...

Установка/удаление переменных окружения

Установить переменную окружения можно командой export VARNAME=VARVALUE (оболочка bash). Что бы посмотреть, установленна ли она используется команда env (printenv), например так: env | grep VARNAME. Удалить можно либо командой unset VARNAME либо командой export с ключем -n: export -n VARNAME.

Read More...

ActiveBPEL

Пытаюсь установить ActiveBPEL (open-source реализация бипля). Сам исходник - 20 метров, но такая куча зависимостей!!! :-| Уже скачал дополнительно 150 метров - и это еще не конец!!! Мало того - теперь еще и версии не совпадают :(

Read More...

четверг, 27 декабря 2007 г.

Как звучит WSDL

From Wikipedia:

Web Services Description Language (WSDL, pronounced 'wiz-dəl' or spelled out, 'W-S-D-L')

Read More...

Автоматизация бизнес-процессов с помощью BPEL

Автоматизация бизнес-процессов с помощью BPEL - интересная статья о BPEL(читается как "бипль"). В статье показано, какое место занимает бипль в структуре стандартов и спецификаций веб-сервисов и даны два примера использования бипля для разработки простых SOA на базе веб-сервисов (кстати, SOA не на базе веб-сервисов я еще не встречал). Но примеры, к сожаленью, действительно очень простые и описаны вкраце. Хотелось бы понять, как BPEL связан с WSDL на практике (в это я как раз сейчас разбираюсь):

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

Read More...

Conductor

В английском языке слово conductor означает не только кондуктора, но и дирижера:

The orchestration and the choreography distinctions are based on analogies: orchestration describes central control of behavior as a conductor in an orchestra...

Read More...

среда, 26 декабря 2007 г.

Linux vs Windows

Собравшись с духом решил окончательно перейти на Linux на рабочей машине. Экперементировал я с ним уже давно и при помощи виртуальной машины запускал частенько, но время Ч - время координальных перемен :) - наступило только сейчас. Долгое время меня останавливало то, что нужно напрячься и найти замену MS Outlook (именно его, потому что нужен календарь с аппоинтментами), MS Office Communicator, баг-трекеру; настроить работу с двумя мониторами и настроить работу с сетью.

Зачем мне нужен Linux? Windows не вызывает во мне раздражения, работает надежно, есть весь необходимый софт для работы и развлечений, причем не обязательно платный (а для платного есть бесплатные креки), в конце концов я к нему привык. Я даже время от времени спорю с теми, кто громко рассказывает про Маст дай :) На Linux я решил перейти по двум причинам. Первая причина простая - любобытство, интересно как это все работает и почему все это так хвалят. Вторая причина - на работе большая часть работы делается на удаленных unix-машинах, а основными инструментами является vim, gdb, gcc, вот как раз эти инструменты и вляются второй причиной, я "в захватi" от vim и gdb.

Дистрибутив я особо не выбирал - попробовал пару версий Mandrake/Mandriva, Red Hat и openSuse 10.2. Остановился на последнем просто потому, что он был последний и выглядел вполне пристойно. Мне кажется, что мои познания пока не позволят оценить какой дистрибутив лучше, какой хуже.

Инсталяция openSuse не сложнее инсталяции Windows, интерфейс интуитивно понятен. Самое главное было понять, что помимо консоли, все можно менеджить через YaST. Количество доступного при инсталяции софта поражает - меню даже есть отдельная ветка development. Единственное, что сразу не понравилось - оконные шрифты какие-то угловатые - но это дело поправимое.

Сразу же бросился настраивать сеть. В процессе наконец-то узнал, что такое samba и какая от нее польза.

Следующим этапом была настройка работы с двумя мониторами. Пришлось узнать о Xinerama и TwinView, разобраться в xorg.conf и как устанавливаются драйвера. Даже скачав дрова для моей видеокарты (NVIDIA GeForce 7300 GS) пришлось довольно долго помучиться. В Windows подобная операци заняла у меня значительно меньше времени (и не пришлось нечего читать дополнительно).

Но самое интересное началось, когда я занялся поиском возможности использовать нужный мне софт. Здесь у меня было (и есть, т.е. проблема не решена) 3 пути:


  • использовать виртуальную машину для запуска Windows и использование нужного софта непосредственно в Windows;
  • найти Linux-аналоги нужного мне Windows-софта;
  • использовать для запуска виндового софта wine.

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

Затем я попробовал найти замену MS Outlook. Для этого довольно не плохо подошол Evolution. Я даже пол дня им пользовался: с exchange server'ом работает, письма шлет, аппоинтменты принимает. Но без проблем не обошлось. Во-первый, каждый раз при проверке почты на сервере вылазило окошко с паролем, сколько бы я не клацал по галочке "сохранить пароль". Во-вторых, не удалось загрузить адресную книгу. В-третьих, не смотря, на то что Outlook далеко не шустрая программа, Evolution работала еще медленее, при это довольно еще иногда висла при закрытии. Попытался поставить более новую версию - не получилось, т.к. потребовалось обновление еще кучи софта. Пытаясь автоматизировать этот процесс, заметил, что ни YaST, ни zypper не хотят работать с удаленными репозиториями. На форумах нашол, что это так же лечится обновлением, но обновление потянуло за собой обновление зависимостей.

Последняя надежда была на wine. Для начала решил попробовать на qip и winamp - не заработали. Обновив wine, удалось запустить winamp. Осталось теперь всего лишь установить и запустит IE с Outlook. Тут возникло столько траблов, что в двух словах и не опишешь. Пробовал так же wine-doors, wine-tools, обновлял последние версии из репозиториев, но за 2 дня так и не удалось установить IE6.

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

И вот перегрузившись опять под Windows, сижу и думаю, а стоит ли использовать Linux, если он такой не юзер-френдли :) На самом деле, желание у меня не пропало. Похоже нужно сначала много чего почитать. Ведь я помню время, когда настройка внутреннего модема в винде занимала неделю. Но является ли сложность линакса его достоинством, о чем так любят говорить нелюбители виндовса? Да, конечно хорошо понимать что ты делаеш, но если пониманием хотелось бы заняться в свободное время, а не вместо выполнения основной задачи.

Read More...

четверг, 20 декабря 2007 г.

Правда и wikipedia

Находясь под впечатлением от статьи Об истине и демократическом выборе – размышления о статье «Почему вы не можете цитировать Википедию в моем классе», решил написать свои размышения о википедии (размышление над размышлениями о статье :))

Вступление хотелось начать примерно так: "В отличие от ... энциклопедий, википедия не является носителем достоверных знаний". Но сразу застрял на месте, помеченном многоточием. Мне кажется, что слово "других" здесь не подходит, потому что не известно кто такие "другие", а значит неизвестно насколько они достоверны. Во-первых, оказывается, я даже не представляю, кто пишет энциклопедии после чего они становяться надежным источником. Во-вторых, со временем надежный источник может перестать быть надежным (сразу в голову приходят примеры про слонов, на которых держиться Земля, и про Солнце, которое вращается вокруг нее).

Для начала можно посмотреть самую известную (для меня) энциклопедия - большую советскую (БЭС):

К написанию статей, научному руководству и редактированию с самого начала привлекались крупнейшие ученые страны, и это стало обычной практикой на все дальнейшие годы. Первое издание БСЭ готовилось при непосредственном руководстве и участии Н. И. Бухарина и других видных партийных деятелей...
Тем не менее, авторам и редакторам энциклопедии удалось сосредоточить в ней поистине всё богатство знаний, накопленных человечеством за тысячелетия. Зачастую она была единственным источником адекватной информации о самых различных предметах, событиях и людях для советского человека, и - тем самым - превратилась в одно из ярких и многогранных, в своем роде «культовых», явлений советского времени...
Сведения, собранные в БСЭ, в подавляющем большинстве сохраняют свою актуальность и сегодня. То же, что «устарело», представляет собой непреходящий исторический интерес. Признанием информационной ценности БСЭ может служить тот факт, что в 1973-1983 годах известное англо-американское издательство «Macmillan» предприняло перевод и издание энциклопедии на английском языке ещё задолго до завершения оригинального издания на русском. Оба проекта осуществлялись параллельно, «английские» тома регулярно выходили вслед за «русскими»...
Крупнейшие ученые страны под централизованным управлением. Весомый аргумент, действительно трудно ставить под сомнение то, что они написали. Единственный неприятный момент - это устаревание информации. Имея бумажный вариант энциклопедии практически нереально отслеживать акутальность информации и новейшие знания в некоторой области. Получается, что за достоверность приходится платить актуальностью. Хотя если считать энциклопедию источником фундаментальных знаний, дающим базовые сведения о вопросе, то об актуальности можно и не вспоминать.

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

Что же с википедией? В упомянутой выше статье указывались два больших минуса: далеко не все статьи попадают в руки квалифицированных людей, которые могут со знанием дела исправить ошибки; не зависимо от квалификации, редакторы статьи могут придерживаться только своей точки зрения, не считаясь с другими.

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

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

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

чем больше писал, тем больше пропадало желание писать дальше

Read More...

среда, 19 декабря 2007 г.

Multiple X Screens

Наконец-то настроил поддержку двух мониторов под Linux'ом (openSuse 10.2) на рабочей машине. Все оказалось предельно просто - достаточно было прочитать доку с сайта nVidia Appendix G. Configuring TwinView и Appendix P. Configuring Multiple X Screens on One Card, а потом запустить nvidia-xconfig.

Read More...

вторник, 18 декабря 2007 г.

B1

Урааааааа! Сегодня получил американскую визу B1! Всего 3 часа возле посольства на морозе и минуты 2 на собеседование :)

Read More...

понедельник, 17 декабря 2007 г.

Интересная циата о теории и практике

In theory, theory and practice are the same. In practice, they are not.
Lawrence Peter Berra

Это было сказанно бейсболистом, но удивительно подходит не только для бейсбола, не зря я ее нашол в книге SOA in Practice.

Read More...

пятница, 14 декабря 2007 г.

SOA in Practice: The Art of Distributed System Design


Только что нашол и скачал книгу Nicolai M. Josuttis, "SOA in Practice: The Art of Distributed System Design (Theory in Practice)". Скачал отсюда. О чем эта книга - можно примерно понять из названия. Чем она меня привлекла? Во-первых, они довольно свежая (2007 год), во-вторых, автор этой книги является автором C++ Templates - The Complete Guide, которую мне не удалось заполучить в бумажном варианте. Да и вообще он известный C++-дядька. Незнаю насколько полезной окажется эта книга в освоении SOA, но покрайнемере картинки в ней выглядят красиво :) Помимо SOA в книге рассматриваются такие моменты как: BPM (business process management), ESB (enterprise service bus), Model-driven service development, Message exchange patterns и Web services.

Read More...

четверг, 13 декабря 2007 г.

boost::any изнутри

boost::any позволяет хранить переменные различных типов без явного указания типа, например так:

В том, что boost::any позволяет создавать вектор "зоопарка-элементов" нет ничего удивительного. Реализация этого класса предельна проста - он просто напросто хранит указатель на класс-холдер конкретного типа. Самое примечательное, что есть в boost::any - это шаблонный конструктор и шаблонный оператор присваивания:

Сразу же надо уточнить, что шаблонный конструктор и шаблонный оператор присваивания не могут быть конструктором копирования и оператором присваивания (их нужно определять отдельно). Эти шаблонные методы позволяют производить присваивание и инициализацию объекта класса boost::any без явного указания типа. Такой подход очень удобен и применяется в stl-контейнерах и различных smart-pointer'ах. Есть даже такая идеома - Coercion by Member Template.

Тип содержимого указывается только при получения значения из контейнера типа. Для этого boost предоставляет шаблонную функцию boost::any_cast, которая сранивает желаемый и реальный типы на основании std::type_info, и в зависимости от результата либо получает конкретное значение у холдера, используя static_cast, либо бросает исключение.

Вот так вот просто и красиво решается задача хранения значений различного типа в одном контейнере.

ЗЫ: забыл как пишется изнутри, вместе или раздельно... :)

Read More...

среда, 5 декабря 2007 г.

Мусор в голове: SOA, ERP, ESB, OSS, КЫГЫР, ЫЙЦУК...

Пару дней в свободное от работы время думал/читал над вопросом автоматизации бизнес процессов с реальной целью применить это на практике. Пока конкретной задачи небыло, просто нужна система, желательно состоящая из модулей, поведение подулей описывается сценарием и нужны какие-нибудь контракты для общения модулей, кроме этого клиенты - веб-браузеры, и звучало что-то на счет что бы как OSS/BSS...

OSS - это как бы направление куда копать ну и кроме того, это немного касается моей текущей работы. Немного погуглив я получил целую кучу подобных аббревиатур: SOA, BPM, ESB, ERP, etc. Почитав об этом всем, решил немного разгребти кучу мусора, которая сейчас образовалась в голове и немного структурировать ее. Поэтому постараюсь описать то, что я понял. Все немного прояснилось, после прочтения статьи Just One More Article About SOA and BPM.

Зачем я хочу разобраться в нагромождении этих аббревиатур? Помимо простого любопытства, я вижу 3 причины:


  • Во-первых, понять, к чему были сказанны слова об OSS/BSS.
  • Во-вторых, я понятия не имею о бизнес процессах, следовательно, нужно узнать, что уже сделанно в этом направлении, какие архитектуры и стандарты используются и есть ли смысл писать все с нуля.
  • Третья причина вытекает из второй. Несомненно в области автоматизации бизнес процессов сделанно уже немало. Поэтому нужно как можно безболезненнее начать "сотрудничать" с уже готовыми решениями, что бы не получилась еще одна системка в большом "зоопарке" систем ((с) from Just One More Article About SOA and BPM).

OSS/BSS
Системы поддержки операционных процессов (OSS) наиболее часто упоминаются в контексте телекоммуникационных систем. Они предназначены для управления ресурсами провайдеров телекоммуникационных сервисов (например, мобильные операторы, интернет-провайдеры, телефонные компании) и их сетями. Но, так как другие отрасли тоже нуждаются в подобных системах, OSS постепенно перешли в разряд подсистемм OSS/BSS, где BSS (системы поддержки бизнеса) решает бизнес задачи, такие как получение ордеров, обработка счетов, платежей и т.д. Дополнительно почитать можно здесь и здесь.

Сразу же возникает вопрос зачем это надо? В моем понимании, наличие OSS/BSS вводит модель построения систем в конкретной отрасли, что позволяет более успешно интегрировать системы, расширять и поддерживать их, а так же позволяет использовать заказчику и производителю один и тот же язык общения. Для телекомуникаций такими моделями являются TNM (Telecommunications Management Network) и, более новая модель, разрабатываемая TeleManagement Forum, TOM (Telecoms Operations Map) или eTOM (enhanced Telecom Operations Map). Есть еще программа TeleManagement Forum, направленная на помощь провайдерам телекоммуникационных сервисов в управлении их бизнесом и называемая NGOSS.

это пока все. получилось не очень структурированно и не очень понятно - мусор пока остается мусором. но мне кажется, что OSS - это все таки не совсем то, что мне нужно. не понятно как это использовать практически и в каких масштабах. следующая на очереди SOA и ERP. вот некоторые ссылки по теме:

SOA и Web-сервисы от IBM
Сервис-ориентированная архитектура
Корпоративная сервисная шина - "бюджетный" подход к решению задач интеграции
Бизнес-процессы и XML
Концепция ESB в отрасли телекоммуникаций
С высоты птичьего полета /блог Сергея Орлика/

Read More...

воскресенье, 2 декабря 2007 г.

Концерт Therion в Киеве

Свое 20-ти летие Therion решил отметить катанием по миру с песнями и начали они с Киева. Программа называлась Adulruna Rediviva - 20 Year Celebration Tour и должна была включать песни из альбома Theli и более поздних.

Концерт начался практически без опоздания (минут 30-40 - не большое опоздание), причем много людей ожидало, что сначала будет разогрев и не спешили в зал. Услышав незнакомые песни с незнакомым вокалом я тоже не спешил заходить, пока они не заиграли Schwarzalbenheim. Вот список того, что они играли (взято отсюда Therion снова в Киеве!):

Der Mitternachtslowe
Schwarzalbenheim
Blood Of kingu
The Falling Stone
Arrow from the Sun
Deggial
The Wine Of Aluqah
The Perrenial Sophia
Son Of The Sun
The Khlysti Evangelist
Son of the Staves Of Time
Tuna 1613
Drum Solo
Muspelheim
The Rise Of Sodom and Gomorrah
Ginnungagap
Lemuria
Cults Of The Shadow
To Mega Therion
Nightside of Eden
Grand Finale / Postludium
Thor (Manowar cover)

Как видно, старых песен было не так уж много. Песни из новых альбомов мне не очень понравились.

Всего на сцене было 8 человек: 3 гитариста и 4 вокалиста (2 тетеньки и 2 дяденьки). Тетеньки пели обалденно и вели себя довольно артистично. А вот с дяденьками было похуже, пели они тоже суперски, но один, как по мне, был похож на престарелого вампира с нарисованной бородой и зализанными волосами, второй выглядел довольно эффектно, но постоянно изображал различными предметами (микрофоном, розой и флагом) свой детородный орган :)) Неплохо было бы видеть на сцене какого ни будь клавишника, который бы жал педали на синтезаторе и вообще под конец у меня создалось впечатление что вместо гитаристов играет фанера, по крайне мере когда исполнялась Grand Finale / Postludium.

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

Качество звука мне не очень понравилось - периодически было плохо слышно вокалистов либо наоборот - гитаристов.

Ну а вообще ребята выкладывались по полной и зал встречал дружным ревом каждую песню. Положительных впечатлений осталась масса. Мне больше всего понравилось, что они сыграли кавер Manowar'a Thor, а больше всего не понравилось то, что охранники не давали никому фотографировать и снимать выступление.

Read More...