Pull to refresh
66
-3.2
Александр @Albert_Wesker

User

Send message

Как заново реализовать тетрис

Level of difficultyMedium
Reading time9 min
Views5.8K


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

Вне всяких сомнений, я наработал массу опыта и знаний, выполняя все эти вещи самостоятельно. Поэтому, на мой взгляд, вполне целесообразно и далее так делать, то есть, попробовать выполнить какой-то проект, уже реализованный ранее. Всё это — именно с целью самообучения. На этот раз я взялся самостоятельно перепроектировать «Тетрис». Чтобы было ещё интереснее, я решил всё сделать на C.

На самом деле, это не первая моя игра на C – немного ранее я уже успел написать на С клон сапёра. В блоге также об этом не писал, но, может быть, напишу в будущем, так как проект получился очень интересным. Пожалуй, этот опыт пригодился мне в работе над «Тетрисом».
Читать дальше →
Total votes 34: ↑34 and ↓0+34
Comments29

История создания Civilization IV: избавление от унылости

Level of difficultyEasy
Reading time8 min
Views8.2K
Историю четвёртой части «Цивилизации» можно начать с очередной смены владельца бренда Civilization: Atari (Infrogames) продала их 2К Games, дочерней компании Take-Two. Сумма сделки составила 22,3 миллиона долларов. На дворе стоял 2004-й год.



Хотя на самом деле к тому моменту разработка уже весьма активно велась, так что Сид Мейер и его студия Firaxis отнеслись к происходящему философски: смена издателя не сильно влияла на планы команды. Руководил проектом Сорен Джонсон, набравшийся опыта в работе над предыдущей частью серии.
Читать дальше →
Total votes 23: ↑25 and ↓-2+27
Comments10

Полигон для творчества за 1500 р. Часть 2. Структура платы, 256 UARTов и расширение спектра

Level of difficultyMedium
Reading time7 min
Views5.4K


Приветствую вас, друзья!

Продолжаем знакомство с платой SX100. Рассмотрим структуру и некоторые любопытные особенности платы, узнаем, как улучшить ЭМС с помощью расширения спектра. Сделаем пару сотен UARTов и доработаем плату.

Вперёд к экспериментам!
Читать дальше →
Total votes 29: ↑33.5 and ↓-4.5+38
Comments10

Смартфон для джаваскриптера-олдфага: стоит ли гику брать дешманские девайсы на KaiOS? Смотрим на Nobby 240 LTE

Level of difficultyMedium
Reading time11 min
Views7.5K
image

Друзья! Много ли платформ вы знаете, где для написания пользовательских приложений используется стек… веб-технологий, причём это единственный нативный способ писать программы? Услышав о HTML5 + CSS + JS, на ум приходит разве что webOS — которая используется в современных телевизорах от LG (а ранее использовалась ещё и в Palm Pre — уникальный смартфон, единственный в своём роде), а олды вспомнят ещё и про FireFox OS, в которой вся оболочка (включая многозадачность, шторку уведомлений и все приложения) также была реализована на JS. Но ни webOS, ни FFOS в своё время не суждено было стать массовыми ОС на смартфонах: сказывались аппаратные ограничения устройств, да и проблемы с портированием уже существующих приложений с других платформ (например, игр). Однако несколько лет назад, проект FireFox OS был форкнут и на свет появилась новая система, предназначенная для… умных кнопочных телефонов с LTE! И имя ей — KaiOS. Вероятно, многие мои читатели слышали о ней и о новых умных кнопочниках от Nokia. Но что из себя представляет система под капотом и чем она может быть интересна гику? Читайте в новом материале!
Читать дальше →
Total votes 58: ↑62.5 and ↓-4.5+67
Comments30

Первые способы защиты компьютерных игр от пиратства

Level of difficultyEasy
Reading time12 min
Views15K
За несколько десятилетий ЭВМ эволюционировали от «100 квадратных метров площади, 25 человек обслуживающего персонала и 30 литров спирта ежемесячно» до вполне миниатюрных образцов: Commodore-64, Atari 800XL, Apple II, Электроника БК-0010… Проблема была в цене: все эти модели весьма били по карману рядовому обывателю (примерно как покупка автомобиля).

