From: mo reina on
an anyone recommend a resource (book,tutorial,etc.) that focuses on
application development in python? something similar to Practical
Django Projects, but for stand alone applications instead of web apps
(for now).

i'm in a bit of a funny place, i have a decent/good grasp of python
syntax and my logic isn't bad, but i have no clue on how to assemble
an application, i seem to be stuck on writing scripts.

i've looked at the source of a few projects but the flow is way over
my head, i understand the syntax but not the logic, which is why i'm
looking for a project-cenetered learning resource, instead of a
reference or language-feature resource. also, it seems that a lot of
app programming is 90% gui bindings, with very little actual code, or
am i totally way off mark?

i recently picked up the django practical projects book, and in a few
days i re-wrote a website i did with django. i feel it was the book's
project-centric approach that made this possible.
From: Andre Alexander Bell on
On 07/03/2010 07:48 PM, mo reina wrote:
> an anyone recommend a resource (book,tutorial,etc.) that focuses on
> application development in python? something similar to Practical
> Django Projects, but for stand alone applications instead of web apps
> (for now).

I think you are referring to GUI applications. There are plenty of GUI
Libraries out there. One of my favorites is the Qt library by Nokia
(former by Trolltech) for which you can get python bindings PyQt and PySide.

http://doc.qt.nokia.com/4.7-snapshot/index.html
http://www.riverbankcomputing.co.uk
http://www.pyside.org

You might want to read through the tutorials given in the documentation
at the Nokia site and possibly take a look at the examples provided
with, e.g. PyQt.

I'm sure other will add in more valuable links and suggestions.

Best regards


Andre
From: Terry Reedy on
On 7/3/2010 1:48 PM, mo reina wrote:
> an anyone recommend a resource (book,tutorial,etc.) that focuses on
> application development in python? something similar to Practical
> Django Projects, but for stand alone applications instead of web apps
> (for now).
>
> i'm in a bit of a funny place, i have a decent/good grasp of python
> syntax and my logic isn't bad, but i have no clue on how to assemble
> an application, i seem to be stuck on writing scripts.
>
> i've looked at the source of a few projects but the flow is way over
> my head, i understand the syntax but not the logic, which is why i'm
> looking for a project-cenetered learning resource, instead of a
> reference or language-feature resource. also, it seems that a lot of
> app programming is 90% gui bindings, with very little actual code, or
> am i totally way off mark?

If the app is a gui app and if logic is overly intermixed with gui
stuff, I am sure it can seem like that. Many recommend the MVC
model-view-controller model for app design. Even that can be confusing;
to me it should be model-controller-view, even though that is harder to
say. What are the data (values and objects) and how are they stored?
What are the rules for manipulating the data and objects? And then, and
only then, how to communicate with the user?
>
> i recently picked up the django practical projects book, and in a few
> days i re-wrote a website i did with django. i feel it was the book's
> project-centric approach that made this possible.

Another issue is who controls the flow of interactions, the user or the
code. For instance, a gui form used for input tends to direct the user
along a linear path. The same form, used for edit, presents existing
data and allows the user to pick and choose the fields to edit. This
distinction, along with MVC ideas, is important for reading source code.

I have mostly seen this issue discussed in game reviews and game design
writing. In computer games, there is the same general difference between
a linear obstacle course game and a world to be explored in whatever
order one wants. (And there are some with both an explorable world *and*
a (somewhat optional) linear main quest line.)

I am not familiar with any general app design books, but I have seen
game design articles and books that are on a par with writing about web
design. There are other books on business apps.

--
Terry Jan Reedy

From: CM on
On Jul 3, 1:48 pm, mo reina <urban.yoga.journ...(a)gmail.com> wrote:
> an anyone recommend a resource (book,tutorial,etc.) that focuses on
> application development in python? something similar to Practical
> Django Projects, but for stand alone applications instead of web apps
> (for now).
>
> i'm in a bit of a funny place, i have a decent/good grasp of python
> syntax and my logic isn't bad, but i have no clue on how to assemble
> an application, i seem to be stuck on writing scripts.

Do you have a particular project in mind? Getting unstuck, I think,
is about having a goal and then you'll begin to seek out what you need
to make that happen (see below).

> also, it seems that a lot of
> app programming is 90% gui bindings, with very little actual code, or
> am i totally way off mark?

I'm sure it varies greatly depending on the application. Depending on
the complexity of the GUI and how much care goes into it, that can be
a lot of code (it seems to me).

> i recently picked up the django practical projects book, and in a few
> days i re-wrote a website i did with django. i feel it was the book's
> project-centric approach that made this possible.

I don't know of a book oriented that way (sounds like a good idea),
but you might take a look at this video "learning path" from the
ShowMeDo website:
http://showmedo.com/learningpaths/14/view

It is focused on GUI (desktop and web) application development. There
is a super basic starter video in there about making a Python image
viewer application. Then the video series about building emol seems
very thorough (there are 35 videos!), though I haven't watched it yet.

What I would suggest is that you first decide what you want to
accomplish. Then research and pick a GUI framework first (Tkinter,
wxPython, PyQT, PyGTK), then whatever other tools you'll need
(database? drawing? math/science?), which will either be in the
standard library or in a 3rd party library. Any of the research on
what tools to use can be Googled with bountiful results, as those
questions are asked a lot. Then just jump in. This will prompt you
to learn in a directed way.

From: Ed Leafe on
On Jul 3, 2010, at 1:48 PM, mo reina wrote:

> an anyone recommend a resource (book,tutorial,etc.) that focuses on
> application development in python? something similar to Practical
> Django Projects, but for stand alone applications instead of web apps
> (for now).

You should definitely check out Dabo. Several years ago we were looking for something in Python for developing desktop apps, and while there were several useful tools, there wasn't anything that integrated them together. That was our motivation for creating Dabo.

We have a few screencasts to help you get acquainted with Dabo; I'd recommend these two to start:

http://cdn.cloudfiles.mosso.com/c129431/dataenvironment1.html
http://cdn.cloudfiles.mosso.com/c129432/dataenvironment1.html

We also have a pretty comprehensive tutorial document, available at:

http://dabodev.com/pycon_tutorial

If you have any other questions, join our email discussion list and post them there. There are many helpful people there to answer your questions.

http://leafe.com/mailman/listinfo/dabo-users



-- Ed Leafe