27 июн. 2007 г.

Учебный курс по BPEL

BPEL (читается как "бипль") - язык описания бизнес-процессов в гетерогенных средах. Контора CapeClear разработала и выложила online-курс по BPEL. Это набор flash-роликов, где иллюстрируется процессы создания и управления процессами.
Естессно, инструменты используются capeclear-овские, так что считать эти материалы курсом "чиста по BPEL" не получиться ))) Но для тех, кому это в новинку, смогут определить собственное впечатление.
К слову, аналогичные флеш-ролики есть и у Sun, но уже с NetBeans в главной роли )

Subj здесь.

25 июн. 2007 г.

Ухудшается ситуация с безопасностью Java-приложений

Натолкнулся на статью по поводу текущей ситуации с безопасностью j2ee веб-приложений в еженедельнике PC Week.
Прискорбно ((
Надо быть более внимательными.

Блог разработчика Sun HotSpot JVM

Просим любить и жаловать блог Николая Иготти, разработчика HotSpot JVM.
Вы можете смело писать Николаю по-русски.

Что такое порталы и зачем они нужны

В свое время проводили семинар по портальным решениям. В качестве иллюстрации использовался BEA Weblogic Portal 8.1.
Выложил презентацию семинара сюда. Может, кому-нибудь пригодиться )))
Скоро выложу аналогичную презентацию семинара по интеграционным решениям.

21 июн. 2007 г.

20 июн. 2007 г.

Security alert: Межсайтовый скриптинг через Accept-Language в Apache Tomcat

Межсайтовый скриптинг через Accept-Language в Apache Tomcat (crossite scripting) http://securityvulns.ru/news/Apache/Tomcat/ALCSS.html
Опубликовано: 19 июня 2007 г.
Источник: BUGTRAQ
Тип: удаленная
Опасность: 4
Описание: Межсайтовый скриптинг при некорректном заголовке Accept-Language.
Продукты:
APACHE: Tomcat 4.0
APACHE: Tomcat 4.1
APACHE: Tomcat 5.0
APACHE: Tomcat 5.5
APACHE: Tomcat 6.0
Документы: APACHE: [CVE-2007-1358] Apache Tomcat XSS vulnerability in Accept-Language header processing http://securityvulns.ru/Rdocument292.html
Обсудить: http://securityvulns.ru/board7823.html

Источник: http://security.nnov.ru/

15 июн. 2007 г.

Security alert: Межсайтовый скриптинг в Apache MyFaces Tomahawk

Межсайтовый скриптинг в Apache MyFaces Tomahawk (crossite scripting)
http://securityvulns.ru/news/Apache/MyFacesTomahawk.html
Опубликовано: 15 июня 2007 г.
Источник: BUGTRAQ
Тип: удаленная
Опасность: 5
Описание: Межсайтовый скриптинг при передаче параметра autoscroll.
Продукты: APACHE: MyFaces Tomahawk 1.1
Документы: IDEFENSE: iDefense Security Advisory 06.14.07: Apache MyFaces
Tomahawk JSF Framework Cross-Site Scripting (XSS)
Vulnerability http://securityvulns.ru/Rdocument270.html
Обсудить: http://securityvulns.ru/board7817.html

Источник: security.nnov.ru

14 июн. 2007 г.

Судьба девелопера: куда податься дальше?

Недавно с одним товарищем полемизировали на эту тему. Действительно, многие ребята всерьез озадачены вопросом дальнейшего роста. Куда двигаться? Любое движение, за редким исключением (когда это пинок ;-) - результат продуманной политики, и главное в этом движении - внятно сформулированная цель.
Какие пути развития видятся experienced-разработчикам? На основе моей репрезентативной выборки (знакомые) можно отметить следующие варианты развития:
  • в техническую сторону - гуру/архитектор/lead
  • в сторону управления - project manager
  • в сторону консалтинга - преподаватель/инструктор/пре-сейл (pre-sale)
  • "между право и лево выбираем вверх" - собственное дело
Каждый из вариантов имеет свою специфику и зачастую требует развития абсолютно несвязанных знаний и навыков.

