Explore the wonderful quotes under this tag
An organisation that treats its programmers as morons will soon have programmers that are willing and able to act like morons only.
Sep 10, 2025
I like to protect children. I mean, there's nothing wrong with having adult programming for mature adults that can selectively decide what they want to watch and what they don't want to watch.
Development is maintenance.
The best book on programming for the layman is Alice in Wonderland, but that's because it's the best book on anything for the layman.
You know, I've never accidentally drilled a hole in myself while programming.
You know that I write slowly. This is chiefly because I am never satisfied until I have said as much as possible in a few words, and writing briefly takes far more time than writing at length.
But the big feature of human-level intelligence is not what it does when it is works but what it does when it's stuck.
New management at Nine has launched a concerted attack on its cost base in order to restore margins through eliminating waste, improving efficiency and lowering programming costs.
I was in Washington, D.C., on the morning show, by the time I was 18, programming a station by 19, No. 1 in the mornings. I think I was making, I don't know, a quarter of a million dollars by the time I was 25.
To the scientist there is the joy in pursuing truth which nearly counteracts the depressing revelations of truth.
In my daily work, I work on very large, complex, distributed systems built out of many Python modules and packages. The focus is very similar to what you find, for example, in Java and, in general, in systems programming languages.
Correctness is clearly the prime quality. If a system does not do what it is supposed to do, then everything else about it matters little.
I worked with such concentration and focus and I had hundreds of obscure engineering or programming things in my head. I was just real exceptional in that way
More computing sins are committed in the name of efficiency (without necessarily achieving it) than for any other single reason - including blind stupidity.
The flip side of the coin was that even good programmers and language designers tended to do terrible extensions when they were in the heat of programming, because design is something that is best done slowly and carefully.
The value of a prototype is in the education it gives you, not in the code itself.
Treating your users as co-developers is your least-hassle route to rapid code improvement and effective debugging.
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.
I mean, source code in files; how quaint, how seventies!
The real hero of programming is the one who writes negative code.
Last week I was listening to a podcast on Hanselminutes, with Robert Martin talking about the SOLID principles... They all sounded to me like extremely bureaucratic programming that came from the mind of somebody that has not written a lot of code, frankly.
Don't you hate code that's not properly indented? Making it [indenting] part of the syntax guarantees that all code is properly indented.
The structure of a software system provides the ecology in which code is born, matures, and dies. A well-designed habitat allows for the successful evolution of all the components needed in a software system.
Code should run as fast as necessary, but no faster; something important is always traded away to increase speed.
The important point is that the cost of adding a feature isn't just the time it takes to code it. The cost also includes the addition of an obstacle to future expansion. Sure, any given feature list can be implemented, given enough coding time. But in addition to coming out late, you will usually wind up with a codebase that is so fragile that new ideas that should be dead-simple wind up taking longer and longer to work into the tangled existing web. The trick is to pick the features that don't fight each other.
If we wish to count lines of code, we should not regard them as "lines produced" but as "lines spent."
Progress is possible only if we train ourselves to think about programs without thinking of them as pieces of executable code.
Simplicity is hard to build, easy to use, and hard to charge for. Complexity is easy to build, hard to use, and easy to charge for.
I have been wildly enthused about gaming since I was younger, and a career path I chose not to go down but did really consider was getting into programming and game design.
Programming today is the opposite of diamond mining. In diamond mining you dig up a lot of dirt to find a small bit of value. With programming you start with the value, the real intention, and bury it in a bunch of dirt.
It has been discovered that C++ provides a remarkable facility for concealing the trival details of a program - such as where its bugs are.
If you want more effective programmers, you will discover that they should not waste their time debugging, they should not introduce the bugs to start with.
Ugly programs are like ugly suspension bridges: they're much more liable to collapse than pretty ones, because the way humans (especially engineer-humans) perceive beauty is intimately related to our ability to process and understand complexity. A language that makes it hard to write elegant code makes it hard to write good code.
Are you quite sure that all those bells and whistles, all those wonderful facilities of your so called powerful programming languages, belong to the solution set rather than the problem set?
In times of widespread chaos and confusion, it has been the duty of more advanced human beings--artists, scientists, clowns and philosophers--to create order. In times such as ours, however, when there is too much order, too much management, too much programming and control, it becomes the duty of superior men and women to fling their favorite monkey wrenches into the machinery. To relive the repression of the human spirit, they must sow doubt and disruption.
A computer once beat me at chess, but it was no match for me at kick boxing.
Most programming languages contain good parts and bad parts. I discovered that I could be better programmer by using only the good parts and avoiding the bad parts.
The average person is unaware that he or she is living out a negative destiny according to his or her past (childhood) programming, preserving his or her familiar identity, and, in the process, pushing love away. On an unconscious level, many people sense that if they did not push love away, the whole world, as they have experienced it, would be shattered and they would not know who they were.
That's what's cool about working with computers. They don't argue, they remember everything, and they don't drink all your beer.
As a rule, software systems do not work well until they have been used, and have failed repeatedly, in real applications.
Any programming language is at its best before it is implemented and used. Anything is possible, anything can happen. On a flimsy ground of reality, imagination spins marvelous patterns.
Testing is the process of comparing the invisible to the ambiguous, so as to avoid the unthinkable happening to the anonymous.
You are not responsible for the programming you picked up in childhood. However, as an adult, you are one hundred percent responsible for fixing it.
Beauty is more important in computing than anywhere else in technology because software is so complicated. Beauty is the ultimate defense against complexity. ... The geniuses of the computer field, on the the other hand, are the people with the keenest aesthetic senses, the ones who are capable of creating beauty. Beauty is decisive at every level: the most important interfaces, the most important programming languages, the winning algorithms are the beautiful ones.
... programming requires more concentration than other activities. It's the reason programmers get upset about 'quick interruptions' - such interruptions are tantamount to asking a juggler to keep three balls in the air and hold your groceries at the same time.
Design and programming are human activities; forget that and all is lost.
Furious activity is no substitute for understanding.
If we can dispel the delusion that learning about computers should be an activity of fiddling with array indexes and worrying whether X is an integer or a real number, we can begin to focus on programming as a source of ideas.
The most common human act that writing a novel resembles is lying. The working novelist lies daily, very complexly, and at great length.
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.... The computer resembles the magic of legend in this respect, too. If one character, one pause, of the incantation is not strictly in proper form, the magic doesn't work. Human beings are not accustomed to being perfect, and few areas of human activity demand it. Adjusting to the requirement for perfection is, I think, the most difficult part of learning to program.