👍5❤2
ImHex
🔍 Hex-редактор для реверс-инженеров, программистов и людей, которые ценят свое зрение, когда работают ночью.
https://github.com/WerWolv/ImHex
#github@bookflow
👉 @Bookflow
🔍 Hex-редактор для реверс-инженеров, программистов и людей, которые ценят свое зрение, когда работают ночью.
https://github.com/WerWolv/ImHex
#github@bookflow
👉 @Bookflow
👍8
Go-like каналы на C++
Каналы (channels, pipes) – это удобная абстракция для построения приложений, работающих в многопоточной среде. Они используются для передачи сообщений между потоками и, одновременно с этим, как средство синхронизации потоков. Я буду ссылаться на "Go-style channels", т.к. на мой взгляд, важная особенность каналов в языке GO – это возможность их мультиплексировать.
Реализации каналов на языке C++, конечно же, есть, например, в библиотеке boost::fibers, можно найти реализацию двух видов каналов. В документации boost::fibers можно найти описания способов мультиплексирования, правда не самих каналов, но и к ним можно применить подобную технику.
https://habr.com/ru/articles/805561/
#cpp@bookflow
👉 @Bookflow
Каналы (channels, pipes) – это удобная абстракция для построения приложений, работающих в многопоточной среде. Они используются для передачи сообщений между потоками и, одновременно с этим, как средство синхронизации потоков. Я буду ссылаться на "Go-style channels", т.к. на мой взгляд, важная особенность каналов в языке GO – это возможность их мультиплексировать.
Реализации каналов на языке C++, конечно же, есть, например, в библиотеке boost::fibers, можно найти реализацию двух видов каналов. В документации boost::fibers можно найти описания способов мультиплексирования, правда не самих каналов, но и к ним можно применить подобную технику.
https://habr.com/ru/articles/805561/
#cpp@bookflow
👉 @Bookflow
❤3👍2🌭1
Коллекция советов по программированию на Python, в основном это касается Matplotlib.
#python@bookflow
👉 @Bookflow
#python@bookflow
👉 @Bookflow
👍3🔥3
Инструментарий инженера DevOps 🧰🎒
Операционная система → Linux (recommended), Windows
Программирование → Go, Python, Groovy, Bash
Container orchestration → Kubernetes, Docker Swarm
Containers → Docker, Podman, Containerd
Source Code Management → Git, Subversion
Cloud → AWS, GCP, Azure, CivoCloud
CI/CD → Jenkins, CircleCI, Bamboo
Хостинг IT-проектов → GitHub, BitBucket, GitLab
IaC (Infrastructure as Code) and IP (Infrastructure Provisioning) → Ansible, Puppet, Chef, Terraform, Pulumi, Stack, Crossplane
Непрерывная обратная связь → GetFeedback, Jira, Slack, Pendo
Обсервация (мониторинг, протоколирование и анализ поведения системы) → Nagios, Grafana , Prometheus, New Relic, ELK Stack Datadog
Планирование → Jira Software, Confluence, Slack
Автоматизированное тестирование → xray, snyk, JUnit, Selenium, Appium
Вы можете выбрать любой из этих инструментов для каждого этапа/категории. Ваш выбор может быть основан на вашем проекте или организации, а может быть полностью личным.
#devops@bookflow
👉 @Bookflow
Операционная система → Linux (recommended), Windows
Программирование → Go, Python, Groovy, Bash
Container orchestration → Kubernetes, Docker Swarm
Containers → Docker, Podman, Containerd
Source Code Management → Git, Subversion
Cloud → AWS, GCP, Azure, CivoCloud
CI/CD → Jenkins, CircleCI, Bamboo
Хостинг IT-проектов → GitHub, BitBucket, GitLab
IaC (Infrastructure as Code) and IP (Infrastructure Provisioning) → Ansible, Puppet, Chef, Terraform, Pulumi, Stack, Crossplane
Непрерывная обратная связь → GetFeedback, Jira, Slack, Pendo
Обсервация (мониторинг, протоколирование и анализ поведения системы) → Nagios, Grafana , Prometheus, New Relic, ELK Stack Datadog
Планирование → Jira Software, Confluence, Slack
Автоматизированное тестирование → xray, snyk, JUnit, Selenium, Appium
Вы можете выбрать любой из этих инструментов для каждого этапа/категории. Ваш выбор может быть основан на вашем проекте или организации, а может быть полностью личным.
#devops@bookflow
👉 @Bookflow
👍4
Советы по Django
'null' vs. 'blank'
В моделях Django 'null' влияет на хранение данных в базе, позволяя полям хранить значения 'NULL'.
'blank' влияет на валидацию форм, разрешая пустые значения в формах.
#python@bookflow
👉 @Bookflow
'null' vs. 'blank'
В моделях Django 'null' влияет на хранение данных в базе, позволяя полям хранить значения 'NULL'.
'blank' влияет на валидацию форм, разрешая пустые значения в формах.
#python@bookflow
👉 @Bookflow
👍2❤1
This media is not supported in your browser
VIEW IN TELEGRAM
DeepCamera
Камера с искусственным интеллектом с открытым исходным кодом. Наделите любую камеру/CCTV самыми современными функциями искусственного интеллекта, включая распознавание лиц, распознавание людей (RE-ID), обнаружение автомобилей, обнаружение падений и многое другое.
https://github.com/SharpAI/DeepCamera
#github@bookflow
👉 @Bookflow
Камера с искусственным интеллектом с открытым исходным кодом. Наделите любую камеру/CCTV самыми современными функциями искусственного интеллекта, включая распознавание лиц, распознавание людей (RE-ID), обнаружение автомобилей, обнаружение падений и многое другое.
https://github.com/SharpAI/DeepCamera
#github@bookflow
👉 @Bookflow
👍5
Что такое Uniform initialization? Aggregate initialization?
Uniform initialization, введенная в C++11, позволяет использовать единый синтаксис для инициализации переменных и объектов, начиная от примитивных типов до агрегатов¹. Другими словами, она вводит инициализацию скобками, которая использует фигурные скобки {} для заключения значений инициализатора. Синтаксис выглядит следующим образом:
Aggregate initialization - это форма инициализации списком для массивов или типов класса (часто структур или объединений), которые имеют: нет приватных или защищенных членов, нет пользовательских конструкторов, кроме явно заданных или удаленных конструкторов . Это позволяет напрямую инициализировать элементы агрегатов. Для этого мы предоставляем список инициализаторов в качестве инициализатора, который представляет собой список значений, разделенных запятыми.
Например, если у вас есть структура с несколькими членами:
Когда мы определяем объект с типом структуры, нам нужен способ инициализации нескольких членов во время инициализации:
Агрегаты используют форму инициализации, называемую агрегатной инициализацией, которая позволяет нам напрямую инициализировать элементы агрегатов. Для этого мы предоставляем список инициализаторов в качестве инициализатора, который представляет собой список значений, разделенных запятыми. Так же как обычные переменные могут быть скопированы, напрямую инициализированы или списком инициализированы, есть 3 формы агрегатной инициализации.
#cpp@bookflow
👉 @Bookflow
Uniform initialization, введенная в C++11, позволяет использовать единый синтаксис для инициализации переменных и объектов, начиная от примитивных типов до агрегатов¹. Другими словами, она вводит инициализацию скобками, которая использует фигурные скобки {} для заключения значений инициализатора. Синтаксис выглядит следующим образом:
type var_name {arg1, arg2, ....arg n}.Aggregate initialization - это форма инициализации списком для массивов или типов класса (часто структур или объединений), которые имеют: нет приватных или защищенных членов, нет пользовательских конструкторов, кроме явно заданных или удаленных конструкторов . Это позволяет напрямую инициализировать элементы агрегатов. Для этого мы предоставляем список инициализаторов в качестве инициализатора, который представляет собой список значений, разделенных запятыми.
Например, если у вас есть структура с несколькими членами:
struct Employee {
int id {};
int age {};
double wage {};
};Когда мы определяем объект с типом структуры, нам нужен способ инициализации нескольких членов во время инициализации:
Employee joe; // как мы инициализируем joe.id, joe.age и joe.wage?Агрегаты используют форму инициализации, называемую агрегатной инициализацией, которая позволяет нам напрямую инициализировать элементы агрегатов. Для этого мы предоставляем список инициализаторов в качестве инициализатора, который представляет собой список значений, разделенных запятыми. Так же как обычные переменные могут быть скопированы, напрямую инициализированы или списком инициализированы, есть 3 формы агрегатной инициализации.
#cpp@bookflow
👉 @Bookflow
👍4❤3
Forwarded from Linux: Системный администратор
Media is too big
VIEW IN TELEGRAM
🚀 Полный курс Linux за 5 часов.
0:00 Introduction
2:11 History of Linux
8:01 Various Linux Distributions
11:21 Linux Features
19:41 What is Kernel
20:11 What is Shell
20:41 What is Shell Script?
20:51 Evolution of the Shell
27:01 Shell vs bash?
28:15 Shell vs Bash vs Other
38:07 Which Shell is For You?
39:58 What is Windows?
41:28 History
43:28 Linux vs Windows
56:28 Distributions
58:58 Whis OS is for you?
1:02:08 What is Unix?
1:03:12 Unix vs Linux
1:07:55 Unix Limitations
1:08:56 Linux Limitations
1:09:36 Market Trends
1:10:15 Linux Commands
1:44:49 Linux Commands for DevOps
2:44:34 Shell Scripting basics
2:48:44 Git commands
2:57:57 User Administration in Linux
3:30:39 Package Management in Linux
4:01:18 Linux Interview Questions
источник
#Linux@linux_odmin #Video@linux_odmin
👉 @linux_odmin
Eng ver 0:00 Introduction
2:11 History of Linux
8:01 Various Linux Distributions
11:21 Linux Features
19:41 What is Kernel
20:11 What is Shell
20:41 What is Shell Script?
20:51 Evolution of the Shell
27:01 Shell vs bash?
28:15 Shell vs Bash vs Other
38:07 Which Shell is For You?
39:58 What is Windows?
41:28 History
43:28 Linux vs Windows
56:28 Distributions
58:58 Whis OS is for you?
1:02:08 What is Unix?
1:03:12 Unix vs Linux
1:07:55 Unix Limitations
1:08:56 Linux Limitations
1:09:36 Market Trends
1:10:15 Linux Commands
1:44:49 Linux Commands for DevOps
2:44:34 Shell Scripting basics
2:48:44 Git commands
2:57:57 User Administration in Linux
3:30:39 Package Management in Linux
4:01:18 Linux Interview Questions
источник
#Linux@linux_odmin #Video@linux_odmin
👉 @linux_odmin
👍3🔥2