D
danielb
Guest
I would disagree with the comment of "more reliable or easier to maintain". These languages come with frameworks, frameworks that are supported, maintained and popular in the community. With an "inferior" language like C#, I got 100% compile time checking (unless I did something like reflection). With the ABL, that only got added for class methods - no compile time checking of parameters for procedures or functions. With an "inferior" language like C#, I can get frameworks that support package and dependency management (nuget). Progress? Nope, that's all up to the individual development house. With an "inferior" language like C#, I can get supported frameworks to do dependency injection, mocking, and unit testing. Progress? ABL Unit, but no support for Dependency Injection or mocking of a database to run tests in memory. With an "inferior" language like C#, I need a connection string only to create/update a database - the broker manages all that. With Progress, I more permissions to the server to create the database and database folders, generate the database, load the schema, etc. Making claims like "inferior" is fine when talking internally, but when development houses have to look at real world problems like the cost of training, the cost of hiring specifically for the ABL, that argument tends to fail. When we can take any graduate from university and have them productive in C# or Java quicker than the ABL, that's a real business impact that needs to be addressed.
Continue reading...
Continue reading...