В руководство по языку Kotlin добавлена статья про Функции расширения с получателем (extension function with receiver)
https://metanit.com/kotlin/tutorial/5.9.php
#kotlin
https://metanit.com/kotlin/tutorial/5.9.php
#kotlin
👍12❤5🤔2🤯1
Краткий совет по Linux:
Если вы хотите удалить пустые каталоги, команда find может облегчить эту задачу:
$ find . -type d -empty -exec rmdir -v {} +
Параметр -type d выполняет поиск каталогов, -empty выбирает пустые каталоги, а -exec rmdir {} выполняет команду rmdir для их удаления.
Команда rmdir гарантирует, что каталог пуст, прежде чем удалить его.
В качестве альтернативы вы также можете использовать эту команду для выполнения той же задачи:
$ find . -type d -empty -delete
Если вы хотите удалить пустые каталоги, команда find может облегчить эту задачу:
$ find . -type d -empty -exec rmdir -v {} +
Параметр -type d выполняет поиск каталогов, -empty выбирает пустые каталоги, а -exec rmdir {} выполняет команду rmdir для их удаления.
Команда rmdir гарантирует, что каталог пуст, прежде чем удалить его.
В качестве альтернативы вы также можете использовать эту команду для выполнения той же задачи:
$ find . -type d -empty -delete
👍13🤔3👌2❤1
Добавленая новая статья про измерение времени выполнения программы на языке программирования Си
https://metanit.com/c/tutorial/10.4.php
#c_ansi
https://metanit.com/c/tutorial/10.4.php
#c_ansi
❤🔥12👍5👏2🔥1
Релиз Windows 11 версии 25H2 состоится до конца текущего года, подтвердила Microsoft. На это указывает информация в сборке операционной системы на канале Dev для участников программы Windows Insider.
Как и Windows 11 24H2, новая версия будет построена на платформе Germanium. Обе версии имеют одну и ту же ветку обслуживания. Функции 25H2 со временем появятся и в 24H2.
Новые функции будут включать новое меню «Пуск» для Windows 11, которое стало более настраиваемым, ИИ-агент в приложении «Параметры» и многое другое.
https://techcommunity.microsoft.com/blog/windows-itpro-blog/get-ready-for-windows-11-version-25h2/4426437
#windows
Как и Windows 11 24H2, новая версия будет построена на платформе Germanium. Обе версии имеют одну и ту же ветку обслуживания. Функции 25H2 со временем появятся и в 24H2.
Новые функции будут включать новое меню «Пуск» для Windows 11, которое стало более настраиваемым, ИИ-агент в приложении «Параметры» и многое другое.
https://techcommunity.microsoft.com/blog/windows-itpro-blog/get-ready-for-windows-11-version-25h2/4426437
#windows
👎8🤮6👍5🤔3👏2
This media is not supported in your browser
VIEW IN TELEGRAM
Когда компьютеры не могут в математику и что такое flloat
👏22🥰4🔥2🤔1🍌1
7 ключевых сложностей времени исполнения:
(описание к предыдущему посту)
1. O(1) — Постоянная сложность
- Время выполнения не зависит от размера входных данных.
- Пример: Доступ к элементу массива по индексу.
2. O(log n) — Логарифмическая сложность
- Время выполнения увеличивается медленно с ростом размера входных данных. Обычно встречается в алгоритмах, делающих проблему вдвое меньше на каждом шаге.
- Пример: Бинарный поиск в отсортированном массиве.
3. O(n) — Линейная сложность
- Время выполнения растёт линейно вместе с размером входных данных.
- Пример: Поиск элемента в массиве путём последовательного перебора всех элементов.
4. O(n log n) — Линеаризованно-логарифмическая сложность
- Время выполнения возрастает чуть быстрее, чем линейно. Включает выполнение логарифмического числа операций для каждого элемента входных данных.
- Пример: Алгоритмы сортировки, такие как быстрая сортировка (quicksort) или сортировка слиянием (mergesort).
5. O(n²) — Квадратичная сложность
- Время выполнения пропорционально квадрату размера входных данных.
- Пример: Алгоритм пузырьковой сортировки, который сравнивает и потенциально меняет местами каждую пару элементов.
6. O(2ⁿ) — Экспоненциальная сложность
- Время выполнения удваивается с каждым добавлением нового элемента к входным данным. Такие алгоритмы становятся непрактичными для больших размеров входных данных.
- Пример: Генерация всех подмножеств множества.
7. O(n! ) — Факториальная сложность
- Время выполнения пропорционально факториалу размера входных данных.
- Пример: Генерация всех перестановок множества.
(описание к предыдущему посту)
1. O(1) — Постоянная сложность
- Время выполнения не зависит от размера входных данных.
- Пример: Доступ к элементу массива по индексу.
2. O(log n) — Логарифмическая сложность
- Время выполнения увеличивается медленно с ростом размера входных данных. Обычно встречается в алгоритмах, делающих проблему вдвое меньше на каждом шаге.
- Пример: Бинарный поиск в отсортированном массиве.
3. O(n) — Линейная сложность
- Время выполнения растёт линейно вместе с размером входных данных.
- Пример: Поиск элемента в массиве путём последовательного перебора всех элементов.
4. O(n log n) — Линеаризованно-логарифмическая сложность
- Время выполнения возрастает чуть быстрее, чем линейно. Включает выполнение логарифмического числа операций для каждого элемента входных данных.
- Пример: Алгоритмы сортировки, такие как быстрая сортировка (quicksort) или сортировка слиянием (mergesort).
5. O(n²) — Квадратичная сложность
- Время выполнения пропорционально квадрату размера входных данных.
- Пример: Алгоритм пузырьковой сортировки, который сравнивает и потенциально меняет местами каждую пару элементов.
6. O(2ⁿ) — Экспоненциальная сложность
- Время выполнения удваивается с каждым добавлением нового элемента к входным данным. Такие алгоритмы становятся непрактичными для больших размеров входных данных.
- Пример: Генерация всех подмножеств множества.
7. O(n! ) — Факториальная сложность
- Время выполнения пропорционально факториалу размера входных данных.
- Пример: Генерация всех перестановок множества.
👍19🔥3❤1👏1🙏1
Пользовательская база операционной системы Windows сократилась примерно на 400 миллионов пользователей за последние три года. Об этом свидетельствуют официальные заявления Microsoft. В 2022 году в годовом отчете компании указывалось, что Windows 10 и 11 использовались на более чем 1,4 миллиарда устройств, тогда как в недавнем посте исполнительного вице-президента Microsoft Юсуфа Мехди сообщается о «более чем одном миллиарде активных устройств» по состоянию на июнь 2025 года. Это указывает на значительное сокращение числа пользователей.
Основные причины сокращения:
- Смещение приоритетов к мобильным устройствам: Пользователи всё чаще заменяют ПК смартфонами и планшетами, которые становятся всё более мощными. Этот тренд начался ещё в 2019 году, но был временно приостановлен из-за пандемии, вызвавшей рост продаж ПК. Однако после пандемии тенденция к снижению использования ПК возобновилась.
- Конкуренция со стороны macOS и других систем: Хотя macOS (особенно после появления Apple Silicon) представляет угрозу, продажи Mac также снижаются (с 85% доходов Apple в прошлом до 7,7% в 2023 году). Это указывает на то, что пользователи не массово переходят на Mac, а скорее отказываются от ПК в пользу мобильных устройств.
- Агрессивное продвижение Windows 11: Microsoft активно побуждает пользователей переходить на Windows 11, так как поддержка Windows 10 прекратится в октябре 2025 года. Однако строгие аппаратные требования Windows 11 (например, необходимость TPM 2.0 и современных процессоров) ограничивают возможность обновления для многих устройств, что может способствовать оттоку пользователей.
Основные потребительские сегменты, продолжающие использовать Windows, — это геймеры и профессионалы, зависящие от специализированного ПО, доступного только на Windows. Тем не менее, даже в этих нишах наблюдается рост использования мобильных устройств и облачных решений, что снижает зависимость от традиционных ПК.
https://www.tomshardware.com/software/windows/windows-seemingly-lost-400-million-users-in-the-past-three-years-official-microsoft-statements-show-hints-of-a-shrinking-user-base
#вендекапец #windows
Основные причины сокращения:
- Смещение приоритетов к мобильным устройствам: Пользователи всё чаще заменяют ПК смартфонами и планшетами, которые становятся всё более мощными. Этот тренд начался ещё в 2019 году, но был временно приостановлен из-за пандемии, вызвавшей рост продаж ПК. Однако после пандемии тенденция к снижению использования ПК возобновилась.
- Конкуренция со стороны macOS и других систем: Хотя macOS (особенно после появления Apple Silicon) представляет угрозу, продажи Mac также снижаются (с 85% доходов Apple в прошлом до 7,7% в 2023 году). Это указывает на то, что пользователи не массово переходят на Mac, а скорее отказываются от ПК в пользу мобильных устройств.
- Агрессивное продвижение Windows 11: Microsoft активно побуждает пользователей переходить на Windows 11, так как поддержка Windows 10 прекратится в октябре 2025 года. Однако строгие аппаратные требования Windows 11 (например, необходимость TPM 2.0 и современных процессоров) ограничивают возможность обновления для многих устройств, что может способствовать оттоку пользователей.
Основные потребительские сегменты, продолжающие использовать Windows, — это геймеры и профессионалы, зависящие от специализированного ПО, доступного только на Windows. Тем не менее, даже в этих нишах наблюдается рост использования мобильных устройств и облачных решений, что снижает зависимость от традиционных ПК.
https://www.tomshardware.com/software/windows/windows-seemingly-lost-400-million-users-in-the-past-three-years-official-microsoft-statements-show-hints-of-a-shrinking-user-base
#вендекапец #windows
Tom's Hardware
Microsoft says it still has 1.4 billion monthly active users (Updated)
Our mobile-first world is slowly killing the ubiquitous operating system.
❤7🙉5🤔4☃2🤩2🐳2
Спустя десятилетия это наконец случилось: в C++ была добавлена функция вывода в выходной поток - std::print, в том числе с применением форматирования. Правда, не все компиляторы полноценно поддерживают ее, либо степень поддержки может отличаться. Но тем не менее вскоре можно будет отправить std::cout на пенсию.
#cpp
#cpp
❤24😢11😁7🤯4👎3⚡2😴2🎉1😐1
Из интервью Михаила Автухова, заместителя председателя правления Совкомбанка:
"ИИ действует как экзоскелет, многократно усиливая возможности сотрудников. Уже сейчас мы видим впечатляющие результаты:
• Сотрудники без навыков программирования создают код с помощью ИИ"
https://finance.mail.ru/2025-06-30/bankir-avtuhov-bez-razvitiya-ii-banki-vstanut-66716644/
Если честно, стало страшно за Совкомбанк
"ИИ действует как экзоскелет, многократно усиливая возможности сотрудников. Уже сейчас мы видим впечатляющие результаты:
• Сотрудники без навыков программирования создают код с помощью ИИ"
https://finance.mail.ru/2025-06-30/bankir-avtuhov-bez-razvitiya-ii-banki-vstanut-66716644/
Если честно, стало страшно за Совкомбанк
Финансы Mail
Банкир Автухов: без развития ИИ банки «встанут»
Проблема дефицита кадров и использование искусственного интеллекта для увеличения производительности бизнеса обсуждалась в рамках ПМЭФ-2025 не единожды. О том, как ИИ применяется в банковской сфере и сколько задач при помощи технологий удается...
🤣46😁15❤2👍1
Агенты ИИ выполняют офисные задачи неправильно примерно в 70% случаев, и многие из них вообще не являются ИИ
Для проверки реальности исследователи разработали эталон для оценки того, как агенты ИИ выполняют общие рабочие задачи, такие как просмотр веб-страниц, написание кода, запуск приложений и общение с коллегами - среду моделирования, разработанную для имитации небольшой компании-разработчика программного обеспечения и ее бизнес-операций.
Исследователи проверили следующие модели и оценили их на основе показателей успешности выполнения задач. Результаты оказались неутешительными.
В ходе экспериментов обнаружилось, что самая производительная модель Gemini 2.5 Pro смогла автономно выполнить 30,3% предоставленных тестов до конца. Весь рейтинг протестированных ИИ-моделей:
Gemini-2.5-Pro (30,3%)
Claude-3.7-Sonnet (26,3%)
Claude-3.5-Sonnet (24%)
Gemini-2.0-Flash (11,4%)
GPT-4o (8,6%)
o3-mini (4,0%)
Gemini-1.5-Pro (3,4%)
Amazon-Nova-Pro-v1 (1,7%)
Llama-3.1-405b (7,4%)
Llama-3.3-70b (6,9%)
Qwen-2.5-72b (5,7%)
Llama-3.1-70b (1,7%)
Qwen-2-72b (1,1%)
https://www.theregister.com/2025/06/29/ai_agents_fail_a_lot/
Для проверки реальности исследователи разработали эталон для оценки того, как агенты ИИ выполняют общие рабочие задачи, такие как просмотр веб-страниц, написание кода, запуск приложений и общение с коллегами - среду моделирования, разработанную для имитации небольшой компании-разработчика программного обеспечения и ее бизнес-операций.
Исследователи проверили следующие модели и оценили их на основе показателей успешности выполнения задач. Результаты оказались неутешительными.
В ходе экспериментов обнаружилось, что самая производительная модель Gemini 2.5 Pro смогла автономно выполнить 30,3% предоставленных тестов до конца. Весь рейтинг протестированных ИИ-моделей:
Gemini-2.5-Pro (30,3%)
Claude-3.7-Sonnet (26,3%)
Claude-3.5-Sonnet (24%)
Gemini-2.0-Flash (11,4%)
GPT-4o (8,6%)
o3-mini (4,0%)
Gemini-1.5-Pro (3,4%)
Amazon-Nova-Pro-v1 (1,7%)
Llama-3.1-405b (7,4%)
Llama-3.3-70b (6,9%)
Qwen-2.5-72b (5,7%)
Llama-3.1-70b (1,7%)
Qwen-2-72b (1,1%)
https://www.theregister.com/2025/06/29/ai_agents_fail_a_lot/
The Register
AI agents get office tasks wrong around 70% of the time, and a lot of them aren't AI at all
Analysis: More fiction than science
😁17❤5👍3👏2🔥1🤮1💯1
Асинхронная коммуникация и потеря данных
(описание к предыдущему посту)
Асинхронная коммуникация масштабируема, слабо связана и устойчива. Но и она может столкнуться с проблемами. Одна из них - потеря данных.
Событийно управляемые системы выглядят простыми на первый взгляд: вы отправляете событие, другой сервис его получает и обрабатывает.
Где теряются данные:
1. Издатель отправляет событие, потом падает перед тем, как брокер подтвердит получение
2. Потребитель берет сообщени, потом падает перед обработкой
3. Потребитель обрабатывает сообщение, но запись в базу данных проходит неудачно без какого-нибудь уведомления
Как это предотвратить?
1. Постоянные очереди + синхронная отправка
Брокер сохраняет сообщение на диске перед подтверждением.
А издатель ждет подтверждения перед продолжением.
2. Режим подтверждения клиентом
Потребитель подтверждает сообщение только после успешной обработки.
Если потребитель упадет посередине процесса, сообщение останется в очереди для повторной попытки.
3. Поддержка последнего участника
Сообщение считается выполненным только тогда, когда данные надежно записаны.
Если вызов базы данных потерпел неудачу, подтверждение не отправляется.
(описание к предыдущему посту)
Асинхронная коммуникация масштабируема, слабо связана и устойчива. Но и она может столкнуться с проблемами. Одна из них - потеря данных.
Событийно управляемые системы выглядят простыми на первый взгляд: вы отправляете событие, другой сервис его получает и обрабатывает.
Где теряются данные:
1. Издатель отправляет событие, потом падает перед тем, как брокер подтвердит получение
2. Потребитель берет сообщени, потом падает перед обработкой
3. Потребитель обрабатывает сообщение, но запись в базу данных проходит неудачно без какого-нибудь уведомления
Как это предотвратить?
1. Постоянные очереди + синхронная отправка
Брокер сохраняет сообщение на диске перед подтверждением.
А издатель ждет подтверждения перед продолжением.
2. Режим подтверждения клиентом
Потребитель подтверждает сообщение только после успешной обработки.
Если потребитель упадет посередине процесса, сообщение останется в очереди для повторной попытки.
3. Поддержка последнего участника
Сообщение считается выполненным только тогда, когда данные надежно записаны.
Если вызов базы данных потерпел неудачу, подтверждение не отправляется.
👍3
К слову о "смерти" PHP - по некоторой статистике PHP используют более 74% веб-сайтов #php
🤣56👍7🤮7🤡2
This media is not supported in your browser
VIEW IN TELEGRAM
Сегментация памяти в программе на C/C++
👍12🔥1🥰1
В руководство по языку Си добавлена статья про Макрос перебора списков в стиле for-each
https://metanit.com/c/tutorial/12.5.php
#c_ansi
https://metanit.com/c/tutorial/12.5.php
#c_ansi
👍15🔥3👏1