среда, 31 декабря 2008 г.

среда, 24 декабря 2008 г.

Всегда ли чем быстрее тем лучше?

В данном тексте мы поговорим о том: всегда ли быстрее сданный проект лучше чем проект сданный в изначально оговоренный срок.

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

Кроме того, решение, что проект может быть закончен быстрее на более или менее раннем этапе означает, что у вас больше нет этого времени для дальнейшего улучшения проекта, особенно если новые сроки были оглашены для директоров. Хотя данное описание кажется элементраным и естественным: «решили, что надо меньше времени» – «меньше времени имеем» оно не столь очевидно для многих из-за простоты урезания сроков. Многим кажется, что убавить сроки разработки и увеличить – всё это одинаково легко. Как правило убавить легко, так как с радостью воспринимается менаджементом, а вот прибавить воспринимается с недовольством, так что «что с возу упало, то пропало».

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

Более того, самым опасным здесь является тот факт, что в результате разнообразные надстройки/подпорки в коде будут использованы чтобы решить проблему. Как правило такие решение принимаются с лёгкостью ибо все убеждены – исправим в следующей версии. Реальность такова, что в следующей версии будут более высокоприоритетные задачи – «ибо тут и так рабатоет, да и дополнительное тестирование понадобиться – так что давайте оставим». Особенно если никто из клиентов не жалуется на данный участок функциональности. В результате производства всех этих подпорок, вы получите код который будет очень и очень сложно продолжать и будете строить «workaround» (обходной код) вокруг существующего обходного кода и так до бесконечности, пока разрабочики не плюнут и не уйдут в другую фирму (чтобы там столкнуться с таким же кодом :) ). Поэтому ни в коем случае не полагайтесь на «потом исправим» - постарайтесь сделать нормально сразу, а чтобы было достаточно времени, подумайте трижды урезая свои ресурсы.

И естественно учитывайте, что чем больше вы работаете над функциональностью, чем лучше вы видите возможности сделать всё «идеально», и соответственно оставьте себе время на переработку кода под конец проекта.

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

Наконец, давайте рассмотрим неопределённости, которые сушествуют в льбом проекте. Даже для методов с коротким циклом, таких как «agile» или просто итеративных, вероятно, что приоритеты внутри проекта будут переопределены добавляя или убирая ту или иную функциональность.

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

среда, 17 декабря 2008 г.

H-индекс для вычисления производительности учёного

Продолжая тему о индексировании, ссылках и эффективности работы учёного.

В билиотечном деле известен такой индекс как h-index для более эффективного измерения вклада человека в науку нежели просто количество работ или ссылок. Данный метод является комбинораванной мерой включая как производительность (количество статей) так и их влияние (количество ссылок) учёного. Он расчитывается как: количество статей каждая из которых имеет ссылок не менее этого количества статей. Иными словами, например, чтобы получить индекс 5 у человека должно быть не менее 5 статей на каждую из которых есть не менее 5 ссылок. Индексу 6 будет соответствовать случай, когда имеется не менее 6 статей имеющих (каждая) по 6 или более ссылок и так далее.

Изобретателем данного индекса явлается Jorge E. Hirsch. Он же определил что
1. данный индекс хорошо покаывает вероятность получение Нобелевской премии
2. определяет следующую градацию - если у кого-то имеется индекс 10-12, то университет должен серьёзно рассмотреть его кандидатуру к принятию на постоянную работу. Если индекс 18, то уровень человека соответсвует полному профессорскому званию, а с 45 он может рассчитывать на членство в Американской академии наук (т.е. быть академиком).

Положительные и отричательные стороны данного метода вы можете сами прочитать в Wikipedia

среда, 10 декабря 2008 г.

Само-архивирование

Одной из оценок эффективности деятельности учёного является количество ссылок которые он получает от других учёных.

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

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

Для разрешения данного конфликта появилось 2 метода. Во первых работы могут быть опубликованы через специальные, публичные журналы, которые всё ещё осуществляют процесс рецензирования. Их не так много, но они есть и мы можем сравнить их с програмным обеспечением с открытым кодом.

Ответом традиционных издательств явилось появление второго, альтернативного метода под названием само-архивирование. На сегодня большинство издательств в контракт по передаче прав на работу включают пункт разрешающий само-архивирование. Итак, что же это такое. Wikipediа даёт следующее определение - само-архивирование это возможность разместить копию работы в Интернете для открытого доступа. Для этого может быть исползован либо сайт автора (если он владеет навыками HTML) либо сайт института либо специализированные "открытые архивы".

Любой автор ОБЯЗАН использовать данную возможность для увеличения заметности своей работы и как следствия увеличения вероятности использования данной работы другими авторами для дальнейшего развития и как следствие зарабатывая таким образом ссылки на свои работы. В конечном итоге работа пишется не для себя, а для всего мира!

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

среда, 3 декабря 2008 г.

Сжатие; Взаимодействие vs Сотрудничество

Продолжая читать дипломную работу"Towards an Integrated Approach to Collaborative Web Usage" нашёл ещё два интересных описания/определения.

Сжатие
Функция которая позволит работать с поделементами длинного документа (и кроме того определить какие из них представляют для него наибольший интерес) – при сжатии внутри документа ищутся секции и под-секции ориентируясь на соответствующие тэги (H1, H2, итд.). Затем у пользователю появляется возможность свернуть или развернуть эти секции (collapse / expand)

Взаимодействие vs Сотрудничество / Collaboration vs Cooperation
Сотрудничество (collaboration) процесс при котором несколько людей работают для достижения общей цели. Например группа учённых работающих в одной отрасли и обменивающаяся результатами исследований. Хотя этот процесс некоторые называют взаимодействием отношение между вовлечёнными сторонами значительно более сильное. К примеру взаимодействовать могут конкуренты тогда как при сотрудничестве уровень доверия и обмена информацией значительно выше. Кроме того при сотрудничество появляется «команда» ([Maxwell, Beyond Cooperation]). Поэтому два конкурента могут взаимодействовать, например разрабатывая новый стандард который необходим им обоим, но это не будет означать сотрудничества.

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

пятница, 28 ноября 2008 г.

Классификацией веб-инструментов

Столкнулся с интересной классификацией веб-инструментов читая дипломную работу "Towards an Integrated Approach to Collaborative Web Usage". Изначально классификация описана в "Discovering User Access Patterns on the World-Wide Web". Привожу её ниже с незначительными модификациями.

