Forwarded from Ряды Фурье
У нас тут в рабочем чатике одна прекрасная дама спрашивала сильное противовирусное средство от гриппа. Дошли до рибавирина, потому что остальные слишком слабые, а этот работает. В общем, да, работает, но есть нюанс.
Очень ненаучно противовирусные делятся на три основные группы:
1. Таргетированные, например, против герпеса и ВИЧ. Они приостанавливают процесс, и пока вы едите такой препарат, вирус бесцельно бродит по организму и скучает. Либо это что-то таргетированное на конкретный белок. Например, против гепатита С есть софосбувир, который ищет один конкретный кусок кода вируса, затем ломает его специфическую полимеразу. В целом, очень везёт, когда получается настолько адресно выделить сигнатуру.
2. Разбавленный сахар: препараты без доказанной эффективности.
3. Рибавирин и его мрачные друзья.
Первые группа, скорее всего, вам не очень интересна. Она просто работает против конкретных вирусов или их конкретных механизмов. Например, утрируя, препараты могут пройтись по организму и налить суперклея во все свободные USB-порты. Вам они всё равно без надобности, раз пустые, а тот самый вирус свою флешку в клетку не вставит.
Вторая группа самая безопасная. Когда пациент срочно хочет лекарства, в разных культурах разные подходы. Вот на Мадагаскаре лучше всего работает толчёный лори, поэтому бедной скотинке приходится тяжко. А в современной России нужно пойти в аптеку и купить какую-нибудь замечательную гомеопатию или просто что-то, не показавшее эффективность. Пациент доволен, налог на незнание биологии заплатил, все счастливы. Плацебо помогает! Бывает аж до 18% случаев, главное верить.
Ну и остался рибавирин и его друзья. Это реально работающие противовирусные препараты. Мощные как удар серпом по яйцам. Они не могут выделить конкретную сигнатуру вируса, поэтому просто ломают вообще всё, что может этому вирусу пригодится. Рибавирин, например, ломает синтез РНК. Просто и со вкусом, заменяя каждый четвёртый TRUE в коде на NaN. Вместо синтеза РНК (в том числе вирусных) получается месиво.
Проблема только в том, что РНК нужны не только для вируса, а вообще для всего организма. Возможно, поэтому у него в побочках внезапная смерть: ну, знаете, это как взять работающий завод и просто вывести всех рабочих. Может, простоит так недели две. А может и нет.
Расчёт в том числе на то, что все эксепшны в хорошем коде успешно обрабатываются, а в intro64k вируса — нет.
Второй нюанс в том, что после рибавирина нужно будет 6 месяцев пользоваться противозачаточным, потому что если тот прикол с заменёнными в коде TRUE на NaN пытаться мержить в ребёнка, оно, вероятно, смержится и скомпилируется. Но результат вас очень удивит.
Поэтому не жрите таблетки без врача. Примера с ИПП должно было хватить, правда? И в следующий раз, когда ваши друзья захотят лечить грипп противовирусными, помните, что гомеопаты заботятся об их здоровье!
Очень ненаучно противовирусные делятся на три основные группы:
1. Таргетированные, например, против герпеса и ВИЧ. Они приостанавливают процесс, и пока вы едите такой препарат, вирус бесцельно бродит по организму и скучает. Либо это что-то таргетированное на конкретный белок. Например, против гепатита С есть софосбувир, который ищет один конкретный кусок кода вируса, затем ломает его специфическую полимеразу. В целом, очень везёт, когда получается настолько адресно выделить сигнатуру.
2. Разбавленный сахар: препараты без доказанной эффективности.
3. Рибавирин и его мрачные друзья.
Первые группа, скорее всего, вам не очень интересна. Она просто работает против конкретных вирусов или их конкретных механизмов. Например, утрируя, препараты могут пройтись по организму и налить суперклея во все свободные USB-порты. Вам они всё равно без надобности, раз пустые, а тот самый вирус свою флешку в клетку не вставит.
Вторая группа самая безопасная. Когда пациент срочно хочет лекарства, в разных культурах разные подходы. Вот на Мадагаскаре лучше всего работает толчёный лори, поэтому бедной скотинке приходится тяжко. А в современной России нужно пойти в аптеку и купить какую-нибудь замечательную гомеопатию или просто что-то, не показавшее эффективность. Пациент доволен, налог на незнание биологии заплатил, все счастливы. Плацебо помогает! Бывает аж до 18% случаев, главное верить.
Ну и остался рибавирин и его друзья. Это реально работающие противовирусные препараты. Мощные как удар серпом по яйцам. Они не могут выделить конкретную сигнатуру вируса, поэтому просто ломают вообще всё, что может этому вирусу пригодится. Рибавирин, например, ломает синтез РНК. Просто и со вкусом, заменяя каждый четвёртый TRUE в коде на NaN. Вместо синтеза РНК (в том числе вирусных) получается месиво.
Проблема только в том, что РНК нужны не только для вируса, а вообще для всего организма. Возможно, поэтому у него в побочках внезапная смерть: ну, знаете, это как взять работающий завод и просто вывести всех рабочих. Может, простоит так недели две. А может и нет.
Расчёт в том числе на то, что все эксепшны в хорошем коде успешно обрабатываются, а в intro64k вируса — нет.
Второй нюанс в том, что после рибавирина нужно будет 6 месяцев пользоваться противозачаточным, потому что если тот прикол с заменёнными в коде TRUE на NaN пытаться мержить в ребёнка, оно, вероятно, смержится и скомпилируется. Но результат вас очень удивит.
Поэтому не жрите таблетки без врача. Примера с ИПП должно было хватить, правда? И в следующий раз, когда ваши друзья захотят лечить грипп противовирусными, помните, что гомеопаты заботятся об их здоровье!
⚡8
Forwarded from Hacker News
The role of cat eye narrowing movements in cat–human communication (2020) (Score: 151+ in 10 hours)
Link: https://readhacker.news/s/5FKM3
Comments: https://readhacker.news/c/5FKM3
Link: https://readhacker.news/s/5FKM3
Comments: https://readhacker.news/c/5FKM3
Nature
The role of cat eye narrowing movements in cat–human communication
Scientific Reports - The role of cat eye narrowing movements in cat–human communication
⚡3
memory heap
#sparc_book Выпустил релиз 1.1.0 книги "Автомато-программато-компарадио-кружок". Список изменений и PDF-файл книги с моей цифровой подписью доступен по ссылке: https://github.com/artyom-poptsov/SPARC/releases/tag/v1.1.0
Моя книга обновилась в GNU Guix. Поставить/обновить можно командой:
#sparc_book #gnu #guix
guix install book-sparc
#sparc_book #gnu #guix
⚡5
#norwegian_language
"Hyggelig å møte deg." — "Nice to meet you" — "Рад(а) встречи (с тобой)", или "приятно познакомиться".
"Hyggelig" — nice, pleasant, enjoyable, pleasing.
"å møte" — "to meet" — "встречаться", "встретиться"
"deg" — "yourself" — "тебя".
Кстати, в Нижнем Новгороде как-то раз был на концерте группы "Hyggelig" — теперь я знаю, откуда они взяли название и как оно переводится.
"Hyggelig å møte deg." — "Nice to meet you" — "Рад(а) встречи (с тобой)", или "приятно познакомиться".
"Hyggelig" — nice, pleasant, enjoyable, pleasing.
"å møte" — "to meet" — "встречаться", "встретиться"
"deg" — "yourself" — "тебя".
Кстати, в Нижнем Новгороде как-то раз был на концерте группы "Hyggelig" — теперь я знаю, откуда они взяли название и как оно переводится.
⚡2
memory heap
Photo
Модель. Не очень удобно конечно получилось, что шляпка гладкая. Но обработка метчиками и плашками для нарезки резьбы М12 позволило загручивать барашек без особого труда. Под шляпку думаю ещё вырезать шайбу из тонкой резины для герметичности.
#freecad
#freecad
⚡3
Обнаружил недавно проблему в Guile-DSV, что библиотека не проверяет консистентность длины строк табличных данных. Это не обязательно является проблемой в случае чтения данных, однако при обработке таблиц (например, при форматированном выводе на экран) это приводило к трудно осмысляемым ошибкам вроде:
Сейчас я исправил эту недоработку и добавил для процедуры
По ходу дела выяснилось также, что парсер RFC 4180 похоже неправильно парсит некоторые сложные поля, где внутри поля содержится знак-разделитель. Это ещё требует дополнительного исследования.
И ещё выяснилось, что в Guile-SMC оказывается неправильно считаются строки в контексте
#guile #dsv #smc #projects
$ echo -e "a,b,c\nd,e\n" | ./pre-inst-env ./utils/dsv
Backtrace:
In ice-9/boot-9.scm:
1752:10 7 (with-exception-handler _ _ #:unwind? _ # _)
In unknown file:
6 (apply-smob/0 #<thunk 7f1b3a516300>)
In ice-9/boot-9.scm:
724:2 5 (call-with-prompt _ _ #<procedure default-prompt-handle…>)
In ice-9/eval.scm:
619:8 4 (_ #(#(#<directory (guile-user) 7f1b3a519c80>)))
In utils/dsv:
272:8 3 (main _)
In dsv/table.scm:
460:21 2 (format-table (("a" "b" "c") ("d" "e")) () #:width _ # _ …)
347:27 1 (table-wrap (("a" "b" "c") ("d" "e")) _ #:width _ # _ # _)
241:23 0 (table-wrap-row _ _)
dsv/table.scm:241:23: In procedure table-wrap-row:
In procedure car: Wrong type argument in position 1 (expecting pair): ()
Сейчас я исправил эту недоработку и добавил для процедуры
dsv->scm опцию #:validate?, которая по-умолчанию выставлена в #f (false). Если же выставить её в #t (true), то тогда ошибка будет более понятной. Вот пример на тех же тестовых данных:$ echo -e "a,b,c\nd,e\n" | ./pre-inst-env ./utils/dsv
Backtrace:
In ice-9/boot-9.scm:
1752:10 9 (with-exception-handler _ _ #:unwind? _ # _)
In unknown file:
8 (apply-smob/0 #<thunk 7f1f270af300>)
In ice-9/boot-9.scm:
724:2 7 (call-with-prompt _ _ #<procedure default-prompt-handle…>)
In ice-9/eval.scm:
619:8 6 (_ #(#(#<directory (guile-user) 7f1f270b2c80>)))
In utils/dsv:
272:8 5 (main _)
In dsv/cli/common.scm:
144:38 4 (print-file #<input: file 0> unix "" _ #:numbering? _ # …)
In dsv/unix.scm:
81:19 3 (dsv->scm _ #:debug-mode? _ #:delimiter _ #:validate? _ …)
In smc/fsm.scm:
469:37 2 (_ #<fsm current-state: add_row statistics: 11/5 7f1f1…> …)
426:22 1 (_ #<fsm current-state: add_row statistics: 11/5 7f1f1…> …)
In dsv/fsm/dsv-context.scm:
100:2 0 (throw-row-length-error _ _ _ _)
dsv/fsm/dsv-context.scm:100:2: In procedure throw-row-length-error:
Inconsistent row length on line 10: expected 3, got 2 #<input: file 0> 10 0 ("d" "e") #<char-context 7f1f1d41a8c0>
По ходу дела выяснилось также, что парсер RFC 4180 похоже неправильно парсит некоторые сложные поля, где внутри поля содержится знак-разделитель. Это ещё требует дополнительного исследования.
И ещё выяснилось, что в Guile-SMC оказывается неправильно считаются строки в контексте
functional/char.#guile #dsv #smc #projects
GitHub
GitHub - artyom-poptsov/guile-dsv: Delimiter-separated values (DSV) format parser for GNU Guile.
Delimiter-separated values (DSV) format parser for GNU Guile. - artyom-poptsov/guile-dsv
⚡1
Обед: чёрный рис "Неро" + коричневый длиннозёреый рис + красный рис + кумин (зира) + помидора + болгарский перец + перец чили + укроп + петрушка + соль + вода.
#vegan_food
#vegan_food
⚡10
memory heap
По ходу дела выяснилось также, что парсер RFC 4180 похоже неправильно парсит некоторые сложные поля, где внутри поля содержится знак-разделитель. Это ещё требует дополнительного исследования.
А нет, просто сам файл некорректный. LibreOffice Calc тоже этот файл открывает с непостоянным количеством столбцов.
⚡3
Forwarded from Hacker News
Intelligent Brains Take Longer to Solve Difficult Problems (Score: 154+ in 7 hours)
Link: https://readhacker.news/s/5FYAP
Comments: https://readhacker.news/c/5FYAP
Link: https://readhacker.news/s/5FYAP
Comments: https://readhacker.news/c/5FYAP
Berliner Institut für Gesundheitsforschung - Charité und Max-Delbrück-Centrum
Intelligent brains take longer to solve difficult problems - News - BIH at Charité
Do intelligent people think faster? Researchers at the BIH and Charité – Universitätsmedizin Berlin, together with a colleague from Barcelona, made the surprising finding that participants with higher intelligence scores were only quicker when tackling simple…