Khan Winter
@khanwinter
Computer Engineer, UMN24. WWDC2020 Scholar. Building OpenBudget and @codeedit.app. Blog at . Software Engineer @ PepsiCo. Obsessed with distributed systems in Swift, and text editors.
Best part of making iOS apps rn is making blobby glassy UI like this Everything goes sproiioing and feels right at home and with the glass looks so good. Adding some extra here, with the button morphing physically as it’s dragged, and the menu expanding out of the same button shape. So fun!!!!
Related, good drag and drop UX is super important to me so getting dragging these folders and categories down perfect has been a huge goal of this rewrite It always bugged me how bad the old version was when it came to this. Tons of flashes, glitches, reloads, and jumping around. Now it’s so smooth
Really nailing down the grouped categories navigation on the larger iPad screen. Navigating via the sidebar means the detail nav has to be managed more closely. Really happy with how this is working now. Also keyboard navigation ofc
We lived! 44km paddled in three nights, about two miles of portages, and ZERO fish. Gonna have more pics later
This is the only content I want an AI image generator to make for me @apple.com
Four out of the top Six education apps on the Mac App Store are obvious ChatGPT or Claude ripoffs right now.
Okay last demo cause I’m really proud of this. Here’s importing 8 RAW photos with only a brief moment before the images are compressed, viewable, and interactive. I presume most users will be using this for photos of like, receipts, so this may be way overengineered 😅😭
Also fun tidbit with this is that I was able to implement fast, lossless, compression for all images by default (lzfse). Images stored here are usually a chunk smaller than Apple’s photos app. Swift made this fun. I’ve got a library now for creating async streams of in/deflate file data.
I pigeonholed way too hard on images the last week but I’m finally calling it after this and moving on. Got EXIF, GPS, and TIFF metadata importing with images. If you snap a pic of a receipt at a store, OpenBudget will remember it and (eventually) let you search and view by location!
So called ‘free thinkers’ when the monthly siren tests happen in Minneapolis
More OpenBudget iPad work. Added the sidebar, and made some design adjustments when the home screen is acting as a sidebar (glass bg, tighter spacing). Also added a maximum width on all modals and keyboard support for the widebar. Feeling _really_ good about this. UIKit is so nice to work with.
System interop is so important, especially with Drag and Drop in the iOS ecosystem. Makes for really nice interactions like this, where it should feel to a user like they're just moving around their photos, not having to 'copy' or 'import' them into another app.
I need to write the next OpenBudget dev log, but I’ve made some crazy progress recently. Very happy with this transaction flow. Things I think are nicely spaced, and as I’ve tested it out irl it works very well. Big part of this update is metadata. Showing off here is notes, images, and locations
My absolute favorite Xcode debugging tool is the memory graph view. It's sometimes nice to just poke around in here. Ofc it's also so incredibly useful for debugging memory leaks and retain cycles.
A sad end to the Wolves playoff run, but what a fun season. Had season tickets in seats 6 and 7, gonna miss it
Found a force try crash in a new iOS 26 API! 🤩 Why would an enumerator crash instead of returning `nil`? Who knows!