Все потоки
Поиск
Написать публикацию
Обновить
383.31

Open source *

Открытое программное обеспечение

Сначала показывать
Порог рейтинга
Уровень сложности

Что нового в vite-plugin-create v1.0.1 или как я ещё на шаг приблизился к идеальному генератору

Уровень сложностиСредний
Время на прочтение2 мин
Количество просмотров834

После выхода первой версии плагина я решил сразу сесть за реализацию roadmap

Новая версия vite-plugin-create — это не просто багфиксы, а большой шаг в сторону реальной кастомизации. Теперь ты сам определяешь, что ты хочешь генерировать, как называть, какие шаблоны использовать — и всё это максимально просто.

Читать далее

Как я научился анализировать собственные собесы с помощью Whisper (и почему это нужно каждому айтишнику и не только)

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров19K

Собеседования - всегда стресс. Я замечал, что после каждого интервью трудно вспомнить детали: какие вопросы задавали, как именно я отвечал, где были ошибки или неточности. А переслушивать запись, которая может длиться от часа и выше это долго и неэффективно.

Задумался: а что если использовать что-то, что автоматически превратит аудиозапись интервью в текст? Так я открыл для себя Whisper от OpenAI. Под катом подробности о его применении.

Читать далее

Акторная модель для дошкольников

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров2.8K

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

Рассказ рассчитан на тех, кто хотя бы поверхностно знаком с концепциями ООП и (или) ФП. Ниже вы не найдёте всех тех запутывающих псевдонаучных объяснений, которые вам услужливо предоставит Вика или Анжела (или как там вы называете свою любимую LLM в приватных чатиках).

Текст написан именно сегодня, когда Алану Каю исполнилось 85! Поздравляем, Алан, ты — гений, спасибо тебе за всё!

А теперь про акторную модель

Rust 1.87.0: 10 лет Rust, анонимные каналы, безопасный вызов встроенных интринсиков

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров2.8K

Rust 1.87.0 и 10 лет Rust!


Команда Rust празднует 10-летие Rust в Утрехте, Нидерланды, и рада сообщить о новой версии языка — 1.87.0!



Сегодняшний день релиза выпал на 10-летний юбилей выхода Rust 1.0!


Спасибо мириадам участников, кто работал или работает над Rust. Выпьем за ещё многие десятилетия впереди! 🎉




Как обычно, новая версия включает в себя все изменения, которые были внесены в бета-версию за последние шесть недель согласно последовательному и регулярному циклу выпуска. Мы следуем ему начиная с Rust 1.0.


Если у вас есть предыдущая версия Rust, установленная через rustup, то для обновления до версии 1.87.0 вам достаточно выполнить команду:

Читать дальше →

Devboard для К1921ВГ015

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров3.4K

Недавно в комментариях к статье о К1921ВГ015 я выкладывал фотографию своей макетной платы. Даже простой скриншот вызвал живой интерес, а некоторые читатели попросили поделиться проектом в текущем виде — без финальных доработок и тестов.

К сожалению, в последнее время мои приоритеты изменились, и уделять время хобби стало сложнее. Заказ плат, сборка и тестирование могут затянуться, я решил выложить проект до железной проверки. В качестве компенсации подробно опишу все ключевые моменты.

Читать далее

Сlite — «zero-dependency» фреймворк для создания CLI

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров2.4K

Привет, Хабр! Это моя первая статья и я пишу ее в рамках конкурса «Сезон Open Source на Хабре». Сегодня я хочу рассказать о своем pet-проекте, Clite - это легковесный, фреймворк на Python для создания CLI.

Читать далее

Переизобретаем Ansible для Windows в условиях кабинета информатики

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров3.3K

Привет, Хабр!

В нашей школе мы столкнулись с необходимостью автоматизации установки ПО на компьютеры. Я расскажу, для чего оно нам понадобилось, как я воевал с Windows во время разработки и к чему пришел в конечном итоге.

Читать далее

В поисках хорошего стиля. Часть 2. Пишем свой линтер на Go для golangci-lint

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров1.4K

Привет! Меня зовут Артём Блохин, я Go-разработчик в команде интеграций Островка. Сегодня поговорим о линтинге кода.

Если бы «Сумерки» были про код, Эдвард — был линтером, а Белла — легаси-кодом, их диалог звучал бы так:

Читать далее

Полмиллиона запросов за месяц: мой LLM-challenge и первые выводы

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров8.5K

