“We flew down weekly to meet with IBM, but they thought the way to measure software was the amount of code we wrote, when really the better the software, the fewer lines of code.” WayLinesLearningAmountCodeProgrammingSoftwareFewerFlewIbm Author:Bill Gates
“Let us change our traditional attitude to the construction of programs. Instead of imagining that our main task is to instruct a computer what to do, let us concentrate rather on explaining to human beings what we want a computer to do.” WantHumansChangeHuman BeingsAttitudeLearningComputerProgramTasksSimplicityTraditionalProgrammingSoftwareConstructionExplainingComputer ProgrammingProgramming LanguagesComputer Language Author:Donald Knuth
“As a rule, software systems do not work well until they have been used, and have failed repeatedly, in real applications.” WellsHas BeensRealUsedLearningComputerProgrammingApplicationSoftwareInsomniaProgrammersComputer ProgrammingComputer ScienceProgramming LanguagesComputer LanguageSoftware DesignComputer ProgrammersComputer SoftwareComputer Systems Author:David Parnas
“At first I hoped that such a technically unsound project would collapse but I soon realized it was doomed to success. Almost anything in software can be implemented, sold, and even used given enough determination. There is nothing a mere scientist can say that will stand against the flood of a hundred million dollars. But there is one quality that cannot be purchased in this way - and that is reliability. The price of reliability is the pursuit of the utmost simplicity. It is a price which the very rich find most hard to pay.” WayFirstsHardEnoughUsedGivenPayQualityMillionsLearningRichProjectsHundredDeterminationScientistDollarsMereSimplicityPursuitProgrammingSoftwareCollapseFloodDoomedMillion DollarsProgrammersComputer ProgrammingReliabilitySoftware DesignComputer ProgrammersComputer SoftwareCode Quality Author:Tony Hoare
“The most important single aspect of software development is to be clear about what you are trying to build.” TryingImportantLearningClearDevelopmentAspectSimplicityProgrammingSoftwareProgrammersSoftware DesignSoftware Development Book:The C++ Programming Language Source: The C++ Programming Language
“Giving the Linus Torvalds Award to the Free Software Foundation is a bit like giving the Han Solo Award to the Rebel Alliance.” GivingBitsLearningFoundationProgrammingAwardsSoftwareRebelSoloAlliances Author:Richard Stallman
“The hardest part of the software task is arriving at a complete and consistent specification, and much of the essence of building a program is in fact the debugging of the specification.” FactsLearningBuildingProgramTasksEssenceHardestProgrammingConsistentSoftwareArrivingSoftware EngineeringSpecificationsDebugging Author:Fred Brooks
“Successful software always gets changed.” LearningSuccessfulChangedProgrammingSoftwareComputer ProgrammingProgramming LanguagesComputer Language Author:Fred Brooks
“In those days [batch processing] programmers never even documented their programs, because it was assumed that nobody else would ever use them. Now, however, time-sharing had made exchanging software trivial: you just stored one copy in the public repository and therby effectively gave it to the world. Immediately people began to document their programs and to think of them as being usable by others. They started to build on each other's work.” PeopleThinkingWorldMadeUseLearningProgramProgrammingCopiesSoftwareDocumentsProgrammersComputer ProgrammingProgramming LanguagesProcessingComputer LanguageExchanging Author:Robert Fano
“Beauty is more important in computing than anywhere else in technology because software is so complicated. Beauty is the ultimate defense against complexity. ... The geniuses of the computer field, on the the other hand, are the people with the keenest aesthetic senses, the ones who are capable of creating beauty. Beauty is decisive at every level: the most important interfaces, the most important programming languages, the winning algorithms are the beautiful ones.” PeopleImportantHandsBeautifulWinningLanguageLevelsTechnologyLearningFieldsGeniusComputerCreatingCapableUltimateComplicatedDefenseSensesComplexityProgrammingSoftwareAestheticComputer ProgrammingProgramming LanguagesComputer LanguageComputingAlgorithmsInterfacesCreating Beauty Author:David Gelernter
“Object-oriented programming as it emerged in Simula 67 allows software structure to be based on real-world structures, and gives programmers a powerful way to simplify the design and construction of complex programs.” WorldWayGivingRealPowerfulLearningDesignObjectsProgramStructureComplexesProgrammingReal WorldSoftwareConstructionProgrammersSimplifyComputer ProgrammingProgramming LanguagesComputer Language Author:David Gelernter
“To treat programming scientifically, it must be possible to specify the required properties of programs precisely. Formality is certainly not an end in itself. The importance of formal specifications must ultimately rest in their utility -in whether or not they are used to improve the quality of software or to reduce the cost of producing and maintaining software.” EndsUsedQualityLearningCostProgramTreatsImportancePropertyProgrammingSoftwareFormalMaintainingUtilityComputer ProgrammingProgramming LanguagesComputer LanguageFormalitySpecifications Author:Jim Horning
“...One of the most important lessons, perhaps, is the fact that SOFTWARE IS HARD. From now on I shall have significantly greater respect for every successful software tool that I encounter. During the past decade I was surprised to learn that the writing of programs for TeX and Metafont proved to be much more difficult than all the other things I had done (like proving theorems or writing books). The creation of good software demand a significiantly higher standard of accuracy than those other things do, and it requires a longer attention span than other intellectual tasks.” WritingImportantBookHardDoneFactsPastDifficultAttentionLearningSuccessfulGreaterCreationHigherLessonsDemandProveIntellectualStandardsProgramToolsTasksDecadesEncountersProgrammingSoftwareWriting A BookAccuracyTheoremsAttention SpanImportant LessonsHigher Standards Author:Donald Knuth
“The structure of a software system provides the ecology in which code is born, matures, and dies. A well-designed habitat allows for the successful evolution of all the components needed in a software system.” WellsDiesBornLearningSuccessfulEvolutionNeededStructureCodeProgrammingSoftwareEcologyComponentsComputer ProgrammingProgramming LanguagesComputer LanguageHabitat Author:Richard E. Pattis
“Microsoft knows that reliable software is not cost effective. According to studies, 90% to 95% of all bugs are harmless. They're never discovered by users, and they don't affect performance. It's much cheaper to release buggy software and fix the 5% to 10% of bugs people find and complain about.” PeopleKnowsLearningStudyCostPerformancesComplainingReleaseProgrammingSoftwareUsersBugsMicrosoftCheaper Author:Bruce Schneier
“Software gets slower faster than hardware gets faster. (Or, sometimes known by] Grove [the head of Intel] giveth and Gates [the head of Microsoft] taketh away.)” SometimesKnownLearningFasterProgrammingGatesSoftwareMicrosoftHardwareGrove Author:Niklaus Wirth