Pull to refresh
16
-0.3
Колосов Алексей @Softovick

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

Send message

Как я создавал онлайн игру «нарды» (часть вторая). Сервер

Level of difficultyMedium
Reading time7 min
Views2.3K

Всем привет!

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

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

Читать далее
Total votes 3: ↑3 and ↓0+5
Comments13

Hardpy. Nucleo-f401 example — автоматизируем тестирование электроники на производстве на Python

Level of difficultyMedium
Reading time10 min
Views2.7K

Как автоматизировать тестирование электроники на производстве на Python на примере тестирования и прошивки отладочной платы Nucleo-F401.
Разбор использования функций HardPy - открытого фреймворка для создания тестовых станций для производства электроники на pytest.

Start testing
Total votes 12: ↑11 and ↓1+14
Comments13

Разговор с быдло-кодером

Reading time18 min
Views5.4K

Вернемся к одному из проектов дистрибутива программной платформы SimInTeh,  который был рассмотрен в двух статьях(см. [1, 2]). Он же под именем "Управление водонагревательным котлом" включен в раздел "Лабораторные работы по библиотекам" справочной системы SimInTech. Последнее должно предъявлять к нему повышенные требования, как к примеру, поясняющему, рекламирующему те или иные стороны и возможности программной платформы. Одним словом, он должен быть идеальным ...

Только недавно одна из найденных в нем ошибок  была устранена. Но не это знаменательное событие было причиной вернуться к данной теме, а пришедшая примерно в это же время рассылка, рекламирующая возможности "новейшей российской инженерной платформы Engee". В числе прочих ее достоинств описывались включенные в платформу конечные автоматы  (КА)[3], а в видео по ссылке прослеживалась явная любовь к светофорам. Но  нагреватель в этом смысле ни чуть не хуже, а даже предпочтительнее.

Но "спусковым крючком" стал эмоциональный всплеск не самой положительной оценки данной конечным автоматам (подробнее см. [4]). Примечательно, что прозвучал он со стороны тех, кто ранее ввел этот инструментарий в свою платформу и, как можно предполагать, использует. Видимо, они лучше знают возможности своих автоматов? Но, если серьезно, то это, скорее всего, результат отмеченного "всплеска", который за истину воспринимать не стоит. Тем не менее, необходимо что-то уточнить,  чтобы учесть и такое мнение о КА. 

Итак, перед нами проект "Нагреватель" или "Управление водонагревательным котлом". Я не смог сразу найти проект в ВКПа к тем еще статьям, но, если честно, не сильно его и искал, т.к. решил, что проще создать новый. Хотелось проверить, что получится, если повторить в ВКПа автоматы, полностью аналогичные ранее созданным программным автоматам на внутреннем языке платформы SimInTech. А поскольку они были спроектированы согласно концепциям автоматного программирования, то препятствий не предполагалось. Но ... воистину - "не было этого никогда и вот опять".

Читать далее
Total votes 9: ↑6 and ↓3+6
Comments33

Go + Minio: как написать простой сервер для взаимодействия с файлами

Level of difficultyMedium
Reading time26 min
Views6.3K

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

Если вы только изучаете go, начинаете писать сервера, то обязательно посмотрите эту статью - для бекендера уметь работать с s3 хранилищем так же важно, как и уметь работать с реляционной / нереляционной базой данных и с key-value базой - это основа основ.

Читать далее
Total votes 11: ↑1 and ↓10-9
Comments10

Выжимаем максимум из PostgreSQL

Level of difficultyMedium
Reading time14 min
Views18K

Привет, Хабр! Меня зовут Максим, я работаю тестировщиком оборудования в Selectel Lab. В лаборатории мы занимаемся тестированием нового оборудования для дата-центров. О том, как мы измеряли производительность PostgreSQL на разных конфигурациях — под катом!
Читать дальше →
Total votes 49: ↑47 and ↓2+66
Comments22

Golang-дайджест № 9 (1 – 30 сентября  2021)

Reading time4 min
Views7K

Свежая подборка новостей и материалов

Интересное в этом выпуске

Выпущены Go 1.17.1 и Go 1.16.8, Создание приложения с графическим интерфейсом Gio, I18n в Go: Управление переводами, Обновления кодекса поведения сообщества Go, Выпущены OpenTelemetry Go API и SDK 1.0

Приятного чтения!

Читать далее
Total votes 22: ↑19 and ↓3+18
Comments0

Лучший язык программирования

Reading time6 min
Views109K

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

Можно ли на него ответить?

Читать далее
Total votes 221: ↑213 and ↓8+244
Comments207

Quasar — швейцарский нож для Vue

Reading time4 min
Views29K


Некоторое время назад (года два с половиной) чувак по имени Razvan Stoenescu собрал команду Vue-разрабов и начал пилить с ними свой фреймворк. Свечку не держал, но я твёрдо уверен что в первоначальном документе было что-то типа «Хотим свой фреймворк, чтобы в нём было вообще всё. Включая блэкджек и куртизанок». Довольно странно, что во многих материалах за прошедший год упоминается Quasar, но статья про него вышла всего одна и была приурочена к релизу 1.0, да ещё и оказалась переводом. Недавно я наконец распробовал этот чудесный фреймворк и с удовольствием поделюсь своими впечатлениями о нём.
Total votes 24: ↑23 and ↓1+29
Comments22

