smugastyi_kit: (Default)
Всем хорош паттерн ActiveRecord, но больно уж многословен.

public function prev()
{
  return $lessons = $this->course()
                                       ->first()
                                       ->lessons()
                                       ->where('order', '<', $this->order)
                                       ->last();
}

Вполне вмещается в одну строчку.

SELECT lesson_id FROM lessons WHERE course_id = $_course_id AND order < $_order ORDER BY updated_at DESC
smugastyi_kit: (Default)
Написал коммент, который объясняет мое неприятие крайнего Чужого.
Вынесу сюда.
Брюзжание разочарованного фаната )
smugastyi_kit: (Default)
Посмотрел я этих новых Чужих. Сабж.

Я расстроен. В качестве веселого боевичка под пивко — еще сойдет, но от атмосферы первых и вторых Чужих — там ни капли. Хотя очень много прямых отсылок в виде прямо позаимствованных сцен.
Смесь Прометея с Ч2, в общем.

Тупые дети будут в восторге, а старички, вроде меня, пойдут и напьются с горя и пересмотрят Ч1, а затем сразу Ч2.
smugastyi_kit: (Default)
"Интересным в структуре электрических угрей являются электрические органы, которые занимают около 4/5 длины тела. Угорь генерирует разряд напряжением до 1300 В и силой тока до 1 A. Положительный заряд находится в передней части тела, отрицательный — в задней."

Это конечно понятно, что 1300В и 1ампер это PMPO, а не среднеквадратичное значение, но и так — весьма неплохо.
Похоже, Маск чем-то не тем занимается. Все эти солнечные батареи, теслы... Всего-то надо, найти способ уговорить
угря отдавать заряд не одномоментно, а постепенно — и будет очень эффективный и очень дешевый источник электричества. :)))
smugastyi_kit: (Default)
Я специально ничего не писал про безвиз для Украины, так как по опыту знаю, что ни одна сделка не может считаться завершенной, пока не поставлена последняя печать.

И сегодня, в ратификаци безвизового режима были поставлены последние подписи. Всё. У Украины появился безвиз.

Мои самые искренние поздравления всем украинцам. Вы действительно, не пустыми словами, а делом, с полным правом заслужили свой безвиз. Путь был нелегким, но теперь он позади. Сделан огромный шаг на пути интеграции с европейским миром. Безвизовый режим — это признание Вашей страны полноценным партнером, которому можно доверять и с которым можно и нужно иметь дела. И дается он далеко не всем. Но у Вас — всё получилось, и это о многом говорит.
И это — начало новой, интересной и замечательной дружбы.

Вітаю, Україно!

Дыбр

May. 12th, 2017 06:38 pm
smugastyi_kit: (Default)
Что-то хреновый день сегодня какой-то. 

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

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

Еще насморк схватил, лежу с субфебрильной температурой, рычу на всех.

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

smugastyi_kit: (Default)
Если я правильно помню, у меня в друзьях в DW есть аж целых два лингвиста.

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

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

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

UPD: Мне в комментах написали, что это Тургенев в свое время так выразился, с тех пор и образовалось выражение. 
Хехе... прикольно. Проучись я в начале 90-х еще хотя бы год в России — знал бы этот факт. :) А так — для меня это стало новостью.

XCode

May. 10th, 2017 10:19 am
smugastyi_kit: (Default)
Работая в XCode, я никак не могу отделаться от ощущения, что я играю в снежки с обезьяной.
Только вместо обезьяны — разработчики XCode, а снежки сделаны из говна.

Я еще могу понять и простить по 10-20 крэшей в день, у меня мощный мак и хкод перезапускается быстро.
Но злоебучие Storyboard-ы, в которых рисуется UI, просто полностью неработоспособны. Из default template можно удалить View Controller (с целью засунуть туда свой) и... всё. XCode будет стабильно падать при попытке редактирования этого storyboard. XIB-ы конечно тоже были не подарок, но они хотя бы хоть как-то работали.

За четверть века программирования я видел много IDE. Самым крутым был и остается Visual Studio.
Потом, с некоторым отрывом идут продукты IntelliJ. А XCode, который, если верить ябблу — должен быть просто эталоном эргономичности и стабильности — плетется даже не в конце списка, а где-то на минус-первом уровне.

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

smugastyi_kit: (Default)
Читаю замечательные новости из Одессы.

