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

Погроммист на крестах

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

И целых 20 ядер мало

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

Если вы посмотрите на общую раздутость современного софта, загружаемые 100 гигабайтные игры, ежегодную Nvidia X090 дающую +20% год от года, и 20-ядерные процессоры, то со стороны может показаться, что оптимизация производительности неважно чего, будь то игры или другой софт, казалось бы, утратила свою актуальность. В эпоху безнаказанной производительности аппаратной части можно расплескивать хоть половину этой мощи, и пользователь этого даже не заметит. Это все может и верно, если вы не делаете игру. Почему же тогда на этих двадцати ядрах, фризит и тормозит (хорошо что не вылетает часто) игра выпущенная два года назад?

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

При том, что все эти 30 — 60 — 120 — 200 фпс в играх, это чисто маркетинговый показатель, это время с которой движок может создавать фреймы для видеокарты, но движок это не только картинка, есть физика — а она как работала на 30 фпсах 10 лет назад, так и работает. Или звуковая подсистема, так она вообще своей отдельной жизнью живет в своих приоритетных тредах, мы просто кидаем туда меседжи с настройками и номером фрейма, чтобы засинхронизировать это с картинкой. Это сложно, но решаемо, но звук не привязан к картинке.

Налево пойдешь проца не хватит...
Всего голосов 58: ↑58 и ↓0+76
Комментарии53

Самый полный список мужских хобби: 77 способов занять свободное время

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

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

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

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

Как писал Уинстон Черчилль, ярый любитель хобби:
Нет смысла говорить уставшим «мускулам разума»: «я дам вам хорошенько отдохнуть», «пойду прогуляюсь» или «лягу и не буду ни о чём думать». Разум всё равно остаётся занятым. Если вы что-то взвешивали и прикидывали, он так и будет взвешивать и прикидывать. Если вы волновались, он будет волноваться… Бесполезно спорить с разумом, находящимся в таком состоянии. Один талантливый психолог из США сказал: «волнение – это эмоциональный спазм. Разум цепляется за что-то и не отпускает». Можно лишь аккуратно внедрить что-то другое в эту конвульсивную хватку. И если это что-то выбрано правильно, если оно сопровождается освещением другой области интересов, то постепенно, а иногда и довольно быстро, чрезмерная хватка ослабляется и начинается процесс восстановления и заживления.

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

Сказ о том, как я за год решил более 600 leetcode задач

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

Всем салют!

Хочу рассказать вам историю о том, как я начинал с уровня — «не могу решить даже 1 easy задачу из 10» до уровня — «могу решить каждую вторую medium задачу» и прошел несколько coding сессий в таких компаниях как Meta, Booking, Careem, Avito...

Читать далее
Всего голосов 121: ↑112 и ↓9+129
Комментарии407

Как прошить oculus quest 2 в 2024 году без vpn и без лишних заморочек?

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

Итак, где-то в середине июля я стал счастливым владельцем quest 2. Я выбрал его, потому что несмотря на санкции этот шлем был лучшем по соотношению цена/качество. Но вот проблема: обновить шлем до последней версии официальным способом было невозможно.

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

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

Подборка крутых докладов по С++ за 2023 год

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

Скоро начинается новый сезон конференций, а потому предлагаем вам ознакомиться с лучшими докладами по С++ с прошлого сезона. Эта подборка самых громких докладов за 2023 год поможет вам поглубже узнать С++ и набраться вдохновения.

Вперёд за просвещением!
Всего голосов 12: ↑12 и ↓0+15
Комментарии3

Советские и постсоветские НИИ и КБ как конвейер уничтожения ресурсов развития

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

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

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

В 2008 году я устроился ведущим инженером в НИИ Физических измерений, г. Пенза.

Для меня работа в этом НИИ была более чем знакома, я там работал с середины 80-х по середину 90-х. НИИФИ с момента своего создания было сосредоточено на создании датчиков и специализированной измерительной аппаратуры для космической отрасли.

Начало 2000-х характеризовалось тем, что цены на нефть поползли вверх, в государстве появились какие-то деньги, но одновременно стала происходить череда ярких и красочных неудач с нашими ракетами. И вопрос – а что же там происходит с нашими ракетами – создал на НИИФИ фокус ощутимого финансового потока.

Поскольку в этой организации работает куча людей, связанных между собой родственными связями, то, помимо официального молчания по всем щепетильным вопросам, организация была пронизана слухами, что у нас общий бюджет НИИ достиг сначала 0,7 (примерно 2008–2009), далее 0,9; потом 1,3; 2,1 и 2,7 (2012) миллиарда рублей.

