RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX


Jess Inventor Opines About Rule Engines and Java : Page 2

Dr. Ernest J. Friedman-Hill, developer of the Java Expert System Shell (Jess), discusses the history and future of his rule engine and speaks out about the application of artificial intelligence and expert systems in real-world Java development.

JM: What is the Next Evolutionary Step for Jess?

EJF: The biggest feature of Charlemagne will be a graphical IDE. It's going to be packaged as an Eclipse plug-in. There is an editor with code completion and syntax checking as you type, a debugger, an explorer that lets you probe the relationship between templates and rules, and a rule database.

Charlemagne (Jess 7.0) is going to be packaged as an Eclipse plug-in.
There are also going to be a number of engine enhancements, including some alternative pattern-matching strategies. Nevertheless, compatibility is really important: the plan is to keep full source compatibility with Jess 6.0.

JM: In the theory of technology-transfer, there is the concept of the S-curve, which maps the lifecycle of an innovation from inception to obsolescence. I have seen an often-quoted figure of 20 years for the lifespan of a high-level programming language. By that standard, C++ should be retired now and Java is approaching middle age. Where is Jess on its S-curve?

EJF: After their initial rise and fall due to excessive AI hype, rule-based systems in general are undergoing a renaissance. Jess itself is now a mature product but it is still innovating; I expect its user base to continue to grow with the market for the foreseeable future.

There is more freedom for innovation with Jess than with a specific high-level language, which means its curve may well be more wiggly. Underneath the Jess language itself there is the rule engine; these two layers can evolve independently. For example, in Charlemagne, we'll see native support for an XML rule language. This will open up a new world of possibilities, bringing in the power of XSLT and other XML-based tools. Jess will thus support a whole range of different rule languages.

JM: I'm concerned that AI/expert systems experience is still too esoteric for most employers of Java programmers to value as a skill. Am I wrong? How does a Jess developer market him/herself?

The cardinal rule of defining AI [is] if it works, it's not AI anymore—it's just programming.
EJF: You're right to say that AI experience isn't going to impress many potential employers. But I just did a search at monster.com for business rules and found 1,200 job listings. Like anything else, it's all in the marketing. The cardinal rule of defining AI [is] if it works, it's not AI anymore—it's just programming.

JM: You mentioned the javax.rules API in your book. Would you explain the details of how this impacts Jess developers and what it means for Jess's future?

EJF: The javax.rules is a standard API for accessing rule engines. It's primarily intended to be used in the J2EE environment. The reference driver being shipped with the javax.rules package is a Jess driver! Charlemagne will include an improved version of this driver.

The people who are really going to benefit from javax.rules are those who build a lot of heavily 'componentized' business applications, and want to be able to migrate between rule engines the same way they might migrate between databases.

Close Icon
Thanks for your registration, follow us on our social networks to keep up-to-date