Как стать автором
Обновить
213.87

Open source *

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

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

15 лет «Фланта»: переход от сервисной компании к продуктовой, покупка внешнего продукта, вера в Open Source

Уровень сложности Простой
Время на прочтение 17 мин
Количество просмотров 242
Блог компании Флант DevOps *Управление продуктом *Open source *IT-компании
Ретроспектива

В мае 2023 года «Фланту» исполнилось 15 лет. За это время из небольшого предприятия двух друзей-студентов, которые мечтали поставить GNU/Linux на каждый рабочий стол, мы выросли в команду опытных и уважаемых в индустрии DevOps-инженеров и постепенно трансформируемся в продуктовую компанию с собственной экосистемой продуктов: Kubernetes-платформой Deckhouse, утилитой для CI/CD werf, системой мониторинга Okmeter и другими проектами.

В этой статье мы хотели порефлексировать о переходе от сервисной компании к созданию собственных продуктам, рассказать, как эти продукты развивались и что с нами произошло за последние 5 лет.

Сразу обозначим свой «символ веры». Услуга DevOps as a Service (DaaS) была, есть и будет основой нашей продуктовой линейки. Именно благодаря инженерам, которые 24/7 обслуживают сотни клиентских кластеров, мы можем получать максимально быстрый фидбэк по своим продуктам, тестировать новые релизы и собирать кучу новых идей для дорожной карты. То есть в нашем случае услуга, как бы странно для классических продуктовых компаний это ни звучало, является одним из ключевых компонентов продуктовой разработки.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 0

Новости

Как протокол RDP (почти) вырвался из проприетарного рабства

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 14K
Блог компании RUVDS.com Open source *Системное администрирование *IT-стандарты *Серверное администрирование *
Обзор

Remote Desktop Protocol (протокол удалённого рабочего стола, RDP) — проприетарный протокол, разработанный Microsoft примерно в 1998 году. Начиная с XP каждая версия Windows включает системный компонент mstsc.exe.

Благодаря RDP, можно подключиться к другой системе и работать за ней словно за своим компьютером. То же самое делают, например, AnyDesk и TeamViewer, у которых протоколы схожей функциональности.
Читать дальше →
Всего голосов 50: ↑45 и ↓5 +40
Комментарии 24

Заметка к примеру «procfs3.c» 7 главы книги «The Linux Kernel Module Programming Guide»

Уровень сложности Простой
Время на прочтение 8 мин
Количество просмотров 1.2K
Open source *Системное программирование *C *Разработка под Linux *
Мнение

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

Что там?
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 7

Авакари — сервис для публикации и подписки на релевантные сообщения

Уровень сложности Средний
Время на прочтение 3 мин
Количество просмотров 448
Мессенджеры *Open source *Go *Облачные сервисы *Демосцена
Кейс

В предыдущей статье "Дерево Киви для поиска шаблона по тексту" я рассказывал, как можно эффективно находить по входящему сообщению все удовлетворяющие "поисковые запросы", избегая их перебора "в лоб" и прямого сопоставления. Это можно применить реализации полноценной Pub/Sub-системы, дополняющей уже существующие, такие как Nats, Apache Kafka или AWS SNS новой возможностью поддерживать действительно масштабируемое число wildcard-подписок. В этой статье я расскажу о такой системе.

Читать далее
Всего голосов 1: ↑0 и ↓1 -1
Комментарии 0

Истории

Библиотека MockWebServer-DSL в open-source: делаем конфетку из сетевых запросов в UI-тестах

Уровень сложности Простой
Время на прочтение 5 мин
Количество просмотров 845
Блог компании Яндекс Open source *Интерфейсы *Разработка под Android *Тестирование мобильных приложений *

Писать стабильные UI-тесты для Android-приложений — непростая задача. Здесь против ваших тестов работают обилие девайсов, нестабильность эмуляторов, многообразие поддерживаемых версий ОС, а ещё — ваши бэкенд-разработчики. Почти все мобильные приложения требуют для своей работы бэкенд и не могут показать даже приветственный экран без подгрузки данных. Поэтому для UI-тестов очень важно уметь приводить бэкенд в нужное для каждого тестового сценария состояние.

Сегодня мы выпускаем в open-source собственную библиотеку MockWebServer DSL. Она помогает удобно писать обработчики запросов на бэкенд в Android-тестах.

И как она работает?
Всего голосов 13: ↑13 и ↓0 +13
Комментарии 0

Typst — современная альтернатива LaTeX

Уровень сложности Средний
Время на прочтение 7 мин
Количество просмотров 6.6K
Блог компании Timeweb Cloud Open source *LaTeX *Софт Подготовка технической документации *
Обзор


Языки разметки хорошо подходят для создания и редактирования структурированных документов. Они лучше автоматизированы и гибки, чем аналоги с WYSIWYG. Здесь контент отделён от представления, задаётся текст и его структура, далее на основе выбранного шаблона форматируется документ. Подобную систему компьютерной вёрстки TEX (TeX) разработал Дональд Кнут в 1978 году, окончательный релиз оформился в 1979-м. Системы на основе TeX до сих пор являются актуальными в этой области и продолжают развиваться. Вот несколько примеров.
Читать дальше →
Всего голосов 40: ↑36 и ↓4 +32
Комментарии 17

Создание плагина кнопки редактора в Joomla 4

Уровень сложности Сложный
Время на прочтение 23 мин
Количество просмотров 494
Разработка веб-сайтов *Open source *PHP *JavaScript *Joomla *
Туториал

Статья о том, как удобно расширить пользовательские возможности при редактировании или создании контента в Joomla. Если Вы, например, захотите сделать подсчет СЕО-характеристик текста или внедрить ИИ помощник прямо в интерфейс Joomla, то эта статья расскажет как Вашему разработчику это сделать.

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Комментарии 5

Как поговорить с компьютером, если у вас не поехала крыша

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 5.4K
Open source *Машинное обучение *Natural Language Processing *
Из песочницы

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

Читать далее
Всего голосов 24: ↑24 и ↓0 +24
Комментарии 12

Обзор Coroot — Open Source-утилиты для наблюдаемости: установка, настройка, возможности, плюсы и минусы

Уровень сложности Средний
Время на прочтение 6 мин
Количество просмотров 6.6K
Блог компании Флант Open source *DevOps *Kubernetes *
Обзор

DevOps- и SRE-командам важно знать как можно больше о работе приложений, за которые они отвечают: как эти приложения работают в разных условиях, как их показатели меняются со временем, в какой точке можно ускорить работу, тем самым улучшив показатели производительности и доступности сервисов. Для всех этих задач важны показатели наблюдаемости (observability). Реализовать наблюдаемость можно при помощи технологии eBPF, которой уже более 10 лет.

Чтобы легко адаптировать статистику eBPF и получать из нее полезную информацию, нужен дополнительный инструмент. Одним из них и является Open Source-решение Coroot. Coroot — это observability-инструмент, который превращает данные телеметрии в полезную информацию, помогая быстро выявлять и устранять проблемы с приложениями. В статье проверим, какие у него есть возможности.

Читать далее
Всего голосов 40: ↑40 и ↓0 +40
Комментарии 3

Как и когда пора начинать коммитить в OSS

Уровень сложности Сложный
Время на прочтение 5 мин
Количество просмотров 1.2K
Open source *MySQL *PostgreSQL *Elixir/Phoenix *
Кейс

По долгу службы, мы много работаем с деньгами. Складываем, вычитаем, считаем проценты. Любому школьнику известно, что для этих расчетов не подходят обычные встроенные в язык типы: флоаты не сойдутся у финансовых аудиторов, большие целые принесут кучу проблем при конвертации (например, йены обходятся без дробных единиц, а в одном оманском риале — 1000 баиз, а не сто, как у всяких плебейских долларов и евро), и так далее. Существуют целые комитеты, определяющие стандарты (ISO 4217 — коды валют и ISO 24165 — идентификаторы цифровых токенов). Во всех более-менее современных языках есть библиотеки для работы с денежными суммами, реализующие стандарты и скрывающие от нас адовую арифметику без потерь точности.

В мире эликсира, почти всем, что связано с имплементацией комитетских стандартов, занимается Кип Коул. Удобной работе с деньгами мы обязаны тоже его библиотекам: ex_money — для собственно арифметики и money_sql для персистенса.

Читать далее
Всего голосов 6: ↑4 и ↓2 +2
Комментарии 9

Обновление fheroes2 — открытого движка Heroes of Might and Magic 2

Уровень сложности Простой
Время на прочтение 5 мин
Количество просмотров 7.9K
Open source *C++ *Разработка игр *Дизайн Игры и игровые консоли
Из песочницы

В конце 2022 года открытый игровой движок Героев Меча и Магии 2 (fheroes2) добрался до заветной 1.0 версии. Несколько лет назад на Habr уже была новость о движке, когда текущие разработчики только-только взялись за него. Возможно, кому-то было бы интересно узнать о прогрессе и планах проекта на будущее.

Читать далее
Всего голосов 47: ↑47 и ↓0 +47
Комментарии 26

Холиварный четверг: подключайтесь к BI-баттлу OpenSource vs проприетарное ПО

Уровень сложности Простой
Время на прочтение 3 мин
Количество просмотров 1K
Блог компании Visiology Open source *Визуализация данных *Хранение данных *Конференции

О чем стоит подумать в понедельник? Например, можно о том, чтобы поучаствовать в холиваре через три дня в четверг! Мы как раз готовимся провести онлайн-вебинар, посвященный решению задач Business Intelligence на базе OpenSource-технологий и проприетарного ПО. Но не просто так ради холивара, а на примере решения нескольких реальных кейсов. В мероприятии будут участвовать два эксперта, каждый из которых — убежденный сторонник своего подхода. Если тема BI вам близка, если любите похоливарить или просто хочется занять вечер четверга чем-то интересным, подключайтесь! Все подробности ивента — под катом.

Пожалуй, похоливарим...
Всего голосов 15: ↑13 и ↓2 +11
Комментарии 5

