This version of the page http://jug.ua/ (0.0.0.0) stored by archive.org.ua. It represents a snapshot of the page as of 2010-04-17. The original page over time could change.
JUG.ua

21 мая — Ruby Shift 2010

April 15th, 2010
No comments

Организаторы мероприятия – инициативная группа coffee’n'code – приглашает всех заинтересованных принять участие в мероприятии Ruby Shift 2010.

Возможности, открываемые Ruby Shift

  • Поддержка Украинского Ruby Community
  • Новые знакомства в IT
  • Обмен опытом
  • Новые идеи, неформальное общение с коллегами Read more…

admin анонс

Использование XQuery в качестве уровня представления данных

April 7th, 2010
No comments

Многие Web-приложения используют схему “модель-отображение-контроллер” (Model-View-Controller – MVC), чтобы разделить эти три задачи. На уровне представления такие приложения часто используют технологию PHP или JavaServer™ Pages (JSP). Хотя эти технологии широко применяются и безусловно эффективны, они не дают не зависящего от языка средства представления данных. В противоположность этому, язык XQuery, подобно языку Structured Query Language (SQL), предоставляет спецификацию преобразования, связанную со стандартом XML и не зависящую от языка и платформы. Использование XQuery для представления данных позволяет разработчикам, которые занимаются отображением данных, создавать эффективные представления данных, не привязанные к нижележащим серверам приложений или языкам программирования. В этой статье детально рассматриваются преимущества использования XQuery перед другими технологиями отображения данных, способ реализации XQuery на уровне представления и жизненный пример такой реализации.

Преимущества использования XQuery для представления данных

Сегодня почти все сообщество Web-разработчиков понимает преимущества подхода MVC. Этот подход отделяет модель (информационное содержание) от представления (того, что пользователь видит на экране) и от контроллера (того, что происходит в ответ на действия пользователя или обращения браузера по URL)

Большинство разработчиков, выбирая тот или иной вариант подхода MVC, обычно предпочитают технологию Java Platform, Enterprise Edition 5 (Java EE). Это безусловно эффективное решение, так как язык программирования Java представляет собой самую современную технологию. Кроме того, такие популярные структуры, как Spring и Struts, облегчают реализацию подхода MVC в распределенных объектных приложениях.

Однако непреложный закон разработки программного обеспечения гласит, что лучшие подходы постоянно развиваются. В противном случае Twitter был бы написан на языке Pascal. Стандарты совершенствуются, и прежние лучшие подходы модернизируются, а иногда и полностью вытесняются новейшими технологиями и решениями. Коротко говоря, несмотря на популярность технологии Java Enterprise, это все же вчерашний день. То же можно сказать и о других реализациях MVC, отличных от языка программирования Java.

Так каков же современный ответ?

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

Подробнее на IBM developerWorks Россия

ibm_dw программирование xml, XQuery

8 и 9 апреля 2010 года в Санкт-Петербурге состоится ежегодная конференция Sun Tech Days

February 11th, 2010
No comments

8 и 9 апреля 2010 года в Санкт-Петербурге состоится ежегодная конференция Sun Tech Days, которую корпорация Sun Microsystems проводит по всему миру уже более 10 лет.

Конференция соберет ведущих специалистов сферы информационных технологий, а также студентов и преподавателей. Количество посетителей конференции в 2009 году превысило 3500 человек.

Подробная программа будет опубликована в январе-феврале 2010 года, однако вы можете уже сейчас планировать посещение конференции. Участие в конференции бесплатное, регистрация обязательна. Выставочный комплекс Ленэкспо, 7-й павильон вновь открывает двери гостям конференции!

Конференция проводится при информационной поддержке комитета экономического развития, промышленной политики и торговли правительства Санкт-Петербурга. Подробности здесь: http://developers.sun.ru/techdays2010/

n0mer misc spb, tech-days

Ciklum IT Jam 2009 – 5 декабря

September 29th, 2009
No comments

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

Темы мини-barcamp’ов (http://it-jam.ciklum.net/index.php/component/content/article/8) :

  • Dynamic Programming Languages
    Ruby on Rails, Python, Perl
  • Mobile Development
    iPhone, Android, Blackberry
  • Agile
    Scrum, XP, kanban
  • RIA
    Flash, Silverlight, Flex
  • CMS
    Drupal, EPiServer, Joomla

Другая особенность программы – возможность задать вопросы и узнать мнение представителей ведущих украинских IT-компаний, организованная в виде panel discussions: http://it-jam.ciklum.net/index.php/component/content/article/7 .

В финале мероприятия – неофициальная часть: неформальное общение с коллегами, живая музыка, пиво-закусь :)

