?

Log in

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

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

[ << Previous 20 ]
Monday, February 1st, 2016
12:01 pm
Эрланг-шытсторм
http://jamhed.livejournal.com/237948.html
http://jamhed.livejournal.com/239564.html
http://jamhed.livejournal.com/240154.html

http://maxim.livejournal.com/468313.html

Знаете, что самое раздражающее в этих срачах? Что инженерных/технических и прочих строгих методов различить кто прав и кто не прав в этом - нету.
Я уверен, что при достаточных скиллах будут работать оба решения - что горы велосипедов марки NIH, что усиленная ебля с чужим "готовым" кодом в заставлении его работать как положено.

А выбор, как и на чем делать, определяется всякими мерзкими гуманитарными соображениями, вроде "это придется коллегам осиливать", "говноязык от гугла конечно говно, но он от гугла и на нем тысячи людей, которым долго руст с хаскелем и C осваивать, пишут" и прочее такое. Как будто, прости господи, не техническими решениями занимаемся, а интригами в блядском провинциальном цирке с конями.
Saturday, January 30th, 2016
4:55 pm
Наглише бабкенпиздунг
http://luide-anna.livejournal.com/968676.html

А вот скажите мне - в наших благословенных exUSSR странах на каждый финансовый чих нужно немеряное количество бумаг и прочего юридического шрота, в честь борьбы с отмыванием финансирования терроризма спайсами. И телефоны вроде без предъявления паспорта, фотки жопы и унитаза не получишь. При этом вот цитата из поста "В течение нескольких минут деньги вывели на российские мобильные телефоны и на какую-то интеркассу." Это вообще как согласуется с всей этой движухой по слежению за финансовыми потоками и прочим?
Monday, January 25th, 2016
11:00 am
Репликация таблицы БД с помощью очередей
Я тут, как обычно, подумываю, как бы заменить прямое обращение к БД из сервисов на хождение мессаг по очередям и посетила меня такая мысль: можно ли с помощью очереди, гарантирующей доставку "один раз или больше" реплицировать одну таблицу в БД, если у нее есть естественный ключ?

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

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

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

Обычно я делаю распределенную транзакцию с двухфазной фиксацией с двумя БД и передаю данные лога транзакций и изменений между БД, пока оно работает как положено, за исключением того, что это прибивает гвоздями решение к протоколу Firebird, в котором эти распределенные транзакции предусмотрены и, например, убрать прямое обращение к БД и гонять данные по http(s) между сервисами не получается. Было бы интересно, опять же, рассмотреть вариант репликации данных между разными СУБД.
Thursday, January 21st, 2016
10:26 pm
Кто там спрашивал, зачем статик типы?
http://thesz.livejournal.com/1468493.html?thread=12840781#t12840781
У меня всей команды только я. Я не могу позволить себе писать тесты, потому, что всей команды только я. Я не могу позволить себе даже думать о возможности получить строку вместо числа потому, что у меня одна голова и ошибки ищет только она одна.
Sunday, January 10th, 2016
10:50 am
Доработался
Ночью снился кошмар про выбор библиотеки для MQ.
Типа, совещание на работе "какую библиотеку выбрать" с приглашенными Умными-Людьми-Из-Интернетов. Только начал описывать постановку задачи, Умные Люди сразу "а, вы все делаете неправильно, надо использовать многомерный гипер-интегратор из библиотеки чтотоневнятноеqd" и все, на этом совещание превратилось в абсурд.

Это я пытаюсь заставить себя вкурить nsq и disque на предмет пригодности для моих целей, но эта вот их мания "все держать в памяти, надежность обеспечивать репликацией по N нодам" меня раздражает.
Кроме того, в задаче еще дохрена других ограничений, осмысленность которых я оценить не могу - они взяты из опыта эксплуатации софта в ненормальных белорусских условиях.
Thursday, January 7th, 2016
5:46 pm
Асинхронный UI оперденей
А скажите, как сейчас у нормальных людей (т.е. не пост-советское ИТ для пост-советских госконтор, не попильные хипстер-социальные сети, не доисторические ERP-системы выдаваемые внедренцами за элитный товар) обстоят дела с асинхронными запросами к БД и их отображением?

