As a summary, so far as you see, these great ERPs are all written in scarcely used languages ( not using C, C++, Delphi, C#, VB, Java, PHP, ASP, JSP).
Yes because to make an ERP ... you need some years of development. All the running ERP systems started in the 90's or maybe start of 2000 and they were developed then.
If you would start now to develop an ERP would what would you choose?
OK.. now this is my experience so far:
Well ... I just started working with Progress 3 months ago. For me is like jumping back in the Past with 10 years.
I come from SQL, C++, C#, strong PHP background(certified) and I really see cannot see the "strong" part of Progress. I use it because the
company where I work uses it, and they have an interesting ERP build on it.
BUT... we live in 2008 Year ... and the Posibilities with Progress are so limited that I really wonder.
First:
the support, like this forum.
If you look at Progress there are about 2000 active members, if you look at a Java, C, C#, Delphi, C Builder, PHP forum... there are millions of members. So if you post a problem, you get the answer quite fast. Not speaking about Open Source or very cheap components that you can find for the "others".
Then some issues with progress that I've noticed (maybe some of these are missuderstood or maybe I didn't find the solution for them)
- the pages are static, if you want to make something dynamic... you're really tight, very very few options. There are no pointers and those
handlers are just limited. The design is very static… you have to bind everything
- Looping through frames to get all the elements!!!!
- Cannot access object like the elements: obj.x.y.z works not. Like window.frame.object.propery ...
- Program closes at some errors without any warning
- Cannot separate logic from layout. The layout is too TIGH bunded with the DB.
- Cannot use classes in the real sense of OOP.
- Simple commands: like: i++, i--. I++=2; i--=2; I = a ? b: c; i=j++;
- regular expressions !?
- string functions, array functions simply missing. or only basics.
- arrays in progress!? only a[1] a[2]...
- maybe lists?
- functions with predefined parameters!? etc etc
- You load a page with a lot of frames although there are only a few used…
- Interaction between windows is null, no pipes, no process communication
- Dynamic Queries can be build very hard… must use buffers. Very complicated and not friendly.
- Debugging and Errors:
- Error debugging: terrible. In most cases it does not tell you where the error happened, just a limited message with an error number. No line number… nothing
- Runtime errors are even worse; sometimes you have no hint of what and where happened. Sometimes the process just DIE.
- The Queries cannot be debugged, and explained to see exactly how they are executed, what indexes are used etc for performance issues.
- Cannot stop a running process just by killing the process, this should not be a problem, just that The AppBuilder runs in the same process as the program. So by killing the running process you close practically everything.
... I think I could write here at least 2 pages of examples.
Then... the "native" Graphic Objects. Did you seen the .Net grid and what you can do with that? You can do anything you want(almost)
... some will say use OCX... ok, we use it, but that's another sad story.
Then the Appbuilder... I wonder if you can compare .Net IDE, Zend IDE, NuSphere, Eclipse with Appbuilder. And the debugger... very limited.
About performance... I really think that an Open Source DB like Mysql or PostgreSql will run faster than Progress.
I've not seen yet the Progress Eclipse, i've read that is really buggy.
Ok, now all these been said, I have to live with these. This is not the problem.
My question is if Progress will be further developed? And I mean
DEVELOPED... Better GUI, functions libraries etc.