GeneXus to Bring Major Changes to IDE with ‘Rocha’
January 9, 2007 Alex Woodie
ARTech is moving forward on a rewrite of GeneXus, its fourth-generation language (4GL) development environment, and should be ready to announce its availability later this year, company officials recently told IT Jungle. GeneXus version 10, which goes by the codename “Rocha,” will be a complete rewrite of the IDE, and bring features such as a process modeler, an integrated portal, and pattern-based development to iSeries developers using the tool.
GeneXus is an advanced IDE that’s used by thousands of OS/400 and Windows developers around the world since it was first introduced nearly 20 years ago. ARTech, which is headquartered in Montevideo, Uruguay, and has American offices in Chicago, is an IBM business partner, and counts numerous iSeries ISVs, including RJS Software, Software Information Systems (SIS), and Mize Houser, among its customers.
The company is actively developing the IDE to keep it up-to-date with evolving requirements. With version 9, which shipped in December 2005, and which we covered last July, the company introduced support for AJAX, among other new features.
With Rocha, or version 10, the company is undertaking a complete rewrite of the IDE to prepare it for the next decade of progress. Officials say the rewrite is necessary to open up the IDE and take advantage of new technology.
“We wanted an easier way for our users to integrate and add-in features to GeneXus,” says Veronica Buitrón, executive vice president of consulting services with the American subsidiary. “The architecture of GeneXus itself wasn’t layered. It was very centralized and very connected. It was very hard for me, as GeneXus, to expose to you, GeneXus developer, so you can expand on that. If its integrated and connected, you can’t easily expose” functionality.
The rewrite is being undertaken at ARTech’s research and development laboratories at its headquarters in Uruguay using Microsoft .NET tooling. (While about half of its customers are iSeries shops, GeneXus itself was written using C and its offshoots, as many IDEs are.) The underlying structure of the GeneXus knowledgebase, or KB, is being changed to enable the new features to be added, according to Buitrón.
“As we progress, as technology progresses, the lab has more tools to build better things, such as patterns,” she says. “What we want to have is an architecture to have all those things seamlessly integrated into the IDE–the process modeler, the portal tool, patterns. They will in Rocha, but not in 9.0.”
It will be easier for developers to map process flows with the new version using GXFlow and GXFlow’s process modeler. While GXFlow worked with the IDE in previous releases, they were not integrated as well as they could be. With version 10, users will gain the ability to drag and drop items into the process modeler, which will make it much easier to use, Buitrón says.
The new version will also introduce a new object type, called the Data Provider. This new object is expected to boost developer productivity by making it easy to duplicate code. If a developer wants to use the same type of functionality in more than one place, they can use the Data Provider to incorporate it into the program.
Similarly, the new version will introduce a new Data Adapter that saves access paths to data. Anytime a developer wants to build access to certain data, such as customer status, they can do so quickly without a lot of manual coding using a Data Adapter. “Imagine a stored procedure, but more at the level of the KB,” Buitrón says.
Users will also gain the capability to create their own types of objects that sit over the KB. Previously, a set of APIs provided external access. “You could do certain things, but couldn’t go into heart of it, couldn’t add objects,” Buitrón says.
Version 10 will also gain full-text search capabilities in the KB, which will make it much easier for developers to find specific areas of an application, such as help text, screens, business rules, or reports, instead of searching around aimlessly until they find it, Buitrón says.
Ongoing application maintenance will also be faster and easier now that GeneXus will make database-level changes in parallel, instead of making the changes sequentially. “We’ve also improved the efficiency of the SQL-generated code,” Buitrón says.
Early feedback of Rocha (named for a town in Uruguay) has been positive, and some users are eager to put it into production already, says Roy Hart, GeneXus USA’s vice president of business development. “They want it yesterday,” he says.
Whether or not new code generators will be introduced when Rocha ships has yet to be decided. Previously, officials said the company would provide code generators for one of the scripting languages, such as PHP or Perl, with version 10. The company currently provides a range of generators for RPG, COBOL, Java, C#, Visual Basic, Visual FoxPro, and HTML.
Alpha testing for Rocha started in late 2006, and betas will be conducted this year until the product is ready to be released, which the company expects to occur later this year, hopefully by the company’s annual user conference in September.