Home  Programming

Quotations

Antoine de Saint-Exupery

You know you have achieved perfection in design, not when you have nothing more to add, but when you have nothing more to take away.

Albert Einstein

If you can't explain it simply, you don't understand it well enough.

We can't solve problems by using the same kind of thinking we used when we created them.

Fred Brooks

Good judgement comes from experience, and experience comes from bad judgement.

Larry Wall

the three great virtues of a programmer:
laziness, impatience, and hubris

Howard Aiken

Don't worry about people stealing your ideas.
If your ideas are any good, you'll have to ram
them down people's throats.

Paul Graham

The atmosphere of the average workplace is to productivity what flames painted on the side of a car are to speed.... the people pretending to work interrupt the ones actually working.

Steve Yegge

Agile evades criticism [by] embracing anything good, and disclaiming anything bad.

Bjarne Stroustrup

The idea of programming as a semiskilled task...is dangerous.... one aim should be to make tools that will serve skilled professionals— not...people who can hardly understand the problems, let alone express solutions.

Paul Graham

Programming FAQ
proctologists have to do things that would be considered extremely rude if ordinary people did them.

Being Popular
Expert hackers are a tiny minority, admittedly, but that tiny minority write all the good software...

Hackers are lazy, in the same way that mathematicians and modernist architects are lazy: they hate anything extraneous.

A hacker would consider being asked to write add x to y giving z instead of z = x+y as something between an insult to his intelligence and a sin against God.

A good programming language should have features that make the kind of people who use the phrase "software engineering" shake their heads disapprovingly.

Design Philosophy
The great languages have been the ones that good programmers designed for their own use— C, Smalltalk, Lisp. The languages that were consciously designed for "average" programmers (Cobol, Pascal, Ada) have tended to be evolutionary dead ends.

Kode Vicious

most certifications ... certify only that you can pass a test, not that you can think about problems, which is the more important skill.

Paul Graham On Lisp

What skates are to ice, functional programming is to Lisp.

... in Lisp ... an invocation owns objects it receives as return values, but not objects passed to it as arguments.

Code written so that each invocation only modifies what it owns is almost as good as purely functional code.

In Lisp's dynamic environment, functional programs can be written with unusual speed, and at the same time, can be unusually reliable.

Experienced Lisp programmers actually design their programs to be easy to test:

  1. They try to segregate side-effects in a few functions, allowing the greater part of the program to be written in a purely functional style.
  2. If a function must perform side-effects, they try at least to give it a functional interface.
  3. They give each function a single, well-defined purpose.


© 2006–2008 Daniel S. Bensen   Home   About   Site map