И два года не прошло: релиз Debian 12 «Bookworm». Возможности и изменения новой версии

Время на прочтение 4 мин
Количество просмотров 12K
Блог компании Selectel Open source *Софт
image

Совсем недавно на Хабре появилась новость о выходе релиза Debian GNU/Linux 12.0 (Bookworm). Разрабатывался он почти два года, так что текущей версии многие ждали с нетерпением.

Сообщается, что количество бинарных пакетов в новой версии на 4868 больше, чем в Debian 11. Всего добавлено 11089 новых бинарных пакетов, удалено 6296 (10%), плюс еще около 43 тыс. пакетов обновлено. Общее количество строк исходных текстов в дистрибутиве — 1 341 564 204, ну а общий размер всех пакетов — 365 ГБ. Давайте посмотрим, что изменилось или было добавлено.
Читать дальше →
Всего голосов 52: ↑51 и ↓1 +50
Комментарии 15

Gravitee.io: добавление кастомных плагинов, используя docker-compose

Уровень сложности Средний
Время на прочтение 9 мин
Количество просмотров 1.1K
Open source *Программирование *IT-инфраструктура *API *DevOps *
Туториал

Привет, Хабр! Сегодня мы разберёмся, как добавлять кастомные плагины в Gravitee.io

Gravitee.io - open source продукт-шлюз с витриной API. Эта статья рассчитана на тех, кто уже знаком с системой. Общая информация о продукте хорошо описана в статье: Что такое системы API Management.

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

Также написание собственных плагинов добавляет кучу возможностей при работе с Gravitee.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 0

Сводите свой код в салон красоты вместе с ESLint

Время на прочтение 2 мин
Количество просмотров 2.3K
Open source *JavaScript *GitHub *TypeScript *
Обзор

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

Почему это важно?

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

Код становится единообразным, когда становится сложно понять, кто его написал.

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

Читать далее
Всего голосов 11: ↑5 и ↓6 -1
Комментарии 4

Как мы сделали grpc-wiremock: сервис, создающий мок-сервер для ваших контрактов в одну команду

Время на прочтение 9 мин
Количество просмотров 1.9K
Блог компании СберМаркет Open source *Тестирование IT-систем *Go *Микросервисы *
Кейс

Всем привет, меня зовут Никита, уже пару лет я зарабатываю на жизнь развитием платформы-как-сервис в СберМаркет. В основном отвечаю за инструменты локальной разработки. Являюсь одним из создателей cli, которая позволяет развернуть сервис со всеми его зависимостями в одну команду sbm-cli service up.

Хочу рассказать, как мы делаем тестирование на моках в PaaS. И поделиться нашим опенсорс-решением на базе Wiremock.

Читать далее
Всего голосов 9: ↑9 и ↓0 +9
Комментарии 1

Как коммитить в open source. Пошаговый гайд

Уровень сложности Простой
Время на прочтение 2 мин
Количество просмотров 5.9K
Open source *Git *GitHub *
Из песочницы

Инструкция написана для сервиса github. Вам нужно войти в свой аккаунт или зарегистрироваться.

Все команды вводятся в терминале.

Шаг 1

Делаем fork (копию) нужного проекта. Переходим в свой аккаунт и заходим в только что созданный fork.

Читать далее
Всего голосов 44: ↑38 и ↓6 +32
Комментарии 22

Автоответчик на запросы доступа к файлам в гугл почте

Уровень сложности Простой
Время на прочтение 3 мин
Количество просмотров 1.4K
Open source *JavaScript *Google API *
Кейс

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

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

Узнать про гугл скрипт
Всего голосов 8: ↑8 и ↓0 +8
Комментарии 9

«Робот — Гобот» или изучаем азы программирования видеоигр в Godot

Уровень сложности Простой
Время на прочтение 4 мин
Количество просмотров 3K
Open source *Разработка игр *Учебный процесс в IT
Обзор

Давным давно, в далеком далеком подростковом возрасте, я загорелся идеей разрабатывать компьютерные игры. 

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

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

Сегодня героем нашего обзора станет интерактивный учебник с открытым исходным кодом Learn GDScript From Zero, который плавно погрузит абсолютных новичков в основы программирования для игрового движка Godot.

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Комментарии 8

Rust 1.70.0: протокол ''sparse'' для crates.io, OnceCell и OnceLock, лейблы отладочной информации

Уровень сложности Простой
Время на прочтение 5 мин
Количество просмотров 3.6K
Open source *Программирование *Системное программирование *Компиляторы *Rust *
Перевод

Команда Rust рада сообщить о новой версии языка — 1.70.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение.


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


rustup update stable

Если у вас ещё не установлен rustup, вы можете установить его с соответствующей страницы нашего веб-сайта, а также посмотреть подробные примечания к выпуску на GitHub.


Если вы хотите помочь нам протестировать будущие выпуски, вы можете использовать beta (rustup default beta) или nightly (rustup default nightly) канал. Пожалуйста, сообщайте обо всех встреченных вами ошибках.

Читать дальше →
Всего голосов 13: ↑13 и ↓0 +13
Комментарии 24

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