Programmer-Wanna-Be (Is Python for me?)

Lokie anthony at lokie.co.uk
Fri Oct 13 01:45:34 EDT 2000


<fifeclub at my-deja.com> wrote in message news:8s2354$ep2$1 at nnrp1.deja.com...
> 1.  First of all, is Python what I'm looking for:  a way to create
> Windows (or other OS's) applications?
Yes, with the advantage that most of its library's abstract the
application/OS layer making it extremely easy to port to another OS. Having
just developed a complex search engine and management system on a Win98 box,
its kinda nice to only have to change 1 line to get it to work on a Redhat
Linux machine.

> 2.  Is Python RELATIVELY one of the easiest ways to do this?
I'd say yes. Coming from a background of coding in Basic, C, Ada, and Pascal
on a number of platforms Python allowed me to very quickly lever that
experience to be producing working code. Like all good art's it takes time
to become truly good with a system and I bet I could rewrite those first few
demo programs in half the space and with double the performance. Thats true
for any language, but Pythons rigid block structure will allow you to
examine code from resources such as Parnassus (URL escapes me) and have
very good idea of whats happening and how, If only C had been so easy when I
learned that many years ago :-)'s

> 3.  What about Visual Basic? (the most commonly used) Why should I
> not choose VB instead?
I've not used VB in nearly 3 years so this is almost certainly not something
you should take as gospel, but I tended to find it Ideal for quickly laying
out the look of an application before coding in C. Its syntax seems to
suffer from trying to marry BASIC's syntax with the Microsoft C++ classes
exposed by Windows which leads to some interesting confusions with new
users, and lots of head banging with older users. However, with all of that
in mind, Microsoft do seem to want to stick VB in every application, so it
won't hurt to at least understand some of it, if only for using Office a
little more efficently.

> 4.  Is there a WYSIWYG editor (like Frontpage is for HTML)?  Is this
> what Tkinter is?  Is there a 'better' WYSIWYG editor for Python that I
> should use instead?
Good question, not seen one but I'm sure there was a thread in this group
about a RAD for Python a few months ago......

> 5.  What's the deal with Tk/Tcl?  Why is this so closely tied with Python
> and Tkinter if Python is it's own language?  (The install instructions
> say I may need to install Tk/Tcl too (what ever that is))
Tcl is an old scripting language which by some accounts is beginning to show
its age and limitation against the new breed of languages such as Python
that are beginning to emerge. TK is a GUI development system written in Tcl
originally for X-Windows, but now ported pretty much everywhere. When Python
needed a GUI system it therefore made sense to use what was already
available and guaranteed to work across platforms and hence TK/Tcl is now
included with Python.

> 6.  Where should I start?  (I've already downloaded and installed
> Python2.0b2 but haven't attempted to write anything)  Do I need to
> download anything else?
Ask 10 people where to start and your going to get 11 answers :-)'s
Personally I'd start by downloading and reading the Tutorial, followed by a
quick visit to Parnussus (link on the python website) to pick up some
programs to take a quick look at. The final step for me in learning a
language is to sit down and write something (choose something simple to
begin with), it doesn't matter how "bad" the code is, if it works and does
what you want then your on your way to a long productive relationship with
Python.

As a final thought, your obviously looking at a number of languages, and I
suspect theres a similar post in each of their newsgroups. Every reply your
going to read will tell you that language X is what you need and there will
be lots of arguments on each side as to who's right and who's wrong. The
bottomline is every language has its zealots (just as every OS has its
zealots) who'll defend there favourite system to the death. At the end of
the day, its you who has to make the final choice, its you who'll have to
struggle late at night to find the bugs, and ultimately its you who'll have
that "rush" when a piece of code you've spent a little while on works as
expected. Therefore before you make your choice consider the following:

Is there a friendly place where I can get peer help with my problems?
Is the documentation helpful?
Are there example programs you can learn from?
Is the language structured to allow someone to read somebody elses code (or
even your own code in 6 months time)?
Will what you learn in Language X be applicable to Language Y?

Python scores heavily on all the above points, so give it a whirl and I bet
you won't be disappointed.

--
Anthony McDonald





More information about the Python-list mailing list