Mercurial > docs > unix-phil
comparison unix-phil.ms @ 12:018d5f9a2993
wrote about upgrowth and survival (ch03)
author | meillo@marmaro.de |
---|---|
date | Sat, 20 Feb 2010 23:54:43 +0100 |
parents | b32a43a62cae |
children | c665b9e7bf8a |
comparison
equal
deleted
inserted
replaced
11:b32a43a62cae | 12:018d5f9a2993 |
---|---|
531 when a different approach had been used. | 531 when a different approach had been used. |
532 | 532 |
533 .SH | 533 .SH |
534 Upgrowth and survival of software | 534 Upgrowth and survival of software |
535 .LP | 535 .LP |
536 | 536 So far it was talked about \fIwriting\fP or \fIbuilding\fP software. |
537 portability | 537 Although it is just a verb, it does imply a specific view on the work process |
538 | 538 it describes. |
539 The better verb, however, is to \fIgrow\fP. | |
540 .PP | |
541 Creating software in the sense of the Unix Philosophy is an incremental process. | |
542 It starts with a first prototype, which evolves as requirements change. | |
543 A quickly hacked shell script might become a large, sophisticated, | |
544 compiles program this way. | |
545 During its lifetime, it will get extended, rearranged, rebuilt (from scratch). | |
546 Growing software matches the view that ``software is never finished. It is only released.'' | |
547 .[ | |
548 FIXME | |
549 gancarz p.26 | |
550 .] | |
551 In this view, building a software is an evolutionary process; | |
552 it begins with the initial prototype and ends when the software is not used anymore. | |
553 .PP | |
554 Successful software is used by many for a long time. | |
555 This implies that the software is needed, useful, and better than alternatives. | |
556 Darwin talks about: ``The survival of the fittest.'' | |
557 .[ | |
558 FIXME | |
559 .] | |
560 Transferred to software: The most successful software, is the fittest, | |
561 is the one that survives. | |
562 The fitness is affected mainly by three properties: | |
563 .IP \(bu | |
564 portability of code | |
565 .IP \(bu | |
566 portability of data | |
567 .IP \(bu | |
568 range of usability | |
569 .IP \(bu | |
570 reuseability of parts | |
571 .LP | |
572 foo | |
573 | |
574 .PP | |
539 text files | 575 text files |
540 | 576 .PP |
541 reuse of independent parts | 577 reuse of independent parts |
542 | 578 |
543 | 579 |
544 | 580 |
545 | 581 |