== pydantic v1.9.0a1 (2021-12-18)
https://github.com/samuelcolvin/pydantic/releases/tag/v1.9.0a1
https://github.com/samuelcolvin/pydantic/releases/tag/v1.9.0a1
GitHub
Release v1.9.0a1 (2021-12-18) · pydantic/pydantic
See Changelog.
Thank you to pydantic's sponsors:
@timdrijvers, @toinbis, @koxudaxi, @ginomempin, @primer-io, @and-semakin, @westonsteimel, @reillysiemens, @es3n1n,
@jokull, @JonasKs, @Rehket, @...
Thank you to pydantic's sponsors:
@timdrijvers, @toinbis, @koxudaxi, @ginomempin, @primer-io, @and-semakin, @westonsteimel, @reillysiemens, @es3n1n,
@jokull, @JonasKs, @Rehket, @...
== AximoBot
https://news.1rj.ru/str/aximobot?start=aximo
шикарнейший бот
если надо в телегу присылать чтото из других социалок, например только конкретные подписки из тиктока или ютюба - очень удобно. сразу скачивает видос в телегу. как я жил без него ?!
https://news.1rj.ru/str/aximobot?start=aximo
шикарнейший бот
если надо в телегу присылать чтото из других социалок, например только конкретные подписки из тиктока или ютюба - очень удобно. сразу скачивает видос в телегу. как я жил без него ?!
Telegram
AximoBot
🤖 Blip, blip!
Hi, i am social network (TikTok, Instagram, YouTube, Twitter, Facebook, Telegram) and RSS forwarder.
Hi, i am social network (TikTok, Instagram, YouTube, Twitter, Facebook, Telegram) and RSS forwarder.
Forwarded from S0ER
Чем отличается архитектура и декомпозиция?
Преамбула
часто на митингах звучит фраза "а теперь давайте обсудим архитектуру проекта" и далее начинается обсуждение того как нужно правильно разделить программу на классы и каким образом выстроить файловую структуру проекта. На самом деле речь идет не об архитектуре, а о декомпозиции, почему так? Давайте разбираться.
Определения:
Декомпозиция — операция мышления, состоящая в разделении целого на части. Также декомпозицией называется общий приём, применяемый при решении проблем, состоящий в разделении проблемы на множество частных проблем, а также задач, не превосходящих суммарно по сложности исходную проблему, с помощью объединения решений которых, можно сформировать решение исходной проблемы в целом. (ист. википедия)
Архитектура программного обеспечения — совокупность важнейших решений об организации программной системы. Архитектура включает:
- выбор структурных элементов и их интерфейсов, с помощью которых составлена система, а также их поведения в рамках сотрудничества структурных элементов;
- соединение выбранных элементов структуры и поведения во всё более крупные системы;
- архитектурный стиль, который направляет всю организацию — все элементы, их интерфейсы, их сотрудничество и их соединение.
(ист. википедия)
Основная мысль:
На самом деле определение архитектуры приложения имеет много трактовок, но все так или иначе сходятся в том, что архитектура - это выделение главного и принятие решений о функционировании системы в целом. Процесс выработки архитектурного решения, как правило, состоит из следующих шагов:
- формулирование требований (ограничения, желаемые свойства системы и т.д.)
- анализ и выработка "правил" функционирования программной системы (общие архитектурные решения, которые помогают принимать решение при написании кода или построении архитектурных представлений)
- подготовка архитектурных представлений (как правило графическая декомпозиция системы на графические представления, разделенные на уровни абстракции)
- анализ конечных свойств системы (проверка на соответствие требования и ограничениям).
Таким образом "декомпозиция" действительно используется как составной компонент построения архитектуры программной системы, но само понятие архитектуры гораздо шире, чем само понятие декомпозиции. Так же важно понимать, что архитектурная декомпозиция строится как правило на базе функциональной декомпозиции, а не модульной или классовой.
Таким образом, если речь идет о разделении программы на классы (не о выделении интерфейсов, не о распределении обязанностей, не о выработке требований и т.д.), а только о "географическом" размещении файлов и вынесении кода в эти файлы, то это с большим натягом можно отнести к процессу построения архитектуры приложения, но правильнее всего называть "модульная декомпозиция" или "классовая декомпозиция". Архитектуре же строится по принципу "от общего к частному" и начинается со сбора и формирования требований.
Преамбула
часто на митингах звучит фраза "а теперь давайте обсудим архитектуру проекта" и далее начинается обсуждение того как нужно правильно разделить программу на классы и каким образом выстроить файловую структуру проекта. На самом деле речь идет не об архитектуре, а о декомпозиции, почему так? Давайте разбираться.
Определения:
Декомпозиция — операция мышления, состоящая в разделении целого на части. Также декомпозицией называется общий приём, применяемый при решении проблем, состоящий в разделении проблемы на множество частных проблем, а также задач, не превосходящих суммарно по сложности исходную проблему, с помощью объединения решений которых, можно сформировать решение исходной проблемы в целом. (ист. википедия)
Архитектура программного обеспечения — совокупность важнейших решений об организации программной системы. Архитектура включает:
- выбор структурных элементов и их интерфейсов, с помощью которых составлена система, а также их поведения в рамках сотрудничества структурных элементов;
- соединение выбранных элементов структуры и поведения во всё более крупные системы;
- архитектурный стиль, который направляет всю организацию — все элементы, их интерфейсы, их сотрудничество и их соединение.
(ист. википедия)
Основная мысль:
На самом деле определение архитектуры приложения имеет много трактовок, но все так или иначе сходятся в том, что архитектура - это выделение главного и принятие решений о функционировании системы в целом. Процесс выработки архитектурного решения, как правило, состоит из следующих шагов:
- формулирование требований (ограничения, желаемые свойства системы и т.д.)
- анализ и выработка "правил" функционирования программной системы (общие архитектурные решения, которые помогают принимать решение при написании кода или построении архитектурных представлений)
- подготовка архитектурных представлений (как правило графическая декомпозиция системы на графические представления, разделенные на уровни абстракции)
- анализ конечных свойств системы (проверка на соответствие требования и ограничениям).
Таким образом "декомпозиция" действительно используется как составной компонент построения архитектуры программной системы, но само понятие архитектуры гораздо шире, чем само понятие декомпозиции. Так же важно понимать, что архитектурная декомпозиция строится как правило на базе функциональной декомпозиции, а не модульной или классовой.
Таким образом, если речь идет о разделении программы на классы (не о выделении интерфейсов, не о распределении обязанностей, не о выработке требований и т.д.), а только о "географическом" размещении файлов и вынесении кода в эти файлы, то это с большим натягом можно отнести к процессу построения архитектуры приложения, но правильнее всего называть "модульная декомпозиция" или "классовая декомпозиция". Архитектуре же строится по принципу "от общего к частному" и начинается со сбора и формирования требований.
https://habr.com/ru/company/piter/blog/596621/
каждый раз читаю дотнет. и каждый раз плююсь. и да... иксЭмЭль головного мозга
каждый раз читаю дотнет. и каждый раз плююсь. и да... иксЭмЭль головного мозга
Хабр
Распределенные сервисы с применением gRPC
Часто бывает так, что эффективная коммуникация – один из основных движущих факторов в современных программных системах, даже в мире, живущем по законам микросервисной архитектуры. Технология gRPC...
Forwarded from Книжное хранилище
Экстремальный_Cи_Параллелизм,_ООП_и_продвинутые_возможности_2021.pdf
7.8 MB
Экстремальный Cи. Параллелизм, ООП и продвинутые возможности
Автор: Камран Амини
Книга научит пользоваться продвинутыми низкоуровневыми возможностями языка для создания эффективных систем.
#c
Автор: Камран Амини
Книга научит пользоваться продвинутыми низкоуровневыми возможностями языка для создания эффективных систем.
#c
Forwarded from Блог*
#prog #rust #article
Очередная статья про обработку ошибок в Rust, да. Но полезная: ставит под сомнения и разбирает распространённые мнения об ошибках в Rust. В частности, разбирается совет "anyhow для приложений, thiserror для библиотек".
Очередная статья про обработку ошибок в Rust, да. Но полезная: ставит под сомнения и разбирает распространённые мнения об ошибках в Rust. В частности, разбирается совет "anyhow для приложений, thiserror для библиотек".
Unwoundstack
Rust Error Handling
Some thoughts on how to handle errors in Rust
курс по параллельным алгоритмам, вычислениям на видеокартах
== 1. История видеокарт, введение в OpenCL
https://youtu.be/2_vUxISp7ko
CPU parallelism
- out-of-order optimizations (instruction level parallelism)
- branch predictor
- hyper-treading
- multi-core parallelism
- SIMD intrinsic functions - SSE, SSE2, SSE3 (по 4 числа). AVX, AVX2 (по 8 чисел)
GPU
- vertex shader 9вершины и треугольники)
- fragment shader (пиксели, освещение)
GPGPU API
- closeto metal
- cuda
- openCl
- Metal
GPU
- SIMT instructions
Computation model in OpenCL/Cuda:
- Work space (Height X WIdth)
- Work group
- Work Item
- Kernel (program)
!!! отказ от синхронизации
== 1. История видеокарт, введение в OpenCL
https://youtu.be/2_vUxISp7ko
CPU parallelism
- out-of-order optimizations (instruction level parallelism)
- branch predictor
- hyper-treading
- multi-core parallelism
- SIMD intrinsic functions - SSE, SSE2, SSE3 (по 4 числа). AVX, AVX2 (по 8 чисел)
GPU
- vertex shader 9вершины и треугольники)
- fragment shader (пиксели, освещение)
GPGPU API
- closeto metal
- cuda
- openCl
- Metal
GPU
- SIMT instructions
Computation model in OpenCL/Cuda:
- Work space (Height X WIdth)
- Work group
- Work Item
- Kernel (program)
!!! отказ от синхронизации
YouTube
1. История видеокарт, введение в OpenCL
https://compscicenter.ru/
Лекция №1 курса «Вычисления на видеокартах» (осень 2021)
Преподаватель — Николай Полярный
Страница лекции на сайте CS центра: https://bit.ly/3oyHgtS
Лекция №1 курса «Вычисления на видеокартах» (осень 2021)
Преподаватель — Николай Полярный
Страница лекции на сайте CS центра: https://bit.ly/3oyHgtS
INTRINSIC FUNCTION
https://en.wikipedia.org/wiki/Intrinsic_function
встроенные функции в процессор, которые доступны из ЯП. используются для оптимизации вычислений или предоставляют какие либо функциональные возможности. например обработка массива данных одной функцией из линейной алгебры. может быть вставлена компилятором автоматически если он видет такую возможность
== Intrinsic Functions - Vector Processing Extensions
https://youtu.be/x9Scb5Mku1g
https://en.wikipedia.org/wiki/Intrinsic_function
встроенные функции в процессор, которые доступны из ЯП. используются для оптимизации вычислений или предоставляют какие либо функциональные возможности. например обработка массива данных одной функцией из линейной алгебры. может быть вставлена компилятором автоматически если он видет такую возможность
== Intrinsic Functions - Vector Processing Extensions
https://youtu.be/x9Scb5Mku1g
== Intrinsic Functions - Vector Processing Extensions
https://youtu.be/x9Scb5Mku1g
https://youtu.be/x9Scb5Mku1g
YouTube
Intrinsic Functions - Vector Processing Extensions
Ooof! Well you guys asked for it, and it's up there in complexity for this channel! XD In this video I demonstrate how CPU Extensions can be used in your C++ programs via Compiler Intrinsic Functions to perform SIMD parallel operations. First I demonstrate…
1512.00168.pdf
866.7 KB
Consistency in Non-Transactional Distributed Storage Systems
про распределенные нетранзакционные системы
про распределенные нетранзакционные системы
2013.TR439_Survey_on_Consistency_Conditions.pdf
362.4 KB
Survey on consistency conditions
== Pablo Galindo Salgado - Time to take out the rubbish: garbage collector - PyCon 2019
https://youtu.be/CLW5Lyc1FN8
- reference counting (count, ownership)
- identify cycles
- deference rc
- clear weak refs (very tricky)
- call finalizers (very tricky)
- resurrection (abort cancelation)
- clear ref cycles
- generational GC - survive the object to next gen.
- atomic
- copy On Write (when forked process) - BUT rc gets troubles !!!
- calculating total memory costs
- pep 442 DETERMINE object finalization
хороший доклад от кор-разраба питона про ГЦ в питоне
https://youtu.be/CLW5Lyc1FN8
- reference counting (count, ownership)
- identify cycles
- deference rc
- clear weak refs (very tricky)
- call finalizers (very tricky)
- resurrection (abort cancelation)
- clear ref cycles
- generational GC - survive the object to next gen.
- atomic
- copy On Write (when forked process) - BUT rc gets troubles !!!
- calculating total memory costs
- pep 442 DETERMINE object finalization
хороший доклад от кор-разраба питона про ГЦ в питоне
== Log4J & JNDI Exploit: Why So Bad? - Computerphile
https://youtu.be/Opqgwn8TdlM
https://youtu.be/Opqgwn8TdlM
YouTube
Log4J & JNDI Exploit: Why So Bad? - Computerphile
The "most critical vulnerability of the last decade?" - Dr Bagley and Dr Pound explain why it's so pervasive, and even affected Mike's own code!
https://www.facebook.com/computerphile
https://twitter.com/computer_phile
This video was filmed and edited…
https://www.facebook.com/computerphile
https://twitter.com/computer_phile
This video was filmed and edited…