Programmer quotes
From Motley Bytes Wiki
Contents
- 1 F_Terry_Baker
- 2 Robert_N_Britcher
- 3 Fred_Brooks
- 4 Alexander d'Agapeyeff
- 5 Edward_Emil_David
- 6 Edsger_Wybe_Dijkstra
- 7 Hans_Hüttel
- 8 Robert_M_McClure
- 9 Malcolm_McIlroy
- 10 David_E_Nye
- 11 Alan_Perlis
- 12 Steven_Pinker
- 13 Herbert_Schildt
- 14 Herbert_Simon
- 15 Gerald_Weinberg
- 15.1 Desire To Eliminate Programmers
- 15.2 Programmers Are Human Beings
- 15.3 Multiple Programmer Productivity
- 15.4 Small Teams More Efficient
- 15.5 Faster Programming Demands Better Programmers
- 15.6 A Good Program
- 15.7 Programming Not Individual
- 15.8 Furniture Partitions
- 15.9 Egoless Programming and Cognitive Dissonance
- 15.10 Egoless Programming and John von Neumann
- 15.11 Bad Managers and Good Programmers
- 15.12 Technical Leaders
- 15.13 Management Deskilling
- 15.14 Amateur and Professional Programmers
- 16 Edward_Yourdon
F_Terry_Baker
Code Library
“The most important of these is a development support library which encourages the visibility and manageability of the product, as well as reduces clerical effort on the part of the programmers. The library is typically maintained and operated by a programming librarian who serves to control the programming assets and to provide the necessary services for both programmers and management. As a result of its use, the entire project is maintained in a centralized, up-to-date, visible form which makes its status immediately apparent to code-competent software managers and makes it possible for programmers to answer their questions directly without relying on others.”
- Source: Baker, F. T. (1975). Software Management Through Improved Programming Technology. ACM ’75: Proceedings of the 1975 Annual Conference, 286–287. https://doi.org/10.1145/800181.810346
- Keywords: Programming_quotes Productivity_quotes Library_quotes Source_Code_quotes Important_quotes Development_quotes Support_quotes Encourage_quotes Visible_quotes Management_quotes Product_quotes Reduce_quotes Clerical_quotes Effort_quotes Part_quotes Programmer_quotes Typical_quotes Maintain_quotes Operate_quotes Librarian_quotes Serve_quotes Control_quotes Asset_quotes Provide_quotes Service_quotes Necessary_quotes Result_quotes Use_quotes Entire_quotes Project_quotes Centralize_quotes Up_to_date_quotes Form_quotes Make_quotes Status_quotes Immediate_quotes Apparent_quotes Code_quotes Competent_quotes Software_quotes Manager_quotes Possible_quotes Answer_quotes Question_quotes Direct_quotes Rely_quotes
Programmer Clerks
“...programmers typically get less programming done than they could because they do a great deal of clerical work directly.”
- Source: Baker, F. T. (1975). Software Management Through Improved Programming Technology. ACM ’75: Proceedings of the 1975 Annual Conference, 286–287. https://doi.org/10.1145/800181.810346
- Keywords: Programming_quotes Productivity_quotes Programmer_quotes Typical_quotes Clerical_quotes Work_quotes Direct_quotes
Programmer Management
“With each programmer doing his own work in his own way, managers are so busy just trying to find out what's going on and why things don't fit together, that they don't have any opportunity to improve quality and reliability.”
- Source: Baker, F. T. (1975). Software Management Through Improved Programming Technology. ACM ’75: Proceedings of the 1975 Annual Conference, 286–287. https://doi.org/10.1145/800181.810346
- Keywords: Programming_quotes Software_Management_quotes Programmer_quotes Work_quotes Manager_quotes Improve_quotes Technology_quotes
Robert_N_Britcher
Human Element
“The real scoop on programming and software is the human element. I didn't know Alan Turing or John von Neuman or the other inventors, but I've known plenty of programmers. We are just like everyone, part this, part that. Except we have to deal with enormous complexity, which springs upon us only after we are too far into what started out to be kind of fun - coding an algorithm and watching it run on a machine. Then it's too late and it all becomes work, very stressful work.”
- Source: Britcher, Robert N. (1999). The Limits of Software: People, Projects, and Perspectives. Reading, MA: Addison Wesley. ISBN 0-201-43323-0. Page 28.
- Keywords: Programming_quotes Software_quotes Humanity_quotes Programmer_quotes Complexity_quotes Algorithm_quotes Machine_quotes Work_quotes Stress_quotes Real_quotes Scoop_quotes Element_quotes Human_quotes Turing(topic)_quotes Neuman(topic)_quotes Inventor_quotes Plenty_quotes Part_quotes Deal_quotes Enormous_quotes Spring_quotes Far_quotes Start_quotes Fun_quotes Coding_quotes Watch_quotes Run_quotes Late_quotes
One Database
“I went too far. I specified too much detail. I insisted that one relational database connect every element of the software development environment. The subsystem designers and coders soon learned that this elegant solution could not work. Uniformity and commonality have their limits. ... They developed separate databases that could be queried independently. The team succeeded and I learned when to stop.”
- Source: Britcher, Robert N. (1999). The Limits of Software: People, Projects, and Perspectives. Reading, MA: Addison Wesley. ISBN 0-201-43323-0. Page 41.
- Keywords: Detail_quotes Database_quotes Relational_quotes Element_quotes Software_quotes Development_quotes Design_quotes Programmer_quotes Elegant_quotes Solution_quotes Uniformity_quotes Commonality_quotes Limitation_quotes Independent_quotes Query_quotes Team_quotes Success_quotes Learning_quotes Far_quotes Specify_quotes Insist_quotes Connect_quotes Environment_quotes Subsystem_quotes Coder_quotes Work_quotes Limit_quotes Separate_quotes Stop_quotes
Lines of Code
“...programmers abhor the line of code. When managers speak of it, programmers quicken their step. Most of them know that the line of code is as central to the meaning of a program as the period is to the meaning of Tolstoy's Anna Karenina.”
- Source: Britcher, Robert N. (1999). The Limits of Software: People, Projects, and Perspectives. Reading, MA: Addison Wesley. ISBN 0-201-43323-0. Page 50.
- Keywords: Programmer_quotes Programming_quotes Code_quotes Management_quotes Meaning_quotes Line_quotes Central_quotes Program_quotes Period_quotes Tolstoy(topic)_quotes
Limits of Testing
“The limits of software are never more obvious than in its testing. Software systems are beyond discrete and statistical analysis. A single incorrect state - out of two to the trillionth states - can down a rocket: To find such a fault in a software system would require a hundred generations of programmers - but after the first failure is found and fixed, all bets are off; they wouldn't be testing the same system anymore. We can design and build fail-safe systems, but can we know we did?”
- Source: Britcher, Robert N. (1999). The Limits of Software: People, Projects, and Perspectives. Reading, MA: Addison Wesley. ISBN 0-201-43323-0. Page 56.
- Keywords: Limitation_quotes Software_quotes Obvious_quotes Testing_quotes Discrete_quotes Statistics_quotes Analysis_quotes State_quotes Incorrect_quotes Correctness_quotes Error_quotes Rocket_quotes Fault_quotes System_quotes Programmer_quotes Programming_quotes Failure_quotes Correction_quotes Found_quotes Design_quotes Safe_quotes Knowledge_quotes Limit_quotes Beyond_quotes Trillion_quotes Down_quotes Find_quotes Require_quotes Generation_quotes First_quotes Fix_quotes Bet_quotes Off_quotes Fail_Safe_quotes
Testing Large Systems
“Many programmers do an adequate job of testing the logic of a single module. But testing an entire system is another matter. Once a module is absorbed into the mass of programs, running as part of the real world, the nature of testing changes.”
- Source: Britcher, Robert N. (1999). The Limits of Software: People, Projects, and Perspectives. Reading, MA: Addison Wesley. ISBN 0-201-43323-0. Page 57.
Mixed Abstractions
“... computer systems and programming attract brainy people because symbol systems mix abstractions. One thing appears to be something else depending on how you look at it.”
- Source: Britcher, Robert N. (1999). The Limits of Software: People, Projects, and Perspectives. Reading, MA: Addison Wesley. ISBN 0-201-43323-0. Page 129.
Programmer Errors
“Programmers will always make errors.”
- Source: Britcher, Robert N. (1999). The Limits of Software: People, Projects, and Perspectives. Reading, MA: Addison Wesley. ISBN 0-201-43323-0. Page 132.
- Keywords: Programmer_quotes Programming_quotes Error_quotes Make_quotes
Important Development Things
“The single, most important thing is that the individual programmer needs to be given total responsibility and control of the programming, including its function... eliminate project design and review as an exhaustive and rigorous process. Most of the design and review should occur as the program is written. ... Monitor progress on the project by talking to the individual programmers as [code] is being written. ... You must trust developers on the project to create a good product. ... Sometimes there are failures. ... The important thing is to fail quickly so you have time to find another approach. ... Developers must also feel free to say what they think to their supervisor. ... Managers should be the best programmers; ...There should be no overtime pay. ... Use profit-sharing and bonuses to get awesome products. ... Developers should each get their own office. ... Eliminate the dress code. Avoid meetings at all costs. ... Writing software is a lot like writing a book. Almost anyone can write garbage; very few can write a best-seller.”
- Source: Britcher, Robert N. (1999). The Limits of Software: People, Projects, and Perspectives. Reading, MA: Addison Wesley. ISBN 0-201-43323-0. Page 155-156.
- Keywords: Importance_quotes Programmer_quotes Responsibility_quotes Control_quotes Programming_quotes Function_quotes Design_quotes Review_quotes Rigorous_quotes Heavy_quotes Methodology_quotes Monitoring_quotes Progress_quotes Project_quotes Communication_quotes Trust_quotes Development_quotes Failure_quotes Quickness_quotes Thinking_quotes Expression_quotes Overtime_quotes Management_quotes Profit_Sharing_quotes Bonus_quotes Product_quotes Excellence_quotes Office_quotes Dress_Code_quotes Meeting_quotes Software_quotes Writing_quotes Garbage_quotes Best_Seller_quotes Compensation_quotes Eliminate_quotes Occur_quotes Coding_quotes Talk_quotes Code_quotes Developer_quotes Create_quotes Good_quotes Say_quotes Think_quotes Supervisor_quotes Manager_quotes Best_quotes Awesome_quotes Book_quotes
Fred_Brooks
Programmer Poetry
“The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds his castles in the air, from air, creating by exertion of the imagination. Few media of creation are so flexible, so easy to polish and rework, so readily capable of realizing grand conceptual structures.”
- Source: Brooks Jr., F. P. (1995). The Mythical Man-Month - Essays on Software Engineering (Anniversary Edition) | 1975/1995 (Anniv.). Boston. MA: Addison-Wesley. ISBN: 0201835959. Chapter 1, page 7.
- Keywords: Programming_quotes Programmer_quotes Creativity_quotes Software_quotes Thinking_quotes Imagination_quotes Flexibility_quotes Poetry_quotes Poet_quotes Work_quotes Slight_quotes Remove_quotes Pure_quotes Build_quotes Castle_quotes Air_quotes Create_quotes Exertion_quotes Polish_quotes Rework_quotes Capable_quotes Realize_quotes Grand_quotes Concept_quotes Structure_quotes
Child Bearing Task Law
“The bearing of a child takes nine months, no matter how many women are assigned. Many software tasks have this characteristic because of the sequential nature of debugging.”
- Source: Brooks Jr., F. P. (1995). The Mythical Man-Month - Essays on Software Engineering (Anniversary Edition) | 1975/1995 (Anniv.). Boston. MA: Addison-Wesley. ISBN: 0201835959. Chapter 2, page 17.
- Keywords: Child_Bearing_quotes Human_Resources_quotes Programming_quotes Programmer_quotes Productivity_quotes Project_Management_quotes Software_quotes Debugging_quotes Sequential_quotes Law_quotes Bearing_quotes Child_quotes Month_quotes Women_quotes Assign_quotes Management_quotes Task_quotes Characteristic_quotes Nature_quotes
Alexander d'Agapeyeff
Programmer Platoons
"In my experience programmers are rather difficult to shove around like platoons in the army."
- Source: Alexander d'Agapeyeff in a report entitled “Software Engineering: Report of a Conference Sponsored by the NATO Science Committee”. Chaired by Friedrich Ludwig Bauer. Edited by P. Naur; B. Randell. Conference held 1968-10-07 through 1968-10-11 in Garmisch, Germany. OCLC: 35337842. See http://homepages.cs.ncl.ac.uk
/brian.randell /NATO /index.html; http://homepages.cs.ncl.ac.uk /brian.randell /NATO /nato1968.PDF; https://dl.acm.org /citation.cfm ?id=1102020; https://books.google.com /books/about /Software_engineering.html ?id=Uc9QAAAAYAAJ. Page 50.
Edward_Emil_David
Software Engineer Training
"The problem of how the software engineers will get their practice is precisely the same as in other fields of engineering, and is insoluble. This is recognized in industry, where one makes sure that the young engineers coming in will get the proper kind of experience in time."
- Source: Edward E. David in a report entitled Software Engineering: Report of a Conference Sponsored by the NATO Science Committee. Chaired by Friedrich Ludwig Bauer. Edited by P. Naur; B. Randell. Conference held 1968-10-07 through 1968-10-11 in Garmisch, Germany. OCLC: 35337842. See http://homepages.cs.ncl.ac.uk
/brian.randell /NATO /index.html; http://homepages.cs.ncl.ac.uk /brian.randell /NATO /nato1968.PDF; https://dl.acm.org /citation.cfm ?id=1102020; https://books.google.com /books /about /Software_engineering.html?id=Uc9QAAAAYAAJ. Page 75.
Edsger_Wybe_Dijkstra
Humble Programmers
"We shall do a much better programming job, provided that we approach the task with a full appreciation of its tremendous difficulty, provided that we stick to modest and elegant programming languages, provided that we respect the intrinsic limitations of the human mind and approach the task as Very Humble Programmers."
- Source: Edsger Wybe Dijkstra in an article entitled The Humble Programmer. Written by Edsger W. Dijkstra. Published 1972 in Communications of the ACM, volume 15, number 10. DOI: 10.1145/355604.361591.
Competent Programmer
“The competent programmer is fully aware of the strictly limited size of his own skull; therefore he approaches the programming task in full humility, and among other things he avoids clever tricks like the plague.”
- Source: Dijkstra (1972) The Humble Programmer (EWD340). Retrieved 2022 from http://www.cs.utexas.edu
/users/EWD /transcriptions /EWD03xx /EWD340.html.
Competent Programming
“Don't blame me for the fact that competent programming, as I view it as an intellectual possibility, will be too difficult for 'the average programmer' — you must not fall into the trap of rejecting a surgical technique because it is beyond the capabilities of the barber in his shop around the corner.”
- Source: Dijkstra (1975) Comments at a Symposium (EWD 512). Retrieved from http://www.cs.utexas.edu
/users /EWD /transcriptions /EWD05xx /EWD512.html.
Powers of Abstraction
“The effective exploitation of his powers of abstraction must be regarded as one of the most vital activities of a competent programmer.”
- Source: The Humble Programmer (1972), 1972 Turing Award Lecture[1], Communications of the ACM 15 (10), October 1972: pp. 859–866.
- Keywords: Effectiveness_quotes Exploitation_quotes Power_quotes Abstraction_quotes Activity_quotes Competence_quotes Programmer_quotes Programming_quotes Vital_quotes
Math and Language
“Besides a mathematical inclination, an exceptionally good mastery of one's native tongue is the most vital asset of a competent programmer.”
- Source: Dijkstra (1975). How do we tell truths that might hurt? (numbered EWD498, written 1975). Retrieved 2022 from http://www.cs.utexas.edu
/users /EWD /transcriptions /EWD04xx /EWD498.html.
Hans_Hüttel
Chatbots and Programmers
“Even if chatbots should become a useful tool for programmers, their existence cannot mean the end of programming. It may well be the case that this combination of a built-in repository of code examples and the ability to easily retrieve code examples based on it can be used for generating ideas and for forms of ‘pair programming’.”
- Source: Written by Hans Hüttel in the journal article entitled “On Program Synthesis and Large Language Models”, in Communications of the ACM, volume 68, number 1, 2025-01. DOI:10.1145/3680410.
- Keywords: Chatbot_quotes Useful_quotes Tool_quotes Programmer_quotes Existence_quotes Mean_quotes End_quotes Programming_quotes Case_quotes Combination_quotes Built-in_quotes Repository_quotes Code_quotes Example_quotes Ability_quotes Easy_quotes Retrieve_quotes Base_quotes Use_quotes Generate_quotes Idea_quotes Form_quotes Pair_quotes
Robert_M_McClure
Time and Motion Code
“I know of one organisation that attempts to apply time and motion standards to the output of programmers. They judge a programmer by the amount of code he produces. This is guaranteed to produce insipid code”
- Source: Rober M. McClure in a report entitled Software Engineering: Report of a Conference Sponsored by the NATO Science Committee. Chaired by Friedrich Ludwig Bauer. Edited by P. Naur; B. Randell. Conference held 1968-10-07 through 1968-10-11 in Garmisch, Germany. OCLC: 35337842. See http://homepages.cs.ncl.ac.uk/brian.randell/NATO/index.html ; http://homepages.cs.ncl.ac.uk/brian.randell/NATO/nato1968.PDF ; https://dl.acm.org/citation.cfm?id=1102020 ; https://books.google.com/books/about/Software_engineering.html?id=Uc9QAAAAYAAJ . Page 52.
Malcolm_McIlroy
Automate Programmers
“It would be immoral for programmers to automate everybody but themselves.”
- Source: Malcolm Douglas McIlroy in a report entitled Software Engineering: Report of a Conference Sponsored by the NATO Science Committee. Chaired by Friedrich Ludwig Bauer. Edited by P. Naur; B. Randell. Conference held 1968-10-07 through 1968-10-11 in Garmisch, Germany. OCLC: 35337842. See http://homepages.cs.ncl.ac.uk/brian.randell/NATO/index.html ; http://homepages.cs.ncl.ac.uk/brian.randell/NATO/nato1968.PDF ; https://dl.acm.org/citation.cfm?id=1102020 ; https://books.google.com/books/about/Software_engineering.html?id=Uc9QAAAAYAAJ . Page 56.
- Keywords: Immoral_quotes Morality_quotes Programmer_quotes Automation_quotes Self_quotes Ethics_quotes
Negative Code
“The real hero of programming is the one who writes negative code.”
- Source: Malcolm McIlroy, spoken during a talk 2009-12-03 at the Dartmouth-Lake Sunapee Linux User Group (DLSLUB).
- Keywords: Hero_quotes Programming_quotes Programmer_quotes Code_quotes Negative_quotes Productivity_quotes
David_E_Nye
Programmers Perfectionists
“A single error in a program thousands of lines long prevented it from running correctly, and computer programmers became known as a fanatically exact group of perfectionists, working in an arcane specialty. Sociologists studying the ‘man-machine' interface found that a programmer's personality often changed after prolonged exposure to the computer, becoming severely logical and machine-like.”
- Source: A book. Written by David E. Nye. Entitled 'Narratives and Spaces'. Published in 1997 by Univerity of Exeter Press, Exeter, UK. Hardback ISBN 0-85989-555-6. Paperback ISBN 0-85989-556-4. Chapter 10, page 164.
- Keywords: Single_quotes Error_quotes Program_quotes Thousand_quotes Line_quotes Long_quotes Prevent_quotes Run_quotes Correct_quotes Computer_quotes Programmer_quotes Fanatic_quotes Exact_quotes Group_quotes Perfectionist_quotes Work_quotes Arcane_quotes Specialty_quotes Sociologist_quotes Study_quotes Man_quotes Machine_quotes Interface_quotes Find_quotes Personality_quotes Change_quotes Prolong_quotes Exposure_quotes Severe_quotes Logical_quotes Software_quotes Engineering_quotes Software_Engineering_quotes
Alan_Perlis
Software Engineering Competence
“It is a fact that there are software engineers around today who are quite competent. There are systems in many places which are quite stable and which provide magnificent service. It is also the case that there are large numbers of efforts, containing large numbers of programs and programmers, which have no software engineers on them, that is that people function as though they did not know how to build software.”
- Source: Alan Jay Perlis in a report entitled Software Engineering: Report of a Conference Sponsored by the NATO Science Committee. Chaired by Friedrich Ludwig Bauer. Edited by P. Naur; B. Randell. Conference held 1968-10-07 through 1968-10-11 in Garmisch, Germany. OCLC: 35337842. See http://homepages.cs.ncl.ac.uk/brian.randell/NATO/index.html ; http://homepages.cs.ncl.ac.uk/brian.randell/NATO/nato1968.PDF ; https://dl.acm.org/citation.cfm?id=1102020 ; https://books.google.com/books/about/Software_engineering.html?id=Uc9QAAAAYAAJ . Page 73.
- Note: Un-indexed continuation of quote: “I have a number of questions: 1. Is it possible to have software engineers in the numbers in which we need them, without formal software engineering education? 2. Is software engineering the same as Computer Science? 3. Is software engineering best provided by baccalaureate programs in universities? Or by adult education courses? Or by two year courses following the standard grade school education? 4. Do the people educated in these programs have a growing and future role in our society? 5. Will they be useful enough in a firm or government or university, and is their value such that they can distribute their talents in other activities, or must they always remain programmers? 6. What curriculum do we have in mind for software engineers, regardless of what level we choose to educate them? 7. Is software engineering really different from what we now call systems engineering?”
- Keywords: Fact_quotes Software_Engineering_quotes Competence_quotes System_quotes Place_quotes Stable_quotes Provide_quotes Magnificent_quotes Service_quotes Effort_quotes Large_quotesProgram_quotes Programmer_quotes People_quotes Knowledge_quotes Build_quotes Software_quotes Development_quotes Engineering_quotes
Ingenuity and Analysis
“Programmers are not to be measured by their ingenuity and their logic but by the completeness of their case analysis.”
- Source: Perlis, A. J. (1982). Special Feature: Epigrams on programming. ACM SIGPLAN Notices, 17(9), 7–13. http://doi.org/10.1145/947955.1083808
- Keywords: Programmer_quotes Measurement_quotes Ingenuity_quotes Logic_quotes Completion_quotes Case_quotes Analysis_quotes Requirements_quotes
Steven_Pinker
Blind Programmer
“Richard Dawkins called natural selection; the Blind Watchmaker; in the case of the mind, we can call it the Blind Programmer.”
- Source: Steven Pinker (1997). How the Mind Works. New York, NY: W. W. Norton. ISBN 978-0-393-06973-0; eISBN 978-0-393-06973-0. Chapter 1 Section Reverse-Engineering the Psyche.
- Keywords: Natural_Selection_quotes Selection_quotes Blind_quotes Watchmaker_quotes Case_quotes Mind_quotes Programmer_quotes Dawkins(topic)_quotes Natural_quotes Call_quotes
Herbert_Schildt
C and C++
“C gives the programmer what the programmer wants; few restrictions, few complaints... C++ maintains the original spirit of C, that the programmer not the language is in charge.”
- Source: Herbert Schildt. In the book entitled C++: The Complete Reference. Written by Herbert Schildt. Fourth edition. Published by McGraw-Hill in 2003. ISBN 978-0072226805. Page 8.
Herbert_Simon
Top Down or Bottom Up
“Alternatives are also open, in organizing the design process, as to how far development of possible subsystems will be carried before the overall coordinating design is developed in detail, or vice-versa, how far the overall design should be carried before various components, or possible components, are developed. These alternatives of design are familiar to architects. They are familiar also to composers, who must decide how far the architectonics of a musical structure will be evolved before some of the component musical themes and other elements have been invented. Computer programmers face the same choices, between working downward from executive routines to subroutines or upward from component subroutines to a coordinating executive.”
- Source: Simon, H. A. (1996). The Sciences of the Artificial (Third Edition). Computers & Mathematics with Applications (3rd ed., Vol. 33). Cambridge, MA: MIT Press. ISBN: 9780585360102. Retrieved 2018-08-23 from https://monoskop.org/images/9/9c/Simon_Herbert_A_The_Sciences_of_the_Artificial_3rd_ed.pdf. Chapter 5, page 129.
- Keywords: Alternative_quotes Open_quotes Organize_quotes Design_quotes Process_quotes Far_quotes Development_quotes Subsystem_quotes Carry_quotes Coordination_quotes Detail_quotes Vice-versa_quotes Overall_quotes Component_quotes Possibility_quotes Familiar_quotes Composer_quotes Decision_quotes Architectonic_quotes Music_quotes Theme_quotes Element_quotes Invention_quotes Computer_quotes Programmer_quotes Face_quotes Choice_quotes Work_quotes Downward_quotes Executive_quotes Routine_quotes Subroutine_quotes Upward_quotes Structure_quotes Evolve_quotes
Gerald_Weinberg
Desire To Eliminate Programmers
“Over the years, executives have backed their desire to eliminate programmers with staggering funds.”
- Source: Book Entitled: The Psychology of Computer Programming (Silver anniversary edition). Edition: Silver anniversary. Written By: Gerald Weinberg. Published originally: 1971. Republished: 2011.
- Keywords: Management_quotes Programmer_quotes Programming_quotes Desire_quotes Elimination_quotes Cost_quotes Year_quotes Executive_quotes Backed_quotes Stagger_quotes
Programmers Are Human Beings
“If our experiences are any indication, each of them could be functioning more efficiently, with greater satisfaction, if he and his manager would only learn to look upon the programmer as a human being, rather than as another one of the machines.”
- Source: Book Entitled: The Psychology of Computer Programming (Silver anniversary edition). Edition: Silver anniversary. Written By: Gerald Weinberg. Published originally: 1971. Republished: 2011.
Multiple Programmer Productivity
“As a rough rule, three programmers organized into a team can do only twice the work of a single programmer of the same ability — because of time spent on coordination problems. Moreover, three groups of three programmers can do only twice the work of a single group.”
- Source: Book Entitled: The Psychology of Computer Programming (Silver anniversary edition). Edition: Silver anniversary. Written By: Gerald Weinberg. Published originally: 1971. Republished: 2011. Chapter: 5.
- Keywords: Rule_quotes Programmer_quotes Team_quotes Work_quotes Productivity_quotes Ability_quotes Coordination_quotes Problem_quotes Rough_quotes
Small Teams More Efficient
“In any case, the basic rule for size and composition of programming teams would seem to be this — for the best programming at the least cost, give the best possible programmers you can find sufficient time so you need the smallest number of them. When you have to work faster, or with less experienced people, costs and uncertainties will rise. In any case, the worst way to do a programming project is to hire a horde of trainees and put them to work under pressure and without supervision — although this is the most common practice today.”
- Source: Chapter 5. Weinberg, G. M. (2011). The Psychology of Computer Programming (Silver anniversary edition) | 1971. Weinberg & Weinberg.
- Keywords: Rule_quotes Size_quotes Programming_quotes Programmer_quotes Team_quotes Cost_quotes Slack_quotes Time_quotes Fast_quotes Experience_quotes People_quotes Hiring_quotes Training_quotes Pressure_quotes Supervision_quotes Management_quotes Practice_quotes Common_quotes Basic_quotes Composition_quotes Quality_quotes Small_quotes Rise_quotes Uncertainty_quotes Worse_quotes Way_quotes Project_quotes Horde_quotes Trainee_quotes Work_quotes
Faster Programming Demands Better Programmers
“If we have to have the program faster, we shall have to hire a better man for the job.”
- Source: Chapter 5. Weinberg, G. M. (2011). The Psychology of Computer Programming (Silver anniversary edition) | 1971. Weinberg & Weinberg.
- See Also:
- Keywords: Fast_quotes Programming_quotes Programmer_quotes Hiring_quotes Better_quotes Man_quotes Job_quotes
A Good Program
“Most programmers feel that there is such a thing as good programming. Although this feeling may be valid, it does not follow that there is such a thing as a good program. Not, at least, in the sense that we can study the program out of the context in which it was developed and in which it will be used and declare it to have a goodness of 83.72 percent.”
- Source: Chapter 2. Weinberg, G. M. (2011). The Psychology of Computer Programming (Silver anniversary edition) | 1971. Weinberg & Weinberg.
Programming Not Individual
“But there is much evidence, as we shall see presently, to argue that the proper study of programming is done at the level of the programming social unit. Not that the individual level is unimportant, but we might start by asking why, if the average programmer spends two-thirds of his time working with other people rather than working alone (yes, it's true!), that 99 percent of the studies have been on individual programmers.”
- Source: Chapter 3. Weinberg, G. M. (2011). The Psychology of Computer Programming (Silver anniversary edition) | 1971. Weinberg & Weinberg.
- Keywords: Evidence_quotes Programming_quotes Society_quotes Group_quotes Team_quotes Organization_quotes Level_quotes Individual_quotes Importance_quotes Programmer_quotes Time_quotes Productivity_quotes Research_quotes Study_quotes Social_quotes Unimportant_quotes Why_quotes Average_quotes People_quotes Coordination_quotes Cooperation_quotes
Furniture Partitions
“Someone should definitely study the depressing effect that the all-too-common half partitions have on programmer productivity. They manage to cut off all useful communication while permitting all disturbing sound and movement to penetrate.”
- Source: Chapter 4. Weinberg, G. M. (2011). The Psychology of Computer Programming (Silver anniversary edition) | 1971. Weinberg & Weinberg.
Egoless Programming and Cognitive Dissonance
“Now, what cognitive dissonance has to do with our programming conflict should be vividly clear. A programmer who truly sees his program as an extension of his own ego is not going to be trying to find all the errors in that program. On the contrary, he is going to be trying to prove that the program is correct — even if this means the oversight of errors which are monstrous to another eye.”
- Source: Chapter 4. Weinberg, G. M. (2011). The Psychology of Computer Programming (Silver anniversary edition) | 1971. Weinberg & Weinberg.
- See Also:
- Keywords: Egoless_quotes Cognition_quotes Dissonance_quotes Programming_quotes Conflict_quotes Programmer_quotes Program_quotes Extension_quotes Ego_quotes Self_quotes Error_quotes Debugging_quotes Proof_quotes Correctness_quotes Bias_quotes Oversight_quotes Monster_quotes Eye_quotes Observation_quotes Vivid_quotes Clear_quotes Try_quotes Find_quotes
Egoless Programming and John von Neumann
“Programming groups who have conquered the ego problem do exist and have existed from the earliest days of computing. John von Neumann himself was perhaps the first programmer to recognize his inadequacies with respect to examination of his own work. Those who knew him have said that he was constantly asserting what a lousy programmer he was, and that he incessantly pushed his programs on other people to read for errors and clumsiness. Yet the common image today of von Neumann is of the unparalleled computing genius — flawless in his every action. And indeed, there can be no doubt of von Neumann's genius. His very ability to realize his human limitations put him head and shoulders above the average programmer today. Average people can be trained to accept their humanity — their inability to function like a machine — and to value it and work with others so as to keep it under the kind of control needed if programming is to be successful.”
- Source: Chapter 4. Weinberg, G. M. (2011). The Psychology of Computer Programming (Silver anniversary edition) | 1971. Weinberg & Weinberg.
- See Also:
- Keywords: Egoless_quotes Programming_quotes Group_quotes Conquer_quotes Ego_quotes Computing_quotes Neumann_quotes Programmer_quotes Recognition_quotes Inadequacy_quotes Examination_quotes Peer_Review_quotes Error_quotes Clumsy_quotes Genius_quotes Flawless_quotes Action_quotes Doubt_quotes Ability_quotes Human_Limitations_quotes Training_quotes Humanity_quotes Functional_quotes Machine_quotes Control_quotes Success_quotes Problem_quotes Exist_quotes Earliest_quotes Respect_quotes Work_quotes Constant_quotes Assert_quotes Lousy_quotes Incessant_quotes Push_quotes People_quotes Read_quotes Image_quotes Unparallel_quotes Realize_quotes Human_quotes Limitation_quotes Head_quotes Shoulder_quotes Above_quotes Average_quotes Inability_quotes Value_quotes
Bad Managers and Good Programmers
“Bad managers are easier to find than good programmers.”
- Source: Chapter 5. Weinberg, G. M. (2011). The Psychology of Computer Programming (Silver anniversary edition) | 1971. Weinberg & Weinberg.
- Keywords: Bad_quotes Manager_quotes Good_quotes Programmer_quotes Find_quotes Easy_quotes
Technical Leaders
“Leadership, in the sense that social scientists use it, means the ability to influence people. Programmers, being people who tend to value creative work and professional competence, tend to put their stock in people whom they perceive to be good at the things they do. Thus, it is easier to exert leadership over — to influence — programmers by being a soft-spoken programming wizard than by being the world's fastest-talking salesman. When nonprogramming leaders are brought in to be in charge of programming teams, trouble usually brews unless the appointed leader explicitly and implicitly recognizes his incapacity on technical matters. The very worst he can do — and this goes also for a former programmer who has lost touch with the field — is to try to match programming wits with the other members of the team. Although a team might come to respect a leader who openly admitted his programming inexperience, they could only come to ridicule one whose pretense at knowledge was revealed to be a sham.”
- Source: Chapter 5. Weinberg, G. M. (2011). The Psychology of Computer Programming (Silver anniversary edition) | 1971. Weinberg & Weinberg.
- Keywords: Technology_quotes Leadership_quotes Society_quotes Science_quotes Sociology_quotes Ability_quotes Influence_quotes People_quotes Creativity_quotes Professional_quotes Competence_quotes Trust_quotes Good_quotes Skill_quotes Wizard_quotes Programming_quotes Fast_quotes Talking_quotes Salesman_quotes Humility_quotes Respect_quotes Team_quotes Experience_quotes Ridicule_quotes Pretense_quotes Knowledge_quotes Revealing_quotes Sham_quotes Programmer_quotes Stock_quotes Perceive_quotes Soft_quotes Spoken_quotes World_quotes Nonprogramming_quotes Brought_quotes Charge_quotes Trouble_quotes Brew_quotes Appoint_quotes Explicitly_quotes Implicitly_quotes Recognize_quotes Incapacity_quotes Worse_quotes Former_quotes Lost_quotes Touch_quotes Field_quotes Try_quotes Match_quotes Wit_quotes Member_quotes Admit_quotes Inexperience_quotes
Management Deskilling
“Even though the nth-level manager may have originally been a programmer, which is rare enough, he has almost certainly lost any programming ability by the time he reaches these heights. Given the rapid change of programming techniques and hardware, the higher-level manager becomes obsolete even if he retains the skills he originally had and keeps them sharply honed, for those languages and those machines are no longer in use. In a small survey of working programmers, only 15 percent of the first-line managers were thought to be as skillful as the programmers themselves, and none of the higher-level managers.”
- Source: Chapter 6. Weinberg, G. M. (2011). The Psychology of Computer Programming (Silver anniversary edition) | 1971. Weinberg & Weinberg.
- Keywords: Manager_quotes Level_quotes Programmer_quotes Deskill_quotes Skill_quotes Ability_quotes Technology_quotes Hardware_quotes Language_quotes Machine_quotes Survey_quotes Originally_quotes Rare_quotes Certainly_quotes Time_quotes Lost_quotes Reach_quotes Height_quotes Rapid_quotes Change_quotes Programming_quotes Technique_quotes Higher_quotes Obsolete_quotes Retain_quotes Keep_quotes Hone_quotes Longer_quotes Use_quotes Small_quotes Working_quotes Line_quotes First_quotes Thought_quotes
Amateur and Professional Programmers
“The amateur... is looking for a way to get the job done. If he runs into difficulty, all he wants is to surmount it — the manner of doing so is of little consequence. Not so, however, for the professional. She may well be aware of numerous ways of circumnavigating the problem at hand. She may even employ one of them for the immediate purpose of getting the job done. But her work does not stop there; it begins there. It begins because she must understand why she did not understand, in order that she may prepare herself for the programs she may someday write which will require that understanding. The amateur, then, is learning about his problem... The professional, conversely, is learning about her profession — programming — and the problem being programmed is only one incidental step in her process of development.”
- Source: Chapter 7. Weinberg, G. M. (2011). The Psychology of Computer Programming (Silver anniversary edition) | 1971. Weinberg & Weinberg.
- Keywords: Amateur_quotes Professional_quotes Job_quotes Difficulty_quotes Circumnavigation_quotes Problem_quotes Work_quotes Understanding_quotes Program_quotes Programming_quotes Programmer_quotes Preparation_quotes Process_quotes Development_quotes Look_quotes Way_quotes Surmount_quotes Manner_quotes Do_quotes Little_quotes Consequence_quotes Numerous_quotes Hand_quotes Employ_quotes Immediate_quotes Purpose_quotes Stop_quotes Begin_quotes Order_quotes Write_quotes Someday_quotes Require_quotes Learning_quotes Converse_quotes Profession_quotes Incidental_quotes Step_quotes
Edward_Yourdon
Enterprise Productivity
“Enterprise productivity is much more important than project productivity or programmer productivity.”
- Source: Edward Yourdon in the book “Decline and Fall of the American Programmer”. Published in 1992 by Prentice Hall. ISBN: 0-13-203670-3. Chapter 1, section 1.6, page 18.
- Keywords: Enterprise_quotes Productivity_quotes Project_quotes Programmer_quotes
Better Programming Languages
“Better coding techniques may do nothing more than help you arrive at a disaster sooner than before. Better programming languages, used without anything else, may be just what your programmers need to develop a brilliant solution to the wrong problem.”
- Source: Edward Yourdon in the book “Decline and Fall of the American Programmer”. Published in 1992 by Prentice Hall. ISBN: 0-13-203670-3. Chapter 2, section 2.1, page 27.
Recruiting Audition
“Let me add one new strategy to your recruiting and interviewing approach...: The ‘audition’ process... ask a candidate to programmer or analyst to give a 30 to 60 minute presentation on some technical subject to the group that would normally interview him [or her].”
- Source: Edward Yourdon in the book “Decline and Fall of the American Programmer”. Published in 1992 by Prentice Hall. ISBN: 0-13-203670-3. Chapter 3, section 3.6, page 55.