Легкий способ защитить свой Mikrotik от атак

Reading time4 min
Views127K
upd-2020-03-16. В свете последних событий метод остается актуальным, вырезал из статьи все лишнее, оставил только про honeypot и port-scanners.

Хочу поделиться с сообществом простым и рабочим способом, как при помощи Mikrotik защитить свою сеть и «выглядывающие» из-за него сервисы от внешних атак. А именно всего тремя правилами организовать на Микротике honeypot.

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

Другая ситуация, у Вас за Mikrotik спрятан asterisk, естественно не на 5060 udp порту, и через пару дней также начинается перебор паролей… да да, знаю, fail2ban наше вcё, но над ним еще попыхтеть придется… вот я например недавно поднял его на ubuntu 18.04 и с удивлением обнаружил, что из коробки fail2ban не содержит актуальных настроек для asterisk из той же коробки того же ubuntu дистрибутива… а гуглить быстрые настройки готовых «рецептов» уже не получается, цифры у релизов с годами растут, а статьи с «рецептами» для старых версий уже не работают, а новых почти не появляется… Но что-то я отвлекся…
Читать дальше →
Total votes 21: ↑19 and ↓2+26
Comments85

Управление свайпами в игровом проекте на Godot Engine

Reading time6 min
Views8.5K
Всем Приветствие! Сегодня я бы хотел рассказать о том, как реализовать управление свайпами в игровом проекте для Android на движке Godot Engine.

image
Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments4

Создание дизайн-документа миссии повествовательной игры на примере Last of Us

Reading time12 min
Views12K
image

Я всегда начинаю с того, что задаю много вопросов и провожу активные исследования. За свою карьеру я успел поработать над множеством сиквелов уже существовавших франшиз. Лучшее, что ты можешь сделать в этом случае — полностью освоить жанр игры и изучить мир. Среди прочих проектов, мне приходилось с головой нырять в Halo, StarWars, Hellboy и Division. Хорошие гейм-дизайнеры — это хорошие исследователи.

Naughty Dog мастерски реализовала The Last of Us: Left Behind, и прежде чем браться за этот проект, мне нужно было хорошо подготовиться. Если вы не играли в Last of Us, то сыграйте! Это одна из самых потрясающих историй и несравненный пример развития персонажей. Другие разработчики очень многому могут научиться у создателей этой игры. Из-за сильного упора на повествование Naughty Dog называет свои дизайн-документы миссий «набросками глав». Мне кажется, это очень милый штрих. Это заставляет больше думать о повествовании при создании контента и придавать дизайну более сюжетную структуру.

Предупреждение — в статье содержатся спойлеры Last of US и Last of Us DLC.
Читать дальше →
Total votes 15: ↑15 and ↓0+15
Comments2

Разновидности координат используемые в GUI Unity3d

Reading time3 min
Views16K

Почему разновидности и сколько их?


