Network/multi-user program

Lele Gaifax lele at
Tue Jul 22 08:32:20 CEST 2014

Monte Milanuk <memilanuk at> writes:

> On 2014-07-21, Lele Gaifax <lele at> wrote:
>> Monte Milanuk <memilanuk at> writes:
>>> How hard was it to migrate from a desktop app to what you have now?
>> Well, basically I rewrote everything, there's nothing in common. The
>> original application was written in Delphi, using Paradox tables, no
>> i18n, no multiuser, no PDF printouts... On the other hand, with Python
>> is far easier to get something working, and databasing with SQLAlchemy
>> is a pleasure. On the frontend, ExtJS is impressive, even if it has its
>> own drawbacks.
> Any hints/opinions on what those drawbacks might be?  I know literally
> almost nothing about JS.  I worked thru a short generic tutorial a couple
> years ago, but nothing like these libraries I see people talking about
> now like jquery, angular, ext, and so on.  Hence my hesitation at adding
> another learning curve on top of python and the various libraries needed
> for this first 'real' project.

I completely agree with Roy on the language itself, it has several
tricky parts that require some training to learn how to avoid, "defects"
that are inherent to language and to the syntax, that no framework or
library can really eliminate. There is a very good book by Douglas
Crockford, "JS: the good parts" that I recommend reading.

On the framework, ExtJS is the one I know better and its quite good and
powerful: it has a dual license, GPL for free software projects and a
commercial version, very good documentation and a lot of users. My main
complaint is about their (Sencha's) release policy which frankly sucks,
on both sides (free and commercial): they do not have a clear roadmap,
you report bugs in a forum and from then on you cannot know if and when
the bug gets fixed, or even released. They do not promise any kind of
backward compatibility, and several times they irremediably broke the
internal implementation of a few widgets I used from one minor version
to the next and eventually released a proper fix only for the commercial
version. They assert to have an extensive suite of unit and functional
tests, but sometime I have the doubt they do not run it as often as one
would expect :-)

On the other hand, it has good and extensive examples, so the learning
curve is not so steep (I'm clearly biased here, but I introduced several
young developers to that environment and that's what they said too).

Anyway, don't be scared: start on the Python side, laying down the
foundations of the application, the database model, the main business
logic, unit and functional tests, and so on. Any kind of frontend, be it
a traditional desktop application or a web based one will build on that.

ciao, lele.
nickname: Lele Gaifax | Quando vivrò di quello che ho pensato ieri
real: Emanuele Gaifas | comincerò ad aver paura di chi mi copia.
lele at  |                 -- Fortunato Depero, 1929.

More information about the Python-list mailing list