Обновить
191
0

Expert C++ Engineer

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

Апгрейд компьютера в 2025

Уровень сложностиПростой
Время на прочтение20 мин
Охват и читатели35K

Свой предыдущий компьютер я собрал 10 лет назад. Я еще застал то время когда за подобный промежуток времени персоналки успевали измениться до неузнаваемости а для того чтобы не отстать от жизни их требовалось апгрейдить каждые два или три года. Но в тихие 2020е годы «железо» развивается уже не так быстро и по большому счету я мог бы продолжать этим старым компьютером и дальше. Однако руки у меня чесались уже из принципа и когда «винда» объявила мне что поддержка win10 прекращается, а win11 на моем компьютере работать не может, то я воспринял это как знак и решил немного побаловать себя. Эта статья — это обзор для олдфагов типа меня о том что появилось на рынке персоналок в последние годы и о том чего можно ожидать при подобном апгрейде.

Да, кстати, стоит ли вообще игра свеч?

Ортографическая проекция в фотографии и прочие интересные фокусы с объективами

Уровень сложностиСредний
Время на прочтение30 мин
Охват и читатели27K

С тем как работает фотоаппарат мы знакомимся еще со школьной программы. Однако привычное нам из школьного курса сведение объектива к "тонкой линзе" на самом деле не отвечает на массу практических вопросов. Например как удается создавать объективы с ортографической проекцией применяемые в системах технического зрения?

Да-да, такие тоже бывают не только в компьютерной графике, но и в фотографии: попробуйте-ка это объяснить оперируя исключительно в терминах "тонкой линзы". Размер изображения предмета в таких системах (почти) не зависит от того на каком расстоянии от объектива они находятся и это весьма удобно для измерения размеров предмета. В этой статье мы поговорим о том как этого удается добиться, как работает автофокус и пленоптические камеры и о многих других интересных вещах

Так как же работает объектив?

Релокация на машине в Армению

Время на прочтение14 мин
Охват и читатели63K

Доброго дня всем хабровчанам. Примерно месяц назад я переехал из Москвы жить и работать в Ереван. С тех пор периодически меня спрашивают про то как мне удалось доехать до Армении на автомобиле, как вообще устроена релокация и как мне живется после переезда. Так что я подумал-подумал и решил написать об этом статью на Хабр.

Для тех кто заинтересовался

И снова про безопасность банков и СМС

Время на прочтение3 мин
Охват и читатели24K

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

Итак, господа, что нужно мошенникам для того чтобы полностью скомпроментировать все ваши счета в Альфа-Банке? Как оказалось всего две вещи: номер любой Вашей карты...

...и код из одной СМС

Еще один способ высокотехнологичного мошенничества

Время на прочтение10 мин
Охват и читатели55K
В уходящем году я столкнулся с довольно оригинальным и высокотехнологичным способом мошенничества. По всей видимости далеко не новым, но я раньше не встречал подробных описаний того как работают подобные схемы, так что попробую восполнить этот пробел.

Итак, в этой статье мы поговорим о мошенниках, скрывающихся под видом торговых (STP) брокеров занимающихся маржинальной торговлей. Это ребята, которые предоставляют услуги в покупке контрактов на акции компаний, контрактов FOREX и прочих CFD-инструментов.

Однажды в России...

Правильная работа с потоками в Qt

Время на прочтение13 мин
Охват и читатели103K
Qt — чрезвычайно мощный и удобный фреймворк для C++. Но у этого удобства есть и обратная сторона: довольно много вещей в Qt происходят скрыто от пользователя. В большинстве случаев соответствующая функциональность в Qt «магически» работает и это приучает пользователя просто принимать эту магию как данность. Однако когда магия все же ломается то распознать и решить неожиданно возникшую на ровном казалось бы месте проблему оказывается чрезвычайно сложно.

Эта статья — попытка систематизации того как в Qt «под капотом» реализована работа с потоками и о некотором количестве неочевидных подводных камней связанных с ограничениями этой модели.

Основы
Thread affinity, инициализация и их ограничения
Главный поток, QCoreApplication и GUI
Rendering thread
Заключение

А Вы правильно работаете с QThread и сигналами?

Выпускники американских университетов превосходят выпускников России, Китая и Индии

Время на прочтение6 мин
Охват и читатели90K
Каждый месяц мы читаем новости о недостатках и провалах образования в США. Если верить прессе, то начальная школа в Америке не способна научить учеников даже базовым знаниям, знаний даваемых средней школой явно недостаточно для поступления в колледж, ну а школьники, сумевшие все же продержаться до окончания колледжа, оказываются абсолютно беспомощны за его стенами. Но недавно была опубликована весьма интересная статистика, показывающая что по крайней мере в одном конкретном аспекте подобное мнение весьма далеко от истины. Несмотря на известные проблемы американской системы среднего образования, выпускники американских колледжей специализирующихся на computer science оказались прекрасно развитыми и очень конкурентоспособными специалистами по сравнению со своими зарубежными конкурентами.

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

Настраиваем удобную сборку проектов в Visual Studio

Время на прочтение43 мин
Охват и читатели98K
Эта статья является руководством по настройке сборки C++ проектов Visual Studio. Частично она сводилась из материалов разрозненных статей на эту тему, частично является результатом реверс-инжениринга стандартных конфигурационных файлов Студии. Я написал ее в основном потому что полезность документации от самой Microsoft на эту тему стремится к нулю и мне хотелось иметь под рукой удобный референс к которому в дальнейшем можно будет обращаться и отсылать других разработчиков. Visual Studio имеет удобные и широкие возможности для настройки по-настоящему удобной работы со сложными проектами и мне досадно видеть что из-за отвратительной документации эти возможности очень редко сейчас используются.

В качестве примера попробуем сделать так чтобы в Студию можно было добавлять flatbuffer schema, а Студия автоматически вызывала flatc в тех случаях когда это нужно (и не вызывала — когда изменений не было) и позволяла задавать настройки напрямую через File Properties



Укрощаем MSBuild

История неудач SpaceX

Время на прочтение1 мин
Охват и читатели20K
Компания SpaceX вчера выложила совершенно шикарное видео где продемонстрированы все многочисленные фейлы (и указаны их причины) через которые компания прошла за три года отрабатывая технологию возврата и мягкой посадки первой ступени.


В видео девять фейлов, шесть взрывов и немного пятничного юмора от SpaceX. Часть кадров мне ранее не встречалась. Enjoy :)

Научно-технические мифы, часть 1. Почему летают самолеты?

Время на прочтение13 мин
Охват и читатели171K
В современном мире многие люди интересуются наукой и техникой и пытаются хотя бы в общих чертах понять, как работают вещи, которые их окружают. Благодаря этому стремлению к просвещению существует научно-просветительская литература и сайты, подобные Гиктаймсу. А поскольку читать и воспринимать ряды формул большинству людей затруднительно, то излагаемые в подобных изданиях теории неизбежно подвергаются значительному упрощению в попытке донести до читателя «суть» идеи с помощью простого и понятного объяснения которое легко воспринять и запомнить. К сожалению, некоторые из подобных «простых объяснений» являются в корне неверными, но при этом оказываются настолько «очевидными», что не подвергаясь особому сомнению начинают кочевать из одного издания в другое и нередко становятся доминирующей точкой зрения, несмотря на свою ошибочность.

В качестве одного из примеров попробуйте ответить на простой вопрос: «откуда возникает подъемная сила в крыле самолета»?



Если в Вашем объяснении фигурируют «разная длина верхней и нижней поверхности крыла», «разная скорость потока воздуха на верхней и нижней кромках крыла» и «закон Бернулли», то я вынужден Вам сообщить, что Вы скорее всего стали жертвой популярнейшего мифа, который преподают порою даже в школьной программе.
То есть это как это миф? Ведь там же все внятно и с доказательствами объясняется!

Посадки Falcon 9 становятся рутиной

Время на прочтение1 мин
Охват и читатели20K
Утром 14 августа в 5:45 UTC (8:45 утра по Москве) тихо и без особой помпы компания SpaceX запустила очередной Falcon 9 FT, успешно отправив пятитонный спутник JCSAT-16 на геопереходную орбиту.

CRS-9

Отработавшая своё первая ступень совершила мягкую посадку на баржу в Атлантике

