Phrases that a programmer should know

Phrases that a programmer should know

On Project Management

β€œAdding manpower to a late software project makes it later” β€”π”Ήπ•£π• π• π•œπ•€β€™π•€ 𝕃𝕒𝕨

β€œFor many phenomena, 80% of consequences stem from 20% of the causes” —ℙ𝕒𝕣𝕖π•₯𝕠 β„™π•£π•šπ•Ÿπ•”π•šπ•‘π•π•–

β€œNothing ever gets built on schedule or within budget” β€” ℂ𝕙𝕖𝕠𝕑𝕀 𝕃𝕒𝕨

β€œAnything that can go wrong will go wrong” β€” 𝕄𝕦𝕣𝕑𝕙π•ͺ’𝕀 𝕃𝕒𝕨

β€œI have always found that plans are useless, but planning is indispensable” β€” π”»π•¨π•šπ•˜π•™π•₯ π”Όπ•šπ•€π•–π•Ÿπ•™π• π•¨π•–π•£

On Estimation & Time Management

β€œThe first 90% of the code accounts for the first 90% of the development time. The remaining 10% of the code accounts for the other 90% of the development time” β€” π•‹π• π•ž β„‚π•’π•£π•˜π•šπ•π•

β€œThe time from now until the completion of the project tends to become constant” β€” ℍ𝕒𝕣π•₯𝕣𝕖𝕖’𝕀 𝕃𝕒𝕨

β€œWork expands to fill the time available for its completion” β€” β„™π•’π•£π•œπ•šπ•Ÿπ•€π• π•Ÿβ€™π•€ 𝕃𝕒𝕨

β€œIt always takes longer than you expect, even when you take into account Hofstadter’s Law” β€” ℍ𝕠𝕗𝕀π•₯𝕒𝕕π•₯𝕖𝕣’𝕀 𝕃𝕒𝕨

β€œThere’s never enough time to do it right, but there’s always enough time to do it over” β€” π•π•’π•”π•œ π”Ήπ•–π•£π•˜π•žπ•’π•Ÿ

On Requirements

β€œWalking on water and developing software from a specification are easy if both are frozen” β€” 𝔼𝕕𝕨𝕒𝕣𝕕 𝔹𝕖𝕣𝕒𝕣𝕕

β€œThe user will never know what they want until after the system is in production (and maybe not even then)” β€” β„π•¦π•žπ•‘π•™π•£π•–π•ͺ’𝕀 𝕃𝕒𝕨

β€œIt is easier to change the specification to fit the program than vice versa” β€” π”Έπ•π•’π•Ÿ β„™π•–π•£π•π•šπ•€

β€œThe more stable a requirement is considered, the greater the probability it is changed” β€” β„π•–π•šπ•€π•–π•Ÿπ•“π•–π•£π•˜β€™π•€ β„™π•£π•šπ•Ÿπ•”π•šπ•‘π•π•–

β€œIncreasing the number of choices will increase the decision time logarithmically” β€” β„π•šπ•”π•œβ€™π•€ 𝕃𝕒𝕨

β€œA man with a watch knows what time it is. A man with two watches is never sure” β€” π•Šπ•–π•˜π•’π•β€™π•€ 𝕃𝕒𝕨

On Architecture & Design

β€œHiring people to write code to sell is not the same as hiring people to design and build durable, usable, dependable software” —𝕃𝕒𝕣𝕣π•ͺ β„‚π• π•Ÿπ•€π•₯π•’π•Ÿπ•₯π•šπ•Ÿπ•–

β€œThe hardest part of the design is … keeping features out” β€” π”»π• π•Ÿπ•’π•π•• β„•π• π•£π•žπ•’π•Ÿ

β€œA software system built on top of a weak architecture will sink due to the weight of its success” β€” 𝕋𝕙𝕖 π”Έπ•£π•”π•™π•šπ•žπ•–π••π•–π•’π•Ÿ β„™π•£π•šπ•Ÿπ•”π•šπ•‘π•π•–

β€œBefore software can be reusable it first has to be usable” β€” ℝ𝕒𝕝𝕑𝕙 π•π• π•™π•Ÿπ•€π• π•Ÿ

β€œA complex system that works is invariably found to have evolved from a simple system that worked” β€” 𝔾𝕒𝕝𝕝’𝕀 𝕃𝕒𝕨

On Writing Bug-Free Code

β€œThe cheapest, fastest, and most reliable components are those that aren’t there” β€” π”Ύπ• π•£π••π• π•Ÿ 𝔹𝕖𝕝𝕝

β€œIf debugging is the process of removing software bugs, then programming must be the process of putting them in” β€” π”Όπ••π•€π•˜π•–π•£ π”»π•šπ•›π•œπ•€π•₯𝕣𝕒

β€œDeleted code is debugged code” β€” 𝕁𝕖𝕗𝕗 π•Šπ•šπ•”π•œπ•–π•

β€œBugs lurk in corners and congregate at boundaries” β€” π”Ήπ• π•£π•šπ•€ π”Ήπ•–π•šπ•«π•–π•£

β€œThere are two ways to write error-free programs; only the third one works” β€” π”Έπ•π•’π•Ÿ β„™π•–π•£π•π•šπ•€

On Programming

β€œIncreasing the efficiency with which a resource is used increases the usage of that resource” β€” π•π•–π•§π• π•Ÿβ€™π•€ ℙ𝕒𝕣𝕒𝕕𝕠𝕩

β€œIf you automate a mess, you get an automated mess” β€” ℝ𝕠𝕕 π•„π•šπ•”π•™π•’π•–π•

β€œA good programmer is someone who always looks both ways before crossing a one-way street” β€” π”»π• π•¦π•˜ π•ƒπ•šπ•Ÿπ••π•–π•£

β€œAny code of your own that you haven’t looked at for six or more months might as well have been written by someone else” β€” π”Όπ•’π•˜π•π•–π•€π• π•Ÿβ€™π•€ 𝕃𝕒𝕨

β€œOne man’s crappy software is another man’s full-time job” β€” π•π•–π•€π•€π•šπ•”π•’ 𝔾𝕒𝕀π•₯π• π•Ÿ

On Technology

β€œWe tend to overestimate the effect of a technology in the short run and underestimate the effect in the long run” β€” ℝ𝕠π•ͺ π”Έπ•žπ•’π•£π•’

β€œAny sufficiently advanced technology is indistinguishable from magic” β€” β„‚π•π•’π•£π•œπ•–β€™π•€ π•‹π•™π•šπ•£π•• 𝕃𝕒𝕨

β€œInstitutions will try to preserve the problem to which they are the solution” β€” ℂ𝕝𝕒π•ͺ π•Šπ•™π•šπ•£π•œπ•ͺ

β€œIt’s a curious thing about our industry: not only do we not learn from our mistakes, but we also don’t learn from our successes” β€” π•‚π•–π•šπ•₯𝕙 π”Ήπ•£π•’π•šπ•₯π•™π•¨π•’π•šπ•₯𝕖

Β