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

Пользователь

Отправить сообщение

Создание сервера для онлайн ММО игр на PHP ч.13 — Event-driven паттерн, JSON-RPC и почему не сервисная (SOA) архитектура

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

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

В этой статье я без привязки к коду объясню простым языком и в картинках как можно применять в разработке архитектуры авторитарного сервера для онлайн игр шаблон проектирования Event-driven.

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

Расчет транспортного потока на основе YOLOv5 и DeepSORT на базе Deepstream

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

Хотим сохранить ваше время и нервы с задачей по подсчету трафика на перекрестках.

Ярослав и Никита – наши CV-инженеры, поделились решением, которое всего за 4 шага поможет подойти к релизу с минимальной потерей времени и денег.

Статья будет полезна начинающим CV-инженерам, продуктологам, владельцам IT-продукта, маркетологам и проджект-менеджерам.

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

Синаптические веса в нейронных сетях – просто и доступно (Часть 2)

Время на прочтение3 мин
Количество просмотров4.9K

В предыдущей статье (Синаптические веса в нейронных сетях – просто и доступно) рассказывалось о смысле синаптических весов на примере модели определения цифры для 13-ти сегментного индикатора.

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

Чем различаются Kafka и RabbitMQ: простыми словами

Время на прочтение8 мин
Количество просмотров94K

Программные брокеры сообщения уже стали стандартом при построении больших и сложных систем. Однако до сих пор не все ИТ-специалисты понимают, как работают эти инструменты. Главный системный аналитик «Иннотех» Павел Малыгин помогает разобраться в брокерах сообщениях и их работе.

Читать далее
Всего голосов 56: ↑53 и ↓3+55
Комментарии33

Принципы проектирования SOLID

Время на прочтение8 мин
Количество просмотров23K

Группа принципов проектирования, связанных с разработкой программного обеспечения, предложенные Робертом Мартином. Характеризуют принципы, которые рекомендуется соблюдать при написании программного кода. Эти правила помогают писать код, который легко масштабировать и поддерживать.

Основная цель статьи - познакомить Вас с общими принципами SOLID и показать примеры на языке Python.

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

Как собрать акустический левитатор. Инструкция с фотографиями

Время на прочтение4 мин
Количество просмотров4.9K


Чаще всего движущая сила левитации — это магниты. Но почему не что-нибудь другое? Например, звук, встречные волны которого заставляют небольшой предмет зависнуть в воздухе. Эта работа — моя курсовая по «принципам инженерного дела». Благодарю за помощь миссис Бёрбави Ms. Berbawy и моих однокурсников. Материалом делимся к старту курса по разработке на C++.

Читать дальше →
Всего голосов 11: ↑8 и ↓3+5
Комментарии4

Светодиодная консоль для игры в Pong

Время на прочтение7 мин
Количество просмотров3.3K

Появление игры Pong ознаменовало начало новой эры. И хотя это была не первая видеоигра, именно она породила ажиотаж в этой сфере развлечений. Впервые для потребителей это чудо игростроя стало доступно с момента релиза Magnavox Odyssey в 1972 году. Odyssey поставлялся с 12 играми, но настольный теннис (Pong) стал на тот момент самой популярной из них. Позднее в компании Atari доработали принцип виртуального настольного тенниса, выпустив тот самый Pong, который мы все помним и любим. В течение нескольких лет я даже был в некоторой степени одержим этой игрой. У меня была идея воссоздать её с использованием матрицы светодиодов. Эта идея показалась мне весьма занятной в плане реализации, и я решил создать такую вариацию, которая бы и отдавала дань корням, и несла в себе мои авторские штрихи.
Читать дальше →
Всего голосов 31: ↑31 и ↓0+31
Комментарии4

Индексирование JSON в MySQL

Время на прочтение8 мин
Количество просмотров8.9K


В середине 2015 года, в MySQL 5.7.8 появился тип данных JSON. С тех пор он применяется, чтобы избегать жёстких определений столбцов и сохранять документы JSON всех форм и размеров: логи аудита, параметры конфигурации, сторонние полезные нагрузки, пользовательские поля и др. Подробности — к старту нашего курса по анализу данных.

Читать дальше →
Всего голосов 15: ↑14 и ↓1+15
Комментарии11

Нужны ли нам микросервисы?

Время на прочтение7 мин
Количество просмотров7.1K

Сегодня особую популярность получила микросервисная архитектура веб-приложений. У такого подхода есть много известных сторонников. К ним относятся Facebook, Uber, Groupon, Klarna, Amazon, Netflix, eBay, Comcast и другие. Но насколько необходим подобный подход в каждом конкретном случае?

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

4,2 гигабайта, или как нарисовать что угодно

Время на прочтение9 мин
Количество просмотров43K
В нашем мире мы можем сделать всё, что захотим. Всё что угодно.

Боб Росс, The Joy Of Painting, сезон 29, эпизод 1

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

Я представил огромный инопланетный объект, висящий в горящем оранжевом небе над давно покинутым Сиэтлом, здания которого покрыты зарослями.

Тем же вечером я за несколько часов создал вот такое изображение:


Простите за низкое разрешение — к сожалению, у моего GPU всего 12 ГБ памяти.

Поскольку очевидно, что я талантливый художник, имеющий за плечами буквально десятки минут опыта, мне захотелось поделиться тем, как я создал данный шедевр.
Читать дальше →
Всего голосов 160: ↑160 и ↓0+160
Комментарии92

Современная микросервисная архитектура: принципы проектирования

Время на прочтение7 мин
Количество просмотров28K

Первые упоминания о практическом использовании микросервисной архитектуры появились в 2010-х годах. Но сейчас она стала стандартом для отрасли. Ведущий архитектор Группы «Иннотех» Александр Соляр рассказал о некоторых нюансах микросервисов, а также принципах их использования.

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

Современная микросервисная архитектура: основные вызовы в работе системных аналитиков

Время на прочтение10 мин
Количество просмотров11K

Продолжаем знакомиться с современной микросервисной архитектурой. Ведущий архитектор Группы «Иннотех» Александр Соляр рассказал об основных сложностях аналитиков, с которыми можно столкнуться при работе с микросервисами, и способах их преодоления.

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

CI/CD и еще один CD. Разбираемся в терминологии pipelines в контексте автоматизации тестирования

Время на прочтение4 мин
Количество просмотров33K

В IT индустрии используется большое разнообразие инженерных культур и практик, таких как Agile, бережливое производство (lean software development), DevOps. Все они так или иначе нацелены на бесперебойную доставку ценности за счет повторяемых коротких итераций. Неотъемлемой частью такого подхода является конвейерный подход или по-английски – pipelines. Подразумевается, что в идеальном мире разработчик заливает код на сервер и дальше происходит магия, состоящая из автоматизированных этапов сборки проекта, контроля качества кода, запуска тестов и сбора метрики. На рынке существует большое количество платных и бесплатных инструментов для настройки такого процесса, который мы называем “процессом непрерывной интеграции” или CI/CD (Jenkins, GitLab CI, Teamcity и д.р.). Однако для построения действительно зрелого процесса недостаточно просто установить инструмент. За каждым этапом конвейера стоит сложная логика того, что должно быть запущено, на каких вычислительных ресурсах и как эти ресурсы используются.


На собеседовании кандидаты очень часто гордо говорят, что знают CI/CD. Но знать можно по-разному. Одно дело нажимать кнопку запуска и смотреть, какой цвет получился: красный или зеленый. И совсем другое дело настраивать весь флоу от и до самостоятельно, чем обычно и занимаются DevOps инженеры. Для проверки глубины знаний я задаю базовый вопрос, на который очень редко получаю ответ: “А в чем разница между CI и CD ?”. Далее я хочу поделиться своим пониманием отличий CI от CD и от еще одного CD на примере запуска автотестов. Заранее предупрежу, что мое видение может частично отличаться от вашего. Ведь у всех нас немного разный опыт, разные проекты и источники для изучения, которые могут расходиться. Главное, что какое-то видение у вас есть!

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

PHP & Kafka — production sadness

Время на прочтение3 мин
Количество просмотров8.1K