Привет, Хабр! Меня зовут Евгений, я работаю разработчиком в Университете Кембриджа (UK). В начале апреля я запустил llm7.io - полностью бесплатный LLM-провайдер, совместимый с популярными библиотеками chat completion. Цель была простая: проверить, насколько эффективно можно построить отказоустойчивую архитектуру под настоящую high-load-нагрузку, и при этом дать всем желающим доступ к мощным языковым моделям - без регистрации, API-токенов, смс и прочих барьеров.

Что произошло за месяц?

Не складывайте медленный код в жобу

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров1.8K

Все разработчики учились на задачах, в которых вопрос производительности либо не стоит в принципе (тудушечка, гостевуха, что там еще принято делать на первом занятии), либо обозначен непосредственно в условиях задачи (алгоритмика, литкоды, злые преподы).

Потом были первые шаги в качестве стажеров/джунов, с соответствующим подбором задач. Чужой код, подсмотренный в пулл-реквестах признанных в команде асов, — тоже, скорее всего, был максимум асинхронным, и никогда параллельным. Так появляются мифы, один из которых — самый вредный, на мой взгляд, в современном мире, где у каждого в пляжном ноутбуке по триста ядер, — «параллельное программирование сложно».

В самой по себе параллельности ничего сверхъестественного нет: надо просто за недельку привыкнуть к тому, что результат получается не сразу, и всё. Проблема в другом: в том бесчисленном количестве костылей, нагроможденных претендующими (на звание неглупых) людьми, чтобы «упростить жизнь медиокра за клавиатурой».

В любой мало-мальской экосистеме обязательно будет такая штука, как «job runner». Чтобы линейный, простой как полено, код — мог иметь дело с длительными вычислениями. Нужен отчёт, а его генерация занимает полчаса? — Нет, мы не сделаем правильно, не поправим наши схемы, не озаботимся триггерами и persistent views, на это у нас нет ни времени, ни денег, мы стартап, поэтому делегируем: пусть весь неэффективный медленный код идёт в жобу!

Почему job runners — зло

Jellyfin Web на своём сервере. Фронтенд для медиастриминга

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров12K


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

Поэтому для медиасервера лучше выбрать опенсорсную программу, как Jellyfin.
Читать дальше →

А что если бы у Vite был свой nest g? Теперь есть

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров2.3K

🚀 Устал каждый раз руками создавать Component.tsx, index.ts, styles.module.scss и всё по кругу?

Решение есть! Простой и кастомизируемый CLI-инструмент для Vite, который генерирует компоненты — из шаблонов, которые ты сам задаешь.

Читать далее

Настройка OpenIDM для синхронизации между Active Directory и OpenDJ

Время на прочтение5 мин
Количество просмотров403

В этой статье мы настроим синхронизацию в OpenIDM между Active Directory и OpenDJ в обе стороны. Таким образом изменения, внесенные в Active Directory, будут синхронизированы в OpenDJ и наоборот, изменения в OpenDJ будут синхронизированы с Active Directory.

Читать далее

Ближайшие события

BookStack: мой опыт настройки и использования open-source базы знаний

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров7.2K

Как я поднял базу знаний за 15 минут — без бюджета и опыта

Почему я выбрал именно BookStack

Мы в команде давно искали удобный инструмент для хранения технической документации и инструкций. Пробовали всё подряд — от Wiki.js до Confluence. Но то санкции, то интерфейс перегружен, то кастомизация страдает. В какой-то момент я наткнулся на BookStack — лёгкую, симпатичную open-source платформу на Laravel. Решил попробовать. В итоге — развернул, настроил, и теперь она у нас в проде.

Читать далее

Атака на уязвимую систему Deathnote Vulnhub. Получение доступа к системе пользователя и суперпользователя root. Часть 7

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров707

Всех приветствую, читатели Хабра!

Седьмая часть анализа защищенности, правда в этот раз системы (серверной) Vulnhub. Система я поднимал на virtualbox, а не на докер, то есть иной метод виртуализации.

Вот ссылки на первые четыре части уязвимых веб-приложений, советую ознакомиться:

https://habr.com/ru/articles/894508/
https://habr.com/ru/articles/895092/
https://habr.com/ru/articles/895856/
https://habr.com/ru/articles/897296/
https://habr.com/ru/articles/898918/ (это уязвимая ОС на virtualbox)
https://habr.com/ru/articles/902248/

Примечание

Правовая информация:

