Dzianis Fileyeu

@still_fil
15 Followers
85 Following
23 Posts
Coward

It's hard to measure the amount of time we put into the release of SQLiteData 1.0. We've been working on this since April, with hundreds of hours of development, hundreds of hours of debugging.

https://github.com/pointfreeco/sqlite-data/pulls?q=is%3Apr++label%3Acloudkit

Yesterday, I had a realization about boilerplate code.

It seems like there are certain tasks (writing a compiler, writing a graphics pipeline) which involve rewriting a lot of code that is very well understood. So why can't this just go into a library? Why does it take a thousand lines of code just to get a triangle on the screen, or to write a basic bidirectional elaborator?

It is because the *surface area of customization* is very large, and it's far easier to customize code that you have written than it is to expose exactly the right options in a library. There are just so many choices to make, and all of them make sense in *some* scenarios, that it doesn't make sense to abstract. The user of an abstraction library would need to effectively give the library as much information as it would take to simply write it yourself.

An abstraction layer is going to have to make some strong assumptions about what you want.

For instance, you could use a game engine, or you could use Racket and avoid writing a parser at all. But these aren't exposing the underlying API in a concise way, they are writing lots of algorithms that use the underlying API in particular patterns, patterns which you may or may not want.

So I think I've gotten over my aversion towards boilerplate. I now think of boilerplate not as "a tax I have to pay in order to do something I care about" and rather as "a visual representation of the space of decisions I can make about the thing I'm working on." Which is cool!

Viva la boilerplate!

It’s finally here: SQLiteData 1.0: a fast, lightweight replacement for SwiftData with full CloudKit support.
https://www.pointfree.co/blog/posts/184-sqlitedata-1-0-an-alternative-to-swiftdata-with-cloudkit-sync-and-sharing
SQLiteData 1.0: An alternative to SwiftData with CloudKit sync and sharing

Announcing SQLiteData 1.0: A fast, lightweight alternative to SwiftData with full support for CloudKit synchronization and data sharing.

I took a moment to update my Swift Concurrency glossary. Refined some commentary, added more links, and updated things for 6.2.

https://www.massicotte.org/concurrency-glossary

A Swift Concurrency Glossary

It would be nice if there was a single place to go to look up all the terms, keywords, and annotations related to Swift concurrency. So here it is. If you notice something I’ve missed, pleased o let me know. Oh and of course, I included some commentary.

massicotte.org

🎉 Excited to announce the release of my new iOS game!

Discover a new way to play with music in 16 Tones! Tap colorful rectangles—each plays a tone. Your challenge: move the rectangles so that higher-pitched tones are placed higher up. It’s easy to pick up, relaxing to play, and perfect for training your musical ear.

Try it now on the App Store: https://apps.apple.com/us/app/16-tones-ear-training-grids/id6746161344

#IndieDev #iOSDev #IndieGame #MadeWithSwift #SwiftUI #IndieApps #MobileGame #PuzzleGame #NewRelease

Oof, I just heard that my cousin, aunt, and grandmother (on the side of the family I haven't talked to in years) lives in Altadena right where the Eaton fire is. They've evacuated and now just have to wait and see what they'll return to.
After a long hiatus, Part 11 is about Domain Specific (Embedded) Languages and #SwiftLang Result Builders. See how to build type-safe declarative DSLs, with a distinct flavor of expression templates. https://www.douggregor.net/posts/swift-for-cxx-practitioners-dsls/
Swift for C++ Practitioners, Part 11: Domain-Specific (Embedded) Languages with Result Builders | Doug's Compiler Corner

Swift for C++ Practitioners, Part 11: Domain-Specific (Embedded) Languages

Doug's Compiler Corner
Boost this toot if you're planning on sticking around Mastodon & the Fediverse whether or not it's more popular than Bluesky.

Top 10 Tips for Developers Like #Google Who Create Their Own Silly Custom Share Sheet on iOS:

1. Don’t
2. Just don’t
3. Stop snooping into these (and most) aspects of user behavior
4. Give us the system share sheet back
5. Re-read steps 1-4

#iOS #ShareSheet #JustDont