Уровень 0
Система которая доставляет документы в соответствии с указанным адресом – пользователь обязан задать URI программе, чтобы она доставила документ с данного адреса. Общее название програм находящихся на данном уровне – веб браузеры ("Web browser"). В настоящее время большинство веб браузеров имеют дополнительные функции – например предоставляют механизмы закладок, возможность проследить историю посещений страниц по дням и так далее.

Уровень 1
Инструменты данного уровня предлагают возможность инициируемого пользователем поиска для нохождения требуемых веб страниц. Примером могут служить поисковые машины. Современные браузеры как правило содержат начальный интерфейс поисковых машин как элемент интегрированный в оболочку.

Уровень 2
Програмные системы которые сохраняют информацию о пользователе (user profile) и извещают его если новая информация найдена. Информация пользователя в системах данного уровня как правило статична: пользователь вводит информацию о своих интересах (как правило используя ключевые слова) и система ищет документы (информацию) основываясь на соответствии её данным параметрам (как правило аналогично инструментам первого уровня). Одним из примеров инструмента данного уровня является Google alerts.

Уровень 3
Более динамичный и дедуктивный подход перемещает инструмент на третий уровень. Если инструменты второго уровня требуют предварительного ввода параметров, то инструменты третьего уровня должны уметь определять их анализирую поведение пользователя. Прежде всего такая способность необходима для широкой аудитории, когда пользователи не способны сформулировать свои интересы в виде ключевых слов, потому, что их интересы меняются в зависимости от того чем они занимаются в данный момент или эволюционируют со временем. Одним из примеров инструмента данного уровня может являтся подсистемы существующие в Amazon или Google предлагающие пользователям новые ссылки / продукты базируясь на предыдущих поисках или покупках.

Уровень 4
Инструменты данной категории должны уметь обучаться на основании как поведения пользователя так и поведения/архитектуры источников информации.

пятница, 21 ноября 2008 г.

Почему клиенты иногда пропадают как будто их и небыло?

Безусловно я не являюсь специалистоом по маркетингу, но тем не менее думаю, что часто встречающееся высказывани - “клиенты дадут знать, что им не нравится” часто оказывается всего лишь мифом.

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

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

Я думая, что вы не настолько юны, чтобы это была ваша первая машина. НО, возможно в процессе выбора вы решили сменить марку машины, а не только модель. Опять же, вернётсь ли вы в салон проиводителю марки машину которую вы использовали до этого, чтобы объяснить, чем она вас больше не устраивает?
Нет

Если поставщик позвонит вам и всётаки спросит, какую машину вы выбрали и почему не его – дадите ли вы правдивый ответ на его вопросы? Скорее всего нет – вместо правдивого вы дадите самый короткий ответ и скорее всего они не совпадут.

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

Более того, потребители очень редко извещают производителя о том, что их не устраивает после покупки если они не ожидают, что производитель изменит эти свойства товара. Подумайте например о себе – вы когда нибудь посылали своё мнение о товарах таким например фирмам как SONY, HP, AEG, Microsoft итд после того как вы поняли, что в их продуктах нет вообще определённых, нужных вам, функций или если интерфейс неудобен (с вашей точки зрения)?

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

пятница, 14 ноября 2008 г.

Оценка эффективности деятельности учёного

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

Как ранее упоминалось, одной из возможностей, является сравнение количества опубликованных статей.
Если мы говорим, не о докторантах, а о пост-док позициях, то здесь иногда, для увеличения вероятности включения в список только действительно научных статей, принято брать в расчёт только те статьи которые появились
1. В уважаемых издательствах (для computer science это Springer или IEEE Computer Society)
2. Попали в индекс баз данных используемых как стандард и имеющих определённый стандард для включения (для computer science это ISI Web of Science или совсем на худой конец открытая DBLP).

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

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

Количество ссылок показывает качество статей. Иногда говорят количество статей насколько он(а) может влияеть на даннуя область науки. Такой особенный вид голосования, когда остальные голосуют ссылаясь на статьи другого человека.


Postscriptum: редко делается, но теоретическо необходимо - как в количестве ссылок так и количестве статей учитывать количество соавторов. Т.е если в статье 3 автора, то каждому идёт в зачёт только 1/3 статьи. Кроме того правильно было бы при подсчёте ссылок исключить самоцитирование любым из соавторов.

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

Доплнительно к рассматрению эффективность за все годы (общее значение учёного) принято анализировать те же параметры за последние 5 лет (насколько человек активенный в данный момент)

четверг, 6 ноября 2008 г.

2008: Промежуточные результаты предмета "Сетевые приложения I".

Промежуточные результаты предмета "Сетевые приложения I".

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

Как и всегда работу сдали не более 60% студентов. Учитывая, что мы имеем дело уже со вторым курсом, меня это поражает в очередной раз - зачем декларировать предмет и его игнорировать?

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

1. Выбрать тему
2. Проанализировать несколько источников информации по данной теме
3. Написать отчёт о том, что вы поняли (персональное изложение изученного материала)

Многие задачу поняли, некоторые справились с ней хорошо - есть несколько действительно интересных работ, часть решила справиться методом копирования. Причём многие просто скопировали русский текст, тогда как некоторые хотя бы перевели первоисточник с одного языка на другой.

В результате проверки появилась таблица стандартных ответов. Один из них:

1. Не соответствует требованию по цитированию

Означает, что вы решили, что вы самый хитрый / хитрая и скопиравали текст из интернета, может быть заменив несколько слов в том или ином месте предложени, и теперь выдаёте работу за свою. Требования к работе однозначно говорят о том, что работа должна быть плодом вашего, а не чужого творчества. Объём цитирования не должен превышать 1% и разрешён только для цитирования фраз которые неизбежно должны быть приведены в оригинале.

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


Кроме того что надо написать работу, от студентов требовалось следовать определённому шаблону. Зачем это сделано? Во первых требовалось стандартизировать каким то образом работы, чтобы мовно было установить общий для всех критерий размера работы (минимальная и максимальная длина).

Во вторых, попытаться научить студентов следовать определённым правилам написания работ принятым в научной среде нашей области (информационные технологии).

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

Таким образом следование шаблону позволяет
1. Стандартизировать работы
2. Попытаться научить писать работы в формате акцептируемом на конференциях

Как и по первому пункту о самостоятельности работы, около 20% не осознали эту задачу, а потому дополнительным стандартным ответом был:


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


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


Кроме того выполнение требований шаблона является своебразной декларацией студента, что работа выполнена самостоятельно ибо после каждой не своей фразы я просил ставить [x], где x - номер источника из списка в конце работы.