Регистрация уже открыта: http://it-jam.ciklum.net/index.php/component/user/register

upd: внимание, новая дата! Мероприятие переносится с 31 октября на 5 декабря.

admin анонс, программирование

Открылся набор в Академию Современного Программирования (Петербург)

September 23rd, 2009
No comments

Академия Современного Программирования (Санкт-Петербург) приглашает студентов 2-3 курсов пройти отбор в группу первого года обучения.
В этом году произошли некоторые изменения: в качестве базового языка программирования будет использоваться C++, а не Java.

Об Академии
Академия призвана давать действительно востребованные на российском рынке программирования знания. Курсы Академии ориентированы, преимущественно, на студентов 2-4 курсов ВУЗов. При этом занятия в Академии оказываются полезными как для студентов, обучающихся в своем ВУЗе по специальностям, связанным с IT, так и для тех, чья основная специальность далека от программирования.

Программа Академии рассчитана на 2 учебных года, обучение бесплатное. Успешно проходящие курсы студенты получают стипендию. Занятия проходят по вечерам 3 раза в неделю.
(подробнее тут)

Подробности о приеме можно найти на сайте Академии.

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

n0mer misc news

OT: who’s stronger?

July 1st, 2009
No comments

отсюда

n0mer фото health, off topic, smoking, sports

Clover Test Optimization: less is more

June 8th, 2009
No comments

В чём суть оптимизации тестов?

Clover (http://www.atlassian.com/software/clover/), начиная с версии 2.4, отслеживает какие строки исходного кода запускаются при выполнении каждого теста. Эта информация используется для оптимизации порядка запуска тестов.

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

Поддержка Clover в интегрированных средствах разработки (IDE)

Поддерживаются Eclipse и IntelliJ IDEA.

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

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

Clover в действии – более частый запуск тестов за счёт меньшего времени их выполнения, или less is more (см. ниже).

01:53

Подробности:

  • http://www.atlassian.com/software/clover/features/optimization.jsp – что такое оптимизация (test optimization)
  • http://www.atlassian.com/software/clover/CloverDownloadCenter.jspa – скачать Clover

Происхождение фразы “less is more”

неверныеПрограммисты на ruby/RoR знакомы с мантрой “less is more”. Думаю, им будет интересно узнать о происхождении этой фразы.
Вот отрывой из поэтического произведения “Andrea del Sarto” (также известного как “Faultless Painter”) Роберта Браунинга,

опубликованного в далёком 1855 году и вошедшего в сборник “Men and Women“:

I do what many dream of, all their lives,
–Dream? strive to do, and agonize to do,
And fail in doing.
I could count twenty such
On twice your fingers, and not leave this town,
Who strive–you don’t know how the others strive
To paint a little thing like that you smeared
Carelessly passing with your robes afloat–
Yet do much less, so much less, Someone says,
(I know his name, no matter)–so much less!
Well, less is more, Lucrezia: I am judged.

There burns a truer light of God in them,
In their vexed beating stuffed and stopped-up brain,
Heart, or whate’er else, than goes on to prompt
This low-pulsed forthright craftsman’s hand of mine.

Часто авторство фразы “Less is more” ошибочно приписывается архитекторам Buckminster Fuller (1895 – 1983) или Ludwig Mies van der Rohe (1886 – 1969). Конечно, эти архитекторы эту фразу использовали, но придумали её не они.

Внимение! правильный ответ :)
Фраза “less is more” – девиз философии минимализма. Впервые была использована в 1774 году немецким поэтом Кристофом Виландом (1733 – 1813)

Примечательно, что в UNIX-мире совершенно спокойно уживаются два пейджера, less и more:

  • http://www.gnu.org/software/less/
  • http://en.wikipedia.org/wiki/More_(Unix)

:)

admin misc

[ann] Confluence 3.0

June 8th, 2009
No comments

2 июня вышел релиз Confluence 3.0 – wiki-системы, написанной на java.

Макросы

В Confluence 3.0 появился Macro Browser – возможность добавлять чарты, списки дел, фото галереи, RSS-ленты с помощью нажатия на кнопку мыши. В Confluence 3.0 есть 80 встроенных макросов, плюс возможность использовать макросы сторонних производителей, например  Balsamiq mockups и Gliffy diagrams.

Социальное взаимодействие
В Confluence 3.0 появились возможность открывать для себя новых коллег и экспертов, следя за их обновлениями, налаживать новые связи с сотрудниками, а также создавать и вступать в тематические группы (networks).

