War chest for writing web apps in Python?

V

Vincent Delporte

Hello

I'm thinking of using Python to build the prototype for a business web
appplication. The development and test machine is XP, while ultimate
deployment will be on a shared Unix web host.

What would you recommend I get, besides the Python engine itself? Good
IDE (Kodomo?) ? Some kind of GUI designer? Add-on's? Other tools?

Thank you.
 
F

faulkner

cygwin
http://www.cygwin.com/
try a few IDEs out to see which fits you best. IDLE ships with python,
and isn't significantly objectively worse than any other python IDE,
afaik.
GUI designers aren't necessary because there's usually so little
boilerplate code in any python toolkit, but, again, whatever works best
for you.
[wait, will you be running a GUI on a webhost?]
if you haven't selected a web framework, may i steer you towards
cherrypy? it stays out of your way more than any other web framework
i've tried. and i'm using it now to build a databased web-app for my
college.
http://www.cherrypy.org/
 
S

Sybren Stuvel

Vincent Delporte enlightened us with:
I'm thinking of using Python to build the prototype for a business
web appplication.

Why just the prototype?
The development and test machine is XP, while ultimate deployment
will be on a shared Unix web host.

That's just begging for huge problems. No insult intended, but it's
downright stupid to develop and test on one platform, and then deploy
on another. Every system nowadays is a Unix, except Windows. I suggest
you pick another system for development and testing.
What would you recommend I get, besides the Python engine itself?
Good IDE (Kodomo?) ? Some kind of GUI designer? Add-on's? Other
tools?

GUI designer for a web app? Nah, just learn HTML and you'll create
much better and smaller code that's more flexible. As far as IDEs go,
VIM is all I've ever needed.

You might want to check out Django as the web engine. It's powerful
and easy to learn and use.

Sybren
 
M

Mr BigSmoke

