усы2

Стой под стрелой

Поступки и мысли, о которых могу вспомнить не краснея

Зачем?
усы2
[info]tonsky
Понял вдруг, что искренне не понимаю, за что люди любят Линукс на десктопе. Что в нем сделано реально лучше, чем в том же МакОС? Не «не хуже», не «иначе», а именно кардинально лучше? Просто потому что бомжуют, а Линукс бесплатный? Есть ли какой-то линуксовый killer app, который никому нигде не удалось повторить? Почему именно пользователи Линукса так озабочены кроссплатформенностью своего софта (который, кроме как на Линуксе, никому нигде не нужен — а значит, и кроссплатформенность не нужна)? Просьба не ударяться в срачик, а ответить на вопрос по существу.

без темы
усы2
[info]tonsky
Фёдор Сваровский. ФОКУСНИК.

Соколик решил стать фокусником
но учиться не стал

… не хватило терпения
сильно ленился

просто
взял пилу
пошёл на кухню
и бабушку распилил

дедушка вернулся
из магазина
он и дедушку
распилил

распилил соседей
по лестничной клетке
наряд милиции
и пожарного с третьего этажа

но и после этого
всё равно
учиться не стал

так и вы дети -
вы
всё сделаете неверно
если не будете учиться

просто
возьмёте отвёртки
стамески
пилы
ножи
молотки
мотопилы возьмёте
лопаты
кирки

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

перебьёте
нас
всех...

без темы
усы2
[info]tonsky
Мы тут в компании (aboutecho.com) блог завели техническо-новостной; я как человек, который его разворачивал и оформлял, должен был туда написать. Ну я и написал (звучит скучно, но пост хороший получился, просто я копировать его сюда не хочу):

http://www.echorussia.ru/jekyll.html

Если хотите посмотреть, как наши фирменные комментарии из Echo работают, можно комментировать там (из ЖЖ тоже можно логиниться, по опен-айди, только будет без аватара).

P.S. Если логин висит, то это не наш виджет, партнер. Мне в офисе говорят, что иногда со второго-третьего раза получается. Если не висит, то наш :)))

CSS III
усы2
[info]tonsky
Вместо свистелок-перделок и опенгл-я давно надо было сделать специальное css-псевдосвойство для ссылок, которые ведут на текущую страницу.

Ну типа cбацал такой

a:selfpointing { text-decoration: none; color: inherit; font-weight: bold; }

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

По какому принципу свойства в стандарт попадают, мне до сих пор неведомо. Явно не по степени нужности.

Идеальный программерский монитор?
усы2
[info]tonsky


DELL U2212HM

21.5" E-IPS 1920×1080

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

Поворачивается в портретный режим — видно больше коду.

Дешевый — вместо одного 27", который вам ни один работодатель в офис не купит, можно купить два и денег еще на один останется. (а вместо apple cinema — четыре :)

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

Более того, 1920px = 2×960 — достаточно, чтобы на одном мониторе комфортно держать два окна рядом.

А два монитора по 1920px — это уже 4 окна по 960, тогда как один на 2560px — это всего два таких окна плюс кусочек. По опыту скажу, что двух окон во время кодинга обычно мало.

102 PPI — мелкая точка, меньше надо будет вертеть головой и изображение приятнее глазу. Ну и на столе меньше места занимает. Хотя бывают и мельче.

Матовый, конечно. Цвета вроде тоже должны быть более-менее. Жаль, что не 16:10 (или 4:3) — у них есть 24" 16:10, но он сильно больше при том же разрешении.

Или здесь подвох? Или есть еще круче?


без темы
усы2
[info]tonsky
See what’s happening on Никита Прокопов’s Facebook:

https://www.facebook.com/nikitonsky/posts/292779584142832
Метки:

без темы
усы2
[info]tonsky
Что касается «Могучих мстителей» Джосса Уидона, то на главный вопрос, мучавший всех мальчишек с детства, он так и не отвечает, а как-то стеснительно обходит его стороной: кто сильнее — Робокоп или Терминатор? Хотя, казалось бы, ради чего вообще такой фильм снимать, если не решить уже до конца этот вопрос. Другой интригующий вопрос — что, если плохие спецназовцы придут в точно такой же форме, как и хорошие, тоже как-то не раскрыт. Самая зачетная шутка — про чаевые негру.

А вообще, скоро уже снимут комедию с Эдди Мерфи или Мартином Лоуренсом (не знаю, кто из них пошлее, извините) про пуканье в 3д? Вот это я понимаю, экспририенс, собственно, разве не ради такого 3д вообще стоило раскручивать?