Microsoft & gadgets

Для тех кто знает английский - мои рекомендации прочитать данный пост: Is Microsoft serious about gadgets? пытаюшийся показать стратегические решения MS о Vista Sidebar

среда, 5 ноября 2008 г.

Производительности JavaScript

Недавно в очереди моих задач появилась задача измерения производительности JavaScript. Реальная задача была сформулирована как «найти оптимальный путь разработки нового приложения, чтобы не сильно ограничить область применения и не иметь существенных проблем с производительностью (скоростью / объёмом данных, которые приложение сможет обработать)». Как правило разрабатывая определённые приложения у вас есть выбор – сделать программное обеспечение либо с «desktop» либо с web интерфейсом.


Оговоримся, что естественно, такой выбор присутствует не всегда. Если вам необходимо работать с широкой аудиторией, то единственным вариантом часто оказывается web интерфейс. Если мы имеем дело с локальным приложением или когда мы контролируем и можем хорошо предсказать среду применения нашего программного обеспечения (например имеем дело с конкретной фирмой) то часто разрабатывается desktop (или так называемое Windows) приложение - прежде всего из-за возможности сделать его быстрее, и больших возможностей для создания интерфейса с точки зрения набора элементов ввода и вывода данных (controls).

Поскольку наши знания и предыдущий опыт в основном связан с разаработкой приложений на базе Microsoft технологий и имея задачу написать приложение с объёмным интерфейсом ввода данных (как например MS Excel или Google spreadsheets), мы решили сравнить следующие технологии: JavaScript (Web), Visual Studio 2005 C# / .Net 2.0 и Visual Basic 6.0 (разработка «desktop» приложений).


Первым шагом был поиск в Интернете того, что было уже проделано, чтобы не изобретать велосипед. В течении этого шага я наткнулся на эту станицу позволяющую измерить производительность JavaScript-а на своём компьютере, которая достаточно просто сделано – в принципе для каждого из нас не составит огромного труда создать тоже самое.

Сделав нечто подобное в VB6 и VS2005/C# я получил следующие результаты сравнивая деление цифр integer типа:


- JavaScript в 5 раз медленее чем VB6

- JavaScript в 100 times раз медленее чем VS2005/C#


Результаты выглядят достаточно логично так как JavaScript является интерпретируемым языком (не компилируется в executable) и поэтому существенно медленее.

воскресенье, 2 ноября 2008 г.

Как закрыть под-окно (popup window) открытое createPopup

Предположим у нас имеется задача создать выпадающее меню и для этого мы испульзуем javascript функцию createPopup. Далее, мы хотели бы построить меню наподобии MS Excel 2007, где у нас имеется возможность выбрать несколько (!) вариантов прежде чем применить данный выбор - как правило это означает, что имеется кнопка внутри меню, при нажатии на которую выбор (например фильтрация по выбранным элементам) запускается.

Традиционный метод скрыть под-окно соданное createPopup это кликнуть на пространство основного документа в любом месте вне под-окна. Примерно тоже самое получится если из под-окна вы запустите переход на новый документ (адрес) в основном окне. К сожалению ни один из перечисленных вариантов, не соответствует поставленной в начале задаче. Другой вариант - close() метод вызванный из под-окна, но он сгенерирует диалог с вопросом "Действительно ли вы хотите закрыть данный документ". Тоже не совсем подходющий метод для закрытия меню.

Комментарий: тривиальный поиск через поисковые машины к сожалению не даёт ответа на поставленный вопрос - 95% сайтов выданных как результат поиска описывают методы работы с под окнами открытыми используя window.open

В принципе, ниже приведённый код должен позволить выполнить поставленную задачу.

В данном примере меню появляется при нажатии мышкой (клик) на ячейку таблицы в первом ряды/первый столбец (адресс 0 / 0 ). Меню содержит список и кнопку. Меню создаётся вызовом функции test: которая вызывается в следующем коде: onclick="test(closeAction)". При вызове в функцию передаётся параметром имя функции которая будет закрывать под-окно.

Функция test делает следующее:
1. Генерирует под-окно используя createPopup
2. Устанавливает функцию закрытия под-окна как метод вызываемый при нажатии кнопки в под-окне.
3. Сохраняет ссылку на под-окно в глобальной переменной.

Функция закрытия под-окна использует данную глобальную переменную и вызывает hide().


<html>
<script language="javascript">
var mpopup

function test(clickEv)
{
var wnd= window.createPopup();
wnd.document.body.style.border="solid black 1px";
wnd.document.body.innerHTML="<select><option>a<option>b</select>
<br/><input id="'a1'" type="\">";
wnd.document.getElementById("a1").attachEvent("onclick",clickEv);

wnd.show(150,150,200,50,document.body);
mpopup=wnd;
}

function closeAction()
{
mpopup.hide()
}
</script>

<body>
<table>
<tr><th onclick="test(closeAction)">1kasdkjshd</th>
<th>1kasdkjshd</th><th>1kasdkjshd</th><th>1kasdkjshd</th>
<th>1kasdkjshd</th><th>1kasdkjshd</th><th>1kasdkjshd</th>
</tr><tr>
<td>1kasdkjshd</td><td>1kasdkjshd</td><td>1kasdkjshd</td>
<td>1kasdkjshd</td><td>1kasdkjshd</td><td>1kasdkjshd</td>
</tr><tr>
<td>1kasdkjshd</td><td>1kasdkjshd</td><td>1kasdkjshd</td>
<td>1kasdkjshd</td><td>1kasdkjshd</td><td>1kasdkjshd</td>
</tr></table>
</body> </html>


PS: Следующая конструкция позволит вам получить доступ к объектам внутри основного документа (окна) из под-окна: parent.document.
getElementById('xxx')
,
где xxx - id объекта к которому вы хотите получить доступ.

пятница, 24 октября 2008 г.

Введение в вездесущность

Вездесущность: именно такой термин описывает одно из самых популярных направлении в програмном обеспечеии на сегоднящний день: ubiquitous systems.

Wikipedia даёт нам следующее определение: модель общение человека с компьютером при котором процесс обработки информации интегрирован в многочисленные предметы окружающие нас и выходит за рамки превычного нам компьютера. Является следующим эволюционным этап развития вычислительной техники - "post-desktop" [при котором человек соответсвенно непрерывно использовал свой локальный компьютер для вычисления или общения через Интернет итд]. Самы простым примером конечно было бы описание системы - компьютер, мобильныя телефон, иные подобные (синхронизируемые) устройства ...