For IDEs i recommend Wing IDE (its really good but comercial.. :( ),
pydev for eclipse and also SPE.

For GUI designer... it depends of wich kind of app u'll develop.

For web apps try cherrypy.. it's wonderfull and simple... U can also
try zope and plone (the they are less simple....)

cheers

Fabio
 
D

Dan Sommers

Vincent Delporte enlightened us with:
That's just begging for huge problems. No insult intended, but it's
downright stupid to develop and test on one platform, and then deploy
on another. Every system nowadays is a Unix, except Windows. I suggest
you pick another system for development and testing.

We just did that at work (developed on the corporate-issued non-Unix
computers and then deployed on a Linux box), and had no problems at all.
In a former life, I was a long-time embedded system developer, where we
*always* developed on one platform and deployed on another. My
experience with developing on your deployment platform is that it's too
easy for platform dependencies to sneak in without being caught.

Regards,
Dan
 
S

Sybren Stuvel

Dan Sommers enlightened us with:
We just did that at work (developed on the corporate-issued non-Unix
computers and then deployed on a Linux box), and had no problems at
all. In a former life, I was a long-time embedded system developer,
where we *always* developed on one platform and deployed on another.
My experience with developing on your deployment platform is that
it's too easy for platform dependencies to sneak in without being
caught.

I agree with you there. My bet is that you also *tested* on the
deployment platform, though.

Sybren
 
N

Nick Vatamaniuc

Vincent,

If you plant to deploy on Unix/Linux, why develop on Windows? I would
suggest to make a partition on your Windows machine and install some
popular Linux distribution (I use Ubuntu but there are others too.)

The biggest benefit will come from the fact that you will have access
to a large pre-packaged set of IDEs, utilities, libraries, python
modules, all kinds of Apache modules and so on. Mind you, there are
probably more Python IDEs and tools that work better(natively) in Linux
than in Windows (ipython and Eric3 are the ones that come to mind).
This way you can quickly try various IDEs and tools for a couple of
days to find what you like, just do 'apt-get install <my_new_ide>' (for
Debian based distros like Debian and Ubuntu that is) and your new IDE
will appear in the Programming menu.

As far as a specific IDE, I already mentioned Eric3, I think it is the
most polished one. I have tried Komodo, SPE, pydev and Emacs. I have
settled on Eric3 and sometimes I use Emacs (please don't start editor
wars over this, these are just my personal views!). I found Komodo to
be too slow on my machine, SPE was also slow, was crashing on me and
had strange gui issues, pydev works with Eclipse so you have to
install that too, also found it to have quite a few rough edges. Emacs
is actaully pretty good if you got used to the keys, but lacks basic
refactoring and other small helper tools that IDEs have. Also I
found ipython to be a very useful replacement for the standard Python
prompt.

Not sure what kind of a GUI designer you would want for a web based
application. Or is it for an administration module with a gui? In that
case you'll first have to choose the GUI toolkit. The default one that
comes with Python is Tk (Tkinter) and there are others like wxPython,
PyGTK, PyQT and so on. In general though, the time spent learning how
to design a gui with a designer could probably be used to just write
the code yourself in Python (now for Java or C++ it is a different
story... -- you can start a war over this ;-)

Hope this helps,
Nick Vatamaniuc
 
V

Vincent Delporte

On Fri, 28 Jul 2006 08:06:10 +0200, Vincent Delporte
(snip)

Thanks everyone for the input!

For the IDE: Ideally, I'd like something modern that uses language
wordlists (to show syntax, variables, etc. in different colors), a
window that lists all the procedures so I can easily jump from on to
the other, possibly an edit window that can fold code with the
familiar + sign in the left side, etc. I'll check out WingIDE and
Eric3.

For the GUI builder: It's just that I'm used to Delphi, ie. drawing
the interface with a mouse, but I guess the equivalent is just a
WYSIWYG HTML editor like DreamWeaver etc.

For the application engine: Indeed, I hesitate between CherryPy and
Django, as I've read a lot of nice things about both.

Hopefully, finding web hosters that support Python and those
frameworks won't be an issue?

Thanks.
 
D

Dennis Lee Bieber

For the IDE: Ideally, I'd like something modern that uses language
wordlists (to show syntax, variables, etc. in different colors), a
window that lists all the procedures so I can easily jump from on to
the other, possibly an edit window that can fold code with the
familiar + sign in the left side, etc. I'll check out WingIDE and
Eric3.
Well, syntax color coding, and block folding are supported by
PythonWin (comes with the ActiveState Windows install) and SciTE.

The structural browser isn't as easy...
--
Wulfraed Dennis Lee Bieber KD6MOG
(e-mail address removed) (e-mail address removed)
HTTP://wlfraed.home.netcom.com/
(Bestiaria Support Staff: (e-mail address removed))
HTTP://www.bestiaria.com/
 
D

Dan Sommers

Dan Sommers enlightened us with:
I agree with you there. My bet is that you also *tested* on the
deployment platform, though.

You win that bet. (We actually tested on both platforms.) *Not*
testing on the deployment platform is *definitely* asking for trouble.

Regards,
Dan
 
R

Rob Sinclar

I'm thinking of using Python to build the prototype for a business web
If you plant to deploy on Unix/Linux, why develop on Windows?
Because it's worth it. And faster. Read below.
just do 'apt-get install <my_new_ide>' (for
Debian based distros like Debian and Ubuntu that is) and your new IDE
will appear in the Programming menu.
Nah I prefer to search half an hour on google, download an exe-installer
for which I'll never see what it does or contain, double clic on it to launch
installation procedure, clic 15 times on "ok" and I'm done.
On the other hand aptitude is the worst thing ever for dependencies and
that kind of stuff.

Best Regards,
Rob
 
V

Vincent Delporte

You win that bet. (We actually tested on both platforms.) *Not*
testing on the deployment platform is *definitely* asking for trouble.

I did intend to validate it on the deployment platform. It's just that
I prefer to work in Windows than Linux.
 
V

Vincent Delporte

Well, syntax color coding, and block folding are supported by
PythonWin (comes with the ActiveState Windows install) and SciTE.

The structural browser isn't as easy...

Thanks for the input.
 
N

Nick Vatamaniuc

Aptitude, are you still using that? Just use Synaptic on Ubuntu. The
problem as I wrote in my post before is that for some IDEs you don't
just download an executable but because they are written for Linux
first, on Windows you have to search and install a lot of helper
libraries that often takes quite a bit of time.

And why do you want to spend half an hour searching for stuff when you
can do just spend 1 minute in a nice graphical installer or use apt-get
install on the command line to install it.

I am using Ubuntu primarily because it has the .deb system which I
found to be much better mentained and which deals with dependecies a
lot better.

Nick V.
 
R

Rob Sinclar

Aptitude, are you still using that? Just use Synaptic on Ubuntu. The
problem as I wrote in my post before is that for some IDEs you don't
just download an executable but because they are written for Linux
first, on Windows you have to search and install a lot of helper
libraries that often takes quite a bit of time.

And why do you want to spend half an hour searching for stuff when you
can do just spend 1 minute in a nice graphical installer or use apt-get
install on the command line to install it.

I am using Ubuntu primarily because it has the .deb system which I
found to be much better mentained and which deals with dependecies a
lot better.

Nick V.

Synaptic is using aptitude as back-end (this is serious).
I also find deb system being the best. Managed with aptitude, not apt.
Windows is definitely worth the effort.

Best Regards,
Rob
 
M

Marc 'BlackJack' Rintsch

Rob Sinclar said:
Synaptic is using aptitude as back-end (this is serious).

Why can I deinstall aptitude without deinstalling synaptic then!?

Ciao,
Marc 'BlackJack' Rintsch
 
D

Diez B. Roggisch

Synaptic is using aptitude as back-end (this is serious).

No. It uses apt.
I also find deb system being the best. Managed with aptitude, not apt.
Windows is definitely worth the effort.

aptitude as well as synaptic both depend transitive upon debconf, which
depends on apt.

Use

apt-cache dotty synaptic

to explore the dependency-graph.

Diez
 
R

Rob Sinclar

Synaptic is using aptitude as back-end (this is serious).
Why can I deinstall aptitude without deinstalling synaptic then!?

Ciao,
Marc 'BlackJack' Rintsch

Hi,
This is because Aptitude is an independant console application
that is very useful to users working on linux machines without
X server installed.

Synaptic is the interface which leads the underlying application.
Synaptic is often installed with a
$ aptitude install synaptic

Best Regards,
Rob
 
G

gslindstrom

Sybren said:
Vincent Delporte enlightened us with:

Why just the prototype?

I don't know about Vincent, but I once worked in a "C++" shop where all
other languages were actively discouraged. I would build my prototypes
in Python to show proof of concept because I could do it quickly. It
was also nice to show project managers so they could verify it was what
they wanted us to build before we dedicated a full time effort to
development.

I recall once prototype I created in wxWindows; when I showed it to my
boss he exclaimed "That's Python!?". He was amazed because it looked
just like the windows apps we developed!

Having moved on to another company where we develop in Python
full-time, I hear my former shop now has many Python (and Perl and
Java) programmers.
 

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,580
Members
45,055
Latest member
SlimSparkKetoACVReview

Latest Threads

Top