Всё изменил Клайв Синклер, выпустивший на рынок ZX Spectrum – первый дешёвый персональный компьютер. Спектрумы продавались ударными темпами: только в одной Англии за неделю приобретали порядка пятнадцати тысяч машин. Причём, помимо и так недорогой версии «в сборе», покупателям предлагался удешевлённый вариант в виде отдельных комплектующих – эдакий конструктор «Собери сам».

Читать дальше →
Total votes 76: ↑75 and ↓1+74
Comments80

«Робокоп» — рыцарь нашего времени

Level of difficultyEasy
Reading time13 min
Views9.1K


Порой, когда смотришь на путь создания того или иного художественного произведения, просто дух захватывает от понимания того, сколько звёзд должно было сойтись, чтобы оно смогло увидеть свет в том виде, в каком мы его знаем и ценим. А если речь идёт о большом и претендующем на культовый статус боевике, то там целый парад планет должен выстроиться, не иначе. Поэтому меня не перестают удивлять истории создания кинолент, на которых мы с вами выросли. Об одной из них, а именно о «Робокопе» 1987-го года за авторством Пола Верховена, мы сегодня и поговорим.
Читать дальше →
Total votes 74: ↑72.5 and ↓1.5+71
Comments23

Руководство по Kubernetes для хейтеров Kubernetes

Level of difficultyMedium
Reading time6 min
Views8.7K


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

Я и сам замешан в перемывании косточек на эту тему.
Читать дальше →
Total votes 20: ↑17 and ↓3+14
Comments10

В моих жилах течет моддерская кровь: как и зачем я променял оригинальный айфон на нерабочую подделку за 1500 рублей?

Level of difficultyMedium
Reading time18 min
Views14K
image

Осторожно: в статье аппаратная диагностика и ремонт, реверс-инжиниринг и патчинг загрузчика, а также программный моддинг noname-устройства, для которого нет вообще никакой информации. В материале куча познавательного контента, даже если вы не фанат такого своеобразного класса устройств, как подделки на брендовые девайсы.

Пожалуй, споры о том, какая мобильная платформа лучше не утихнут никогда. Люди из года в год спорят, какая же мобильная платформа круче: iOS или Android, и какие только аргументы не выдвигают в сторону оппонента. Но что делать, когда хочется усидеть сразу на двух стульях и иметь смартфон в корпусе iPhone, но при этом с привычным Android на борту? Когда душа моддера и любителя красноглазия просто требует чего-то необычного!? Правильно, обратиться к китайским «подвалам» и взять себе дешевую реплику на андроиде! А в моём случае — ещё и Б/У утопленную подделку 14 Pro Max чуть больше, чем за «тыщу» рублей, так ещё и проапгрейдить её! Сегодня будет познавательный и интересный материал, в котором мы с вами: узнаем как диагностировать некоторые аппаратные проблемы с помощью минимального и дешевого оборудования, оживим наше «яблочко» после попадания влаги, «отреверсим» и пропатчим в IDA Pro загрузчик, дабы разрешить загрузку unsigned-ядер, портируем кастомное рекавери и накатим рут, а также узнаем что из себя представляет такой «айфон» в повседневной жизни и как мне вообще взбрело в голову купить китайскую подделку яблочной техники! Материал диковинный, но обещаю — будет интересно! Жду вас под катом :)
Читать дальше →
Total votes 92: ↑89 and ↓3+86
Comments54

Знакомство с TPM (доверенным вычислительным модулем)

Level of difficultyHard
Reading time9 min
Views12K
TPM (Trusted Platform Module) — это международный стандарт, обеспечивающий доверенную работу с вычислительными платформами в целом и предоставляющий ряд возможностей обеспечения безопасности в компьютерных системах, в частности: хеширование, шифрование, подписывание, генерацию случайных чисел и т.д.


Он был разработан консорциумом TCG (группа по доверенным вычислениям) и стандартизирован в 2009 году Международной организацией по стандартизации (ISO) и Международной электротехнической комиссией (IEC), получив номер ISO/IEC 11889:2009.
Читать дальше →
Total votes 37: ↑36 and ↓1+35
Comments12