Здесь можно задаться очень простым вопросом – а вот кто будет делать интеллектуальное наполнение проектов под эти в общем-то огромные финансовые потоки.

Читать далее
Всего голосов 250: ↑220 и ↓30+247
Комментарии512

Еще один пост о синхронизации в Vulkan

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

Так, я наиграл в Fire Emblem: Three Houses уже порядка 160 часов в течение последней пары недель, думаю пришло время вновь побыть интернет-экспертом.

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

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

6 Python декораторов, которые значительно упростят ваш код

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

"Простое лучше сложного".

Лучшая функция Python, которая применяет эту философию из "дзен Python", - это декоратор.

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

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

Болтать не буду. Давайте посмотрим на отобранные мной 6 декораторов, которые покажут вам, насколько элегантен Python.

Читать далее
Всего голосов 61: ↑57 и ↓4+69
Комментарии26

9 лучших канбан-досок для работы и личных дел в 2024

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

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

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

Настройка клиента Outline VPN на OpenWRT (все версии) на базе пакета shadowsocks-libev и tun2socks

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

Outline VPN это проект компании Jigsaw, дочерней компании Google. Outline использует протокол Shadowsocks для связи между клиентом и сервером. Трафик шифруется с помощью шифра IETF ChaCha20 и аутентифицируется с помощью IETF Poly1305.

В этой инструкции мы рассмотрим настройку клиента на базе пакета shadowsocks-libev и опционально, поднятие интерфейса с помощью kmod-tun и xjasonlyu/tun2socks. Способ подходит для роутеров с объёмом ОЗУ от 64 Мб и ПЗУ от 8 Мб.

UPD. 14.09.2023 Решение для ошибки ниже найдено, описал в п.4

daemon.err /usr/bin/ss-redir[7401]: accept: No file descriptors available

Нам потребуется доступ к SSH и Веб-интерфейсу LuCI

1.Установка пакетов на роутере

2.Получение ключа доступа в Outline Manager

3.Настройка shadowsocks-libev на роутере

4.Фикс для OpenWRT 22.03 и выше

5.Настройка интерфейса с помощью tun2socks

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

Автономный способ обхода DPI и эффективный способ обхода блокировок сайтов по IP-адресу

Время на прочтение7 мин
Количество просмотров745K
Провайдеры Российской Федерации, в большинстве своем, применяют системы глубокого анализа трафика (DPI, Deep Packet Inspection) для блокировки сайтов, внесенных в реестр запрещенных. Не существует единого стандарта на DPI, есть большое количество реализации от разных поставщиков DPI-решений, отличающихся по типу подключения и типу работы.

Существует два распространенных типа подключения DPI: пассивный и активный.

Пассивный DPI

Пассивный DPI — DPI, подключенный в провайдерскую сеть параллельно (не в разрез) либо через пассивный оптический сплиттер, либо с использованием зеркалирования исходящего от пользователей трафика. Такое подключение не замедляет скорость работы сети провайдера в случае недостаточной производительности DPI, из-за чего применяется у крупных провайдеров. DPI с таким типом подключения технически может только выявлять попытку запроса запрещенного контента, но не пресекать ее. Чтобы обойти это ограничение и заблокировать доступ на запрещенный сайт, DPI отправляет пользователю, запрашивающему заблокированный URL, специально сформированный HTTP-пакет с перенаправлением на страницу-заглушку провайдера, словно такой ответ прислал сам запрашиваемый ресурс (подделывается IP-адрес отправителя и TCP sequence). Из-за того, что DPI физически расположен ближе к пользователю, чем запрашиваемый сайт, подделанный ответ доходит до устройства пользователя быстрее, чем настоящий ответ от сайта.
Читать дальше →
Всего голосов 212: ↑212 и ↓0+212
Комментарии352

Как собрать свой собственный x86 Wi-Fi роутер

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

Как и обещал в прошлой статье расскажу, как собрал и настроил свой собственный x86 Wi-Fi роутер с OpenWrt.

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

Выгорание программиста. Интересная работа — самая опасная

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

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

  • выгорание,
  • физическая деградация,
  • депрессия,
  • ранний уход из профессии.

Все эти последствия хорошо предсказуемы. Поэтому их можно предотвратить.
Читать дальше →
Всего голосов 64: ↑58 и ↓6+71
Комментарии173

