Project

General

Profile

Actions

Draft Text About RuleMaker Version 3x

Please provide some feedback and corrections to this:

RuleMaker Now at Version 3

Public sector data scientist Ted Kim has been implementing on his own volunteer time the first full-function Rule-Maker application (Version 3.0), based upon three inputs:

1) The DWDS functional description in the December 2021 version of my dissertation;

2) A user interface scheme for RuleMaker led by Calvin Hutcheon, a creative technologist who recently graduated from the Maryland Institute of Art (MICA), under a paid contract to Xalgorithms Foundation, the not-for-profit foundation that I set up for implementation project management.
3) An earlier Version 2.0 partial implementation of the RuleMaker application that was created by Ryan Fleck, with occasional contributions by Max Chen.

The Version 2.0 client-installed application variant was programmed in ReactJS on their own volunteer time while working as full-time software engineers to different large private sector firms. Ryan had previously created four iterations of a Version 1.0 Web application variant of RuleMaker under a paid contract to Xalgorithms Foundation, while he was a student at University of Ottawa.

The DWDS Specification was incomplete and evolving when Versions 1.0 and 2.0 were created, but these earlier implementations enabled the community to test several aspects of the DWDS design rationale with genuine legislation. Several complicated sample rules were structured with RuleMaker Version 1.x at the request of professionals in the free/libre/open community who contacted us upon learning of the ‘Internet of Rules’ design under development. Version 1.x of RuleMaker was implemented at a stage when the DWDS design used trinary logic gates {T, F, B}. The design moved to quaternary logic {00, 01,10,11} in June 2020, and this was implemented in Version 2.x

As of early 2022, the Version 3.x RuleMaker reference implementation has been available as a Web application comprised of two webforms. A descriptive page is for authors to record the data and metadata about each rule. A logic page presents authors an interactive display of the DWDS logic gate to compose Input Conditions and Output Assertions using the six syntactic structures in any order, and relate them in any combination or permutation. Since the semantic expressions comprising each sentence are structured into these syntactic elements, and all of the logical relations among them are structured into the adjacent numeric columns, the RuleMaker program concurrently generates well-formed JSON script that will be published to RuleReserve. A JSON viewer in the RuleMaker interfact shows the author the rules-as-data expression as it is going together.

Version 3.x of RuleMaker is the result of a complete re-write using the Svelte/JS framework produced by Rich Harris, a graphics editor working at the New York Times. There are several prominent JS frameworks to choose from, because after Brendan Eich introduced Javascript in 1995 by (working with Netscape at that time), JS has been adapted to diverse requirements and styles. Compared with the React/JS framework that was in use for RuleMaker v2, Svelte is faster to execute, is easier to learn, results in much less code, is easier to read and maintain, gains consistency through explicit ('opinionated') design principles, and it integrates with existing code. All of these factors enhance an application's intrinsic security, community-building, code longevity and project cost management.


ch feedback

It's important to describe who benefits from the release of v3.

  • This is significant for domain experts who now have a rule authoring interface that enables accessibility for humans and operationalization by machines with speed, simplicity, and at scale.
  • Similarly, this is significant for developers, because a fully-functional Rule Maker provides a framework for open source development to begin in earnest.

I would cut the final paragraph down to something like this:
"Version 3.x of RuleMaker is the result of a complete re-write using the Svelte/JS framework produced by Rich Harris, a graphics editor working at the New York Times. Svelte was chosen because it is faster to execute, is easier to learn, results in much less code, is easier to read and maintain, gains consistency through explicit ('opinionated') design principles, and it integrates with existing code. All of these factors enhance an application's intrinsic security, community-building, code longevity and project cost manageme"

Finally I would end by identifying areas where contributors can get involved. Launch should coincide with a few bugs and features logged into the gitlab project management system and ranked in order of priority. Similarly, development of documentation will be another critical area where support is needed.


ca feedback

I made some changes for style. I'll wait until there are further edits.

Updated by Craig Atkinson about 2 years ago · 10 revisions