![](https://webcf.waybackmachine.org/web/20211027205802im_/https://habrastorage.org/getpro/habr/upload_files/0a9/933/514/0a9933514847a3bcd9b1f66998ea4e1f.png)
Rust и GRPC. Все это вкупе с простым игровым движком. Небольшой туториал по разработке мультиплеерной игры.
Rust и GRPC. Все это вкупе с простым игровым движком. Небольшой туториал по разработке мультиплеерной игры.
Я люблю C#. После университета моим первым настоящим проектом по программированию была игра, написанная на Unity. И я сразу же влюбился в этот язык: он казался таким свежим. И был похож на Java… если бы в Oracle по-настоящему заботились о Java, это вернуло бы короткий золотой век Java. Слышал, что с тех пор они перешли на цикл ещё быстрее, так что всё могло измениться.
Я по-прежнему люблю этот язык. Может, он и не самый модный, но всё равно способен делать что угодно. Пример — многопоточность. Думаете, это сложно? Тогда попробуйте в Dart поиграть с Isolate и поймёте, как хорошо иметь C#.
В последние несколько лет меня стала очень беспокоить судьба языка. Я поделился своими мыслями в комментарии здесь. И раз уж комментарий привлёк так много внимания — решил конкретизировать его идеи.
Данный код не является оптимизированным или идеализированным, он очень простой и будет понятен новичкам(кем я и являюсь), потому надеюсь на понимание). Ну и еще это приложение было создано скорей смеха ради.
В этой статье я постараюсь рассказать, как на моей работе я реализовал автоматическую генерацию Changelog из коммитов и создание тегов на их основе.
С ростом проекта в него приходит постоянно приходит новая аудитория: как матерые игроки, так и новички в жанре. Закинуть всех в один матч можно, но первым будет скучно, а вторым — сложно. В итоге всех можно потерять уже на старте.
Боты — не только хороший способ восполнить недостающих игроков в комнате и быстрее начать матч, но и отличная возможность для онбординга новичков. Нам они понадобились, чтобы обучать новичков в тренировочных матчах и давать им нужный пользовательский опыт. Настоящий, живой, который при этом мы могли бы контролировать.
В этой статье расскажу, как мы добавляли ботов в свой шутер, настраивали логику, динамическое изменения скилла и многое другое. Все подробности под катом.
Привет, Хабр! Мы уже рассказывали о магазине с полностью автоматизированной системой покупок, который получил название «Пятерочки #налету». Но это далеко не все технологические проекты компании. Практически одновременно с новыми автономными «Пятёрочками» мы начали разрабатывать и систему биометрической оплаты. Покупателю достаточно посмотреть в камеру и всё — покупка оплачена. О том, как этот проект внедрялся и что из себя представляет, читайте в нашем новом материале – собрали всю начинку!
Что такое .equals() и .hashcode() в java? Зачем их переопределяют? Как это принято делать?
Микросервисы можно тестировать по-разному. У каждого подхода есть свои плюсы и минусы, поэтому, чтобы выбрать свой путь и избежать на нём «граблей», лучше всего учиться на чужом опыте. А ещё лучше — на конкретных примерах.
Я занимаюсь тестированием в Ozon и хочу рассказать про нашу инфраструктуру, автоматизацию тестирования и инструменты, которые мы для этого применяем. Покажу, какие распространенные ошибки есть в интеграционном тестировании в Golang. Поделюсь качествами хорошего теста, которые мы для себя определили, нашими подходами и методами подготовки данных для тестов.
Видео моего выступления на конференции Golang Live 2020 можно посмотреть здесь.
Всем привет, это Макс Кравец из Holyweb. Знаю много историй, когда начинающего специалиста с первого дня бросают на задачи, за которые никто не берётся, и ждут, пока новый сотрудник сам «выплывет». А перегорит и уйдёт — значит, просто слабак, который не хочет работать.
С другой стороны такое отношение имеет определенные основания. У джунов часто завышены представление об идеальном проекте, зарплате и собственной ценности для работодателя. Из-за этого происходит разочарование даже в классных проектах и постоянная смена работы.
Если вы — тот самый джуниор, хотите расти как IT-специалист и зарабатывать больше, но считаете, что вас постоянно недооценивают и держат на неинтересных задачах, этот материал для вас.
Гипервизоры можно грубо разделить на два типа: те, которые устанавливаться на ОС, и те, которые устанавливаются на диск. Новичкам я рекомендую использовать только те гипервизоры, которые устанавливаются на ОС.
Важно: ваш процессор должен поддерживать виртуализацию, а также функция виртуализации должна быть включена в UEFI.
Всем привет!
Спецификация Zigbee Class Library стандартизирует множество различных строительных блоков для всевозможных Zigbee устройств. Тут вам и выключатели, и реле, и всевозможные датчики и сенсоры, и климатические устройства, и охрана. Но иногда в рамках типовых строительных блоков становится тесновато, и нужно думать о написании своих собственных Zigbee кластеров. Это не так сложно.
Эта статья является продолжением серии статей (раз, два, три, четыре) про постройку своего умного Zigbee выключателя. Сегодня будем обучать наш умный выключатель всяким длинным и двойным нажатиям. Но в нашем случае мы сделаем еще и возможность тонкой подстройки режимов работы, да еще и в рантайме, средствами Zigbee. Для этого придется написать свой кастомный кластер (точнее расточить кластер On/Off Switch Configuration), изучить кластер Multistate Input, и еще обучить этому всему zigbee2mqtt.
Соревнования внутри команды - тот тренд в командах разработки, который я начал замечать в последнее время. Story Points, Bonus Points, рейтинг - все это разные названия, по сути, одного и того же. Общая система заключается в следующем: управленец выбирает какие-то критерии(зачастую - "полезные" часы), после чего начинает делать на этом акцент. То есть постоянно стимулируют рост этого критерия у каждого разработчика, создают списки лучших по критериям, постоянно о них напоминают. Так же поощряет(в основном - в денежном эквиваленте) лучших в этой системе. Однако, с моей точки зрения, эта система имеет ряд проблем, о которых я сейчас и постараюсь рассказать.
У любителей электроники, разобравшихся в общих чертах в процессах отражения сигнала от концов линии передачи, неизбежно возникает ряд вопросов, связанных с выбором номиналов согласующих резисторов. При согласовании на стороне источника, выбор резисторов порождает две задачи: определение волнового сопротивления линии и определение внутреннего сопротивления источника сигнала. Обе задачи решаются с помощью симуляторов. Об особенностях их применения и пойдёт речь в данных статьях.
Накануне компания DJI объявила о выходе на рынок своего нового продукта — экшн-камеры Action 2. Не успела камера появиться на свет, как ее уже успели сравнить с новинкой от другого производителя — GoPro Hero 10. Эти камеры можно сравнить, но лишь отчасти за счет того, что каждая обладает собственными отличительными характеристиками. Особенности DJI Action 2 включают в себя передовую и уникальную технологию стабилизации, которые применяются в фирменных стедикамах компании серии Osmo и профессиональных Ronin. Итак, какой же представлена новая экшн-камера DJI?
На прошлой неделе мы провели Python-стрим с Сергеем Васильевым (aka nolar), Software Engineer в компании Datafold, который 6 лет назад переехал в Германию.
Стрим проходил при поддержке Geekfactor.io, которая предлагает программу поддержки в трудоустройстве в зарубежные стартапы совместно с Getmentor.dev. 2 ноября состоится бесплатный вебинар про нюансы трудоустройства за рубеж, а еще программа включает mock-интервью и консультации по резюме. Консультации и интервью платные, но мы выберем 5 человек, которые получат интервью и консультацию бесплатно. Программа будет повторяться регулярно.
Сегодня я хотел бы поделиться своим опытом настройки связности Cisco ACI с внешним L2-сегментом. Как известно, есть два подхода к решению этой задачи: классифицировать внешний сегмент в отдельную EPG или же использовать объект External Bridged Network, также известный как L2Out.
3D-сканер peel 2 CAD-S – долгожданное пополнение в линейке peel 3d. По сравнению со своим предшественником peel 2 устройство может похвастаться более высокой детализацией при сканировании небольших объектов.