-
Notifications
You must be signed in to change notification settings - Fork 10
/
quotes.yaml
1706 lines (1110 loc) · 73 KB
/
quotes.yaml
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
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
---
- :c: |
I Hate Programming.
I Hate Programming.
I Hate Programming.
It works!
I Love Programming.
- :c: Perl - The only language that looks the same before and after RSA encryption.
:a: Keith Bostic
- :c: I invented the term Object-Oriented, and I can tell you I did not have C++ in mind.
:a: Alan Kay
- :c: Debugging is anticipated with distaste, performed with reluctance, and bragged about forever.
:a: Dan Kaminsky
- :c: Memory is like an orgasm. It's a lot better if you don't have to fake it.
:a: Seymour Cray on virtual memory
- :c: The most exciting phrase to hear in science, the one that heralds new discoveries, is not 'Eureka!' but 'That's funny...'
:a: Isaac Asimov
- :c: A computer lets you make more mistakes faster than any other invention in human history, with the possible exceptions of handguns and tequila.
:a: Mitch Ratcliffe
- :c: Engineers are all basically high-functioning autistics who have no idea how normal people do stuff.
:a: Cory Doctorow
- :c: Any sufficiently advanced magic is indistinguishable from a rigged demonstration.
- :c: Vi is a subset of evil.
- :c: The difference between theory and practice is smaller in theory than in practice.
- :c: "There are only 3 numbers of interest to a computer scientist: 1, 0 and infinity."
- :c: Debuggers don't remove bugs. They only show them in slow motion.
- :c: Never trust a programmer in a suit.
- :c: In theory, theory and practice are the same. In practice, they're not.
- :c: Most software today is very much like an Egyptian pyramid with millions of bricks piled on top of each other, with no structural integrity, but just done by brute force and thousands of slaves.
:a: Alan Kay
- :c: The trouble with programmers is that you can never tell what a programmer is doing until it's too late."
:a: Seymour Cray
- :c: Measuring programming progress by lines of code is like measuring aircraft building progress by weight.
:a: Bill Gates
- :c: It is practically impossible to teach good programming style to students that have had prior exposure to BASIC. As potential programmers, they are mentally mutilated beyond hope of regeneration.
:a: E. W. Dijkstra
- :c: With regard to adding more programmers to get a project done faster - Nine people can't make a baby in a month.
:a: Fred Brooks
- :c: "There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult."
:a: C.A.R. Hoare.
- :c: Weeks of coding can save you hours of planning.
- :c: |
A programmer started to cuss
Because getting to sleep was a fuss
As he lay there in bed
Looping 'round in his head
was: while(!asleep()) sheep++;
- :c: Beware of bugs in the above code; I have only proved it correct, not tried it.
:a: Donald Knuth
- :c: "C++: an octopus made by nailing extra legs onto a dog."
:a: Steve Taylor
- :c: If Java had true garbage collection, most programs would delete themselves upon execution.
:a: Robert Sewell
- :c: My definition of an expert in any field is a person who knows enough about what's really going on to be scared.
:a: P. J. Plauger
- :c: An expert is a man who has made all the mistakes that can be made in a very narrow field.
:a: Niels Bohr
- :c: "Theory is when you know something, but it doesn't work. Practice is when something works, but you don't know why. Programmers combine theory and practice: Nothing works and they don't know why."
- :c: You can stand on the shoulders of giants OR a big enough pile of dwarfs, works either way.
- :c: XML is like violence - if it's not working for you, you're not using enough of it.
- :c: Whereas Europeans generally pronounce my name the right way ('Nick-louse Veert'), Americans invariably mangle it into 'Nickel's Worth.' This is to say that Europeans call me by name, but Americans call me by value.
:a: Niklaus Wirth
- :c: Any fool can write code that a computer can understand. Good programmers write code that humans can understand.
:a: Martin Fowler
- :c: There are 10 types of people in the world, those who can read binary, and those who can't.
- :c: Programs must be written for people to read, and only incidentally for machines to execute.
:a: From SICP
- :c: Every language has an optimization operator. In C++ that operator is ‘//’
- :c: Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.
:a: Rich Cook
- :c: An idiot with a computer is a faster, better idiot.
:a: Rich Julius
- :c: Brevity is the soul of wit.
:a: Shakespeare
- :c: The question of whether computers can think is just like the question of whether submarines can swim.
:a: Edsger W. Dijkstra
- :c: There's no test like production.
- :c: We better hurry up and start coding, there are going to be a lot of bugs to fix.
- :c: Mostly, when you see programmers, they aren't doing anything. One of the attractive things about programmers is that you cannot tell whether or not they are working simply by looking at them. Very often they're sitting there seemingly drinking coffee and gossiping, or just staring into space. What the programmer is trying to do is get a handle on all the individual and unrelated ideas that are scampering around in his head.
:a: Charles M Strauss
- :c: The greatest performance improvement of all is when a system goes from not-working to working.
:a: John Ousterhout
- :c: Computer science education cannot make anybody an expert programmer any more than studying brushes and pigment can make somebody an expert painter.
:a: Eric Raymond
- :c: To iterate is human, to recurse divine.
:a: L. Peter Deutsch
- :c: "C++ : Where friends have access to your private members."
:a: Gavin Russell Baker
- :c: A computer is a stupid machine with the ability to do incredibly smart things, while computer programmers are smart people with the ability to do incredibly stupid things. They are, in short, a perfect match.
:a: Bill Bryson
- :c: UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity.
:a: Dennis Ritchie
- :c: Walking on water and developing software from a specification are easy if both are frozen.
:a: Edward V Berard
- :c: It always takes longer than you expect, even when you take into account Hofstadter's Law.
:a: Hofstadter's Law
- :c: Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live.
:a: Rick Osborne
- :c: Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.
:a: Brian Kernighan
- :c: 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.
:a: Tom Cargill
- :c: Java is to JavaScript what Car is to Carpet.
:a: Chris Heilmann
- :c: If you want to set off and go develop some grand new thing, you don't need millions of dollars of capitalization. You need enough pizza and Diet Coke to stick in your refrigerator, a cheap PC to work on and the dedication to go through with it.
:a: John Carmack
- :c: The idea that I can be presented with a problem, set out to logically solve it with the tools at hand, and wind up with a program that could not be legally used because someone else followed the same logical steps some years ago and filed for a patent on it is horrifying.
:a: John Carmack on software patents
- :c: "Some people, when confronted with a problem, think \"I know, I'll use regular expressions.\" Now they have two problems."
:a: Jamie Zawinski
- :c: "There are only two kinds of languages: the ones people complain about and the ones nobody uses."
:a: Bjarne Stroustrup
- :c: I have always wished for my computer to be as easy to use as my telephone; my wish has come true because I can no longer figure out how to use my telephone.
:a: Bjarne Stroustrup
- :c: Linux is only free if your time has no value.
:a: Jamie Zawinski
- :c: It works on my machine.
- :c: It should be noted that no ethically-trained software engineer would ever consent to write a DestroyBaghdad procedure. Basic professional ethics would instead require him to write a DestroyCity procedure, to which Baghdad could be given as a parameter.
:a: Nathaniel S Borenstein
- :c: In order to understand recursion, one must first understand recursion.
- :c: On two occasions I have been asked [by members of Parliament], 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question.
:a: Charles Babbage
- :c: If debugging is the process of removing software bugs, then programming must be the process of putting them in.
:a: Edsger Dijkstra
- :c: PHP is a minor evil perpetrated and created by incompetent amateurs, whereas Perl is a great and insidious evil perpetrated by skilled but perverted professionals.
:a: Jon Ribbens
- :c: Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.
:a: Antoine de Saint Exupéry
- :c: Computer Science is no more about computers than astronomy is about telescopes.
:a: E. W. Dijkstra
- :c: Better train people and risk they leave – than do nothing and risk they stay.
- :c: Before software should be reusable, it should be usable.
:a: Ralph Johnson
- :c: The generation of random numbers is too important to be left to chance.
:a: Robert R. Coveyou, Oak Ridge National Laboratory
- :c: Anyone who considers arithmetic methods of producing random digits is, of course, in a state of sin.
:a: John von Neumann
- :c: APL, I believe, can only be learned by writing one-liners–only by seeing in a sense, what you can compress into a line.
:a: Alan J Perlis
- :c: I love deadlines. I like the whooshing sound they make as they fly by.
:a: Douglas Adams
- :c: A good programmer looks both ways before crossing a one-way street.
- :c: Owning a computer without programming is like having a kitchen and using only the microwave oven.
:a: Charles Petzold
- :c: The only "intuitive" interface is the nipple. After that it's all learned.
:a: Bruce Ediger
- :c: God could create the world in six days because he didn't have to make it compatible with the previous version.
- :c: "We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil."
:a: Donald Knuth
- :c: When art critics get together they talk about Form and Structure and Meaning. When artists get together they talk about where you can buy cheap turpentine.
:a: Pablo Picasso
- :c: I would love to change the world, but they won't give me the source code.
- :c: If we're supposed to work in Hex, why have we only got A fingers?
- :c: "Programming is like sex: one mistake and you have to support it for the rest of your life."
:a: Michael Sinz
- :c: Think twice before you start programming or you will program twice before you start thinking.
- :c: If I had more time, I would have written a shorter letter.
:a: Cicero
- :c: "Software is like sex: It's better when it's free."
:a: Linus Torvalds
- :c: Profanity is the one language all programmers know best.
- :c: Any sufficiently advanced technology is indistinguishable from magic.
:a: Sir Arthur C Clarke
- :c: You start writing code, I'll go see what the customer wants
- :c: Good programmers never write what they can steal or borrow.
:a: Jeff Atwood
- :c: Debugging is like farting - it's not so bad when it's your own code.
- :c: When I am working on a problem I never think about beauty. I think only how to solve the problem. But when I have finished, if the solution is not beautiful, I know it is wrong.
:a: R. Buckminster Fuller
- :c: If you don't have time to do it right, when will you have time to do it over?
:a: John Wooden, basketball coach
- :c: Sufficiently advanced incompetence is indistinguishable from malice.
:a: Clark's law
- :c: Don't worry about people stealing your ideas. If it's original, you'll have to ram it down their throats.
:a: Howard Aiken
- :c: Saying that Java is good because it works on all platforms is like saying anal sex is good because it works on all genders.
- :c: ... one of the main causes of the fall of the Roman Empire was that, lacking zero, they had no way to indicate successful termination of their C programs.
:a: Robert Firth
- :c: Never memorize what you can look up in books.
:a: Albert Einstein
- :c: "There are only two hard problems in Computer Science: cache invalidation and naming things."
:a: Phil Karlton
- :c: It is easier to optimize correct code than to correct optimized code.
- :c: Software and cathedrals are much the same - first we build them, then we pray.
- :c: |
Rules for optimization:
1. Don't do it.
2. (for experts only) Don't do it yet.
:a: Michael A Jackson
- :c: "Confidence, n.: The feeling you have before you understand the situation."
- :c: "There are two major products that come out of Berkeley: LSD and UNIX. We don't believe this to be a coincidence."
:a: Jeremy S. Anderson
- :c: Good judgement is the result of experience ... Experience is the result of bad judgement.
:a: Fred Brooks
- :c: If architects built houses the way programmers built programs, the first woodpecker to come along would destroy civilization.
:a: Gerald Weinberg
- :c: All problems in computer science can be solved with another level of indirection.
:a: David Wheeler
- :c: Java is a DSL to transform big Xml documents into long exception stack traces.
:a: Scott Bellware
- :c: "There are only two industries that refer to their customers as users: the computer industry and the drug trade."
:a: Edward Tufte
- :c: If the code and the comments disagree, then both are probably wrong.
- :c: Man is the best computer we can put aboard a spacecraft...and the only one that can be mass produced with unskilled labor.
:a: Wernher von Braun
- :c: I have not failed. I've just found 10,000 ways that won't work.
:a: Thomas A. Edison
- :c: When debugging, novices insert corrective code; experts remove defective code.
:a: Richard Pattis
- :c: Simplicity is prerequisite for reliability.
:a: Edsger Dijkstra
- :c: You can't solve social problems through technical means.
- :c: "Question: How does a large software project get to be one year late? Answer: One day at a time!"
:a: Fred Brooks
- :c: Pasting code from the Internet into production code is like chewing gum found in the street.
- :c: One programmer can do in one day what two programmers can do in two.
- :c: Java. The elegant simplicity of C++. The blazing speed of Smalltalk.
- :c: Giving pointers and threads to programmers is like giving whisky and car keys to teenagers.
:a: P. J. O'Rourke
- :c: There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code.
- :c: Human beings are not accustomed to being perfect, and few areas of human activity demand it. Adjusting to the requirement for perfection is, I think, the most difficult part of learning to program.
- :c: Think of compilation as cooking. Dynamic typing means the steak is juicy and still a little red, like red meat is supposed to be. Static typing means you burnt it to a crisp.
:a: Erik Naggum
- :c: It seems to me you can program with discipline or you can program with bondage and discipline. You can't avoid the discipline either way, but bondage appeals to some people.
:a: Patrick Logan
- :c: |
One who works with their hands is a laborer.
One who works with their hands and their mind is a craftsman.
One who works with their hands, mind and heart is an artist.
- :c: Nothing is more permanent than a temporary solution.
:a: Thomas' First Law
- :c: "Fast, Cheap, Reliable: Pick any two."
- :c: |
Make it correct,
make it clear,
make it concise,
make it fast.
In that order.
:a: Wes Dyer
- :c: Must be zero, or equal to MAPI_UNICODE. In either case, however, this parameter is ignored.
:a: MSDN
- :c: The best code is no code at all.
- :c: Easy things should be easy and hard things should be possible.
:a: Larry Wall
- :c: |
How do we convince people that in programming simplicity and clarity —in short: what mathematicians call "elegance"— are not a dispensable luxury, but a crucial matter that decides between success and failure?
:a: Edsger W. Dijkstra
- :c: It takes an intelligent person to build something complex; it takes a genius to build something simple.
- :c: Programmers usually have good reasons for making bad decisions.
- :c: Let the code run free, if it needs to be debugged, it will come back.
- :c: If you can't explain something to a six-year-old, you really don't understand it yourself.
:a: Albert Einstein
- :c: My programs don't have bugs, they just develop random features.
- :c: In C, its easy to shoot yourself in the foot. C++ makes it more difficult, but when you do, you'll blow your whole leg off.
:a: Stroustrup
- :c: Multi-threading is the art of screwing things up before, during or after something else.
- :c: "Programming languages are like girlfriends: The new one is better because you are better."
- :c: When all you have is a hammer, everything starts to look like a nail.
- :c: Engineering is the art of doing with one dollar what any damn fool can do with two.
:a: From Space Systems Failures by David M. Harland and Ralph D. Lorenz
- :c: I don't care if it works on your machine! We are not shipping your machine!
:a: Ovidiu Platon
- :c: I know it doesn't sound like a big effort, but programmers are really, really lazy, and they like to minimize motion. They'd use feeder tubes if the Health Department would let them.
:a: Steve Yegge
- :c: UNIX is user friendly. It just picks whom it wants to be friends with.
- :c: |
"It depends" is the answer to all good software engineering questions, but to be a good software engineer, you should know on what it depends, and why.
- :c: You're never done, you just run out of time.
- :c: Program testing can be a very effective way to show the presence of bugs, but is hopelessly inadequate for showing their absence.
:a: Edsger Dijkstra
- :c: The competent programmer is fully aware of the limited size of his own skull. He therefore approaches his task with full humility, and avoids clever tricks like the plague.
:a: Edsger Dijkstra
- :c: Good design adds value faster than it adds cost.
:a: Thomas C. Gale
- :c: |
With all due respect John, I am the head of IT and I have it on good authority. If you type "Google" into Google, you can break the Internet.
:a: |
Jen, "The IT Crowd"
- :c: The two most common elements in the universe are hydrogen and stupidity.
:a: Harlan Ellison
- :c: There is no IRL, only AFK
- :c: A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
:a: Douglas Adams
- :c: A C program is like a fast dance on a newly waxed dance floor by people carrying razors.
:a: Waldi Ravens
- :c: God did not create the world in seven days; for six days he screwed around and then pulled an all-nighter.
- :c: if you are a programmer working in 2003 and you don't know the basics of characters, character sets, encodings, and Unicode, and I catch you, I'm going to punish you by making you peel onions for 6 months in a submarine.
:a: Joel Spolsky
- :c: |
If we'd asked the customers what they wanted, they would have said "faster horses".
:a: Henry Ford
- :c: |
The word “experienced” often refers to someone who’s gotten away with doing the wrong thing more frequently than you have.
:a: Laurence Gonzales
- :c: Real Programmers don't comment their code. If it was hard to write, it should be hard to understand.
- :c: |
'Goto' is always evil, like in 'goto school' or 'goto work'.
- :c: Your code is both good and original. Unfortunately the parts that are good are not original, and the parts that are original are not good.
- :c: They did not know it was impossible, so they did it!
:a: Mark Twain
- :c: I (...) am rarely happier than when spending an entire day programming my computer to perform automatically a task that would otherwise take me a good ten seconds to do by hand.
:a: Douglas Adams
- :c: People who are really serious about software should make their own hardware.
:a: Alan Kay
- :c: "Consider the postage stamp: its usefulness consists in the ability to stick to one thing until it gets there."
:a: Josh Billings
- :c: Don't tell people how to do things, tell them what to do and let them surprise you with their results.
:a: George S. Patton
- :c: Multitasking is the art of distracting yourself from two things you’d rather not be doing by doing them simultaneously.
- :c: Code never lies, comments sometimes do.
:a: Ron Jeffries
- :c: A computer programmer is a device for turning coffee into bugs.
:a: Bram Moolenaar
- :c: Any sufficiently advanced bug is indistinguishable from a feature.
:a: Rich Kulawiec
- :c: From a programmer's point of view, the user is a peripheral that types when you issue a read request.
:a: Peter Williams
- :c: Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration.
:a: Stan Kelly-Bootle
- :c: God is Real, unless declared Integer.
- :c: We all agree on the necessity of compromise. We just can't agree on when it's necessary to compromise.
:a: Larry Wall
- :c: And don't tell me there isn't one bit of difference between null and space, because that's exactly how much difference there is.
:a: Larry Wall
- :c: It won't be covered in the book. The source code has to be useful for something, after all...
:a: Larry Wall
- :c: Just don't create a file called -rf.
:a: Larry Wall
- :c: Sex is fun, but it probably doesn't solve all your problems.
:a: Larry Wall
- :c: My assertion that we can do better with computer languages is a persistent belief and fond hope, but you'll note I don't actually claim to be either rational or right. Except when it's convenient.
:a: Larry Wall
- :c: People who deal with bits should expect to get bitten.
:a: Jon Bentley
- :c: All parts should go together without forcing. You must remember that the parts you are reassembling were disassembled by you. Therefore, if you can't get them together again, there must be a reason. By all means, do not use a hammer.
:a: IBM Manual, 1925
- :c: There is nothing quite so permanent as a quick fix.
- :c: Shipping is a feature.
:a: Richard Campbell
- :c: If C didn't exist, we would be programming in OBOL, PASAL or BASI
- :c: The Internet? Is that thing still around?
:a: Homer Simpson
- :c: They have computers, and they may have other weapons of mass destruction.
:a: Janet Reno
- :c: Only Half of programming is coding. The other 90% is debugging.
- :c: Now I'm a pretty lazy person and am prepared to work quite hard in order to avoid work.
:a: Martin Fowler
- :c: What I cannot build, I do not understand.
:a: Richard Feynman
- :c: First, solve the problem. Then, write the code.
:a: John Johnson
- :c: Artificial Intelligence is no match for natural stupidity.
- :c: The more bizarre the behavior, the more stupid the mistake.
:a: Ed's Law of Debugging
- :c: There are no significant bugs in our released software that any significant number of users want fixed.
:a: Bill Gates
- :c: Yes, sometimes Perl looks like line noise to the uninitiated, but to the seasoned Perl programmer, it looks like checksummed line noise with a mission in life.
:a: Randal Schwartz
- :c: Any problem in computer science can be solved with another layer of indirection. But that usually will create another problem.
:a: David Wheeler
- :c: In my experience, one of the most significant problems in software development is assuming. If you assume a method will passed the right parameter value, the method will fail.
:a: Paul M. Duvall
- :c: The sooner we start coding fewer frameworks and more programs the sooner we’ll become better programmers.
:a: Warped Java Guy Elementary Java Solutions
- :c: Starting a startup is hard, but having a 9 to 5 job is hard too, and in some ways a worse kind of hard.
:a: Paul Graham
- :c: In essence, let the market design the product.
:a: Paul Graham
- :c: A startup now can be just a pair of 22 year old guys. A company like that can move much more easily than one with 10 people, half of whom have kids.
:a: Paul Graham
- :c: Startups almost never get it right the first time. Much more commonly you launch something, and no one cares. Don’t assume when this happens that you’ve failed. That’s normal for startups. But don’t sit around doing nothing. Iterate.
:a: Paul Graham
- :c: The key to performance is elegance, not battalions of special cases.
:a: Jon Bentley and Doug McIlroy
- :c: You’ll spend far more time babysitting old technologies than implementing new ones.
:a: Jason Hiner IT Dirty Secrets
- :c: No one hates software more than software developers.
:a: Jeff Atwood
- :c: I was a C++ programmer before I started designing Ruby. I programmed in C++ exclusively for two or three years. And after two years of C++ programming, it still surprised me.
:a: Matz
- :c: Good architecture is necessary to give programs enough structure to be able to grow large without collapsing into a puddle of confusion.
:a: Douglas Crockford
- :c: Programming is difficult. At its core, it is about managing complexity. Computer programs are the most complex things that humans make. Quality is illusive and elusive.
:a: Douglas Crockford
- :c: Code reuse is the Holy Grail of Software Engineering.
:a: Douglas Crockford
- :c: The structure of software systems tend to reflect the structure of the organization that produce them.
:a: Douglas Crocford
- :c: I went to school to learn how to program software applications, which inevitably have bug defects. There was no course at my university on testing, debugging, profiling, or optimization. These things you have to learn on your own, usually in a tight deadline.
:a: Juixe TechKnow
- :c: To most Java developers, Ruby/Rails is like a mistress. Ruby/Rails is young, new, and exciting; but eventually we go back to old faithful, dependable, and employable Java with some new tricks and idioms and we are the better programmer for it.
:a: Juixe TechKnow
- :c: You might as well pay your customers 50K because they are just your QA.
:a: Juixe TechKnow
- :c: You can't eliminate problems, but you can make trades to get problems that you prefer over the ones you have now.
:a: Eric Sink’s Axiom of Software Development
- :c: "Manually managing blocks of memory in C is like juggling bars of soap in a prison shower: It's all fun and games until you forget about one of them."
- :c: If it doesn't work, it doesn't matter how fast it doesn't work.
:a: Ravera's observation on premature optimization
- :c: Any set of procedures, no matter how well intentioned or useful, that are too difficult to follow, will be circumvented.
:a: Ravera's First Law of System Administration
- :c: Deleted code is debugged code.
:a: Jeff Sickel
- :c: All programs have at least one bug remaining and can be optimized by one byte. Thus, by mathematical induction, all programs can be reduced to one byte. And it won't work.
- :c: The sooner you get behind in your work, the more time you have to catch up.
- :c: It’s hard to read through a book on the principles of magic without glancing at the cover periodically to make sure it isn’t a book on software design.
:a: Bruce Tognazzini
- :c: Java is like a variant of the game of Tetris in which none of the pieces can fill gaps created by the other pieces, so all you can do is pile them up endlessly.
:a: Steve Yegge
- :c: Software is hard.
:a: Donald Knuth
- :c: Designing software in a team is like writing poetry in a committee meeting.
:a: Joel Spolsky
- :c: Education is the process of learning more and more about less and less until one knows everything about nothing and is entitled to call oneself 'Doctor'.
- :c: |
You have to "solve" the problem once in order to clearly define it and then solve it again to create a solution that works.
- :c: A logician trying to explain logic to a programmer is like a cat trying to explain to a fish what it's like to get wet.
- :c: Documentation is like sex. When it's good, it's fantastic. When it's bad, it's still better than nothing.
- :c: "Three things should never be seen in the process of being created: laws, sausage, and software."
- :c: "I have found that the reason a lot of people are interested in artificial intelligence is the same reason a lot of people are interested in artificial limbs: they are missing one."
:a: David Parnas
- :c: On the 7th day ... God began debugging.
- :c: If we can't fix it, then it ain't broke.
:a: Jon Bentley
- :c: Every truth passes through three stages before it is recognized. In the first, it is ridiculed, in the second it is opposed, in the third it is regarded as self-evident.
:a: Arthur Schopenhauer
- :c: Fight code entropy.
:a: John Carmack
- :c: The cheapest, fastest, and most reliable components are those that aren't there.
:a: Gordon Bell
- :c: |
Good programmers learn more from "That's not what I expected!" than from getting it right the first time.
- :c: Computers are useless. They can only give you answers.
:a: Pablo Picasso
- :c: For every complex problem there is an answer that is clear, simple, and wrong.
:a: H L Mencken
- :c: When you want to do something differently from the rest of the world, it's a good idea to look into whether the rest of the world knows something you don't.
- :c: If you require information, do not free memory containing the information.
:a: MSDN
- :c: Part of the inhumanity of the computer is that, once it is competently programmed and working smoothly, it is completely honest.
:a: Isaac Asimov
- :c: Simplicity is the ultimate sophistication.
:a: Leonardo da Vinci
- :c: Anything that can go wrong will go wrong, anything that can't go wrong will go wrong anyway.
- :c: Code is never finished, only abandoned.
- :c: Don't code today what you can't debug tomorrow
- :c: Software is like entropy. It is difficult to grasp, weighs nothing, and obeys the second law of thermodynamics; i.e. it always increases.
- :c: Don't fix it if it ain't broke presupposes that you can't improve something that works reasonably well already. If the world's inventors had believed this, we'd still be driving Model A Fords and using outhouses.
:a: H. W. Kenton
- :c: Inside every complex program is a simple program trying to get out.
- :c: Users are a terrible thing. Systems would be infinitely more stable without them.
:a: Michael T. Nygard.
- :c: If it doesn't work, change the documentation.
- :c: If you can build it, your users can break it.
- :c: C is quirky, flawed and an enormous success.
:a: Dennis Ritchie
- :c: Hardware is the part of a system you can kick. Software is the one you can only curse at.
- :c: Good software, like wine, takes time.
:a: Joel Spolsky
- :c: The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offence.
:a: Edsger Dijkstra
- :c: If you give someone a program, you will frustrate them for a day; if you teach them how to program, you will frustrate them for a lifetime.
- :c: The best things are simple, but finding these simple things is not simple.
- :c: Software is either testable or detestable.
- :c: The definition of insanity is doing the same thing over and over and expecting a different result.
- :c: Are you quite sure that all those bells and whistles, all those wonderful facilities of your so called powerful programming languages, belong to the solution set rather than the problem set?
:a: Edsger W. Dijkstra
- :c: I have always found that plans are useless, but planning is indispensable.
:a: Dwight D. Eisenhower
- :c: If the automobile had followed the same development cycle as the computer, a Rolls-Royce would today cost $100, get a million miles per gallon, and explode once a year, killing everyone inside.
:a: Robert X. Cringely
- :c: |
You want a dot operator in PHP?
eval(str_replace('.', '->', $code_with_dot_operator))
:a: Matthew Leffler
- :c: In a world without walls and fences, who needs Windows and Gates?
- :c: It's interface, not in your face.
:a: Kai Krause
- :c: No code is faster than no code.
- :c: |
I finally found a definition for "middleware". "Middleware" is the software nobody wants to pay for.
:a: Chris Stone
- :c: If you lie to the compiler, it will get its revenge.
:a: Henry Spencere
- :c: The primary duty of an exception handler is to get the error out of the lap of the programmer and into the surprised face of the user. Provided you keep this cardinal rule in mind, you can't go far wrong.
:a: Verity Stob
- :c: A fool with a tool is still a fool.
- :c: Never attribute to malice that which can be adequately explained by stupidity.
:a: Hanlon's Razor
- :c: Once you've dressed and before you leave the house, look in the mirror and take at least one thing off.
:a: Coco Chanel
- :c: The function name should define everything the function does.
- :c: "Every revolutionary idea seems to evoke three stages of reaction: One, it's completely impossible. Two, it's possible, but it's not worth doing. Three, I said it was a good idea all along."
:a: Arthur C. Clarke
- :c: Make something fool-proof and someone will make a better fool.
- :c: The real money isn't in the software. It's in the service you build with that software.
:a: Jeff Atwood
- :c: The limits of my language mean the limits of my world.
:a: Ludwig Wittgenstein
- :c: Compatibility means deliberately repeating other people's mistakes.
- :c: |
[The common definition of estimate is] "An estimate is the most optimistic prediction that has a non-zero probability of coming true" . . .
Accepting this definition leads irrevocably toward a method called what's-the-earliest- date-by-which-you-can't-prove-you-won't-be- finished estimating.
:a: Tom DeMarco
- :c: All programmers are optimists.
:a: Frederick Brooks
- :c: C++ is more of a rube-goldberg type thing full of high-voltages, large chain-driven gears, sharp edges, exploding widgets, and spots to get your fingers crushed. And because of it's complexity many (if not most) of it's users don't know how it works, and can't tell ahead of time what's going to cause them to loose an arm.
:a: Grant Edwards
- :c: "C: a language that combines all the elegance and power of assembly language with all the readability and maintainability of assembly language."
- :c: Selecting a project due date before the requirements are properly gathered is like selecting which corner you want to paint yourself into, while simultaneously negating the doorway as a viable option.
:a: Chris Ames
- :c: Like a gas, software expands to fill its containing memory completely.
- :c: If you get it free, it is worthless. If you pay for it, it has value. If you build it yourself, it is priceless.
:a: Raj More
- :c: |
When a professional race car driver races, his pulse gets lower and he relaxes.
When I code it is the same thing.
:a: Jun-ichiro Hagino
- :c: C++ is to C as Lung Cancer is to Lung.
- :c: |
People who think, "Oh this is a one-off," need to be offed, or perhaps politely removed from the project.
:a: George Neville-Neil
- :c: Organizations which design systems are constrained to produce designs which are copies of the communication structures of these organizations.
:a: Conway's Law
- :c: An ideal world is left as an exercise to the reader.
:a: From Paul Graham's "On Lisp"
- :c: |
What you’ve described, “The bottleneck in writing code isn’t in the writing of the code, it’s in understanding and conceptualising what needs to be done,” is common to all highly abstract programming languages. Writing Haskell, for example, involves an hour of meditation followed by the emission of a fold expression.
:a: Jonathan Feinberg
- :c: Complexity has nothing to do with intelligence, simplicity does.
:a: Larry Bossidy
- :c: C is to programming as Latin is to literature.
- :c: "Think of it this way: threads are like salt, not like pasta. You like salt, I like salt, we all like salt. But we eat more pasta."
:a: Larry McVoy
- :c: A programmer never dies he just degrades gracefully.
- :c: All real programmers know C of course.
:a: Jeff Atwood
- :c: Good enough is neither.
:a: Jim Spivey
- :c: Use four digits. A new millenium is coming.
:a: Jon Bentley (1976)
- :c: KISS - Keep It Simple Stupid
- :c: If you want to confuse your enemies, give them the source code. If you want to really confuse them, give them the documentation.
- :c: Good programmers invest the effort to learn how to use current practices. Not-so-good programmers just learn the buzzwords, and that’s been a software industry constant for a half century.
:a: Boris Beizer
- :c: Processes and methodologies can make good servants but are poor masters.
:a: Mark Dowd, John McDonald & Justin Schuh
- :c: Simplicity is hard to build, easy to use, and hard to charge for. Complexity is easy to build, hard to use, and easy to charge for.
:a: Chris Sacca
- :c: If you've seen one picture of the Mandelbrot Set, you've seen them all.
:a: Bill Karwin
- :c: The third version is the first version that doesn't suck.
:a: Mike Simpson
- :c: Computers make it easier to do a lot of things, but most of the things they make it easier to do don't need to be done.
:a: Andy Rooney
- :c: Like wine, the mastery of programming matures with time. But, unlike wine, it gets sweeter in the process.
:a: Lawrence Mucheka
- :c: Amateur programmers think there are 1000 bytes in a kilobyte; Real Programmers know there are 1024 meters in a kilometer.
- :c: A documented bug is not a bug; it is a feature.
:a: James P. MacLennan
- :c: I'm not a great programmer; I'm just a good programmer with great habits.
:a: Kent Beck
- :c: If you use copy and paste while you're coding, you're probably committing a design error.
:a: David Parnas
- :c: Programming is not like being in the CIA; you don't get credit for being sneaky. It's more like advertising; you get lots of credit for making your connections as blatant as possible.
:a: Steve McConnell on coupling from, "Code Complete."
- :c: It's not what the software does. It's what the user does.
:a: Hugh Macleod
- :c: Good programmers know what to write. Great ones know what to rewrite (and reuse).
:a: Eric Raymond
- :c: Testing like the TSA.
:a: David Heinemeier Hansson on testing too much
- :c: When in doubt, leave it out.
:a: Joshua Bloch
- :c: |
A computer scientist counts to ten: 0, 1, 2, 3, 4 ...
Everyone else counts to ten: 1, 2, 3, 4, 5
- :c: A complex system that works is invariably found to have evolved from a simple system that worked.
:a: John Gall
- :c: Enlightened trial and error outperforms the planning of flawless intellects.
:a: David Kelly
- :c: It's OK to figure out murder mysteries, but you shouldn't need to figure out code. You should be able to read it.
:a: Steve McConnell
- :c: Working software is the primary measure of progress.
:a: Agile Manifesto
- :c: Simplicity - the art of maximizing the amount of work not done - is essential.
:a: Agile Manifesto
- :c: C trades a slap on the wrist at compile time for a knife in the back at run time.
- :c: Elegance is not optional.
:a: Richard A. O'Keefe (from The Craft of Prolog)
- :c: It makes no sense to try to do what we can. We must do what is necessary.
:a: Winston Churchill
- :c: 80 percent of my problems are simple logic errors. 80 percent of the remaining problems are pointer errors. The remaining problems are hard.
:a: Mark Donner, IBM Watson Research Center
- :c: Software isn't about methodologies, languages, or even operating systems. It is about working applications.
:a: Christopher Baus
- :c: |
... what society overwhelmingly asks for is snake oil. Of course, the snake oil has the most impressive names — otherwise you would be selling nothing — like "Structured Analysis and Design", "Software Engineering", "Maturity Models", "Management Information Systems", "Integrated Project Support Environments" "Object Orientation" and "Business Process Re-engineering" (the latter three being known as IPSE, OO and BPR, respectively).
:a: Edsger W. Dijkstra
- :c: Python's syntax succeeds in combining the mistakes of Lisp and Fortran. I do not construe that as progress.
:a: Larry Wall
- :c: He who hasn't hacked assembly language as a youth has no heart. He who does as an adult has no brain.
:a: John Moore
- :c: Any intelligent fool can make things bigger and more complex. It takes a touch of genius - and a lot of courage - to move in the opposite direction.
:a: E.F. Schumacher
- :c: If it doesn't have to work, we can do it real quick.
:a: Watts Humphrey
- :c: If at first you don't succeed, try/catch, try/catch again.
- :c: Software Engineering isn't rocket science ... it's harder.
- :c: I do not fear computers. I fear the lack of them.
:a: Isaac Asimov
- :c: Never underestimate the disparity between developer excitement and user apathy.
- :c: Lines of code are only worth counting, when time has come to delete them.
- :c: Sure, it's overkill. But you can never have too much overkill...
- :c: The reason we plan ahead is so that we don't have to do anything right now.
- :c: Don't worry if it doesn't work right. If everything did, you'd be out of a job.
:a: Mosher's Law of Software Engineering
- :c: Code is everything I thought poetry was, back when we were in school. Clean, expressive, urgent, all-encompassing. Fourteen lines can open up to fill the available universe.
:a: Richard Powers
- :c: I've never written the best code I've ever written.
- :c: The most likely way for the world to be destroyed, most experts agree, is by accident. That's where we come in; we're computer professionals. We cause accidents.
:a: Nathaniel Borenstein
- :c: If your bug has a one in a million chance of happening, it'll happen next tuesday.
- :c: 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.
:a: Frederick P. Brooks Jr.
- :c: When I have a specific goal in mind and a complicated piece of code to write, I spend my time making it happen rather than telling myself stories about it.
:a: Steve Yegge
- :c: Only in wealth, there is room for a bad idea.
:a: Jasper van der Meer
- :c: "Team debugging: the act of intimidating a PC into doing for two people what it refuses to do for one."
- :c: I get as much enjoyment from trashing code as I do from scratching it out in the first place!
- :c: It can scarcely be denied that the supreme goal of all theory is to make the irreducible basic elements as simple and as few as possible without having to surrender the adequate representation of a single datum of experience.
:a: Albert Einstein
- :c: God is a hacker, not an engineer. You can do reverse engineering, but you can’t do reverse hacking.
:a: Francis Crick
- :c: All programming is an exercise in caching.
:a: Terje Mathisen
- :c: Talk is cheap, show me the code!
:a: Linus Torvalds
- :c: |
* No technique works if it isn't used.
* Ethics change with technology.
* "F × S = k" the product of freedom and security is a constant.
:a: Niven's laws