Sunday, August 7, 2016

Still Writing, Revising, and Proofing Ozark-CABOOSE Text and Source

Team. We are still writing, revising, and proofing the Ozark-CABOOSE Text and source code. With our other responsibilities, we have not had much time for the daily and weekly post which we were placing on-line at the outset of this project. We will keep you abreast of the key activities in this project. We appreciate any feedback which you might have. And, we will happily receive it at feedback@nuevoarchitect.com.

May Your Days Be Rich, Rewarding, and Restful,

The CABOOSE Team.

Happy Coding!

Saturday, July 2, 2016

Light Bulbs Which Do Not Burn Out

Team. This is another CABOOSE side note. It is somewhat philosophical. When younger, a rumor was floating around that some wooly-headed fellow created a light-buld whose filament had a MTTF in excess of a century. MTTF is an engineering term which simply means that on average a device will last longer than a certain amount of time. I believe this fellow's name was Latimore. The following hyperlink shares a little about him and other such characters.

http://www.biography.com/news/african-american-inventors-20737249

I would hate coloring your perception of him, but it seems he was much brighter than one should be for his time and circumstances. It had been said that Thomas Alva Edison, the inventor for whom many an elementary school is named, decided that a light-bulb which lasts that long would be unprofitable. But, consider the cost savings in natural materials such as tungsten ore and sand which we might have saved this world community if such bulbs lasted longer. Not mentioning all of the petroleum spent in mining and transportation. Of course, fewer jobs in the lighting industry would have been created, and such an invention at this juncture in time would be disruptive likely causing numerous economic ripples. As bright and prolific as Edison was, he certainly could have filled this void with numerous other inventions. He was most probably tired of running like a hamster on a wheel generating ideas dreaming of a goose which would lay millions of golden glowing eggs.

With this said, much of this world's population claims that they follow a faith tradition stemming from the Book of Beginnings or Genesis. Is not one of the early teachings in this work stewardship? Ah so, koennen wir dass buchstabieren? S T E W A R D S H I P. Let us not miss the boat on this one! Plus, greed is one of the seven deadly sins. Would not a little of green thinking in the 1800s definitely had changed the course of history! But, it is not easy being green! Also, if hair color can change so can mindsets. So, time remains for improvement. But, is not it ever so sad when someone charged with tending something starts thinking that they own it. Here is a question for the old class...The earth is Whose and the fullness thereof?  We all must do better. A short pop quiz will be given later on. So, please be prepared. Your entire grade depends on it. Also, do not forget your portfolios. What is in a portfolio... you ask?  Here is a hint..."Would a portfolio by any other name be as neat?"

Hunt. Peck. Think... The CABOOSE Team.

Friday, June 24, 2016

Ozark-CABOOSE Book Progress

Team. We are progressing on our text about the new Ozark product from Oracle and our companion resource called CABOOSE. It will likely not be available in July 2016 as originally expected. We are currently looking for a publisher and have had some interest from a couple of large publishing houses. If they do not accept the work which they can including in their offering of technical texts, we will self-publish. We have adjusted our sights for late September or early October. Besides, Ozark 1.0 is still in flux. Visit ozark.java.net for more details and join the mailing list.

Before delivery of the source for use, we will modify the licensing. It currently does not allow for commercial use and only permits using CABOOSE for educational purposes or research. We have been busy. Our sweat is wearing grooves in this old grinding stone, but we are having fun!

Thank you for your interests in this project and this alternative approach for software development. Such plug-able architectures whether they are web-based MVCs or daemon-based interpreters offer a more flexible and easily organized method for building software than some traditional approaches.

Enjoy This Summer of Code! Do Not Worry! Be Happy!

The CABOOSE Team

Friday, May 27, 2016

Architectural Chicken Eggs

Team. Software engineering is a rather new field originating in the early 1970s. With reuse being a key concept in this discipline, we have borrowed numerous "best practices" from other engineering fields which are more mature plus have more stable and reliable engineering processes. This includes the formal methods used in "clean room" development.

Lately, the CABOOSE Team has learned that,  in other engineering disciplines which involve building construction, architectural concerns are considered from the early stages of requirements elicitation. This practice is somewhat different from "textbook" software engineering processes based upon the waterfall model which fixes architectural design in the later stages of development. Textbook software engineering teaches that one should determine a product's features and requirements before deciding upon an architecture. If one starts a project with a certain architecture in mind, this limits the possible implementations and the requirements which the development process can satisfy. Thus, the chosen architecture has a great bearing on the requirements. But, requirements can greatly limit architectural choices. So, the problem of desired features and chosen architecture is a classic chicken and egg problem in software development.

But, if we take a simple philosophical view of the nature of chicken and egg problems, we might realize why the centuries old building engineering discipline views architectural design plus feature and requirement determination as concomitant (concurrent) processes. Given a fertilized chicken egg, do we have a chicken; do we have an egg? The answer for each of these questions in "yes!". Since the egg contains all of the materials needed for producing the chicken and the genetic program for doing so, we have both a chicken and an egg. As the fetus matures within the shell, both the chicken and the egg evolve and experience many stages of their respective life-cycles. Once the chicken (architecture or requirements) reach a satisfactory state of development, the egg might be set aside.

The practice of building construction offers architectural options for its clients during the early proposal stages. These potential choices are an integral part of determining the building requirements, detailed design, and final implementation.

A agrarian (farmer) might consider the entire chicken and egg problem as a "horse-sense" test much like the famous question that a rural farmer once asked his grandchild when he visited for the first time. "Son, can you find a needle in the haystack behind the barn? I will pay for your college education if you can!" Apparently, the poor child spent most of the day searching for a sewing needle.

While acquiring advanced degrees, letters, and such, we can often forget the "common-sense" man has know for centuries as we "advance".

