Mark Stephen Sobkow's Projects at github.com   

Prev Home Next

Welcome to the Mark's Code Fractal and MSS (Mark Stephen Sobkow) Code Factory project pages. Mark's Code Fractal is the successor to MSS Code Factory, a major refresh of the technology and approach used for the code base which really shares very little with the prior knowledge base and code structure that produced the 2.13 code architecture.

MSS Code Factory 2.13 alpha10 is now available at https://github.com/msobkow/org.msscf.msscf.v2_13-installer/releases/tag/alpha10. You can find installation instructions at https://github.com/msobkow/org.msscf.msscf.v2_13-installer/ and the README.md displayed there. There have also been releases of the 2.13 knowledge base and model set as of 2026-08-19 03:45 CST, tagged as snapshot-202608190345 which are included in the installer and are required alongside the executable jars to run the tool. Alpha10 continues to flesh out use of the CodeVis attributes to produce pub and prot interfaces and implementations, but the code produced by Alpha10 does not clean compile yet. This alpha is being released primarily to capture the executable changes that are required to use the latest versions of the knowledge base as I proceed forward.

After I'm done the new interface and implementation/wrapper/filter layers, the focus will go back to tidying up and redoing pieces of the initial setups that CFSecJpa has been doing, such that the table data is persisted as a CFSec.TableInfo object which can be restored on subsequent reboots so that the ids used by the system remain consistent after the first startup of the application cluster. The new "SuperTable" attribute of CFSecTableData will be used to "include" a subclass' permissions in the superclass permissions, so that if you have permission to insert object B, you also implicitly have permission to create it's superclass object A. I also need to alter the permission group setup code to provide an "addClusterPermissions(clusterId)" and an "addTenantPermissions(clusterId,tenantId)" methods that create the permission entries specific to those data scopes after instantiating the base objects to be referenced by them (Cluster/Tenant.)

As of 2026-08-19 03:45 CST, there were 5,293,667 lines of clean-compiling code in the ever-growing 3.1 code base. That is 244,278 more lines than on 2026-07-09, for an average of 5,958 new lines of code per day.

2026-08-03 11:15 CST There are currently 5,273,643 lines of code in 3.1; an increase of 224,254 lines in only 25 days since 2026-07-09, or 8,970 lines per day added. I'm not productive at all with my tool.

Overview Of The Technology

Mark's Code Fractal (formerly MSS Code Factory) is a tool used to accelerate the production of the repetitive code that comprises 75-85% of the typical enterprise business application - the "glue" between the business logic programmer and the backing data servers and databases. It does so by applying a knowledge base of General Expansion Rule (GEL) files following specific XML document schemas and semantic constraints to a Business Application Model (BAM), which is an enhanced ERD constrained by a customized schema definition available here: mssbam-2.13.xsd, with 3.1 using an updated mcf/3.0.1/xsd/mssbam-3.1.xsd specification adapted to the new capabilities of the customized CFCore Engine eventualy implemented for the 3.1 BAM.

The BAM defines the tables, indexes, and relationships of an ERD, including Superclass, Container/Component, Parent/Child, and Lookup relationships. It also provides the means of encapsulating customizations of the output source code, with the approach changing radically compared to the old 2.0.12/2.0.13 approach of hard-coded verbs in the custom engine. Both 2.0.13 and 3.1 implement "tweaks" (see prior section on enhancements and improvements.)

I invite you to read through the prototype architecture and philosophies, and through the 2.11 documentation. Although seriously stale about the details, most of the key concepts and descriptions about how the CFCore engine works as described in the 2.11 documentation are still valid to this day.

I'm currently refreshing and refactoring my code base to support generic Java clients, take advantage of the latest Java features, provide back-end Spring web services initially using JSON to replace the old XML message protocol, and later replacing JSON with a byte-stream client if at all feasible. Along the way, the databases have been split up into isolated instances with the Obj layer providing a unified view of the component database hierarchy. That way each data silo can retain control over its own security concerns, subject to unified identification and authorization of users through the security schema (CFSec) packages and services at the bottom of the stack. Check the development log below for details about the progress on the 3.1 code base to date. Remember that while the 3.1 code base is not complete, you certainly can define a custom application model, produce fractal code for it using the same rules, and have a preview of the 3.1-compliant code for your model. Just remember to reference the CFSec security schema before anything else in your custom application model (BAM.)

The security schema itself may well become an OAuth2 service provider by the time I'm done, too, which I don't expect to be for quite some time, possibly not before 2027. As such, this code is very much in a state of flux.

Table of Contents