Ron Stephens - 2002-07-05

Welcome. Please download decide.py and try it out for awhile. Then, take a look a the source code and try to add a module to it, in any area of your personal expertise. Hey, you can at least do as well as I did on my add-in modules ;-)))

I would love to see some folks uploading their add-in modules or other code contributions to this project on Sourceforge. If you want to be added as a developer to this project, just drop me a line and I'll make it happen! Even if you do not have experience, you can always learn on the job, I always say. If you do have experience, that's great too!

The code available for downloading is decide.py, a much updated (improved?) version of my very simple (yet functional, as in working, code) program which some folks on this list helped me with a year ago, when I was a total newbie to Python. This decide.py file should run on any computer with Python installed, including any version on Windows or Linux.

The idea is this: newbies can use decide.py, and the Decision Analysis Sourceforge project, to learn new programming skills, and practice the Python techniques learned from books and tutorials.  No one is too new, or too clueless, to contribute.

The ideas behind decide.py are very simple, and the code is well documented, if (certainly) not elegant. But there is much that can be added, and I am betting that almost any newbie can find ideas in their own head to add to decide.py, without hurting their nogin too much . ;-))

The general version of decide.py is a generalized decision maker. The same code can be easily altered to create new modules,  of a specific nature, in any areas in which the individual coder is an "expert" Hey, we're all expert in somethings! For instance, one of the areas in which I claim vast expertise, and therefore I created a module for, is deciding where to go and what to eat for lunch on any given day. Others may be experts in nuclear physcis or world peace, and decide.py can just as easily be extended to incorporate their expertise as well!

Beyond adding new modules of exxpertise, which probably represent the easiest additions coders can make to decide.py, there are many other areas for coding, a short list of which follows:

1. Decision Analysis needs a GUI, any GUI. This will be relatively straight-forward, with one big caveat: one must be able to program GUI's in *some* (read *any*) Python GUI toolkit. How about a PythonCard version, a Tkinter version, a Java Swing vesion, a wxPython version...let a thousand flowers bloom...

2. The simple underlyng logic behind decide.py needs to be extended. Any one with a even a modicum of statistical knwoledge (as in more than me ;-))) should be able to come up with more interesting algorithms to use to supplement (or replace!) decide.py's current logic.

3. PDA's. ...I think that decide.py's  kind of fun, easy, and lightweight programs are prefect for use on PDA's. I already have decide.py working perfectly well on my Sharp Zaurus, which is cool. But a version taylored just for a given PDA, with a lightweight GUI taylor-made for the PDA, with sliders say for data entry, would be really fun.

4. I have non-working code that uses simple semantic analysis of random questions to identify type of question and keywords involved, , and then uses the WWW and Google to do simple statistical anaysis to "answer" random questions. Could be a part of a new decide.py logic module someday, but the algorithm needs a lot of work. I will be uploading this code to the Sourceforge site, as soon as I get it into reasonable shape.(The existing code can be found on my web site, just look for askMerlin.py)

Anyway, all are welcome. Hey, I won even turn away any non-newbies who might show up! ;-)))

But for newbies, this is the one place on the net where you can code but not be ashamed of your newbieness. Just have fun.

By the time I get back from my two week trip starting Monday July 8, I hope to see some contributions and some questions. Address email questions to rdsteph@earthlink.net or just post them on the Sourceforge site.(That's if I survive  *coach* round the world lfight with stops in several countries ;-((((

Decision Analysis, think of it as a poor man's extensible, expert system, semi-intelligent AI ssytem.