Самую первую версию своей программы по физике я писал больше двадцати лет назад на Delphi с использованием OpenGL 1.1 (там еще был фиксированный конвейер и никаких шейдеров). Современную версию я написал на C# и немного C++ с использованием OpenGL 3.x и в некоторых особо сложных случаях Vulkan (например, там где нужно было реализовать алгоритмы ray- и path-tracing). Я продолжаю ее пилить и улучшать, но в свободное время еще занимаюсь портированием под MacOS - и тут для меня две совершенно новые ниши: это язык программирования Swift и графическая библиотека Metal (не смотря на то, что Mac все еще поддерживает OpenGL, фактически он заморожен и новые фичи Apple туда больше не завозит).
Просто хочу поделиться видео, где уже вполне рабочая и местами глючная программа - реализовал небольшую часть модулей, и я думаю это займет еще месяцы работы.
Наверняка, кто-нибудь задаст вопрос, использую ли я ИИ (потому что уже не раз задавали) и - естесственно да, глупо не использовать инструмент, который есть в наличии и помогает ускорить разработку. Я использую ChatGPT (подписку за двадцать евро в месяц) и Claude (подписку за двесте евро в месяц) - и в целом, они мне местами очень хорошо помогают, но местами творят откровенную дичь и нуждаются в постоянном контроле, что они там понаделали. А еще токены расчитанные на неделю выжирают за несколько дней - и приходится ждать до следующей недели, потому что я не готов заносить еще больше бабла.
В целом цель конкретно этой поделки - изучить Swift и Metal, а также пройти весь процесс публикации и продажи софта в App Store, как я это сделал в Steam в прошлом месяце.
Примерно идеально к кризису среднего возраста я прошел несколько болезненных перезагрузок. Старое убеждение «Я особенный, и у меня всё получится» ушло в прошлое. Я учился в парижской экспериментальной айти школе 42, прошел там стажировку в айти стартапе и понял, что вместо наемной работы хочу снова попробовать бизнес, но не связанный с производством физических продуктов (вьетнамские флешбеки бренда одежды до сих пор являются в кошмарах). Какой именно бизнес я долго не понимал: моего скудного опыта в бэкенде не хватило бы для разработки мобильного приложения, но ллм заполнили этот пробел.
Каким человеком я пришел к этому этапу? Мой трек превратил меня сначала из скромного и неуверенного нерда в гипер-уверенного альфа-фотографа с бесплатными деньгами, и подписчиками по всему миру, а затем в довольно невротичного и постоянно саморефликсирующего ипохондрика: одной из моих базовых черт сейчас является перманентный анализ того, какие действия и решения в жизни привели к этому или тому, какие поведенческие паттерны следует культивировать, является ли мое текущее поведение рациональным или импульсивным, как я могу позитивно манипулировать своим состоянием и предсказывать свое поведение, настраивая среду заранее и закладывая триггеры-стартеры нужных поведенческих петель для себя будущего, и как я могу предвидеть, а то и избежать свои малоэнергетичные или депрессивные состояния. Я обожаю вести Гугл таблицы с кучей метрик и так однажды я пришел к идее своего первого приложения.
Дело в том что более 10 лет я пользовался айфонами которые показывали мне батарею без цифровой индикации. Я никогда не обращал на это особого внимания и заряжал интуитивно, если батерейка становилась желтой или красной, как, наверно и почти все нормальные люди. Когда мне подарили новый айфон в 2025 году я при его настройке случайно нажал на отображение цифр. К тому времени я уже перестал с гордостью чувствовать себя производителем контента и начал признавать, что алгоритмы рекомендаций инстаграмма, да и ютуба, довольно часто нагибают меня уже как безвольного потребителя контента, на часы забирая мое внимание, без какого-либо осознавания с моей стороны, и меня все больше это напрягало. При этом я не мог просто удалить инстаграм - огромная часть активностей и переписок все еще были в нем (ютуб я удалил и стал заходить через браузер, довольно успешно миновав его шортсы, да и он благородно предлагает вообще выключить рекомендации, стерев историю). Но каждый, раз когда я пытался зайти в него для ответа на сообщение, я попадал на страницу рекомендаций и дальше, как собака Павлова, начинал пересылать рилсы друзьям.
Так вот, когда я выставил цифры заряда на свое обозрение, я стал осознавать те огромные провалы в батарее, которые я насиживаю такими сессиями скроллинга. Тут же возникла идея построить график на день, а затем и на 2 с моим реальным расходом батареи. Несколько недель или месяцев я забивал себе Гугл табличку и любовался своим графиком: довольно быстро и интуитивно пришла идея не заряжать телефон по 2 дня (на столько батареи хватало с лихвой при рассудительном пользовании) и это мне очень нравилось. Мое экранное время поползло вниз и физически не могло превысить 3,5 часов в день - иначе я бы не доживал до вечера второго дня на одном заряде (для сравнения до этого я насиживал по 6-7 часов). Качество тоже поменялось - 3 часа экранного времени скролинга коротких видео жрет батареи намного больше чем 3 часа чтения сообщений, проверки сайтов итд. Более того, пересечение референсной кривой давало мне сигнал о злоупотреблении телефоном в моменте.
график из гугл табличики
Я сразу представил себе такое приложение - виджет с графиком расхода батареи, растянутым на 42-часовой челенж без дополнительных зарядок. Он бы сообщал мне, когда я пересекаю « идеальную линию » и постоянно напоминал о текущем « потреблении » телефона, а я в свою очередь не мог бы игнорировать физическое ограничение заряда, как я игнорирую блокировки приложений одной кнопкой « добавить 15 минут ».
Здесь все звезды сошлись: в школе мне пора было начинать последнюю стажу для диплома, в жизни хотелось создать что-то полезное для людей, а ллм дошли до уровня, когда с моей экспертизой разработка даже на новом языке оказалась вполне реальной. Я решил попробовать и написал приятелю, который был опытным iOS разработчиком, чтобы примерно узнать, как вообще выглядит процесс создания и публикации приложения для айфона. Приятель, на встрече услышав мою идею, сразу сказал мне: « Давай делать вместе », и я не долго думая согласился - это бы сняло с меня огромную часть непонятных задач и помогло сфокусироваться на изучении проблемы, рынка, маркетинге и тд.
Я снова загорелся. Приятель буквально за день накидал простенький виджет с графиком, отображающим расход заряда за 42 часа. Тут же выяснилось, что на 12м айфоне приятеля нет никаких шансов прожить 2 дня без заряда - было решено добавить 18ч челенж (1 день с утра до ночи). График был ломанным и квантовался кратно 5%, но я был в восторге - это ведь был результат работы за день. Параллельно я подался на проект в школе, описав проблему и показав планы и наработки.
результат 1 дня работы приятеля - прототип виджета
Меня быстро остудило - спустя 2 недели ожидания школа ответила, что это не заявка, а детские фантазии, и что нужно для начала хоть как-то валидировать идею о том, что людям важна эта проблема, и что текущие решения ее не закрывают. Параллельно приятель, который начал за здравие, перестал вообще что-либо делать по коду и объявил мне о том что он приверженец философии чила, дедлайны не признает, а кодить хочет по настроению. Глядя на 0 коммитов за неделю и тот же самый график, что и в первый день, спустя месяц я понял, что как бы тяжело ни было мне все изучать с нуля и делать самому, суммарный риск от продолжения такого сотрудничества при моем далеко не чиловом отношении к проекту будет абсолютно точно означать конфликт. Мы решили разойтись. Приятель без обидняков скинул мне 600 строк кода, а я стал думать, где мне взять мак в Париже не по цене почки. Параллельно я спамил везде опросником для первичной валидации моей идеи.
В какой-то момент я пришел к решению покупать б/ушный мак мини в Париже, но так как свои мысли, происшествия и скуление/бомбеж я часто транслировал в своем микро-телеграм канале, оставшимся со времен фото-карьеры, я выложил возмущенный пост о том, что в Москве новый мини м4 стоит дешевле чем в Париже б/у м2. В комментариях под этим постом один из подписчиков сообщил мне, что готов отправить свой личный макании м4 для поддержки разработки моего приложения. Я сначала даже не поверил. Дальше был месяц поиска путей отправки. К этому времени в опросе приняло участие 130 человек и я смог показать актуальность проблемы для половины респондентов. Почти все указывали на неспособность существующих решений решить их вопрос с бесконтрольным скроллингом по разным причинам. С результатами этого опроса мне дали добро на начало школьного проекта.
Наконец в начале апреля я получил макмини и впервые в жизни открыл Xcode. Но кодинг оказался самой легкой из жопных болей, ожидавших меня далее с:
Сейчас я пытаюсь пройти путь публикации своего приложения в App Store, и для этого, очевидно, нужен Apple Developer аккаунт. Казалось бы, что тут сложного. Заплатил, подождал, получил доступ и пошел заливать приложение. Но в моем случае все это превратилось в квест длиной почти в 3 месяца.
Ура.
Изначально я хотел оформить всё на свой старый основной Apple аккаунт. Но там с самого начала всё пошло как-то криво. Кнопка Enroll в приложении Developer была просто неактивна, и меня отправляло проходить регистрацию через сайт. Окей, думаю, не проблема.
Карты для оплаты зарубежных сервисов у меня есть, они рабочие, проверки проходили. Но дальше начиналась какая-то мистика. После ввода реквизитов не происходило вообще ничего. Ни письма, ни списания, ни внятного статуса. Просто пустота.
Я несколько раз пробовал заново. Писал в поддержку. Ждал. Потом снова пробовал. Потом снова писал. И так по кругу. В итоге почти два месяца я периодически возвращался к этой теме и каждый раз упирался в одну и ту же стену.
Потом, как это обычно бывает, начитался форумов, советов, комментариев и решил, что, может быть, проблема в регионе аккаунта. Попробовал другой аккаунт, другой регион. Но и это тоже ничего не дало. Оплата просто не проходила.
Что в итоге сработало.
Я создал новый российский Apple аккаунт. И вот тут внезапно случилось чудо. Кнопка Enroll в приложении Developer оказалась активной. Оплата участия в программе разработчика спокойно прошла со счета мобильного телефона. Уже на этом этапе я, честно говоря, подумал, что всё, наконец-то победа.
Но нет.
После оплаты аккаунт не активировался. Ни через сутки, ни через двое. Я завел тикет в поддержку, но он просто повис без ответа. В итоге прошло 6 дней, и, судя по ощущениям, я мог бы ждать еще столько же.
На английском, максимально просто, объяснил ситуацию. Сказал, что оплатил тогда-то, аккаунт такой-то, активации нет. И буквально через несколько минут аккаунт активировали. Без долгих разговоров, без цирка, без “пришлите еще 12 документов”.
Так что совет очень простой. Если оплатили и активации нет, не надо неделями сидеть и надеяться. Запрашивайте звонок. Именно звонок, а не только email. И лучше сразу на английском.
Сейчас аккаунт уже активен, у меня появился доступ к App Store Connect, я начал разбираться со всей этой кухней, но, разумеется, на этом приключения не закончились.
Вылез следующий вопрос. У меня не появился Paid Apps Agreement. А без него, насколько я понял по документации и по тому, что пишут, нормально двигаться в сторону платных приложений, подписок и встроенных покупок уже не получится. Этот вопрос я тоже отдельно отправил в поддержку и сейчас жду, что ответят.
И вот здесь начинается уже следующая головная боль.
Я изначально хотел не просто выложить приложение, а еще и понять, как его нормально монетизировать. Но если Paid Apps Agreement недоступен, то схема с платными функциями, подписками и всем остальным становится очень мутной. Плюс сейчас ходят новости, что с 1 апреля может пропасть пополнение Apple ID через счет мобильного телефона. Насколько это реально окажется правдой, скоро увидим. Но в любом случае ситуация не самая приятная.
Отдельный вывод, который я для себя уже сделал. Внешние платежки в iOS — это не история в стиле прикрутить платежку внешнюю и всё. Там все сильно сложнее, и просто так делать свою оплату внутри обычного приложения, насколько я понимаю, нельзя.
Зачем мне вообще всё это.
Я делаю приложение для учета расходов в поездках. Смысл очень простой. Быстро записывать траты, понимать, сколько уже потрачено, сколько осталось, хватит ли бюджета до конца поездки и не сидеть вечером вдвоем вспоминая, кто и где оставил последние деньги.
1/5
Приложение позволяет в одну строку так же как в боте заносить ваши траты, а так же сразу учитывает курсы валют, категории и прочее.
Пока приложение еще не доведено до релиза и не выкачено в App Store, я тестирую саму механику через Telegram-бота. Он уже рабочий и самое главное, содержит в целом все основные механики, пусть и не в такой красивой обертке. Если кому то интересно попробовать механики и как это работает то вот ссылка: https://t.me/travmon_bot
Как только закончу бета тест приложения и сервиса, обязательно напишу статью о том, как прошел процесс модерации приложения, где я накосячил и как исправлял, что стало по итогу с монетизацией приложения и прочие подводные камни. Тема узкая, но я столкнулся с тем, что либо рекламные статьи, либо покупка аккаунта либо ещё какая то очень серая фигня.
ну и если у кого-то был похожий опыт с Apple Developer, особенно с Paid Apps Agreement, напишите в комментариях пожалуйста. Интересно понять, это у меня частный случай или уже стабильная история для наших аккаунтов.
Наткнулся на шикарное приложение, в котором можно изучать сразу пять языков программирования в одном месте. Если хотите стать уверенным профи в Python, Rust, Swift, Kotlin или JavaScript — очень рекомендую. Заодно подтянете сопутствующие технологии, фреймворки и библиотеки.
1/3
Что крутого внутри:
Собраны абсолютно все важнейшие концепции, правила, стили программирования и нужные инструменты.
Целых пять языков на борту — отличный шанс протестировать разный стек, выбрать свое направление и найти работу мечты.
Внутри лежат курсы по Git, Docker, базам данных и алгоритмам. Это база, которая делает из вас настоящего инженера с крепким фундаментом, а не кодера-однодневку.
Весь материал грамотно разбит по уровням сложности. После каждой главы идут контрольные вопросы и десятки практических задач. Авторы разбирают концепции на конкретных примерах и разжевывают всё буквально до последней строчки кода.
Доступно на Windows, macOS, iOS и Android. Учиться можно в дороге, на обеде или даже в отпуске, не прерывая прогресс.
Забрать инструмент и начать путь к званию гуру кодинга можно по этой ссылке. Пользуйтесь!
Председатель КНР Си Цзиньпин призвал китайское правительство к работе над тем, чтобы юань получил статус мировой резервной валюты.
Си отметил, что Китаю необходимо создать «могущественную валюту», которая могла бы активно использоваться в международной торговле и на финансовых рынках. Это позволит во многом диверсифицировать мировую экономику и сделать санкционную политику «отдельных стран мира» как минимум малоэффективной.
Китайский лидер также заявил, что для достижения этой цели необходим «сильный центральный банк», способный эффективно управлять кредитно-денежной политикой. Кроме того, Си Цзиньпин отметил важность развития конкурентоспособных финансовых институтов, которые могли бы привлекать глобальные инвестиции и оказывать влияние на мировые финансовые рынки.
В связи с поставленной китайским чиновникам задачей по, так сказать, увеличению удельного веса юаня в мировой торговле, нелишним будет обратиться к статистике. Если в 2012 году китайский юань с трудом пробивался в 20-ку мировых валют по объёмам использования в системе SWIFT, то к 2025 году юань уже входил в топ-6 таких валют. В глобальной торговле (в том числе и в системах, не связанных со SWIFT) доля китайской валюты составляет около 10%. На первом месте продолжает оставаться американский доллар с показателем примерно 38-40%.
Ограничением на использование юаня в мировой торговле является на данный момент то, что через эту валюту проходят сделки с участием самого Китая, в отличие, например, от всё того же доллара США. То есть, для превращения своей валюты в реального конкурента доллару Пекину нужно расширить перечень сделок, которые могли бы совершаться в юанях. А для этого КНР придётся сделать юань привлекательным платёжным средством в системе мировой торговли.
Kenbak-1 не имел ни экрана, ни клавиатуры, ни даже микропроцессора (в современном понимании), но это не помешало ему войти в историю, как первый персональный компьютер.
В статье я расскажу о том, как создал уникальный iOS‑эмулятор Kenbak-1, что послужило мотивацией к этому, о деталях реализации, и почему это устройство поможет вам понять фундаментальные принципы работы современной вычислительной техники.
Оригинальный Kenbak-1
Джон Бланкенбейкер со своим творением
В 1971 году инженер Джон Бланкенбейкер создал и выпустил компьютер Kenbak‑1 — устройство, которое сегодня признают первым персональным компьютером в истории.
Цель создания была образовательной: Бланкенбейкер хотел показать, как работают вычислительные машины, и дать людям возможность познакомиться с основами вычислительной техники. Он стремился сделать компьютер не для крупных организаций, а для индивидуального использования ‑ чтобы с ним мог работать один человек без специальной подготовки.
Всего выпустили около 40 — 50 экземпляров по цене 750 долларов за штуку. В масштабах индустрии это очень мало, и коммерческого прорыва не случилось — массового спроса тогда ещё не существовало.
Тем не менее идея «компьютера для одного человека» оказалась пророческой: Kenbak‑1 вдохновил последующие поколения изобретателей и стал предтечей любительских ПК 1970‑х и 1980‑х годов (таких как Altair 8800 и Apple I).
Если есть желание узнать больше об оригинальном Kenbak-1 — на Хабре есть прекрасная статья, которой я вдохновлялся. Советую почитать!
Как возникла идея эмулятора
Сколько себя помню, мне всегда были интересны компьютеры, технологии и IT индустрия в целом. Уже в сознательном возрасте у меня появилась тяга к разным ретро‑девайсам. Хоть я и не застал золотой эпохи (мой первый компьютер был пресловутый Pentium на Windows XP), меня невероятно вдохновляет та особая атмосфера 70–80-х годов, в которой были разработаны и воплощены в жизнь многие легендарные технологии и устройства. Внешний вид, функциональность, инженерные и дизайнерские решения — это был настоящий расцвет вычислительной техники и персональных компьютеров в частности.
Вечерами я засматривал до дыр ролики на YouTube с обзорами старых компьютеров: Commodore 64, Psion 5mx, ZX Spectrum. Я никогда не держал их в руках, но ясно чувствовал: эти творения стоят на вершине инженерного искусства.
Однажды в одном из таких видео мне попался Altair 8800 — устройство, необычное для моего восприятия. Сознание привыкло, что компьютер — это клавиатура и экран (пусть и в виде подключаемого телевизора), а здесь были только переключатели и светодиоды. Как это программировать?!
Altair 8800 - микрокомпьютер, разработанный компанией MITS
Внешняя эстетика Altair 8800 (красивее для меня разве что PDP-11/70) заставила меня углубиться в его устройство и принципы работы. Я нашёл цикл видео о том, как он функционирует и как на нём программировать, затем отыскал онлайн‑эмулятор и попробовал писать программы машинным кодом. Это стало для меня открытием нового мира.
Вскоре я осознал, что пользоваться онлайн‑эмулятором удобно лишь дома. А мне хотелось изучать программирование машинными кодами в пути — в метро, в перерывах на работе, иметь быстрый и лёгкий доступ к компьютеру на ходу. Так родилась идея найти эмулятор для iOS. К сожалению, подходящего приложения не оказалось — и я решил создать его сам.
Но когда я начал разбираться с внутренним устройством Altair 8800 и оценил будущий объём работы, стало ясно: задача слишком масштабна для меня. Тогда я стал искать альтернативы.
И тут я наткнулся на Kenbak‑1. Изучив информацию о нём, я понял: по сути он очень похож на Altair 8800 — те же органы управления и вывода данных, программирование машинным кодом, — но при этом значительно проще в реализации. Его минимализм стал решающим фактором. Решение было принято: я начал разработку iOS‑эмулятора Kenbak‑1.
Устройство эмулятора
Технические моменты:
язык программирования — Swift
среда разработки — XCode 16
реализация UI — SwiftUI + UIKit, использование CADisplayLink для синхронизации обновления состояния панели с обновлением экрана смартфона (для снижения энергопотребления)
реализация процессора — полная эмуляция всех инструкций процессора в соответствии с документацией по оригинальному Kenbak-1
тестирование — написан тестовый модуль, покрывающий все инструкции процессора
Главный экран
Главный экран приложения — адаптированная передняя панель Kenbak-1
В своих проектах я редко заранее прорабатываю пользовательский интерфейс. Действую, обычно, по наитию, создавая UI на ходу, на свой вкус.
В виду особенностей экрана смартфона пришлось разместить группы кнопок в два ряда, а не в один, как в оригинале.
В верхней части реализован информационный бар: текущее значение светодиодной панели в разных системах счисления, выбранный регистр (на Kenbak-1 их всего 9), выбранная инструкция процессора, а также текущее значение регистра PC.
Набор регистров Kenbak-1
В целом, набор кнопок и подписи к ним соответствуют оригинальной панели компьютера, но имеются и дополнительные 4 кнопки, которые существенно улучшают опыт взаимодействия с эмулятором.
Экран Program
Экран Program с возможностью сохранения и выгрузки программ
На экране «Program» есть возможность сохранять и выгружать из памяти ранее написанные программы. Хранятся они в UserDefaults в виде полного дампа памяти. Благо объём одного дампа небольшой — всего 256 байт, поэтому чтение/запись мгновенные.
Также реализовано горячее сохранение текущей программы, чтобы пользователь не потерял свои наработки, если случайно выгрузит приложение. При следующем входе программа будет в том же состоянии.
Если возникнет желание обновить уже сохраненную программу — это можно сделать введя то же имя при сохранении — приложение попросить вас подтвердить намерение и обновит дамп памяти.
В целом реализация этого модуля не содержит каких‑то особых решений.
Экран Memory Dump
Полный дамп памяти компьютера
На экране «Memory Dump» можно увидеть полный дамп памяти компьютера. В каждой ячейке данные отображаются в восьмеричной и десятеричной системах счисления. Есть возможность пошагово выполнять программу, чтобы следить как меняются данные.
Нижний бар показывает текущую исполняемую инструкцию и её операнд. Можно нажать на любую ячейку и просмотреть информацию для нее. Очень удобно дебажить программу и находить ошибки.
Модель памяти реализована в приложении довольно просто:
Экран Settings
Экран настроек эмулятора
На экране настроек есть возможность изменить скорость работы процессора. В оригинальном Kenbak-1 скорость была около 480 инструкций в секунду.
Можно как понизить скорость до 1, так и повысить до 1000 инструкции в секунду. Это позволяет наглядно наблюдать работу процессора во время выполнения программы, что несет большой образовательный момент.
Реализация нужной частоты процессора достигается за счёт использования функции usleep с нужным параметром задержки:
Также я добавил выключатель, который позволяет блокировать кнопки на панели управления во время выполнения программы, чтобы случайно не испортить данные в памяти.
Экран Info
На экране информации есть описание приложения и набор оригинальной документации
Чтобы не искать и не хранить информацию о Kenbak-1 я включил в состав приложения набор оригинальной документации по компьютеру от самого Джона Бланкенбейкера.
Это три документа в формате PDF, которые можно открыть прямо из приложения:
Инструкция к оригинальному Kenbak-1 c объёмной теорией по программированию
Инструкция по работе с процессором Kenbak-1 и программированию машинными кодами
Набор лабораторных упражнений с Kenbak-1, которые можно попробовать выполнить самому
Я думаю, это одно из удачных решений, которое делает этот эмулятор прекрасным инструментом для изучения программирования машинными кодами. Простота архитектуры компьютера и полнейший набор документации дают богатую почву для экспериментов.
Экран Select command
На экране выбора командны можно настроить нужную команду
Пожалуй, самой удобной фичей приложения можно считать экран «Select command». Хоть в Kenbak-1 и не большой набор инструкций запомнить их все в виде машинных кодов будет сложно, а каждый раз возвращаться к табличке из документации не удобно.
Таблица построения машинного кода для инструкции
Реализованный селектор команд позволяет очень быстро настроить требуемую инструкцию процессора и внести её в память. Это значительно ускоряет набор программ и даёт сосредоточиться на логике и алгоритмах.
Структура команды:
Что получилось?
Эмулятор Kenbak‑1 — это не просто цифровой артефакт из истории IT, а увлекательный инструмент для гиков и любознательных пользователей, которые хотят заглянуть в истоки вычислительной техники. Приложение переносит в 1971 год — к самому началу эпохи персональных компьютеров. Здесь нет современных абстракций: только чистая логика, биты и байты, переключатели и мигающие светодиоды.
Работа с эмулятором превращается в интеллектуальный вызов: вы программируете через виртуальные переключатели, считываете результат по индикаторам и шаг за шагом постигаете, как на самом деле устроены компьютеры. Такой формат — мощный тренажёр для алгоритмического мышления: он учит чётко выстраивать последовательности, отслеживать промежуточные состояния вычислений и отлаживать логику без привычных инструментов.
При этом обучение удобно и доступно: можно экспериментировать с машинным кодом где угодно — в дороге, на перерыве, дома. Вы можете в любой момент запустить приложение, проверить гипотезу или написать простейшую программу.
А ещё это подлинно гиковский опыт: ощущение тактильности (пусть и виртуальной), радость от запуска первой программы на «железной» логике и чувство связи с пионерами IT. Простота Kenbak‑1 вдохновляет: она наглядно показывает, что даже с минимальными ресурсами можно создать полноценную вычислительную систему. Такой взгляд на прошлое помогает иначе увидеть настоящее — и найти идеи для собственных проектов.
Планы на развитие
Последняя версия была выпущена пол года назад. Я реализовал тот функционал, который был интересен и полезен именно мне.
За это время я не заметил интереса к приложению и не получал никакой обратной связи. Но несколько идей у меня есть:
Добавить перевод машинного кода в ассемблер для Kenbak-1 для более лёгкого восприятия
Реализовать некий интерфейс расширения (работу с WiFi, консоль и тп)
Возможность делиться файлом программы с другими пользователями
Добавить вшитый список интересных программ для изучения
Если вам этот эмулятор покажется интересным и у вас будут идеи — пишите в комментарии — может, я продолжу его развивать.
Зключение
Для меня ретро‑девайсы больше, чем просто интересные вещи — это символ эпохи, когда люди изобретали и воплощали в жизнь самые смелые инженерные и дизайнерские идеи. Это то, что навсегда останется в истории и будет греть душу таким гикам, как я. Я сделал этот эмулятор для себя и вложил в него много сил и кусочек своей души. И было бы очень здорово, если среди вас есть такие же любители девайсов из прошлого, как я. Если да — обязательно попробуйте узнать этот компьютер поближе.
Если вам захочется скачать и попробовать этот эмулятор вот ссылка в AppStore. Приложение полностью бесплатное. Есть возможность запуска на iPadOS и MacOS (но наиболее удачно интерфейс выглядит на iOS).
Африканский банк Standard Bank внедряет китайскую систему CIPS. Платежи больше не нужно осуществлять в долларах. США теряют влияние.
Китайский юань может постепенно вытеснить американский доллар.
США отсутствовали на саммите G20 в Южной Африке и теряют влияние в Африке. Китай, напротив, расширяет свои экономические связи на континенте. Теперь южноафриканский Standard Bank, крупнейший финансовый институт Африки по размеру активов, внедрил значительное нововведение, которое может кардинально изменить мировую торговлю.
Банк стал первым африканским институтом, который напрямую подключился к китайской системе межбанковских платежей (CIPS). CIPS является китайским аналогом базирующейся в Бельгии, но контролируемой США системы SWIFT, которая основана на доминировании доллара и позволяет Соединённым Штатам вводить финансовые санкции против государств, учреждений и частных лиц. Интеграция CIPS в африканский финансовый рынок позволяет африканским компаниям осуществлять платежи китайским поставщикам в китайской валюте жэньминьби (RMB). Больше нет необходимости проводить все транзакции через доллар.
Торговля между Китаем и Африкой растёт
Как сообщает кенийское медиа-портал Weetracker, для многих африканских компаний, особенно в импортозависимых отраслях, участие в китайской платёжной системе представляет альтернативную возможность финансирования, которая сулит меньше препятствий и более прямой доступ для африканского бизнеса.
Торговый оборот Африки с Китаем значительно вырос. В этой ситуации проведение расчётов в юанях является целесообразным. Согласно данным Standard Bank Trade Barometer за 2024 год, 34 процента африканских компаний импортируют из Китая по сравнению с 23 процентами в предыдущем году. В первые пять месяцев 2025 года объём торговли между Китаем и Африкой достиг 134 миллиардов долларов США, что на 12,4 процента больше, чем в предыдущем году. На Китай приходится 16 процентов африканского импорта и около 20 процентов африканского экспорта.
Однако платёжная система, обслуживающая эту торговлю, долгое время страдает от нехватки долларов. Недостаток долларовой ликвидности, дорогостоящие корреспондентские банковские связи и колебания валютных курсов регулярно замедляют трансграничные расчёты. Система CIPS устраняет эти препятствия. Платежи теперь осуществляются в режиме реального времени или почти в реальном времени, что сокращает задержки и позволяет компаниям более надёжно планировать ликвидность.
Дедолларизация обеспечивает защиту от геополитической напряжённости
Внедрение системы CIPS банком Standard Bank было официально отмечено церемонией в Южноафриканском резервном банке в Претории с участием высокопоставленных должностных лиц обеих стран, а также представителей Народного банка Китая.
В начале года Standard Bank получила лицензию CIPS на форуме Луцзяцзуй в Шанхае. Присоединившись к CIPS, Standard Bank предоставляет африканским компаниям прямой доступ к китайской финансовой системе. Кросcбордерные платежи в юанях более не требуют промежуточной валюты. Это снижает издержки, уменьшает операционные риски и позволяет избежать задержек, связанных с валютным контролем. Для таких отраслей, как строительство, обрабатывающая промышленность, розничная торговля и автомобильная промышленность, эта модернизация может привести к ускорению циклов закупок и повышению конкурентоспособности.
В то же время данный механизм защищает обе страны и их компании от геополитических конфликтов. «Дипломатическая напряжённость между ЮАР и США предоставила Китаю возможность расширить своё влияние с помощью практичных и ценных для африканского бизнеса инструментов», — отмечается в медиаотчёте. Благодаря прямому проведению расчётов в жэньминьби Китай предлагает альтернативную платёжную инфраструктуру, которую Африка будет использовать в ближайшее десятилетие.
«Банк подтверждает, что CIPS теперь доступен на его цифровых платформах на 21 африканском рынке», — говорится далее. «Ожидается, что за ним последуют другие финансовые институты. Это может приблизить Африку к многополярной платёжной системе, где доллар, хотя и сохранит свою важность, перестанет быть единственным платёжным средством».
МОСКВА, 19 ноября. /ТАСС/. Российские видеохостинги полностью придут на замену YouTube в среднесрочной перспективе. Об этом заявил первый зампред комитета Госдумы по информполитике Антон Горелкин в интервью в рамках медиафорума Международного клуба народного единства на площадке ТАСС.
"YouTube в свое время, в 2010-х годах, пришел на наш рынок и занял доминирующее монопольное положение на рынке видеохостингов. Сегодня мы пытаемся исправить эту ситуацию, мы развиваем свои аналоги и уверены, что в среднесрочной перспективе мы полностью заменим YouTube, который, к сожалению, стал оружием пропаганды. Его очень активно используют западные страны в информационной войне", - сказал он в интервью американскому журналисту, экс-сотруднику ЦРУ и Госдепартамента Ларри Джонсону.
По словам Горелкина, информационный компонент является одним из важнейших в любом военном конфликте, но цифровой суверенитет могут позволить себе ограниченное число стран.
"Суверенитет и цифровой суверенитет - это очень дорогое удовольствие, требующее не только инвестиций, но и людей. Это большая работа", - добавил он.
Депутат уточнил, что понимание необходимости развивать российские цифровые платформы пришло в 2014 года, когда против России были введены первые санкции и возникла угроза отключения России от системы SWIFT.
В марте 2022 года YouTube отключил для россиян возможность оформления подписки Premium. После начала СВО YouTube приостановил монетизацию для авторов контента из РФ, Google также отключил контекстную рекламу для жителей России в поисковике и видеохостинге.
Ранее Горелкин отмечал, что лидером на внутреннем рынке будет тот сервис, который лучше анализирует поисковые запросы и создает наиболее эффективные механизмы стимулирования авторов.