Хороший технический специалист: гуру/архитектор/lead.

Что ждет? Высококвалифицированные спецы всегда нужны. Особенно это ощущается сейчас, когда хедхантеры готовы на многое, чтобы найти таких людей. Что поделать - кадровый голод )))
В перспективе гуру ждет участие в сложных проектах на уровне технического архитектора, и чем выше квалификация, тем сложнее и масштабнее проекты. В идеальном будущем - позиция вида "главный дядька по архитектуре решений" в какой-нибудь мега-крупной конторе ))
В реальности же все гораздо более прозаично и совсем немного ребят доходят до таких позиций, именно технических, чаще всего сворачивают. Основная проблема - финансовые амбиции. Обидно, когда ты такой умный, а за стенкой сидит паренек, который (страшно сказать!!!) не знает, что такое SAML для веб-сервисов, и получает больше тебя... А паренек занимается не технической стороной дела, а организационной - он PM. Или директор по развитию бизнеса. Или сами-посмотрите-на- табличку-на-двери-того- самого-упыря-достал-уже )))
Потому многие (амбициозные особенно) сворачивают в сторону управления.
Что необходимо? Если у Вас есть абсолютно четкое понимание:
  1. Того, что Вам нравится именно технологическая сторона, что Вы - технарь (в самом лучшем и гордом смысле этого слова, а не какое-то там офисное чмо ;-)
  2. Того, что Ваша компания позволит Вам расти в этом направлении. (Или Вас зовут в компанию, где в этом плане все будет хорошо ;-)
надо планомерно прокачивать скиллы.
Здесь так же есть пара нюансов. Можно стать отличным специалистом широкого профиля - эдаким техническим архитектором по платформе или по решениям. Например, по "платформе J2EE" или по "портальным решениям". С другой стороны, можно стать гуру по определенному продукту - например, по конкретной софтине BEA WebLogic 9.2.
Оба подхода, конечно, крайности - сложно быть спецом по платформе, не имея опыта на конкретном сервере и, наоборот - быть специалистом по конкретному серверу, не имея представления о платформе. Но задуматься о направлении, о доминанте, конечно, стоит. Эти спецы по-разному востребованы работодателями.
И еще одна важная деталь - сертификация. Сертифицироваться надо, это очень сильно облегчит общение как с текущим, так и с будущим работодателем )
Кому подойдет? Настоящим технарям, любящим свое дело и сложные задачи, не потерявшим интерес к развитию скиллов. Но важно уметь оценивать свои амбиции и уметь сворачивать вовремя )

Управляющий процессами разработки - Project Manager/Program Manager.
Что ждет? PM-ы - достаточно востребованные люди, hh.ru подтвердит ) Из несомненных плюсов - то, что они могут отностительно свободно сменить предметную область без смены скиллов. Это позволит начать карьеру PM в конторе "на-троих.ру", и в будущем оказаться в компании "Мега-Корп.ком".
Конечно же, все очень сильно зависит текущей ситуации: и проект может оказаться провальным, и все что угодно. И компенсация у PM зачастую скромная, тот же hh.ru подтвердит. Но, в целом, направление развития достаточно перспективное.
Отдельно стоит упомянуть сертификацию - она достаточно сложная и длительная по сравнению с техническими сертификациями. Но прохождение её, на мой взгляд, крайне полезно.
Что необходимо? Умение соображать быстро и верно ) Умение управлять людьми и общаться с ними. Деловая хватка.
Умение ждать ) Вовсе не следует ожидать сразу огромных компенсаций.
Кому подойдет? Эти умения и навыки приходят с опытом, но, тем не менее, некоторая предрасположенность к такого рода деятельности должна быть изначально. Далеко не все имеют способности к грамотному управлению людьми, деловому общению и способности к принятию решений.

