Михаил Рубанов (@akaDuality) header
Михаил Рубанов (@akaDuality) profile picture

iOS Lead at Jazari. Разбираюсь в интерфейсе, автотестах и доступности айфона. Написал книгу «Про доступность iOS». Купил сто клавиатур, пишу на одной

Buenos Aires, Argentina
Joined January 2013
Photo by Михаил Рубанов (@akaDuality)Photo by Михаил Рубанов (@akaDuality)Photo by Михаил Рубанов (@akaDuality)Photo by Михаил Рубанов (@akaDuality)Photo by Михаил Рубанов (@akaDuality)Photo by Михаил Рубанов (@akaDuality)Photo by Михаил Рубанов (@akaDuality)Photo by Михаил Рубанов (@akaDuality)Photo by Михаил Рубанов (@akaDuality)Photo by Михаил Рубанов (@akaDuality)
Выпустил свою новую книгу — про тестирование! Разбираемся как сделать фидбек-луп для агентов, что ключевое нужно от архитектуры, какие инструменты для этого понадобятся. В итоге в книге расскажу как тестировать быстро целыми сценариями без UI-тестов
My new book is out: Testing on iOS. It's about testing in the AI era: how to build a feedback loop that lets AI agents write code you can actually trust. 🧵👇
1
2
9
596
Михаил Рубанов retweeted
1. Как и обещал, лакшери-тред про 8 DGX Spark в одном шкафу: терабайт unified memory, полная GLM-5.3 локально. Начинал с шести, потом на слухах, что их продажу прекратят, докупил ещё два. И это было верное решение.
47
37
6
664
46,684
Михаил Рубанов retweeted
Big news today from Apple: Keynote is getting an open, JSON-based file format (.keyx), plus a Python library to create Keynote files on any platform. Pages, Numbers and Keynote files today are closed and hard to modify unless you use AppleScript (limited and old) or Shortcuts (a huge pain), so you can’t really use AI to make documents in those formats. This was a HUGE pain inside Apple as well as outside, and most tools worked around it by making a PowerPoint file and importing it into Keynote, which wasn’t perfect. Creator Studio subscribers on the Mac also get MCP support in Keynote, Pages and Numbers, so you can bring your own AI agent to read, edit and automate all three. Both the new format and MCP support arrive in November. Bringing an AI-friendly format to Keynote (and I assume Pages and Numbers soon after) is a big positive change.
Huge day for Creator Studio today. Our new in-app assistants can help you get things done in record time. MCP allows you to bring your own agent if you want. And an open source format for Keynote (and Python library!) so you can create Keynote documents programmatically on any platform. Super proud of the team. Hope you love it!
25
59
16
966
63,819
Михаил Рубанов retweeted
В соцсетях набрала популярность веб-игра 1in8b.life — это симулятор, в котором можно прожить жизнь случайного человека с нашей планеты. В ней нужно следить за судьбой ребёнка с первой минуты его жизни до смерти. Обычно события происходят фоново, но иногда игра просит принять ключевые решения. Сначала это ситуации в духе «Пообщаться ли с мальчиком, который сидит в углу класса один» или «Выбери имя для щенка», но затем нужно будет выбрать работу, партнёра и так далее. Геймплей адаптируется под особенности и традиции страны, в которой живёт персонаж. Например, мне попалась китаянка из глубокой деревни, которая работала на складе, а потом влюбилась в медбрата, переехала в Ухань, родила, бросила работу, но он стал бить её, а затем одумался, и они прожили много лет счастливо, но она начала изменять со своей первой любовью в 60 лет, победила рак, но умерла от диабета Из нюансов: авторы заморочились над реалистичностью, поэтому с большой вероятностью твой персонаж родится в Индии или Нигерии. Вот одна из историй, которую создала эта игра: 《В игре у игрока была 16-летняя дочь. А в той стране, где он родился, в 16 лет девушек обычно уже выдают замуж. Родственники и старейшины городка постоянно давили на неё, требуя выйти замуж. Игрок решил сопротивляться этому давлению. Даже несмотря на то, что из-за этого его отношения с окружающими испортились, он настоял на том, чтобы дочь продолжила учёбу и поступила в университет. А когда виртуальная жизнь игрока подошла к концу, на его похоронах дочь сказала: «Папа всегда был на нашей стороне». Ох, появляется такое чувство, будто даже в игре ты нашёл человека, которого хочешь защищать. Конечно, помимо таких трогательных моментов, там полно и самых драматичных историй. Например, игрок ни разу не подавал на развод, но из-за смерти супругов женился целых 5 раз — сам игрок говорил, что ситуация такая, что хоть в полицию звони》
160
386
837
5,685
2,614,492
ГТА 6 пройдем, а дальше видно будет
1
10
362
Сын в 7 лет одновременно читает Гарри Поттера, смотрит Наруто и играет в God of War
2
3
343
Интересно смотреть на Кратоса и через призму отцовства и когда играет сын, обсуждая сюжет с позиции ребенка
106
Михаил Рубанов retweeted
SimSlim just crossed 2,000 GitHub stars! Huge thanks to everyone who contributed, reported issues, tested changes, and helped make it much better than the thing I originally released. github.com/MobAI-App/simslim
2
19
1
234
25,987
Михаил Рубанов retweeted
This is insane try.cloudflare.com
80
131
48
1,855
702,001
Подтверждаю
invertir en gordas ahora con el ozempic es como comprar bitcoin en el 2009
1
12
1,287
Михаил Рубанов retweeted
iPhone Duo app ideas: 1. ebook on right, map or illustrations on left
134
363
114
9,339
928,294
Михаил Рубанов retweeted
if you don't update your app, this is what it looks like on iPhone Duo 😬
122
270
195
5,666
1,216,391
Михаил Рубанов retweeted
screenmap.dev now supports android! Screenmap is a tool that runs in your CI and captures your entire navigation flow and how each screen changes – ship PRs with confidence.
21
72
3
803
85,453
Михаил Рубанов retweeted
You've probably heard by now that SwiftUI has a fancy @‌State macro that lazily creates state, fixing a longstanding issue in the framework. But what you may not know is that the laziness only kicks in for **private** state. Get all the details here: pointfree.co/episodes/ep378-…
15
43
19
313
139,491
Михаил Рубанов retweeted
Replying to @akaDuality
@akaDuality's book is now in English. There's never enough content out there about accessibility. More people writing and sharing their experience is always a win. Free chapters are up, go have a read. If you like what you see, consider supporting him by picking up the book.
Book: About Accessibility in iOS! I’m writing the most important book about accessibility for mobile developers and designers. 8 years of experience in one place.
1
3
540
Михаил Рубанов retweeted
Made a Figma plugin that makes it easy to annotate designs for VoiceOver. I've had dozens of companies ask me for a tool like this, so here it is. figma.com/community/plugin/1…
1
2
2
212
Михаил Рубанов retweeted
Claude Code on desktop now works with the iOS simulator. Build and run your iOS app, and the simulator opens in a panel right next to your conversation. Available today in public beta.
762
2,265
990
34,027
3,802,907
Книжка по Metal запустилась так круто, что мы решили поддержать запуск дополнительными туториалами по шейдерам!
As a bonus for the Metal book, we decided to publish tutorials explaining how popular shaders work — from simple to complex, with images and videos. The tutorials are available as a gift for everyone who bought the book or with a bookshelf.dev subscription
2
20
3,322
Например, можно узнать как работает легендарная заморозка в Riveo nitter.cf/bookshelfdev/status/20…
Replying to @bookshelfdev
It’s a combination of textures: - a normal map for highlights - a height map for melting - a Voronoi diagram to create uneven freezing from the screen edge - And then everything runs in reverse, so the ice melts under your finger. Stunning! bookshelf.dev/metal-tutorial…
1
3
424
или разобраться как делать голографию nitter.cf/bookshelfdev/status/20…
Replying to @bookshelfdev
Intermediate — Holographic Sticker This week’s free tutorial. Benjamin Pisano created a simple and beautiful Sticker library: github.com/bpisano/Sticker The effect turned out to be surprisingly rich, and it’s a great example of how shader work is built step by step
1
283