НО ...

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

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

PS: Наиболее частыми терминами встречающимися с вездесущностью являются Context-aware системы и RFID.

суббота, 18 октября 2008 г.

Некоторые проблемы поисковых систем

С ростом популярности Интернета, глобализацией мира и увеличением население (и как следствие рост как пользователей так и поставщиков информации через Интернет) количество информации в Интернете растёт экспоненциально. Как следствие, проблема поиска информации выполняемая поисковыми системами типа Google всё время усложняется. Очевидной проблема является постоянно увеличивающаяся нагрузка на оборудование с ростом объёма хранимой информации, а также непрерывно снижающаяся перидоичности ре-индексации ресурсов. Однако проблем увеличения объёма затрагивает не только поставщика услуги поиска информации, но отражается и на потребителях - количество ссылок на многие, даже специфические запросы столь велико, что обработать результат не представляется возможным.

Если результат выполнения поиска помещяется на 100 страницах, то он имеет столько же смысла как и 20 страничный ответ.

Поэтому одной из текущих задач поисковых систем являетя не только поиск информации, но и её визуализация и классификация.

Исследования показывают, что 81% пользователей не будут листать в поисках информации далее 3-х листов и либо откажутся от поиска либо переформулируют свой запрос.
Поскольку сегодня многие пользуются экранами с достаточно большим разрешением, то неиспользованное пространство можно было бы использовать для алгоритмов искуственного интеллекта, предлагающие там возможные варианты переформулирования запроса основываясь на
1. Фильтрации по типам найденных документов: HTML, PDF, DOC etc
2. Фильтрации на основе ключевых слов наиболее часто употребляемых вместе с терминами используемыми в текущем поиске
3. Логическое продолжение и дополнение терминов поиска основанное на логике предыдущих запросов.

Следует также упомянуть попытки визуализации выполнения запросов основанные за 3D представлении результата по
1. Темам
2. Подобию документов
3. Временные линии (наподобии организации фотографий по дате используемой во многих современных программах / когда фотографии располагаются вдоль оси времени или по оси времени показана гистограмма построенная на основе количества фото сделанных в каждый элементарный промежуток времени данной временной оси).

вторник, 14 октября 2008 г.

Само-организующиеся команды. Введение.

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

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

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

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

четверг, 9 октября 2008 г.

Программное обеспечение для автомобиля

Американская компания Ford будет включать в свои модели новую базовую опцию – система MyKey позволит родителям юных водителей самим задавать скоростные настройки автомобиля, чтобы подросток, получивший права, не мог превысить скорость.

Начиная со следующего года Ford запустит компанию по оборудованию своих моделей базовой опцией под названием MyKey. Нововведение позволит родителям самостоятельно выставлять ограничения скорости на автомобилях, на которых ездят молодые водители (а также если вы даёте свою машину другу).

Система представляет собой обыкновенный ключ зажигания со встроеным микрочипом, с помощью которого можно будет ограничивать скорость, выставлять максимально допустимую громкость магнитолы, каждую минуту будет включать звуковой сигнал, если . водитель не пристегнется и не позволить отключить системы безопасни езды (stability, traction control). Такое предупреждение есть и у других машин, не оборудованных данной системой, однако оно выключается через 5 минут, а в автомобилях с MyKey сигнал будет звучать бесконечно.
Английская версия пресс-релиза
Введние такой опции обусловлено тем, что ежегодно на дорогах в США гибнет около 5 тыс. юных водителей. Кроме того, исследователи Американского института дорожной безопасности (IIHS) установили, что молодые люди в возрасте 17–18 лет почти в 10 раз чаще попадают в аварии, нежели взрослые в возрасте от 30 до 59 лет. Кроме того, в IIHS утверждают, что гибель в авариях – одна из наиболее распространенных причин подростковой смертности.

Тенденции развития систем контроля начинающих водителей родителями набирают обороты по всему миру. Так, в марте 2008 года британская компания Green Road разработала специальное устройство размером не больше обычного ноутбука, которое устанавливается в машину и позволяет родителям следить, насколько аккуратно и безопасно ездят их дети, недавно получившие водительское удостоверение. Приспособление способно распознавать более 100 различных показателей при езде на автомобиле, таких как ускорение при обгоне, интенсивность торможения, скорость при прохождении поворотов. Кроме того, оно учитывает, сколько раз юный водитель проехал на запрещающий сигнал светофора. Все эти данные, а также и многие другие показатели публикуются в интернете на специальном сайте компании. В салон же автомобиля выведены три индикатора различного цвета. Если горит зеленая лампочка, то это значит, что водитель ездит аккуратно и правила не нарушает, желтый цвет предупреждает о том, что следует ездить аккуратнее. Ну а красный свет говорит о крайне опасной и неосторожной езде.

вторник, 7 октября 2008 г.

Методы тестирования

"Evaluating testing methods by delivered reliability" - статья которая даёт представление о некоторых методах тестирования с несколько иной точки зрения нежели широко расспростарнённая классическая методика.

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

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

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

Можно сказать, что поиск вариант "а" является активным способом поиска ошибок, а вариант "б" пассивным, ибо при оперативном тестировании просто запускаются реальные сценарии (либо автоматизированно, либо тестер следует им вручную) и мы просто ожидаем появления ошибок.

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

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

воскресенье, 21 сентября 2008 г.

Эстония - Трудовой контракт и запрет на работу на конкурентов

Данный пост касается трудового законодательства Эстонской республики и касается некоторых аспектов трудового договора.

Данный текст небыл опробирован в суде и основывается на информации полученной от других лиц.

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

Сегодня можно легко найти шаблоны Договоров, которые вообщем-то одинаковые. На первый взгляд. На второй взгляд вы заметите, что они отличаются пунктом о работе на конкурентов.

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

Модифицированный же включает в себя пункт запрещающий работать на конкурентов и после окончания контракта в течении определённого времени (как правило в течении года).

обратите внимание, что помимо этого в договоре всегда имеется пункт о неразглашении коммерческих секретов.

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

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

Давайте разберёмся в чём тут дело. Закон говорит, что ни один законодательный акт (тем более отношения регулируемые трудовым договором) не могут иметь силу выше, чем основной закон. Основной же закон регулирует базовые свободы человека.

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

