es
Feedback
Блог*

Блог*

Ir al canal en Telegram

Блог со звёздочкой. Много репостов, немножко программирования. Небольшое прикольное комьюнити: @decltype_chat_ptr_t Автор: @insert_reference_here

Mostrar más
1 927
Suscriptores
+224 horas
+47 días
+330 días
Archivo de publicaciones
Что ж поучаствовал я в этом празднике жизни. Рассказываю: Как понял: у парней есть сервис на питоне, сервис хранит, скажем так, таблицу фильтрации трафика для файервола. Эта таблица раскатывается на сервера облака, чтобы каждый хост мог посылать/получать только пакеты от доверенных хостов. Так как данное решение не очень быстрое они решили переписать его на что-то нативное, раст выбрали из-за того, что при раскатывании на 100500 хостов лучше иметь гарантии безопасности, чем писать на плюсах. Само собеседование классиченкий клон FAANG - три часа пытаемся решать задачки на алгоритмы в блокноте, отлаживая результат творчества в уме на собственных примера.

Вы, вероятно, видели новость о том, что Яндекс ищет разработчиков на вакансию, связанную с #rust? Так вот вам отзыв от человека, который там был и проходил собес

Провайдер подключает только через своё оборудование
Провайдер подключает только через своё оборудование

#meme

#game #psy #article t.me/hyperduh/222

#game #psy

Repost from Гипермда
В MIT Technology Review хорошее о наболевшем — я регулярно писал о различных исследованиях влияния видеоигр на наше здоровье и навыки, чаще всего в ключе "здесь плохая методология и легкие для вооружения в спорах выводы". Оксфорд приходит к нам с таким выводом: мы вряд ли вообще в ближайшем будущем поймем, насколько сильно видеоигры влияют на нас и влияют ли вообще. В последнем исследовании на эту тему не выявили вообще никаких значительных корреляций между психическим здоровьем и видеоиграми. Причем здесь даже выборка солидная — 38 935 игроков и 7 игр: Animal Crossing: New Horizons, Apex Legends, Eve Online, Forza Horizon 4, Gran Turismo Sport, Outriders, The Crew 2. Данные о проведенном в играх времени предоставили издатели, что весьма нетипично, так как обычно полагаются на рассказы самих игроков — их спрашивали о переживаниях, мотивациях и ощущениях. Какая-то заметная связь между состоянием испытуемых и временем в игре обнаруживалась, только если они играли на 10 часов в день больше обычного. Вроде как-то не очень круто это все звучит, мы уже хотели бы попривыкнуть к приободряющим исследованиям, когда ученые говорят, что от игр улучшается когнитивка, такой-то облом. Но на самом деле, это крайне полезное исследование — на выборке из почти 40 000 человек, проводящих время в совершенно разных видеоиграх, мы видим, что нет никакого негативного влияния игр на наше состояние; методологически это одно из наиболее крепких исследований. Метаисследование 2020 года, перепроверившее 28 стадисов прошлых лет, не обнаружило никакой связи между жестокими видеоиграми и агрессией. В сумме все это значит, что устаревшая теоретическая база, на которую опирается ВОЗ, внесшая в 2019 году "игровые расстройства" в классификацию заболеваний, как и китайское правительство со своим ограничениями, ничего не стоит. Понятно, что игры и наше социальное взаимодействие в них может быть разным, в том числе травмирующим, но на обобщающий вопрос "вредны ли для нас видеоигры" единственным ответом может быть "это тупой вопрос".

#prog #rust #db #rustlib У Diesel вышла версия 2.0!

В СМЫСЛЕ УЖЕ СЕНТЯБРЬ

#prog #cpp Если вам по каким-то причинам нужно сделать порядковый индекс итерации в range-based for loop и при этом нету возможности или желания использовать ranges, то можно накостылить такое: size_t i = 0; for (auto & elem : collection) { struct IncrementOnDrop { size_t old; size_t& assign_to; IncrementOnDrop(size_t& i): old(i), assign_to(i) {} ~IncrementOnDrop() { assign_to = old + 1; } } inc{i} // каким бы сложным не был поток управления // в теле цикла, i будет инкрементировано всегда // в конце итерации, когда будет вызван // деструктор inc ... } Разумеется, не обязательно объявлять IncrementOnDrop по месту, но если это требуется всего в одном месте — почему нет? Ещё может возникнуть вопрос, почему не что-то попроще в духе: struct IncrementOnDrop { size_t& i; ~IncrementOnDrop() { ++i; } } inc{i}; Это тоже работает, но в этом случае, если i меняется в теле цикла, число итераций будет подсчитано неверно. Вариант выше защищает от этого.

#prog #rust #rustlib #article Как известно, в настоящий момент трейты в Rust не могут иметь асинхронные методы. Причины для этого описаны в статье Никитоса Niko Matsakis why async fn in traits are hard, и если коротко, они связаны с кучей нерешённых вопросов и недопиленных фич — это примерно так же, как в Rust до версии 1.26.0 нельзя было нормально вернуть из функции замыкание. Для обхода этой проблемы есть несколько путей, которые так или иначе сводятся к стиранию типов. Первый — как и в случае с замыканиями, просто забоксить футуру. Это именно то, что делает async-trait. Второй путь — разместить футуру в некоем байтовом массиве, который хранится инлайн, а не в куче. Именно это делают stackfuture и name-it. Вторая библиотека вычисляет размер футуры и хранит его в байтовом массиве в точности нужного размера, а также (не) реализует все те же авто-трейты, что и исходная футура. Первой нужно наперёд указывать размер хранилища под футуру, но зато она не полагается на макросы для работы. (thanks @goldsteinq, которому, кстати, и принадлежит авторство второй библиотеки)

#article Не трогайте разработчиков. Отстаньте. Просто не беспокойте Или про процесс разработки, который хорошо работает на практике, но сложно повторить. Комментарии тоже ценны.

Интересно, выходит, приличную долю из этого я и так знаю

#prog #cpp C++ iceberg fouronnes.github.io/cppiceberg

#prog #haskell #abnormalprogramming github.com/dmjio/type-level-json

Repost from N/a
⚡️Горбачёв анонсировал дебаты с Дарьей Дугиной

я, когда не прогаю: блин, хочу, но таааак лень, пойду на ютубчик чтоли я, когда прогаю: блин в смысле уже 2 часа прошло

#prog #meme Какая же жиза