Well that was a lot longer break than I thought!

I had to take a break for while to basically re-write the entire app in Apple’s new SwiftUI framework.  And that, of course, meant going back to square one and learning the language syntax and then trying to bend it to my will.  As with all things new from Apple, some things (mostly) work, and other things dont.  

Then there’s the new thing I’ve just discovered.  It’s called PEBKAC – ‘Problem exists between keyboard and chair’ – ie, it’s me that’s the problem!  

And by that I mean the understanding I have of what I’ve just learnt about SwiftUI.  It’s not been easy.  After over 25 years of functional program development I’m having to make the context shift to behaviour based development.  SwiftUI is geared around the relationship between state (of the data) and the online display of it.  It’s a bit like when I had to learn Parallel programming in Occasm at Uni. As it’s almost at 180 degrees to how you’d normally think of developing, it can seriously mess with your head!  I found that it was pretty good to remember the AI practitioner who was doing early state based development from what they knew of that time of small animals.  He figured that their behaviours were in a cause/effect with their environment and he was attempting to recreate that learning based of the stimulus from the environment.  It’s like SwiftUI.  Change the state of something (the animal’s stood on somethign) and the envirnoment (the UI Screen) of the App gets re-drawn (the animal re-assesses his postion based on the new “there’s something under my foot” information

It’s actually been a blast to learn something new! And there’s the added benefit the SwiftUI I can do a lot more graphical things without needing the masses of libraries I was relying on before.  It’s not 100% there yet – you can see progress in the image above.  But it’s getting close.

I’ve also started logging things I need to track in JIRA (an issue tracking system that I actually used quite a lot of when I worked for the hugs American multi-national.  I’m already upto issue 88 so there’s some ways to go yet.