Полигон для творчества за 1500 р. Ч1: Позовите Кряка

Level of difficultyHard
Reading time10 min
Views9.4K

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

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

Проведём расследование, поищем JTAG, узнаем способы и отследим разводку BGA, поработаем с ПЛИС, … и много других действительно интересных вещей. Кряк уже заинтересовался!

Как там у нас обычно? «Сломать, а потом читать инструкцию». Инструкций и документации нет, поэтому будем экспериментировать ломать! ☺
Читать дальше →
Total votes 65: ↑65 and ↓0+65
Comments8

«Поздравляем с терабитом». Та самая статья про DDoS-2023 — без цензуры

Level of difficultyMedium
Reading time9 min
Views30K

Дисклеймер ↓

Этот материал должен был выйти в декабре 2023, прямо перед Новым годом, — и это классический пример про «лучшее враг хорошего». Сначала нам не нравилось, что мало подробностей. Потом — что их излишне много. Была версия с цитатами, но без скринов. Со скринами, но без цитат. Мы записали столько интервью с сетевиками, что сами в них запутались.

Но в итоге сегодня наша статья наконец-то выходит в свет. Из цензуры — только внимательная рука корректора. Передаем слово Максу Яковлеву.
Читать дальше →
Total votes 106: ↑104 and ↓2+102
Comments46

SQL в качестве API

Level of difficultyHard
Reading time11 min
Views13K


SQL в API??? 

Верно, вы уже успели подумать: «это же безумие, предоставлять API, который принимает SQL». Да, это ужасная идея. Особенно, если API обращён к Интернету. Делать так небезопасно, вы напрашиваетесь на атаки в виде SQL-инъекций. Поддержка такого интерфейса превратится в кошмар, а сама реализация бэкенда будет замкнута на конкретную технологию (это будет какая-нибудь база данных ANSI SQL).

Но справедливо ли такое суждение? Время его пересмотреть!
Читать дальше →
Total votes 46: ↑43 and ↓3+40
Comments40

Как создавали Корсаров

Level of difficultyEasy
Reading time12 min
Views10K


«Твой двадцатый день рождения
отмечал я в Картахене;
двадцать душ зажёг как свечи
доброй порцией картечи!»


Андрей Корф, «Порт-Ройял».

Что вам приходит в голову, когда вы слышите про «русские видеоигры»? «Атомик Харт»? Смута? Онлайн залипалки «Вартандер» и «Мир кораблей» с танками? Множество локальных инди? Негусто… А давайте я вам расскажу про настоящую российскую игру ААА-класса, которая добилась мировой известности, была очень тепло встречена на родине и на Западе, получила множество продолжений разной степени удачности (отголоски этих продолжений выходят даже сейчас, спустя почти четверть века после релиза!), и зародила, по сути, отдельный жанр, став законодателем целого направления в мировом игростроении? Даже современные игры, вольно или невольно, сравнивают с ней. Ладно, вы всё равно прочитали название статьи, так что хватит нагнетать драму — дамы и господа, «Корсары: Проклятье дальних морей» («Sea dogs» по-заморскому) на страницах Хабра!
Читать дальше →
Total votes 58: ↑55 and ↓3+52
Comments19

Timeweb Cloud CLI. Часть 1: S3

Level of difficultyMedium
Reading time2 min
Views785


Салют! Не так давно компания Timeweb Cloud выпустила новую версию своего CLI (twc), который позволяет легко и удобно управлять всеми предоставляемыми ресурсами облачной платформы. В этой серии статей рассмотрим основные сценарии применения этого инструмента.

В данном материале речь пойдёт о работе с облачным объектным хранилищем S3 — это сервис для хранения любых данных в виде объектов, работа с которым осуществляется через программный интерфейс S3 API, в нём можно размещать любые типы статических данных.
Они будут храниться в одном месте и едином формате, и вы сможете в любой момент получать к ним доступ через API или графический интерфейс. Удобно размещать там, например, бэкапы, статические и медиа файлы, архивы, логи.
Читать дальше →
Total votes 16: ↑14 and ↓2+12
Comments0

Вперед в будущее: Wayland против X11

Level of difficultyMedium
Reading time38 min
Views28K

Доброго времени суток, дорогие читатели! Сегодня я затрону одну интересную тему — графические дисплейные сервера и протоколы в Linux. В этой статье я расскажу вам о архитектуре X11 и Wayland, историю их создания и наконец-то сделаем вывод: Иксы на мороз, или вейланд на помойку?


Еще в далеком 2016 году вышла Fedora 25 с окружением GNOME 3.22 на базе дисплейного сервера Wayland. А в RHEL 10 выкинут X11 на мороз. Релиз RHEL 10 намечен на 2025 год, CentOS Stream 10 — на 2024 год. Для обеспечения работы приложений, требующих X11, будет использоваться XWayland. Таким образом, в 2029 году (к моменту окончания первого этапа поддержки RHEL 9) стоит ожидать появление первого аппаратного обеспечения, не поддерживающего X11.


И как я думаю — будущее за Wayland. Но пока X11 является стандартом. Давайте разберем это!


Читать дальше →
Total votes 98: ↑91 and ↓7+84
Comments115

Инь-Ян консолидация для процедурной генерации границ

Level of difficultyMedium
Reading time6 min
Views1.1K
Способ процедурной генерации граничного перехода от одной среды к другой, которые заданы на какой-либо регулярной решетке точек в квадрате или равностороннем треугольнике. Допускает обобщение на произвольные фигуры, а также на любые тайловые покрытия.

yin yang consolidation, four mediums
Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments3

Практическое руководство по Rust. 2/4

Level of difficultyMedium
Reading time30 min
Views7K



Hello world!


Представляю вашему вниманию вторую часть практического руководства по Rust.



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


Руководство основано на Comprehensive Rust — руководстве по Rust от команды Android в Google и рассчитано на людей, которые уверенно владеют любым современным языком программирования. Еще раз: это руководство не рассчитано на тех, кто только начинает кодить 😉

Читать дальше →
Total votes 35: ↑32 and ↓3+29
Comments2

STM32. Процесс компиляции и сборки прошивки

Level of difficultyEasy
Reading time30 min
Views20K
Многие из начинающих разработчиков софта для микроконтроллеров реализуют свои проекты исключительно в средствах разработки, которые предоставляются производителем. Многое скрыто от пользователя и очень хорошо скрыто, из-за чего некоторые воспринимают эти процессы сродни настоящей магии. Я, в свою очередь, как человек в пытливым умом и природной любознательностью, решил попробовать собрать проект без использования IDE и различного рода автоматизаций.

Так родилась идея для этой статьи: не используя ничего, кроме текстового редактора и командной строки, собрать проект мигания светодиодом на отладочной плате STM32F0-Discovery. Поскольку я не до конца понимал, как происходит процесс компиляции и сборки проекта, мне пришлось восполнять пробелы в знаниях. Разобравшись с этим вопросом, я подумал — а почему бы не рассказать другим об этом?

Всем кому интересно — добро пожаловать под кат! 🙂

Читать дальше →
Total votes 124: ↑123 and ↓1+122
Comments67

Запускаем Steam игры в Proton c поддержкой Native Wayland

Level of difficultyMedium
Reading time17 min
Views7.6K

Proton Wayland


Иллюстрации к статье подготовлены нейросетью freepik.com.


В первой части нашей статьи, мы научились собирать Wine с поддержкой Wayland и запустили игру Overwatch 2. Но для большинства геймеров конечно же больший интерес представляет запуск игр Steam, и этот вопрос мы не пройдем стороной. Преимущество нашей сборки Proton будет ещё и в том, что она будет работать напрямую с системными библиотеками и оборудованием, когда обычный Proton и GE Proton Custom загружаются в виртуальном контейнере, подгружают свои библиотеки и драйвера. Тем самым мы получим чуть лучшую производительность и избавимся от еще одного ненужного слоя.


Если вас заинтересовала статья, то добро пожаловать под cut.

Читать дальше →
Total votes 30: ↑30 and ↓0+30
Comments12
1
23 ...

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity