Рубрика «open source» - 233

Сегодня расскажем и покажем как за полчаса поднять свой Backend as a Service (BaaS) с весьма интересными возможностями.

Свой BaaS c моделированием предметной области, скриптами и многим другим за полчаса - 1

BaaS — это веб-приложение, которое работает в облаке и предоставляет все необходимое для бизнес/мобильных приложений и сайтов (front-end). BaaS как минимум позволяет:

  • Управлять пользователями и ролями
  • Моделировать предметную область
  • Получать доступ к данным через REST
  • Управлять самими данными (база данных)

Читать полностью »

В августе 2016 в очередной раз состоялось мероприятие Black Hat USA.

Black Hat Conference — конференция по компьютерной безопасности, объединяющая множество людей, интересующихся информационной безопасностью. Конференцию посещают как представители федеральных агентств и корпораций, так и хакеры. Briefings регулярно проходит в Лас-Вегасе, Амстердаме и Токио. Мероприятие, предназначенное специально для Федеральных служб, проводится в Вашингтоне, округ Колумбия.

Предлагаю вашему вниманию видеозапись и слайды одного из наиболее интересных докладов конференции «Ядро Linux, спрятанное внутри Windows 10». Автором доклада выступил небезызвестный исследователь компьютерной безопасности Алекс Ионеску, автор бестселлера «Windows Internals».

Слайды и листинги кода к выступлению Алекса Ионеску. К сожалению, пока доклад доступен только на английском языке.

Читать полностью »

Большинство ПО кластерных систем предполагает наличие файловой системы доступной со всех узлов кластера. Эта файловая система используется для хранения ПО, данных, для организации работы некоторых кластерных подсистем и т.д. Требования на производительность такой FS могут сильно отличаться для разных задач, однако, чем она выше, тем считается, что кластер более устойчив и универсален. NFS сервер на мастер-узле является минимальным вариантом такой FS. Для больших кластеров NFS дополняется развертыванием LustreFS — высокопроизводительной специализированной распределенной файловой системы, использующей несколько серверов в качестве хранилища файлов и несколько метаинформационных серверов. Однако такая конфигурация обладает рядом свойств, которые сильно затрудняют работу с ней в случае, когда клиенты используют независимые виртуализированные кластера. В системе HPC HUB vSC для создания разделяемой FS используется широко известное решение CEPH и файловая система GFS2.
main
Читать полностью »

Этот день настал: мы открыли исходный код десктопных редакторов ONLYOFFICE. Теперь они абсолютно бесплатны для домашнего и коммерческого использования. Лицензия AGPLv3, скачать на сайте, код на GitHub.

A в этой статье мы просто приведем несколько аргументов в пользу того, чтобы при отказе от Microsoft Office по экономическим или идеологическим причинам переходить на ONLYOFFICE, а не на Libre. Читайте далее, чтобы испытать боль.

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

ONLYOFFICE или Libre: о битве форматов и совместном редактировании - 1
Читать полностью »

Ищем и анализируем ошибки в коде GitExtensions - 1

Как изестно Ядро Git представляет собой набор утилит командной строки с параметрами. Для комфортной работы как правило используются утилиты, дающие нам привычный графический интерфейс. Вот и мне довелось в свое время поработать с такой утилитой для Git, как GitExtensions. Не скажу, что это самый удобный инструмент, которым мне доводилось пользоваться (к примеру, тот же TortoiseGit мне нравится больше), но он явно и не безосновательно занимает свою нишу в списке любимых и проверенных утилит для работы с Git.

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

В этой статье мы поговорим о шаблонах проектирования «Единица работы» и «Репозиторий» в контексте тестового веб-приложения на ASP.NET Core (с использованием встроенного DI), которое мы с вами вместе и разработаем. В результате мы получим две реализации взаимодействия с хранилищем: настоящую, на основе базы данных SQLite, и фейковую, для быстрого тестирования, на основе перечисления в памяти. Переключение между этими двумя реализациями будет выполняться изменением одной строчки кода.

ASP.NET Core: Пример реализации шаблонов проектирования Единица работы и Репозиторий - 1
Читать полностью »

Несколько лет назад я реализовал ряд проектов, для управления которыми использовалась система управления основанная на ASP.NET Dynamic Data. В свое время эта система сэкономила достаточно много времени и ресурсов. Но как известно, в ИТ все развивается очень стремительно. Не так давно вышла в релиз платформа .NET Core, основным нововведением которой была поддержка кроссплатформенности. Это в свою очередь позволило мне мигрировать ряд небольших проектов, а также проектов, которые я поддерживаю на некоммерческой основе на бюджетные сервера от Digital Ocean, которые, как известно, поддерживают только ОС семейства Linux. Когда дело дошло до системы управления передо мной стоял выбор — с минимальным изменением кода портировать проект под Mono, или переписать с нуля использую новые возможности .NET Core. Взвесив все за и против, я выбрал второй вариант. Что из этого вышло и что я собираюсь получить вы можете узнать под катом.

Универсальная система управления данными на базе технологий скаффолдинга и платформы .NET Core - 1
Читать полностью »

Рано или поздно в программе что-нибудь идет не так. Не открылся файл, не создалась рабочая нить, не выделилась память… И с этим нужно как-то жить.

В небольшом однопоточном приложении довольно просто: можно прервать всю работу и рестартовать. Это один из факторов, благодаря которому Erlang снискал себе заслуженную популярность, ведь идеология fail fast является одним из краеугольных камней Erlang-а с его легковесными процессами. Если же приложение большое, сложное и многопоточное, то не разумно рестартовать все приложение, если лишь одна из его нитей столкнулась с проблемами. Еще хуже в ситуации с реализациями Модели Акторов, в которых сотни тысяч акторов могут работать на десятках рабочих нитей. Проблема одного актора вряд ли должна сказываться на всех остальных акторах.

В данной статье мы расскажем, как мы подошли к обработке ошибок в своем фреймворке SObjectizer.

Исключениям – да, кодам возврата – нет!

Когда SObjectizer-4 появился в 2002-ом году, мы сделали большую ошибку – предпочли использовать коды возврата исключениям. И весь последующий опыт разработки на SObjectizer-4 снова и снова убеждал в одной простой истине: если ошибка может быть прогнорирована разработчиком, то она будет им проигнорирована. Поэтому при создании SObjectizer-5 мы решили использовать исключения для информирования об ошибках.

Читать полностью »

Продолжаем делиться материалом по работе с ASP.NET Core. В прошлой статье мы рассказывали о развертывании приложения ASP.NET Core на Nano Server со службами IIS. Сегодня поговорим о создании внешнего интерфейса веб-службы для вашего приложения.

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

ASP.NET Core: Создание внешнего интерфейса веб-службы для приложения - 1
Читать полностью »

Всем привет!
Решил поделиться опытом автоматизации контроля громкости вещания своего СМИ. Думаю, у всех профильных технарей давно болит голова, точно продолжает болеть. Введенная Минкомсвязи рекомендация в области нормирования громкости звуковых сигналов вызвала волны возмущения.
Не было предоставлено ни средств контроля, ни средств производства. Крутитесь как хотите.
Впрочем, уже давно, задолго до того знакового события существуют различные плагины к монтажным программам.
Но как быть если уже накоплена огроменная медиабаза?
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js