Основной закон же содержит право на труд и самореализацию человека. Поэтому работодатель не может просто так запретить работать человеку (или работать в определённой отрасли где человек самореализаются). Единственно - можно догориться о том что человек не будет работать за плату на иные конкурирующие структуры в течении какого-то времени (максимум год чтобы человек не потерял совсем квалификацию) если фирма будет платить разумную компенсацию за это (тем самым как бы предоставляя человеку отпуск за счёт фирмы). "Разумнаю" компенсация определяется либо договором либо судом (если дойдёт до этого), но ни один суд не акцептирует сумму менее чем примерно 70% от зарплаты которую человек получал по конракту до его окончания.

Таким образом пункт запрета работы на конкурентов является как правило незаконным если компенсация не оговорена заранее или она недостаточна (ибо если вы даже после окончания договора будете работать на конкурента и фирма подаст на вас в суд, то суд примет сторону работника).

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

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


Кстати всё выше перечисленное уже нашло отражение в проекте нового закона о труде.

воскресенье, 14 сентября 2008 г.

Церемония защиты докторской работы в Голландии

Мне всегда было интересно узнать как защита докторской работы (да и собственно весь процесс обучения) проходит в других странах и университетах. Сегодня я наткнулся на интересный пост о церемонии защиты в Голландии (написанным на английском языке). Традиционно ниже приводится перевод данного текста:

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

Защитник и paranimf-ы находятся во фраках, Pedel и профессора в академическом одеянии, прочие оппоненты в костюмах. В качестве зрителей присустсвуют друзья защитника и его близкие.

Церемония открывается с короткого обзора работы который делает докторант для аудитории с подиума (кстати есть страны в которых обязанность по защите докторской работы возложена на руководителю, а не на докторанта). Затем, следуя за Pedel в часовню входят оппоненты и руководитель, следуют через весь зал и занимают места на хорах. В течение сорока пяти минут оппоненты по очереди, задают каверзные вопросы защищающемуся о его работе. В конце Pedel снова входит в часовню, проходит до подиума, поворачивается к аудитории и стукнув посохом возвещает - "Hora Est" (время истекло).

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

Церемония заканчивается поздравлениями, во время которой присутствующие по очереди подходят к докторанту (а теперь уже доктору наук), и традитсионным праздничным ужином.

вторник, 26 августа 2008 г.

Удержание клиента

Joel написал интересную статью в которой описывает и даёт интерпретацию одного из ново-введений в бизнесе - знающие английский прочитают полную версию, для остальных краткое содержание:

Типичной картиной открывающейся перед поситителями одного из сетей кафe является достаточно длинная очередь к кассе по утрам. Однажды утром, посетители обнаружили специального представителя компнии прогуливающегося вдоль очереди, собирающего заказы у тех кто только что встал в очередь и передающего их по радиотелефону на кассу (где помимо расчёта происходит собственно комплектация заказа на вынос).

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

По утверждению автора статьи единственной причиной является предотвращение покидания клинтами очереди (слишком длинной) и собственно магазина. Многие разместившие заказ считают своим этическим долгом дождаться прохождения очереди и получения своего заказа уже не зависимо от того насколько долго придётся ждать.

В качестве послесловия предлагается задуматься - где ещё подобное удержание клиента можно было бы применить в реальной жизни и собственно обратить себе на пользу.

пятница, 15 августа 2008 г.

Как заменить ряд (tr) в таблице используя javascript без использования innerHTML в IE

В интернет браузере IE от MS существует хорошо известное ограничение на работу с таблицами - вы не можете заменить какой-либо ряд таблицы используя innerHTML. Данное ограничение известно только благодаря тому, что многие разработчики на javascript сталкивались с ним и в последствии вынуждены были менять архитектуру системы, чтобы обойти это ограничение. Не обошло это и нас.

К счастью недавно я наткнулся на пост который объясняет природу данного ограничения, и, что наибоее важно, предлагает как его обойти методами javascript!!
Пользуясь случаем :) выразим признательность автору данного поста - такие бриллианты не часто встречаются среди постов.

Ниже приводиться небольшой пример демонстрирующий данный принцип .. для того чтобы увидеть как он работает достаточно зайти на любую страницу тестового пространства от w3schools.com, вставить код приведённый ниже и запустить его)


<head>
<script type="text/javascript">
function change()
{
var temp=document.getElementById('3')
temp.innerHTML="<table><tr id='8'><td>qqq2</td><td>3qqq</td></tr></table>"

var rrr=document.getElementById('8')
var tb = document.getElementById('2');

tb.parentNode.replaceChild(rrr, tb);

}

function add()
{
var temp=document.getElementById('3')
temp.innerHTML="<table><tr id='8'><td>qqq2</td><td>3qqq</td></tr></table>"

var rrr=document.getElementById('8')
var tb = document.getElementById('2');

tb.parentNode.insertBefore(rrr, tb);
}
</script>
</head>

<body>
Choose one or another operation (cannot use both in this demo) <br /><input type="button" onclick="add()" value="Add">
<input type="button" onclick="change()" value="Change">
<table id="22" border=1>
<tr id="1"><td>2</td><td>3</td></tr>
<tr id="2"><td>2</td><td>3</td></tr>
</table>

<span id="3" style='visibility:hidden'></span>

</body>

</html>


Обратите внимание, что здесь нет необходимости знать какому элементу принадлежит ряд который будет заменён или искать какой порядковый номер имеет данный ряд - достаточно иметь ссылку на сам элемент (который будет замещён) и по нему берётся элемент которому он принадлежит tb.parentNode и он же используется в операции замены (replaceChild) вторым параметром (элемент который надо заменить).

пятница, 1 августа 2008 г.

Доверие к социальной политике государства

"Центральная больница расширит платный прием: С 1 августа Ида-Таллиннская Центральная больница расширит прием на платные услуги, поскольку спрос пациентов и потенциал больницы превышает объемы заключенного с Больничной кассой договора...."

No comments.


И ещё одна новость:
Государство не согласилось платить налог с оборота за операционный стол, приобретенный на собранные во время акции «Jõulutunnel» пожертвования, поэтому Фонду поддержки Таллиннской детской больницы пришлось собирать дополнительные средства для его покупки.

понедельник, 21 июля 2008 г.

Конференция: окружение

Любая конференция это не абстрактное сборище небритых авторов сидящих вокруг костра и делящихся своими идеями, а организованное и уважаемое собрание. Ниже приводиться описание того, что вам встретиться на конференции на примере ICEIS'08.

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

1. Известить организаторов о своём присутствии
- чтобы они знали сколько докладов ожидать в той или иной сессии (вернее сколько авторов отсутствует)
- чтобы участник мог сказать, что требование "участия в конференции" им выполнено.

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

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

