In the late summer of 1992 I walked into a new job and was introduced to MUMPS. I fell in love with the simplicity and elegance and, after leaving that job in 2000, I have sought to return to that charming but powerful data persistence engine.
For all the charm of MUMPS, I prefer to keep much of the data interchange (EDI) and business logic in Java. Java is supported on various platforms, well known to developers and has a most impressive library base within the open source community. Despite the current rage of new languages Java is in fact quite capable. DivConq tries to leverage what is available to bring out the best in Java. However, while I have a positive opinion of Java, I do have serious concerns about JEE (Java Enterprise Edition). JEE is far too complex – indeed it is the antithesis to simplicity and elegance – it does not pair well with MUMPS.
But Java Standard Edition has plenty to love and MUMPS is amazing. Combining these two technologies within a well crafted framework can lead to a very powerful and flexible application. Also, it is possible to run such an application on entirely open source software using Linux, OpenJDK, GT.M (a GPL version of MUMPS) and DivConq Framework.
A major design goal with DivConq is to enable a developer to use only one data persistence engine. You shouldn’t need a relational database *and* a noSQL database – that’s just one more thing to look out for in testing, installing and supporting. Not to mention those occasions where you want to combine results from both relational and noSQL, very inefficient in most frameworks out there. With all your structured persisted data in one place (using DivConq) you have less hassles and can create extremely efficient queries.
Another major design goal of DivConq Framework is to promote Elastic Architecture. Elastic Architecture is about designing multi-tier applications so that each tier can each intelligently (and elastically) scale up or down to meet processing requirements. When following the EA guidelines, the same application code can scale from all application components running on one server to many distinct application components running on a dozen or more servers. This is not parallel data processing we are talking about, but conventional “business” applications whose modules can combined or broken up to provide scaling and security.
Disclaimer: the About page and the following sub-pages refer to the design and feature goals of DivConq, not the current product release. Check the Roadmap page to see what is supported and what is planned.
Andy White – For nearly twenty years White has enjoyed and studied post relational (aka noSQL) databases. White was one of the original developers of EpicCare, the flagship software behind Epic Systems $500M+ annual revenue stream – product which uses Cache (an implementation of MUMPS). After seven years at Epic, White spent four years as an instructor at Madison College building an entirely new certificate program with six component courses. White then developed the groundbreaking “Chronologica” software built on cloud concepts such as a decentralized database that provided eventual consistency and became an independent contractor for three years. In 2007 White joined Standard Networks to improve the scalability of existing file transfer products. After several successes White was asked to lead the company’s research into next generation technology. In this role he developed several prototypes of high-performance, cross-platform and distributed file transfer technologies, trained personnel on these emerging technologies and helped in the formulation of technology criteria during acquisition analysis. Andy currently provides consulting services for the DivConq Framework as well as to the file transfer industry (via File Transfer Consulting) (Contact: andy D0T white AT divconq D0T com)
The DivConq Framework intellectual property is held by eTimeline, LLC. eTimeline, LLC is owned and operated solely by Andy White. Many of the features for dcTables were inspired by designd from within eTimeline’s Chronologica software product (2001 – 2007).
MUMPS not M
Many prefer M to MUMPS, myself included, however it is hard to search for “M” on the web. So I’ll use MUMPS on this site and in my documentation. Enjoy Wikipedia for more information on MUMPS.