Computer Programming for Everybody, a Newbie Project

Ron Stephens rdsteph at
Fri Sep 12 05:39:08 CEST 2003

As most of you know, the founder and creator of Python has stated an
interest in bringing the joys of computer programming to a wider
audience, and he has coined the phrase "Computer Programming for
Everybody" to sort of sum up this concept. I fit in this category, for
prior to about 3 yrs ago, my programming experience and knowledge was
next-to-none. After 3 yrs of enjoying Python as a hobby in my limited
spare time, I have created a program, which I call askMerlin, that is
simple enough for a newbie to understand, yet interesting and

Having greatly cleaned up the original code, the basic program is now 
a class Decision() that allows one to simply analyze any decision one
needs to make. The other modules are subclasses of Decision() and are
sort of ultra-mini expert systems on how to decide what to eat for
lunch, who to vote for in an election, how to predict who will win a
given basketball game, football game, and how to answer yes or no type
questions. The last two modules apply the same technique but also
utilize the internet to gather data used to analyze and make

I think it is a fun little program. Newbies can not only understand
it, but can add simple modules, in any area of their expertise, by
simply subclassing Decision(), or by simply creating an instance of
Decision and over-riding a few key methods, or perhaps more simply by
imitating the functional logic.

OK, that's my spiel. The program can be found at my web site at

Ron Stephens, humbly-yet-fearlessly-treading-where-he-ought-not-ly-yours

P.S. of course I am still adding to this program, especially the
internet-enabled part, and welcome ideas / contributions from any and
all, especially relative newbies who need a place to start.

P.S.S. to Newbies, the best way to understand this program is just to
run it a few times. It is a command line program, and although I have
cleaned up the code, I also removed for the time being the
documentation and comments, that were becoming unwieldy after three
years of fiddling. I think the code speaks for itself, especially
after you run it a few times and see how it works. And yes, I do
intend to add some simple comments back into the code ;-)))
eventually. Also, I apologize in advance for any indentation errors
anyone has after downloading or cutting and pasting the code; just run
the program and let the Python error messages help you sort out any
formatting or indentation errors you may encounter.

The basic idea is to choose between a few options or alternatives, by
basing your choice on a few good criteria, with each criteria having a
weight, or relative-importance-factor, and then, by various means,
determining a score for each option on each criteria. There, that's
the documentation for now ;-)))

And lastly, yes, I do realize it isn't much to show for three years of
part time work, but hey, I give me A's for persistence.

Ron Stephens

More information about the Python-list mailing list