Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
One always has, at every stage, in the process, a working system. I
find that teams can grow much more complex entities in four months
than they can build.
-- Fred Brooks, "No Silver Bullet"
I made this letter longer than usual because I lack the time to make it shorter.
-- Blaise Pascal
Computational processes are abstract beings that inhabit computers.
As they evolve, processes manipulate other abstract things called
data. The evolution of a process is directed by a pattern of rules
called a program. People create programs to direct processes.
In effect, we conjure the spirits of the computer with our spells.
-- Harold Abelson & Gerald Sussman,
Structure and Interpretation of Computer Programs
The programmer, like the poet, works with pure thought-stuff. He
builds his castles in the air, from air. Yet the program construct,
unlike the poet's words, is real in the sense that it moves and works,
producing visible outputs separate from the construct itself. It
prints results, draws pictures, produces sounds, moves arms. The magic
of myth and legend has come true in our time. One types the correct
incantation on a keyboard, and a display screen comes to life, showing
things that never were nor could be.
-- Fred Brooks, introduction to the 20th anniversary
edition of "The Mythical Man-Month"
A computer lets you make more mistakes faster than any invention in
human history -- with the possible exceptions of handguns and tequila.
-- Mitch Ratcliffe
Just as it is easier to be verbose than concise, it is easier to build
complex systems than it is to build simple ones. Skilled programmers
may be able to create complexity more quickly than their peers, and
more quickly than they can document and explain it. Like an army
outrunning its logistics train, complexity increases until it reaches
the point where such programmers can no longer reliably cope with
At this point, complexity and our abilities to contain it reach
an uneasy equilibrium. The blitzkrieg bogs down into a siege. We build
the most complicated system that can possibly work.
-- Brian Foote & Joseph Yoder, "Big Ball of Mud"
[W]riting software is a creative activity that requires a lot of
interaction with the people who are going to use it. Writing software
is a highly iterative, dynamic process requiring user feedback. Again,
it's like writing poetry in that you write some of it, and then you
respond to it, which triggers more creativity, and you keep
going. Then, you show it to someone whose opinion you respect, and you
see it differently.
Some of the more agile methodologies like Extreme Programming use this
process. Extreme programmers discuss with end users what to build
first. Then they spend a couple of weeks building, and show it to the
end user. The end user uses it for a while, and then might say, "Oh,
now I understand." Customers might not have a good understanding of
what needs to be done since they're not programmers. Something they
might not even have imagined might be doable.
-- Richard Gabriel
When you build a prototype, there is always the risk that someone will
say "that's good enough, ship it". One way to minimize the risk of a
prototype being put into production is to write the prototype in using
a language or tool that you couldn't possibly use for a production
version of your product.
-- Brian Foote & Joseph Yoder, "Big Ball of Mud"
That language is an instrument of human reason, and not merely a
medium for the expression of thought, is a truth generally admitted.
-- George Boole, quoted in Iverson's Turing Award
Cyberspace. A consensual hallucination experienced daily by billions
of legitimate operators, in every nation, by children being taught
mathematical concepts ... A graphic representation of data abstracted
from the banks of every computer in the human system. Unthinkable
complexity. Lines of light ranged in the nonspace of the mind,
clusters and constellations of data. Like city lights, receding....
-- William Gibson, Neuromancer (1984)
Gargoyles represent the embarrassing side of the Central Intelligence
Corporation. Instead of using laptops, they wear their computers on
their bodies, broken up into separate modules that hang on the waist,
on the back, on the headset. They serve as human surveillance devices,
recording everything that happens around them. Nothing looks stupider,
these getups are the modern-day equivalent of the slide-rule scabbard
or the calculator pouch on the belt, marking the user as belonging to
a class that is at once above and far below human society... The
payoff for this self-imposed ostracism is that you can be in the
Metaverse all the time, and gather intelligence all the time...
Gargoyles are no fun to talk to. They never finish a sentence. They
are adrift in a laser-drawn world, scanning retinas in all directions,
doing background checks on everyone within a thousand yards, seeing
everything in visual light, infrared, millimeter. wave radar, and
ultrasound all at once. You think they're talking to you, but they're
actually poring over the credit record of some stranger on the other
side of the room, or identifying the make and model of airplanes
flying overhead. For all he knows, Lagos is standing there measuring
the length of Hiro's cock through his trousers while they pretend to
make conversation.
-- Neal Stephenson, Snow Crash (1992)
"It's only the Red King snoring," said Tweedledee... "And if he left
off dreaming about you, where do you suppose you'd be?"
"Where I am now, of course," said Alice.
"Not you!" Tweedledee retorted contemptuously. "You'd be nowhere. Why,
you're only a sort of thing in his dream!"
"If that there King was to wake," added Tweedledum, "you'd go
out -- bang! -- just like a candle!"
-- Lewis Carroll, Alice Through the Looking Glass
Had a Pharaoh been given detailed and explicit designs of an
automobile, and had he understood them completely, it would have taxed
the resources of his kingdom to have fashioned the thousands of parts
for a single car, and that car would have broken down on the first
trip to Giza.
-- Vannevar Bush, As We May Think (1945)
If the brain is a computer, then the eye is an open port, an unsecured
opening against hackers.
-- Dr. Steve Mann
If your personal goes out of fashion, just hold on and don't change
it, because in 5 or 10 years your look will be back in style again.
-- Andy Warhol
I think monsters are so interesting. I'm always interested in meeting
interesting people.
-- Bugs Bunny
Plan to throw the first one away, you will anyhow.
-- Fred Brooks, "The Mythical Man-Month"
We have met the enemy and he is us.
-- Walt Kelly
The devil is in the details.
The future exists today, it's just unevenly distributed.
-- William Gibson
...our explorers have gone into the world of the ultrasmall. We discover
new environments, new ways of living... We are spied on all the time,
yet we are secret.
-- Brian Aldiss, Total Environment (1968)
Nature will tell you a direct lie if she can.
-- Charles Darwin
Great progress looks retrograde.
-- Lao Tzu
The life of a repo man is always intense.
-- Alex Cox
A wizard is never late, nor is he early. He always arrives precisely when he means to.
-- Gandalf
When the going get weird, the weird turn pro.
-- Hunter S. Thompson
You can't uninstall evil.
-- Penny Arcade
Moving Heaven and Earth without effort is simply a matter of concentration.
-- Hagakure, the Way of the Samurai
There is nothing more deceptive than an obvious fact.
-- Sherlock Holmes
The problem with intelligent communication is the illusion that it has taken place.
-- George Bernard Shaw
But isn't this what always happens? You build a thing of beauty, and
in time the villagers storm the castle, hooting and chanting because
they've decided you're a heretic. Which is true, of course. And then
they throw you out, and then you go somewhere else and start building
the thing again.
-- Vic Sussman
Chaos reigns within.
Reflect, repent, and reboot.
Order shall return.
A crash reduces
your expensive computer
to a simple stone.
Stay the patient course
Of little worth is your ire
The network is down.
The Tao that is seen
Is not the true Tao, until
You bring fresh toner.
First snow, then silence.
This thousand dollar screen dies
so beautifully.
The Three Virtues of Programming are laziness, impatience and hubris.
-- Larry Wall
This gubblick contains many nonsklarkish English flutzpahs, but the
overall pluggandisp can be glorked from context.
-- David Moser
Nature will tell you a direct lie if she can.
-- Charles Darwin
Great squareness has no corners.
-- Lao Tzu
Computers are useless: they can only give you answers.
-- Pablo Picasso
If the automobile had followed the same development as the computer, a
Rolls-Royce would today cost $100, get a million miles per gallon, and
explode once a year killing everyone inside.
-- Robert Cringely
Whenever there is a simple error that most laymen fall for, there is
always a slightly more sophisticated version of the same problem that
experts fall for.
-- Amos Tversky
Chance favors the prepared mind.
-- Louis Pasteur
It takes a while to create nothing.
-- Ron Jeffries
Do not meddle in the affairs of wizards, for they are subtle and quick to anger.
-- Gildor
A manager asked a programmer how long it would take him to finish the
program on which he was working. "It will be finished tomorrow," the
programmer promptly replied.
"I think you are being unrealistic," said the manager, "Truthfully,
how long will it take?"
The programmer thought for a moment. "I have some features that I
wish to add. This will take at least two weeks," he finally said.
"Even that is too much to expect," insisted the manager, "I will be
satisfied if you simply tell me when the program is complete."
The programmer agreed to this.
Several years later, the manager retired. On the way to his retirement
luncheon, he discovered the programmer asleep at his terminal. He had
been programming all night.
-- Geoffrey James, The Tao of Programming
JavaScript is a sloppy language, but inside it
there is an elegant, better language.
-- Douglas Crockford, JavaScript: the Good Parts, p 115
I program in English. After reviewing the English, I comment in Java after each
sentence to let the computer know how to do it.
-- Tom, commenting on Steve Yegge's "Portrait of a n00b"
> "The only interfaces which are truly intuitive are rocks and mud"
> -- John Dvorak
Actually, the only truly intuitive interface is the nipple.
-- Jay Vollmer, in comp.os.linux.misc
The lyf so short, the craft so long to lerne,
Thassay so hard, so sharp the conquering,
The dredful Ioy, that alwey slit so yerne
-- Geoffrey Chaucer, "The Parliament of Fowles"
I'm not a veteran JS developer (mainly I develop server-side with .NET
but I'm finding very interesting and powerful "the client side of the
force" :D
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment