-
Notifications
You must be signed in to change notification settings - Fork 8
/
epigrams_in_programming
360 lines (360 loc) · 15.1 KB
/
epigrams_in_programming
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
EPIGRAMS IN PROGRAMMING
1. One man's constant is another man's variable.
%
EPIGRAMS IN PROGRAMMING
2. Functions delay binding; data structures induce binding. Moral: Structure data late in the programming process.
%
EPIGRAMS IN PROGRAMMING
3. Syntactic sugar causes cancer of the semicolon.
%
EPIGRAMS IN PROGRAMMING
4. Every program is a part of some other program and rarely fits.
%
EPIGRAMS IN PROGRAMMING
5. If a program manipulates a large amount of data, it does so in a small number of ways.
%
EPIGRAMS IN PROGRAMMING
6. Symmetry is a complexity-reducing concept (co-routines include subroutines); seek it everywhere.
%
EPIGRAMS IN PROGRAMMING
7. It is easier to write an incorrect program than understand a correct one.
%
EPIGRAMS IN PROGRAMMING
8. A programming language is low level when its programs require attention to the irrelevant.
%
EPIGRAMS IN PROGRAMMING
9. It is better to have 100 functions operate on one data structure than 10 functions on 10 data structures.
%
EPIGRAMS IN PROGRAMMING
10. Get into a rut early: Do the same process the same way. Accumulate idioms. Standardize. The only difference(!) between Shakespeare and you was the size of his idiom list - not the size of his vocabulary.
%
EPIGRAMS IN PROGRAMMING
11. If you have a procedure with ten parameters, you probably missed some.
%
EPIGRAMS IN PROGRAMMING
12. Recursion is the root of computation since it trades description for time.
%
EPIGRAMS IN PROGRAMMING
13. If two people write exactly the same program, each should be put into microcode and then they certainly won't be the same.
%
EPIGRAMS IN PROGRAMMING
14. In the long run every program becomes rococo - then rubble.
%
EPIGRAMS IN PROGRAMMING
15. Everything should be built top-down, except the first time.
%
EPIGRAMS IN PROGRAMMING
16. Every program has (at least) two purposes: the one for which it was written, and another for which it wasn't.
%
EPIGRAMS IN PROGRAMMING
17. If a listener nods his head when you're explaining your program, wake him up.
%
EPIGRAMS IN PROGRAMMING
18. A program without a loop and a structured variable isn't worth writing.
%
EPIGRAMS IN PROGRAMMING
19. A language that doesn't affect the way you think about programming, is not worth knowing.
%
EPIGRAMS IN PROGRAMMING
20. Wherever there is modularity there is the potential for misunderstanding: Hiding information implies a need to check communication.
%
EPIGRAMS IN PROGRAMMING
21. Optimization hinders evolution.
%
EPIGRAMS IN PROGRAMMING
22. A good system can't have a weak command language.
%
EPIGRAMS IN PROGRAMMING
23. To understand a program you must become both the machine and the program.
%
EPIGRAMS IN PROGRAMMING
24. Perhaps if we wrote programs from childhood on, as adults we'd be able to read them.
%
EPIGRAMS IN PROGRAMMING
25. One can only display complex information in the mind. Like seeing, movement or flow or alteration of view is more important than the static picture, no matter how lovely.
%
EPIGRAMS IN PROGRAMMING
26. There will always be things we wish to say in our programs that in all known languages can only be said poorly.
%
EPIGRAMS IN PROGRAMMING
27. Once you understand how to write a program get someone else to write it.
%
EPIGRAMS IN PROGRAMMING
28. Around computers it is difficult to find the correct unit of time to measure progress. Some cathedrals took a century to complete. Can you imagine the grandeur and scope of a program that would take as long?
%
EPIGRAMS IN PROGRAMMING
29. For systems, the analogue of a face-lift is to add to the control graph an edge that creates a cycle, not just an additional node.
%
EPIGRAMS IN PROGRAMMING
30. In programming, everything we do is a special case of something more general -- and often we know it too quickly.
%
EPIGRAMS IN PROGRAMMING
31. Simplicity does not precede complexity, but follows it.
%
EPIGRAMS IN PROGRAMMING
32. Programmers are not to be measured by their ingenuity and their logic but by the completeness of their case analysis.
%
EPIGRAMS IN PROGRAMMING
33. The eleventh commandment was "Thou Shalt Compute" or "Thou Shalt Not Compute" - I forget which.
%
EPIGRAMS IN PROGRAMMING
34. The string is a stark data structure and everywhere it is passed there is much duplication of process. It is a perfect vehicle for hiding information.
%
EPIGRAMS IN PROGRAMMING
35. Everyone can be taught to sculpt: Michelangelo would have had to be taught not to. So it is with great programmers.
%
EPIGRAMS IN PROGRAMMING
36. The use of a program to prove the 4-color theorem will not change mathematics - it merely demonstrates that the theorem, a challenge for a century, is probably not important to mathematics.
%
EPIGRAMS IN PROGRAMMING
37. The most important computer is the one that rages in our skulls and ever seeks that satisfactory external emulator. The standarization of real computers would be a disaster - and so it probably won't happen.
%
EPIGRAMS IN PROGRAMMING
38. Structured Programming supports the law of the excluded middle.
%
EPIGRAMS IN PROGRAMMING
39. Re graphics: A picture is worth 10K words - but only those to describe the picture. Hardly any sets of 10K words can be adequately described with pictures.
%
EPIGRAMS IN PROGRAMMING
40. There are two ways to write error-free programs; only the third one works.
%
EPIGRAMS IN PROGRAMMING
41. Some programming languages manage to absorb change, but withstand progress.
%
EPIGRAMS IN PROGRAMMING
42. You can measure a programmer's perspective by noting his attitude on the continuing vitality of FORTRAN.
%
EPIGRAMS IN PROGRAMMING
43. In software systems, it is often the early bird that makes the worm.
%
EPIGRAMS IN PROGRAMMING
44.Sometimes I think the only universal in the computing field is the fetch-execute cycle.
%
EPIGRAMS IN PROGRAMMING
45. The goal of computation is the emulation of our synthetic abilities, not the understanding of our analytic ones.
%
EPIGRAMS IN PROGRAMMING
46. Like punning, programming is a play on words.
%
EPIGRAMS IN PROGRAMMING
47. As Will Rogers would have said, "There is no such thing as a free variable."
%
EPIGRAMS IN PROGRAMMING
48. The best book on programming for the layman is "Alice in Wonderland"; but that's because it's the best book on anything for the layman.
%
EPIGRAMS IN PROGRAMMING
49. Giving up on assembly language was the apple in our Garden of Eden: Languages whose use squanders machine cycles are sinful. The LISP machine now permits LISP programmers to abandon bra and fig-leaf.
%
EPIGRAMS IN PROGRAMMING
50. When we understand knowledge-based systems, it will be as before -- except our fingertips will have been singed.
%
EPIGRAMS IN PROGRAMMING
51. Bringing computers into the home won't change either one, but may revitalize the corner saloon.
%
EPIGRAMS IN PROGRAMMING
52. Systems have sub-systems and sub-systems have sub- systems and so on ad infinitum - which is why we're always starting over.
%
EPIGRAMS IN PROGRAMMING
53. So many good ideas are never heard from again once they embark in a voyage on the semantic gulf.
%
EPIGRAMS IN PROGRAMMING
54. Beware of the Turing tar-pit in which everything is possible but nothing of interest is easy.
%
EPIGRAMS IN PROGRAMMING
55. A LISP programmer knows the value of everything, but the cost of nothing.
%
EPIGRAMS IN PROGRAMMING
56. Software is under a constant tension. Being symbolic it is arbitrarily perfectible; but also it is arbitrarily changeable.
%
EPIGRAMS IN PROGRAMMING
57. It is easier to change the specification to fit the program than vice versa.
%
EPIGRAMS IN PROGRAMMING
58. Fools ignore complexity. Pragmatists suffer it. Some can avoid it. Geniuses remove it.
%
EPIGRAMS IN PROGRAMMING
59. In English every word can be verbed. Would that it were so in our programming languages.
%
EPIGRAMS IN PROGRAMMING
60. In seeking the unattainable, simplicity only gets in the way.
%
EPIGRAMS IN PROGRAMMING
61. In programming, as in everything else, to be in error is to be reborn.
%
EPIGRAMS IN PROGRAMMING
62. In computing, invariants are ephemeral.
%
EPIGRAMS IN PROGRAMMING
63. When we write programs that "learn", it turns out that we do and they don't.
%
EPIGRAMS IN PROGRAMMING
64. Often it is the means that justify the ends: Goals advance technique and technique survives even when goal structures crumble.
%
EPIGRAMS IN PROGRAMMING
65. Make no mistake about it: Computers process numbers - not symbols. We measure our understanding (and control) by the extent to which we can arithmetize an activity.
%
EPIGRAMS IN PROGRAMMING
66. Making something variable is easy. Controlling duration of constancy is the trick.
%
EPIGRAMS IN PROGRAMMING
67. Think of all the psychic energy expended in seeking a fundamental distinction between "algorithm" and "program".
%
EPIGRAMS IN PROGRAMMING
68. If we believe in data structures, we must believe in independent (hence simultaneous) processing. For why else would we collect items within a structure? Why do we tolerate languages that give us the one without the other?
%
EPIGRAMS IN PROGRAMMING
69. In a 5 year period we get one superb programming language. Only we can't control when the 5 year period will be.
%
EPIGRAMS IN PROGRAMMING
70. Over the centuries the Indians developed sign language for communicating phenomena of interest. Programmers from different tribes (FORTRAN, LISP, ALGOL, SNOBOL, etc.) could use one that doesn't require them to carry a blackboard on their ponies.
%
EPIGRAMS IN PROGRAMMING
71. Documentation is like term insurance: It satisfies because almost no one who subscribes to it depends on its benefits.
%
EPIGRAMS IN PROGRAMMING
72. An adequate bootstrap is a contradiction in terms.
%
EPIGRAMS IN PROGRAMMING
73. It is not a language's weakness but its strengths that control the gradient of its change: Alas, a language never escapes its embryonic sac.
%
EPIGRAMS IN PROGRAMMING
74. Is it possible that software is not like anything else, that it is meant to be discarded: that the whole point is to see it as a soap bubble?
%
EPIGRAMS IN PROGRAMMING
75. Because of its vitality, the computing field is always in desperate need of new cliches: Banality soothes our nerves.
%
EPIGRAMS IN PROGRAMMING
76. It is the user who should parameterize procedures, not their creators.
%
EPIGRAMS IN PROGRAMMING
77. The cybernetic exchange between man, computer and algorithm is like a game of musical chairs: The frantic search for balance always leaves one of the three standing ill at ease.
%
EPIGRAMS IN PROGRAMMING
78. If your computer speaks English, it was probably made in Japan.
%
EPIGRAMS IN PROGRAMMING
79. A year spent in artificial intelligence is enough to make one believe in God.
%
EPIGRAMS IN PROGRAMMING
80. Prolonged contact with the computer turns mathematicians into clerks and vice versa.
%
EPIGRAMS IN PROGRAMMING
81. In computing, turning the obvious into the useful is a living definition of the word "frustration".
%
EPIGRAMS IN PROGRAMMING
82. We are on the verge: Today our program proved Fermat's next-to-last theorem.
%
EPIGRAMS IN PROGRAMMING
83. What is the difference between a Turing machine and the modern computer? It's the same as that between Hillary's ascent of Everest and the establishment of a Hilton hotel on its peak.
%
EPIGRAMS IN PROGRAMMING
84. Motto for a research laboratory: What we work on today, others will first think of tomorrow.
%
EPIGRAMS IN PROGRAMMING
85. Though the Chinese should adore APL, it's FORTRAN they put their money on.
%
EPIGRAMS IN PROGRAMMING
86. We kid ourselves if we think that the ratio of procedure to data in an active data-base system can be made arbitrarily small or even kept small.
%
EPIGRAMS IN PROGRAMMING
87. We have the mini and the micro computer. In what semantic niche would the pico computer fall?
%
EPIGRAMS IN PROGRAMMING
88. It is not the computer's fault that Maxwell's equations are not adequate to design the electric motor.
%
EPIGRAMS IN PROGRAMMING
89. One does not learn computing by using a hand calculator, but one can forget arithmetic.
%
EPIGRAMS IN PROGRAMMING
90. Computation has made the tree flower.
%
EPIGRAMS IN PROGRAMMING
91. The computer reminds one of Lon Chaney -- it is the machine of a thousand faces.
%
EPIGRAMS IN PROGRAMMING
92. The computer is the ultimate polluter: its feces are indistinguish- able from the food it produces.
%
EPIGRAMS IN PROGRAMMING
93. When someone says "I want a programming language in which I need only say what I wish done," give him a lollipop.
%
EPIGRAMS IN PROGRAMMING
94. Interfaces keep things tidy, but don't accelerate growth: Functions do.
%
EPIGRAMS IN PROGRAMMING
95. Don't have good ideas if you aren't willing to be responsible for them.
%
EPIGRAMS IN PROGRAMMING
96. Computers don't introduce order anywhere as much as they expose opportunities.
%
EPIGRAMS IN PROGRAMMING
97. When a professor insists computer science is X but not Y, have compassion for his graduate students.
%
EPIGRAMS IN PROGRAMMING
98. In computing, the mean time to failure keeps getting shorter.
%
EPIGRAMS IN PROGRAMMING
99. In man-machine symbiosis, it is man who must adjust: The machines can't.
%
EPIGRAMS IN PROGRAMMING
100. We will never run out of things to program as long as there is a single program around.
%
EPIGRAMS IN PROGRAMMING
101. Dealing with failure is easy: Work hard to improve. Success is also easy to handle: You've solved the wrong problem. Work hard to improve.
%
EPIGRAMS IN PROGRAMMING
102. One can't proceed from the informal to the formal by formal means.
%
EPIGRAMS IN PROGRAMMING
103. Purely applicative languages are poorly applicable.
%
EPIGRAMS IN PROGRAMMING
104. The proof of a system's value is its existence.
%
EPIGRAMS IN PROGRAMMING
105. You can't communicate complexity, only an awareness of it.
%
EPIGRAMS IN PROGRAMMING
106. It's difficult to extract sense from strings, but they're the only communication coin we can count on.
%
EPIGRAMS IN PROGRAMMING
107. The debate rages on: is PL/I Bachtrian or Dromedary?
%
EPIGRAMS IN PROGRAMMING
108. Whenever two programmers meet to criticize their programs, both are silent.
%
EPIGRAMS IN PROGRAMMING
109. Think of it! With VLSI we can pack 100 ENIACS in 1 sq. cm.
%
EPIGRAMS IN PROGRAMMING
110. Editing is a rewording activity.
%
EPIGRAMS IN PROGRAMMING
111. Why did the Roman Empire collapse? What is Latin for office automation?
%
EPIGRAMS IN PROGRAMMING
112. Computer Science is embarrassed by the computer.
%
EPIGRAMS IN PROGRAMMING
113. The only constructive theory connecting neuroscience and psychology will arise from the study of software.
%
EPIGRAMS IN PROGRAMMING
114. Within a computer natural language is unnatural.
%
EPIGRAMS IN PROGRAMMING
115. Most people find the concept of programming obvious, but the doing impossible.
%
EPIGRAMS IN PROGRAMMING
116. You think you know when you can learn, are more sure when you can write, even more when you can teach, but certain when you can program.
%
EPIGRAMS IN PROGRAMMING
117. It goes against the grain of modern education to teach children to program. What fun is there in making plans, acquiring discipline in organizing thoughts, devoting attention to detail and learning to be self-critical?
%
EPIGRAMS IN PROGRAMMING
118. If you can imagine a society in which the computer- robot is the only menial, you can imagine anything.
%
EPIGRAMS IN PROGRAMMING
119. Programming is an unnatural act.
%
EPIGRAMS IN PROGRAMMING
120. Adapting old programs to fit new machines usually means adapting new machines to behave like old ones.
%