Considering python - have a few questions.

H

Heather Stovold

Hi all...

I am looking at writing a little program for my own use, and probably for a
bunch of other people too, and I am trying to decide what would be the best
language to use.

I am a "retired" programmer, that started in the DOS world. (Well, I guess
I started pre-DOS...). I learned C++ (for DOS), and Pascal (for DOS) when I
was in school - and programmed for several years in Basic. (Ok - it wasn't
my choice - but it was what I was hired to program in - and each single-user
license was around $7,000 - so who was I to argue!) I later did some stuff
in Visual Basic, and did some OOP in it.

HOWEVER - I have not programmed a single darned thing for over 5 years.
And although I do remember how to program in general, I don't seem to
remember Visual Basic that well... so I'm looking around. (After all, If
I'm going to have to relearn a language - might as well be worth while!)

I am wondering how hard it is to do what I want in python, however.

I need to make a GUI interface. Some of the screens need to be dynamically
created, with the screen information in a database. Included in the database
will be pictures (.gif or .jpg) that need to be displayed. A second
database would hold the user's data. I would also need to be able to print
reports made in a similar fashion.

I would want the program to run in Windows for sure. If it could work on a
Mac and other systems, that would be a plus. I would really love it to be
able to also be able to be run on the internet (allowing more than one
person access to the data), but I've never done anything other than basic
web pages with a web page editor (dreamweaver.)

btw - I have the database designed (and the program info database filled) in
Access....

I don't mind working hard to learn how to do it.... I just want to know if
Python is a good choice or not!

Thanks for your patience!
 
B

Benji York

Heather said:
I need to make a GUI interface.

There are many to choose from. I prefer wxPython (wxpython.org). It is
portable, has native look-and-feel, comes with good documentation and an
excellent demo application.
I would really love it to be able to also be able to be run on the
internet

You can certainly do network IO with Python, and there are several
add-ons that make it even easier: Pyro at pyro.sourceforge.net or the
built-in XML-RPC client and server.
btw - I have the database designed (and the program info database
filled) in Access....

There have been several threads here about connecting to Access.
I don't mind working hard to learn how to do it.... I just want to
know if Python is a good choice or not!

I'd definitely say so. Have fun!
 
T

Tim Roberts

Heather Stovold said:
I need to make a GUI interface. Some of the screens need to be dynamically
created, with the screen information in a database. Included in the database
will be pictures (.gif or .jpg) that need to be displayed. A second
database would hold the user's data. I would also need to be able to print
reports made in a similar fashion.

I would want the program to run in Windows for sure. If it could work on a
Mac and other systems, that would be a plus. I would really love it to be
able to also be able to be run on the internet (allowing more than one
person access to the data), but I've never done anything other than basic
web pages with a web page editor (dreamweaver.)

btw - I have the database designed (and the program info database filled) in
Access....

I don't mind working hard to learn how to do it.... I just want to know if
Python is a good choice or not!

Python is a great choice. Personally, given your requirements, I would
make this a web application. In my opinion, HTML is the easiest way to
generate a user interface on-the-fly. With a package like CherryPy, you
get a web server built-in. You fire up the server in the background, and
bring up Internet Explorer as "your" user interface.
 
M

Maurice LING

Hi,

I feel that you have a consideration if Python is suitable from the
perspective that you hadn't programmed for a long time. Assuming that
you had been convinced that Python is a suitable language in terms of
functionalities you need, please allow me to ensure that Python is
simple enough to learn. So please do not let your apparent "lack of
programming experiences" be a mental hinderance to your progress.

Cheers
Maurice
 
C

Cameron Laird

Python is a great choice. Personally, given your requirements, I would
make this a web application. In my opinion, HTML is the easiest way to
generate a user interface on-the-fly. With a package like CherryPy, you
get a web server built-in. You fire up the server in the background, and
bring up Internet Explorer as "your" user interface.
.
.
.
Me, too. Ms. Stovold, while I imagine that you're not thinking
in terms of a Web application, I suspect you're likely to find
Tim's advice very satisfying. Given your background, as you
describe it, I strongly urge you at least to experiment with
simple dynamically-generated Web pages. Don't hesitate to start
with CGI, as the easiest way to achieve quick results.
 
S

sjm

Heather said:
I am a "retired" programmer, that started in the DOS world. (Well, I guess
I started pre-DOS...). I learned C++ (for DOS), and Pascal (for DOS) when I
was in school - and programmed for several years in Basic. (Ok - it wasn't
my choice - but it was what I was hired to program in - and each single-user
license was around $7,000 - so who was I to argue!) I later did some stuff
in Visual Basic, and did some OOP in it.

HOWEVER - I have not programmed a single darned thing for over 5 years.
And although I do remember how to program in general, I don't seem to
remember Visual Basic that well... so I'm looking around. (After all, If
I'm going to have to relearn a language - might as well be worth
while!)

Heather, one of the beauties of Python is that it's rich enough for the
advanced programmer and yet simple enough for the beginner. I came to
Python after many years as a professional programmer (assembly
languages, Fortran, COBOL, Symstream, PL/1, Natural, C, Perl, Prolog)
and took to Python immediately. Yet, were my 11 year-old niece to tell
me she wanted to learn to program, I'd steer her toward Python. You
fall between these two extremes and I think Python would be an
excellent choice for you.

-- Steve J. Martin
 
G

Grumman

I would want the program to run in Windows for sure. If it could work on a
Mac and other systems, that would be a plus.
btw - I have the database designed (and the program info database filled) in
Access....

If running on a Mac really is a goal, ditch Access, its windows only.
You'd want to look into MySQL, PostgreSQl or some such for
inter-platform use.
 
N

Nick Vargish

Grumman said:
If running on a Mac really is a goal, ditch Access, its windows
only. You'd want to look into MySQL, PostgreSQl or some such for
inter-platform use.

Depending on how large the dataset is likely to get, SQLite may be
a good choice for the data-handling backend. Data files are portable
between machine architectures and within major version numbers, and it
avoids a lot of the setup and maintanence of the database systems
mentioned above (no need for a running server process, etc).

http://sqlite.org/

Just a happy user,

Nick
 
M

McBooCzech

I am trying to find answers to the similar problem for nearly two
months. After this time it looks for me like this:

language: Python 2.3 or 2.4

IDE: Eric3

GUI toolkit: Qt (commercial but free under GPL for Linux and Mac)
http://www.trolltech.com/products/qt/index.html
(version 4 will be released soon according their web and will be
released for free as well (GPL)
http://www.trolltech.com/newsroom/announcements/00000192.html

binding for Python to Qt: PyQt
http://www.riverbankcomputing.co.uk/pyqt/index.php

Database: Firebird 1.5

Some guys here are talking good about and Boa as well, but I would
like to prefer some professional solution.

All of course IMHO :))
HTH

Petr Jakes
 
S

Simon John

I'd go with a MySQL / Python / Apache route, but if it's Windows, maybe
not.

Also, you shouldn't store images in a database - images should be on
the filesystem with their paths stored in the database.

I'd definitely say going the web application route would be easier (and
more portable) than the GUI route, and a free Windows PyQt is still a
long way off, so stick with wxPython if you want a non-web GUI.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,983
Messages
2,570,187
Members
46,747
Latest member
jojoBizaroo

Latest Threads

Top