Like Coding
21 subscribers
39 photos
1 video
6 files
44 links
🤖Программирование это ПРОСТО!
В этом канале ты найдешь интересные статьи про новости в мире IT, обучающую информацию!

📖Реклама и сотрудничество : @zeroqxq
Download Telegram
📌Минцифры и разработчики Max назвали ложью информацию об утечке данных пользователей мессенджера

В минувшие выходные на одном из хакерских форумов было размещено объявление о продаже 46,2 миллиона записей пользователей мессенджера Max. Однако, как утверждают разработчики Max и представители Министерства цифрового развития, это фейковая утечка, и «данные пользователей надежно защищены».

🔗Источник

#itnews@likecoding
Please open Telegram to view this post
VIEW IN TELEGRAM
📌Parallel Downloading в пакетных менеджерах Linux: Баланс между скоростью и эффективностью

Многие пользователи Linux любят ускорять загрузки пакетов, увеличивая параллельные потоки в менеджерах пакетов. Но не всё так просто! 🚀

Параллельная загрузка - это возможность одновременной загрузки нескольких пакетов или частей пакета из разных источников. В большинстве менеджеров пакетов (apt, dnf, yay) это настраиваемый параметр.

🔥Увеличение количества параллельных потоков не всегда приводит к желаемому результату:

1. Перегрузка канала: Слишком много параллельных соединений может:
🟢Создавать излишнюю нагрузку на сетевой интерфейс
🟢Снижать общую скорость загрузки


2. Ограничения провайдера: Некоторые зеркала могут:
🟢Блокировать множественные одновременные соединения
🟢Замедлять загрузку при превышении лимита

3. Системные ресурсы: Много параллельных потоков потребляет:
🟢Оперативную память
🟢Процессорное время
🟢Сетевые сокеты

🔖Рекомендуемое значение: 5-10 параллельных потоков.

Конечно, итоговое оптимальное значение зависит от многих параметров: скорости интернета, характеристик вашего компьютера и пропускной способности канала.
Для большинства домашних пользователей с усредненным интернет-соединением диапазон 5-10 потоков является золотой серединой между скоростью загрузки и эффективностью использования системных ресурсов

#linux@likecoding
Please open Telegram to view this post
VIEW IN TELEGRAM
Уязвимость в Rust-библиотеках для формата TAR, приводящая к распаковке файлов из вложенного архива

В написанной на языке Rust библиотеке async-tar, предоставляющей функции для чтения и записи tar-архивов, выявлена уязвимость (CVE-2025-62518, кодовое имя TARmageddon), позволяющая при распаковке специально оформленного tar-архива не только извлечь размещённые в нём файлы, но и файлы, содержащиеся во вложенном tar-архиве. Уязвимость может быть использована для обхода систем верификации архивов и распаковки файлов, для которых не выполнялась проверка.
Уязвимость также проявляется в форках библиотеки async-tar, таких как tokio-tar, krata-tokio-tar и astral-tokio-tar, а также в утилитах на их основе, например, в пакетном менеджере uv, развиваемом в качестве высокопроизводительной замены «pip» для проектов на языке Python.

Источник

#itnews@likecoding
1
Создаем игры и изучаем.pdf
7.7 MB
Нашел для вас книгу по созданию игр на С++

#book@likecoding
1
📌Книги для программистов

🔥Программисты часто ошибаются, когда изучают книги только по конкретному языку программирования. Настоящее мастерство – в понимании фундаментальных принципов и логики решения задач.

Программирование – это прежде всего способ мышления. Язык – просто инструмент, который можно освоить за недели. А вот системное понимание архитектуры и проектирования сложных решений формируется годами.

Читая книги о принципах программирования, вы получаете три ключевых преимущества:

1️⃣ Развиваете абстрактное мышление. Вместо механического заучивания синтаксиса вы начинаете понимать логику построения программных решений.

2️⃣ Изучаете универсальные подходы, применимые в любом языке – Python, Go, Java, C++. Освоив базовые принципы, вы быстро адаптируетесь к новым технологиям.

