Between rounds of speed chess I read enough of a programming manual to teach myself to write programs on the school's DEC mainframe in the language Basic.
Our ultimate goal is extensible programming. By this, we mean the construction of hierarchies of modules, each module adding new functionality to the system.
When teaching a rapidly changing technology, perspective is more important than content.
When building a complex system, having crackerjack programmers (who can make any design work, even a bad one) can be a liability. The result, after lots of effort, is a working system that cannot be easily maintained or upgraded. Good -but not great- programmers would fail early, causing a realization that the system must be redesigned, and then reimplemented. The extra cost is paid once, early in the system's cycle (when it is cheap), instead of repeatedly paid late in the system's cycle (when it is more expensive).
I think that it's extraordinarily important that we in computer science keep fun in computing. When it started out, it was an awful lot of fun. Of course, the paying customers got shafted every now and then, and after a while we began to take their complaints seriously. We began to feel as if we really were responsible for the successful, error-free perfect use of these machines. I don't think we are. I think we're responsible for stretching them, setting them off in new directions, and keeping fun in the house. I hope the field of computer science never loses its sense of fun.
There are a couple of people in the world who can really program in C or FØRTRAN. They write more code in less time than it takes for other programmers. Most programmers aren't that good. The problem is that those few programmers who crank out code aren't interested in maintaining it.
There is no reason for any individual to have a computer in their home.
C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off.
The best way to prepare [to be a programmer] is to write programs, and to study great programs that other people have written. In my case, I went to the garbage cans at the Computer Science Center and I fished out listings of their operating systems.
We teachers make the road, others will make the journey.
Computers are getting smarter all the time. Scientists tell us that soon they will be able to talk to us. (And by 'they', I mean 'computers'. I doubt scientists will ever be able to talk to us.)
They have computers, and they may have other weapons of mass destruction.
Data is not information, Information is not knowledge, Knowledge is not understanding, Understanding is not wisdom.
My definition of an expert in any field is a person who knows enough about what's really going on to be scared.
The three most important aspects of debugging and real estate are the same: Location, Location, and Location.
You can either have software quality or you can have pointer arithmetic, but you cannot have both at the same time.
A good programming language is a conceptual universe for thinking about programming.
Successful software always gets changed.
Vague and nebulous is the beginning of all things, but not their end.
I was eventually persuaded of the need to design programming notations so as to maximize the number of errors which cannot be made, or if made, can be reliably detected at compile time.
Computer programming is an art, because it applies accumulated knowledge to the world, because it requires skill and ingenuity, and especially because it produces objects of beauty. A programmer who subconsciously views himself as an artist will enjoy what he does and will do it better.
The only way for errors to occur in a program is by being put there by the author. No other mechanisms are known. Programs can't acquire bugs by sitting around with other buggy programs. Right practice aims at preventing insertion of errors and, failing that, removing them before testing or any other running of the program.
A programming language is like a natural, human language in that it favors certain methaphors, images, and ways of thinking.
A class, in Java, is where we teach objects how to behave.
The tools we use have a profound and devious influence on our thinking habits, and therefore on our thinking abilities.
Follow AzQuotes on Facebook, Twitter and Google+. Every day we present the best quotes! Improve yourself, find your inspiration, share with friends
or simply: