Pull to refresh
4
0

начинающий гейдевелопер

Send message

Отрисовка в браузере большой анимации или как я ушел с mp4 к своему формату видео

Reading time17 min
Views51K

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

Читать далее
Total votes 286: ↑286 and ↓0+286
Comments134

Elden Ring игнорирует 20 лет дизайна опенворлдов, и игре это только на пользу

Reading time5 min
Views37K

Как и любой проект From Software, Elden Ring похвалили практически со всех сторон — и пресса, и игроки. Любопытно, что несмотря на восторженные отзывы большинства, некоторые разработчики считают, что «ужасное управление» и «плохой UX» являются секретом популярности проекта.

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

Читать далее
Total votes 77: ↑67 and ↓10+57
Comments123

Начинающему сетевому программисту

Reading time17 min
Views108K

Тема сетевого программирования является для разработчиков одной из важнейших в современном цифровом мире. Правда, надо признать, что большая часть сетевого программирования сосредоточена в области написания скриптов исполнения для web-серверов на языках PHP, Python и им подобных. Как следствие - по тематике взаимодействия клиент-сервер при работе с web-серверами написаны терабайты текстов в Интернете. Однако когда я решил посмотреть, что же имеется в Интернете по вопросу программирования сетевых приложений с использованием голых сокетов, то обнаружил интересную вещь: да, такие примеры конечно же есть, но подавляющее большинство написано под *nix-системы с использованием стандартных библиотек (что понятно – в области сетевого программирования Microsoft играет роль сильно отстающего и менее надежного «собрата» *nix-ов). Другими словами все эти примеры просто не будут работать под Windows. При определенных танцах с бубнами код сетевого приложения под Linux можно запустить и под Windows, однако это еще более запутает начинающего программиста, на которого и нацелены большинство статей в Интернете с примерами использования сокетов.