Советуется проверить на стенде как время вашей презентации, так и место и убедиться, что вы знаете как туда добраться (каким лифтом и с какими пересадками).

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

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

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

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

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

Конференция: постеры

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

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

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

Многие авторы представляют классичекие постеры, какими они и должны быть - лист формата А1 или А2 с представлением своей работы. Менее активные просто представляют на данном листе слайды, которые они показали бы, если бы им дали время в виде презентатции. Совсем ленивые распечатывают свои статьи на стандартных листах А4 и вывешивают их на стенде.

Некоторыe примеры с конференции ICEIS'08.

понедельник, 14 июля 2008 г.

Таллиннский ботанический сад

Выдался замечательный день - совпали возможность отвлечься от работы, яркость дня и место куда можно было бы пойти погулять - в данном случае таким местом оказался Таллиннский ботанический сад.


среда, 9 июля 2008 г.

Архитектура систем: мозг человека

Мозг гонщика похож на мозг динозавра

... построили математическую модель принятия решений человеческим мозгом. Работает она следующим образом. Сигнал из внешнего мира поступает через рецепторы в таламус, где происходит мгновенный примитивный анализ опасности положения. Если уровень опасности не превышает определенный уровень, то система передает этот сигнал дальше в область коры головного мозга, которая анализирует сложившуюся ситуацию, параллельно накапливая дополнительные данные об окружающем мире и строя более детальную картину происходящего.
Таким образом, подкорковая область мозга позволяет пусть и грубо, но очень оперативно среагировать на внешние обстоятельства – увернуться от удара, свернуть на большой скорости и избежать столкновения на дороге и так далее. Кора же головного мозга позволяет более деликатно ответить внешним факторам – увернуться от удара, одновременно производя подсечку, свернуть с дороги, но не угодить в кювет.

понедельник, 12 мая 2008 г.

Шахматы

Иногда бывает полезное узнать, что либо вне ваше круга общения и интересов :). Поскольку публиковать что либо вне моих интересов и знания о истинности упомянутого будет не правильно ограничусь достаточно локальным, но не менее интересным. Данный пост от одного из Эстонских шахматных клубов В. Жаворонков. 10/40 лет спустя. Безусловно фамилии нескажут вам ни о чём, но принцип соревнования и около соревновательные события будучи даже лишь упомянутыми достойны интереса.

вторник, 15 апреля 2008 г.

Роль руководителя магистранской работы

В дополнение к предыдущему посту о магистранской работе - роль руководителя.

Она как правило опять же двойственна. Во-первых руководитель должен следить за содержанием работы. Как правило это означает
1. Спланировать о чём будет идти речь в работе с учётом пожеланий студента.
2. Дать советы по углублению темы и логическому её построению.
Например любой анализ должен логически вытекать из ранее определённых требований существующих к данной системе, работать с ранее описанными критериями (т.е. должно быть пояснение почему рассматриваются именно эти критерии) и использовать оправданную методику для анализа (т.е необходимо обоснования выбора метода сравнения и оценки критериев).

3. Составить временной план написания работы
4. Составить список параграфов (содержания) работы расписав подпункты и примерный объём их.

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

Как правило существует и неофициальная роль руководителя заключающаяся в том, чтобы
1. Воодушевить студента на подвиг под именем "написание и защита работы"
2. Успокоить студента и дать ему уверенность в успешной защите
3. Требовать выполнения временного плана и узнавать у студента почему он его срывает

Магистранская работа

Для полноты картины дисскусии о докторской работе, отметим так же требования к магистранской (ибо это есть ни что иное как начало пути :) )

Одним из самых главных вопросов возникающих как у студентов так и у рецензентов - в чём же всё таки основное отличие работы на соискание степени бакалавра от магистранской? Ответ (опять же базируясь на практике Таллиннского Технического Университета / факультета информатики) следующий:

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

Магистранские дипломы делются на две категории:
- прикладные
- научные

Научная категория как правило является предпосылкой к развитию данной темы на следующем, более высоком уровне доктора наук

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

Что касается оформлению работы. Общий объём работы примерно 50-60 страниц (не более и не менее). Шрифт - 12pt с 1.5 растоянием между строк.
Глубина подразделов не более 3-х.

Как правило работа содержит
1. Общее введение в тему работы
2. Описание альтернатив, существующих методов и так далее на более детальном уровне
3. Проведение анализа (т.е. основное аналитическое содержание работы)
4. Заключение

С учётом минимум 3-х подпунктов в каждом разделе в среднем получаем 55/(4*3) около 5 страниц на каждый раздел, что не так и много.
Комментарий:
- Для тех у кого много идей - краткость сестра таланта :)
- Для тех у кого мало идей - не так много идей и надо :)


Ну и самое главное - магистранская работа как правило пишется как и бакалаврская в течении полугода перед окончанием университета.

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

понедельник, 14 апреля 2008 г.

Ответ на открытое письмо Volkswagen-у: удобство использования

Сегодня я получил официальный ответ от VW:

В отношении ваших замечаний в отношении читаемости инструментальной панели (панели приборов) позвольте дать вам наши пояснения:

Выбор цвета подсветки в машинах Volkswagen являлся предметом нескольких исследований. Синий цвет заднего фона с красными указателями дают совместно высокую контрастность. Это даёт возможность более быстро и легко распознать положение указателей, которые передают необходимую информацию водителю.

Угол зрения (видимости - visibility) человеческого глаза больше с синим цветом нежели с зелёным; поэтому данные панели приборов будут легко различимы (видимы) даже когда взгляд не направлен непосредсвенно на эти данные.

Все эти факторы привели нас именно к тому цветовому решению которое используется сегодня на машинах нашей марки.

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

Yours sincerely,
i.V. Michelina Lauriola Maenza i.V. Karin Gaedecke

суббота, 5 апреля 2008 г.

Почему внезапно пропадают клиенты?

Я не эксперт по маркетингу, но я уверен, что “пользователи сообщат если что либо не так” есть не более чем распространённое заблуждение (во всяком случае во многих случаях).

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

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

Скорее всего вы достаточно взрослый человек, для того чтобы быть счастливым обладателем иного набора железяк на четырёх колёсах именуемым машиной и возможно (случается в 75% случаев) вы выберете новую машины иной марки. Сообщите ли вы производителям предыдущей марки почему вы решили сменить брэнд?
Никогда

