Profile avatar
ancientbuho.bsky.social
Apple platforms dev, BG3 modding, my dog, photography etc. Working on #BenkyoBox https://www.autorelease.io/benkyobox/. Other places to find me and things I work on at https://linktr.ee/juanarzola.
124 posts 493 followers 312 following
Prolific Poster
Conversation Starter

Hello from Titan. Hope everyone is doing ok. If anything, have this dose of cuteness for a little smile today. #4panel #comic #webcomic #adventureswithtitan

A little over a month ago i started the beta of #BenkyoBox, so I wrote a short summary of how it has evolved so far: www.autorelease.io/benkyobox/bl.... getting close hopefully (🤞)

i've been conditioned that most AsyncStream emit until cancelled, so whenever I find one that just emits a current state, then ends, I get really confused. (I get it's an API decision of the author, but I wish there was a common convention/pattern)

Now in the next #BenkyoBox beta build: if you are overwhelmed with too many things to study, you can hide them! This'll be the first "advanced studies" feature when it releases, but for beta you can just use it. #edtech

removing default values for function arguments has helped me find more bugs than I'd want to admit

A slight visual upgrade amidst all the bug fixing. I finally smoothed out all the hard shadows in the light mode app icon, which were bothering me a lot. #BenkyoBox

Playing a high Int character in the next #dnd campaign, so now I have to fill my brain with lore :)

GeometryReader doc en.m.wikipedia.org/wiki/Observe... #SwiftUI

"review and delete iMessage attachments" as you scroll through hundreds of memories to free up storage in order to do a software update must be one of the cruelest iOS user experiences.

NSURLProtocol is one of my favorite APIs because it helps hide thumbnail generation complexities behind URLs loaded by #SwiftUI's AsyncImage / anything using the URL loading subsystem. Now if the cards happen to have drawings, all UI updates to support them, including rendering it in dark mode.

The unified Mastodon/Bluesky client thingy I made now allows you to add your own accounts. Still barely-functional, but now slightly less barely than before! github.com/mattmassicot...

Quick preview on the next feature I am working on for #BenkyoBox: sketching on questions and/or answers. This got me familiar with how to migrate #SwiftData models, thankfully working well in my internal builds. There's still some loose ends, like dark mode, but hopefully out soon!

working on scary SwiftData migration code on beta cause I don't want to do it for the first time in an AppStore build

Doing hourly comics today (or attempting to) for the 1st time. Going to try posting them as they go here and maybe the full batch elsewhere later. First hour is pretty routine and TBH a really nice way to start every morning. 🥰 #hourlycomic #hourlycomicday #hourlycomicday2025 #comicart

fun chaos time for a good cause

Studying cards in #BenkyoBox from the list is nice: you can long press to see the answer and score yourself - or swipe if you don't even need to see it. I also added "move" as a swipe option. This is available in the latest beta 2030 (downloadable at www.autorelease.io/benkyobox/). #edtech

Next #BenkyoBox build (2028) improves Calendar events showing more info of the cards and matching "upcoming" blue color with the progress bar's upcoming color. Also new: swipe actions to start and resetting studies directly in Library. I'll proceed to add more of these options to lists #iosapps

First time playing Delta-Green https://www.delta-green.com/ - it was fun and easy to learn but oh so chaotic with its percent based system (crits and failures are both common). It's insanity system made it feel like a horror movie too.

Surprising how many #SwiftUI features that not play well with context menu previews developer.apple.com/documentatio... - Can't use @SceneStorage in any view in it - Can't use userActivity modifiers We are left with having to create copies of complex views that only differ in not having these things

Another day, another #SwiftUI "ViewModifier" that stopped working because I added the same one to a parent that I hoped was independent, but overrides the children instead (`filePicker`). I again wish that viewModifier nesting behavior were more predictable (why can I nest sheets but not pickers)

Here's a glossary for Swift concurrency. I've been asked about this a few times, and I finally sat down to do it. www.massicotte.org/concurrency-...

Per your feedback, in the next beta #BenkyoBox will notify for cards that haven't been studied yet within your study hours. You can control how often in settings (previously it would only notify you when the cards get unblocked per the spaced repetition algorithm) #iosdev thanks for the feedback!

I used to offer weekly Office Hours, but between health issues, personal commitments, and going indie, I found myself at a loss for time. I finally have more space in my life, and would like to once again volunteer time to help people in tech. No charge, no catch, whatever you need — sign up today!

Bluesky feature request: moar characters (i am old school and like paragraphs)

State restoration is easy, just use SceneStorage. SceneStorage, I present to you, "modals”: “Attempt to present <Foo> on <Bar> (from <Baz>) whose view is not in the window hierarchy.” back to hackery. #swiftui

I am vulnerable to #TitanPom’s charisma attacks ❤️‍🩹

Demo data and import management view should be in the next #BenkyoBox beta. Currently working on an import performance bug (It's currently cropping/rotating a lot of images because I haven't baked in the annotation crops)

Ah, implement some initial sample data. I already support importing data, this should be simple. Ugh, import looks ugly without progress, let me add a progress view. Oh wait I kind of want to cancel. What if you want to resume cancelled imports. Oh I should use it in all types of imports.

web design is my passion. exhibit 1: notepadexe dot com

Reason it’s a bad idea to reinstall SwiftUI views on theme change (like by using the color scheme as part of a view identity): it happens when the app backgrounds, apparently for screenshotting, which can result in surprising side effects (like bogus view appearances when the app backgrounds)

I love SwiftUI but it's always refreshing to go back to UIKit and just make a damn alert show up in the function that wants it.

Ah post beta ticketxplotion feels unexpectedly good #BenkyoBox