Наш человек допиливает BOINC под Windows
Наш человек допиливает BOINC под Windows
Речь про Ауфара (ник: AufarZakiev: За последние недели он отправил три PR в клиент BOINC и ещё один большой висит открытым – всё про Windows‑клиент.
Ставьте like, star, follow;)
Что именно сделал
🛠️ Починил зависание при отключении WSL
Когда на Windows сначала стоял WSL (часто вместе с Docker), а потом его отключали, BOINC мог намертво зависать. PR Fix deadlock on WSL removal after installing Docker (#6663) заставляет клиента спокойно игнорировать отсутствие WSL и работать дальше, вместо того чтобы падать в драму.
🛠️ Сделал BOINC‑сервис умнее в отношении WSL
WSL‑детект лезет в HKEY_CURRENT_USER, а у Windows‑сервиса этого профиля просто нет. В PR Skip WSL discovery and fix logging for BOINC running as service (#6720) BOINC в сервисном режиме перестаёт пытаться искать WSL и больше не засоряет логи странными сообщениями про «нет дистрибутивов». Клиент стал стабильнее и чище в логах.
🛠️ Подчистил UX в Simple View
В Simple View можно менять скины, но меню при этом раньше не обновлялось – подписи и пункты жили своей жизнью. PR Menu items sync on skin change (#6657) просто пересоздаёт меню при смене скина. Никакого оверинжиниринга, только нормальное поведение UI.
🛠️ В процессе – тёмная тема для Windows‑клиента
Открытый draft‑PR Add Dark Mode support for Windows (#6666 – зацените номер пулл реквеста!):
– обновляет версию wxWidgets;
– подхватывает системную тему Windows;
– аккуратно перекрашивает графики, прогресс‑бары и список уведомлений под тёмный режим;
– временно обходится без глючного IsDark() на Win 11 и читает настройки из реестра. PR ещё обсуждается, но по скринам уже выглядит как нормальный современный клиент.
GitHub
Уже закрытые PR:
Work in progress:
Один человек из нашего коммьюнити за пару недель делает BOINC под Windows чуть менее «олдскульным артефактом» и чуть более живым приложением.
Для тех, кто тоже хочет оставить свой след в BOINC, алгоритм очень простой:
– открыть вики Contributing code to BOINC:
– выбрать issue в
– написать в комментарии, что планируется сделать и в какие сроки;
– собрать, протестировать, отправить PR по их гайдлайну; мейнтейнеры ревьюят и, если всё ок, мёрджат.
Начинать необязательно с глубоких C++‑потрохов: в BOINC хватает задач по UI/UX, логике клиента, локали и документации. Главное – взяться за что‑то конкретное и довести до PR, как это сделал Aufar.
P.S. Я там тоже немного PR покидал успешно, но то были мелочи. Скорее чистка перышек, а не реальные изменения.
Действительно
ENIGMA AI v.2.1.3 — ИИ помощник для IT-собеседований. Подсказывает ответы в реалтайме, невидим при шаринге экрана → enigmai.ru. Подстрахуй себя на собеседовании.
Крис Соейр Человек который смог сделать Игру на ассемблере
Пока игровые коррпорации раздувают штаты до тысяч человек Я расскажу вам про историю про одного человека который в одиночку создал великие игры используя Ассемблер и Имя ему Крис Соейр. Ранние годы и путь к мастерству
Крис родился в Шотландии в 1967 году с Детства он проявлял сильный интерес к компьютерам и программированию Он начал писать свои программы на языке BASIC пряма на витрине одного из местных магазина так как собственного компьютера Крис не имел Но эта страсть переросла в простые скрипты накопив деньги Крис купил себе Camputers Lynx на котором он уже программировал на машинном коде ( ассемблер) В 1983 году когда Крису было 22 года он получил степень в области компьютерных наук и микропроцессорных систем в Университете Старклайда в Глазко.
его профессиональный труд от портов до магнатов
Его карьера началась сразу после окончания Университета в 1983 году с написания игр на Z80 Машинных кодах для старых компьютеров С 1988 По 1993 год он занимался портами игр с Аmiga и других систем MS-DOS работая над такими проектами как Elite Plus Набравшись опыта он решился создать свою собственную игру Так в 1994 году на свет появилась игра под названиям Transport Tycoon который стал хитом Но его главное творение было впереди
Шедевр из чистого кремния: RollerCoaster Tycoon
Когда все в конце 90-х начали переходить на удобный С++ Крис пошел против течения и решил создать 2 игру полностью на ассемблере и так он и сделал 99% кода RollerCoaster Tycoon были написаны вручную на ассемблере Почему это магия ? 1 в игре Невероятный КПД Игра обсчитывает тысячи посетителей, сотни аттракционов и физику горок. И всё это летало на слабом железе 90-х без единого лага, потому что каждый байт кода был на счету 2 Оптимизация Весь этот огромный мир умещался на пару дискет никакого мусора 3 Надежность из за того что вся игра была написана на Х86 ассемблере она запустится на любом Х86 совместимом компьютером и она не требует костылей .
Продолжение и триумф: RCT 2
В 2002 году на свет выходит продолжение его 2 игры RollerCoaster Tycoon 2 И здесь Крис Соейр снова показал характер и вместо того чтобы перейти на 3D -движок он снова решил создать продолжение полностью на ассемблере но он не стал с нуля писать игру Он взял свой оригинал и расширил его возможности до невероятных масштабов Больше Аттракционов сложнее сценарии и всё та же стабильность которая была в 1 части Игра работала настолько идеально что фанаты досих пор считают её эталоном жанра игр Tycoon
Заключение
История Криса Соейра это не просто рассказ о успешном программисте это манифест Одинокого гения В мире где корпоррации ежегодно выпускают сырые продукты весом в сотни гигабайт Крис доказал что один человек знающий железо и язык Ассемблера может создать нечто вечное.





Скриншоты Игры RollerCoaster Tycoon
Нормально ли презирать и гнобить фрилансеров в современном мире? Почему я сталкиваюсь с таким отношением?!
Раньше я работал инженером-программистом ВСЕГО ЛИШЬ ЗА 60 000 РУБЛЕЙ В МЕСЯЦ с таким вот кругом тупых обязанностей:
- Заправить картридж, прочистить коротрон, подключить сетевой принтер, разобраться с зажёванной бумагой...
- Разместить новость на сайте/в группе ВК, исправить цвет кнопки, слегка подшаманить со стилем, разобрать письма в ящике эл. почты по папкам...
- Помочь сотруднику установить то или иное программное обеспечение, подключиться к базе 1С, переустановить ОС, заменить плашку ОЗУ, разобраться с автозагрузкой ненужных программ, установить Яндекс.Браузер и LibreOffice (у нас была гос. компания)...
- Разгрузить грузовик с орг. техникой, бумагой, стеллажами для серверной, разобраться с порядком расположения складских объектов...
- Перенести системный блок, монитор, иные элементы АРМ с этажа на этаж и из кабинета в кабинет...
- Отформатировать по ГОСТу документ Word, заполнить таблицу Excel...
Естественно, со временем мне это надоело (шарящих ребят надо повышать и обеспечивать их бонусами, чтобы они не разбегались), и я прямо заявил начальнику, что увольняюсь. Недолго думая, он уволил меня одним днём.
Сказал так: "Я вместо тебя другого студента-эникея найду!" (А МНЕ 30 - Я ДАЛЕКО НЕ СТУДЕНТ!).
Я пошёл в сферу фриланса, а именно - выполнение студенческих работ. У меня неплохо получилось: за месяц я заработал 180к. А именно, за январь этого года. Очень хорошо мне помогли нейронные сети: Gemini 3 Pro и ChatGPT 5.2 Thinking. Это, если что, не "халява", а автоматизация и прогресс.
При этом в комментариях я сталкиваюсь с такими вот недалёкими индивидами:
По всей видимости, данный товарищ выступает против искусственного интеллекта да и прогресса в целом. Он смотрит на мир зашоренным взором... для него дико всё новое и современное - он бы хотел жить в каменном веке. Ему невдомёк, что общество развивается, а вместе с ним - и способы заработка хлебушка и стаканчика вина на жизнь...
Таким людям надо только мордой тыкнуть в реальность:
- Да, Вася создаёт удалённо сайты и зарабатывает 300к.
- Да, Маша занимается дизайном и получает 150к.
- Да, Света разрабатывает инженерные проекты дома и имеет 400к с каждого проекта.
- ДА, ПЕТЯ ВЫПОЛНЯЕТ СТУДЕНЧЕСКИЕ РАБОТЫ И ЖИВЁТ С ДОСТОЙНЫМ ДОХОДОМ!
Вот когда мы все научимся признавать очевидные вещи, мир станет чуточку лучше.)
Ответ на пост «Почему старые консоли,были гениальными?»2
Украду немного хлеба у @SkaldOfRagnarok,
Ребят, вы когда-нибудь задумывались, почему современное оружие на киловаттах электроэнергии и тоннах бензина умудряется, промахиваться, а старые мечи, топоры или клевцы работали как часы? Ответ простой: воинам того времени приходилось буквально «хакать» железо, чтобы выжать из него хоть что-то.
И вот как это работало.
Война «на голом железе»
Главный прикол старого оружия в том, что там не было затворов, спусковых крючков, кнопок. Вообще. Когда вы брали в руки секиру, то можно было сразу начинать рубить головы. Это был абсолютный доступ к железу. Никаких пультов управления, никакого «линукса» на фоне и никаких посредников — только ты и секира. Это давало невероятную скорость и отклик.
Магия прерываний и длинное копьё
Знаете, как уничтожали рыцарей, когда одни бьют копьями быстрее, чем другие ? Чтобы провернуть это со слабыми воинами, полководцы использовали прерывания.
Они ловили момент, когда рыцари доходили до определенной кочки, и в эту микросекунду командовали всем колоть пиками. Это была резня в реальном времени! Нужно было рассчитать команду так, чтобы пикинёры успели ударить, пока рыцари летят вскачь. Ошибся на один такт — и построение снесли.
Как впихнуть невпихуемое
Памяти у того же крестьянина-ополченца было всего ничего. Для сравнения: один сюжет Игры Престолов в вашей голове сейчас весит больше. Чтобы битва выглядела круто, приходилось:
Повторять одни и те же команды по сто раз.
Орать так, что звук превращался в чистый звериный рёв.
Писать приказы значками , потому что букв солдаты не знали.
В чем же гениальность?
В том, что это была честная война. Раньше ты управлял каждым топорником. Сейчас между полководцем и бойцами стоят сотни «командиров», из-за чего войны стали долгими и кровавыми. Старая война на 10000 человек проходила идеально, а современная на 3 миллиона человек требует бомбёжек городов и мясных штурмов
Старые войны — это пример того, что можно сделать, если ты реально понимаешь, как работают твои бойцы. Это была эпоха вождей, которые не боялись лезть в самый центр сражения.
Почему старые консоли,были гениальными?2
Ребят, вы когда-нибудь задумывались, почему современные игры на гигабайтах оперативки умудряются тормозить, а на старой Сеге или Денди всё летало? Ответ простой: программистам того времени приходилось буквально «хакать» железо, чтобы выжать из него хоть что-то.
И вот как это работало.
Игра «на голом железе»
Главный прикол старых консолей в том, что там не было операционной системы. Вообще. Когда вы вставляли картридж, процессор сразу начинал читать код прямо из него. Это был абсолютный доступ к железу. Никаких драйверов, никакой «винды» на фоне и никаких посредников — только ты и процессор. Это давало невероятную скорость и отклик.
Магия прерываний и лучевая трубка
Знаете, как делали эффекты, когда задний план двигается медленнее земли (параллакс)? Чтобы провернуть это на слабом железе, программисты использовали прерывания.
Они ловили момент, когда электронный луч старого телевизора доходил до определенной строки, и в эту микросекунду меняли настройки видеоконтроллера. Это был хакинг в реальном времени! Нужно было рассчитать код так, чтобы процессор успел всё поменять, пока луч летит обратно. Ошибся на один такт — и картинка поплыла.
Как впихнуть невпихуемое
Оперативной памяти в той же Сеге было всего 64 Кб. Для сравнения: одна иконка на вашем рабочем столе сейчас весит больше. Чтобы игра выглядела круто, приходилось:
Использовать одни и те же кусочки графики по сто раз.
Сжимать звук так, что он превращался в чистый математический алгоритм.
Писать на Ассемблере, потому что каждый байт был на счету.
В чем же гениальность?
В том, что это было честное программирование. Раньше ты управлял каждым битом. Сейчас между программистом и железом стоят сотни слоев «абстракций», из-за чего софт стал тяжелым и неповоротливым. Старая игра на 512 Кб работает идеально, а современная на 50 Гб требует патчей первого дня и мощного видео.
Ретро-консоли — это пример того, что можно сделать, если ты реально понимаешь, как работает твой процессор. Это была эпоха инженеров, которые не боялись лезть в самый центр системы.