Это короткая история наивного любителя популярных технологий.

Ранее я уже писал почему на моем текущем проекте мы решили использовать — Apache Kafka, если вкратце, то цель — унификация используемых технологий в компании.

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

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

Итак, вернемся к нашим баранам.

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

Там где можно сэкономить — экономят.

Наша компания не исключение. Для обеспечения организационной части бизнеса — СРМ и интерфейсов первичного ввода данных(интерфейс судьи/статиста) мы используем PHP, для того чтобы производить сложные вычисления, используются иные технологии.

Для обмена данными между системами, наиболее принятым способом, является применение очередей.

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

Linux за 2$/100 рублей: Какой UMPC можно получить, покопавшись на барахолках?

Время на прочтение6 мин
Количество просмотров20K

Всем привет! Вот и подошла следующая часть из моего цикла статей очень дешевых девайсов, которым я всегда стараюсь найти применение. И на этот раз, я хочу вам показать еще одну классную сторону онлайн-барахолок(дабы не было рекламой - названия не упоминаю, но вы и сами догадались). Китайцы многое делают, чтобы сделать рынок UMPC как можно более дешевым и доступным - Lctech выпустили свою высокоинтегрированную плату Pi Zero на бутербродном AllWinner F1C100S - в который уже встроено 32/64мб ОЗУ, и цена которого - около 900руб на AliExpress. Я же предлагаю собрать UMPC за 100-500 рублей, и без единого кликбейта, на гораздо более мощном железе и с встроенным Wi-Fi, иногда 3G, полным USB стеком и встроенной NAND памятью 4-8гб. Интересно? Добро пожаловать под кат!

Окунуться в мир UMPC
Всего голосов 34: ↑33 и ↓1+42
Комментарии32

Stable Diffusion — важнейшая нейросеть за всю историю генеративного искусства

Время на прочтение7 мин
Количество просмотров48K


Компания Stability.ai объявила о публичном релизе модели графической нейросети Stable Diffusion. Можно подумать, что это лишь очередная новость о том, что в мире искусства появилась ещё одна рядовая нейросеть. Но это далеко не так по двум причинам, одну из которых вы видите в хабах. Подробности — к старту нашего флагманского курса по Data Science.
Узнать больше
Всего голосов 29: ↑25 и ↓4+28
Комментарии39

Гусеничный автономный робот. Платформа для Ваших роботов

Время на прочтение3 мин
Количество просмотров17K

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

Читать далее
Всего голосов 41: ↑40 и ↓1+53
Комментарии24

5 мини-ноутбуков конца лета 2022 года: модульность, портативность и производительность

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

Ноутбуки — отличный инструмент для многих представителей IT-индустрии. В целом, где ноутбук, там и твое рабочее место — в большинстве случаев это действительно так. Конечно, большую роль играет размер девайса, его производительность и некоторые другие критерии. В некоторых ситуациях большим плюсом является портативность, и в эту подборку попали как раз небольшие устройства. О большинстве из них мало кто знает, при том, что ряд моделей — модульные, что ценится многими пользователями. Давайте посмотрим, что это за девайсы.
Читать дальше →
Всего голосов 41: ↑30 и ↓11+29
Комментарии100

Простое REST api для сайта на php хостинге

Время на прочтение10 мин
Количество просмотров34K

Иногда бывает необходимо развернуть не большое рест апи для своего сайта, сделанного по технологии СПА (Vue, React или др.) без использования каких-либо фреймворков, CMS или чего-то подобного, и при этом хочется воспользоваться обычным php хостингом с минимальными усилиями на внедрение и разработку.  При этом там же желательно разместить и сам сайт СПА (в нашем случае на vue).

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

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

Как распечатать цветной механический телевизор на 3D-принтере

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

До появления плоских экранов и электронно-лучевых трубок люди смотрели телепередачи с помощью диска Нипкова. Благодаря этой статье любой, у кого есть 3D-принтер, может попробовать создать дома самый старый тип телевизора.

Читать далее
Всего голосов 75: ↑74 и ↓1+90
Комментарии62
1

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность