После вставки зубного импланта под общим наркозом, доктор сутки запретил использовать в коде unsafe blocks.
😁35💩5👍4🔥1
Я (к счастью) не настоящий async-програмер и недавно попал на то, что Future::poll в Rust вызывается не только вейкером. Не смотря на то, что вы явно сказали рантайму, что ушли в Pending и положили свой waker куда следует, поскольку рантаймы пишутся как и все остальное, тоесть через жопу, в некоторых случаях вашу фьючу будут дёргать просто так.
"Ты там ещё живая?" - спрашивает рантайм. Когда и как он это спрашивает - отследить сложно, поведение слабо документировано, не ловится стандартными тестами и отличается от рантайма к рантайму. Фьюча прекрасно работала годами в проде, но вдруг на новом проекте при определённых условиях стала "залипать", по причине того, как оказалось, что отправляла куда следует свой Waker несколько раз.
Логика здравого смысла подсказывает, что если фьюча ушла спать, то её дёргать не надо, но стандарт говорит чётко - не надо, но не запрещено. Поэтому стандарты лучше помнить, чтобы понимать где и почему.
Даже если оно нелогично.
"Ты там ещё живая?" - спрашивает рантайм. Когда и как он это спрашивает - отследить сложно, поведение слабо документировано, не ловится стандартными тестами и отличается от рантайма к рантайму. Фьюча прекрасно работала годами в проде, но вдруг на новом проекте при определённых условиях стала "залипать", по причине того, как оказалось, что отправляла куда следует свой Waker несколько раз.
Логика здравого смысла подсказывает, что если фьюча ушла спать, то её дёргать не надо, но стандарт говорит чётко - не надо, но не запрещено. Поэтому стандарты лучше помнить, чтобы понимать где и почему.
Даже если оно нелогично.
👍27👎3
Segment@tion fault
Поскольку все наши внутренние "базы" - по сути просто более крутая логика над базами обычными, решили перевести всё на Postgresql extensions. Конечно же в наше время их можно (и нужно) писать на Rust, вот ссылка на тулкит. https://github.com/tcdi/pgx
Прошло два года, мне срочно понадобился кастомный extension и я вспомнил про pgx. С тех пор он успел переименоваться в pgrx, получил поддержку Postgres 16 и в целом очень улучшился.
В общем написание функции под Postgres примерно заняло время, необходимое на написание самой функции. Весь boilterplate сделали за меня. Очень рекомендую.
https://github.com/pgcentralfoundation/pgrx
В общем написание функции под Postgres примерно заняло время, необходимое на написание самой функции. Весь boilterplate сделали за меня. Очень рекомендую.
https://github.com/pgcentralfoundation/pgrx
GitHub
GitHub - pgcentralfoundation/pgrx: Build Postgres Extensions with Rust!
Build Postgres Extensions with Rust! Contribute to pgcentralfoundation/pgrx development by creating an account on GitHub.
🔥10👍5
Снова эти пишут
Требуют 1300 долларов в биткоинах. Иначе говорят пошлют меня голого "одним кликом мыши".
Сразу палятся на разводняке. Ни один хакер мышью пользоваться не будет. Фу. Это даже хуже, чем то видео, которое они рассылать собираются.
I made a vidеo showing how you sаtisfy yourself in the left half of the screen, and in the right half you see the video that you watched.
With one click of the mouse, I can send this vidеo to all your emаils and contacts on social networks.
Требуют 1300 долларов в биткоинах. Иначе говорят пошлют меня голого "одним кликом мыши".
Сразу палятся на разводняке. Ни один хакер мышью пользоваться не будет. Фу. Это даже хуже, чем то видео, которое они рассылать собираются.
😁67👍4
Пока вы там боялись третьей мировой, виндоузятники попытались устроить конец света самостоятельно.
😁54👍2👎1
Как-то давным-давно, может лет 8 назад, Intel нашла очередную дырку в своих процесорах и вставила в микрокод апдейт, который замедлял все раза в полтора.
Я тогда микрокод загружать запретил, а недавно заметил, что так и не разрешил. И конца света не произошло. Само собой, речь не о серверах.
А вы грузите на десктопах апдейты микрокода?
Я тогда микрокод загружать запретил, а недавно заметил, что так и не разрешил. И конца света не произошло. Само собой, речь не о серверах.
А вы грузите на десктопах апдейты микрокода?
👍8😁7💩2🔥1
Когда в проекте встречаются профессиональные программисты и математики, коллеги часто не понимают друг друга, потому что первые забыли математическую запись ещё со школы, а вторые не умеют быстро читать код.
Хорошая статья, объясняющая математическую запись через код (пардон за JS).
https://runjs.app/blog/mathematical-notation-for-javascript-developers-explained
Хорошая статья, объясняющая математическую запись через код (пардон за JS).
https://runjs.app/blog/mathematical-notation-for-javascript-developers-explained
runjs.app
Mathematical Notation for JavaScript Developers Explained
Find out how to translate mathematical notation to JavaScript. This article explains some common mathematical concepts and how these can be implemented in JavaScript.
😁11👍6🔥5
Самые популярные инструменты для вскрытия корпусов гаджетов на защелках (по мере убывания):
- кредитная карта
- другая кредитная карта
- медиатор от гитары
- хер с ними с царапинами, нож кухонный
- профессиональный набор, который лежит хер знает где
- кредитная карта
- другая кредитная карта
- медиатор от гитары
- хер с ними с царапинами, нож кухонный
- профессиональный набор, который лежит хер знает где
😁50👍9🔥6
Обсуждениями Олимпиады навеяно. Мы когда-то хотели назвать компанию "Dionis Labs"
- красиво
- правдиво
- красиво
- правдиво
😁20🔥3👍2
Как вы обычно хороните ненужный Result?
Anonymous Poll
50%
let _ = f()
14%
f().ok()
2%
drop(f())
3%
#[allow(unused_must_use)]
14%
всегда как-то обрабатываю
16%
никак, плевать на warnings
👍4😁2
Сейчас во всех мессенджерах, что на десктопе, что на телефонах, есть функция "copy text", которая копирует всё сообщение. Тем не менее, до сих пор есть люди, которые отправляют credentials в одном сообщении, или еще лучше "пароль: secret".
У меня вопрос к таким людям - они реально думают, что если перед паролем не написать "пароль: ", то работа встанет, пароль не сработает, мир рухнет?
У меня вопрос к таким людям - они реально думают, что если перед паролем не написать "пароль: ", то работа встанет, пароль не сработает, мир рухнет?
👍19👎5😁5💩5