Saturday, June 04, 2005

I learned something this week

Frameworks work.

Let me explain. I've been using a Palm handheld for a number of years. Mostly for keeping track of the multitude of details at work. Part numbers, contact information, the innumerable details that make up my day. Without the palm, I would fill up a pocket booklet in about a month, with all the recall issues that come with paper. When I first started using the Palm, the built in software seemed inadequate; I wrote my own application that tracked all the stuff I needed.

The problem with rolling your own is the maintenance and side issues that require time. Palm has changed processors and many other things that my app requires. I never got around to writing a hotsync for it, so the data never strayed from the handheld except as a binary backup.

And more importantly, I never was able to see any usefulness of the KDE PIM tools, which today make up Kontact. My older Palm started losing it's mind, so I purchased a Tungsten E. I started using the built in Palm applications to track the days details, and magically they appear on my desktop. Every morning I do a hotsync, then drag stuff around or edit as necessary. I have actually started using Kontact.

Since I have the summary view open, I've written scripts with dcop calls to add notes and reminders for my perusal. I'm considering writing a script that extracts all the data from my application and inserts it into the calendar. The whole thing is getting more and more useful. My creative juices are flowing as I see ways of expanding usage to the others I work with.

Along the way I've run into some bugs or lack of function that I will either fix or report. No doubt as Kontact gets heavy usage the bug count will skyrocket.

But the most important lesson I've learned is the value of working within frameworks. This implies two things. The framework has to be extensible and powerful enough to contain almost any workflow situations. Quite a challenge. How difficult it is to extract the data from Kontact for other purposes? How easy and complete are the scripting interfaces that would make these things possible?

And I have to content myself with almost perfect solutions that are maintainable. A database app may suit better, but the tie-ins to the handheld that would require maintenance.

It is critical that the scripting bindings be included in KDE installations. That way users and writers of scripts would be assured of things working as expected.


Comments: Post a Comment

Subscribe to Post Comments [Atom]





<< Home

This page is powered by Blogger. Isn't yours?

Subscribe to Posts [Atom]