Рубрика «система»

Всем привет!

Сегодня хочу поделиться с вами тем, как «съесть слона» по кусочкам на моем личном опыте.. Эта статья будет полезна бизнес и системным аналитикам, которые сталкиваются с масштабными проектами и задачами, требующими декомпозиции. 

Немного о предыстории

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

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

Доброго времени суток, дорогие читатели! Сегодня я затрону одну интересную тему — графические дисплейные сервера и протоколы в Linux. В этой статье я расскажу вам о архитектуре X11 и Wayland, историю их создания и наконец-то сделаем вывод: Иксы на мороз, или вейланд на помойку?

Еще в далеком 2016 году вышла Fedora 25 с окружением GNOME 3.22 на базе дисплейного сервера Wayland. А в RHEL 10 выкинут X11 на мороз. Релиз RHEL 10 намечен на 2025 год, CentOS Stream 10 — на 2024 год. Для обеспечения работы приложений, требующих X11, будет использоваться XWayland. Таким образом, в 2029 году (к моменту окончания первого этапа поддержки RHEL 9) стоит ожидать появление первого аппаратного обеспечения, не поддерживающего X11.

И как я думаю — будущее за Wayland. Но пока X11 является стандартом. Давайте разберем это!

Вперед в будущее: Wayland против X11 - 1

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

System Design 101 - 1

О сложных системах простыми словами.

В шпаргалке на высоком уровне рассматриваются такие вещи, как протоколы коммуникации, DevOps, CI/CD, архитектурные паттерны, базы данных, кэширование, микросервисы (и монолиты), платежные системы, Git, облачные сервисы etc. Особую ценность представляют диаграммы — рекомендую уделить им пристальное внимание. Полагаю, шпаргалка будет интересна всем, кто хоть как-то связан с разработкой программного обеспечения и, прежде всего, веб-приложений. Буду признателен за помощь в уточнении/исправлении понятий, терминологии, логики/алгоритмов работы систем (в рамках того, что по этому поводу содержится в оригинале), а также в обнаружении очепяток.

Выражаю благодарность Анне Неустроевой за помощь в редактировании материала.

Возможно, немного другой формат шпаргалки покажется вам более удобным.

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

image

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

Безумная система - 1

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

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

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

Введение

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

Добрый день!

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

Задача, которой мы займемся звучит так.
Найти общее решение следующей системы уравнений

image

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

Я хочу показать, как можно решать подобные системы другим способом. Насколько она известна и применяется где либо, я узнать не смог. Во всех публичных/популярных материалах, используется метод Гаусса.

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

Но решение красиво и наглядно, кроме этого легко видеть критерий при котором система не имеет решений.
Читать полностью »

Обыскать 314 км² за 10 часов — финальное сражение инженеров-поисковиков против леса - 1

Представьте задачу — в лесу пропали два человека. Один из них еще подвижен, другой лежит на месте и не может пошевелиться. Известна точка, где их видели последний раз. Радиус поиска вокруг нее — 10 километров. Получается территория площадью 314 км2. У вас есть десять часов на поиск с помощью новейших технологий.

Услышав условие в первый раз, я подумал: «пфф, подержите мое пиво». Но потом увидел, как передовые решения спотыкаются обо все, что возможно и невозможно учесть. Летом я писал, как около 20 инженерных команд пытались решить задачу в десятки раз проще, но делали это на пределе возможностей, и только четыре команды справились. Лес оказался территорией скрытых подвохов, где современные технологии бессильны.

Тогда это был лишь полуфинал конкурса «Одиссея», организованного благотворительным фондом «Система» — цель которого придумать, как модернизировать поиск пропавших в дикой природе людей. В начале октября в Вологодской области прошел его финал. Четыре команды столкнулись с той самой задачей. Я отправился на место, чтобы понаблюдать за одним из конкурсных дней. И в этот раз ехал с мыслью, что задача — нерешаемая. Но я никак не ждал увидеть «Настоящий детектив» для любителей DIY-электроники.
Читать полностью »

Как известный исследователь поймал удачу, поставил в тупик владельцев казино по всему миру, и вышел из игры с целым состоянием

Профессор, обыгравший рулетку - 1

Тёплым майским вечером 1969 года толпа потрясённых игроков сгрудилась вокруг изношенного рулеточного стола в районе Итальянской Ривьеры. В центре стоял долговязый 38-летний профессор медицины в мятом костюме. Он только что сделал ставку в $100 000 ($715 000 на сегодняшние деньги) на один раунд рулетки. Крупье выпустил маленький белый шарик, и комната замерла. Не может же ему настолько сильно повезти… или может?

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

Инженеры спасают пропавших в лесу людей, но лес пока не сдается - 1

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

До сих пор технологии упираются в массу ограничений, а спасательные отряды прочесывают огромные площади сотнями волонтеров.

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


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