Would you like to go on a journey this morning? A musical guitar journey? ๐ธ๐คMy friendโs band just dropped their instrumental prog rock album!
https://aneuteredfruit.bandcamp.com/album/we-dont-get-out-much
Would you like to go on a journey this morning? A musical guitar journey? ๐ธ๐คMy friendโs band just dropped their instrumental prog rock album!
https://aneuteredfruit.bandcamp.com/album/we-dont-get-out-much
#iosdev #buildInPublic #coredata #swiftTesting
Random thoughts for future development:
Object identity is not straightforward.
If I change a collection name on device A, the change should propagate to device B.
Should two collections with the same name on different devices but with different members be merged? I think the principle of least surprise would argue that they should.
OTOH, two tunes with the same name but different melodies should be distinct (common in #irishmusic)
29/n
If you need a break from holiday music, this new collection of contemporary Irish instrumental guitar pieces is great - very restorative as background music!
#guitar #FolkMusic #IrishMusic #CelticMusic
https://tompkinssquare.bandcamp.com/album/imaginational-anthem-vol-xiv-ireland
Irish & Celtic Music Podcast by @celtfather: Celtic Christmas Carols & Songs #739 #IrishMusic #CelticMusic
https://celticmusicpodcast.com/celtic-christmas-carols-songs-739
Iโve been listening to the album Curlewโs Cry by Northern Irish musician Barry Kerr and I like it so much.
I was introduced to it by the podcast Folk On Foot, which has been running a series of interviews with musicians nominated for the (UK) Folk Album of the Year. The other nominees are great, but this particularly appeals to me. It features one of my favourite things - bird song and sounds from the natural world incorporated into music!
If you like melancholy folk music, beautifully sung, I highly recommend this. Hereโs the title track.
Full Gig review up on the channel.
Check out what I thought of my time with Ash here:
https://youtu.be/5f3JoL1sot8?si=giEEWgRmxf_eoGGT
#indiedev #irishmusic #iosdev #buildInPublic #coredata #cloudKit
As an aside - I've learned a lot about CoreData and CloudKit from @fatbobman's blog.
#indiedev #irishmusic #iosdev #buildInPublic #coredata #cloudKit
Apple has improved their migration support since I last looked - migrating to the data model outlined above would work as a staged migration:
- add the new entities and any attributes needed to define ordering or deduplication
- populate the intermediate attributed relationships
- delete the old entities
https://developer.apple.com/documentation/coredata/staged-migrations
Now we can safely move from NSPersistentContainer to a NSPersistentCloudKitContainer
8/n
#indiedev #irishmusic #iosdev #buildInPublic #coredata #cloudKit
Now we've sketched out a workable data model that works in both coreData and CloudKit, we need to work out:
- how to migrate from the existing model to the new one without losing data.
- how to handle merging databases from different devices given that the user might have duplicate entries or collections with different members or different ordering
7/n
#indiedev #irishmusic #iosdev #buildInPublic #coredata #cloudKit
diagrams of where we are so farโฆ
6/n
#indiedev #irishmusic #iosdev #buildInPublic #coredata #cloudKit
The second case is a little more complex. Collections can contain Tunes and TuneSets. By default, they are time-ordered when users add to their contents. Users can also reorder them, and I've had requests (not yet implemented) for alphabetical and most-recent first ordering.
A superclass (Searchable) inherited by both TuneSet and Tune allows for containment of both in a Collection.
5/n
#indiedev #irishmusic #iosdev #buildInPublic #coredata #cloudKit
Tune to TuneSet is a many:many relationship ordered by the tunesโ play order. Functionally, the user can add Tunes to TuneSets and re-order or remove them. We must convert the many:many relationship to an intermediate object with an ordering attribute that we can use when we retrieve a TuneSet. We will have to be able to manipulate the ordering attribute to let the user drag Tunes to re-order them in the UI.
4/n
#indiedev #irishmusic #iosdev #buildInPublic #coredata
To zoom in a bit on the problem at hand: #cloudKit is the obvious choice for sync between devices. Apple's documentation would have you believe that all you need to do is change your NSPersistentContainer to a NSPersistentCloudKitContainer and all will be well!
Not so fast.
First of all, the coredata and cloudkit data models have to be compatible. In this case, we find the dreaded OrderedRelationship in two places.
3/n
#indiedev #irishmusic #iosdev #buildInPublic
The app started as objective-C using an in-memory data model persisted to Apple plists. I added #coredata classes soon after. Currently the data model has 4 major domain classes mirrored by core data classes, and some additional classes for convenience.
I've converted the majority of the code to Swift. I've kept all rendering and editing logic (display, audio, export etc) in Swift, using core data only for persistence and search. 2/n
I've had apps on the iOS App Store since 2009, both #indiedev and as jobs. The Craic (https://apps.apple.com/app/the-craic/id586009292) is an app for finding #irishmusic tunes written in abc notation (https://abcnotation.com), displaying them as standard music notation and organizing them as tune sets and collections.
Since V 1.0 in 2012 a lot has changed in the #iosdev world. Any new app has to support cloud syncing between clients. I'm going to try a #buildInPublic experiment to make me actually get to it. 1/n
This morning's #workout #music is from Madra Salach from #Dublin - they remind me much of Neutral Milk Hotel. New to me and highly recommended.
https://youtu.be/WzdsYgj8P04
#IrishMusic #Folk #ChamberPop #KettleBells
๐ฎ ๐ฌ ๐ฎ ๐ฑ
๐ถ๐ป ๐ด๐ฟ๐ฒ๐ฎ๐
๐๐ฟ๐ถ๐๐ต ๐ฎ๐น๐ฏ๐๐บ๐
THE DIVINE COMEDY
THE MURDER CAPITAL
SPRINTS
JUST MUSTARD
ADRIAN CROWLEY
FOR THOSE I LOVE
ASH
MARIA SOMERVILLE
KEAN KAVANAGH
POOR CREATURE
M(H)AOL
BRICKNASTY
SODA BLONDE
Lullahush
pรดt-pot
THE WOOD BURNING SAVAGES
THE WATERBOYS
#irishmasto #irishmastodon #music #bestof2025 #irishalbums #irishmusic
Adore โ Sweet Keith (Official Music Video) https://www.caricatures-ireland.com/adore-sweet-keith-official-music-video/ #mastoart #mastodaoine #rock #punk #irishmusic #newirishmusic #irishbands #music #musicvideo
Irish & Celtic Music Podcast produced by @celtfather: Celtic Blessings for Thanksgiving
#irishmusic #celticmusic
https://celticmusicpodcast.com/celtic-blessings-for-thanksgiving
I've gotten to over 1000 subscribers. So now we need to decide what to do with this lad.
It's polarising. Some people love the stickers. Others hate them and others still don't care.
Let me know what you think and I'll document what we do after. Poll here: http://youtube.com/post/UgkxL94fCBRXuhU-yZLlqECZKYkk-F3nCDZe?si=Ol5Z0mDBoXsYh9Q-
#Youtube #Musician #IrishMusic #MusicReviews #Guitarist #Guitar