Представление движений в 3D моделировании: интерполяция, аппроксимация и алгебры Ли

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

Сколько существует разных способов представить обыкновенный поворот в трехмерном пространстве? Большинство людей, когда-либо занимавшихся 3D-графикой или 3D-моделированием, сходу назовут три основных широко распространенных варианта:

  • Матрица поворота 3x3;
  • Задание поворота через углы Эйлера;
  • Кватернионы.

Люди с богатым опытом добавят сюда почему-то не пользующийся популярностью четвертый пункт:
  • Ось поворота и угол.

Мне бы хотелось рассказать о пятом способе представления вращений, который симпатичен тем, что удобен для параметризации, позволяет эффективно строить полиномиальные аппроксимации этих параметризаций, проводить сферическую интерполяцию, и главное, универсален — с минимальными изменениями он работает для любых видов движений. Если вам когда-либо был нужен метод, который позволял бы легко сделать «аналог slerp, но не для чистых вращений, а для произвольных движений, да еще и с масштабированием», то читайте эту статью.
Читать дальше →

Давайте знакомиться: компания Align Technology

Время на прочтение12 мин
Охват и читатели40K
Представьте себе компанию, будничный рабочий процесс которой включает лазерные резаки, трехмерные принтеры и трехмерные сканеры, рентгеновские томографы, CAD, композитные материалы, автоматические станки с ЧПУ, оптическую и биохимическую лабораторию и даже собственную сборку специализированных железячных девайсов. Здесь широко реализуется поточная обработка данных в реальном масштабе времени, используется 3D печать, занимаются биоинжинерией и программируют FPGA, есть сети хранящие терабайты данных, датамайнинг и даже немножко искусственного интеллекта. Представили? А теперь попробуйте угадать чем эта компания может заниматься. Сразу скажу, что это не космос, не авиация и даже не автомобилестроение.


Заинтересовались?..

Простыми словами о преобразовании Фурье

Уровень сложностиСредний
Время на прочтение14 мин
Охват и читатели1.2M
Я полагаю что все в общих чертах знают о существовании такого замечательного математического инструмента как преобразование Фурье. Однако в ВУЗах его почему-то преподают настолько плохо, что понимают как это преобразование работает и как им правильно следует пользоваться сравнительно немного людей. Между тем математика данного преобразования на удивление красива, проста и изящна. Я предлагаю всем желающим узнать немного больше о преобразовании Фурье и близкой ему теме того как аналоговые сигналы удается эффективно превращать для вычислительной обработки в цифровые.

image (с) xkcd

Без использования сложных формул и матлаба я постараюсь ответить на следующие вопросы:
  • FT, DTF, DTFT — в чем отличия и как совершенно разные казалось бы формулы дают столь концептуально похожие результаты?
  • Как правильно интерпретировать результаты быстрого преобразования Фурье (FFT)
  • Что делать если дан сигнал из 179 сэмплов а БПФ требует на вход последовательность по длине равную степени двойки
  • Почему при попытке получить с помощью Фурье спектр синусоиды вместо ожидаемой одиночной “палки” на графике вылезает странная загогулина и что с этим можно сделать
  • Зачем перед АЦП и после ЦАП ставят аналоговые фильтры
  • Можно ли оцифровать АЦП сигнал с частотой выше половины частоты дискретизации (школьный ответ неверен, правильный ответ — можно)
  • Как по цифровой последовательности восстанавливают исходный сигнал


Я буду исходить из предположения что читатель понимает что такое интеграл, комплексное число (а так же его модуль и аргумент), свертка функций, плюс хотя бы “на пальцах” представляет себе что такое дельта-функция Дирака. Не знаете — не беда, прочитайте вышеприведенные ссылки. Под “произведением функций” в данном тексте я везде буду понимать “поточечное умножение”

Итак, приступим?

Информация

В рейтинге
5 044-й
Откуда
Россия
Зарегистрирован
Активность

Специализация

Десктоп разработчик
Ведущий
От 600 000 ₽
C++
Qt
Алгоритмы и структуры данных
Многопоточность
Прикладная математика
Компьютерное зрение
Python
Научно-исследовательская работа
САПР
Английский язык