Advice for a novice on making ambitious cross-platform GUI app

Discussion in 'Python' started by Chelonian, Sep 25, 2006.

  1. Chelonian

    Chelonian Guest

    I'm considering trying to learn Python for a specific reason, and
    hoped the group might help me get a sense for whether it would be worth
    my time. The situation...

    Me: total beginner w/ a sense of programming basics and 1 week
    familiarizing myself with Python world. Use WinXP. Got Python 2.5.
    Fooled around in IDLE, made "hello world!" and one which takes user
    input and tracks a string or two.

    Project: ambitious GUI program for Win/Mac/Linux. Target user:
    average person. App to look elegant, and be intuitive, responsive,
    exectuable, have its own icon, etc. Needs to store user info in large
    database for the long term, run in the background and pop up at
    assigned times. There are needs for graphing, data analysis, file
    management, word processing, text processing, web synchronization, etc.
    It would have to look like commercial software, though it may turn out
    to be free open source. It's envisioned as a pretty tall order, thus
    my wonder if I'm delusional in thinking I have any hope to accomplish
    this.

    To begin, I have decided on wxPython as the GUI toolkit. Have also
    begun trying the SPE editor with wxGlade as the GUI builder, and have
    made a few line program to create a window. Lastly, I have used py2exe
    to turn that into an executable file with its library files for running
    on computers without Python installed or without the wxPython
    libraries.

    I have read FAQs and looked into it. Remaining questions are:

    Can Python *alone* produce something like what I've described? Or
    would I have to have some parts written in C? Or is Python really not
    best-suited to these needs?

    Is using SPE with wxGlade a good choice? What about Boa Constructor?

    Is it something one person could do over the course of a year or so,
    working say 10 hours a week on it? Or is this really out of reach of
    anyone other than a hardcore programmer or even a team of them?

    If I write it using Python 2.5 and wxPython, do I have to use py2app or
    something to create an executable and necessary library files so it
    will run on Mac? (Because of wxPython's libraries, which the Mac
    won't have?).

    Thanks for any thoughts you might share.
    Chelonian, Sep 25, 2006
    #1
    1. Advertising

  2. Chelonian wrote:
    > Project: ambitious GUI program for Win/Mac/Linux. Target user:
    > average person. App to look elegant, and be intuitive, responsive,
    > exectuable, have its own icon, etc. Needs to store user info in large
    > database for the long term, run in the background and pop up at
    > assigned times. There are needs for graphing, data analysis, file
    > management, word processing, text processing, web synchronization, etc.
    > It would have to look like commercial software, though it may turn out
    > to be free open source. It's envisioned as a pretty tall order, thus
    > my wonder if I'm delusional in thinking I have any hope to accomplish
    > this.
    >

    This sounds very very interesting. A bit like the app *I* am
    envisioning/writing right now. :)

    Can you elaborate a bit more on what kind of App this is supposed to be?
    I'm thinking that maybe if we share common goals, we might join forces.


    > Can Python *alone* produce something like what I've described? Or
    > would I have to have some parts written in C? Or is Python really not
    > best-suited to these needs?
    >

    Python is great. For everything. (except speed ;))
    Look at chandler: Pure python, huge App. Slow though ;)
    WikidPad is another example (not as huge). UliPad as well.
    There must be more, I just don't know any off hand.


    > Is using SPE with wxGlade a good choice? What about Boa Constructor?
    >

    Lots of people use each of those. But if you really want a slick
    (not-so-standard) UI, ditch the UI designer and code it yourself.

    I have looked at SPE. Its fine.

    Just. Try. ALL.
    Then, and only then, shall you know. We can't tell you.

    > Is it something one person could do over the course of a year or so,
    > working say 10 hours a week on it? Or is this really out of reach of
    > anyone other than a hardcore programmer or even a team of them?
    >

    I don't know. I'm on my app for a 3/4 year now and all I have is a
    shabby UI and a basic, if clunky, database engine. Although I must say,
    I had hard drive crash and switched from wxPython to pyGTK to wxPython.

    I think it's always a bad idea to estimate how long it will take to do
    some computer related task (Note the generality of that statement.).
    Because the answer is in ALL cases: longer.


    > If I write it using Python 2.5 and wxPython, do I have to use py2app or
    > something to create an executable and necessary library files so it
    > will run on Mac? (Because of wxPython's libraries, which the Mac
    > won't have?).
    >

    No clue, sorry.

    bye
    wildemar
    Wildemar Wildenburger, Sep 25, 2006
    #2
    1. Advertising

  3. Chelonian wrote:
    > Can Python *alone* produce something like what I've described? Or
    > would I have to have some parts written in C? Or is Python really not
    > best-suited to these needs?


    As already mentioned, Python is capable of doing nearly any type of
    program. As long as you don't need low-level functionality (like
    manual memory manipulation or device drivers) it should be fine. With
    computers nowadays, I don't think the speed hit will be that bad, but
    YMMV.

    > Is using SPE with wxGlade a good choice? What about Boa Constructor?


    I use SPE for all of my coding and have very few complaints. I've
    never used Boa so I don't know how well it will do. One of the reasons
    I chose SPE is because of the integrated wxGlade; because it's still in
    beta, SPE sometimes crashes when using it so be aware of that.

    > Is it something one person could do over the course of a year or so,
    > working say 10 hours a week on it? Or is this really out of reach of
    > anyone other than a hardcore programmer or even a team of them?


    Given enough time, one person can do nearly any programming task. If
    you have a deadline to complete it, then you probably really want
    someone with more experience to help you. If you don't mind reading
    books and learning as you go, then go for it. I'm working on making an
    RPG from scratch and I'm the only one doing it, but I'm learning a lot
    and just keep asking questions.

    > If I write it using Python 2.5 and wxPython, do I have to use py2app or
    > something to create an executable and necessary library files so it
    > will run on Mac? (Because of wxPython's libraries, which the Mac
    > won't have?).


    If you want to make an executable for the Mac, then you'll need py2app.
    If you want it to run like a normal Python script, then the user can
    just call it from the command line.
    crystalattice, Sep 26, 2006
    #3
  4. Chelonian

    John Salerno Guest

    crystalattice wrote:

    > I'm working on making an
    > RPG from scratch and I'm the only one doing it, but I'm learning a lot
    > and just keep asking questions.


    Intriguing. Any tips on how you are going about learning the game
    programming aspects of doing this? I took a look at PyGame, but it
    seemed a little over my head.
    John Salerno, Sep 26, 2006
    #4
  5. John Salerno wrote:
    > crystalattice wrote:
    >
    > > I'm working on making an
    > > RPG from scratch and I'm the only one doing it, but I'm learning a lot
    > > and just keep asking questions.

    >
    > Intriguing. Any tips on how you are going about learning the game
    > programming aspects of doing this? I took a look at PyGame, but it
    > seemed a little over my head.

    Currently I'm mostly just learning the various aspects of Python and
    OOP. It wasn't until a few months ago that OOP finally "clicked" for
    me; before that I only did procedural programming.

    My current programming for my game is just character generation, which
    is relatively easy. I'm currently trying to decide on how to best save
    the data (pickle, database, standard file, etc.) so it's not like I've
    created a game engine or anything real difficult.

    Last month I found a book called "Game Programming with Python". I'm
    only in the fourth chapter but it appears to have good insight. It
    discusses the normal parts of game programming, like audio, graphics,
    game engine, etc. while also talking about when and where to use
    Python, such as just as a game script or how to write the whole thing
    in Python.

    I'm finding it very interesting, especially since it talks about
    various libraries (such as PyGame) to help out your programming chores.
    If you're interesting in using Python in any way with games, I'd
    recommend getting it.

    On a side note, I found it for "free" at a place called ebrary
    (http://shop.ebrary.com). It only costs $5 to register but you can
    "check out" as many books as you want. The $$ is in case you want to
    copy or print from the books; it's a deal w/ the publishers so they
    can still get some money from the books.

    ebrary also has many other game programming books, such as AI
    development, "The Indie Game Development Survival Guide", 3d
    programming, etc. It's a good site if you want to look at a book
    before you buy it.
    crystalattice, Sep 27, 2006
    #5
    1. Advertising

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

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. demibee
    Replies:
    0
    Views:
    355
    demibee
    Dec 26, 2003
  2. Ian Davies
    Replies:
    28
    Views:
    714
    Gleep
    Aug 2, 2006
  3. Chris Angelico
    Replies:
    1
    Views:
    192
    Wolfgang Keller
    Jun 14, 2012
  4. Dietmar Schwertberger
    Replies:
    5
    Views:
    290
  5. Dietmar Schwertberger
    Replies:
    5
    Views:
    321
Loading...

Share This Page