Adding context to terms. A unique and powerful concept added to the
accessing and to the storing of data. We live in a world by
context. Just about everything we do or think is in some kind of
context. Where we live, people we know, we address them in context. In
the world of software development, context is missing and yet it somehow
controls our failure and our limitations.
I have created a system of context that is possible for every value.
The first two uses I have for this are Language and Data Storage.
I want Max (my system) to understand all natural languages. So the
context is "Language". The context can be set to "English US"
"Chinese" and Max will be able to operate in both (or any number of)
languages simply by setting the "Language" context.
One of the major failures in database technology is the limitation on
data separation by context. Most data is context sensitive, Accounting
systems for example should be physically separated by YEAR if not my MONTH, maybe be
COMPANY and possibility by DEPARTMENT.
Speed, security, archival and data transfers would be greatly
improved simply by the physical separation of data by context.
Access to the data is seamless, yet with very little logic and no loss
of speed, you could for example restrict access to a year of data, or to
just one company.
The age of information in most cases determines its frequency of
change. The amount of processing that I can do on information that never
changes is a lot different than on one that constantly changes. This
means that separation by date improves speed.
"The difference between stupidity and genius is that genius has
its limits." - unknown
"Limits, like fear, is often an illusion." - Michael
"The essence of strategy is that you must set limits on what
you're trying to accomplish." - Michael Porter
"Real knowledge is to know the extent of one's ignorance." -
“If you can‘t explain it simply, you don‘t understand it well
enough.” - Albert Einstein
“Everybody’s a genius. But if you judge a fish by its ability to
climb a tree, it’ll spend its life believing that it’s stupid” -
"Fall down seven times, stand up eight" – Japanese proverb
A craftsman will meet his own expectations, a master will exceed
them." -- Clif Collins
Removing Number System Limitations:
One of the last limitations that I have removed is the current binary
number system. I have changed the concept of fix length bit numbers, 8,
16, 32, 64, 128 and gone to a compressed binary number system. A number
in Max can be any size for any use. This removed the limitation on the
size of any value in the system without lost of speed and also saves on
All existing Adam systems run on fixed length binary numbering
systems, arbitrarily selected by the programmer, giving us all of our
size limitations. A good example is "Date" which is commonly
represented as a 64 bit number of milliseconds of some fixed date
range, 1970 to 2034. Every number used in our existing Adam
systems has a limit. I removed this limitation by a simple change
in the number's binary representation. With this I have removed
all number limitations; a "Date" can now represent one trillion trillion
years into the past and into the future in picoseconds.
Speed initially will be faster in data transfer and in conversion logic.
In the future, adjustments to the hardware could make number math
operations just as faster as the current fixed bit number system.
Space will be significantly compressed since only the number of bits
required to store each value is used.
This is a win-win situation, I gain speed, space, and reduce
programming logic simply by removing the limitation on numbers. A limit
I thought could not be removed. By carrying out this logic to floating
point numbers the limit on precision is removed. Our 64 bit floating
point numbers has 15 digits of precision. This
limitation is now removed and any number of digits can be represented.
Just because our existing hardware has number limitations, does not
mean that software must also have them, in fact this is our biggest
problem in software development today. The binary number has caused,
directly or indirectly, all of the failures and limitations that we have
in our systems today.
Initial Release of MAX:
I hope to have an initial demonstrable version of Max by July 26,
2015. I hope to prove that there is an end to software
Max will work in any natural language. All knowledge
about a term is known. Application size without limits. Information size
without limits. Independent of current technologies. Permanent access to
logic. No programming required over time, software that is accumulative:
an end to software development.
A system that never fails, has no versions, needs no documentation and can replace every
software system that currently exists.
These are my expectations.
Removing the limitation on numbers, has forced me into coming up with
a number to represent "infinity". This is some value that any number is
not larger than.
In software development this concept is missing, but is used quite
often. If we use infinity in context the meaning can change based on
usage. This is the domain of the term. For example someone's age 0 to
200, for the age of dinosaur 231.4 million to 135 million year past.
Infinite Continuous (IC) is a term I use for removing
the limitation on the accessing of large data sets.
As our data sets get larger our access gets smaller. A key quality of
software should be that size should not limit speed or accessibility.
Just as Google Maps proved that we can access tens of millions of images
instantaneously, we can do this with all data sets.
Tables and files in Max (my system) are all IC accessible, meaning
that only the visible rows of data the user can see need to be retrieved
Speed is greatly improved since only the minimum amount of data is
accessed. There is no size limitation on the files or tables.
Other improvements to the IC logic will also increase speed, shared
access and security. The use of data aware indexing schemes will
also be added to permit subset access instantaneously.
Max is the knowledge system, so all information about tables and
files is available for every application. The better we get at
content delivery systems, the faster we will get at accessing larger and
larger dataset. By having better indexing, value locking, and caching,
the better our systems will become.
The terms "Cloud Computing" and "Big Data" are simply sales tools.
How many of something or where it is, I should never really care. The
system should take care of this seamlessly. This is what computers do.