By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
457,695 Members | 1,170 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 457,695 IT Pros & Developers. It's quick & easy.

Considering python - have a few questions.

P: n/a
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!


Jul 18 '05 #1
Share this Question
Share on Google+
10 Replies


P: n/a
Heather Stovold wrote:
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!
--
Benji York
be***@benjiyork.com

Jul 18 '05 #2

P: n/a
"Heather Stovold" <h_*******@hotmail.com> wrote:

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.
--
- Tim Roberts, ti**@probo.com
Providenza & Boekelheide, Inc.
Jul 18 '05 #3

P: n/a
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
Jul 18 '05 #4

P: n/a
In article <m0********************************@4ax.com>,
Tim Roberts <ti**@probo.com> wrote:
"Heather Stovold" <h_*******@hotmail.com> wrote:

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.

Jul 18 '05 #5

P: n/a
sjm
Heather Stovold wrote:
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

Jul 18 '05 #6

P: n/a
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. <snip> 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.
Jul 18 '05 #7

P: n/a
Grumman <gr*****@example.com> writes:
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

--
# sigmask || 0.2 || 20030107 || public domain || feed this to a python
print reduce(lambda x,y:x+chr(ord(y)-1),' Ojdl!Wbshjti!=obwAcboefstobudi/psh?')
Jul 18 '05 #8

P: n/a
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/an.../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

Jul 18 '05 #9

P: n/a
Sorry, I have forgotten to mention binding for Firebird to Python:
kinterbasdb
http://kinterbasdb.sourceforge.net/

Petr Jakes

Jul 18 '05 #10

P: n/a
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.

Jul 18 '05 #11

This discussion thread is closed

Replies have been disabled for this discussion.