The beauty of software is in its funciion ,in its internal srurcture,and in zhe way inwhich it is created by a team. To a user,a program with just the right features presented through an intuitive and ( ) interface is beautiful.To a soware designer,an intemal sucre that is partitioned in a simple and intuitive manner,and that minirnÍzes intemal coupling is beautiful.To developers and managers ,a motivated tenof developers makingignificant progress eve week,and producing defect-free code,is beautifu l. There is beauty on all these levels. Our world needs software -- 10ts of syears ago soware was something that ran in a few big and expensive machines. years ago it was something that ran in most companies and industrial settings. Now there is sware running in our cell phones , watches ,appliances,automobi1es ,toys,and tools. And need for new and betler soware never ( ) As our civilization grows and expands,as developirig nations build their masuctures,as deve10ped nations striveωachieve ever greater efficiencies,the need for more and more software ( )to increase. It would be a great shame if,in all that soware,there was no beauty. We know that soware can be uglWe know that it can be hard to use,unreliable ,and carelessly structured. We know that there are software systems whose tangled and careless intemal structures make them expensive and difficult to change. We know that there are soware systems that present their features through an awkward and cumbersome interface.We know that there are software systems that crash and misbehave. These are ( ) systems. Unfortunately ,as a profession ,soware developers tend to create more ugly systems than beautiful ones. There is a secret at the best sofuλrare developers know. Beauty is cheaper than ugliness. Beauty is faster than ugliness. A beautiful soware system can be built and maintained in less time,and for less money,than an ugly one. Novice soware developers don't understand is. They think that they have to do everything fast and quick.They think that beauty is ( ). No! By doing things fast and quick,they make messes that make the software stiff and hard to understand. Beautiful systems are flexible and easy to understand. Building them and maintaining them is a joy. It is ugliness that is impractical.Ugliness will slow you down and make your software expensive and brittle. Beautiful systems cost the least to build and maintain ,and are delivered soonest.