"В Одессе гражданские активисты заставили власти города убрать памятный знак, на месте, где планировалось установить памятник маршалу Георгию Жукову."
https://www.svoboda.org/a/28473961.html

Лично я, в историческом разрезе, эту сволочь терпеть не могу. Бездарь, быдло, жополиз, мразь и людоед. 
Кстати, непонтяно, как вообще, в Одессе, в свете закона о декоммунизации, кому-то пришло в голову поставить памятник этому говнюку.

smugastyi_kit: (Default)
Что-то мне в последнее время хочется странного. Совсем не хочется в Италию, на Искью, а хочется в Франковск, в "Десятку".
Можно, конечно, меня назвать старым извращенцем, но о вкусах не спорят. :)
smugastyi_kit: (Default)
Второй день наблюдаю в фейсбучной ленте робкие посты из разряда "этот праздник не повод для радости, а повод для безмерной скорби" и что-то еще там насчет рюмки водки и горько молчащего в этот день ветерана.

Так вот, гайз. Подобное отношение — ничем не отличается от этого-праздника-с-сединою-на-висках и прочего победобесия.
На улице май, весна, девочки вон, полураздетые ходят. Или мальчики, кому что нравится. Война закончилась 72 года назад. Всё, проехали. И забыли. Кто сказал, что такое нельзя забывать? Дайте ему лопатой по жбану!
Во всем мире — это обычный, теплый и солнечный майский день. 
И те мудаки, которые пытаются своим сраным пафосом испоганить эти прекрасные деньки — идут нахуй дружным строем.


smugastyi_kit: (Default)
С свежей OSX я обычно сразу делаю следующие вещи:
(пробовал убрать под кат, но он окончательно перестал работать)

Ставится homebrew
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Устанавливается karabiner-elements
$ brew cask install karabiner-elements

В karabiner-elements Caps-Lock переопределяется на F19, затем в Keyboard Preferences оси, переключение раскладок lat/rus/что_угодно переопределяется с cmd-space на F19. Теперь раскладки будут переключаться капс-локом.

Ищется шрифт Pragmata Pro. Лучше всего купить (он того стоит), но и гуглится он элементарно. При желании — сразу патчится для Powerline.

Устанавливается zsh (так как системный — не самый новый)
$ brew install zsh --without-etcdir
Для zsh ставится zim
$ git clone --recursive https://github.com/Eriner/zim.git ${ZDOTDIR:-${HOME}}/.zim
$ setopt EXTENDED_GLOB
for template_file ( ${ZDOTDIR:-${HOME}}/.zim/templates/* ); do
user_file="${ZDOTDIR:-${HOME}}/.${template_file:t}"
touch ${user_file}
( print -rn "$(<${template_file})$(<${user_file})" >! ${user_file} ) 2>/dev/null
done
$ chsh -s =zsh
Прописывается PATH в ~/.zshrc
(в моем случае) PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:.composer/vendor/bin/:/opt/X11/bin:/usr/local/share/dotnet" 
export PATH

Ставится iTerm2
$ brew cask install iterm2
В настройках сразу ставится шрифт Pragmata, с кеглем 24 и меняется инициатор сессии с login на /usr/local/bin/zsh

Ищется/Покупается Alfred 2
Первым делом, в Alfred Preferences вызов альфреда меняется с alt-space на cmd-f19 (f19 ведь уже переназначен на tab), затем делается Workflow для вызова/закрытия iTerm по cmd-` . (Triggers->Hotkey => Actions->Launch Apps / Files с галочкой Toggle Visibility for Apps).

Ищется/Покупается Sublime Text 3, но в свете того, что он стал притормаживать — я подумываю над тем, чтобы вернуться в Vim.

Это — самое необходимое (для меня). Потом, ставится Opera, IDEA, Lastpass, Evernote, Airmail, Google Disk и прочий прикладной stuff.
 
smugastyi_kit: (Default)
Меня очень напрягало, что начиная с OS X 10.6.8, терминал открывался иногда мгновенно, а иногда тормозил по 2-3 секунды.

Сегодня таки переборол лень и разобрался.

Терминал (любой, хоть Terminal.app, хоть iTerm) — по умолчанию инициируют сессию через /usr/bin/login, который в свою очередь вызывает /usr/libexec/path_helper.

path_helper это крохотная утилитка, которая на основе /etc/paths генерирует переменную PATH.
Казалось бы, тормозить там нечему, но оно все таки иногда (в среднем — один раз из десяти) тормозит. Я не стал дизассамблировать и разбираться, но у меня подозрение, что тормозит из за проверок SIP (System Integrity Protection), которое проверяет, а не хитрый ли сплоет запускается подпись.

В общем, проблема решается просто. В любимый терминал прописывается запуск не дефолтного системного login, а напрямую — сам шелл. /bin/zsh в моем случае.
Ну и PATH полностью прописывается в дотфайл шелла или .profile, если шелл умеет его подхватывать.

Притормаживания пропадают полностью.
Терминал с zsh (который, в свою очередь с zim), открывается за 0.07с.
smugastyi_kit: (Default)
Каждый день ~/projects, ~/sites и дотфайлы уходят на Google Drive.
Каждую неделю ~/* уходит на домашний NAS c RAID01.
Каждый месяц /* уходит на внешний hdd.

Может есть какие нибудь мысли, как это дело сделать еще более надежным, но не делая лишних сущностей, вроде многократного дублирования?
smugastyi_kit: (Default)
Читаю с утра новости: "В Голландии создали первый в мире "биоразлагаемый" автомобиль".
http://ekabu.ru/auto/144296-v-gollandii-sozdali-pervyy-v-mire-biorazlagaemyy-avtomobil.html

Все таки — жалкие позеры эти голландцы. ВАЗ делал биоразлагаемые автомобили еще 4 десятилетия назад, когда это не было мейнстримом.
Помню, у соседа была шоха 80-лохматого года. За 25 лет в гараже, она успешно биоразложилась.
По сути, кроме резины, пластика и стекла — от нее мало что осталось. :)

Дыбр

May. 3rd, 2017 05:24 pm
smugastyi_kit: (Default)
Писать совсем не о чем. Политика надоела, а аспекты разработки "высоконагруженных, распределенных систем с двухкратным резервированием"(с) dz — вряд ли заинтересуют широкую публику.

Встаю в 6, до 9 вечера работаю, ложусь спать. И в таком темпе буду до 24-го. Когда уезжаю, наконец, с женой на заслуженный отдых в Италию.
Надо же... 3 года там не был. Как быстро летит время. 

Злые языки утверждают, что приближается праздник победобесия. Я его каждый год жду с нетерпением. Не терпится посмотреть, что придумают на этот раз. Шлягер прошлого года — дид на палке, был мощным ходом. И практичным. Летом его можно как веер использовать, обмахиваться от жары, зимой — снег копать.

Подсел на сериал Nightmares & Dreamscapes, экранизация новелл моего любимого С. Кинга. Хороших экранизаций Кинга практически не существует, но сериал неожиданно оказался вполне годным.

VolanBusz

Apr. 30th, 2017 09:55 am
smugastyi_kit: (Default)
Я взял в привычку ездить на выходные на дачу в загородный домик не на машине, а на автобусе.
По времени — всего на 10 минут дольше (40 минут, вместо 30), зато не надо напрягаться из за пятничных автомудаков, да и билет — всего 1 евро стоит.
Сегодня в автобусах появилось прикольное нововведение, бесплатный широкополосный вай-вай.
Мне он особо не нужен, так и так всегда в кармане MiFi роутер лежит, но прикольно... где-то 2 мегабита выдает сейчас сия халява.
Можно кататься и воровать варез смотреть фильмы прямо из сети.
Эти строки я как раз сейчас с такого халявного автобусного вай-вая пишу. :)


smugastyi_kit: (Default)
У меня сейчас просто дикое количество работы. Встаю в 6 утра, прихожу домой к девяти вечера и моментально засыпаю.
Поэтому ближайшие время (недели) блох будет обновляться крайне нерегулярно. Нет времени.
smugastyi_kit: (Default)
"Темпы роста цен в марте 2017 года в среднем по Евросоюзу оказались в шесть раз выше, чем в России. Инфляция в ЕС составила 0,6 процента по сравнению с концом февраля, тогда как в России — только 0,1 процента. Об этом сообщается в пресс-релизе Росстата."
https://lenta.ru/news/2017/04/25/inflation/

Сабж! А то, у нас тут хамон с пармезаном подорожали с 3 евро, аж до 3.01. Когда в Россеющке всего с 15Eur до 15.003. :)
smugastyi_kit: (Default)
Должен сказать, что метаться между императивщиной и функциональщиной -- очень опасно.

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