Если продавцы с которыми вы общались позвонят вам и будут спрашивать о вашем решении, после того как вы купили другую машину, что вы им ответите? Скорее всего вы просто дадите максимально короткий ответ который скорее всего не будет иметь чего либо общего с правдивым или полным.

Причина проста: вы (покупатель) уже приняли решение и вряд ли хотите продолжать тратить своё время на данную тему. Проблема решена и вы переключаетесь на следующую.

Более того пользователи очень редко обращаются к производителям даже если имеют достаточно серьёзные претензии. Нет, конечно каждый горит желанием это сделать сталкиваюсь с недостатками, но это желание очень быстро пропадает задавленное либо ленью либо отсутствием веры, что кто-либо заинтересуется этим. Отсылали ли вы свои претензии таким, например, производителям как SONY, HP, AEG, Microsoft и так далее? Маловероятно.

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

воскресенье, 23 марта 2008 г.

Открытое письмо Volkswagen-у: удобство использования

Хотелось бы просто удивится той цветовой схеме которую использует Volkswagen для вывода информации на переднюю панель, такую как одометр, передача которая включена в данный момент времени, разход топлива и так далее. Volkswagen использует для индикаторов ярко красный цвет, причём информационная панель расположена прямо в центре поля зрения водителя и занимает существенную площадь в продвинутом (фактически стандартном) варианте.

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

В виду выше-сказанного меня удивляет почему Volkswagen просто игнорирует существующий, устоявщийся стандард. Интересно было бы знать причину такого дизайнерского решения.

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

.. одним словом именно цветом индикаторов Volkswagen-а находящиеся практически в том же поле зрения водителя.

Послесловие: Кроме того меня сильно удивляет почему в Volkswagen возможно изменить так много (оборудование, цвет салона, панелей итд), но невозможно изменить такую элементарную вещь как цвет индикаторов.

вторник, 11 марта 2008 г.

Принимая экзамен по Интернет Приложениям 1

На самом деле под данным красивым названием скрывается предмет призванный дать достаточно прозаически набор умений и навыков. Основной целью является научить студентов создавать некие страницы в Интернете с тем или иным уровнем динамичности (в данном случае имеется в виду не столько домашняя страница Васи П.кина, а некая более професиональная страница посвящённая той или иной теме или страница некоего предприятия).

Как вы понимаете основным навыком является HTML. Для создания динамики используется простой и бесплатный (а оттого распространённый достаточно широко, особенно на маленких предприятиях) PHP. К этму до кучи в последнии года от меня были добавлены AJAX, XML, DOM, JavaScript ибо делать так делать. Может быть в следующем году добавиться RSS.

В виде экзамена идёт приём практических работ по определённым требованиям + эссе на произвольную тему связанную с предметом. Полученный опыт за этот год:

1. По аналогии с ITV0010 был добавлен пункт дающий дополнительные пункты. В данном случае опыт не оправдал себя. В практичеком предмете это приводит к тому, что студенты, вместо выполнения всех пунктов и использования дополнительного на случай если тот или иной пункт выполнен не совсем качественно, решили определённые элементы просто не делать. В результате целостность предмета размывается. В практических предметах всётаки необходимо знания (умения сделать) все элементы, тем более что каких то особенно глубоких навыков не требуется. Более того я вынужден был иногда ставить отлично тем студентам которые не сделали тот или иной пункт из основного списка, что опять же не представляется корректным.

2. Количество отличников из года в год снижается, даже на таком элементарном предмете (у грамотного программиста не знакомого с данными технологиями раньше на выполнения задания уйдёт максимум 25 часов). Это скорее всего говорит опять же о снижении интереса со стороны нового поколения к ИТ индустрии и общим увеличением безалаберности.

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

4. Девушки остаются девушками :) зачем многие пошли на ИТ направление (програмирование и бизнес информатика)? Дя того чтобы представлять работы своих друзей?? Кстати в этом году такой же эффект замечен у некоторых молодых людей. Унисекс набирает обороты??

5. Другая загадка: зачем приходить на экзамен и говорить “это делал я, но как не помню и начинать на месте долго и нудно рабираться”? То ли с памятью плохо, то ли с самооценкой :).

понедельник, 10 марта 2008 г.

Я#изделие

Эрик Синк считает, что существует три (магическое число :) категории изделий (в опубликованной им статье говорится непосредственно о програмном обеспечении, которое как известно по английски означает “мягкое изделие”).

Я#изделие
Разработчик создаёт изделие. Только разработчик использует его и никто больше. Как вариант – изделие создаётся прежде всего для себя и мнение остальных разработчика не интересует.

Они#изделие
Разработчик создаёт изделие, но сам не использует его. Вместо этого его продуктом пользуются другие люди.
Как вариант – изделие создаётся прежде всего для других. Разработчик как правило не достаточно квалифицирован в области применения продукта, чтобы иметь собственное мнение о том, каким оно должно быть и поэтому полностью полагается на мнение других.

Мы#изделие
Разработчик создаёт изделие. Изделием пользуются как другие люди так и сам разработчик. В изделии воплощаются идей и требования как самого разработчика так и других пользователей.

Никто#изделие
Разработчик создаёт изделие которым не пользуется ни он сам ни другие люди. Создаётся изделие которое обречено на забвение изначально. Яркими примерами служат как студенческие работы в университете, так и некоторые изделия производство которых обусловлено некими государственно-бырократическими интересами.

воскресенье, 9 марта 2008 г.

Вне контекста блога

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

1. Хроники лаборатории

2. Дневник американского боевого дельфина

четверг, 6 марта 2008 г.

Классификация веб инструментов

Читая дипломную работу "К интегрированному подходу к совместному использованию Интернет страниц" нашёл интересную классификацию веб инструментов построенную по статье "О нахождении типичных путей доступа пользователей к интернет ресурсам"

Уровень 0
Програмные системы которые доставляют запрашиваемые документы конечному пользователю: пользователь должен предоставить URI документа браузеру который обращается по заданному адресу.
Часто Web browser используется как термин для описания веб инструмента уровня 0. Вместе с тем следует упомянуть, что большинство существующих веб браузеров обладают значительно более богатой функциональностью прежде всего используя историю и закладки.

Уровень 1
Данные инструменты предоставляют поиск инициируемый конечным пользователем для нахождения соответсвующих критерию поиска страниц.
Как видно из определения наиболее общим примером програмного обеспечения данного уровня является поисковые машины (их основная функциональность).
Кстати веб браузеры не игнорируют данную функциональность и как правило предлагают разнообразные интегрированные инструменты для запуска поиска.