Ну т.е., вот некий юзер делает из своей опердени запрос к небольшой реляционной БД (10-100 гб), запущенной на обычном soho-сервере, т.е. никаких сука датацентров и амазонов на 1000 инстансов с мап-редьюсами, никаких графовых БД, оптимизированных под запросы "как показать френдов, которые запостили фотки котиков едящих блинчики и рядом рекламу муки для блинов и одежды для котиков", обычная тупая двух-трехзвенная опердень на 10-100 человек юзеров и скукота вроде "дайте мне оборотную ведомость по клиентам".

Как это выглядит там, где инженерные решения не застряли на уровне фокспро и дельфей 1995 года? Есть ли прогресс-бары? Есть ли статус выполнения запроса в стиле "читаю 50/100 гб базы, аггрегирую, сожрав 60% памяти сервера и буду еще работать 30 минут"? Есть ли отмена запроса без извращений вроде "подключится еще раз, найти в мониторинг таблицах свое подключение и удалить его"? Есть ли возможность поставить тяжелый запрос в очередь и пойти делать отчеты дальше, периодически поглядывая на статус выполняющегося запроса (в том же приложении, а не запуская 10 инстансов, по одному на тяжелый запрос)?

Я просто вот про все вышеописанное подумываю, как бы сделать без особой боли, но может уже давно это все отменили еще в прошлом веке, давно все готовые СУБД и сервера приложений умеют, а мы тут до сих пор в лесу воюем, да поезда под откос пускаем, по белорусскому обычаю?
Friday, December 25th, 2015
9:15 am
Файловые системы и базы данных
Поэтому после оптимизации будут тесты, которые будут имитировать типичные проблемы файловых систем - в основном, это переупорядочение запросов и, поэтому, возможна ситуация, когда информация о commit уже записана, а данные ещё нет.

Это вообще как? Без write barrier вроде же такое никак не вылечить (ну, не считая вуду механизмов в стиле "считаем диск одной из нод распределенной системы, наворачиваем консенсусы и безнадежно воюем с CAP теоремой")

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

Снова про прогресс.
Tuesday, December 22nd, 2015
1:55 pm
"Везде суббота, а я помолился - и вокруг меня четверг"
Таймзоны винды продолжают доставлять.
Внезапно внутри парочки очень долгоживущих процессов на одном сервере таймзона, которую они видят - сменилась с +3 на +4. Почему? Виндохолопам знать не положено, обращайтесь в спортлото.
Благо, все остальное в UTC, кроме вот "а какое было локальное время в ЦОД деревни Гадюкино во время записи события в БД".
Saturday, December 19th, 2015
6:42 pm
Советский инженер - это диагноз
http://guardia-rojo.livejournal.com/23036.html?thread=243452#t243452
Ад в комментариях - "инженеру с 42 летним стажем" объясняют, что работать за копейки - это плохо даже не потому, что жить будешь сам хуево, а потому что за тобой не придет ни один молодой специалист, которому ты сможешь передать свои умения.
В ответ адский тупизм про "врагов России" и прочее такое.
Хотя на самом деле, главные враги России - это вот те, кто въябывает за копейки и кормит чиновников.

PS: а гамон, там полные комментарии этих "инженеров", которые ничего, кроме своей специальности в глаза не видели и думают, что достаточно молится на великую россию и делать подешевле из говна и палок продукцию, чтобы все было хорошо. Все таки инженеры без гуманитарного образования - это безнадежно.
Friday, December 18th, 2015
1:20 pm
Логи
Я пришел к выводу, что осмысленно выбрать уровни логов (log4j, log4net) в вызовах внутри программы при разработке невозможно.
Всегда возникнет ситуация, в которой конкретно вот сейчас, без перезагрузки сервиса надо сменить уровень лога в данном конкретном методе.
Делать отдельные логгеры на каждый чих и конфигурировать их - это адский комбинаторный взрыв, конфиги становятся нечитабельными, когда там в xml пытаются засунуть то, что должно быть матрицей M(логгеров)*N(аппендеров), а еще лучше такой же матрицей, только с иерархией (общий, группа логгеров, логгер) по одной оси и аналогично для аппендеров по другой.

Кажется, надо просто логи складывать в очереди и фильтровать их по уровням не на этапе создания, а на этапе чтения. Возможно, разве что уберотладочные на каждую букву в каком-нибудь парсере с конечным автоматом отсеивать, и то не факт.
Monday, December 14th, 2015
10:02 am
Интернет вещей
http://august.com/products/august-smart-lock/
https://twitter.com/rabcyr/status/643956567818248192/photo/1
Обновил iOS, не взял механический ключ с собой - не можешь открыть замок.

