473,396 Members | 1,886 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,396 software developers and data experts.

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

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.

Sep 25 '06 #1
4 1380
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
Sep 25 '06 #2
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.

Sep 26 '06 #3
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.
Sep 26 '06 #4

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.

Sep 27 '06 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

4
by: Naran Hirani | last post by:
Hi fellow Netters, I need to re-write a very old C/C++ application written in the days when MS/PC-DOS was king. The reason for the re-write is that the application needs some new functionality,...
24
by: sundew | last post by:
Hi all, I am developing an open source DHTML project named Wednus Window. http://wednus.com Wednus Window is a DHTML Web-Application Windowing System. It shell websites/web-applications with...
4
by: Olaf Baeyens | last post by:
I do not want to start a ASP versus PHP discussion, because I favour ASP(X), but I seek advice since I have no clue about PHP yet. I want to work with a friend on some web designs. At this point...
4
by: trond | last post by:
Hello all, Before I start I'd like to point out that I am a complete novice when it comes to asp.net - My background is in network and operating systems, and although I have been doing a bit of...
7
by: gordon | last post by:
Hi I am learning C# from books. I am trying to understand the use of the word 'Static' on a method. When i look in the autos area (I often like to see what values are being resolved) i see...
8
by: shuisheng | last post by:
Dear All, We meet some problem in our project development and sincerely ask for your kind advice. We took eight months to develop a project system with about 50,000 lines of code. The code is...
0
by: waggledance | last post by:
I was wondering if anyone here might be able to offer me some advice for someone who can only use Macromedia Dreamweaver MX. I am (clearly!) a web design novice so apologies in advance if this is a...
9
by: Mo | last post by:
After a little PHP education, my first project (to get my feet wet) is making an employee time-tracking program for our small business. *** ANY SUGGESTION, THOUGHTS, OR ADVICE WOULD BE WARMLY...
14
by: Mo | last post by:
Hello All, I'm investigating moving some Access 2003 applications over to SQL Server 2005, using Access ADP as the front-end. It's would also be very important to use stored procedures and...
0
by: Chris Rebert | last post by:
On Mon, Nov 17, 2008 at 10:42 AM, Abah Joseph <joefazee@gmail.comwrote: Have you considered basing this off existing software for schools, like one of the programs listed on...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.