en
Feedback
Волны ИИ

Волны ИИ

Open in Telegram

Творчество искусственного интеллекта.

Show more
6 696
Subscribers
No data24 hours
-137 days
-4330 days
Posts Archive
🐸Библиотека шарписта #развлекалово
🐸Библиотека шарписта #развлекалово

Давайте признавайтесь в комментариях — что вам подарили? 👇
Давайте признавайтесь в комментариях — что вам подарили? 👇

С наступающим, С# сообщество! Или уже наступившим!🎆🎆 Уже придумали чем заняться в новом году? 😉 Если нет, то предлагаем ва
С наступающим, С# сообщество! Или уже наступившим!🎆🎆 Уже придумали чем заняться в новом году? 😉 Если нет, то предлагаем вам подборку фильмов и сериалов к просмотру: 🔠 Остановись и гори (2014) 🅰️ The IT Crowd (2006-2013) 🔠 Revolution OS (2001) ©️ Разрабы (2020) 🔠 Игра в имитацию (2014)

👋 Привет, мир: несколько креативных способов написать классический код на C# Иногда самые простые вещи могут быть невероятно
👋 Привет, мир: несколько креативных способов написать классический код на C# Иногда самые простые вещи могут быть невероятно увлекательными. В этой статье автор собрал разнообразные способы написать легендарное 'Hello, World!' на C#. Это не просто базовые примеры, а настоящая коллекция техник и подходов, которая понравится как новичкам, так и опытным разработчикам. 📎 Узнайте, как добавить немного креатива даже в такие тривиальные задачи!

🌍✈️ 6 идей, как ускорить поиск работы за рубежом Статья для тех, кто устал от отказов и безрезультатных поисков. Узнайте сек
🌍✈️ 6 идей, как ускорить поиск работы за рубежом Статья для тех, кто устал от отказов и безрезультатных поисков. Узнайте секреты, которые помогут вам найти работу за рубежом в разы быстрее! 👉 Читать статью

🚀 Testcontainers в .NET с PostgreSQL и pgvector 💡 Мы нашли статью о том, как использовать Testcontainers в .NET для работы
🚀 Testcontainers в .NET с PostgreSQL и pgvector 💡 Мы нашли статью о том, как использовать Testcontainers в .NET для работы с PostgreSQL и расширением pgvector. Если вы хотите сделать тестирование интеграции удобнее и мощнее, то это именно то, что вам нужно! 📌 Что такое Testcontainers? Это библиотека, которая позволяет запускать Docker-контейнеры прямо из тестов, создавая временные окружения для тестирования. Это упрощает интеграционное тестирование, минимизируя необходимость ручной настройки баз данных, брокеров сообщений и других сервисов. 📌 Что такое pgvector? pgvector — это расширение PostgreSQL, добавляющее поддержку работы с векторными данными. Это крайне полезно для приложений, которые используют эмбеддинги (например, из OpenAI или Hugging Face) для поиска, машинного обучения или рекомендательных систем. 📌 О чём статья? Как настроить Testcontainers для работы с PostgreSQL в .NET. Как подключить расширение pgvector в тестовой базе данных. Пошаговое руководство по созданию контейнера с Postgr...

🎨 Новый канал для вдохновения — UX in GIF Мы запустили свежий канал, где делимся идеями для дизайна интерфейсов. Всё самое с
🎨 Новый канал для вдохновения — UX in GIF Мы запустили свежий канал, где делимся идеями для дизайна интерфейсов. Всё самое стильное, оригинальное и вдохновляющее теперь в одном месте. 📌 Чем полезен канал? → Идеи для дизайна интерфейсов. → Анимации, которые можно повторить или адаптировать. → Лёгкий способ искать вдохновение перед новым проектом. 👉 Подписывайтесь и вдохновляйтесь: UX in GIF

🔗 Что такое паттерн «Цепочка»? В основе паттерна «цепочка» лежит идея последовательной обработки запроса через несколько мик
🔗 Что такое паттерн «Цепочка»? В основе паттерна «цепочка» лежит идея последовательной обработки запроса через несколько микросервисов. Клиент делает запрос, который обрабатывается первым сервисом (A). Этот сервис передает результат следующему (B), затем — следующему (C) и так далее, пока не будет получен финальный результат, возвращаемый клиенту. Этот процесс можно представить как конвейер, где каждый этап выполняет строго определенную задачу. Преимущества паттерна Модульность: каждый сервис отвечает за свою часть работы. Это делает систему более понятной и легкой в поддержке. Повторное использование: сервисы можно использовать в других бизнес-процессах, объединяя их в новые цепочки. Простота реализации: логика каждого микросервиса изолирована, что упрощает проектирование и тестирование. Недостатки паттерна Высокие задержки: каждый вызов в цепочке требует времени, а синхронное взаимодействие увеличивает общее время отклика для клиента. Уязвимость к сбоям: Если один из сервисов выйдет из стро...