Хотя вообще, я бы от такого замка не отказался - ребенку вместо ключа на телефон поставить софтину, потому что телефон сложнее проебать, чем ключи. Да и контролировать проще.
Saturday, December 12th, 2015
8:25 pm
Гребаные микро-usb
В action-камере xiaomi yi, которая сама по себе достатчно приличная альтернатива GoPro, есть видео-выход, который можно подключить к передатчику и смотреть с нее видео в реалтайме. Но, как оказалось, злые китайцы посадили этот выход на 4 пин micro-usb, который обычно не задействован, кроме как в OTG-проводах для идентификации устройства-хоста (тогда он замыкается на землю).
Само собой, что в "этой стране" купить micro-usb разъем без провода возможно либо только через китайпосылторг либо у какой-нибудь "подзаказ-безнал-сфизлицаминеторгуем" конторе, поэтому я подумал, что можно распотрошить бытовые micro-usb кабели и достать разъем.
Так вот, хрен там, однако. Ни в одном из разобранных кабелей 4 пин не выведен для распайки. В OTG он замкнут прямо внутри на 5 пин, в обычных просто не выведен и только в одном чуть-чуть торчит, но для того чтобы к нему припаяться нужен микроскоп и скиллы нейрохирурга.
Я вот думаю, попробовать купить еще пару кабелей на потрошение, или таки ждать китайпосылторга. Или же заменить временно камеру на что-нибудь простое и подешевле с аналоговым выходом, типа модуля камеры от видео-домофона.
Можно, конечно, купить GoPro, для которой переходник с мини-usb на вход передатчика у меня есть, но жаба пока не разрешает.
Thursday, November 19th, 2015
3:49 pm
Fish On
Интересно, что сказали бы феминистки про это более чем охуенное видео: https://www.youtube.com/watch?v=eciZWNdkGqs ?
Подозреваю, что оно у них пробудило бы всю их паранойю про rape culture, exploitation и прочее такое.
Sunday, November 15th, 2015
4:15 pm
iOS, rdp, ssh и приватные ключи
В честь того, что все приложения для управления коптерами у dji только под iOS я разрешил купить себе iPad mini 4 и последние несколько дней занимаюсь тем, что настраиваю его.
Девайс и iOS, конечно достаточно забавные в плане юзабилити - особенно отсутствие кнопки Back выносит мозги, когда непонятно, "как вернуться". Поиск в appstore странноватый, если заранее не почитать в интернете про приложения, выбрать из аппсторе, что подойдет, затруднительно.
Сегодня провел полдня, настраивая ssh, smb и rdp клиенты. Задача была в том, чтобы добраться до виндового сервера по rdp, с помощью порт-форвардинга через ssh, с аутентификацией по ключу с пассфразой. Или прочитать файлы с виндового сервера в той же сети, что и iPad.

Для rdp я сначала поставил родной клиент микрософта, проверил, что оно все работает (и таки оно заметно удобнее, чем на андроиде), затем начал разбираться с порт-форвардингом. Из ssh клиентов я поставил prompt2 и cathode. Никто из них не умеет в порт-форвардинг. Более того, похоже iOS убивает приложения на фоне за 10 минут и соответственно, фоновое приложение с форвардингом портов долго не проживет.
В процессе поисков нашел Nulana Remotix RDP - который умеет в ssh форвардинг, но не умеет сам генерировать ключи. Ключи ему надо скопировать из iTunes. Сгенерировать ключ из клиентов умеет только Prompt2, но он не умеет их сохранять в файлы - только в клипбоард.
Я наверно час искал, как перенести содержимое клипбоарда в файл так, чтобы его увидели iTunes - это просто ад, ни в одной программе не написано "умеет ли она создавать файлы, видны ли эти файлы в iTunes и умеет ли она в clipboard". В итоге оказалось, что второй ssh клиент (cathode) именно это и умеет - вставить ключи из клипбоарда и они станут видны в iTunes. Оттуда я их забрал и перенес в Remotix RDP, после чего все заработало.

Для smb я не нашел ни одного клиента, который мог бы увидеть скрытые/админские шары на винде, с вводом пароля. Приложения эти живут в своей рабочей папке, файлов других приложений оно не видит и в них файлы передавать не может, от чего почти каждый клиент содержит в себе свой корявый просмотрщик-редактор файлов, плеера и прочее такое.

В конечном итоге, похоже, что самый прямой способ использования iPad - это логинится на сервер и там тупить в винду или линуксы, а на самом ипаде только потреблять контент или использовать программы-комбайны, которые умеют все сразу и все файлы держать в их папках.
Tuesday, November 10th, 2015
1:31 pm
Thursday, November 5th, 2015
2:24 pm
Трансфобии пост
https://github.com/opal/opal/issues/941
Пытаются изгнать из опен-сорс проекта контрибутора, который открыто выражает свое недовольство трансгендерными людьми.

http://questionablecontent.net/view.php?comic=2323
https://www.reddit.com/r/questionablecontent/comments/2i15pj/dear_everyone_who_ever_asks_about_claires_junk/
Срачь по поводу транс-гендерного персонажа в популярном веб-комиксе Questionable Сontent. Главный герой (натурал) знакомится с MtF и дальше по сюжету у них развиваются романтические отношения, от чего читателей комикса корежит, жжет и морозит и они пытаются допытать автора на тему "а ебаться то они как будут" (в комиксе тема романтических отношений и ебли практически основная, не считая обсуждения малоизвестных музыкальных групп). Автор всех посылает в хер с такими вопросами и утверждает что это не их дело.

В принципе, чем плоха дискриминация по любому признаку и зачем общество должно наказывать за такую дискриминацию - можно более-менее представить. У нас тут в РБ на такой почве один представитель электората избил гея, тот впал в кому и умер в больнице, гопник же вышел по амнистии. Т.е. типичный hate crime, сошедший с рук из-за одобрения общества.

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

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

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

PS: там еще в комментариях есть такое "Requesting contributions before being heard is a pretty low stab as well - you are basically saying that opinions gain worth with merit."

Я этого не понял вообще. Мнение людей надо учитывать без того, чтобы они доказали ценность своего мнения? По моему, это какой-то либеральный бред. Уровень доверия источнику информации - стандартный способ фильтрации мусора при работе с неполной и искаженной информацией из множества источников.
Monday, October 26th, 2015
2:50 pm
Так это, Новороссию закрыли или где?
Тут в интернетах регулярно пишут про "путин новороссию слил" и про то, как особо упертых полевых командиров разоружают-сажают-расстреливают из гранатометов.
При этом добровольцы (http://kenigtiger.livejournal.com/1611983.html http://fareastener.livejournal.com/170395.html) продолжают собирать бабло и ништяки для помощи тамошней армии.

Новости про "слив" вроде противоречивыми не выглядят, но в таком варианте получается, что помощь собирается для заведомо безнадежного дела - я не понимаю, как можно эффективно воевать в случае, когда вся цепочка командования от руководства страны до всяких там штабных генералов и полковников собирается продаться противнику или просто невменяемая на корню и не представляет, что происходит.
Friday, October 2nd, 2015
3:30 pm
Программистского шовинизма псто
Слушайте, а вот почему женщины-программисты (и некоторые мужчины) так не любят поисково-исследовательскую деятельность?

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

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

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

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

Более адекватных программистов такие вещи не пугают, но их стопорит на этапе "делать что-то новое - табу, велосипеды делать нельзя, инструменты менять нельзя, новые языки нельзя".
Friday, September 18th, 2015
8:38 pm
Thursday, September 17th, 2015
11:19 am
Ад монетизации интернета, кошмар для сторонников сетевой нейтральности
По мотивам ЖЖ придумалось, что их идею монетизации "заплати и не смотри на рекламу" надо расширить на весь интернет. Причем силами конечных юзерских ISP.
Сайты устанавливают в страничках плейсхолдеры типа "http://adserver.local/ad.png?x=..&y=..", днс у провайдера на это отвечает адресом локального сервера с рекламой, который раздает локализованную рекламу, затем рекламодатели платят провайдеру за показы. Юзера, чтобы не видеть рекламу, покупают у ISP более дорогие элитные тарифные планы. Полученные бабки раздаются сайтам :)
[ << Previous 20 ]
About LiveJournal.com