Should future development of your converted application be in Java or ABL?

The Short Answer... Either, or both. It's up to you.

Choose Your Language, Deploy With FWD

It is a common misperception that using the FWD technology requires that you shift all future development to Java. There are a number of advantages to doing so, but this is not the only use case for FWD. Once you have your ABL application successfully converting with FWD, you have the option to cut your development over to Java, to continue developing with the ABL, or both. You choose what makes sense for your team, your application, and your business.

If you decide to go forward developing your application in Java, it is possible to cut over at any time. Developers who wish to continue writing ABL code indefinitely can do so as well. You might decide some areas of your development are best suited for one language and some for the other. FWD supports this mixed development model.

This flexibility is made possible by the characteristics of the conversion process:

  • It is fully automated, so there is never a need to manually edit the converted code to get it compiling and running.
  • Conversion runs as a non-interactive batch job and is easily integrated in a larger build process.
  • An entire application can be converted in a batch.
  • The process is repeatable, allowing ABL code changes to be integrated at any time.
  • In most cases, individual files or arbitrary sets of files can be converted on their own, which is convenient for development and testing.

Why Continue Developing in ABL with FWD?

Continuity and Productivity

The decision to use the ABL for ongoing development of an application converted with FWD basically comes down to what is best for your situation. Your existing developers are the foremost experts in your application. While their application domain expertise will transfer to the converted code base, it may ease the overall transition away from the OpenEdge platform if they can continue developing in the same language that was used to write the application.

Many long-time Progress developers are more productive using the ABL than they would be, at least initially, developing in Java. For a team of experienced ABL developers, this productivity advantage may outweigh the ecosystem benefits of Java. With custom conversion techniques or some planned enhancements to ABL syntax and features in FWD, ABL developers can integrate with hand-tooled Java code or third party libraries directly from ABL code.

ABL Enhancements

Consider that as an open source project, FWD offers the freedom to enhance the ABL itself. Have you ever wanted to actively participate in imagining, designing, implementing and testing new language syntax and features? Since FWD is a completely independent implementation of the language parser and runtime, this is possible. As long as new features do not conflict with existing syntax and functionality, they can be added to the FWD implementation. Please review this wiki page to see some of the ideas under consideration to enhance the language, including multi-threading, custom user interface controls, layout options that play well with the web, theming/skinning features, and more.

Learn How

For more information on staying with the ABL while leveraging FWD to deploy your application, see this wiki page. Regardless of the development language you choose, deploying with FWD means you realize the business and technology benefits of eliminating the OpenEdge platform.