Dev-Picayune

picayune: of little value or importance

Alamo Design

The end of the year is fast approaching, so if I have any shot at writing a Quicken replacement, then I need to start now. So the Alamo design has begun. My biggest issue is over language selection. The application will have a fairly complex UI and will require a lot of details. One of the major things I think I would like is a list box with a variable number of child records (not quite a tree control but really similar). And because I want the interface to be fresh looking and changeable, I am leaning towards doing C#.NET with an embedded IE control to display the ledger. Using XML, XSL, CSS, HTML, I should be able to make pretty substantial changes to the look and feel without any significant coding changes. I should be able to provide different themes and skins by just replacing a few files and without recompiling anything. The difficult part of this is hooking into events and really taming the IE control to the degree I need to. wxPython offers several really cool controls that are also tempting. There is a virtual list box that allows you to use HTML as the text for each item element. So again, I might could create the look I am going for by doing that. wxPython also offers an HTML control that allows for basic HTML formatting (but obviously not CSS and some of the more advanced techniques) but using it would improve my chances at making a cross-platform application (although that is definitely not high on my list).

My thinking is that with C#, I know a little more of what I am doing and I know that with the massive amounts of intellisense, I can muddle my way through. However, attempting to hook deeply into IE will be a bit of a challenge. With wxPython, I think I can do what I need to do, but I fear that I won’t resolve things as quickly and I could end up making poorer design decisions.

As for the backend, I will either use MySQL or SQL Server 2005 Express. They are both free in one way or the other. I’ll most likely use Express if I use C# and MySQL if I use Python. I would use SQLite but it is not truly a client-server database and so hitting the database file through multiple computers could result in corruption. I haven’t totally figured out the SQL Server 2005 Express architecture but what little I have read seems promising. So that’s a whole additional area that I have to research if I am doing this. Ugh! I suddenly am figuring I am not going to make it.

No comments yet. Be the first.

Leave a reply

For spam filtering purposes, please copy the number 8004 to the field below: