The fastest easiest way to get it right.

Data is More Valuable Than Code

Anybody who has worked in the software industry for more than a few weeks knows that the customers value their data far more than their code. The evidence for this is simple: they will pay you to throw away and replace their programs so long as you can preserve their data.

This leads to the first principle of Andromeda, "Data is more Valuable Than Code". The purpose of Andromeda is to put programmers into the same position as our customers, a position where our primary asset is the data files we produce instead of the programs we write.

Let us take it as a given that a certain database project, such as an accounting or ERP system, is going to be built. There are basically two ways to do it.

Method A invests 20,000 hours (5 programmers for two years) into producing code for the latest state-of-the-art platform (the world wide web, for instance).

Method B invests the same 20,000 hours, but spends 4,000 hours creating an Andromeda-style "builder" and invests the other 16,000 hours into a body of data that is fed into the builder to make the database and the code.

We will say that the product in both methods has been built using SEEK-WELL SERVER. A crucial client now demands that rival product SEE-ME/2 be used. What must happen? In a contrived case like this there are many guesses, but we may say perhaps that each group finds they must modify 20% of their code. Group A now has 4000 hours ahead of them, or two person-years, while Group B has 800 hours, or two programmers for three months.

A similar scenario comes up when the "State of the art" application begins to age, and newer competitors are coming out with apps that run on hand-held devices. What are the options now? The folks with Method A can A) Buy another company with an inferior but sexier product or B) Repeat the 20,000 investment. The folks in Method B will at worst repeat their entire 4000 hours of work, but more likely they will only repeat a fraction of it.

These scenarios are one of the reasons why we believe that code is a depreciating non-portable asset while data is a portable and appreciating asset.

The practical result of this thinking is Andromeda's placement of all business rules into the Database Specification, which is itself only a data file, so that the Andromeda builder can do the actual job of writing the server-side code to implement the rules. This accomplishes the goal of shifting a lot of the programmer's assets into data. It does not completely make the shift because a program will always have some UI code for different platforms.

comments powered by Disqus
Home |  Documentation |  Download |  Credits |  Contact |  Login
Andromeda © Copyright 2004-2013, Licensed under the GPL Version 2