Fog Creek Software
Discussion Board


We all know that RAD environments, like Delphi, Visual C# or Visual Basic are very productive.

I think that they got an undeserved bad reputation because of VB, but RAD itself is an excellent idea.

All these years I've been waiting for a next generation RAD environment, but couldn't find one.

Compared to Delphi 7, Visual Studio .NET doesn't add a lot.

In fact, the only thing I find superior in VS .NET is the easy installation of components. In Delphi, it's a bit harder to install components.

So.. I wonder, how can we build a next generation RAD tool? A VRAD (Very Rapid Application Development) tool?

One way would be to build it based on the Python programming language.

The language makes development very fast. It is, from a productivity point of view, superior to C#, Delphi or Java.

Of course, there is no "double the speed of programming" type of gain, but I would not be surprised if rigurous measurement of the speed gain would be over 20%, and this, in my opinion, is a very significant figure.

So, a next generation RAD tool would use the Python programming language to gain further speed, when compared to current generation RAD tools like Delphi or Visual C#.

Such a tool would need:

1. A good component architecture, and good visual components.

That would probably mean giving up on the cross-platform GUI components concept, and only program this for Windows.

I know that it doesn't have to be this way, but it just makes things a lot easier.

2. A good library for database access, and for binding controls to database fields.

3. A way to solve the distribution problem - I should be able to "build" the project and get a standalone .EXE, even if it's interpreted. True compilation would be even better.

I know there is BOA Constructor (a nice RAD for Python), but it is buggy and doesn't really solve the 3 problems mentioned above.

So, why doesn't any company start writing such a RAD environment?

A RAD environment to help us develop faster than the current generation of RAD environments.

The new VS .NET seems to be oriented towards large enterprises. They want to get them to switch from Java, probably.

But many of us developers want a tool which simply helps us develop faster.

If I had the financing, I would start making such a tool.

John K.
Monday, July 28, 2003

Adaptability is pretty much the keyword.

Because, like you said, you need financing. If you made a tool but lacked the funds(or were too dumb to spend them, in Borland's case) then you'd find yourself not known by the pointy-haired in a corporation. For them, the world revolves around XML, JAVA and VB because it's the terms they've heard of, or know is made by a Big Corporation(Microsoft, Sun, IBM, Oracle, ...). So even if you managed to pull it off, you'd still need to persuade those pseudo-wannabe-tech savvy people making the decisions. They're the real robstacle.
A good real-life example of this is Borland's Delphi. An incredible tool, one I personally hold very dearly, but let's face it: they have no clue how to market software if it came and bit them in the proverbial you-know-where. Again, most people don't know Delphi except for the possibility of the greek oracle (which, ironically, could help them..).

Mickey Petersen
Monday, July 28, 2003

You forgot number one which should be:

"A way to bind to/embed COM objects or a have a set of components that gives the developer to every bit of functionality that they can get from currently available 3rd party components."

Until then you will have to pry my VSFlexGrid, ADO, and Active Toolbars from my cold, dead fingers (because that's the only way you'd get me to use it :-)

Monday, July 28, 2003

The question is, why.  I mean, now that i've been developing C# for a while, and java for a little longer, I can bust out basic stuff really quickly.  I've developed my own little mini-"RAD" systems.  In fact, i'm sure if someone has been programming C++ long enough, they've devleoped a system for busting out apps possibly as fast as I do it in C# or java, through good code re-use.  i think VB is about as dumbed down as it gets.

Tuesday, July 29, 2003

Why? To further improve the development speed gains of current RAD environments like Delphi and Visual Studio .NET.

If you don't have experience with Python, you have no idea how much it can accelerate development.

Unfortunately, when comparing with Delphi, all the gains made because of using Python are spent developing the GUI of the program.


Python = fast for guts programming

Delphi or VS .NET = fast for building GUIs

It is only natural to combine these 2 things, and get a development system that is fast at everything.

VB is very dumb, indeed.

John K.
Tuesday, July 29, 2003

> In fact, i'm sure if someone has been programming C++ long enough, they've devleoped a system for busting out apps possibly as fast as I do it in C# or java

I used to work in GUI (MFC) a couple of years back. We used to develop small GUI apps. We had developed our own App Wizard (VC++ gives you that) to crank out the very basic UI code instantly. The basic UI would be the same in all the applications. So it was a really good idea. We only then had to worry about the specific features that would go in each app.

The One You Loved (TOYL)
Tuesday, July 29, 2003

John K.  -- For all I know you're the one who originally posted about it here on JoS.  But in case not, and in case you missed it, have you heard of "PythonDelphi"?  It's a project by a guy in Australia to integrate Python into Delphi so that Python can be used for the guts of a program and Delphi can be used for the GUI:

Herbert Sitz
Tuesday, July 29, 2003

What about wxDesigner?

Tom (a programmer)
Tuesday, July 29, 2003

John K

What features you would like in your V-RAD tool? Do you mean improvements to the developer environment? Or improvements to the language used for development? If the latter, what are the language elements in python that would give 20% improvement over c#, delphi and java?

I'm asking because I'm on the lookout for new features for Lingo ( ). I'm interested in the design of VHLLs (very high level languages) and it's important to get ideas.

Bill Rayer
Tuesday, July 29, 2003

There's also always PythonCard:

Herbert Sitz
Tuesday, July 29, 2003

*  Recent Topics

*  Fog Creek Home