Python suitability

Nemeth Miklos nemeth at iqsoft.hu
Mon Dec 13 16:25:30 EST 1999


>       From:
>            bobyu5 at mailcity.com

> Everybody seems to be using C++ or Java for projects of this scope; has
> anybody tried to do something similar using Python, or even Perl?
>

I was involved in Java projects, and it was common to rewrite twice or more
times the entire source code to circumvent bugs, and extremelly poor
performance.
Using C++ was a bit better than Java but some important OO features are
poorly or not implemented in several C++ compilers.
I cannot imagine slower program than a Java GUI application, and I cannot
imagine slower development process than writing C++ applications.




>       From:
>            boud at rempt.xs4all.nl (Boudewijn Rempt)
>
> If you really need to use a variety of databases, then you probably
> can't rely on stored procedures/packages to do the server-side work,
> because there isn't a database where those work in the same way. And
> even so, support for, say Oracle packages, is skimpy outside Oracles
> own tools. I'm going to install Oracle next week to try whether they
> can be accessed from Python, though.
>
> You really need some middle man, if you go the various databases
> route, and designing decent middleware is difficult, in my experience.
>

Do you have a more precise idea? I am also interested in using middlemen
(middleware). I evaluated Fnorb and found it perfect.

>
> I don't think TK is really suitable -

I am very sad! Then why there are any effort to support TK by Python?

> but if your application interface
> is simple enough a web interface should suffice - and those can be as
> slick as the graphics designer you hire can make it. Take a look at
> WxPython or PyQt (that also seems to run under Windows).

I used Qt (but not PyQt) and it is a fantastic library, not only GUI but
general purpose C++ object library (or rather framework). I would go for
it.

>
> I do find Zope a bit slow - even when I browse a Zope database on a
> machine on my local network.
>

Again I am very sad! I wanted to start a new department in our company
developing ecommerce applications. I am on the point of selecting a
development environment. Untill now I would voted for Apache+SSL + Zope
2.1, but I am also thinking of using Apache+SSL + PHP or ApacxheSSL +
mod_perl.
Do you not think Zope would be a good platform for our projects?

>
> I haven't ever seen Outlook, but a basic tree-to-the-left,
> data-on-the-right interface isn't too difficult to make. If you are
> prepared to get rid of the web interface, you could use WxPython, I
> suppose, though that doesn't impress me as being ready for the
> enterprise
> ;-). Also, remember that there are very few database-ready widgets -
> you will have to write the basics yourself.
>

Do you have more arguments for not taking WxPython enterprise-ready? The
lack of database-ready widgets does not bother me, as I access databases
through CORBA (Fnorb) servers.

>
> I wonder whether you have enough developers who are proficient with
> Python and all the other new technologies you want to use - Python is
> good, but it isn't a panacea,

How many time (days or weeks) do you think is needed for a good C++
programmer to become a good Python programmer?

> and trusting a new tool to work miracles
> is a recipe for disaster. I'm quite convinced that even VB can produce
> good applications, in time, in budget ;-).

We have at our company a department using Microsoft tools. They produce
loss for five years. I am a bit afraid of using any Microsoft tool.
However, our department uses no Microsoft development tools at all: we
produce outstanding revenues for five years. Microsoft tools create revenue
only for Microsoft!

>
> I've never seen C++ or Java used for large-scale database applications.
> Most projects I've seen use Oracle Forms, Visual Basic or Powerbuilder
> or things like that.

I was also involved several of this kind of projects: never again! I would
never use again any proprietary language or development tool.

> But then, what's large? A large number of tables
> and screens, a large amount of data, or both? And then, what's the
> domain of the app? Transaction oriented, data warehousing, information
> serving?
>
> > Any anecdotes or recommendations would be heartily appreciated!
>
> I'm trying to build a small-to-mid-range multi-user database application
>
> using Python and PyKDE/PyQt as a gui.

This sounds interesting! I am also interested in PyQt.

> I figure people who want to use my
>
> application can afford buying another PC to serve out X11 applications
> to their legacy desktop systems (Windows and Mac). Besides, I want a
> read-only browser interface. The architecture I'm working on includes
> a database server, which I connect to using a DB-API II compliant
> interface, a SQL translation layer, an application object layer, an
> application server that dishes out XML-formatted data to the client gui
> or to the client special purpose http server, that serves the various
> browser clients. It's a hobby project, though.

This is quite serious to be only a hobby project. Several corporations
would pay a lot of money having a programmer being capable of designing and
implementing an application using this architecture.
I guess yoiu have to create VB programs during work hours! Poor man, I
would not do that! You should change your employer!

> My bosses don't want
> another programming tool in the shop, after the debacle with VB 5.0.

Your bosses may be complete idiots! VB5 and any other VB are rubish!
I am also a boss of my company, and we always seek new technologies and
tools to be able to create better applications within budget.
And we always seeking new talented guys to be able to create outstanding
software.
A company using VB would not be a competitor for us. I am sure we are not
the only company focusing on leading edge technology.

Miklos Nemeth
IQSOFT






More information about the Python-list mailing list