Димка тчк лв

Книга. Pro EJB 3: Java Persistence APIПятница, 29 июля, 2011 в 12:56

Книга. Pro EJB 3: Java Persistence API. Плохая книга.

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

Может сгодится как очень длинный ответ на вопрос "что такое EJB". В целом не стоит потраченного не неё времени.

Эмулятор x86 на Javascript(Chrome, FF4)Вторник, 17 мая, 2011 в 23:58

Некий, как я недавно узнал, очень известный в определённых кругах программист Фабрик Беллярд создал эмулятор процессора x86.  Что сие обозначает для неподготовленного обывателя? А то что любой(!) бинарник который не использует специфичные для ассемблера конкретного процессора хаки теперь можно попытаться запустить в браузере.

Создатель продемонстрировал своё творение на  таком малоизвестном проекте как ядро линукса. Взял недавнюю версию, собрал, загрузил и работает.

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

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

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

Он в свободное время разработал:

QEMU - то из чего выросла VMWare

ffmpeg - то что сейчас чуть ли не в каждом девайсе с экраном есть

Tiny C Compiler - компилятор который так быстро компилирует С что линукс из исходников за 25 секунд запускает

QEmacs Editor - почти полноценный emacs

Вообще читая про него можно заработать депрессивность. Он сделал один для программирования больше чем все 13 братьев Коши для физики и математики вместе взятые.

Например, на домашнем компе поставил рекорд вычисления числа ПИ. А предыдущий рекорд принадлежал японцам с супер-компьютером в 96 Тфлопс.

Метки записи: , Нет комментариев

Запуск второго скайпа в системеВторник, 21 декабря, 2010 в 6:51

Для того чтобы запустить второй, третий, четвёртый, ... энный скайп в системе с третей версии предусмотрен ключ /secondary.
В виндоусе запустить скайп с ключом можно из командной строки:
Start->run->cmd->C:\Skype\Phone\Skype.exe /secondary

Жмём старт, выбираем run:

Пишем cmd:

И запускаем скайп:

Можно дописать к вашему шорткату на десктопе:

Потом дописываем ключ в путь:

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

Из минусов:
Скайп запоминает последнего вошедшего. А мне было бы удобно если бы было разделение на "основной" и "второстепенный" акаунты.
Ну или вообще сделали бы чтобы из одного интерфейса можно сразу с несколькими паролями заходить. Упростило бы жизнь.

Метки записи: , Нет комментариев

Миф №2: Все страницы должны быть достижимы за 3 кликаЧетверг, 30 сентября, 2010 в 12:02

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

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

Исследования которые противостоят "правилу трёх кликов":

  • Юзабилити тестирования в UIE показали что люди не уходят с сайта или не чувствуют себя подавленными после того как сделают три клика и им нужно сделать ещё. Тестирование правила трёх кликов
  • Тесты по юзабилити Якоба Нильсена показали что возможность пользователя найти продукт в интернет магазине повышается на 600 процентов после того как дизайн поменяли так чтобы продукты были досупны через четыре клика с главной страницы вместо трёх. Книга - "Prioritizing Usability", глава "Highlights from Prioritizing Web Usability"
  • Дальнейшие тесты юзабилити в UIE показали что не число кликов, а хорошо названные ссылки с информационным душком играют ключевую роль в юзабилити. - Getting Confidence From Lincoln
  • Хорошая практика - заменить правило трёх кликов, правилом одного клика: "Каждый клик либо взаимодействие должно продвигать пользователя ближе к цели при этом убирая всё то что не относится к цели." - Breaking the Law: The 3 Click Rule

Для дальнейшего чтения:

Это перевод статьи Zoltán Gócza

Миф №1: Люди читают в сетиСреда, 29 сентября, 2010 в 11:26

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

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

Как мало читают пользователи?

Когда люди читают по словам

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

Это перевод статьи Золтана Колина.

Jaas + Glassfish v3 + Swing (File realm)Вторник, 28 сентября, 2010 в 6:23

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

Нам, естественно очень хочется понять как использовать этот функционал из нашего "standalone" приложения. Для этого понятное дело нужно авторизоваться по логину и паролю(например). Для этого удобнее всего использовать - com.sun.appserv.security.ProgrammaticLogin. Который находится в джаре $glassfish$\modules\security.jar. Который не подключается вместе с $glassfish$\modules\gf-client.jar который рекомендуется подключать для создания swing приложений.

После этого нужно пойти в администраторскую панель Configuration > Security > Realms > file. Там внутри нажимаем Manage Users. И Создаём нового пользователя. Прошу заметить что группы пользователя не выбираются от куда-нибудь а вписываются. Так же прошу учесть что что имя группы и будет именем авторизированного пользователя(principal) которое вы будете указывать в аннотации. Имя пользователя имеет значение только если не указана группа. Тогда имя пользователя становится группой с одним пользователем.

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

default {
com.sun.enterprise.security.auth.login.ClientPasswordLoginModule required debug=true;
};

Сохраним это в файл - e:\jaas.conf

Код для авторизации и первого запроса:


NewSessionBeanRemote facade2;
try {
System.setProperty("org.omg.CORBA.ORBInitialHost", "localhost");
System.setProperty("org.omg.CORBA.ORBInitialPort", "3700");
System.setProperty("java.naming.factory.initial", "com.sun.enterprise.naming.impl.SerialInitContextFactory");
System.setProperty("java.naming.factory.url.pkgs", "com.sun.enterprise.naming");
System.setProperty("java.naming.factory.state", "com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl");

System.setProperty("java.security.auth.login.config", "E:/jaas.conf");

com.sun.appserv.security.ProgrammaticLogin pl = new com.sun.appserv.security.ProgrammaticLogin();
pl.login("dima", "test");

InitialContext ic = new InitialContext();

facade2 = (NewSessionBeanRemote) ic.lookup(NewSessionBeanRemote.class.getName());
System.out.println(facade2.businessMethod());
} catch (Exception ex) {
ex.printStackTrace();
}

Всё что указано в System.setProperty можно передавать через -D при запуске приложения. Например: java -Djava.security.auth.login.config=E:/jaas.conf -jar dima.jar

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

Итальянский сантехник и реализация идеиСуббота, 25 сентября, 2010 в 9:14

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

Посмотрим на концепцию этой игры - "Сантехник бежит спасать принцессу от дракона".
Гениально неправда ли ? Я думаю что именно благодаря этой концепции Нинтендо заработало миллиарды долларов на этом бренде. И продолжает зарабатывать до сих пор. Хотя нет, такое даже кто угодно придумает.

Ладно, я уверен что их успех связан со сногсшибательной идеей. Наверное весь секрет скрывается в уровнях. Итак, идея уровня - "Мужик бежит влево и убивает грибов и черепах".

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

В Сауф Парке есть серия где раскрывается тайна того как придумывают эпизоды для Фемели Гай. Морские котики забрасывают шары с фразами в 3 ящика. И на основании этой концепции строится весь эпизод.

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

ПентыПятница, 24 сентября, 2010 в 6:07

В России собираются переименовать милицию в полицию, ибо полиция - более профессиональная структура. Это всем известно и понятно.

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

Зона комфортаЧетверг, 23 сентября, 2010 в 17:52

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

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

Почему работадатель должн настаивать на том чтобы работники спали днём?Четверг, 23 сентября, 2010 в 9:41

Как бы не так, правильно?

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

Я понял всю мощь короткого сна когда писал новую книгу, "The Way We're Working Isn't Working".
Я писал дома по утрам в три подхода по 90 минут. Я чувствовал что я измотан физически, психически и эмоционально к тому времени когда заканчивал последний подход. Затем я обедал и спал 20 - 30 минут в кресле-кровати, которое я купил специально с этой целью.

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

Когда Сара Мендик, бывший научный сотрудник Гарварда, проводила у испытуемых тест на память она разрешила половине из них поспать 60 - 90 минут. Те кто спал чрезвычайно сильно опередили тех кто не спал. В другом исследовании Мендрик попросила испытуемых исполнить визуальное задание 4 раза в течении дня. Те кто поспал 30 минут после второго подхода сохранили свою производительность на протяжении всего дня. Те кто не спал ухудшали свои результаты в течении дня.

Когда пилотам даётся 30 минут времени на сон перед долгим полётом их время реакции улучшается на 16 процентов. Те кто не спят теряют время реакции на 34 процента за время полёта.

Вывод очевиден: чем больше часов мы работаем без перерыва, тем больший спад КПД. Чтобы получить представление о том насколько ценным может быть сон, пройдите наш короткий энергический тест.

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

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

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

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

Если поощрение сотрудников спать по пол часа в день обозначает что они будут в два или три раза продуктивнее в оставшиеся три рабочие часа - и гораздо более эмоционально эластичны - польза кристально ясна. Это win-win и отличное вложение.

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

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

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

Это перевод статьи Тони Шварца - "Why Companies Should Insist that Employees Take Naps".