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

Что делать, что делать – сухари сушить (c)

Очевидно что вопрос лежит в плоскости трудовой дисциплины, и методов её прививания.
У меня на этот конкретный счет мнение весьма категоричное – благо “наглотался” уже. [Далее...]

Groovy cheatsheet

Рубрика: Groovy | 9 October 2008, 14:13 | Vadim Voituk

DZone в своем refcards-разделе опубликовал небольшой (всего 7 страниц) CheatSheet по Groovy.

Составителем шпаргалки выступил автор “Groovy in Action” Dierk König.

Внутри краткая напоминалка по таким темам:

  • Groovy / Java – интеграция
  • Языковые конструкции
  • Операторы
  • Простые и комплексные типы данных
  • Замыкания
  • GDK
  • Мета-программирование
  • Hot tips

Скачать можно здесь, или же по подписке на Refcardz.DZone.com

Grails: Первая русская ласточка

Рубрика: Groovy | 6 October 2008, 15:27 | Vadim Voituk

Вот и дождались – первый публичный проект в Рунете написанный на Grails.

Встречайте http://g2b.perm.ru/ – выглядит довольно таки современно и красиво, работает достаточно быстро.
Конечно хотелось-бы в админку заглянуть, но видно не судьба.

Подробнее тут http://community.livejournal.com/ru_grails/5391.html

Забавная книжная полка

Рубрика: Юмор | 6 October 2008, 11:26 | Vadim Voituk

Не успел я ещё вдоволь насмеяться с фотографии в блоге Сани Тимошенко, как самому удалось заснять не менее веселую книжную полку в книжном магазине:

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

Bubble effect

Рубрика: Java | 24 September 2008, 15:56 | juriy

Когда пишешь приложение, хочется чтобы пользователь получал удовольствие от работы с ним. Пользователь любит, когда приложение ведет себя предсказуемо и естественно. Недавно, в одном из моих хобби-проектов возникла задача сменить в форме один компонент на другой. В Swing это делается совсем просто, главное не забыть вызвать revalidate, а то эффекты, порой, весьма забавные. Решение “в лоб” выйдет визуально не очень приятным. Один компонент резко уходит вникуда, второй так же резко появляется из неоткуда. Никакой визуальной связи между ними нет. Это поведение неестественно, и таких эффектов в Rich приложениях лучше избегать.

Вот относительно несложное, но более интересное решение той же задачи.

web-start
[Далее...]

Прочел отзыв Петра Диденко о “РИТ: Высокие нагрузки” и очень меня его выводы “зацепили”.

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

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

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

И после этого мы рассказываем, что наш “ИТ на 5 лет позади США и даже Индии”, что “у нас нет культуры стартапов”, что “новые технологии приходят к нам позже всех”, что “аутсорсинг нас тормозит” и тд.
А как же может быть иначе если мы все-ещё пытаемся сделать Ferrari из поношенного BMW, купленного 8-9 лет назад.

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

Хороший пример – это Cloud Computing.

Опять же процитирую Петра Диденко:

но народ думает, что это [could computing] какая-то далёкая наука, которая скорее всего никогда не будет иметь к ним отношения. Ну-ну.

Где-то года так 2 назад мне предлагали участие в проекте, построенном на Amazon EC2/S3.
В то время я сказал “ну вы ребята романтики-надуватели мыльных пузырей” и в проект этот не пошел.
Через пол-года прийшло прозрение, и я попробовал “скормить” идею руководству – безуспешно.
С таким же результатам попробовал ещё через год.
И несмотря на то, что уже сотни успешных web-стартапов продемонстрировали успешное использование тех же Amazon-овских сервисов, в ответ я слышу “А если вдруг что…”, “Это конечно интересно, но представляет только академический интерес…”, “Пусть оно поработает пару лет, а там поглядим”,  “Это все веянья новой моды – не обращай внимания, скоро пройдет” и тд.
А после этого успешно возвращаемся к “хаку очередного opensource-а ради 10% производительности”.

Грустно, господа, грустно…

P.S. Все выше сказанное прошу расценивать в контексте проблемы высоких нагрузок web-систем.

Что же все-таки такое этот Map-Reduce?

Рубрика: Ссылки | 18 September 2008, 23:56 | Vadim Voituk

Отличное описание теоретичекой составляющей трендового понятия MapReduce можно прочесть в блоге Игоря Артамонова.

Особое спасибо за ссылку на закон Амдала.

Прошивка и настройка DLink DWL-G700AP

Рубрика: Development | 16 September 2008, 00:05 | Vadim Voituk

Не так давно прийшел к выводу, что среди современного разнообразия активного беспроводного оборудования, найти что-либо приличное для дома/мини-офиса весьма проблематично.
Потому будем делать “из *** конфетку” своими руками.

DLink DWL-G700AP – это Wifi-точка доступа для домашнего (или около того) пользования, поддержвающая стандарты 802.11b/g.

В первую очередь это устройство интересно своей стоимостью – всего-то $40-50.
Минусом является то, что в базовом варианте, несмотря на наличие 2х сетевых интерфейсов, оно умеет быть только мостом (bridge).
Но это дело достаточно легко поправимо.

Исходим из таких начальных условий:

  • Точка доступа устанавливается дома (мини-офисе), где уже есть кабельное (Ethernet, RJ45) подключение от домашнего провайдера с авторизацией по MAC-адресу.
  • Наша задача состоит в том, чтоб посредством DWL G700AP предоставить нескольким ПК доступ в интернет, и друг-к-другу.
  • К тому же неплохо бы построить за точкой доступа свою мини-сеть, с автоматическим назачением IP нужным ПК.

Очевидно, что фабричная прошивка подобных “фокусов” нам провернуть не даст. Потому в первую очередь необходимо будет выполнить перепрошивку девайса, прошивкой от “народных умельцев”. [Далее...]

GPL and Open Source

Рубрика: Development | 11 September 2008, 14:20 | juriy

Недавно, общаясь на одном из форумов на около-OpenSource’ную тему, обнаружил один интереснейший факт. Лицензия GPL нарушает Open Source Definition. Точнее, всего один его пункт:

9. License Must Not Restrict Other Software
The license must not place restrictions on other software that is distributed along with the licensed software. For example, the license must not insist that all other programs distributed on the same medium must be open-source software.

Выходит, софт выпущенный по GPL формально не является Open Source. Или я что-то упустил в юридических тонкостях?

[UPDATED] По результатам дискуссии в комментариях, выянсилось, что GPL использует термин based-on и считает такой софт частью оригинального. А в OSD речь идет об “along with”.

GPL
Open Source Definition

Костыли для апплетов

Рубрика: Java, JavaScript/Ajax | 9 September 2008, 09:54 | juriy

Вам приходилось слышать в адрес апплетов выражение: “dead man walking”? Апплеты – часть Java платформы, задуманная, как мощнейшее средство, позволяющее проинтегрировать Java прямо в web страницу, практически полностью теряющее свои достоинства из-за тонн ограничений, которые на них возложены.
Последние несколько дней я бился над вопросом: как заставить апплет “выглянуть в мир”, за параноидальным прокси моего офиса.
[Далее...]