CuteClips3

Last week I released the first beta of CuteClips3. It is a complete rewrite, created from scratch with simple design and easy extensibility in mind. After I started development I soon realized that I got to a product that could be compared to the existing version in terms of functionality. The big difference was that the new version is much cleaner implemented, got no memory leaks from what I experienced and got the doors wide open for new exciting features.

I wouldn’t believe it, if I didn’t experience it myself: If you think your app is too hard to maintain, or got some other problems…maybe it’s time to start over. You spend much less time in getting to the same functionality that you are currently, than you might think. Continuing development then is a true pleasure compared to the wrestling with bugs and old source code that was happening before the rewrite.

Of course you don’t have to write everything new. If there’s code that you know that works and that was very difficult to write (like the part in CuteClips that does the actual pasting by emulating a cmd-v) then you probably don’t have to write it again. This is especially true if you didn’t touch this code since the day you wrote it and when you’re not going to touch it again in the near future.

While I rewrote CuteClips I wanted to implement all those funny new things that software development in Mac OS X provides. For instance Bindings. I think Bindings are a cool thing and they’re pretty powerful. Still I only use them not so extensively as I planned to do. I hit the limit of Bindings pretty fast, especially by dealing a lot with custom views. Another part that I don’t like with Bindings is the ability to debug and to find bugs that are related to Bindings. I happened to have a lot of crashes at the beginning because I was using Bindings wrong and I had no idea why the particular error occurred. Either I found out by trial and error or cause I understood the problem. Either way, I didn’t like it very much.

So if you feel like your app is not easy to maintain, or there’s a big flaw in the design that you just don’t like, just take the chance and start over from zero…you’ll be surprised as well 😉

Karsten

Comments are closed.