Уровень 2
Програмное обеспечение способное хранить профайл пользователя и осушествлять поиск самостоятельно извещая пользователя о новых, найденных ссылках.
Как правило профайл статичный и состоит из терминов которые определил пользователь в соответствии со своими интересами (те же ключевые слова которые он использовал бы при поиске используя интрумент уровня 1).
Кстати именно к этому уровню относится Google alert

Уровень 3
Инструменты данного уровня должны обладать более динамичным и дедуктивным подходом к поиску. Если на предыдущем уровне набор терминов поиска был статичным (и соответсвенно пользователь должен был определить самостоятельно соответствие между его интересами и терминами – другими словами уметь выразить свои интересы фиксированным набором терминов для поиска), то на третьем уровне програмное обеспечение должно уметь самостоятельно найти эти термины (ключи поиска) путём анализа поведения пользователя. Данная функциональность нужна прежде всего тем многочисленным пользователюм, которые не являются ИТ профессионалами и не используют интернет для каждодневных нужд.
Подсистемы такого рода встраиваются во многие поисковики и онлайн магазины и способны предложить товары (ссылки) которые могут заинтересовать пользователю на основании того, что он купил или хотя бы просто искал.

Уровень 4
Инструменты данного уровня должны уметь анализировать как поведение пользователя так и источники информации (например находя страницы подобные посещённым, анализируя ссылки посещённых страниц и так далее).

вторник, 4 марта 2008 г.

Глобальные задачи информационных технологий III

Глобальные задачи информационных технологий - продолжение предыдущих постов в котором говорилось о киберзащите и развитии информатики касательно данных о здоровье.

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

Ярким примером служит
а. Обучение пилотов. Кризисные ситуации на практике не должны случатся совсем, но приэтом пилот должен быть готов к ним никогда не попадая в них до этого. Поэтому единственно возможным решением является симуляция оных в контроллируемой среде, а поэтому в 90% случаев на компьютере
б. Лечение больных и их адаптация к жизни – например в случае боязни замкнутого пространства и так далее.
с. Понимание возможного развития процессов на других планетах, в иных физических условиях (гравитации, магнитного поля итд).
д. Симуляция присутствия (например на собрании) для виртуального преодоления пространства. Например участие в собрании по телефону а не лично означает потерю переданный информации от 30 до 40%.
Проблемой кстати здесь является передача всей гаммы ощущений (например запахов, прикосновения) не только для всех использующих виртуальную реальность (в случае с собранием), но и для тех кто реально (персонально) в нём участвует.

4. Разработка персонифициронного обучения.
На мой взгляд данная тема тоже относится к информатике, поскольку глобализация мира ставит нас перед фактом обучения в электронной среде. Зачем учиться в локальном университет когда можно пройти тот же курс у лучших преподователей из известнейших университетов и в последствии с лёгкостью сдать этот предмет в местном университете?
А вспомним проблему переобучения или постоянного пополнения знаний особенно в быстро развивающихся областях. Количество учащихся здесь значительно больше чем классических студентов. А вопросы реабилитации и социализации инвалидов которые хотят и могут сделать много полезного для нашего, такого большого, мира.
Кроме того ясно, что для каждого учащегося невозможно предоставить преподователю, а это означает опять же необходимость использовать роботизированных (или просто компьютерных) систем с искуственным интеллектом.

понедельник, 3 марта 2008 г.

Как стать доктором наук: Застой (часть третья, последняя)

Менее действенными и эффективными методом выхода из застоя в развитии докторской (да наверное и не только) работы являются:

1. Отложить работу на некоторое время и заняться чем то иным, надеясь что ваши серые клетки постепенно освободятся от ненужного хлама и однажды, спустя неделю или месяц, у вас в голове вдруг “зажгётся лампочка”. Досточно кстати расспространённое явление.
Минусом является потеря времени.

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

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

воскресенье, 2 марта 2008 г.

Глобальные задачи информационных технологий II

Глобальные задачи информационных технологий - продолжение предыдущего поста в котором говорилось о одной из задач - Киберзащите.

2. Развитая информатика касательно данных о здоровье (вольный и не совсем адекватный перевод для Advance health informatics)
Компьютеры (включая информационные системы) способны существенно улучшить качество здравоохранения будучи предствленны в абсолютно разных областях таких как
а. Экспертные системы, начиная от сложных способных самостоятельно поставить диагноз и контролировать действия врачей, до более простых, например следяших за совокупным влиянием лекарственных препаратов назначенных больному
б. Обобщение и получение истории болезни, что позволяет видить сразу не только текущие жалобы больного, а и эволюцию как данной болезни, так и сопутсвующих заболеваний.
с. Постоянное слежение за биометрическими параметрами (мониторинг) и передача информации о ней как в базы данных так и просто отдельному человеку. В данном случае начиная от приборов измеряющих давление, сердечный ритм и заканчивая более утилитарными приборами ... скажем так ... совмещёнными с санитарной техникой :) для проведению анализа по всем возможным параметрам.

Кстати в эту же категорию можно отнести персональные приборы (носимыми например больными из определённой группы риска), которые способны автоматически подавать сигнал бедствия в случае потери человеком сознания.

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

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

суббота, 1 марта 2008 г.

Глобальные задачи информационных технологий I

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

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

Что я бы хотел отметить так это сосетствование общеглобальных экологических проблем (заданий) с прикладными проблемами ИТ индустрии, которые состовляют треть списка в чистом виде и имеют сушественное влияние как минимум на половину поставленных проблем. Хотелось бы дать краткий обзор по некоторым из них.
Коментарий: собственно данный пост написан в виде единого целого, но так как он получился слищком длинным, то я решил не утомлять читателя данного поста и разделить его на несколько частей.

1. Киберзащита
Достаточно популярная область на сегодняшний день и часто упоминаеся даже в словосочетании кибер войны. Начиная от нападении на институты государственного управления и заканчивая “электронным” обыском который проводится полицией с удалённого компьютера проникая в компьютер подозреваемого (если я понял правильно, то это был недавно запрещён законодательно в некоторых странах). Кстати именно Европейские центры лидируют по исследоваиям в данной области.
В качестве практичного примера можно упомянуть известную слабость WEP протокола позаволяющую использовать вашу сеть например для DDoS атак или иной уголовно наказуемой сетевой деятельности. Иными словами нападение могут быть совершены не только на вас, но и используя ваши устройства.