Данная статья создана исключительно в ознакомительных/образовательных/развивающих целях.
Автор статьи не несет ответственности за ваши действия.
Автор статьи ни к чему не призывает, более того напоминаю о существовании некоторых статей в уголовном кодексе РФ, их никто не отменял:
УК РФ Статья 272. Неправомерный доступ к компьютерной информации
УК РФ Статья 273. Создание, использование и распространение вредоносных компьютерных программ
УК РФ Статья 274. Нарушение правил эксплуатации средств хранения, обработки или передачи компьютерной информации и информационно-телекоммуникационных сетей

Все атаки я проводил на локальный сервер, внутри моего сетевого интерфейса, на моем компьютере, то есть все действия легитимны.

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

Читать далее

Мировые лидеры по патентам в open source: кто они?

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров868

При соответствующем запросе информации в Google Patents (ключевое слово «open source») — появляется больше 100 тысяч результатов. Если попросить систему предоставить исключительно новые патенты — поисковая выдача сократится до 16 384 пунктов.

Попробуем проанализировать документы подобного профиля и их владельцев.

Читать далее

Picodata: вторая жизнь in-memory баз данных

Уровень сложностиСложный
Время на прочтение17 мин
Количество просмотров6K

Привет, меня зовут Костя Осипов, и я занимаюсь разработкой СУБД. На Хабре есть несколько моих статей про MySQL, Tarantool и про всякое-разное. Кроме того, я веду Telegram-канал, где делюсь инсайтами в области управления базами данных. Сегодня я выступаю в роли основателя компании Picodata, создающей одноимённую открытую СУБД, и управляющего директора ПАО Arenadata по исследованиям и разработке. Ниже — вольный пересказ моего недавнего доклада на HighLoad. Он про то, что нас ждёт в мире СУБД завтра, и, в частности, про место резидентных СУБД в архитектурах будущего.

Читать далее

One-shot промптинг. Как я начал вайбкодить в 10? раз быстрее

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров53K

Вообще, я менеджер.

Но когда-то писал код и всегда любил это занятие. Серьезно прогал мобильные приложения, и даже заработал за один из ответов на SO больше 100 звездочек.

Но с тех пор прошла куча времени.

И последнее время меня вновь увлекла эта тема. А как она может увлечь современного человека, измученного миллиардом фреймворков и отставшего от прогресса лет на 15?
Конечно-же курсором и вайб-кодингом.

И я начал кодить.

Собрал несколько ботов, потом замахнулся на CMS. Сейчас даже делаю свою тулзу для запуска LLM-пайплайнов с импортом их из n8n.

Но в процессе всего этого неизменно сталкивался с двумя проблемами

1) Cursor (и брат его Windsurf) паршивейшим образом обходится с нетипизированными и слабо-типизированными языками. Изобретает названия переменных, меняет их по ходу, и вообще, забивает на это огромный и толстый... За пределами этого кодит он неплохо. Но данная штука лично у меня порождает 90% багов.
2)...

Читать далее

Вышел релиз GitLab 17.11 с настраиваемыми фреймворками соответствия требованиям

Уровень сложностиСредний
Время на прочтение21 мин
Количество просмотров3.6K
Читать дальше →

Обзор Greenmask — утилиты для логического дампа PgSQL с трансформацией данных на лету

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров2.6K

Greenmask — это кроссплатформенный инструмент, разработанный на Go специально для безопасной работы с данными PostgreSQL: он помогает делать логические бэкапы, восстанавливать таблицы и при необходимости — анонимизировать чувствительную информацию. Главное преимущество Greenmask — полная совместимость с pg_dump и pg_restore. То есть, если вы уже работаете с этими инструментами, интеграция Greenmask не потребует пересмотра всей инфраструктуры.

Один из ключевых сценариев использования утилиты - подготовка баз данных для тестового стенда. Greenmask позволяет упростить процесс дампа продуктивных баз, обработки их для анонимизации тех же персональных данных, снижения размера баз (в тестовой среде зачастую не нужны терабайты данных с прода), восстановления дампов в тестовый контур.

Ниже в статье я опишу базовый функционал, примеры конфигураций для начала работы с Greenmask, а так же рассмотрим примеры трансформации данных при дампе таблиц.

Официальный сайт: https://greenmask.io

Документация: https://docs.greenmask.io/latest/

GitHub-репозиторий: https://github.com/GreenmaskIO/greenmask (уже 1308 звезд)

Telegram-канал: https://t.me/greenmask_ru

Читать далее

Вклад авторов