Рубрики
Программирование

Популярные российские модели больших языковых моделей (LLM)

В последние годы большая часть внимания в области искусственного интеллекта была сосредоточена на разработке все более мощных языковых моделей (LLM). Однако большинство этих моделей фокусируются на английском языке. На фоне этого российские исследователи и компании также разработали свои собственные модели для работы с русским языком — одним из самых популярных по числу пользователей языком в […]

Рубрики
Интернет

Балканизация интернета: как глобальная сеть превращается в «лоскутное одеяло» и что с этим делать

Интернет давно стал чем-то большим чем просто источник фотографий с котиками и мемов. Трудно переоценить его роль в нашей жизни — мы общаемся там, работаем, развлекаем, узнаём что-то новое. Но почему мы регулярно просыпаемся и видим что тот или иной сервис перестал работать? Что это — чей-то злой умысел или же нечто больше? Давайте разберёмся […]

Рубрики
Программирование

Прощай Swagger, привет Scalar

Swagger — это не зависящая от языка спецификация для описания REST API. Она позволяет компьютерам и пользователям лучше понять возможности REST API без прямого доступа к исходному коду. Точнее позволяла, ведь Microsoft удаляет встроенную поддержку Swagger (Swashbuckle) в .NET 9 из-за проблем с обслуживанием и перехода на встроенную поддержку OpenAPI. Вместо этого в качестве альтернативного инструмента […]

Рубрики
Основы Программирование

Разбираемся с SQL оператором «SELECT FOR UPDATE»

Реляционные базы данных отлично подходят для транзакционных рабочих нагрузок. Но ситуация может усложниться, когда несколько транзакций начинают одновременно обращаться к одним и тем же данным. К счастью, во многих базах данных SQL есть решение этой проблемы: SELECT FOR UPDATE.

Рубрики
Программирование

Span и Memory в .NET

Span<T> и Memory<T> типы данных в .NET которые предоставляют безопасные и высокопроизводительные средства управления памятью. Они могут помочь улучшить производительность вашего кода вне зависимости от того работаете ли вы с большими массивами, подстроками или обрабатываете буферы данных. Что ж давайте посмотрим, что из себя представляют Span<T> и Memory<T>, их преимущества, основные сценарии применения и те случаи когда их не стоит применять.

Рубрики
Интернет Программирование

Обход ограничений к Docker Hub

30-ого мая 2024 года мы внезапно узнали, что Docker Hub может внезапно превратиться в тыкву. Почему? А потому что санкции. Никогда такого не было и вот опять. Хотя США вроде бы и не говорили что нельзя, но видимо Docker Inc решили перестраховаться и заблокировали пользователей из РФ и, возможно, из Белоруссии. Самое любопытное, что уже 3 […]

Рубрики
Программирование

Middleware в ASP.NET Core

При разработке ASP.NET Core приложения одной из основных задач является обработка входящих запросов. Но если задуматься, то работа с ними происходит не только в контроллере, но и до него и даже после. Давайте разберёмся с предобработкой запроса — как она устроено, с чем её едят и что с ней делать.

Рубрики
Программирование

Удаляем данные из базы быстро и решительно при помощи Entity Framework

Далеко не всегда нужно удалять данные из базы, но всё же хочется как можно сильней снизить затраты. В новой версии Entity Framework для этого были добавлены интересные методы — ExecuteDelete и ExecuteDeleteAsync. Давайте же рассмотрим как они помогут нам ускорить работу над удалениям записей?

Рубрики
Основы Программирование

Абстрактные классы и интерфейсы в C#

Очень часто на собеседованиях спрашивают в чём разница между абстрактным классом и интерфейсом. И на первый взгляд вопрос-то не сильно сложный, но при этом даже здесь есть интересные подводные камни.

Рубрики
Программирование

Разработка GUI-приложений под Linux… на C#. Часть 2

Что ж… GTK# хорошая и интересная штука, но есть кое-что получше. Avalonia – это кроссплатформенный XAML фреймворк для платформы .NET. Он поддерживает Windows, Linux, macOS, Android и iOS. Развивается проект при поддержке сообщества и является open-source, что весьма полезно в наше непростое время.