We are still working on our book and wrapping up the testing on CABOOSE. The Ozark Team is currently discussing some possible annotations which support its JAX-RS web services controller.

The release of the JEE CABOOSE products should coincide with the delivery of Ozark.

The CABOOSE Team. Enjoy This Weekend!

Saturday, April 23, 2016

CABOOSE Status | Writing, Reviewing, & Testing

Team. We have simply been using the last few weeks for writing and reviewing the part of our text on Ozark and CABOOSE, plus we have been cleaning up the code and running a set of test cases. Our goal is delivering something for use with JEE when Oracle provides MVC 1.0 in Q3 2016.

Hunt. Peck. Think. Happy Coding. The CABOOSE Team.

Saturday, March 12, 2016

Refocus | CABOOSE Vision, Methods, and Goals | The Ozark-CABOOSE Book

Team. Seeing that this also doubles as a general weblog for computing ideas we had a short note on mathematics recreation. The topic discussed, the Miller-Kovarik Secondary Method, can serve as an effective approach for finding the roots and extrema of various functions. As such, it is important in many of the optimization tasks used in computing. Optimization activities and web development do not overlap often, but the approach seemed worth stating. But, we shall now refocus of CABOOSE: it's vision, method, and goals. Plus, we will provide a rough outline of the Ozark-CABOOSE text.

The Vision of CABOOSE

Providing a methodology for rapid and accurate web application development which is compatible with modern agile techniques, consistent with the "best" practices in software engineering, and adaptable so it can accommodate future software development goals.

The Methods of CABOOSE

Through the use a reuse-able pre-written controller and dynamic invocation, the CABOOSE approach accelerates development. Front-end scripters can develop a "mock-up" of the web application in a standard mark-up language: XHTML, HTML 5.0, Dynamic HTML, or etc. Upon completion of the first draft storyboard, the client can approve it or request revisions. During the iterative refinement of the storyboard's appearance, engineers can write methods which return the dynamic String content that will populate the application "mock up". These efforts can occur in parallel. Also, if need be, a third parallel stream of develop can occur. This extra stream can be responsible for structuring all of the transactions between entity classes and the web application. The most critical step in development is the integration of these streams of development.

The directory.xml file integrates each view of the application and combines the storyboard and populating method streams. Finally, if the third stream of entity class transaction development exists, that code must be interwoven in the fabric of the methods which provide dynamic content for the storyboard.

The Goals of CABOOSE

Simplifying the "common case" of web development. The UNIX Philosophy states that one should make the "common case" simple and quick. This means that 95% of one's tasks will be easy.

Extracting out most of the "web-centric" development tasks in a pre-written controller lets one create a solution using the most common features of the development language. In the case of JEE, this means more Core-JAVA instructions for string handling, database transactions, and etc.

Providing a curriculum that produces well-rounded web developers who can complete full-stack development tasks: front-end, middle-tier business-logic, and back-end. Engineers can participate in CABOOSE development if they skills in any of these three layers and develop competitive skills in the others.

The Ozark-CABOOSE Book

The tentative outline for the Ozark-CABOOSE book is as follows:

A History of JAVA Plus its Urban Legend
A History of JAVA Enterprise Edition (JEE)
A History of Ozark (Oracle's MVC 1.0 [JSR 371])
A History of CABOOSE
Goals in Software Engineering
Goals in Web Development
Fundamental Programming Approaches
Software Architecture Fundamentals
An Ozark Controller Application
An Ozark ViewEngine Application
A CABOOSE Servlet Application
An Ozark-CABOOSE Application


We thought that we would get back on the software engineering track after that last post.

Hunt. Peck. Think. Enjoy this Week of Web Development.

The CABOOSE Team.

Wednesday, March 2, 2016

Math Recreation

Team. We have a recreational mathematician on our squad who is interested in honoring an old friend and teacher. The friend was blind, but amazingly gifted. He could play the piano and had a paper route. The teacher was always encouraging and had a gift for teaching college level subjects from Seth Werner's book on Modern Algebra and Oystein Ore's book on The History of Number Theory in simple ways. The procedure is called the Miller-Kovarik Secondary Method. It is useful in resolving Diophantine Equations. It partially answers Hilbert's 10th Problem. Given a Diophantine equation such as C = 2xy + x + y, one can find its solution by first setting it so it equals zero. Then, one must embed it in a parabolic function through composition, g(x) = ( 2xy + x + y - C )^2. Then, one determines the outer bounds of the solution in the first quadrant. Next, one defines a mesh describing the surface which has a single minimum. This mesh is n x n. This means that it has much fewer points than the total surface. It is an approximation of the surface. Afra Zomorodian wrote a wonderful dissertation on describing the salient features of a shape through decimation. It is a wonderful and interesting work in topology. Basically, the next step is taking some statistical measures of the mesh points. After finding the appropriate deviation of the mesh nearest zero, one has made a step at finding the minimum. This smaller mesh is your secondary. The original mesh was the primary. The process is repeated on the surface comprising the smaller mesh with the resolution of the original mesh. Find the third deviation and repeat until the lone root exist at zero or one find a space in which one can search all the points quickly.. Miller first presented the surface embedding idea in secondary school, hence the double entendre. Being blind, he could not fully visualize the mesh. But, during his presentation, he did say that all the points are not need; he had the surface described as a Bull's Eye with the target at zero. A peer, McQuiddy played the devil by confusing him which is sad and unfortunate, otherwise we might he might have reached this result. Kovarik said that some cleverness was needed for resolving this problem. After reading Afra's thesis around 2005, a moment of cleverness occurred. I know this is hand waving, but I imagine most undergraduate computing or math students might derive this quickly. This approach works well for monotonic Diophantine equations.


Hunt. Peck. Think. Happy Coding.