Несущий свет - консультант/преподаватель/инструктор/пре-сейл )
Что ждет? Инструкторы и преподаватели - не такая частая вакансия на сайтах кадровых агенств, но это отнюдь не значит, что это бесперспективняк )
Я не имею в виду институтских преподов. Это люди, работающие в учебных центрах (как самостоятельных, так и подразделениях материнских компаний) и не имеющие ничего общего с большинством тех самых институтских преподов )
Задача инструктора - внятно донести содержание курса. Курсы по IT-направлениям, как правило стандартные, то есть уже написанные. И инструктор, пользуясь этими материалами, ведет группу на протяжении всего курса, "читает" курс. Длительность курсов различна - от одного до пяти полных (восьмичасовых) дней, иногда - дольше.
Из минусов работы инструктором можно отметить:
  • Высокая физическая нагрузка. Внятно, четко и громко говорить пять восьмичасовых дней - далеко не каждый сдюжит.
  • Высокая эмоциональная нагрузка. Группы бывают ой какие разные )))
  • Высокие требования к инструктору: умение внятно объяснять плюс отличная техническая подготовка. И если со вторым не так все плохо, то с первым - беда, таких людей совсем немного.
  • Если УЦ проводит неграмотную кадровую политику, не давая развиваться инструктору, то рано или поздно ему надоест читать одни и те же курсы.
Из плюсов же можно отметить:
  • Востребованность. Как было сказано выше, вакансии на инструкторов не так часто появляются на сайтах кадровых агенств, но в Учебных Центрах их очень ждут )
  • Как следствие - достойные компенсации, по сравнению с теми же разработчиками.
  • Можно не работать на УЦ, а быть фрилансером, то есть работать на себя. У этого подхода есть как положительные стороны, так и отрицательные. Если кому будет интересно - пишите, расскажу подробнее, это обсуждение несколько выходит за рамки формата.
  • Инструктор - работа интересная. По сравнению с другими направлениями: гораздо меньше рутины, есть возможность заниматься самыми свежими технологиями, общение со слушателями (как правило, хорошими специалистами, хотя как повезет ;-) приносит множество полезной информации.
Консультанты и пре-сейлы решают несколько другую задачу. Они не читают стандартные вендорские курсы, а решают проблемы клиентов за счет своей квалификации.
Консультант, как правило, наемный работник, хотя встречаются и фрилансеры. Компания-заказчик арендует консультанта под какой-либо проект, где он рассказыает, "как надо" )))
Пре-сейл обеспечивает техническую подготовку покупки ПО или решения. Сейлы решают организационные и финансовые вопросы, а технический пре-сейл общается с техническими специалистами покупателя и отвечает на все их вопросы. Типа, "а эта ваша софтина как на кластер развернется?", "скока железа покупать, в натуре?" или "а что будет, если ..." ) Так же в задачи пре-сейлов часто входит разработка пилотного проекта, то есть покодить тоже будет возможность.
Из минусов работы консультантом/пре-сейлом можно отметить жесточайшую дисциплину, повышенную ответственность и высочайшие требования к квалификации. Из плюсов - соответствующая компенсация )) Как правило, достойная. Возможность (и обязанность ;-) постоянно расти в профессиональном плане, невысокий уровень рутины.
Что необходимо? Все эти направления объединяют:
  • Повышенные требования к квалификации
  • Умение и желание общаться с людьми, внятно и четко излагать мысли
  • Высокие уровни компенсации
Кому подойдет? Всем тем, кто гармонично сочетает в себе технаря и оратора )))

Собственное дело
Как ни удивительно, но достаточно много ребят задумывались или задумываются о каком-либо своем начинании. В силу специфики их текущей работы, это как правило, мысли об e-business. Я это связываю с наличием удивительных success stories, тех же Google или YouTube.
Тема эта очень серьезная и требует отдельного размышления. Так что постараюсь как нибудь их собрать и совместно выработать идеи и рекомендации. Возможно, попробуем написать совместную статью.

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

Отступления:

  1. Статья не претендует на истину в последней инстанции. Она основывается на персональной репрезентативной выборке. Мнение читателя не обязано совпадать с мнением автора. Конструктивная полемика приветствуется.
  2. В силу специфики блога (Java/J2EE) чаще всего имеется в виду работник, связанный именно с этим направлением.
  3. Многие неглупые люди (например, М.Фаулер) обозначают определенный негатив к термину "архитектор" из-за его неоднозначности. Я с ними солидарен )) Выше я употреблял этот термин с уточнением "технический" и лишь потому, что этот термин потребовал бы слишком объемной и выходящей за рамки формата расшифровки.
  4. "Между право или лево выбирает вверх" - © Гражданская Оборона.

