Foreword
Headings similar to the title of this book are possible in practically
any computer edition: «Tips for Programmers of Visual Basic» or «Tips for MS
Office Users», etc.
These tips are conditionally divided into three
groups:
1.
Recommendations
that are in published documentation and in Help by the original vendor.
2.
Information
provided by program developers, giving information about new and useful
properties of the program and ways of defect neutralization after the beginning
of commercial sale.
3.
Information
about results of experiments on the
program. One can speak of so-called undocumented (collateral) properties of the
programs. Developers ask the end user to avoid these practices, but...
A naturalist, who wants to study the world,
cannot address his questions to the Creator directly (to God or to Nature – as
you prefer), but he has to ask an investigated object. For this purpose the
experiment is carried out[1]
– some disturbance is created in the object and the reaction is determined:
«Click a horse on the nose; it will whisk its tail!».
Each program has an author. As a rule, one
cannot find the name of the author on the box with the distribution kit or in
the documentation, but the author exists[2].
Hence, any experiments with the program are needless. Any questions that arise
should be directed either to the documentation or to the author. But… for
example, if it is required to know whether the argument of a sine function must
be in degrees or radians, one probably will not look for it in the documentation,
but simply write x: = sin(90) and see the result. The user
carries out similar «experiments» hourly, reading the documentation only in
some sophisticated cases. Often, this does not lead to an answer. Turning to
the «Creator» is too difficult. We can find the program's vendor on the
hot-line, but not the author. Most probably, you will be asked to call back in
a few days. During these days… they will carry out their own experiments on the
program and try to find the answer. As a rule, asking the author gives nothing
because he has forgotten his brain-child already and now works on an entirely
new project. Even if it is not the case, the author likely does not remember
all the properties and nuances of the program. Moreover, in creating the
program, the programmer himself continuously experiments on it, surprising
himself with its new, unexpected properties, most of which never make it to the
documentation.
Consequently, a user often forgets
(involuntarily) that the program is a creation of the mind and hands of a man
(Second Nature) and supposes that it is the fruit of the “Creator's” labor,
anonymous and inaccessible on any hot-line, (First Nature).
One can consider that celestial mechanics was
not discovered by man, but the Creator betrayed a secret of higher laws,
throwing an apple and striking Newton’s head. The merit of a genius (Newton) is
just an ability to be at a certain time and in a certain place[3].
The programs fall to us from above, too. Hence, the vitality of idea freeware.
Vendors and programmers are not necessarily fond of this concept. We can say,
that God (Absolute World Reason) has created not only man, but also the
computer. A man who writes a program for the computer simply exhales soul into
the lifeless heap of hardware. Body trade (transplantation of organs,
transfusion of blood, prostitution, at last) is a reality in our day. The theme
of the purchase and sale of a soul is the stuff of only myths and legends and
also in their literary treatment (Faust history, for example). When we get some
software, we buy only the «body» – disks, documentation, information and
discounts under new versions, and the main thing – service after the sale.
Before we return to the tips, we note once more
that the division of the tips between «correct» and «incorrect, wrong» is
rather conditionally owing to inevitable experiments on the particular program.
Giving «harmful» tips, the author says to readers: «Think and decide – to have
or not to have in your own program». The following group of tips can be classified
by another name: «crazy hands». The author's hope, after the reader becomes
familiar with some tips, that he will then will tell himself: «As an idea this
is disputable, but it is very interesting. I shall do it a differently and even
better!»[4].
A program may be suitability for application to
some concrete practical problems. Also, a program can be considered an
entertaining and difficult puzzle («a gymnastics for the mind[5]»),
that may be suitable for high intellectual leisure: «I wonder what will I get,
if I do it like this?! I do not know what this programming trick is for, but it
looks amusing».
Now we want to say something else about
authorship. Tips for working on a computer are like jokes. It is not easy to mention the name of the author of some successful
tip or joke. The author is people. If a reader becomes familiar with some
recommendation, he can tell: «But I know a better ending for the joke, pardon,
the tip – this problem can be solved more easily and more effectively in
Mathcad!». Another reaction may be following: «Interesting reception. I must
introduce it to my colleagues (I shall retell a joke) and I shall include it in
my Mathcad-documents!» The author (elementary part, «bit» of people) is
prepared for the third reaction – neutral or negative. In any case he will be
glad to receive responses from readers. This way he can expand and perfect more
tips for users of Mathcad. This book is duplicated on a site http://twt.mpei.ac.ru/ochkov/MC&MC.book/Sovet/sovet.htm.
The readers can send new tips and publishable comments to the address ochkov@twt.mpei.ac.ru.
At first, it was attempted to separate tips
into seven precise groups, covering
various aspects of work in Mathcad. But, it turned out that it is not easy to
do such gradation. A single tip can touch various aspects of work. Therefore,
it was decided to give icons that can provide advance warning about what we are
going to present after the name of a tip:
– Input-output of the information in the Mathcad-worksheet
– Work with variables, operators (built-in and user implemented)
– Remarks in a Mathcad-worksheet
– Units in a Mathcad-worksheet
– Symbolic mathematics (analytical transformations)
– Programming
– Graphing
Also, these two icons mark the following features of some tips:
– An undocumented method, which solves one
problem, but may create a new one
– «If it is impossible, but we want it very
much, it is possible!» – this icon marks quite legal use of old tools in new or
unusual applications («Crazy hands» – see above).
There is no special order or alternation of the
tips: from the current tip, references[6]
both to subsequent and to previous tips can be made. From the referenced tip,
it is possible go to a new one or an old one. It is possible to study a tip,
following strings (web if we remember the abbreviation WWW) of links but not
the table of contents. So, a reader can dive into the tips at random. He can
choose something that may have intrigued him more than something else. Tips of
the book are some elements of a scattered mosaic (Puzzle). From the mosaic, a
reader can collect a his own pieces and build a picture that reflects a sphere
of his interests. Such «pictures» were collected by the author, too. It is
articles (etudes, sketch), where links are made:
·
Color
in the programs http://twt.mpei.ac.ru/ochkov/Color_in_Program/index.htm
·
The
story of the masterpiece (Mathcad and nonstandard graphics) – http://twt.mpei.ac.ru/ochkov/Lace/Lace_eng.htm
·
Boolean
cubs – http://twt.mpei.ac.ru/ochkov/Fuzzy%20logic/Bool_Cube/Logic.htm
·
Mathcad
and Maple – Working with Units – http://twt.mpei.ac.ru/ochkov/Unit_MC_MP/Unit_MC_MP_eng.htm
·
Solving
of algebraic equations and systems or Van Gogh in Mathcad – http://twt.mpei.ac.ru/ochkov/Carpet/carpet_eng.htm
·
Price
of an Old Car or The Way from Correlation to Regression in Mathcad – http://twt.mpei.ac.ru/ochkov/car/c_e.html
·
The
Invisible Variable – http://twt.mpei.ac.ru/ochkov/Invisible/Eng/Index.htm
etc – see http://twt.mpei.ac.ru/ochkov/work2_eng.htm
As the author understands and quite supposes,
it is difficult to think out any practical application for some tips of the
book. But… Coming back to the idea that the programming does not have to be of
practical benefit (gymnastics for the mind[7]).
It is possible to confirm that the work on the computer is some kind of high
intelligence entertainment. The author gives a tip and asks the reader to find
a practical application for it.
Well, and now we shall begin a statement of
tips. There are exactly one hundred of them. We do not count those tips that a
reader will find between the lines of the text and in the operators and figures
of the Mathcad-documents.
[1] One definition of a science: It is
satisfaction of private curiosity (knowledge of Nature) for the public (state)
account. In modern understanding, science appeared in the beginning of XVIII
century, when people began to mark out a separate base of knowledge of features
of Nature that could be reproduced at any moment. Theoretical physics
(chemistry, biology etc. and etc.) are successful and unsuccessful attempts of
interpolation and extrapolation of experimental data (see, for example in tip
52).
[2] All serious commercial programs are
created by the large collective of the developers (authors' collective), but
the innovative ideas that are the foundation of them, have their own authors.
[3] One says that it is simple to play
a piano. It is enough to press the necessary key at the necessary time. And
ingenious pianists are only a few because the Creator cannot serve all players
simultaneously. Problems of diligence of the musician (programmer) shall not
concern us in this text.
[4] Many tips in this book do not solve
old problems but raise new ones that are connected with the use of computers in
scientific and technical calculations.
[5] As rule mathematics is considered the
gymnastics for the mind.
[6] Automatic links (hyperlinks) are
introduced into electronic variants of the text of the book, where they are
marked with color and underlining. If such a fragment of the text (it looks
following way see tip NN) is «called» (mouse click), then
the reader will pass to the necessary place (to the tip NN). Certainly, color
found itself into the book but underlining remained. As we have already noted
after the book is published (it was the request of the editor), the text of the
book will be published on the Internet, where all hyperlinks will work and will
simplify and speed navigation in the text. This footnote « the link about
links» is the simplest example of a hyperlink: you dropped your eyes to the
«bottom» of the page, and then you could return to the basic text. It is a pity
that Word, where the text of the book was written, does not allow nested links
– it is possible to make a hyperlink in a link. Certainly the author has used
it. The author hopes that he does not abuse the hyperlinks. On the one hand, if
we speak about the electronic version of the book, hyperlinks are very
comfortable (you clicked with your mouse – see the link, and then click once
more – you return without getting lost). On the other hand – we have common
(flat) text of the book.
[7] If there is «An Art for The Art »,
then there are «A Programming for the Programming» too.