Hello and welcome to my blog. This blog was started to a single purpose – to keep you all updated with the latest development of my program Exif Editor, specifically version 2.0. I want to give you an overview how do I continue with the development and how do I tackle some specific issues and specially why do I do it.
I developed version 1.0 in my spare time almost three years ago. I made it quickly and in Objective-C without any previous knowledge of Mac programming. But since some years passed on, it’s apparent that Exif Editor needs some more deep, structural changes. Before Apple introduced Swift, I thought I would rewrite just some parts of the program to make it more elegant internally. But since WWDC 2014 it was clear that I needed to make a full rewrite. The only way how to continue Cocoa apps seems to be the Swift language. Even though Apple still keeps Objective-C language and its interoperability with Swift, I think in a near time Apple will make some framework either written in Swift and maybe incompatible with Objective-C, but the important message is that such framework will be mostly Swift friendly. Future will show us.
Besides the compatibility and future problems, Swift is quite elegant language. I really like it. Even though I think Apple has still a lot of work polishing its rough edges, it’s clearly a huge step forward in comparison with Objective-C.
So, I was left with only one choice about 2.0 – Swift. And I must say I’m quite happy about it. Now, as I’m reworking all internals, I can use modern techniques like automated testing of the program, and I’m trying to make Exif Editor Yosemite native citizen and I’m dropping backwards compatibility with 10.9.
So, you might be asking what this means for you. Mostly, the program will be ready for new features without doing some hacks here and there. This means faster updates. Then I would like to have UI capable for more tags to be displayed. This means remodeled UI showing tags – with tabs or hiding groups. I still need to experiment with this, though. So 2.0 changes will not be that dramatic in the sense of new features. I just want to put solid basis for the next development and get it out as soon as possible.
Later in 2.x lineup, I would like to add some more stuff like improved maps with places and searching, searching in UI, copying tags, renaming files, simple scripting, and more…