Part of my quest to learn more about rules-engines involved the desire to find a really good approach for knowledge management. The short story is that when you work with a subject matter expert (SME), you need to find some good way to capture the domain data and behavior, the rules, actions, and everything else necessary to make sense of things. This need isn’t unique to knowledge engineering and AI, of course, all engineers face it, especially software engineers. Object-oriented analysis and design is one good approach, and there seems to be a lot of overlap. One interesting outcrop of the need is the Insurance Application Architecture, an OO model (and more) to help insurance companies manage their intellectual assets.
The client developed a custom tool to manage the concepts (although customizable tools like MagicDraw certainly are an option, too), and I had always wondered if there was some standard way of approaching that kind of problem. While researching rules-engines I was delighted to learn about knowledge engineering, the semantic web, and consequently ontological engineering and management.
Specifically, digging into the tool Protege-OWL, I found something quite similar to what I’d seen developed as custom. Although it is too soon to say they are equivelant, it is pretty interesting to find out. The fact that there is a Jess plugin (JessTab) to let you play, even better!
Category: Link
The History of Joy Division’s "Unknown Pleasures" Album Art
Rapid and Concise Communication with SBAR
Here is an excellent, excellent algorithm for communicating. Thanks Doug.
Essentials of Garbage Collection
Another great PLT effort for the backlog:
How do we teach students the essential ideas behind garbage collection?
CB750F: Day 16
Tonight I installed the gaskets on the carb connecting hardware with incident. Picked up the float valves and installed them. Measured and adjusted the float height from carb body to 15.5mm exactly and realized that I had done it on the near end to the swing arm, not the far, and then re-did it. Patience is the key. Installed the float bowls; stretching the seal a little bit to make it sit right and install all of the bodies. Following the MacGregor guide, I did test the accelerator pump with some gasoline, too.
Ignore the photo with the accelerator pump shaft dust cover installed, that is wrong, you have to install it into the carb body itself, you can see where it fits. Couldn’t get it in there and Pat showed you just need a little spit lube to seat it in there. Of course, I didn’t thread it through correctly, so I’ll re-do it next week. Otherwise got all of the carb bodies assembled. It may not look it, but there was a lot of progress today.
Noticed I’m missing a screw for the throttle cable mount, or more accurately did not specify enough following the build guide; will contact them to find out more.
After prioritizing my fix list, had Pat look at it and do some estimates: there is at least 10 hours remaining, along with two nights to fix the engine mounts, along with getting the carbs wrapped up, need to organize that work.
Continue reading “CB750F: Day 16”
The Guile 100 Programs Project
The Guile folks are looking for programmers curious about contributing, having some fun, and possibly winning a monetary reward for their work! Details here.
Flow Control in Selenium IDE Scripting
Adding to the Selenium IDE’s already awesome “save your behind in every kind of situation possible” behavior, here is a plugin that adds the flow control constructs that are so sorely missed from the base language. This is a powerful, powerful addition that makes some horrible tasks… bearable.
LinApple Apple 2E Emulator for Linux
LinApple is a port of AppleWin for Linux and it works great. It is a lot of fun to play around with that machine again; fond memories.
The Lisa Project
Lisa is a production-rule system implemented in the Common Lisp Object System (CLOS), and is heavily influenced by CLIPS and the Java Expert System Shell (JESS).
Great CLIPS and JESS Posts
Here are many great posts by John Lindberg.