Русскоязычный курс по ANT

Выложил сюда.
Enjoy )))

Фоторепортаж

Проходил тим-билдинг с девушками из нашего HR.
Любят они нас, программеров )))



11 июн. 2007 г.

Технология JMX

Как и обещал, взялся за статью "JMX за 5 минут". Решил посмотреть, что уже написано по этому поводу на русском.
Нашел неплохие статьи:
статья1
статья2
Опрошу заинтересованных знакомых, если их не устроят эти материалы, напишу свою )))

7 июн. 2007 г.

Новый хороший блог )

Мой хороший знакомый, Денис, тоже завел блог )
Он специализируется на .NET, паттернах, рефакторинге.

welcome )

Cеминар "Обеспечение эффективной разработки ПО с использованием интегрированной платформы IBM Rational" в Питере

Подробнее здесь.
Так же презентации с семинара по IBM Rational Software здесь.

Шпаргалка: ответы на вопросы на собеседованиях (java/j2ee)

Мой омский коллега, Дима Калашников, любезно предоставил subj.
Я уже выкладывал похожую доку, но то был семпл для ознакомления.
Полноценная дока здесь.

Дока эта хороша тем, что там в сжатой форме в виде "вопрос-ответ" охватываются почти все актуальные темы: от базовой java и ant до j2ee и шаблонов проектирования.

4 июн. 2007 г.

Хороший блог по java-технологиям

Знакомые посоветовали subj.
Квалифицированный товарищ, довольно много рассуждает про паттерны проектирования (design patterns). Так что, если кто интересуется этой темой, welcome )))

Мероприятие BEA Systems, посвященное Business Process Management - в Москве

21 июня в Москве пройдет subj.
Рекомендую всем, кто связан с разработкой BPM-систем и сочувствующим )
Бесплатная регистрация и программа здесь.

Обзор java-технологий и шпаргалка по ним

Зачастую необходимо ввести в курс дела людей, не имеющих прямого отношения к java-технологиям: отдел кадров (HR), начальника и т.д.
Специально для этого я разработал короткую презентацию-рассказ, основной целью которой является обзор java-технологий, акцентирование их названий и связей между ними.
Это коротенький (от 0.5 до 2 часов, зависит от задачи) рассказ, которым можно быстро и эффективно решить поставленную задачу и потом использовать в качестве шпаргалки.

В этом архиве два документа - презентация и шпаргалка.
Enjoy )))

3 июн. 2007 г.

Статьи по J2EE

Один коллега недавно спрашивал меня по поводу того, где можно почитать (желательно в реферативном, сжатом виде) введение в одну из спецификаций.
Я с удивлением обнаружил, что далеко не все разработчики знают, что на сайте ibm есть куча статей и туториалов на русском языке.
Коллеги, имеет смысл заглянуть сюда: http://www-128.ibm.com/developerworks/ru/views/websphere/libraryview.jsp )))
Статьи далеко не всегда адекватно переведены, зачастую грешат поверхностностью. И, естесственно, что ibm продвигает свои продукты )))
Но, в целом, ознакомиться стоит.

2 июн. 2007 г.

Книги по JSF

Выложил книги по JSF. Штука актуальная, т.к. в J2EE5 JSF стал обязательным framework, его обязаны поддерживать контейнеры, так что имейте в виду )

O-Reilly-JavaServerFaces.rar
CoreJavaServerFaces_PrenticeHall_.rar
Wiley-MasteringJavaServerFaces.rar

1 июн. 2007 г.

Сановский экзамен по Java5 - материалы для подготовки

Я выложил сюда чудесную книгу для подготовке к сертификационному экзамену SUN по Java5. Книга сама по себе очень сжатая и эффективная, плюс в архиве есть программа-симулятор экзамена.
Enjoy )))