Beginner advice

P

Paul Scott

I have been tasked to come up with an audio recorder desktop (cross
platform if possible - but linux only is OK) that:

1. records a lecture as an MP3 file (pymedia?)
2. Provides a login form for server credentials
3. Uploads via XMLRPC (pyxmlrpclib) to the server as a podcast

I have been working on this (having never really worked with Python
before) for the past 24 hours or so, and would just like to get some
feedback on the direction that I am taking if possible.

1. Is pymedia an active project? Should I use something else?

2. GUI design - I am using glade designer and pyGTK. Good choice?

3. pyXMLRPClib - active? Something better?

4. I see that there are literally thousands of somewhat external looking
libraries for python, I presume that there is some way of bundling all
the deps into a single source and then compiling? or otherwise packaging
them all (this software will be for academia, so difficult installs are
out!)

5. Editor - I am using Eric (which I quite like), any advice on IDE's?

Any help would be massively appreciated! Python looks like a *really*
easy and powerful language (hey, I managed to do a desktop application
in a few hours and I am a botanist!) and I would like to do a lot more
with it. I have a PHP background (taught myself that also) so C syntax
is almost like my native tongue :) but Python syntax seems just as easy,
if not easier!

I am still going through Mark Pilgrims' tutorials (dive into ones) and
am slowly getting the hang of things, so if these questions seem inane,
please do excuse me and feel free to tell me to RTFM!

Thanks

--Paul



All Email originating from UWC is covered by disclaimer
http://www.uwc.ac.za/portal/public/portal_services/disclaimer.htm
 
M

Marc 'BlackJack' Rintsch

3. pyXMLRPClib - active? Something better?

There is an `xmlrpclib` in the standard library, so there is no need for
an external package here. I even think that pyXMLRPClib is the one that's
integrated in the standard library, so the external one might be "dead".
4. I see that there are literally thousands of somewhat external looking
libraries for python, I presume that there is some way of bundling all
the deps into a single source and then compiling? or otherwise packaging
them all (this software will be for academia, so difficult installs are
out!)

For Windows there are tools to bundle your source and all dependencies and
even the interpreter itself. `py2exe` is such a tool. With InnoSetup or
NSIS or similar programs you can then make a `setup.exe` for that spoiled
Windows brats. :)

Under Linux many packages are available as distribution specific packages
on most distributions. So for Linux you may get away with a README
stating the dependencies of your program and a `setup.py` for installing
your project. Look for `distutils` in the Python documentation for
further information about `setup.py`\s.
5. Editor - I am using Eric (which I quite like), any advice on IDE's?

Use the one you like best. ;-)

Many don't use an IDE but simply their favorite text editor. I'm happy
with syntax highlighting, automatic indentation support for Python source
code, and completion based on the content of open file(s) -- almost all
serious editors have those features.

And there's always an IPython console running to test small pieces of code.
All Email originating from UWC is covered by disclaimer
http://www.uwc.ac.za/portal/public/portal_services/disclaimer.htm

Hey, that's a nice way to have a *short* stupid disclaimer. :)

Ciao,
Marc 'BlackJack' Rintsch
 
P

Paul Scott

There is an `xmlrpclib` in the standard library, so there is no need for
an external package here. I even think that pyXMLRPClib is the one that's
integrated in the standard library, so the external one might be "dead".

Ah, yes it is indeed. Thanks.
For Windows there are tools to bundle your source and all dependencies and
even the interpreter itself. `py2exe` is such a tool. With InnoSetup or
NSIS or similar programs you can then make a `setup.exe` for that spoiled
Windows brats. :)

Under Linux many packages are available as distribution specific packages
on most distributions. So for Linux you may get away with a README
stating the dependencies of your program and a `setup.py` for installing
your project. Look for `distutils` in the Python documentation for
further information about `setup.py`\s.

setup.py sounds like the best way to go. Most of the classrooms and
lecture halls run on Ubuntu machines, and as I said, I don't really care
much for the Windows brats anyway. 'doze installers etc would be a nice
to have, but not needed right now.
Use the one you like best. ;-)
Thought as much. I do 90% of my coding in vi anyways, but am still
getting a couple of nutty errors from Python simply because I have not
yet gotten the hang of significant whitespace :) Darn that PHP!


Thanks for the feedback, now I just need some justification on the
GTK/GUI stuff - wxWidgets, GTK+ Glade or other?

--Paul


All Email originating from UWC is covered by disclaimer
http://www.uwc.ac.za/portal/public/portal_services/disclaimer.htm
 
A

Artmi

Ah, yes it is indeed. Thanks.



setup.py sounds like the best way to go. Most of the classrooms and
lecture halls run on Ubuntu machines, and as I said, I don't really care
much for the Windows brats anyway. 'doze installers etc would be a nice
to have, but not needed right now.



Thought as much. I do 90% of my coding in vi anyways, but am still
getting a couple of nutty errors from Python simply because I have not
yet gotten the hang of significant whitespace :) Darn that PHP!

Thanks for the feedback, now I just need some justification on the
GTK/GUI stuff - wxWidgets, GTK+ Glade or other?

--Paul

All Email originating from UWC is covered by disclaimerhttp://www.uwc.ac.za/portal/public/portal_services/disclaimer.htm

I myself prefer wxPython(wxWidgets wrapper for python), it's more
"Object Oriented" then, say GTK. But really, just check out their
homepages to see features they include, and go by that instead.
 
G

Graham Ashton

Thanks for the feedback, now I just need some justification on the
GTK/GUI stuff - wxWidgets, GTK+ Glade or other?

pyGTK is great. I used it quite heavily a year or so ago. GTK is a
nice tool kit from the user's perspective too; you can make some
rather attractive and usable applications with it, and the GUI builder
is a boon. Obviously it integrates slightly better into it's native
platform than it does Mac/Windows, but if you're targetting Ubuntu
users then it's a great choice.

I've never used wxWidgets in anger but I didn't take to it having used
pyGTK quite extensively. I guess it just wasn't for me. Back then
(things may have changed) it didn't (visually) integrate quite so well
into a modern GNOME desktop either, even though it was using GTK to
draw the widgets. I'd re-evaluate it if I really wanted to build a
cross platform app though.
 
P

Paul Scott

pyGTK is great. I used it quite heavily a year or so ago. GTK is a
nice tool kit from the user's perspective too; you can make some
rather attractive and usable applications with it, and the GUI builder
is a boon. Obviously it integrates slightly better into it's native
platform than it does Mac/Windows, but if you're targetting Ubuntu
users then it's a great choice.

OK, this is almost exactly what I needed. All that I really want to know
is can I do this in a really easy, comfortable tool like GTK and get
away with it without someone 3 months down the line saying something
like: "Dude, what were you *thinking* using deprecated stuff like that?"

Sorry, but I had to ask, and I am sure that I will ask a lot more
questions as things move along.

I really appreciate all the feedback so far! It is often quite difficult
sifting through all the years worth of blogs, docs and other resources
when starting on something new like this, so bear with me, and I will
try and make a more meaningful contribution back to Python as soon as I
can!

--Paul



All Email originating from UWC is covered by disclaimer
http://www.uwc.ac.za/portal/public/portal_services/disclaimer.htm
 

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

Forum statistics

Threads
473,769
Messages
2,569,582
Members
45,070
Latest member
BiogenixGummies

Latest Threads

Top