In real science, anything not
having conclusive proof must be considered as no more than an assumption. A
real proof requires irrefutable rational reasoning backed by predictable and repeatable empirical evidence.
The
root cause of one of the most famous scientific crisis resulted from evolving mankind’s
knowledge by relying on flawed untested assumption ‘the Earth is static at the centre’.
This axiom or postulation was considered self-evident fact needs no proof. No
one considered that it is an assumption and no one consciously aware (and could
have named it ) that this axiom was at the root of mankind’s perception of
reality (i.e. About 500 years ago, this reality was a complex paradoxical paradigm
comprising countless concepts backed by meticulously documented retrograde
motions and epicycles constructed for over 1000 years).
Of
course, root cause was untested and unproven axiom “The Earth Was Static at the
Centre”, which was widely accepted as self-evident Truth 2000 years ago. Can
this kind of thing happen in 21st century? Of course, I am sure there
could be other such scientific crises in existence even in 21st century?
Many experts feel that this kind of thing can’t happen today, because mankind’s
scientific knowledge, processes and expertise advanced substantially during
past 500 years. I disagree.
I
discovered such root cause for scientific crisis in the field of computer science.
An important sub-field of computer science is CBSE (Component Based Software Engineering).
At the root of CBSE there exists such axioms or postulations, which were
considered self-evident Truths 50 years ago (so required no proof or even documenting
for future generations to know for validation). That is, 50 years back software
researchers assumed that it is impossible to invent real-software-components equivalent
to the physical functional components for achieving real CBSD (Component Based
Software Design for Software Products), where real CBSD must be equivalent to
the CBD of physical products (e.g. one–of-a-kind experimental jet fighter or prototype
of a spacecraft).
It
was a reasonable assumption when leading edge programming languages were
assembly languages and FORTRAN. Structured programming languages were a distant
dream. Things like Object-Oriented Programming languages and GUI components
(that are more conducive for real-CBSD) were beyond imagination. So they
started using the term ‘software components’ as an alias to useful software
parts. In other words, they defined each kind of software components is a kind
software parts either having certain useful properties (e.g. reusable or standardised)
or conform to a so called software model.
Today
no one even aware of the root cause (e.g. axioms) for such definitions for
software components. Today if you ask any one, why do we need many different
and strange descriptions for software components and CBD for software products,
they give excuses such as software is unique and/or different, without giving
any proof or justification for why and what manner software design is deferent from
the design of one–of-a-kind products such as experimental jet fighter or prototype
of a spacecraft.
Why
can’t we invent software components that are equivalent to the physical functional
components for achieving real CBSD, where real CBSD is equivalent to the
physical products?
To
invent real software components (that are equivalent to the physical functional
components) requires discovering (i) accurate description for the physical
functional components and (ii) accurate description CBD of physical products
(e.g. for achieving the real CBSD that is equivalent to the CBD of physical
products). Best way for defining an accurate description for any physical being
(e.g. a specie) is by finding a set of essential properties uniquely and
universally shared by each and every specimen belong to the specie (e.g. to positively
identify each of the specimen, weather the specimen belongs the specie or not).
Likewise, accurate description for CBD of physical products requires finding
essential aspects uniquely and universally shared the CBD of each and every
known physical product.
Many
experts come up with strange excuses, when I ask why we can’t invent that software
components that are equivalent to the physical functional components by
discovering the essential properties of the physical functional components.
Mankind’s scientific knowledge comprises accurate descriptions for countless complex
and physical beings or species that are 20 time more complex than physical
functional components, such as in fields ranging from biology, zoology or
scientific discipline of microbiology such as virology, mycology, parasitology,
and bacteriology. They insist that it is impossible to find such essential
properties for physical functional components, without ever trying or showing
any evidence that any one ever tried.
If one deeply investigates the
root cause of each of the scientific crises, he end up finding a hidden flawed axiom
at its root, which in past considered self-evident truth and no one ever tried
to validate. Seeds for a scientific crisis would be sowed when researchers pick
an axiom based on their senses or instincts, without either documenting or
finding valid scientific proof. Mankind followed their collective senses, when
they assumed that the Earth is static. Researchers followed their then
collective instinct, when they defined each kind of useful software parts are a
kind of software components. It was beyond their wildest imagination 50 years
ago that it might be possible to invent software components that are equivalent
to the physical functional components for achieving real-CBSD, where real-CBSD
is equivalent the CBD of physical products. Even structured programming was
distant possibility 50 years ago and Object oriented programming and GUI
library was not even contemplated.
This paper provides the root
causes for any scientific crisis. This also provided a proof that kind of error
could possible even in the 21st century. It is the responsibility of
the research community to investigate the Truth, if any lone researchers discovers
a root axiom and no one can find any evidence that the root axiom was
validated. Insulting or snubbing the lone researcher for questioning the
validity of such axioms is not called for and unbecoming of a scientist or researcher.
In real science, no axiom is self-evident Truth until the axiom is tested and
validated.
Who discovered that ‘’the
Earth is static’? Ans: No one. There is
no proof and no one tried to proof it. Who discovered that the Sun is at the centre?
Ans: Copernicus. Who discovered any kind of useful parts is a kind of
component? And: No One. They why researchers have been blindly defending the so
called software components?
P.S: More about it at: https://www.researchgate.net/publication/280803360_What_is_this_thing_called_Science_What_is_real_science_any_way
Best Regards,
Raju