Эти новые возможности помогут найти новых коллег:

  • Hover Profile (всплывающий профиль) – информация и меню профиля. Появляется, если навести курсор мыши на фото пользователя
  • Enhanced User Profiles (пользовательский профиль) – больше данных в пользовательском профиле, такие как должность, отдел, месторасположение плюс информация об активностях, строке статуса, а также его окружение (network)
  • Redesigned Personal Spaces (пользовательские пространства)- персональные пользовательские  пространства (spaces) теперь содержат сворачиваемую боковую панель, которая как и User Profile содержит данные об активности, текущий статус и окружение.

Эти возможности – для построения связей и отношений:

  • Status Updates (обновления статуса) – сообщения длиной до 140 символов, позволяют поделиться ссылкой, задать вопрос или просто поделиться с сотрудниками информацией о том, чем вы именно сейчас занимаетесь
  • Networks (окружения) – возможность следить за обновлениями коллег путём добавления их к своему окружению
  • Activity Streams (активности) – просмотр аггрегированных данных об активности своего окружения

Удобство использования

  • Upgraded PDF Export – улучшенных экспорт в формат PDF с возможностью создать титульную страницу, одержание, настроить форзацы и выбрать стиль для элементов документа (цвет, шрифт и проч.)
  • Major performance improvements – улучшения производительности:  +100% для Confluence, работающих в кластере и +40% для обычных исталляций.

Демонстрация возможностей новой Confluence (3:52):

Atlassian Plugin Exchange (http://plugins.atlassian.com/) – репозиторий расширений с возможностью управления расширениями непосредственно в админ-панели JIRA или Confluence.

Демо (3:00):

Подробности:

  • Release Notes: http://confluence.atlassian.com/display/DOC/Confluence+3.0+Release+Notes
  • Download: http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa

admin программное обеспечение atlassian, news, ru

Wikipedia: избранное

June 7th, 2009
No comments

Rob Matthews распечатал избранные статьи англоязычной википедии.
Получился томик на 5000 страниц:

admin фото en, fun, off topic

commons-CLI: GNU, POSIX and Java-style command-line options syntax

June 6th, 2009
No comments

The Apache Commons CLI

http://commons.apache.org/cli/ – библиотека Apache Commons CLI предоставляет интерфейс (API) для разбора параметров командной строки, передаваемых программе при запуске, а также для печати информации о возможных параметрах запуска.

Оказывается, существует несколько вариантов синтаксиса передаваемых программе параметров:

  • POSIX like options (ie. tar -zxvf foo.tar.gz)
  • GNU like long options (ie. du --human-readable --max-depth=1)
  • Java like properties (ie. java -Djava.awt.headless=true -Djava.net.useSystemProxies=true Foo)
  • Short options with value attached (ie. gcc -O2 foo.c)
  • long options with single hyphen (ie. ant -projecthelp)

Библиотека Commons CLI поддерживает все пять вариантов.

POSIX

Пользуясь широкими возможностями пакета commons-cli, нужно помнить: использование аргументов командной строки может привести к тому, что разрабатываемая программа перестанет быть портируемой (т.е. не будет Java-программой на все 100%)!

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

  • An option is a hyphen followed by a single alphanumeric character, like this: -o.
  • An option may require an argument (which must appear immediately after the option); for example, -o argument or -oargument.
  • Options that do not require arguments can be grouped after a hyphen, so, for example, -lst is equivalent to -t -l -s.
  • Options can appear in any order; thus -lst is equivalent to -tls.
  • Options can appear multiple times.
  • Options precede other nonoption arguments: -lst nonoption.
  • The -- argument terminates options.
  • The - option is typically used to represent one of the standard input streams.

Полностью POSIX-совместимыми являются такие операционные системы как AIX, HP-UX, MacOS X 10.5, MINIX, QNX, Solaris/OpenSolaris и др.(полный список).
Частично совместимые – FreeBSD, Linux (особенно использующие LSB), NetBSD, OpenBSD и др.(полный список).

Подробности

  • http://www.gnu.org/manual/gawk/html_node/Options.html – GNU-параметры на примере консольной утилиты Awk
  • PosixParser и GnuParser в библиотеке Commons CLI
    Выбрать парсер достаточно просто:
    [code lang="java"]
    CommandLineParser parser = new PosixParser();
    CommandLine cmd = parser.parse( options, args);
    [/code]

n0mer программирование cli, en, gnu, posix