Метки:

без темы
усы2
[info]tonsky
Больше всего меня в облачной революции пугает ее неконкретность. Похоже на рекламную кампанию .NET, когда маркетологам забыли рассказать, что это такое собственно будет. Тебя кормят словами вроде «всё будет хорошо» и «все файлы будут на всех устройствах» (даже если ты этого не хочешь), а на деле пощупать руками, где что лежит, что куда уходит и приходит, отдать команду, настроить, подкорректировать, всё это нельзя. Вбей свои пароли, дальше, мол, мы сами. А в итоге фотки занимают драгоценное на шестнадцати гигабайтах место, адресная книга забита дубликатами и трипликатами, из-за разницы в моделях представления информации всё либо сводится к убогому общему минимуму, либо разные сервисы начинают быть похожими как две капли воды; и самое главное, нет ощущения, что все это моё. Я включу новое устройство — что я на нем увижу? А чего не увижу? А насколько я в этом уверен? Пока что дропбокс — единственный облачный сервис, который хоть как-то понятно работает. С остальными загадка примерно такая же, как и с гугл баззом. Даже в хроме синхронизация плагинов как-то пакостит (настройки, что ли, не шарит).

Об ограниченности возможностей человеческого восприятия
усы2
[info]tonsky
Последняя неделя прошла для меня под знаком полного бессилия в понимании такой простой вещи, как календарь. Точнее, гугл-календарь.

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

Тем не менее, гугл-календарь показал себя отвратительно со всех сторон:

Во-первых, непонятно, куда заходить (у нас на человека по несколько аккаунтов — домашний, рабочие).
Во-вторых, уведомления не приходят, событий не видно, етц, етц (см. также в-шестых).
В-третьих, нажатие на кнопку «пойдете? да-нет-не знаю» приводит к какому-то невразумительному сообщению про права доступа.
В-четвертых, однажды я изменил дату и время события, просто приняв приглашение на него.
В-пятых, в корпоративной переписке 38+ сообщений на тему как же нам организовать наше житье-бытье с календарем, я их все честно прочитал и так и не понял, как все это работает.
В-шестых, не у одного меня такие трудности; по треду видно, что при создании события никто не представляет точно, кто его увидит, кто будет добавлен и кто сможет его принять.
В-седьмых, каких-то простых и понятных терминов для обсуждения того, что от него нужно, календарь не дает (или дает не те, см. послесловие).
В-восьмых, это все только в пределах почтового ящика, как все это отразится на всех остальных моих устройствах, понять не то чтобы невозможно, но даже непонятно, что надо понимать.
В-девятых, справка, в лучших ее традициях, не пытается объяснить, как это все работает и какую ментальную модель нужно строить, а вместо этого пересказывает внешний вид интерфейса для даунов и слабовидящих.

Как-то это сложновато для просто календаря, не находите? Главное, непонятно, откуда сложность — ведь задача такая простая, и нужно немного.

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

Грубо говоря, для человека слова «событие» или «календарь» значат одно, а для программиста calendar.google.com — другое. Особенно шизофренично выглядят треды, где одни и то же слова выступают то в программистском, то в общечеловеческом смысле.

без темы
усы2
[info]tonsky
Прямо сейчас наблюдаю, как мейвен с микроскопической скоростью (пара килобайт в минуту) сосет файл, которого по адресу, с которого он его сосет, нет.

Я конечно, разного в джава-мире натерпелся, но такого не видел. Думаю, может этот файл там появляется на пару секунд, а потом снова пропадает? Мерцающий файл?

без темы
усы2
[info]tonsky
When you don’t create things, you become defined by your tastes rather than ability. Your tastes only narrow & exclude people. So create.
why the lucky stiff

The Joy of Clojure
усы2
[info]tonsky
Дочитал The Joy of Clojure авторов, которых я уже практически в лицо узнаю — активные деятели коммьюнити.

Это не введение в язык, а скорее обзор основных особенностей, фич, плюс рекомендации по использованию — на мой вкус, самый правильный жанр. В других, более худших книгах, бывает, распишут, что вот такое есть, и еще такое, и так можно, и сяк; если повезет, то даже пример разберут, но обязательно высосанный из пальца. А тут лучше, тут пишут, для чего каждая фича нужна, когда использовать и когда не использовать. Встречаются даже наставления, что является идиоматическим кодом на Кложе. Мне кажется, один из важнейших вопросов для изучающих язык.

