The objective of this blog is to provide a simple
irrefutable proof, which can be understood even by a high school graduate:
Today computer science is a science fiction and software engineering is in
crisis, because the software researchers ignored basic scientific processes and continue to abdicate their sacred duty. If one
searchers for phrases in Google such as “Is software engineering a real
engineering” or “Is computer science a real science”, one can find many
articles persuasively arguing that software engineering or computer science are
flawed discipline.
Computers science can never become real science and
software engineering can never become real engineering until software
researchers and scientists discover answer to very basic question “What are the
essential properties of ideal physical functional components”. Please kindly
allow me prove that computer science is a science fiction, without knowing
answers to this kind of primitive facts about basic building blocks.
The answers to the following questions are many times
complex than the above question. For example, school teachers are teaching
characteristics of plants to 4th graders: http://www.slideshare.net/allsaintsscience/4th-grade-ch-2-lesson-1-what-are-plants-characteristics.
Without knowing answer to this question (i.e. such basic characteristics), can
the botany be a real science? Discovering “what are the characteristics of the animals”
must be at least 25 times more complex than discovering “what are the
characteristics of the physical functional components”. Without known answer to
this question (i.e. such basic characteristics), can the zoology be a real
science?
Any scientific field (e.g.
botany, zoology or software) end up as a science fiction, if scientists blindly
define essential properties of basic entities (e.g. plants, animals or
components for software products) without any basis in reality (by ignoring and
in clear contradiction to facts) and try to advance the scientific field by
stubbornly relying on the erroneous essential properties of basic entities (or
building blocks).
Today no software researcher can name any two essential
properties that are uniquely and universally shared by ideal physical
functional components. If any expert disagrees, I respectfully challenge him to
name such essential properties of ideal physical functional components. Does
any scientific field progress without knowing answers to such basic building
blocks? Since I already discovered essential characteristics of physical
functional components, let me assure that, this answer is far simpler than many
other known answers, even school kids consider trivial facts.
Mankind has no problem naming essential properties of
millions of physical beings (e.g. elements, molecules, plans, animals or
bacteria etc.). Let me provide few more examples: What are the essential
properties of atom (or molecule or compound)? What are the essential properties
of hydrogen (or oxygen, gold or water)? Answers to such questions are well
known and today considered trivial facts. Any scientific field ends up in
crisis (or in a paradox), if there are errors in such basic facts.
What is the essential property of Hydrogen? Ans: An atom
can be Hydrogen atom if and only if it has just one proton at its nucleolus.
What is the essential property of Gold? Ans: An atom can be Gold atom if and
only if it has 79 protons at its nucleolus. What is the essential property of
Oxygen? Ans: An atom can be Oxygen atom if and only if it has 8 protons at its
nucleolus. What is the essential property of Water? Ans: It is made of
molecules, where each molecule contains one oxygen atom and 2 hydrogen atoms.
What is the essential property of Silicon? Ans: An atom can be Silicon atom if
and only if it has 14 protons at its nucleolus. Along with such countless
interrelated basic facts, even smart school kids has huge amount of accumulated
tacit knowledge.
Any scientific field ends up in dark ages without knowing
such basic facts or relying on such unsubstantiated erroneous facts. It is
impossible for scientific progress in each of the scientific fields without knowing
accurate answers to thousands of such basic facts and accumulated tacit
knowledge. Of course, even high school graduates don’t ask, what is a proton or
atom, because they already have tacit knowledge about them.
Every mature paradigm results in huge accumulation of such
tacit knowledge and deeply entrenched collective conventional wisdom.
Unfortunately software engineering has been evolving for few decades (by
relying on myths) and now it is a mature paradoxical paradigm having
accumulated tacit knowledge and deeply entrenched collective conventional
wisdom. In such a mature paradox, the researchers not only learn to accept
contradictions but also foolishly justify the contradictions by using silly
excuses such as our field is different or unique. Even simple contradictions
otherwise obvious errors perceived as trivial facts.
The software researchers erroneously defined many kinds of
software components, where each kind of software components is a kind of
software parts having certain properties (e.g. reusable or standardized) or
conform to a so called component model. These insidious axioms have no basis in
reality of facts. The software researchers have been doing research on software
components and CBD for more than three to four decades by relying on such
baseless myths (i.e. assumed to be proven facts). But the shocking fact is, it
is impossible to find any other software researcher ever tried to discover
accurate answer to this basic question: “What are the essential properties of
ideal physical functional components”.
My objective is to respectfully inform that it is a huge
error to not discover the accurate answers for such basic building blocks or
facts of computer science and software engineering. Many experts insist it is
impossible to discover essential properties of physical functional components
for achieving real-CBSD. I vehemently disagree, since we already discovered
them. If they are true, they must not have a problem finding a flaw, when some
one claims to have discovered essential properties of physical functional
components for achieving real-CBSD.
Many other experts erroneously insist that it is
impossible to invent software components that are equivalent to the physical
functional components (e.g. by having essential properties uniquely and
universally shared by each and every physical functional component) for
achieving real-CBD for software products, which is logically equivalent to the
CBD of physical products and offer comparable or better benefits. I vehemently
disagree, since we already secured US-patents for such
real-software-components. I can demonstrate countless components and component
hierarchies, only if they are not determined to be willfully ignorant.
I have been trying to make many experts aware of possible
errors in the basic aspect of software engineering, but unfortunately I hear
countless excuses and evasive responses. To answer their questions in good
faith, I created so many responses and comprehensive proof for each aspect. It
made my website become
so big and comprehensive. I created many repetitions of same information for
providing irrefutable proof in multiple perspectives due to my eagerness to
respond to every excuse by not realizing that some of their snubs are mere
evasive tactics.
You can lead a horse to water, but you can't make him
drink. What can any one do, if scientists of botany or zoology use evasive
excuses such as it is impossible to discover essential properties of plants or
animals respectively? This blog provides irrefutable proof that that existing
software engineering paradigm evolved by relying on a huge error. I am sure,
even a high school graduate should not have problem understanding this simple
proof (i.e. that it is a huge error, if even the best software researchers
can’t name essential properties that are uniquely and universally shared by
each and physical functional-component).
I have been trying to make the software researchers aware
of this huge error, but they are pretending to be busy or not seen/heard my
emails/calls. You can't wake a person who is pretending to be asleep.
Many experts give long lectures about research but do nothing else, which
is nothing more than self-promotion and hypocrisy. Any scientist or researcher must
be ashamed of himself for not having intellectual curiosity. It is an intellectual
dishonesty (or incompetency), if any scientist or researcher refuses to defend facts he is advocating
(especially when clear evidence is provided to expose errors in such facts).
Our website contains irrefutable facts and comprehensive
proof (e.g. evidence and reasoning) for each and every aspect. I am
respectfully offering light of truth that can lead the software engineering way
out from software crisis. It is up to each to accept or reject my humble offer.
If any one wish to know any clarifications or more evidence (e.g. facts or
reasoning), I am not only happy but also eager to provide necessary help in
exposing this basic error.
Existing paradoxical paradigm and accumulated tacit knowledge is
result of passionate research spanning many decades by erroneously concluding
essential properties of components are reusability or standardized etc. Of
course, is it any wonder why such error sidetracked technological progress of
software engineering? It is impossible to put the scientific and technological
progress on right tracks without exposing such basic errors.