3️⃣ Учитесь думать как архитектор систем, а не как рядовой программист. Появляется понимание создания масштабируемых и эффективных решений.

Несколько книг, которые действительно стоит прочитать:

1️⃣ О фундаментальных принципах программирования:

🟢"Чистая архитектура" - Роберт Мартин
🟢"Pragmatic Programmer" - Эндрю Хант и Дэвид Томас

2️⃣ Про архитектуру и проектирование систем:

🟢"Архитектура корпоративных программных систем" - Мартин Фаулер
🟢"Designing Data-Intensive Applications" - Мартин Клеппман

3️⃣ Раскрывающие алгоритмическое мышление:

🟢"Грокаем алгоритмы" - Адитья Бхаргава
🟢"Введение в алгоритмы" - Томас Кормен

4️⃣ Описывающие системный подход в разработке:

🟢"Идеальный программист" - Роберт Мартин
🟢"Deadline" - Том Демарко

Каждая из этих книг формирует профессиональное мировоззрение, помогая стать настоящим инженером.

P.S. Это просто рекомендация. Выбирайте книги, близкие вашему стилю мышления.

#articles@likecoding
#book@likecoding
Please open Telegram to view this post
VIEW IN TELEGRAM
📌Форматированный вывод (Formatted Print) — это процесс преобразования программных данных (таких как числа, строки и другие типы) в стандартизированное текстовое представление по заранее определенному шаблону.

Важно отметить, что это универсальная концепция, а не функция одного конкретного языка программирования. Хотя истоки лежат в языке C, аналогичные по синтаксису и логике механизмы применяются в C++, Go, Java, PHP, Perl и многих других.

Любая операция форматированного вывода состоит из двух основных частей:

1. Строка формата (Format String)
Это "шаблон" или "чертеж" будущего вывода. Он содержит обычный текст, который выводится как есть, и специальные последовательности — спецификаторы.

2. Список аргументов
Это набор данных (переменных или констант), которые будут подставлены в шаблон.

Сразу после % (или после модификаторов) указывается буква, определяющая тип данных:

🟢 %d или %i: Означает, что аргумент следует интерпретировать как целое число.
🟢 %f: Аргумент интерпретируется как число с плавающей запятой (десятичная дробь).
🟢 %s: Аргумент интерпретируется как строка.
🟢%c: Аргумент интерпретируется как один символ.
🟢 %%: Особая команда, которая означает "вывести сам символ процента".

Настоящая сила printf заключается в возможности точно контролировать *внешний вид* выводимых данных. Это достигается путем добавления специальных модификаторов *между* знаком % и буквой типа данных.

Общая структура спецификатора: %[флаги][ширина][.точность]тип

🤔 Точность (Precision)

🟢 Задается через точку (например, .2).
🟢 Для чисел (%f): Контролирует, сколько цифр будет выведено *после* десятичной точки. Это критически важно для отображения, например, денежных сумм.
🟢Для строк (%s): Контролирует *максимальную* длину выводимой строки. Если строка длиннее, она будет обрезана.

🤔 Ширина (Width)

🟢Задается числом (например, 10).
🟢Этот модификатор определяет *минимальное* общее количество символов, которое будет выделено для вывода этого аргумента.
🟢Если данные короче указанной ширины, оставшееся пространство заполняется пробелами (или нулями, если указан флаг 0). Это используется для создания ровных колонок и таблиц.

🤔 Флаги (Flags)

Это специальные символы, уточняющие поведение ширины.
🟢Флаг - (минус): Управляет выравниванием. По умолчанию выравнивание происходит по *правому* краю. Флаг "минус" заставляет данные выравниваться по *левому* краю в пределах выделенной ширины.
🟢Флаг 0 (ноль): Управляет заполнением. Если задана ширина, этот флаг заставляет дополнять числа ведущими нулями (вместо пробелов) до достижения нужной ширины.

#articles@likecoding
#clang@likecoding
Please open Telegram to view this post
VIEW IN TELEGRAM
1
📌Arch Linux AUR снова атакован DDoS, нарушена работа порта 22

В связи с продолжающимися DDoS-атаками на Arch Linux, была активирована защита для AUR, что привело к затруднениям при подключении по SSH через порт 22..

🔗 Источник

#itnews@likecoding
Please open Telegram to view this post
VIEW IN TELEGRAM
Linux. Карманный справочник. 4 изд.pdf
4.4 MB
📌Нашел для вас полезную книгу по Linux.

В книге рассказывается про команды и особенности Линукс

#books@likecoding
Please open Telegram to view this post
VIEW IN TELEGRAM
1
👋Привет, друзья! Недавно меня спросили: "Стоит ли учить C++ в 2025-2026 году?" Это хороший повод поговорить о языках программирования, которые будут актуальны в ближайшие годы. Я собрал подборку из нескольких популярных вариантов на основе текущих трендов – от системного программирования до веб-разработки. Каждый язык имеет свои сильные стороны, и выбор зависит от ваших целей. Давайте разберемся кратко.

🟢C++ остается востребованным для задач, где нужна высокая производительность, например, в играх, embedded-системах или алгоритмах. Если вы интересуетесь низкоуровневым кодом или работой с hardware, то да, стоит рассмотреть – спрос на специалистов стабилен.

🟢Python – универсальный выбор для начинающих и профи. Подходит для data science, AI, автоматизации и веб-бэкенда. Его простота помогает быстро стартовать, а экосистема библиотек делает его мощным инструментом в многих сферах.

🟢JavaScript – основа фронтенда и полного стека веб-разработки. С ним вы сможете создавать интерактивные сайты, мобильные apps (через фреймворки вроде React Native) и даже серверную логику с Node.js. В 2025-2026 он никуда не денется, особенно с ростом веб-технологий.

🟢Java – классика для enterprise-приложений, Android-разработки и больших систем. Если вы метите в корпоративный сектор или backend, этот язык даст солидную базу с фокусом на масштабируемость и безопасность.

🟢Golang (Go) – отличный для concurrency и облачных сервисов. Используется в микросервисах, сетевых приложениях и DevOps. Его скорость и простота привлекают компании вроде Google, так что для backend-разработки это перспективный вариант.

🟢Rust – фокусируется на безопасности памяти и производительности. Подходит для системного программирования, веб-ассемблера и даже блокчейна. Если вы хотите избежать типичных ошибок в коде, Rust поможет, и спрос на него растет в критически важных проектах.

🟢TypeScript – надстройка над JavaScript, добавляющая типизацию для крупных проектов. Идеален для фронтенда и full-stack, где нужна надежность кода. Многие команды переходят на него для снижения багов.

Конечно, это не полный список – есть еще Kotlin для мобильной разработки или C# для .NET и игр. Главное: выбирайте язык под вашу нишу, практикуйтесь на реальных проектах и следите за обновлениями. Что думаете, какой язык следующий в вашем списке? Делитесь в комментах!

Ответ на вопрос подписчика:
Да, C++ стоит учить в 2025-2026: высокая производительность для игр, embedded, алгоритмов; спрос стабилен.

#articles@likecoding
Please open Telegram to view this post
VIEW IN TELEGRAM
👋Привет, друзья! Сегодня поговорим о Zig — современном языке программирования, который позиционирует себя как "лучший друг C", но с акцентом на безопасность и простоту. Если вы разрабатываете низкоуровневый софт и устали от багов в C/C++, Zig может стать интересным открытием. Давайте разберёмся, что он из себя представляет.