Ну а что же с документацией по работе с сетевыми сокетами в Windows от самой Microsoft? Парадоксальность ситуации заключается в том, что непосредственно в самой документации приведено очень беглое описание функций и их использования, а в примерах имеются ошибки и вызовы старых «запрещенных» современными компиляторами функций (к примеру, функция inet_addr() - https://docs.microsoft.com/en-us/windows/win32/api/winsock2/nf-winsock2-listen ) - такие функции конечно же можно вызывать, заглушив бдительность компилятора через #define-директивы, однако такой подход является полным зашкваром для любого даже начинающего программиста и категорически не рекомендуется к использованию. Более того, фрагмент кода в примере от Microsoft по ссылке выше.

Читать далее
Total votes 16: ↑15 and ↓1+14
Comments50

Философия эволюции и эволюция интернета

Reading time17 min
Views16K
СПб, 2012
Текст не о философии в интернете и не о философии интернета – философия и интернет в нем строго разведены: первая часть текста посвящена философии, вторая – интернету. В качестве связующей оси между двумя частями выступает понятие «эволюция»: разговор пойдет о философии эволюции и об эволюции интернета. Сначала будет продемонстрировано, как философия – философия глобального эволюционизма, вооруженная концептом «сингулярность» – неизбежно подводит нас к мысли, что именно интернет является прообразом будущей постсоциумной эволюционной системы; а потом и сам интернет, вернее логика его развития, подтвердит право философии рассуждать на, казалось бы, сугубо технологические темы.
Читать дальше →
Total votes 13: ↑10 and ↓3+7
Comments28

Простой backend на C++: это возможно?

Reading time5 min
Views46K

Была у меня мечта - писать backend на C++. А вот разбираться в unix socket'ах, TCP, многопоточной/асинхронной обработке запросов и во многом другом совсем не хотелось. Не верил я, что до сих пор нет каких-то минималистичных фреймворков. И сегодня я вам расскажу, как можно просто сделать HTTP API микросервис на C++ с помощью фреймворка Drogon.

Поехали!
Total votes 32: ↑32 and ↓0+32
Comments24

Вычисления с фиксированной точкой. Основные принципы (ч.1)

Reading time11 min
Views90K

Введение или зачем этот топик


Читая Хабрахабр, я натолкнулся на два топика, «выводящие на чистую воду» вычисления с плавающей запятой.
В одном из них достаточно подробно и качественно дана выжимка из стандарта IEEE754 и основные проблемы при вычислениях с плавающей запятой, другой — короткий топик-заметка про то, что не все так хорошо при вычислениях на ПК. При этом даются рекомендации в случае, когда важна математическая точность результата, использовать целочисленные вычисления, «фиксировать запятую» или как минимум проверять результаты, выдаваемые платформой (компилятор + процессор).
Несмотря на то, что советы дельные, понять, как использовать целочисленные вычисления там, где до этого была плавающая запятая, не так просто, особенно без математической подготовки. Достаточно занимательна в этом смысле попытка одного из «хабровчан» разобраться с фиксированной точкой методом экспериментов.
Данный топик — краткое введение, которое должно дать представление о вычислениях с фиксированной точкой. Математика в данной статье не должна никого напугать — все очень примитивно. Сразу прошу простить: среди моих знакомых устоявшимся выражением является именно «фиксированная точка» (от англ., fixed-point), а не «запятая», поэтому я буду придерживаться именно этого термина.
Читать дальше →
Total votes 71: ↑71 and ↓0+71
Comments25

Взламываем ТВ-приставку, чтобы получить плацдарм для хакерских атак

Reading time8 min
Views34K

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

Читать далее
Total votes 64: ↑61 and ↓3+58
Comments18

Как энтузиасты возвращают «старый» интернет

Reading time3 min
Views47K

На этой неделе сценарист фильма «Дюна» Дени Вильнёв рассказал, что писал сценарий в программе Movie Master на MS-DOS — так как не любит перемен. И пока такие энтузиасты используют старое программное обеспечение в силу привычки, другие идут гораздо дальше в своих начинаниях и возвращают интернет во времена, когда страницы были минималистичны, а протоколы — проще сегодняшних.

Читать далее
Total votes 40: ↑32 and ↓8+24
Comments66

Как посчитать синус быстрее всех на хабре

Reading time15 min
Views32K

Несмотря на свою кажущуюся банальность, темы о вычислении синуса достаточно регулярно появляются на хабре. И каждый раз их авторы или делают сомнительные утверждения, или получают сомнительные результаты. Не в силах более терпеть, я тоже решил поучаствовать и внести свой, не менее сомнительный вклад в этот вопрос.
Читать дальше →
Total votes 93: ↑92 and ↓1+91
Comments41

Освежите ваш COBOL: почему на язык 60-летней выдержки вдруг резко возник спрос?

Reading time13 min
Views50K

Давным-давно, когда мир был юн, и компьютеры в нем были в новинку, я учился по программе на младшего сотрудника (Associate Degree) по обработке данных – программ по «компьютерным наукам» тогда не было – и в рамках этой программы преподавались бухгалтерское дело, математика, статистика, а также три языка программирования: ассемблер IBM/360, FORTRAN и COBOL. К 80-м студентам уже рассказывали, что COBOL мертвый язык, и никто его больше не изучают.

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

Читать далее
Total votes 75: ↑71 and ↓4+67
Comments88

Энвелоп фильтр для гитары своими руками почти с нуля

Reading time6 min
Views5.9K

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

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

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

Для тех кому лень читать.

По ссылке доступны все необходимые файлы и инструкции по заказу плат, комплектующих и сборке педали:

OVERLY LOWERLY (Guitar Pedal) — ссылка на гитхаб со всем необходимым

В самом низу постав добавлю короткое видео с работой устройства.
(Ссылка на видео есть так же на странице в гитхабе).

Читать далее и смотреть схемы
Total votes 24: ↑23 and ↓1+22
Comments25

Как я портировал DOS игру

Reading time22 min
Views35K

Решил портировать одну старую давно забытую игрушку с DOS на современную платформу. Эта игра, в своё время, привлекала ураганным геймплеем, неплохой разрушаемостью, возможностью включить всё оружие одновременно и устроить настоящий бедлам. В 2021 году играть в такое всё ещё интересно, но делать это в родном разрешении 640х480, как-то не очень. Поэтому решил портировать игру и накатить хай-рез патч. Получилось!

Читать далее
Total votes 235: ↑235 and ↓0+235
Comments40

Свои потоки ввода-вывода в C++ с помощью std::streambuf

Reading time16 min
Views82K
В статье на примерах объясняется, как реализовать поддержку потокового ввода-вывода из стандартной библиотеки (<iostream>) для своих классов.

В тексте статьи будет часто встречаться слово «поток», что означает именно поток ввода-вывода ((i/o)stream), но не поток выполнения (thread). Потоки выполнения в статье не рассматриваются.


Введение


Потоки из стандартной библиотеки — мощный инструмент. Аргументом функции можно указать поток, и это обеспечивает ее универсальность: она может работать как со стандартными файлами (fstream) и консолью (cin/cout), так и с сокетами и COM-портами, если найти соответствующую библиотеку.

Однако не всегда можно найти готовую библиотеку, где подходящий функционал уже реализован, может даже вы разрабатываете собственную библиотеку со своими классами. Тогда возникает задача реализации интерфейса потоков своими силами.
Читать дальше →
Total votes 27: ↑27 and ↓0+27
Comments9

Необычный дуалбут: ноутбук с «двойным дном»

Reading time15 min
Views80K

Не так давно на Habr Q&A я наткнулся на интересный вопрос — как сделать, чтобы два жестких диска не видели друг друга? Чтобы вирус, попав на одну систему, никоим образом не мог заразить другую. В ответах предлагали достаточно стандартные способы — использовать полнодисковое шифрование, отключить диск в диспетчере устройств и даже поставить переключатель на питание. Но что если взглянуть на задачу совершенно с другого угла и сделать всё средствами самого HDD? Да-да, сегодня мы снова погружаемся в пучины модификации прошивок и реверс-инжиниринга!
Узнать подробности
Total votes 361: ↑357 and ↓4+353
Comments122

Как надёжно удалить файлы и зачистить HDD/SSD

Reading time7 min
Views87K


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

Естественно, в квартире находят множество улик, позволяющих квалифицировать гражданина сразу по нескольким статьям.

В таких условиях чрезвычайно важно перед обыском надёжно удалить всю информацию с накопителей и мобильных устройств, чтобы злоумышленник не получил доступ к контактной книге, аккаунтам в социальных сетях и мессенджерах — иначе вы подставите своих товарищей и предоставите дополнительные улики следствию.
Читать дальше →
Total votes 129: ↑110 and ↓19+91
Comments309

Неожиданные причины торможения программ и систем

Reading time29 min
Views48K

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

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

Разделы поста чаще всего никак не связаны друг с другом, поэтому можете выбирать самые интересные для вас.
Читать дальше →
Total votes 112: ↑111 and ↓1+110
Comments88

По просьбам читателей: «Хтоническое существо» в реальном прошлом

Reading time8 min
Views11K

«В бездну пучин» сланцевых пород скалы эпохи Велнока, что на юге графства Херефордшир (Великобритания) раз за разом «погружались» инструменты палеонтологов, в надежде отыскать дом давно мёртвого и древнего существа, что «видит сны» и ждёт.

Читать далее
Total votes 31: ↑28 and ↓3+25
Comments10

Что читать на английском языке чтобы не умереть от скуки

Reading time9 min
Views48K

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

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

Читать далее
Total votes 25: ↑24 and ↓1+23
Comments16

Частично рассекречено методическое пособие АНБ по взлому неизвестных шифров

Reading time7 min
Views22K

Скульптура Kryptos у штаб-квартиры ЦРУ

Агентство национальной безопасности США наконец-то рассекретило третью часть известного учебника «Военная криптоаналитика» (MILCRYP), написанного для обучения специалистов АНБ и военных криптоаналитиков во время Холодной войны. Последняя часть трёхтомника опубликована с некоторыми купюрами, но всё равно представляет огромную ценность, ведь у нас не так много практических пособий по взлому шифров. Речь идёт о неизвестных, сложных кодах, которые составлены по непонятным правилам. Как к ним подступиться? Как найти зацепки? Книга отвечает на эти вопросы.

Возможно, учебник АНБ поможет расшифровать тексты, которые в течение многих десятилетий и столетий не поддаются криптоанализу. И даже тысячелетий, как в случае с критской письменностью из III тысячелетия до нашей эры (минойская цивилизация).
Total votes 49: ↑47 and ↓2+45
Comments7
1
23 ...

Information

Rating
Does not participate
Registered
Activity