☁️ Размышления про абстракции Недавняя статья поднимает важную тему — не каждая абстракция в программировании приносит пользу
☁️ Размышления про абстракции Недавняя статья поднимает важную тему — не каждая абстракция в программировании приносит пользу. Автор критикует «ложные абстракции» — те, что лишь добавляют уровни сложности, не скрывая внутреннюю сложность системы. Основные мысли: 💭 Хорошая абстракция упрощает работу, скрывая сложные детали; 💭 Плохая абстракция лишь увеличивает количество слоев и усложняет понимание системы; 💭 Абстракции стоят дорого: они могут снижать производительность и усложнять сопровождение; 💭 Со временем даже хорошие абстракции могут начать «протекать», требуя знания внутренних механизмов. ✅ Прежде чем добавлять новый уровень, задайте себе вопрос: действительно ли это абстракция или просто очередной слой косвенности? Хорошая абстракция должна приносить реальную ценность, а не просто усложнять код.

Что такое паттерн «Цепочка»? В основе паттерна «цепочка» лежит идея последовательной обработки запроса через несколько микросервисов. Клиент делает запрос, который обрабатывается первым сервисом (A). Этот сервис передает результат следующему (B), затем — следующему (C) и так далее, пока не будет получен финальный результат, возвращаемый клиенту. Этот процесс можно представить как конвейер, где каждый этап выполняет строго определенную задачу. Преимущества паттерна Модульность: Каждый сервис отвечает за свою часть работы. Это делает систему более понятной и легкой в поддержке. Повторное использование: Сервисы можно использовать в других бизнес-процессах, объединяя их в новые цепочки. Простота реализации: Логика каждого микросервиса изолирована, что упрощает проектирование и тестирование. Недостатки паттерна Высокие задержки: Каждый вызов в цепочке требует времени, а синхронное взаимодействие увеличивает общее время отклика для клиента. Уязвимость к сбоям: Если один из сервисов выйдет из строя, вся цепочка перестанет работать, что может нарушить работу приложения. Сложности мониторинга: С ростом длины цепочки становится сложнее отслеживать метрики производительности и отладку. Когда использовать паттерн «Цепочка»? Этот паттерн хорошо подходит для сценариев, где: Необходимо последовательное выполнение задач (например, обработка платежей или подготовка данных для аналитики). Задачи строго зависят друг от друга. Длина цепочки невелика, а задержки допустимы. Если же время отклика критично или система должна быть устойчива к сбоям, стоит рассмотреть альтернативы, такие как асинхронное взаимодействие или паттерн оркестрации. Пример работы цепочки Представьте систему интернет-магазина: Сервис заказов: Получает запрос от клиента и отправляет его в обработку. Сервис платежей: Проверяет оплату и подтверждает транзакцию. Сервис доставки: Формирует данные для логистики. Вместо того чтобы все эти действия выполнялись в одном монолите, они делятся на независимые сервисы, каждый из которых выполняет свою функцию и передает результат дальше.

📘 SkunkHTML: Генератор статичных сайтов SkunkHTML — это инструмент, который позволяет легко и быстро создавать статичные веб
📘 SkunkHTML: Генератор статичных сайтов SkunkHTML — это инструмент, который позволяет легко и быстро создавать статичные веб-сайты из файлов Markdown, автоматизируя процесс генерации и развертывания. Он разработан на F#, что делает его не только функциональным, но и интересным примером использования этого языка. 🛠️ Как это работает? 1. Форкните репозиторий: SkunkHTML на GitHub. 2. Добавьте контент: создайте свои файлы Markdown в соответствующей папке. 3. Настройте GitHub Pages: включите автоматическое развертывание через GitHub Actions. 4. Наслаждайтесь готовым сайтом! 📎 Попробуйте сами! #новость

⏱ Реализация службы на основе времени в .NET 8 с использованием IHostedService Фоновые службы — это важный компонент для выпо
Реализация службы на основе времени в .NET 8 с использованием IHostedService Фоновые службы — это важный компонент для выполнения задач, работающих параллельно с основным приложением. В .NET 8 интерфейс IHostedService предоставляет простой и гибкий способ управления такими службами. Вот как это работает. Что делает IHostedService? IHostedService используется для создания служб, которые запускаются при старте приложения и завершаются при его остановке. Он предоставляет два метода: 1️⃣ StartAsync: выполняется, когда приложение запускается. Здесь вы определяете, что должно делать ваша служба. 2️⃣ StopAsync: вызывается перед завершением работы приложения. Здесь можно остановить фоновые задачи и освободить ресурсы. Как работает служба на основе времени? Основная идея — это выполнение определённой задачи через регулярные промежутки времени, например: Отправка данных на сервер. Очистка временных файлов. Обновление данных кэша. Для реализации этого обычно используется таймер. Таймер запускается в метод...

🧠 Machine Learning — топовый канал, где собрана вся база по ИИ и машинному обучению. Senior разработчик AI-алгоритмов и авто
+5
🧠 Machine Learning — топовый канал, где собрана вся база по ИИ и машинному обучению. Senior разработчик AI-алгоритмов и автономных агентов, разбирает внутренности алгоритмов, редкую литературу и код самых интересных ИИ проектов. Уже ни для кого, не секрет, что в 2025 году ИИ выйдет на совершенно новый уровень тот, кто не успеет за прогрессом - отстанет, а кто разберется - сорвет куш. Стоит подписаться:

✈️ Локальный запуск LLMs в .NET с Ollama и Semantic Kernel Большие языковые модели (LLMs) чаще всего ассоциируются с облачным
✈️ Локальный запуск LLMs в .NET с Ollama и Semantic Kernel Большие языковые модели (LLMs) чаще всего ассоциируются с облачными решениями, такими как OpenAI или Azure. Но что, если вам нужно запустить модель локально? Это может быть полезно для обеспечения конфиденциальности данных, экономии средств или работы в офлайн-среде. Именно здесь на помощь приходят Ollama и Semantic Kernel. Давайте разберём, как это работает. 🦙 Что такое Ollama? Ollama — это инструмент, позволяющий запускать большие языковые модели локально, на вашем компьютере. Он минимизирует зависимость от облачных сервисов, обеспечивает защиту данных и позволяет вам полностью контролировать вычислительные ресурсы. ❓Что такое Semantic Kernel? Semantic Kernel — это SDK от Microsoft, созданное для интеграции возможностей ИИ в приложения на .NET. Оно поддерживает работу с различными провайдерами LLMs, включая локальные серверы, такие как Ollama. Как всё это работает? ➖Установка Ollama: вы начинаете с установки Ollama на свою систему. Он предост...

📎🎯 Создание современной документации API в ASP.NET Core с Scalar Документация API — важная часть любого проекта. В статье р
📎🎯 Создание современной документации API в ASP.NET Core с Scalar Документация API — важная часть любого проекта. В статье рассказывается, как использовать Scalar для создания удобной и стильной документации для ASP.NET Core API. ❓Что такое Scalar? Scalar — это альтернатива стандартному Swagger UI, предлагающая современный дизайн, улучшенную навигацию и поддержку аутентификации. Как интегрировать Scalar? ⚙️ Установить пакет: Через NuGet добавить Scalar.AspNetCore в проект. ⚙️ Настроить Scalar: В Program.cs добавить маршрут для Scalar. Настроить отображение документации с параметрами: заголовок, тема и т. д. ⚙️ Добавить безопасность: Указать схему Bearer-токенов для аутентификации. Настроить требования безопасности в AddSwaggerGen. ⚙️ Обновить стартовую страницу: В LaunchSettings.json задать scalar/v1 в качестве стартового URL. 📎 За подробностями загляните в статью!

🛠 Кастомный middleware в .NET Core: Расширяем функциональность приложения Middleware — это ключевая часть обработки зап
🛠 Кастомный middleware в .NET Core: Расширяем функциональность приложения Middleware — это ключевая часть обработки запросов в .NET Core. Создание своего middleware позволяет разработчикам адаптировать поведение приложения под конкретные задачи, такие как логирование, обработка ошибок или проверка безопасности. 🤔 Что такое middleware? Middleware — это программные компоненты, которые обрабатывают запросы и ответы на пути их прохождения через HTTP-пайплайн. Каждый компонент может: Обрабатывать входящий запрос. Модифицировать ответ перед отправкой клиенту. Выполнять промежуточные задачи, например логирование или валидацию. 📌 Когда нужно создавать собственный middleware? Обработка ошибок: например, возвращать структурированные JSON-ответы вместо стандартных сообщений. Логирование: отслеживать запросы, ответы или время выполнения. Кросс-функциональные задачи: например, добавление заголовков или проверки безопасности. Оптимизация производительности: внедрение кэширования или минимизации нагруз...

🦑👨💻 Программист в «Игре в кальмара»: каковы твои шансы выжить? Думаешь, что легко переживаешь дедлайны и код-ревью? 😏 А г
🦑👨💻 Программист в «Игре в кальмара»: каковы твои шансы выжить? Думаешь, что легко переживаешь дедлайны и код-ревью? 😏 А готов ли ты к реальному испытанию? Пройди тест и узнай, какие у тебя шансы выжить в «Игре в кальмара» — самом беспощадном шоу на выживание! 🦑 🎯 Пройти тест

🛠 Продвинутый логинг в C# с использованием прокси Если вам нужен мощный и элегантный способ добавления логирования в ваш про
🛠 Продвинутый логинг в C# с использованием прокси Если вам нужен мощный и элегантный способ добавления логирования в ваш проект на C#, то стоит обратить внимание на использование прокси. Такой подход описан в статье, и он открывает массу возможностей для гибкого логирования. 🤔 Что такое прокси? Прокси — это объект, который находится между клиентом и целевым объектом. Они позволяют "перехватывать" вызовы методов, добавляя дополнительные действия. Например, логирование входных параметров, времени выполнения или результатов. Использование прокси помогает: 💡 Отделить логику логирования от бизнес-логики. 💡 Минимизировать изменения в существующем коде. 💡 Упростить внедрение других кросс-функциональных задач, например, мониторинга. Пример:
public void Intercept(IInvocation invocation)
{
    Console.WriteLine($"[Log] Calling: {invocation.Method.Name}");
    Console.WriteLine($"[Log] Arguments: {string.Join(", ", invocation.Arguments)}");
    
    invocation.Proceed(); // Выполнение оригинального метода
    
  
...

🤨 Когда использовать Parallel.For в C#: плюсы и минусы Параллельная обработка данных стала ключевым аспектом современных при
🤨 Когда использовать Parallel.For в C#: плюсы и минусы Параллельная обработка данных стала ключевым аспектом современных приложений. Одним из простых способов реализации параллельности в C# является метод Parallel.For. Он позволяет запускать итерации цикла одновременно на нескольких ядрах процессора. Но всегда ли это лучший выбор? Давайте разберёмся. Преимущества Parallel.For: Ускорение выполнения: этот метод использует многопоточность, распределяя задачи между ядрами процессора. Автоматическая оптимизация: вам не нужно вручную управлять потоками или их количеством. Среда выполнения адаптируется под ресурсы. Простой синтаксис: с помощью Parallel.For легко заменить обычный цикл for, добавив всего несколько строк кода. Когда Parallel.For не подходит: 🙅‍♂️ Малые задачи: если итерации выполняются быстро, накладные расходы на параллельность могут сделать метод менее эффективным. 🙅‍♂️ Зависимость итераций друг от друга: если каждая итерация зависит от результатов других, параллельность нарушает логику в...

💯 Лучшие посты о .NET в 2024 году: ключевые темы и новинки Мир .NET продолжает развиваться, и 2024 год стал одним из самых н
💯 Лучшие посты о .NET в 2024 году: ключевые темы и новинки Мир .NET продолжает развиваться, и 2024 год стал одним из самых насыщенных событий и обновлений в экосистеме. Официальный блог .NET подвёл итоги года, выделив наиболее значимые публикации и достижения. Вот основные темы, которые изменили ландшафт разработки на .NET. 1️⃣ Анонс и выпуск .NET 9 Выпуск .NET 9 стал важным этапом, представив: Мощные оптимизации производительности, включая улучшения сборщика мусора, поддержку Native AOT и расширенную многопоточность. Инструменты для создания AI-ориентированных приложений, интегрированные в платформу. Более глубокую интеграцию с облачными сервисами, что упрощает масштабирование приложений. 2️⃣ Улучшения производительности: скорость на первом месте Команда .NET уделила огромное внимание производительности, внедрив более 1 000 изменений. Среди ключевых улучшений: Более эффективная работа с памятью. Ускорение запуска приложений благодаря Native AOT. Оптимизация работы в многопоточной среде. 3️⃣ Инте...