➡️ Сначала о плюсах. Zig — это язык с фокусом на производительность и предсказуемость. Нет сборщика мусора, как в Go или Rust, но есть мощный comptime (компиляция во время компиляции), который позволяет писать метапрограммы без магии. Синтаксис минималистичный, близкий к C, но с явным контролем памяти: аллокатор передаётся явно, чтобы избежать утечек. Отличная кросс-компиляция — Zig может строить код для любой платформы из коробки, без кучи зависимостей. Плюс, он полностью самодостаточен: стандартная библиотека покрывает многое. В итоге, код выходит компактным, быстрым и безопасным по умолчанию.

➡️ Теперь минусы, чтобы не идеализировать. Zig ещё молодой (первый релиз в 2016-ом), так что экосистема скромная: библиотек меньше, чем в Rust или Go, и сообщество небольшое. Отладка может быть болезненной из-за отсутствия зрелых инструментов, а стабильность версии 0.x значит, что API меняется. Не для веб-разработки или скриптинга — здесь он уступает Python или JS.

➡️ А где Zig сияет на практике? Кейсы применения — в системном программировании. Например, Bun (альтернатива Node.js) использует Zig для runtime, чтобы ускорить JS-выполнение. В embedded-системах Zig популярен для микроконтроллеров: простота и отсутствие runtime-оверхеда идеальны для IoT-устройств. Ещё круто для игровых движков — TigerBeetle (финтех-база данных) на Zig показывает, как он справляется с высоконагруженными задачами. Компании вроде AWS экспериментируют с ним для cloud-инфраструктуры, где нужна предсказуемая производительность.

➡️ В итоге, Zig — это инструмент для тех, кто ценит контроль и скорость, но готов мириться с незрелостью экосистемы. Что думаете — стоит ли Zig места в вашем стеке? Делитесь в комментах! 🚀

#articles@likecoding
Please open Telegram to view this post
VIEW IN TELEGRAM
11
👋Привет, друзья! В сегодня разберёмся с контейнеризацией — это когда приложения упаковывают в "контейнеры", чтобы они работали одинаково везде: на ноуте, сервере или в облаке. Главный герой — Docker, но идея шире. Если вы в devops или просто разрабатываете софт, это must-have инструмент.

➡️ Плюсы контейнеризации: портативность на высоте — один образ, и приложение бежит без "у меня не работает, потому что...". Изоляция: каждый контейнер в своём мире, не мешает другим. Масштабирование лёгкое — Kubernetes оркестрирует тысячи контейнеров за секунды. Экономия ресурсов: легче виртуалок, делят ядро ОС. Быстрый деплой: CI/CD пайплайны с Docker ускоряют релиз в разы. Плюс, версии фиксированы — никаких сюрпризов от обновлений.

➡️ Где применяют на практике: в микросервисах — Netflix делит монолит на контейнеры для независимых обновлений. В CI/CD — GitHub Actions с Docker тестируют код в изоляции. Cloud-native: AWS ECS или Google Kubernetes Engine запускают apps в проде. Даже локально: разработчики на Mac/Windows эмулируют Linux-сервер. Стартапы используют для быстрого прототипинга, а большие компании — для hybrid cloud.

🤔Итог: контейнеризация упрощает жизнь в разработке и эксплуатации, даёт гибкость и скорость, но требует дисциплины и инструментов.


#articles@likecoding
Please open Telegram to view this post
VIEW IN TELEGRAM
1
Мечта многих пацанов:)
#memes@likecoding
👋Привет, друзья! В сегодня поговорим о машинном обучении.

Машинное обучение работает на алгоритмах, которые анализируют огромные объемы данных — от фото и текстов до чисел и видео. Например, в здравоохранении оно помогает диагностировать болезни по снимкам МРТ быстрее и точнее, чем врачи иногда. В финансах — выявляет мошеннические транзакции в реальном времени, спасая ваши деньги. В транспорте автономные авто от Tesla учатся ездить безопасно, избегая аварий.
Прогресс идет семимильными шагами: открытые библиотеки вроде TensorFlow или PyTorch позволяют даже новичкам экспериментировать.

👍 - Если хотите больше о ML ( В тч. примеры кода)

#articles@likecoding
Please open Telegram to view this post
VIEW IN TELEGRAM
2