It takes a touch of genius - and a lot of courage to move in the opposite direction.— Albert Einstein
Informative Software Design quotations
Some people look for a beautiful place, others make a place beautiful.
Talk is cheap. Show me the code.
Any fool can write code that a computer can understand.
Good programmers write code that humans can understand.
Good design is obvious, great design is transparent.
Most of you are familiar with the virtues of a programmer.
There are three, of course: laziness, impatience, and hubris.
Copy and paste is a design error.
The hardest part of design ... is keeping features out.
If you don’t design your own life plan, chances are you’ll fall into someone else’s plan.
The trouble with programmers is that you can never tell what a programmer is doing until it's too late.
Technical skill is mastery of complexity, while creativity is mastery of simplicity.
Learning to program has no more to do with designing interactive software than learning to touch type has to do with writing poetry
Design is not just what it looks like and feels like. Design is how it works.
Hiring people to write code to sell is not the same as hiring people to design and build durable, usable, dependable software.
Solving a problem simply means representing it so as to make the solution transparent.
If you think good architecture is expensive, try bad architecture.
Style is a way to say who you are without having to speak
The cheapest, fastest, and most reliable components are those that aren't there.
Design is in everything we make, but it's also between those things.
It's a mix of craft, science, storytelling, propaganda, and philosophy.
There's an old story about the person who wished his computer were as easy to use as his telephone. That wish has come true, since I no longer know how to use my telephone.
Good design is all about making other designers feel like idiots because the idea wasn't theirs.
A language that doesn't have everything is actually easier to program in than some that do
Simplicity and elegance are unpopular because they require hard work and discipline to achieve and education to be appreciated.
... with proper design, the features come cheaply. This approach is arduous, but continues to succeed.
Good design is as little design as possible.
If we want users to like our software we should design it to behave like a likeable person: respectful, generous and helpful.
The belief that complex systems require armies of designers and programmers is wrong. A system that is not understood in its entirety, or at least to a significant degree of detail by a single individual, should probably not be built.
Anyone could learn Lisp in one day, except that if they already knew Fortran, it would take three days.
Design is where science and art break even.
An organisation that treats its programmers as morons will soon have programmers that are willing and able to act like morons only.
Controlling complexity is the essence of computer programming.
The most important single aspect of software development is to be clear about what you are trying to build.
Luck is the residue of design.
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.
Know what you're talking about.
The unavoidable price of reliability is simplicity.
While great art makes you wonder, great design makes things clear.
Increasingly, people seem to misinterpret complexity as sophistication, which is baffling -- the incomprehensible should cause suspicion rather than admiration.
Nothing in progression can rest on its original plan.
We may as well think of rocking a grown man in the cradle of an infant.
The problem with using C++ ... is that there's already a strong tendency in the language to require you to know everything before you can do anything.
Design is an opportunity to continue telling the story, not just to sum everything up.
Design and programming are human activities; forget that and all is lost.
Hey, I'm a good software engineer, but I'm not exactly known for my fashion sense. White socks and sandals don't translate to 'good design sense'.
The general problem with ambitious systems is complexity.
[...] it is important to emphasize the value of simplicity and elegance, for complexity has a way of compounding difficulties.
Premature optimization is the root of all evil in programming.
There is a lot of interest in the arts, music, theatre, filmmaking, engineering, architecture and software design. I think we have now transitioned the modern-day version of the entrepreneur into the creative economy.