I'm looking for a modern introduction to #C. Something that is slow and steady but through. This is as much for systems programming on Linux as embedded work; I intend to do a bit of both. Any suggestions would be helpful. #programing #programinghelp #askfedi

Direct2D #8: О (WIC) Windows Imaging Component

Статья объясняет что такое WIC (Windows Imaging Component) и как с ним работать(с примерами), рассчитано для тех кто никогда не слышал, или почти никогда не слышал о WIC. Является переписью того, что написано в MSDN, но: на русском, понятно, кратко.

https://habr.com/ru/articles/1020590/

#C++ #Windows #Gamedev #direct2d #desktop_windows

Direct2D #8: О (WIC) Windows Imaging Component

Здравствуйте! WIC - это набор объектов, которые позволяют распаковывать сжатые данные и понимать их структуру. Данные могут быть из файла, потока или памяти. Можно получать пиксели изображений, кадры...

Хабр

Game Boy Advance Emulator in s&box - More News!

But why?… Asphaltian in the comments: I’m planning a scripting API to allow anyone to create add-ons for any ROM you want, just not a priority right now. And because why not? Besides, I have lots of plans in store for it too.

Game Boy Advance Emulator in s&box - More News!

YouTube

Как создать настоящий приватный мессенджер?

Существуют решения для анонимного взаимодействия в интернет пространстве, такие как Tor, I2P и Freenet, но они ориентированы на весь интернет и избыточны для простого общения. Их сложность и архитектура могут быть неудобны в условиях ограниченного доступа к сети. Поэтому возникает идея более простой и специализированной системы. XXCore — это лёгкая p2p-архитектура с доверенными узлами, построенная на PipeNet и модифицированном SSU2.

https://habr.com/ru/articles/1020480/

#мессенджер #приватность #сети_передачи_данных #сети #обфускация #noise_protocol_framework #c++ #криптография

Как создать настоящий приватный мессенджер?

Привет, Хабр! Я пишу данную статью, по своей "выдумке", дабы найти единомышленников, и продвинуть идею в массовое использование, если уж на то пошло - простое защищённое взаимодействие по сети -...

Хабр
Pete Hegseth faces articles of impeachment. #PeteHegseth #DonaldTrump #Congress

YouTube
@codeberg How do I change the colours assigned to a repository's primary language? #C shouldn't be grey, its brighter than that.

От делопроизводителя до разработчика видеоигр: Итоги двух лет

Привет, уважаемые пользователи Хабра! Решил поделиться с вами историей своего пути в геймдев. Забегая вперед, скажу, что история еще не окончена и чем окончится никому не известно. Тем не менее, возможно она вдохновит тех, кто хочет изменить свою жизнь, но не решается это сделать, потому что считает, что в «40+ уже поздно» или опасается быть непонятым окружающими. Это моя дебютная статья. Не ждите глубоких технических разборов или чудодейственных методик, гарантированно ведущих к успеху. Никакой преисполненности собственной крутости или токсичной позитивности — только правда. При написании статьи ни одна нейросеть «не пострадала», да бы материал максимально отражал реальный уровень моих знаний и навыков. И так, не буду затягивать вступление и перехожу непосредственно к истории...

https://habr.com/ru/articles/1020362/

#игровая_индустрия #игровые_движки #индиразработка #видеоигры #геймдев #unity #c# #разработка_игр

От делопроизводителя до разработчика видеоигр: Итоги двух лет

Привет, Уважаемые пользователи Хабра! Решил поделиться с вами историей своего пути в геймдев. Забегая вперед, скажу, что история еще не окончена и чем окончится никому не известно. Тем не менее,...

Хабр

Лишние вычисления

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

https://habr.com/ru/articles/1019082/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1019082

#c++ #программирование #ненормальное_программирование #разработка_игр

Лишние вычисления

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

Хабр

Дизайн логгера: что важно на самом деле

Когда логирование попадает в реальную систему, довольно быстро становится понятно, что это не про API и не про удобство вызова. Это про постоянный компромисс. С одной стороны, хочется, чтобы система работала максимально быстро: любое логирование — это накладные расходы, и в нормальном режиме его стараются минимизировать. С другой стороны, как только возникает проблема, внезапно оказывается, что либо логов недостаточно, либо они есть, но в таком виде, что восстановить картину происходящего невозможно. В этот момент становится очевидно, что задача логгера — не просто “писать строки” максимально быстро, а помогать удерживать баланс между производительностью и диагностируемостью. Первая проблема, которая всплывает практически сразу, связана не со скоростью, а со структурой. Лог начинает отражать структуру кода, а не структуру происходящего. Есть бизнес-логика, есть библиотеки, есть множество параллельных операций, и каждая из них пишет что-то своё. В итоге лог превращается в поток сообщений, где перемешаны разные задачи, и вместо “обработки конкретного запроса” мы видим просто последовательность вызовов. На небольшом проекте это ещё можно терпеть, но в серверной системе такая картина быстро становится непригодной для анализа. Естественное желание — привязать лог не к месту вызова, а к самой задаче. Самый прямой путь — передавать контекст через параметры (например, инстанс логгера), но довольно быстро это начинает протекать через весь код и превращается в обязательный шум в сигнатурах. Гораздо более устойчивый подход — привязать контекст к потоку выполнения. В библиотеке logme это делается через thread channel:

https://habr.com/ru/articles/1020188/

#логирование #логирование_C++ #системы_логирования #дизайн_логгера #logging #C++_logging

Дизайн логгера: что важно на самом деле

Когда логирование попадает в реальную систему, довольно быстро становится понятно, что это не про API и не про удобство вызова. Это про постоянный компромисс. С одной стороны, хочется, чтобы система...

Хабр

Jotain ihan muuta: bloggaus pääsiäispäivien C-draamasta. Pursuit of Jade oli ensimmäinen katsomani kiinalaissarja sitten 1988 "Viimeisen keisarin" ja historiallinen kuvittelu viihdytti historioitsijaa, mutta lopultakin stoori venyi aika pitkäksi...

#C-draama #PursuitOFJade

https://anulah.wordpress.com/2026/04/06/pursuit-of-jade/

Pursuit of Jade

Kiinalaisen, kuvitteelliseen dynastiaan sijoittuvan romanttisen seikkailusarjan Zhu Yu esittelyä, arvointis ja historiallisia yhteyksiä.

Vita Historica