Клевая, в общем, книжка, хоть в основном и про направление (об этом честно предупреждают в начале); чтобы обрасти «мясом», желательно параллельно читать документацию по стандартной библиотеке и код каких-нибудь проектов.

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

без темы
усы2
[info]tonsky
Яндекс сделал сервис Диск, который не просто похож на Дропбокс — это просто 1:1 фичи Дропбокса, содранные настолько бесстыдно, насколько это возможно в большом бизнесе. И даже не просто фичи, абсолютно всё — иконка в трее, пункты меню, окно настроек, вкладки в окне настроек! Честно говоря, я такую наглость вижу впервые, обычно Яндекс, когда тырят идеи сервисов, стараются хотя бы какую-то фишечку от себя добавить.







Работает это намного хуже (публичные ссылки не открываются, например), поэтому Яндекс взял чем мог — 10 Гб места (последние 2 получаются нажатием на кнопку «сейчас затвичу», твитить при этом необязательно) против 2,8 Гб у Дропбокса. Поэтому как халявное место для cloud backup-а Диск сойдет, но как ежедневный инструмент и как удобный хостинг картинок Дропбокс по-прежнему незаменим.

Кстати, Дропбокс — спонсор картинок ко всем моим постам в ЖЖ.

А Яндекс я как не любил, так и не люблю. Не понимаю, как люди там работают — после такого любой уважающий себя разработчик должен бегом оттуда заявление написать.

без темы
усы2
[info]tonsky
Вид с палубы назад:


Вид вперед:

без темы
усы2
[info]tonsky
Проблем с социальными сетями у меня две.

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

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



(снизу оригинальный пост, сверху пост-ссылка. Задание читателю — что означает надпись Google Reader и зачем начинать видеовстречу под каждым постом?)

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

И в итоге в ленте какая-то неосмысляемая каша. Я понимал вконтакте, когда страница человека, а в ней подстраницы альбомы/видеозаписи/стена. Я понимал более-менее, где я нахожусь, что могу ожидать и куда могу пойти. Но когда все они решили сделать поток а-ля твиттер, все, контекст пропал. Почему я вижу все подряд? Что я вообще читаю? Увидит ли комментарий автор, если я напишу его под перепостом? Что будет, если нажать +1? Стоит поделиться этим или мои друзья это уже и так видели? Куда зайти, чтобы почитать посты этого человека? Где я вообще нахожусь? Как найти ссылку, которую я видел семь дней назад? Короче, делать что-то осмысленное с социальной сетью я не знаю как.

Апофеозом был Google Buzz, который просто сам откуда-то контент брал. То есть, ты вроде ничего не делаешь, но, оказывается, активно вещаешь. Слава богу, сдох.

Вторая проблема — чисто пользовательская. Почему-то стало нельзя по щелчку на картинку просто открыть ее в большом разрешении. Чтобы добраться до самой крупной, надо раза три щелкнуть. Если из почтовой нотификации, то все пять. (причем на этом пути она иногда даже может уменьшаться) Это меня не просто бесит, выбешивает даже. Почему-то вокруг картинки всегда много интерфейса. Это дурацкий flikr начал, я знаю, веб-сайт работы с картинками, на котором сами картинки микроскопические, размер превьюшек полноценных фотографий меньше юзерпиков в ЖЖ, куча пространства для комментариев, которые никто не пишет (там их даже меньше, чем на ютубе), короче я не понимаю, как им вообще люди пользуются. И вот по его примеру все стали делать интерфейс там где не надо.

Ну, то что в гугл-плюсе вообще ссылки и не-ссылки выглядят одинаково, это тоже тупость.

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

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



UPD: Похоже также, что соцсети перешли от решения все еще формально афишируемой задачи «дадим им общаться с друзьями» к задаче «надо их чем-то занять». Как известно, из 100 человек комментируют примерно 10, пишет примерно 1. Среднему человеку со своим кругом общения в ленте просто не на что будет смотреть — поэтому ленту пытаются загрузить всем подряд, вплоть до сообщений, кто в какую игрушку поиграл. Лишь бы человек не уходил. И заходил за «новостями», хе-хе.



UPD 2: А не, все нормально (смс чьей-то 12 летней дочки):


без темы
усы2
[info]tonsky
Хм, Vim, значит, пишет полностью транзакционный лог всех операций и может восстановить после падения все изменения, которые я налабал, однако сохранять файл надо вручную. Автосейва нет даже как опции. В чем прикол? Они там вообще следят за ui/ux литературой 20-летней давности, ну или хотя бы за сегодняшним мейнстримом, развиваются, гонятся как-то?