Часто сталкиваюсь с тем, что люди просто не понимают как подвинуть объект в UI на какое то значение, и удивляются что результат зачастую непредсказуем. Или допустим как получить правильные координаты объекта в UI. Если мы через дебагер выведем обычную позицию объекта(position), то она будет сильно отличаться от той что мы видим в инспекторе у UI элемента, так что же мы там видим и как это работает? В итоге перебираются 100500 решений с форумов пока какое либо не подойдет. Хочу придать подобным процессам осмысленное движение.

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

  1. position
  2. localPosition
  3. anchoredPosition (есть еще anchoredPosition3D, но его не будем рассматривать отдельно, а будем считать что это подвид test.anchoredPosition


Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments0

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

Reading time5 min
Views7.8K


На фотографии макрофото глаз стрекозы. Они имеют фасеточное строение и состоят примерно из 30000 шестиугольных фасетов, что позволяет стрекозе смотреть практически на 360 градусов (за исключением направления «прямо назад»). Полезное умение, если ты стрекоза.

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

В статье расскажем об инструменте мониторинга Foglight for Databases, который объединяет в одной консоли мониторинг SQL Server, Oracle, MySQL, PostgreSQL, DB2, SAP ASE, MongoDB и Cassandra. В нём также есть лёгкий налёт DevOps в части логирования изменений в конфигурации баз данных. Обо всём по порядку. Под катом много скриншотов.
Читать дальше →
Total votes 13: ↑13 and ↓0+13
Comments3

Руководство по Node.js, часть 1: общие сведения и начало работы

Reading time10 min
Views338K
Мы начинаем публикацию серии материалов, которые представляют собой поэтапный перевод руководства по Node.js для начинающих. А именно, в данном случае «начинающий» — это тот, кто обладает некоторыми познаниями в области браузерного JavaScript. Он слышал о том, что существует серверная платформа, программы для которой тоже пишут на JS, и хотел бы эту платформу освоить. Возможно, вы найдёте здесь что-то полезное для себя и в том случае, если уже знакомы с Node.js.

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



Сегодня мы обсудим особенности Node.js, начнём знакомство с экосистемой этой платформы и напишем серверный «Hello World».

Читать дальше →
Total votes 47: ↑39 and ↓8+31
Comments25

Правильная утилизация батареек

Reading time3 min
Views367K
Привет, друзья!

Каждый из нас наверняка пользовался в своей жизни батарейками. Пульты, часы, игрушки, телефоны, масса других вещей — в доме всегда есть что-то, что работает на батарейках. А они имеют свойство вырабатывать свой ресурс. Однако все ли знают, что делать с отработавшими батарейками? Выбросить в мусорное ведро вместе с остальным домашним мусором? Это неправильно!

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

Но что такого вредного или опасного в батарейках?
Узнать
Total votes 201: ↑193 and ↓8+185
Comments176

Электронная библиотека для PocketBook: автоматическая обработка

Reading time19 min
Views41K
Наверное каждому электрочитателю хотелось бы всю свою коллекцию книг содержать прямо на электронной книге-читалке, и при этом, не смотря на общую тормознутость устройства, иметь удобную навигацию.
Зачастую в электронной книге проблематично содержать сотни и тысячи книжек: либо аппарат долго тупит, считывая информацию о каждой книге из ее внутренностей, либо вручную поддерживать коллекцию с разбивкой по каталогам — тот еще геморрой.
Читать дальше →
Total votes 25: ↑25 and ↓0+25
Comments25

Intel выпустила бюджетные SSD-накопители

Reading time1 min
Views13K


Корпорация Intel выпускает не только производительные устройства, рассчитанные на обеспеченных покупателей, включая крупные компании. На днях Intel представила серию бюджетных SSD-накопителей, которые хотя и являются частью серии 320, но выделены в отдельную серию с порядковым номером 330. К слову, не так давно были представлены и новые премиум-модели из 910 серии. Новые модели SSD-накопителей 330-й серии отличаются относительно небольшой емкостью (максимум 180 ГБ) и относительно небольшой скоростью чтения/записи.

Читать дальше →
Total votes 73: ↑71 and ↓2+69
Comments100

GAMER LIVE 2010: Как это было

Reading time3 min
Views490
image
Фестиваль для геймеров — это нечто новое для России. Выставки, премьеры и тому подобное проводятся регулярно, но это всё формальная обстановка, и общения между игроками там не подразумевается. А вот собрать геймеров на несколько дней внутри простой базы отдыха, где основное развлечение не техника, а спорт, — возможно ли это?

C 6 по 8 августа на подмосковной базе отдыха “Вымпел” состоялся фестиваль GAMER LIVE 2010, и ответ: да! На Хабре уже был опубликован анонс этого мероприятия, посвященного дню рождения GAMER.ru, а теперь – рассказ о том, как это происходило, и фотографии. И да, девушки там тоже были, притом по своей воле!

Торжественное открытие фестиваля состоялось вечером пятницы, 6 августа. В Москве участникам выдали пакеты с подарками от организаторов, а также бейдж с именем и никнеймом. Из душной и покрытой завесой смога Москвы мы отправились в путь на комфортном автобусе под музыку, разумеется, из игр.

[Под катом много фотографий]
Читать дальше →
Total votes 54: ↑39 and ↓15+24
Comments24

Как не стать спамером со своей уютной рассылочкой

Reading time1 min
Views67K
image
Пользователь когда-то подписался на рассылку, но уже забыл когда, и главное зачем. Теперь ежедневно к нему падает спам, а по собственному опыту он знает, для того чтобы отписаться нужно зайти по ссылке свой профиль, найти и снять там какую-то галку а главное, помнить свой логин и пароль на давно забытом им сайте.
Его действия? «В спам!»

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

И вот, с десяток таких «отписок» и гугл будет удобно отсортировывать ваши рассылки в папочку Спам (584), у ВСЕХ ваших подписчиков.

Однако многие из нас уже успели заметить: некоторые письма в Gmail при попытке отметить их «В спам!» САМИ предлагают отписаться от рассылки в один клик.

Эта фича была введена google более года назад, но лишь единицы рассылок научились ей пользоваться. И не удивительно. В рекомендациях по осуществлению массовых рассылок, лишь косвенно упоминается о том, что Вам нужно сделать.
А сделать нужно не многое.
Читать дальше →
Total votes 238: ↑230 and ↓8+222
Comments60

ГОСТовские рамки для OpenOffice

Reading time1 min
Views34K
Во время сессии хочу поделиться с сообществом рамками, выполненными по ГОСТ и адаптированными для OpenOffice.org.

У нас в Нижегородском РадиоТехническом Колледже для подготовки курсовых и дипломных работ студенты используют OpenOffice. Благодаря этому мы и имеем документы в «правильном» формате.

Скачать ГОСТовские рамки для OpenOffice можно на сайте НРТК.
Total votes 113: ↑101 and ↓12+89
Comments45
1
23 ...

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity