You are viewing metaclass

Заповедник репрессивной психиатрии
 
[Most Recent Entries] [Calendar View] [Friends]

Below are the 20 most recent journal entries recorded in metaclass' LiveJournal:

    [ << Previous 20 ]
    Friday, September 19th, 2014
    6:39 pm
    Поклонение машине
    Пару дней менял аккумулятор в машине. Родной сдох с концами, а поскольку его никогда не меняли, болт фиксатора аккума закис нахрен.
    Конструкция совершенно безумная - латунная гайка впаяна в пластик поддона аккумулятора, в нее вкручен стальной (сталь-алюминий это случаем не электрохимическая пара вообще?) болт М8, прижимающий одну пластиковую косоугольную хрень, в пазах которой ездит другая, зажимающая аккумулятор.
    Так вот, усилие для "провернуть латунную гайку в пластике" в неисчислимое количество раз меньше усилия для "выкрутить стальной болт из алюминиевой гайки". Гайку зажать невозможно в принципе, ни в машине, ни достав поддон.
    В итоге, отжал отверткой крепление, вынял аккум, снял поддон и унес это все домой.
    Раскрутить не получилось, пришлось вырвать латунную хреновину из пластика и даже после этого, зажав ее - открутить все равно не получилось. Высверлить болт тоже, что-то мои сверла его не берут. Только полное разрушение болта и латуни дремелем позволило разделить это все на составные части.

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

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

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

    Вообще, конечно, в таких случаях надо сразу ложится лапками кверху и звонить специально обученным людям, но электрические вещи и простую починку я немного умею сам и мне это сильно проще для мозга, чем общаться с ремонтниками.
    Thursday, September 11th, 2014
    9:48 pm
    Пикейное жилетство от ИТ
    В процессе срачей про вечные двигатели и обсуждения доисторических языков типа хаскеля с канадскими линуксоидами посетила следующая идея: проблемы с софтовой индустрией сводятся к трем вещам:

    * Качественный софт на самом деле никому не выгоден, про что упоминает vit_r

    * Нормальных средств разработки UI как не было, так и нет. Просто нет, от слова совсем. Если сравнить достижения в разработке кишков софта и UI - небо и земля. Все потому, что UI надо разрабатывать, общаясь с пользователями, а еще лучше с психиатрами по эргономике, а асоциальным программистам это внутренний паук запрещает. И вообще психиаторы их всех в психушку сдадут, как только про удобный интерфейс гита узнают.

    * Мейнстримные инструменты плохо умеют в целостность данных. Если бы не отцы-основатели реляционной модели, транзакции и ебические объемы данных у главных платежеспособных заказчиков типа банков, в которые ничто, кроме реляционных СУБД, толком не умеет - вся индустрия умерла бы давно, в мучениях.
    12:38 pm
    Ниасилил
    Почему я втащил кложурь вместо хаскеля в продакшен - потому что слишком туп, чтобы понять вот такое: http://hackage.haskell.org/package/base-4.7.0.1/docs/src/Data-List.html#permutations

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

    А если внутри софта будет еще и FFI (а он там будет, потому что некоторых нужных мне вещей в х-ле нет и придется писать самому) - оно еще при ошибках в нем и в нечитабельные сегфолты, никак не связанные с текущей операцией (ибо ленивость) валиться будет.
    Wednesday, September 10th, 2014
    10:17 pm
    "С быстрым компилятором workflow намного более гладкий"
    У меня на тему популярности Delphi и Firebird на постсоветском пространстве была такая мысль: простота языка и среды и большая скорость компиляции в дельфях, а так же удобство использования Firebird при разработке привели к тому, что одного среднего программиста было достаточно для реализации достаточно приличного размера проектов (ну там 150-200 kloc - это вот типичное, во что можно уместить неплохую опердень).

    И это сыграло злую шутку - без работы в команде (за отсутствием оной) и контактов с внешним миром в стиле "опять не пойми чего наделали в 100501-й библиотеке на Ц++/рубигеме/надо новый буст" люди окукливались и начинали варится в собственном соку, не использовать контроль версий и игнорировать регресс разработки и продажи софта до состояния "надо бежать, чтобы оставаться на месте". А потом херак - и восьмые винды, вижуалстудии, корявые линуксы с корявыми методиками деплоймента и пакетными менеджерами, жабы с мавенами, гит, андроиды с корявыми SDK и прочее разложение, а мозг то привык к удобству работы.
    4:33 pm
    Изменяемое состояние
    http://fprog.ru/2009/issue1/eugene-kirpichov-fighting-mutable-state/
    гребаный капец, 20 минут искал ссылку на эту статью, дать жене почитать, чтобы она в жабаскрипте состояние минимизировала. В итоге нашел по ссылке из гугла на собственный же ЖЖ в комментариях к записи.
    А все потому, что писал "мутабельное состояние" вместо "изменяемое состояние".
    4:09 pm
    Контекстный поиск гугла
    Чтение статей про психов и психиатров приводит к вот такому: http://www.cacodaemon.org/paranoidfp.png
    Monday, September 8th, 2014
    9:57 pm
    Сложность кода и яма со смолой
    http://shaffner.us/cs/papers/tarpit.pdf:
    Brooks noted [Bro86]:
    “Many of the classic problems of developing software products derive from this essential complexity and its nonlinear increase with size”
    We basically agree that in most current systems this is true (we disagree with
    the word “essential” as already noted) — i.e. in most systems complexity definitely does exhibit nonlinear increase with size (of the code). This non-linearity in turn means that it’s vital to reduce the amount of code to an absolute minimum

    А чего vit_r тогда везде пропагандирует читабельный за счет избыточности код?
    Sunday, September 7th, 2014
    12:38 pm
    Поиск подземных стуков в поточных шифрах
    Потратил пару вечеров на развлечение - поиск причины, почему криптоалгоритмы в питоне, php, c, openssl и C# выдают разные результаты: http://ru-root.livejournal.com/2759003.html

    В итоге, оказалось что в python, php и либе mcrypt по умолчанию используется размер обратной связи в 8 бит, в C+openssl и C#+bouncycastle - 64 бита, а если запускать openssl из командной строки - он добивает ключ нулями до размера кратного блоку.
    У питоновского крипто есть такой параметр, называется segment_size.
    В php параметра нет, но то, что в php и mcrypt называется OFB или CFB - это на самом деле 8OFB и 8CFB, а для 64 бита (размер блока шифра) в них есть режимы nofb и ncfb, но для ncfb в питоне НЕТ константы типа MCRYPT_MODE_NCFB, а все остальные есть.

    http://stackoverflow.com/questions/4052594/incorrect-key-size-in-php-mcrypt-when-porting-cryptopp-aes-encryption-to-phps-m/4054017#4054017
    https://bugs.php.net/bug.php?id=51146
    Thursday, September 4th, 2014
    2:13 pm
    Убивай космонавтов они лезут на небо
    http://www.kv.by/content/331940-talantlivye-protiv-usidchivykh-kak-ugrobit-it-kompaniyu
    Адски бредовая статья.
    Кейс 1: как 83% ватникодебилов отравили вменяемого сотрудника.
    Кейс 2: как дебилоадмин спиздил у вменяемой девки исходники.
    Кейс 3: как дебилы выжили вменяемого сотрудника и он сгноил их вместе с конторой в застенках КГК, а потом и сам спился.

    Выводы просто экстремальные в своем идиотизме: не нанимайте нормальных сотрудников, а то дебилы огорчаются и могут их убить и съесть. Это вместо того, чтобы выявлять среди работников вредных и опасных дебилов и избавляться от них.
    Monday, September 1st, 2014
    7:20 pm
    Поттеринги
    http://www.opennet.ru/opennews/art.shtml?num=40494
    А почему бы просто не сделать как в виндах - каждое приложение со своими зависимостями в своем каталоге, а винапи как был в 95 винде, так до 2012 и остался совместимым?
    Sunday, August 24th, 2014
    8:35 pm
    Отслеживание зависимостей пакетов при сборке дистрибутива
    http://ru.wikipedia.org/wiki/Rosa_Linux
    http://techquisitor.livejournal.com/236159.html?thread=617599#t617599
    Вычитал по ссылке такое: "Ещё одна фича сборочной системы - циклический контроль зависимостей. К выходу 2012.1 наши инженеры проделали то, что есть, пожалуй, только у ALT Linux. А именно, все зависимости теперь жёстко контролируются и весь софт в репозитории не имеет внешних зависимостей. Т.е. ситуация, когда ты ставишь какую-либо программу, а она тебе говорит, что не хватает libfoo, потому что она вообще в каком-то другом репозтории лежит или её нет в дистрибутиве - теперь исключена"

    Это что, серьезно, нигде такого больше нету? Ну, в смысле, автоматом пройтись по всем пакетам и проверить, что их зависимости за пределы данного репозитория не выходят? Вроде же самоочевидная фича.
    Saturday, August 23rd, 2014
    1:07 pm
    Жанр: православная конспирология
    Сортировал папку с текстами, откопал вот такое:
    Очень хороший писатель - почитаешь, крышей поедешь и можно сразу в донецкую народную республику ехать, добровольцем.
    Thursday, August 21st, 2014
    2:49 pm
    Принципиальный нон-конформизм
    http://auto.onliner.by/2014/08/21/deti-34/
    http://kong-en-ge.livejournal.com/359500.html

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

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

    PS: ссылку с критикой автокресел подогнали, надо почитать: http://www.nytimes.com/2005/07/10/magazine/10FREAK.html?_r=2&ex=1189915200&en=641c83d4b0668293&ei=5070&
    Tuesday, August 19th, 2014
    10:37 pm
    Мерзкософт
    Из всех видов софта я больше всего ненавижу делать следующий: скрипты для автоматической сборки и тестирования, инсталляторы, автообновление и автоматическое обслуживание.

    Оно не обобщается, монад в него не напихаешь, DSL для него почти не делается, да блин, в нем даже обработка ошибок - гребаный ад вида "давайте теперь откатим 20 мб изменений в бинарниках и 20 гб изменений в базе данных, ах да, у вас же все сдохло потому что место на диске кончилось из-за резервной копии, одной кнопкой не обойдешься, будите умных".
    Saturday, August 16th, 2014
    5:12 pm
    Излишне нервные родители
    Сидели сегодня с женой в пиццерии, наблюдали за соседним столиком семью, которой не помешало бы сходить к психотерапевту.
    Немного нервный ребенок и неоправданно резко реагирующий на ее выбрыки папа.
    Сначала ребенок что-то по мелочи капризничал, отец начал на нее выть и орать, требуя чтобы она себя "хорошо вела".
    Потом мать куда-то ушла (упомянув какие-то игрушки), ребенок начал плакать "где мои игрушки", отец сел на еще больших коней и начал выть и орать еще больше, периодически выражаясь, по-моему, совершенно некорректным образом - в стиле: "мама от тебя, такой мерзкой, плохо себя ведущей, ушла".
    Ребенок же истерил на тему "мне мороженого нельзя, у меня аллергия, я не хочу лежать в больнице, пицца вредная еда, от нее толстеют" и прочее такое. По мне - ну не хочет, не надо, взять ей чая какого попить или там блинчиков и все, нахрен то коллективную истерику на пустом месте устраивать.
    В итоге, это все вошло в положительную обратную связь - ребенок истерит, отец ее ругает, ребенок в ответ истерит еще больше, причем собственно капризы ребенка, достаточно обычные для нервных детей, всем были пофик, а вот вой и неадекватное поведение отца напрягало.
    В итоге вернулась мать, успокоила ребенка, отец начал псить еще и на нее, на сей раз вообще с использованием нецензурной лексики.
    Отцу явно надо лечить проблемы с головой, потому что иначе он сломает мозги еще и ребенку с женой.
    Такое ощущение, что он пытался отыграть сценарий "успешная семья на выходных посещает пиццерию", а ребенок, выламывающийся из этой идиллии, ему сильно мешал.
    Tuesday, August 12th, 2014
    2:01 pm
    Коллапс критериев выбора: делай что хочешь, на чем хочешь, всем похер.
    За хаскель не платят

    Линейное упорядочение больше не поможет вам нарисовать портрет хорошего программиста. Теперь легче сказать, чем программист НЕ занимается. Поле его деятельности стало N-мерным. Это одна из причин, обусловивших низкую толерантность к новичкам, женщинам и просто толковым, но неопытным начинающим специалистам. Вопрос о том, какая из этих мерностей имеет значение, а какая — нет, является политическим и субъективным, он не имеет точного устоявшегося ответа. Сегодня лузерами будут те, кто не знает скриптового языка. Завтра будут косо смотреть на всех, кто не разбирается в начинке JVM. У каждой компании свои стандарты, которые постоянно изменяются, и наши коллеги часто не только не знают, насколько они хороши как программисты, но и не могут понять, по каким именно критериям это оценивается. Это также объясняет ужасающую неразбериху, связанную с требованиями к разработке программного обеспечения. По большей части «работа» софтверной компании направлена на собственное определение «хорошего программиста» и, соответственно, отбор оптимальных инструментов.

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

    Совершенно нет разницы, например, использовать C# с дотнетом, или Clojure с жабой, или вообще Хаскель интегрировать с дельфями - все равно, достаточно качественный и повторно используемый код осилит или только специально назначенный айсед или новичок после полугода запиливания ему мозгов методиками написания этого кода и критериями выбора "где мы берем готовый код, а где переписываем хипстолибы, по причине непригодности оригиналов к использованию".

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

    PS: В комментариях есть негативный отзыв про автора, "most hated ex-Googled Michael O. Church". Комментарий, судя по краткому гуглингу - явный гон, просто оный ex-Googler поднял шитсторм на тему косяков в продуктах во внутреннем мейллисте гугла, что привело к корпоративной истерике и наездам на него со стороны сектантов гугло-ватников.
    Monday, August 11th, 2014
    3:19 pm
    Пользователи винды должны страдать.
    Задолбал alt-tab в 8 винде.
    Эти вот отрисованные окошечьки - они мне ни о чем не говорят - у меня там десятки cmd.exe с кложурью/ssh/питонами/жабами/дотнетами внутри. Иконок не видно, потому что они на фоне этих окошек, пока не присмотришься - ничего не увидишь.
    И еще список сделан в стиле MRU, но это всегда было.

    Как бы это так переключаться, чтобы понимать, куда ты вообще переключаешься?
    Sunday, August 10th, 2014
    6:09 pm
    De Vermis Mysteriis
    (ns operden.reports.CrossItinerary
    "Tibi, magnum Innominandum, signa stellarum nigrarum et bufoniformis Sadoquae sigillum"
    (:refer-clojure :exclude [extend])
    ..etc
    )

    Не нужно по 16 часов в сутки экспериментировать с миграцией p/sql firebird в кложурь, не нужно.
    2:15 pm
    Жабьи таймзоны и 2012 винда
    Поставил на 2012 сервер кложурную опердень с jdk. Копированием, само собой.
    На сервере таймзона "Калининград, Минск".
    Все работает, но в log4j логах дата-время указывает куда-то в часовой пояс стран, где потусторонний мир с псоглавцами и копчеными щизофрениками.

    Ну, проверяю:
    user (import (org.joda.time DateTime))
    user (DateTime.)
    #DateTime 2014-08-10T06:38:47.224-04:30
    user=> (default-time-zone)
    #PrecalculatedZone America/Caracas
    user=> (System/getProperty "user.timezone")
    "America/Caracas"

    Отличненько, например.
    PS: http://bugs.java.com/bugdatabase/view_bug.do?bug_id=7111903
    Saturday, August 9th, 2014
    8:06 pm
    SQL 'in' clause
    Скажите мне такую вещь: список значений в in выражении в SQL можно вообще передать параметром, хоть в какой-нибудь СУБД?

    В Firebird нельзя, ну я как-то не интересовался, как оно в других СУБД, использовал временную табличку и подзапрос с where exists (select 1 from TmpTbl ...) но что-то вот сегодня пришло в голову - а почему собственно нельзя?
[ << Previous 20 ]
About LiveJournal.com