Как войти в историю
усы2
[info]tonsky
Последуйте примеру Микрософт. Их будут вспоминать не за Windows, MS Office или Bing (кстати, они там социальную сеть не пилят какую-нибудь еще?), и даже не за хромого калеку IE, хоть его негативная слава и сильна. Микрософт войдет в историю за Windows Media Player. И совсем не потому, что этот бедолага еще ни разу не смог скачать нужного кодека из интернета. Нет, по-настоящему уникальное качество WMP, обессмертившее его имя — это то, что play/pause переключаются в нем не пробелом, а (барабанная дробь) Ctrl+P.


Как читать почту, или GMail с удовольствием
усы2
[info]tonsky
Если очень постараться, веб-клиент GMail-а можно довести до состояния, когда им более-менее приятно пользоваться. Вот как он выглядит у меня сейчас:



Тема — high contrast, едва-едва серенькие линии дефолтной темы меня выбешивают. Нельзя настолько тонко намекать, чтобы приходилось гадать, нарисовано там что-то или нет.

Давайте пойдем слева направо.

Когда-то я прочитал статью, как в Гугле пользуются почтой. Мол, автоматизируют все, что можно, создают кучу ярлыков и фильтров. «Хм, а логично», — подумал я и тоже так сделал. Часто используемые ярлыки в панели слева, редкие скрыты с настройкой «показывать, если есть непрочитанные письма»:



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



Интерфейс создания/управления фильтрами в GMail-е ужаснее всего, видимо, он рассматривается как advanced фича:



На всякий случай, работает он так: в поле «Includes the words» пишем запрос типа:

from:(livejournal.com OR ljplus.ru OR habrahabr.ru OR disqus.net)

или (самое сложное, что у меня есть):

(from:(aboutecho.com OR js-kit.com) OR to:(aboutecho.com OR js-kit.com) -mon.jacknyfe.net -fogbugz.com -offtopic -offtop -fyi -[pr] -jfi -jfyi)

Это значит брать все письма, идущие либо на домены моей работы, либо с наших доменов, минус письма с ключевыми словами, которые в основной папке мне не нужны — они разложатся по подпапкам отдельными фильтрами. Например, подпапка aboutecho/offtopic:

(offtop OR fyi OR jfyi OR jfi OR [PR]) AND (from:aboutecho.com OR to:aboutecho.com)

В действиях, естественно, Apply label, Skip Inbox (см. ниже), Never send it to Spam (раз уж я настраиваю фильтр, мне не нужно, чтобы гмейл гадал насчет того, что я совершенно точно знаю имеет значение для меня).

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

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

Дальше, как вы видите, идет панель тредов. Включается потрясающим Preview Pane плагином из Labs секции:



В таком виде я наконец понял, что GMail может быть удобным. Определенные требования к ширине монитора он, впрочем, предъявляет.

Если поковыряться в настройках, можно найти еще одну приятную деталь — заменить мистические иконки на кнопках на текст:





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



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

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

Поверх всего этого у меня наброшено немножко user css по вкусу с помощью гуглхром-плагина Stylebot. Он скрывает рекламную колонку справа (в vertical preview pane режиме совершенно конская колонка с рекламой), фиксит кое-где отступы, приглушает имя адресата, чтобы лучше выделялась тема, облегчает скроллбары и еще несколько мелочей, которые верстальщики такой большой веб-ориентрированной компании как google умудряются пропускать в продакшн.

И когда я легким движением руки могу это исправить, мне хочется, чтобы веб-приложения победили по всей планете немедленно. Я понимаю, что очень мало людей может воспользоваться user css, но лично я балдею от этой функции регулярно (да, ЖЖ у меня тоже сильно подтянут: основная тема, страница комментариев).

Запускается окно с GMail-ом как десктоп-приложение, это такая фукция в Гуглхроме. Это совсем деталь.

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

без темы
усы2
[info]tonsky
Хотелось бы, конечно, ввернуть сочную метафору, сравнить с Джавой, или еще что, но гибдд выше всего этого. Это эталон, на который все остальные должны равняться и с которым соизмерять.



Ссылка: http://73.gibdd.ru/monitoring/41
Увидел коллега.
Метки:

без темы
усы2
[info]tonsky
Коллега [info]m_a_m_o_n спрашивает:
Я к тому что у вас какие то комплексы по поводу java, ну да, это не идеальная платформа, и везде можно найти косяков - тыкнуть в них пальцем, и сказать ААААА!!! Смотритееее!!!

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

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

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

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

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

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

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