Progress is possible only if we train ourselves to think about programs without thinking of them as pieces of executable code.
Edsger DijkstraRead
We shall do a much better programming job, provided that we approach the task with a full appreciation of its tremendous difficulty, provided that we stick to modest and elegant programming languages, provided that we respect the intrinsic limitations of the human mind and approach the task as Very Humble Programmers.
Interpretation
The quote emphasizes the importance of humility and recognizing the challenges of programming.
Edsger Dijkstra highlights that effective programming requires an awareness of the difficulties involved, a preference for simple and elegant languages, and a humble attitude. By acknowledging our limitations and the complexity of the task, programmers can perform better, leading to a more appreciative and effective approach to their work.
In practice
During a tech conference, to emphasize the importance of humility in coding practices.
Progress is possible only if we train ourselves to think about programs without thinking of them as pieces of executable code.
Simplicity is prerequisite for reliability.
The purpose of abstraction is not to be vague, but to create a new semantic level in which one can be absolutely precise.
The tools we use have a profound and devious influence on our thinking habits, and therefore on our thinking abilities.
LISP has jokingly been described as "the most intelligent way to misuse a computer." I think that description is a great compliment because it transmits the full flavour of liberation: it has assisted a number of our most gifted fellow humans in thinking previously impossible thoughts.
A most important, but also most elusive, aspect of any tool is its influence on the habits of those who train themselves in its use. If the tool is a programming language this influence is, whether we like it or not, an influence on our thinking habits.... A programming language is a tool that has profound influence on our thinking habits.
The Open Source theorem says that if you give away source code, innovation will occur. Certainly, Unix was done this way... However, the corollary states that the innovation will occur elsewhere. No matter how many people you hire. So the only way to get close to the state of the art is to give the people who are going to be doing the innovative things the means to do it. That's why we had built-in source code with Unix. Open source is tapping the energy that's out there.
When I looked at the addictive qualities of video games and how they captivate people's attention, I decided to try the same technology for enhancing well-being.
What we want to do is make a leapfrog product that is way smarter than any mobile device has ever been, and super-easy to use. This is what iPhone is. OK? So, we're going to reinvent the phone.
Five or ten years ago, when it was clear the Internet was becoming a mainstream phenomenon, it was equally clear that a lot of people were being left out and could be left behind
The telephone, which interrupts the most serious conversations and cuts short the most weighty observations, has a romance of its own.
Part of the problem is when we bring in a new technology we expect it to be perfect in a way that we don't expect the world that we're familiar with to be perfect.
Subscribe for the occasional hand-picked quote. No noise.