Концепция умного указателя static_ptr<T> в C++

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

В C++ есть несколько "умных указателей" - std::unique_ptr, std::shared_ptr, std::weak_ptr. Также есть более нестандартные умные указатели, например в boost: intrusive_ptr, local_shared_ptr.

В этой статье мы рассмотрим новый вид умного указателя, который можно назвать static_ptr. Больше всего он похож на std::unique_ptr без динамической аллокации памяти.

Читать далее
Всего голосов 27: ↑24 и ↓3+31
Комментарии67

Развенчание мифа о собственной продуктивности программистов

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

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

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

Читать далее
Всего голосов 29: ↑23 и ↓6+28
Комментарии76

Слышал звон, знаю где он: делаем объёмный звук в наушниках на Windows

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

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

Используется бесплатное ПО VoiceMeeter и HeSuVi.

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

Пройти LeetCode за год: экскурсия по сайту и roadmap [обновлено 30.11.2023]

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

С наступающим наступившим вновь наступающим, Хабр.

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

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

С сайтом несколько больно знакомиться, он отпугивает вездесущими приписками "premium", пользуясь славой ресурса для техсобесов продвигает функционал вроде списков компаний, где встречался вопрос n и симуляции интервью в компанию m, да и сам не особо стремится рассказать о себе, потому в нём зачастую и видно голый задачник с одной страницей "problems".

За всем этим теряется важный пункт – а можно ли использовать сайт не для механического зазубривания популярных вопрос-ответов, а для изучения/закрепления алгоритмов и структур данных? Можно. Но подход к этому нужно формировать самостоятельно.

🏆
Всего голосов 37: ↑36 и ↓1+44
Комментарии30

Карьера состоится при любой работе

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

Карьеризм, карьерист — эти слова прочно засели в головах как негативные, осуждающие, характеризующие человека особого склада характера. Между тем, карьеру в каком-то смысле делает каждый из нас: для этого не обязательно ходить по головам, подсиживать, подлавливать и всеми силами устранять соперников из компании. Карьера в вакууме — это сумма знаний, навыков, особенностей темперамента, желания и воли. Однако реальность делает поправку на социум, условия жизни, здоровье, возраст. И, к сожалению, карьера может оборваться довольно трагично и рано, рецепт карьерного долголетия прост и сложен одновременно — так же, как долголетия биологического. А может, нам просто неохота? 

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

Эффективное ведение дел или Obsidian + GTD

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

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

Существующие приложения, как правило, не могут предоставить готовое решение для работы в таком контексте. Приходится придумывать или создавать что-то свое. Самое простое — это начать с каких-то стандартных заметочников, например Evernote или OneNote, и приспособить их под себя. Однако с появлением Roam-подобных программ пришло понимание, что можно создать очень гибкую систему, которую легко настроить под ведение любого вида задач, проектов и хранение различного типа связанной с ними информации. В этой статье познакомимся с примером настройки и практического использования маркдаун-заметочника Obsidian совместно с методологией Getting Things Done (GTD) Дэвида Аллена.

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

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

Время на прочтение6 мин
Количество просмотров76K
Всем привет! Хочу очередной раз поднять тему про найм. Только я собираюсь поговорить об этом с точки зрения кандидата, а не работодателя. Ведь собеседование, вопреки многим стереотипам, процесс двусторонний — вопросы может задавать не только интервьюер, но и сам соискатель. За прошлый год я провёл порядочное количество собеседований, и абсолютное большинство кандидатов огорчило меня отсутствием вопросов о компании, всего 5 человек стали меня расспрашивать о работе.

Я же считаю, что вопросы на собеседовании должен задавать и сам кандидат, ведь ему предстоит там работать. Из стандартного описания вакансии невозможно понять, что творится в компании, да и на собеседовании принято всё немного приукрашивать. Я думаю, что соискатель должен максимально использовать собеседование для того, чтобы выяснить реальное положение дел в компании. Мало кому захочется попасть в некомфортные условия или в убыточную компанию без перспектив. Если интересно, как во время собеседования получить реальное представление о компании, то добро пожаловать под кат. Я дам список вопросов, которые обычно не ждут интервьюеры, возможно кому-то они помогут принять правильное решение при поиске работы.

image
Читать дальше →
Всего голосов 114: ↑108 и ↓6+125
Комментарии131
1
23 ...

Информация

В рейтинге
4 520-й
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность