1.83K subscribers
3.3K photos
132 videos
15 files
3.58K links
Блог со звёздочкой.

Много репостов, немножко программирования.

Небольшое прикольное комьюнити: @decltype_chat_ptr_t
Автор: @insert_reference_here
Download Telegram
Гениальный план:

1. Приехать на сходку друзей.
2. Заснуть.
11😁6
😒🤚 Засос на шее
😒🤚 Засос на руке
😏👉 Засос на соске
🥰6🤮6🥴5🤔21😁1😱1💩1
Forwarded from Segment@tion fault
В новом Rust-Clippy наконец есть lint format_push_string, который меня бьет по рукам за дурную привычку - конкатенацию String и &format!()

При таком подходе format!() выделяет память на отдельную строку, потом прибавляет её к имеющейся и освобождает память, что нехорошо. А хорошо использовать write!(). Чего и вам советую

Вот такими мелочами среднестатистический растокод работает быстрее, чем среднестатистический сишный. Потому что одно дело писать код, а другое - писать его хорошо. Но в сишке по рукам эффективно бить некому.
👍72
👎1
This media is not supported in your browser
VIEW IN TELEGRAM
Техно без компьютера. Авторы: klangphonics

Теперь мне нужна часовая версия
r/#nextfuckinglevel
👍4🔥4🤯1
r/ретранслятор
Техно без компьютера. Авторы: klangphonics Теперь мне нужна часовая версия r/#nextfuckinglevel
This media is not supported in your browser
VIEW IN TELEGRAM
Ещё один техно-шедевр с использованием бытовых предметов от тех же ребят.

Я: *начинаю уборку дома*
Пять минут спустя:
r/#nextfuckinglevel
👍8
👎1
☘️Британские учёные доказали, что люди славные котики
Что я наисследовала, пока изучала общение людей с голосовыми помощниками

Если вдруг вы помните, я планировала написать диплом об особенностях общения живых мясных людей с голосовыми помощниками. И даже собирала для этого дела респондентов — людей, которые общаются со своими Алисами, Марусями и Сири — или наоборот, из принципа не общаются. Щас расскажу, что я узнала.

☘️
Изначально у меня была идея выявить, что же такого в действиях Алисы заставляет пользователей воспринимать её как человека и так по-человечески на неё реагировать: например, защищать от обидчиков, благодарить или спрашивать, как у нее дела. Но с этой затеей меня остановила ноучница, потому что а) с Алисой всё понятно — она скушала много человеческих текстов, и на них хорошо научилась имитировать произвольный диалог [Вот тут можно об этом у Яндекса почитать]. Это и заставляет. б) интереснее будет проверить, что именно внутри людей сподвигает их очеловечивать железяку — какие их личностные особенности. в) на психфаке в дипломе нада исследовать людей, не-людей — ненада:)

☘️
Как говорится, у нас было 40 респондентов, 3 методики, анкета на 130+ вопросов и несколько гипотез. Не то, чтобы этого было достаточно для нормального исследования, но если решил защищать диплом, иди в своем решении до конца.

Короче, я придумала 15 утверждений, которые с разных сторон показывают особенности общения с голосовым помощником: нравится ли людям с ним болтать, испытывают ли они вину за грубость, важно ли для них, какое «мнение» сложится о них у голосового помощника и пр. — и попросила респондентов оценить, насколько они согласны или нет с этими утверждениям. А потом я замерила их уровень эмоционального интеллекта, сопереживания и социального самоконтроля по готовым методикам. И посмотрела, насколько эти штуки взаимосвязаны.

Вот что получилось:

🔹люди с высоким уровнем сопереживания чаще стремятся защищать голосового помощника, если кто-то ему грубит при них. А ещё всегда извиняются перед своими Алисами, если нагрубили сами. С этого вопроса, кстати, идея исследования и родилась.
Я всё хотела понять, что же в действиях Алисы заставляет людей защищать её — хотя очевидно же, что она, бесчувственная железяка, в защите не нуждается. Ну вот и ответ. Дело не в действиях Алисы, а в том, что люди — хорошие и сопереживающие котики. Теперь у меня есть данные, которые это подтверждают!

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

🔹зато большое значение имеет уровень контроля экспрессии — насколько хорошо человек контролирует проявление своих эмоций. Так вот. Людей, которые хорошо конролируют свои эмоции бесит, когда голосовой помощник выходит за рамки делового общения — шуточки там шутит, дерзит. А действительно, хули это Сири себе позволяет, если я — нет?!

