Monday, December 15, 2008

Welcome!

Welcome to Zen Software.
*note: I know that some may dissigree with the way I am using the word "Zen" I am using it in the meaning of simple and without excess.

My goal is to develop simple applications that focus on getting the job done. I want to move away from all of the features and bloat. Every decision in designing the software should first ask, "Does this contribute to mission of the application?"

I have two projects right now. One is a knit pattern application that I am making for my girl friend. The other is a flash card program. Both of these applications use Adobe AIR.

Why Adobe AIR?
After playing around with Adobe AIR, I found that it does what I need without making me do anything I don't want to. I can create a page in HTML/CSS/Javascript and it will just work with Adobe AIR. If I don't want anything else, I don't have to use anything else. If I want some extras, like the ability to load and save to a file; it's there. If I want to use jQuery, I can. It just works and stays out of my way. That is why I am using Adobe AIR for these projects.

Does using Adobe AIR contribue to the projects?
Both projects require some way to save and load data. The knit project needs the ablity to save and load patterns. Otherwise it doesn't achive its purpose of allowing my girlfriend to easally view/edit/print knitting patterns. The same deal with the flash card program.

There are many options I could take to solve this problem. The solution that comes to mind first is to use a database. Save the knit patterns in the database, then she could access them anywhere and we open up the possiblity to having people share patterns.

The downside to useing a database is that I would need some kind of server side scripting. And a database. There may be ways to talk to a database without serverside (I didn't look.) But that still doesn't elminate the need for a database. And the need to maintain that database. I'm not saying that these are terribaly difficault tasks, but they don't really fit the zen concept. That's more work that I'd have to do that doesn't really focus on the purpose of the application. There is no real need that anyone other than my girlfriend use the program. There is no real need to allow people to share patterns over the internet. There are other ways to provide those same features (like email) without me building something specific.

This is why I choose Adobe AIR. I can easly save and load the patterns to files on the hard drive. No server side script is required. The only requirement is that the computer has Adobe AIR, or at lest Flash. Everyone has flash (except my iphone) so that's not an issue. (More specifically, my girl friends old laptop has flash.)

No comments:

Post a Comment