Show newer

@phill “it’s not much but it’s honest work”

My job?

I restart Xcode and Clean Builder Folder for a living.

: Stop using AppStorage directly. It’s prone to typos, value mismatches and more.

Instead give yourself strongly typed keys and associated defaults, à la EnvironmentValues.

I’ve published my implementation as a package, but you can just as easily wrap AppStorage yourself with a few dozen lines.

github.com/notsobigcompany/Big

The whole thing made me paranoid; how could I have been compromised in such a catastrophic way?

Turns out (perhaps unsurprisingly) the weakest link in the chain was human. A fake ID was used inside a branch to gain access to my accounts. Additional checks that were supposed to be carried out, weren’t.

The bank issued the fraudsters with a new card and PIN number. And that was it. They had everything they needed.

Show thread

This time last year I had a life-changing amount of money stolen.

There was no obvious scam. I hadn’t sent any payments. It was just gone.

The police weren’t helpful and the bank did nothing but gaslight me the entire time.

Today the Financial Ombudsman found the bank at fault and have ordered everything to be paid back + compensation.

I cannot begin to express the relief I’m feeling after such an awful year.

Lots of happy crying this morning 🥲

Had a few people ask how you might go from a scrolling grid to a PageView, à la Photos app.

Using matchedGeometry will get you most of the way there, then it’s just a few little extras to keep both views in sync.

I’ve added some new sample code in the project to show how:

github.com/notsobigcompany/Big

Show thread

There is something incredibly cathartic about running your own Mastodon instance and being able to block an entire instance in a single click.

A thousand ‘free-speech extremists’ screaming into the void.

Show thread

This will likely be a sentiment shared by many of you already, but I still feel compelled to say it each time I see fresh nonsense:

Leave 👏 trans 👏 people 👏 alone 👏

This is the first of many packages from Big Mail and Big News that I’ll be open sourcing over the coming weeks.

It’s also my first time open sourcing anything this big, so feedback whilst I get the hang of things is appreciated!

Show thread

Certain styles such as .scroll and .historyStack bridge directly to UIPageViewController and NSViewController respectively, so you get all those great native behaviours.

But you can also adopt PageViewStyle to create completely custom transitions, like the 3D deck of cards in Messages.

Checkout the docs to see how:

opensource.notsobig.company/do

Show thread

New SwiftUI package drop!

📦📖 BigUIPaging

PageView is a flexible container for creating paged interfaces.

Unlike TabView:
- Pages can be decided 'in flight’, ideal for large datasets
- Works across iOS and macOS
- Handles complicated view hierarchies more consistently
- Allows for totally custom styles and interactions

Also included is PageIndicator with support for the new iOS 17 progress timer.

github.com/notsobigcompany/Big

The Creator was excellent and easily one of the most exciting sci-fi movies I’ve seen in a long time.

It felt like James Cameron and Spielberg made a film together. I can’t stop thinking about it.

Go see it in the cinema if you can!

And look, Apple's frameworks have always had bugs. Many of us lived through UISearchDisplayController 💀

But there are two differences:

1. UIKit/AppKit's API surface is much larger. There are just more knobs and dials to turn when things aren't working. Abstracting complexity comes with a cost.

2. The frequency and severity of issues. It would be unimaginable if UINavigationController was left broken for several cycles, but that's exactly what's happened: mastodon.notsobig.co/@phill/11

Show thread

Airbnb's recent article highlighted something I think about a lot:

"While Swift and its surrounding foundation have been open sourced, SwiftUI’s implementation remains a black box. If SwiftUI were open sourced, we could better understand the framework and debug more effectively.”

I don't think Apple will ever do it, but boy that would go a long way in fixing many of the issues SwiftUI has today.

(The whole article is great read, btw)

medium.com/airbnb-engineering/

Show thread

No doubt you can ship amazing things with SwiftUI. I see many great examples of it.

But I also see many examples of developers pulling their hair out trying to understand why their app isn't behaving as expected.

Things that once worked now don't because of an OS update. Or some modifier begins interacting with something in an unexpected way. Or something isn't clearly documented.

Show thread

Here's a prime example of what developers mean when they question "is SwiftUI ready for production?”

A simple menu. Left iOS 16.4. Right iOS 17.0.

One works. One fails. Same code.

I love SwiftUI, but it's this kind of thing that make me lose confidence in it.

gist.github.com/phillipcaudell

Show older
The Not So Big Company

The home of The Not So Big Company on Mastodon.