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

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

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

Как мы переносили современные игры на процессор Эльбрус-8С

Время на прочтение6 мин
Количество просмотров90K
Мы в Gaijin уже много лет работаем с самыми разными игровыми платформами — от ПК и мобильных устройств до Nintendo Switch, PlayStation 5 и Xbox Series X|S. На этот раз мы решили провести эксперимент — скомпилировали и запустили наши игры War Thunder, Enlisted и CRSED: F.O.A.D. на рабочей станции Эльбрус 801-РС, чтобы проверить, можно ли её превратить в развлекательную систему.



До этого на Эльбрусе компилировали и запускали только старые игры с открытым исходным кодом, так что давно уже назрели вопросы: насколько сложно перенести современные проекты, как они поведут себя и достаточно ли производительности процессора, чтобы поддерживать в них играбельную частоту кадров?
Всего голосов 123: ↑120 и ↓3+117
Комментарии136

Новый продукт как результат карьерных изменений сотрудника

Время на прочтение7 мин
Количество просмотров2.5K
Всем привет! Меня зовут Максим, и я владелец продукта в ООО «КОРУС Консалтинг СНГ» (СберКорус).

В статье расскажу, как желание сотрудника техподдержки ускорить обработку входящих обращений привело к карьерному росту, смене вида деятельности, а, главное, — к созданию нового продукта! Но обо всём по порядку.

Читать дальше →
Всего голосов 2: ↑1 и ↓10
Комментарии4

Composable Architecture — свежий взгляд на архитектуру приложения

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

Сбалансированная архитектура мобильного приложения продлевает жизнь проекту и разработчикам.


История


Познакомьтесь с Алексом. Ему необходимо разработать приложение для составления списка покупок. Алекс опытный разработчик и первым делом формирует требования к продукту:


  1. Возможность портирования продукта на другие платформы (watchOS, macOS, tvOS)
  2. Полностью автоматизированный регресс приложения
  3. Поддержка iOS 13+

Недавно Алекс познакомился с проектом pointfree.co, где Брэндон и Стивен поделились своим видением современной архитектуры приложения. Так Алекс узнал о Composable Architecutre.

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

Man-in-the-Middle: советы по обнаружению и предотвращению

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


Атака «человек посередине» (Man-in-the-Middle) — это форма кибератаки, при которой для перехвата данных используются методы, позволяющие внедриться в существующее подключение или процесс связи. Злоумышленник может быть пассивным слушателем в вашем разговоре, незаметно крадущим какие-то сведения, или активным участником, изменяя содержание ваших сообщений или выдавая себя за человека или систему, с которыми вы, по вашему мнению, разговариваете.

Вспомните 20-й век, когда у многих были стационарные телефоны с несколькими трубками, и один член семьи мог взять трубку во время разговора другого. Вы могли даже не подозревать, что вас слушает кто-то еще, пока он не начнет вклиниваться в разговор. В этом и заключается принцип атаки «человек посередине».
Читать дальше →
Всего голосов 10: ↑10 и ↓0+10
Комментарии0

Zabbix под замком: включаем опции безопасности компонентов Zabbix для доступа изнутри и снаружи

Время на прочтение8 мин
Количество просмотров21K
А не пришло ли время разобраться и навести наконец-то порядок с безопасностью в мониторинге? Тем более, в одной из популярных систем мониторинга и встроенная возможность такая имеется.



На схеме видно, что зашифровать можно почти все потоки внутри Zabbix. В этой статье мы расскажем и покажем как это сделать, а еще расскажем о новой интеграции Zabbix с хранилищем секретов Hashicorp Vault. Там можно хранить любую чувствительную информацию от логина/пароля в БД до значений макросов. Это позволит централизованно управлять авторизационными данными, вести аудит и не хранить их на файловой системе или в БД Zabbix. Такой функционал появился в последней (на момент публикации статьи) версии Zabbix 5.2.

Интересный факт: включение шифрования на компонентах Zabbix не требует открытия дополнительных портов на фаерволлах, демоны Zabbiх поддерживают шифрованные и нешифрованные соединения одновременно.

Велкам ту подкат.
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии0

Как криптовалютные биржи препятствуют отмыванию средств

Время на прочтение3 мин
Количество просмотров6.6K
Ежегодно через криптовалютные биржи проходят миллионы долларов сомнительного происхождения. Зачастую они принадлежат проектам, которые впоследствии исчезают вместе со средствами пользователей. Достаточно вспомнить громкое дело PlusToken, основатели которого обманули «вкладчиков» на три миллиарда долларов. Члены команды задержаны — идет следствие, но украденные средства по-прежнему не арестованы.

Попытки регуляторов получить контроль над криптовалютными операциями не всегда эффективны. Ситуация не изменилась и после вступления в силу Пятой Директивы EC по борьбе с отмыванием денег (5AMLD). Согласно отчету аналитической фирмы Peckshield, за последние два квартала через крупнейшие криптовалютные биржи прошло 147,000 BTC (1,3 миллиарда долларов), поступивших с подозрительных адресов. В первую десятку криптобирж, принимавших эти средства, вошли Huobi, Binance, OKEx, ZB, Gate.io, Bitmex, Luno, Huobtc, Bithumb и Coinbase. В исследовании отмечается, что на долю трех ведущих торговых платформ приходится более 60% от общей суммы (88,200 BTC).
Читать дальше →
Всего голосов 11: ↑9 и ↓2+7
Комментарии8

«Особенность» Вконтакте

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

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


Читать дальше →
Всего голосов 152: ↑149 и ↓3+146
Комментарии108

Накликать вирус: как мы проверяли эффективность фишинга

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

Можно внедрять у себя в компании ПО последнего поколения для защиты от «злобного хацкера», но какой в этом толк, если твои сотрудники продолжают ходить по фишинговым ссылкам… Мы регулярно проводим социотехнические исследования в различных компаниях и представляем себе масштаб трагедии проблемы. Цель таких исследований – не просто понять, насколько легко обмануть персонал и на какие крючки его легче всего зацепить, но и сделать правильные выводы о том, какие методики обучения киберграмотности использовать и как часто стоит проводить проверку. За 2019 год и начало 2020-го мы разослали более 9 тысяч «фишинговых» писем на корпоративные почтовые ящики. Что из этого вышло – читайте ниже.
Читать дальше →
Всего голосов 19: ↑18 и ↓1+17
Комментарии3

Почему бы не сделать свой Lisp для веба?

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

Вот есть JavaScript — прекрасная вещь. И прекрасная она на мой взгляд по большей части потому, что дебаггер и отладочные инструменты встроены в каждый Браузер. Без дебаггера и инспектора DOM-дерева было гораздо тяжелее что-либо разрабатывать на JavaScript.


Вот я и решил запилить свой Lisp, но с хорошим дебаггером. Взял маленький, простенький littlelisp и отрефакторил его на 99%. Заточил под пошаговое выполнение и создал свою IDE, простую но работающую.


В итоге получилось следующее.


image
Читать дальше →
Всего голосов 46: ↑41 и ↓5+36
Комментарии71

Повысьте производительность SPA, разбив ваши библиотеки Angular на несколько частей

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

Привет, Хабр! Представляю Вашему вниманию перевод статьи «Improve SPA performance by splitting your Angular libraries in multiple chunks» автора Kevin Kreuzer.


Angular — отличный фреймворк. Мы все его любим <3.


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


Сегодня благодаря Angular CLI библиотеки легко создать. Они прекрасно подходят для того, чтобы делиться кодом между несколькими приложениями.


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


В Frontend есть разные типы производительности. runtime — производительность и initial load. В этой статье мы сосредоточимся на initial load.


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

Читать дальше →
Всего голосов 21: ↑19 и ↓2+17
Комментарии7

Как читерство меняет сообщество спидраннеров

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

«Попался!» Знакомый многим экран.

Когда австралийский геймер под ником «Anti» завершил полное прохождение Grand Theft Auto: San Andreas всего лишь за четыре часа, это достижение показалось почти невозможным. Однако любой фанат спидраннинга — действа, в котором игроки стремятся как можно быстрее пройти игру с разными наборами правил, образующими отдельные «дисциплины» соревнований — мог увидеть невероятное прохождение в таблице лидеров игры. Anti опубликовал весь процесс онлайн.

Тут вспоминается старая поговорка, и действительно: это слишком хорошо, чтобы быть правдой. Ещё один спидраннер начал анализировать видео Anti, чтобы оптимизировать собственные маршруты в игре, но заметил, что некоторые автомобили при ускорении оставляли за собой слабые дымные следы. Так как ни в одном другом спидран-прохождении GTA: San Andreas в таблице лидеров подобного поведения замечено не было, этот игрок задался вопросом: неужели Anti каким-то образом модифицировал игру, чтобы добиться своего рекордного времени?

В PC-версиях игр серии GTA все файлы, управляющее поведением автомобилей, можно легко открыть простым текстовым редактором наподобие «Блокнота». Фанаты игры знают об этом. И слегка увеличив некоторые переменные, чтобы машины ускорялись чуть быстрее, этот игрок смог воссоздать эффект дыма из прохождения Anti. Вскоре после этого некоторые игроки начали жаловаться на это в спидран-сообществе; кто-то даже создал монтаж видео, в котором было множество доказательств того, что Anti модифицировал игру, чтобы сэкономить секунды, необходимые для его рекордов.

В августе 2018 года модераторы таблицы лидеров наконец-то решили, что нужно действовать. Они объявили Anti бан на год за подозрения в читерстве. Это решение оказало огромный эффект на крошечное сообщество спидраннеров GTA, особенно потому, что Anti был уважаемым игроком этой сцены. На тот момент Anti принадлежало несколько мировых рекордов в каждой из игр серии.
Всего голосов 58: ↑54 и ↓4+50
Комментарии36

Две точки на краю света

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

Пляж — делает город. Город с пляжа начинается. Пляжем город красен.


Заезжали коллеги на конференцию про геометрию графов, нейросети и прочую современную математику, остроумно решающую злободневные задачи на стыке биологии, общества, и химии. Некоторым повезло воплотить модную концепцию bleisure и захватить выходные в городе — бывает, работодатели поощряют такую практику. Разметил для таких ситуаций несколько километров побережья родного континента и данных о местных достопримечательностях собрал. Учтите, самые интересные участки сделаны из твёрдых и местами острых камней.


Осмотримся вокруг Кашкайша и посмотрим, где здесь найти песок до горизонта.


Добраться в этот город с предельной для Португалии концентрацией Тесл на километр дороги из Лиссабона проще всего на электричке, отправляющейся каждые 20 минут и проводящей 40 в пути. В вагонах есть места для велосипедов и опознать их можно по пандусам на платформе. Первый велопрокат встречает уже на вокзале. В принципе, есть даже бесплатный муниципальный велопрокат. Альтернатива — городской автобус 405, курсирующий раз в два часа по воскресеньям.


Красная или синяя дорожка вьётся вдоль кромки континента.


38,7033228, -9,4772811



Здесь можно пройти по краю. Тут хочется остаться. На виду у всех спрятались две жемчужины серебряного побережья и ухватить их за короткий зимний день вполне возможно. Самовывозом. Паралеллепипедики автомобилей примерно передают масштаб приключения на картинке выше.



Справа на фото — Cabo da Roca, 140 м над уровнем моря, вид от маяка Cabo Raso.


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

Всего голосов 29: ↑10 и ↓19-9
Комментарии13
Развитие искусственного интеллекта, как и его восприятие человеком, прошло сложный путь и продолжается на наших глазах. ИИ давно вырос из коротких штанишек простого помощника человека и все активнее заявляет о своих правах. Стартующий в 2019 году технологический конкурс Up Great ставит перед собой долгосрочную амбициозную цель — создать универсальный ИИ, который будет обучаться вместе с людьми в ходе совместной деятельности. А это значит, что пришло время окончательно решить, кем является ИИ для человека и кем человек является для ИИ.
Читать дальше
Всего голосов 46: ↑43 и ↓3+40
Комментарии33

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

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


На Хабре много статей о том, как самостоятельно изучать английский язык. Но вот вопрос, а как оценить свой уровень при самостоятельном изучении? Понятно, что есть IELTS и TOEFL, но эти тесты почти никто не сдает без дополнительной подготовки и эти тесты, как говорят, оценивают не сколько уровень владения языком, а скорее умение проходить эти самые тесты. Да и использовать их для контроля самообучения будет накладно.

В этой статье я собрал различные тесты, которые проходил сам. При этом я сверяю свою субъективную оценку владения языком с результатами тестов. А также сравниваю результаты между разными тестами.
Читать дальше →
Всего голосов 99: ↑95 и ↓4+91
Комментарии62

KDE Connect вместо мыши, или подводные камни первого подключения

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


Вышло так, что я находился в поездке, и чтобы скоротать время, взял с собой своего старого верного друга — нетбук ASER Aspire one AOA110 с #!++ на борту.

Так как я им очень давно не пользовался, то напрочь забыл о неисправном шлейфе тачпада.
Мышь с собой я, естественно, не взял, но пользоваться комфортно браузером очень хотелось, и я решил воспользоваться приложением KDE Connect как альтернативой мышке. Казалось бы, что всё просто: установил приложение на оба устройства, законнектился – и пользуйся на здоровье. Но не тут-то было… В общем, обо всём по порядку.

Устанавливаем и запускаем из Play Market на смартфон приложение

KDE Connect (screenshot)


Устанавливаем и запускаем приложение на нетбуке:

sudo apt install kdeconnect
kdeconnect-indicator

Подключаем устройства (ВАЖНО!) к одной локальной сети. Неважно wi-fi это или USB соединение (у меня смартфон был USB-модемом для нетбука).

Запускаем kdeconnect-indicator в консоли, обновляем список доступных устройств на телефоне – и…

Ничего... (screenshot)


Google помогает мне найти ответ: штатный файрвол, заблаговременно включенный мною и забытый. Отключаю его за ненадобностью. Кому нужно оставить включенным файрвол.

sudo ufw disable

Читать дальше →
Всего голосов 16: ↑13 и ↓3+10
Комментарии9

Какой следующий член…? — Ищем формулу для n-го члена последовательности, производящие функции и Z-преобразование

Время на прочтение8 мин
Количество просмотров7.4K
Скачать файл с кодом и данные можно в оригинале поста в моем блоге

В языке Wolfram Language есть четыре совершенно потрясающие функции: FindSequenceFunction, RSolve, DifferenceRootReduce и FindFormula. В этой статье мы обсудим их возможности и поговорим о функциях, тесно с ними связанных — для поиска параметров линейной рекурсии FindLinearRecurrence (коэффициентов линейного рекуррентного уравнения), производящих функциях GeneratingFunction и Z-преобразовании ZTransform.

Первая функция — FindSequenceFunction — по последовательности чисел ищет выражение для её n-го члена не требуя вообще ничего более.

Hold @ FindSequenceFunction[{1, 1, 2, 3, 5, 8, 13}, n]



FindSequenceFunction[
{-2, 4Sqrt[Pi],
-16, 16Sqrt[Pi],
-128/3, 32Sqrt[Pi],
-1024/15, 128Sqrt[Pi]/3,
-8192/105, 128Sqrt[Pi]/3},
n]


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

На практике в 80-90% случаев веб-приложение тормозит из-за фронтенда: интервью с Иваном Акуловым

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


Иван Акулов — Google Developer Expert в веб-технологиях и основатель перформанс-компании PerfPerfPerf. Уже совсем скоро на HolyJS 2019 Moscow он проведет воркшоп, посвященный, как ни странно, перформансу — поиску проблем в React, дебагу медленных приложений и другим рантайм-вещам. 


Чтобы больше погрузить читателей и посетителей HolyJS 2019 Moscow в тему, мы обсудили с Иваном:


  • Самые популярные проблемы перформанса;
  • Чем измерять производительность и в чем могут быть проблемы;
  • Как оптимизировать перформанс;
  • Поиск проблем с производительностью в React;
  • Пользу перехода на HTTP/2 и HTTP/3;
  • Паким фреймворком лучше пользоваться на новых проектах;
  • О пользе WebAssembly;
  • Где искать полезную информацию о перформансе;
  • О чем будет его воркшоп и кому на него будет интересно прийти (и зачем вообще ходить на воркшопы).

Вопросы задают Дмитрий Махнёв и Артём Кобзарь из программного комитета HolyJS.

Читать дальше →
Всего голосов 34: ↑30 и ↓4+26
Комментарии24

Сервисы-сироты: обратная сторона (микро)сервисной архитектуры

Время на прочтение11 мин
Количество просмотров5K
Директор по эксплуатации портала Banki.ru Андрей Никольский рассказал на прошлогодней конференции DevOpsDays Moscow про сервисы-сироты: как опознать сироту в инфраструктуре, чем плохи сервисы-сироты, что с ними делать, и как быть, если ничего не помогает.

Под катом текстовая версия доклада.

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

Медвежьи услуги по требованию

Время на прочтение9 мин
Количество просмотров30K
Можно не читать весь текст — в конце есть краткое содержание. Это я о вас забочусь, потому что я — хороший.

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

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

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

Звучало примерно так. Если Заказчик услуг ИТ-отдела хочет совершить ошибку, то ИТ-отдел ему об этом скажет. Если Заказчик настаивает на совершении ошибки, то ИТ-отдел с радостью ему в этом поможет.
Читать дальше →
Всего голосов 127: ↑103 и ↓24+79
Комментарии79

Как я не смог включить MacBook из-за удаления TeamViewer

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

Тем кому лень читать полностью, в конце я добавил простое решение.

Вчера я столкнулся с совершенно неожиданным стечением обстоятельств во время очередного обновления MacOS. Я вообще очень люблю обновления ПО, всегда хочется посмотреть на новые возможности той или иной программы. Когда летом я увидел, что можно скачать и поставить MacOS 10.15 Catalina Beta, я сознательно не стал этого делать, понимая, что beta может содержать значительное количество багов, а MacBook мне нужен ежедневно по работе. И вот вчера я увидел долгожданное уведомление.

image

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

Проблема тут вовсе не в TeamViewer.
Читать дальше →
Всего голосов 76: ↑48 и ↓28+20
Комментарии287
1

Информация

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