годное сравнение. люблю этот блог
== Parallel Nested For-Loops in Python
https://superfastpython.com/parallel-nested-for-loops-in-python/
== Parallel Nested For-Loops in Python
https://superfastpython.com/parallel-nested-for-loops-in-python/
Super Fast Python
Parallel Nested For-Loops in Python - Super Fast Python
You can convert nested for-loops to execute concurrently or in parallel in Python using thread pools or process pools, depending on the types of tasks that are being executed. In this tutorial, you will discover how to change a nested for-loop to be concurrent…
Forwarded from это канал Миши Петрова
👨💻Способ решить мучающий вас вопрос
1. Формулируете вопрос.
2. Меняете все слова в нем на аналогичные
Например, вопрос: как мне дальше развивать блог?
Меняем слова:
как = что именно
мне = нам
дальше = в ближайшие недели
развивать = делать
блог = социальные сети
Что именно нам в ближайшие недели делать в социальных сетях. Не прям помогает, но зато меняет фокус на конкретное время, и вопрос становится проще, ибо в ближайшее время я знаю чем нам заняться.
Вопрос: как мне зарабатывать больше денег
как = чем именно
мне = моему мозгу
зарабатывать = получать
больше = значительнее
денег = ресурсов
О, интересно вышло. Этот вопрос у меня четвертая попытка. И вот тут круто переворачивает фокус с того, как зарабатывать деньги, на то, что делать, после чего мозг будет больше в ресурсе. А тогда полагаю, и денег будет больше.
В общем пробуйте (давайте прям в комменты), в любом случае интересное упражнение, ибо может дать другую перспективу на вашу проблему.
1. Формулируете вопрос.
2. Меняете все слова в нем на аналогичные
Например, вопрос: как мне дальше развивать блог?
Меняем слова:
как = что именно
мне = нам
дальше = в ближайшие недели
развивать = делать
блог = социальные сети
Что именно нам в ближайшие недели делать в социальных сетях. Не прям помогает, но зато меняет фокус на конкретное время, и вопрос становится проще, ибо в ближайшее время я знаю чем нам заняться.
Вопрос: как мне зарабатывать больше денег
как = чем именно
мне = моему мозгу
зарабатывать = получать
больше = значительнее
денег = ресурсов
О, интересно вышло. Этот вопрос у меня четвертая попытка. И вот тут круто переворачивает фокус с того, как зарабатывать деньги, на то, что делать, после чего мозг будет больше в ресурсе. А тогда полагаю, и денег будет больше.
В общем пробуйте (давайте прям в комменты), в любом случае интересное упражнение, ибо может дать другую перспективу на вашу проблему.
👍1
годнота
== ЗАВЫШЕННАЯ ПЛАНКА? Реальный список требований к junor, middle, senior и stаff программистам в США
https://youtu.be/-xyPR8uHAkA
== ЗАВЫШЕННАЯ ПЛАНКА? Реальный список требований к junor, middle, senior и stаff программистам в США
https://youtu.be/-xyPR8uHAkA
== может ли ChatGPT заменить программиста
https://tproger.ru/articles/mozhet-li-chatgpt-zamenit-bjekend-razrabotchikov/
А ChatGPT больше похоже на игрушку, используя которую можно узнать хорошую начальную базу по какой-то теме, но не более того.
https://tproger.ru/articles/mozhet-li-chatgpt-zamenit-bjekend-razrabotchikov/
Tproger
Заменит ли ChatGPT бэкенд-разработчиков
Рассуждаем, сможет ли нейросеть ChatGPT заменить бэкенд-разработчиков и как она используется в LeetCode, Stack Overflow и Spring Framework.
== полезный сайт для обучения гиту
https://learngitbranching.js.org/
https://learngitbranching.js.org/
learngitbranching.js.org
Learn Git Branching
An interactive Git visualization tool to educate and challenge!
👍1
маст юз
== How to Get a List of All Files in a Directory With Python
https://realpython.com/get-all-files-in-directory-python/
== How to Get a List of All Files in a Directory With Python
https://realpython.com/get-all-files-in-directory-python/
Realpython
How to Get a List of All Files in a Directory With Python – Real Python
In this tutorial, you'll be examining a couple of methods to get a list of files and folders in a directory with Python. You'll also use both methods to recursively list directory contents. Finally, you'll examine a situation that pits one method against…
BufWriter<Master<'_>>
годнота == ЗАВЫШЕННАЯ ПЛАНКА? Реальный список требований к junor, middle, senior и stаff программистам в США https://youtu.be/-xyPR8uHAkA
Не дурно они так денег хотят с человека... $1450 - $8 500 #ячемтонетемзанят
== Курс FAANGme
https://www.faang.me/
== Курс FAANGme
https://www.faang.me/
faang.me
FAANGme
мало, но норм
== A crash course in Python “comprehensions” and “generators”
https://medium.com/pythoniq/a-crash-course-in-python-comprehensions-and-generators-f069c8f8ca38
== A crash course in Python “comprehensions” and “generators”
https://medium.com/pythoniq/a-crash-course-in-python-comprehensions-and-generators-f069c8f8ca38
Medium
A crash course in Python “comprehensions” and “generators”
Master them in 20 minutes. Use them every day.
сеть... всегда сеть... самое не оптимизированное место
== I/O is no longer the bottleneck
https://benhoyt.com/writings/io-is-no-longer-the-bottleneck/
== I/O is no longer the bottleneck
https://benhoyt.com/writings/io-is-no-longer-the-bottleneck/
Benhoyt
I/O is no longer the bottleneck
In 2022, disk I/O is very fast, and not usually the performance bottleneck in programs. This article digs into some numbers.
== Who controls parallelism? A disagreement that leads to slower code
https://pythonspeed.com/articles/concurrency-control/
https://pythonspeed.com/articles/concurrency-control/
Python⇒Speed
Who controls parallelism? A disagreement that leads to slower code
The libraries you’re using might be running more threads than you realize—and that can mean slower execution.
простенькая статья о поиске аномалий
== Как из данных узнавать о том, что в продукте что-то пошло не по плану
https://habr.com/ru/post/704988/
== Как из данных узнавать о том, что в продукте что-то пошло не по плану
https://habr.com/ru/post/704988/
Хабр
Как из данных узнавать о том, что в продукте что-то пошло не по плану
Привет! Меня зовут Дима Дынников, я руководитель команды продуктовой аналитики в Профи. Расскажу, как мы ищем поведенческие аномалии в продукте и зачем это вообще нужно делать. Что такое аномалии...
Forwarded from Библиотека питониста | Python, Django, Flask
Оператор объединения словарей
В Python есть много разных способов объединить несколько словарей. На картинке работает оператор
В Python есть много разных способов объединить несколько словарей. На картинке работает оператор
|, с помощью которого можно это делать проще всего.Forwarded from Блог*
#prog #rust #article
How much does Rust's bounds checking actually cost?
What is the actual cost of all this extra bounds checking, though? There’s a little bit of prior art here <...> On the other hand, I wasn’t able to find an extensive analysis of the cost of pervasive bounds checking on a real, large, production Rust codebase with high performance sensitivity. I happen to work on one of those, so I figured it might be interesting to take a look at the cost of bounds checks in the hot path.
TL;DR: выкидывание всех этих проверок — даже с использованием запатченного rustc, который не генерирует инструкции с проверками индексации (что вообще-то unsound) — не делает программу быстрее и даже может сделать несколько медленнее.
How much does Rust's bounds checking actually cost?
What is the actual cost of all this extra bounds checking, though? There’s a little bit of prior art here <...> On the other hand, I wasn’t able to find an extensive analysis of the cost of pervasive bounds checking on a real, large, production Rust codebase with high performance sensitivity. I happen to work on one of those, so I figured it might be interesting to take a look at the cost of bounds checks in the hot path.
TL;DR: выкидывание всех этих проверок — даже с использованием запатченного rustc, который не генерирует инструкции с проверками индексации (что вообще-то unsound) — не делает программу быстрее и даже может сделать несколько медленнее.
Readyset Blog
How much Rust's bounds actually cost | Readyset
Rust prevents out-of-bounds memory accesses and buffer overruns via runtime bounds checks - what’s the cost of those bounds checks for a real-world, production application?
Forwarded from Just code IT
Как компьютерная графика подняла сетевой протокол
Один из наших авторов однажды участвовал в проекте, в котором надо было передавать по Wi-Fi видеопоток в DVD-качестве (5-7 мегабит) с устройства, которое не являлось точкой доступа, сразу на несколько принимающих PC.
А надо сказать, в стандартном Wi-Fi все ходит через точку доступа. То есть любой пакет от станции к станции занимает эфир два раза. Вдобавок Wi-Fi был старомодный, 54 мегабита, что с учетом всех зазоров между пакетами давало где-то 22 реальных мегабита по TCP между станцией и точкой доступа, или половину этого между двумя станциями (автор, конечно, использовал UDP, но цифры по TCP уместны для оценки).
В общем, пришлось изобретать метод, как передавать данные между станциями напрямую, минуя точку доступа ни ничего при этом не ломая. Как следствие, пришлось изобретать механизм подбора оптимальной скорости модуляции.
Допустим, можно среди пакетов, которые передаются на выбранной скорости, подмешать некоторое количество пробных пакетов на других скоростях, посчитать по ним статистику и выбрать скорость, которая кажется наиболее многообещающей, с учетом теоретической скорости доставки и статистики потерь.
Но как среди N пакетов послать M пробных, более-менее равномерно размазав их среди общего потока?
Для этой цели автор применил графический алгоритм Брезенхема, рисующий линии на дискретном экране: мысленно рисуем диагональ прямоугольничка NxM и там, где линия меняет высоту, вставляем пробный пакет.
Так, графический алгоритм, придуманный для рисования на экране прямых, нашел свое применение в сетевом протоколе :)
#digest
Один из наших авторов однажды участвовал в проекте, в котором надо было передавать по Wi-Fi видеопоток в DVD-качестве (5-7 мегабит) с устройства, которое не являлось точкой доступа, сразу на несколько принимающих PC.
А надо сказать, в стандартном Wi-Fi все ходит через точку доступа. То есть любой пакет от станции к станции занимает эфир два раза. Вдобавок Wi-Fi был старомодный, 54 мегабита, что с учетом всех зазоров между пакетами давало где-то 22 реальных мегабита по TCP между станцией и точкой доступа, или половину этого между двумя станциями (автор, конечно, использовал UDP, но цифры по TCP уместны для оценки).
В общем, пришлось изобретать метод, как передавать данные между станциями напрямую, минуя точку доступа ни ничего при этом не ломая. Как следствие, пришлось изобретать механизм подбора оптимальной скорости модуляции.
Допустим, можно среди пакетов, которые передаются на выбранной скорости, подмешать некоторое количество пробных пакетов на других скоростях, посчитать по ним статистику и выбрать скорость, которая кажется наиболее многообещающей, с учетом теоретической скорости доставки и статистики потерь.
Но как среди N пакетов послать M пробных, более-менее равномерно размазав их среди общего потока?
Для этой цели автор применил графический алгоритм Брезенхема, рисующий линии на дискретном экране: мысленно рисуем диагональ прямоугольничка NxM и там, где линия меняет высоту, вставляем пробный пакет.
Так, графический алгоритм, придуманный для рисования на экране прямых, нашел свое применение в сетевом протоколе :)
#digest
Just code IT
Как компьютерная графика подняла сетевой протокол Один из наших авторов однажды участвовал в проекте, в котором надо было передавать по Wi-Fi видеопоток в DVD-качестве (5-7 мегабит) с устройства, которое не являлось точкой доступа, сразу на несколько принимающих…
называется знать алгоритмы. хрен знает когда пригодится в хорошем смысле)
Forwarded from Just code IT
Не искушайтесь аудит-логами
На многих системах во имя безопасности появляется сущность аудит-лога. Аудит-лог предназначен для хранения информации о событиях безопасности (например: «пользователь залогинился», «пользователь 3 раза подряд не смог залогиниться», «пользователь удалил бэкап» и так далее).
Аудит-лог, как правило, сделан добротно и аттестован всеми аттестатами. И тут возникает искушение писать в него не только события безопасности, но и общесистемные события, которые кажутся важными (к примеру, когда пофейлилась аллокация в ядре). Оставим за скобками что важных-как-кажется-событий будет становится больше и решительно осудим такой подход с самого начала.
1. Как правило, у аудит-лога и обычного лога разные настройки конфиденциальности. Обычные логи может читать администратор системы или даже простой пользователь во имя debug-ability и возможности самостоятельно решать часть проблем. Аудит-лог читает только аудитор, так как он содержит сенситивную информацию.
2. Аудит-лог и обычный лог чаще всего имеют разные политики целостности. В обычный лог пишут и обычные приложения, и самые разные части системы. А произвольная запись в аудит-лог должна быть ограничена — только TCB-of-TCB может перезаписать данные. Если вообще может.
3. Аудит-лог и обычный лог имеют разные retention policies. Обычные логи ротируются и обрезаются. Аудит-лог хранится долго, и его ротация – это важное событие, которое благословляется высокими кредами, а иногда сопровождается записью на другой носитель.
Вывод: используйте концепты по прямому назначению и не используйте их всуе. А если хотите переиспользовать концепт вне домена, четко представляйте ограничения в моменте и их будущее развитие.
#digest
На многих системах во имя безопасности появляется сущность аудит-лога. Аудит-лог предназначен для хранения информации о событиях безопасности (например: «пользователь залогинился», «пользователь 3 раза подряд не смог залогиниться», «пользователь удалил бэкап» и так далее).
Аудит-лог, как правило, сделан добротно и аттестован всеми аттестатами. И тут возникает искушение писать в него не только события безопасности, но и общесистемные события, которые кажутся важными (к примеру, когда пофейлилась аллокация в ядре). Оставим за скобками что важных-как-кажется-событий будет становится больше и решительно осудим такой подход с самого начала.
1. Как правило, у аудит-лога и обычного лога разные настройки конфиденциальности. Обычные логи может читать администратор системы или даже простой пользователь во имя debug-ability и возможности самостоятельно решать часть проблем. Аудит-лог читает только аудитор, так как он содержит сенситивную информацию.
2. Аудит-лог и обычный лог чаще всего имеют разные политики целостности. В обычный лог пишут и обычные приложения, и самые разные части системы. А произвольная запись в аудит-лог должна быть ограничена — только TCB-of-TCB может перезаписать данные. Если вообще может.
3. Аудит-лог и обычный лог имеют разные retention policies. Обычные логи ротируются и обрезаются. Аудит-лог хранится долго, и его ротация – это важное событие, которое благословляется высокими кредами, а иногда сопровождается записью на другой носитель.
Вывод: используйте концепты по прямому назначению и не используйте их всуе. А если хотите переиспользовать концепт вне домена, четко представляйте ограничения в моменте и их будущее развитие.
#digest