Чтобы добавлять сообщения и комментарии, .

@shaggie:
shaggie

Сделал тут самое важное в разработке собственной операционной системы — придумал ей название, аж на двух языках сразу.
На русском языке она будет называться "Лёгкая И Клёвая".
А для английского адекватным переводом будет "Light Eager And Keen".
И, значит, по-русски она будет сокращаться до OCЛИК.
А по-английски, соответственно, OS Leak.

@shaggie:
shaggie

В квартире где я щас живу сломалась газовая колонка.
Такой аппарат для динамического согревания воды.
Звоню в контору, которая ремонтом занимается.
Там девочка с той стороны телефона. "Как называется аппарат?".
"Нева", — отвечаю, — "модель не помню, я вообще не дома сейчас".
"Хорошо", — говорит. — "А на какой улице находится Нева?"
И тут меня капитально переклинило.
Я себя ощутил одновременно айтишником из анекдота, маленьким аутистом и симпатичной блондинкой.
Вот что значит отменно поставленный вопрос!

И ведь нет бы "по какому адресу". Может они специально там шаблоны рвут и развлекаются?

@shaggie:
shaggie

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

@shaggie:
shaggie

>> Do you believe in global warming?
> No, because best practice is to avoid globals.
Correct. You should just autowire a warming service.

@shaggie:
shaggie

Кто-то сломал Тони Морриса. Он весь твиттер слюной забрызгал и капсом приподнял. Видите ли, достало его сравнение скалы с хаскелем.
Вот жеж примадонна :)

@shaggie:
shaggie

Когда танцуют канкан и выходят на бис.
Получается канканнабис.
И его можно курить.

@shaggie:
shaggie

Не понимаю, почему тибилдинг так назвали.
Building — это построение чего-то нового. Это слово подходит, когда берёшь вообще левых незнакомых чуваков, и генеришь из них команду.
А стандартная ситуация — это взять уже готовую тиму, и что-нибудь этакое сделать, чтобы связь укрепить и солидарность поднять.
Но это же не building, это самый настоящий binding!
Повелеваю впредь называть сие действо тимбиндингом.

@shaggie:
shaggie

ru.wikipedia.org
Эффекты:
шум дождя,
вся слава гипножабе!,
да будет так!,
котята.

@shaggie:
shaggie

Eсли в Intellij Idea, в скала плагине, включить сортировку импортов (а там сейчас есть только вариант алфавитной сортировки), есть шанс что компиляция проекта сломается — потому что импорты имплиситов могут быть перемещены выше тех импортов, в которых они объявлены.
Добро пожаловать в мир c/c++, порядок инклюдов ВАЖЕН.
Единственное не NP-полное решение проблемы, которое сейчас вижу — сортировать сначала импорты не имплиситов, а потом только имплиситов.

@shaggie:
shaggie

Увидел тут настоящий энтерпрайз in action.

Когда-то давно, задолго до моего появления на проекте, тут в одном модуле сделали такую интересную задумку, что Product сам в себе ничего не хранит, а на каждый чих лазит в репозиторий, для чего держит у себя внутри JCR ноду и каждый метод кидает чеканутый RepositoryException. Такой, знаете, Dto is Dao, индусы кружатся в ритме вальса.

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

А теперь внимание, вопрос!

Как нам хотя бы в кетч блоке залогировать "с продуктом таким-то приключалася несуразица, примите меры/будьте начеку", если он из репозитория удалён, и из репозитория взять на этот момент уже ничего нельзя — ни имени продукта, ни его идентификатора, ни пути, вообще ничегошеньки!

@shaggie:
shaggie

Разница аудиторий как на ладони:

Смотрим новость "Компания Google занесла официальный сайт PHP в список ресурсов, распространяющих вредоносное ПО " на opennet.ru
Комментарии в стиле "Всё. Правильно. Сделали." в небольшом плюе, идёт спокойное обсуждение достоинств и недоостатков языка, особенностей взлома, основных тенденций в компьютерной безопасности, милые шутки за чашкой чая.

Теперь смотрим новость "Chrome и Firefox забанили php.net" на habrahabr.ru
Комментарии в стиле "Давно пора =)" яростно заминусованы, отовсюду истерики в стиле "зачем оскорблять языки программирования", "злорадство это плохо", "такой полезный сайт лежит, а вы смеётесь", "попридержите комплексы".

Прямо душой отдохнул, требую ещё холиварных баттхёртных тем!

@shaggie:
shaggie

Не могу жить без этой маленькой няшности:
public static <T, U> Optional<U> bind(Optional<T> x, Function<T, U> f) {
if (!x.isPresent()) return Optional.absent();
return Optional.fromNullable(f.apply(x.get()));
}
Guava guyz! Ну вы почти осилили монаду, так сделайте же человеческий bind! Почему, почему стандартный transform умирает, если результат функции null?
И вообще какого чёрта я до сих пор не скальщик и вожусь с этой жабой...

@shaggie:
shaggie

shaggie: я тут ещё херачу на павершелле
shaggie: есть файл, надо каждую строчку в нём регуляркой поменять
shaggie: gc file1.txt | %{ $_ -replace 'regexp', 'change' } > file2.txt
shaggie: синтаксис просто космический
shaggie: особенно меня насмерть убивает запятая между регэкспом и заменой, каждый раз её забываю
shaggie: gc это alias для Get-Content
shaggie: ох майкрософт, ох...

@shaggie:
shaggie

Помнишь на пероне
Ты меня не понял
Ты стоял в огне
А я в агонии...

@shaggie:
shaggie

try {
// ...
} catch (Exception yeah) {
LOG.warn("fuck", yeah);
}

@shaggie:
shaggie

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

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

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

@shaggie:
shaggie

мои экзерцисы на тему аппликативных функторов: twitter.com
ИЧСХ в голове сразу решение сложилось, а записать потребовало определённых усилий.
Вот нафига только мне это, буду применять на проекте (в джава коде, ага) — коллеги забьют ногами насмерть.
Или уже найти такую упоротую работу, где оно бы пригождалось...

@shaggie:
shaggie

Новый альбом Haken будет 2 сентября! Хатеть, ждать, дожидаться, скорей бы, ну что так долго.....
ИМХО, одна из самых лучших в мире на Progressive Metal группа на данный момент.

@shaggie:
shaggie

Вот любопытно: в функциональщине есть туплы, в C++11 добавили std::pair... А из Google Guava для Java пары наоборот удалили и отписались в доках "если вы используете пары, то в консерватории что-то не так, first, second, что за фигня, ни о чём не говорит, хотите два значения — давайте заводите свой отдельный семантически кошерный объект под задачу".
Пытаюсь понять, кто дурак и куда это всё заведёт.

@shaggie:
shaggie

Гугловый поиск перестал на первой странице выдавать в результатах ссылку на английскую вики. Только на русскую, которая ущербная и мне нафиг не упала (ну правильно, ведь ищет он в русском поисковике, на который редиректит принудительно, если заходить с русского айпи). Чтобы был результат с человеческой викой, надо выматериться и добавить "... wiki" к запросу. Офигеть как удобно и интуитивно.
Гугл, ахахах, ну что ты делаешь, прекрати, сам себя закапываешь. До отключения ридера осталось меньше полумесяца — и нахрен ты мне потом будешь нужен вообще?