Rob Pike

Image of Rob Pike
We don't believe we've solved the multicore-programming problem. But we think we've built an environment in which a certain class of problems can take advantage of the multicore architecture.
- Rob Pike
Collection: Architecture
Image of Rob Pike
There's nothing in computing that can't be broken by another level of indirection.
- Rob Pike
Collection: Broken
Image of Rob Pike
Data dominates. If you've chosen the right data structures and organized things well, the algorithms will almost always be self-evident. Data structures, not algorithms, are central to programming.
- Rob Pike
Collection: Self
Image of Rob Pike
Object-oriented design is the roman numerals of computing.
- Rob Pike
Collection: Roman Numerals
Image of Rob Pike
Eventually, I decided that thinking was not getting me very far and it was time to try building.
- Rob Pike
Collection: Thinking
Image of Rob Pike
Narrowness of experience leads to narrowness of imagination
- Rob Pike
Collection: Imagination
Image of Rob Pike
Such is modern computing: everything simple is made too complicated because it's easy to fiddle with; everything complicated stays complicated because it's hard to fix.
- Rob Pike
Collection: Simple
Image of Rob Pike
Procedure names should reflect what they do; function names should reflect what they return
- Rob Pike
Collection: Names
Image of Rob Pike
Fancy algorithms are slow when N is small, and N is usually small.
- Rob Pike
Collection: Learning
Image of Rob Pike
Not only is UNIX dead, it's starting to smell really bad.
- Rob Pike
Collection: Smell
Image of Rob Pike
Languages that try to disallow idiocy become themselves idiotic.
- Rob Pike
Collection: Trying
Image of Rob Pike
Caches aren't architecture, they're just optimization.
- Rob Pike
Collection: Cache
Image of Rob Pike
When there is no type hierarchy you don't have to manage the type hierarchy.
- Rob Pike
Collection: Hierarchy
Image of Rob Pike
Productivity is most important by engineering management rules, but enjoyment is most important for engineers. One stems from the other.
- Rob Pike
Collection: Engineering
Image of Rob Pike
Rule 1. You can't tell where a program is going to spend its time. Bottlenecks occur in surprising places, so don't try to second guess and put in a speed hack until you've proven that's where the bottleneck is
- Rob Pike
Collection: Trying
Image of Rob Pike
If POSIX threads are a good thing, perhaps I don't want to know what they're better than.
- Rob Pike
Collection: Want
Image of Rob Pike
There's no such thing as a simple cache bug.
- Rob Pike
Collection: Simple
Image of Rob Pike
Using Unix is the computing equivalent of listening only to music by David Cassidy.
- Rob Pike
Collection: Listening
Image of Rob Pike
A smart terminal is not a smartass terminal, but rather a terminal you can educate.
- Rob Pike
Collection: Smart
Image of Rob Pike
Sockets are the X windows of IO interfaces.
- Rob Pike
Collection: Ios
Image of Rob Pike
Why would you have a language that is not theoretically exciting? Because it's very useful.
- Rob Pike
Collection: Language