🔹а ещё людей с высоким уровнем контроля экспресии тоже бесит, когда кто-то грубит голосовым помощникам при них. Но видимо, не потому что они такие сопереживающие, а потому что ожидают от людей того же, что делают сами — контроля [blyat’] своих [suka!] эмоций.

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

🔹пол не влияет вообще никак.

🔹а вот отсутствие отношений/брака влияет: люди, у которых нет партнёра, чаще болтают с голосовыми помощниками просто так. Но испытывают стыд и неловкость, если железяка делает им комплименты [это очень логично, но всё равно от этих данных мне стало немного грустно]

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

Такие дела. Надеюсь, было познавательно:)

[Передаю много больших спасибов всем 40 человекам, которые ответили на мою анкету.
И особенно большое спасибо Саше, который посчитал мне эти данные своим питоном
]
1🤔1
Statement of the day: (|_, ()| ())(while true {});
Вы спросите: what???, а я отвечу:

Это MRE (minimal reproducible example) который показывает неправильную диагностику в компиляторе:

error[E0308]: `if` and `else` have incompatible types
--> ./t.rs:2:18
|
2 | (|_, ()| ())(while true {});
| ^^^^^^^^^^^--
| | |
| | expected because of this
| expected `()`, found `!`
|
= note: expected unit type `()`
found type `!`

В реальном коде ошибка ещё страннее выглядела X)
#prog #rust #rustlib

Reinventing Rust formatting syntax — заметка о fmtools, библиотеке, которая позволяет использовать в форматных строках произвольные выражения вместо просто идентификаторов и включать в них if-ы.

Пример

До:

let power = 0.5;

print!("At ");
if power >= 1.0 {
print!("full");
} else {
print!("{:.0}%", power * 100.0);
}
print!(" power");

После:

let power = 0.5;

fmtools::println!("At "
if power >= 1.0 { "full" }
else { {power * 100.0:.0}"%" }
" power");
👍3
Ещё одно классное:

(|_, ()| ())([return, ()]);

На этот раз аж ICE (internal compiler error)!

А основная причина скорее всего всё та-же: некорректный код в диагностике неправильных аргументов функции.
😱3
Forwarded from ozkriff.games 🦀 (ozkriff🇺🇦)
# lib.rs Version Pages Now Link to Git Commits

When you publish a crate, Cargo makes a note of its git repository commit hash and includes it in the crates-io crate tarball. A few days ago Kornel announced that lib.rs started exposing this information, nice!

Also, check out https://lib.rs/stats if you haven't seen it yet, it has a bunch of cool graphs.
👍2
#prog #rust #article

Статья в двух частях о rust-minidump — библиотеки для разбора minidump, разработанного в microsoft портируемого формата для хранения дампов памяти. К слову, именно она сейчас используется по умолчанию в Firefox в проде на протяжении где-то шести месяцев.

Everything Is Broken: Shipping rust-minidump at Mozilla – Part 1

В это части, в частности, рассказывается, зачем вообще решили делать RIIR, когда есть Breakpad от Google:

> Meanwhile, Google has kind-of moved on to Crashpad. I say kind-of because there’s still a lot of Breakpad in there, but they’re more interested in building out tooling on top of it than improving Breakpad itself. Having made a few changes to Breakpad: honestly fair, I don’t want to work on it either. Still, this was a bit of a problem for us, because it meant the project became increasingly under-staffed.

<...>

> Why is working on Breakpad so miserable, you ask?

> Parsing and analyzing minidumps is basically an exercise in writing a fractal parser of platform-specific formats nested in formats nested in formats. For many operating systems. For many hardware architectures. And all the inputs you’re parsing and analyzing are terrible and buggy so you have to write a really permissive parser and crawl forward however you can.

<...>

> Hey, you know who has a lot of experience dealing with really complicated permissive parsers written in C++? Mozilla! That’s like the core functionality of a web browser.

> Do you know Mozilla’s secret solution to writing really complicated permissive parsers in C++?

> We stopped doing it.

> We developed Rust and ported our nastiest parsers to it.

Fuzzing rust-minidump for Embarrassment and Crashes – Part 2

Во второй части рассказывается о том, как фаззинг сумел найти кучу багов, и подробно разбираются парочка из них (включая тот, который был сделан и Breakpad).
👍4
Occult club registration rejected after complaint it may summon Satan to University of Adelaide

> "Even if we did want to summon Satan, it's not against university or union policy to do so, so it's still not really grounds to reject us," Adelaide University Occult Club president Ashley Towner said.

теперь это моя любимая новость
🔥5🤔1
Быть Антоном — это получать от абсолютно постороннего человека вопрос:
— Вы Металлику слушаете?