If we geeks obsessively optimize what’s on our keychain, we’d be remiss if we didn’t also obsessively optimize that other item most geeks carry around – our wallet.
My current Tumi wallet was almost 10 years old and starting to show its age. While I never had an
As a software developer, how do you sharpen your saw?
Sharpening the saw is shorthand for anything you do that isn’t programming, necessarily, but (theoretically) makes you a better programmer. It’s derived from the Covey book The 7 Habits of Highly Effective People.
There’s a guy who
One of the most beloved of all data structures in computer science is the hash table.
A hash table is a data structure that associates keys with values. The primary operation it supports efficiently is a lookup: given a key (e.g. a person’s name), find the corresponding value
In When Hardware is Free, Power is Expensive, I referenced a Google whitepaper (pdf) that explained why typical PC power supplies are not particularly efficient:
Most likely, the computer you’re using wastes 30-40% of the electrical power it consumes because it is using an inefficient power supply. It’s
A few recent articles have highlighted the disproportionate contribution PlayStation 3 consoles are making to the Folding@Home effort. The OS statistics page for Folding@Home tells the tale:
TFLOPSActive CPUsTotal CPUsWindows152160,1731,626,609Mac/PPC78,77695,435Mac/Intel92,8647,400Linux4325,239216,067GPU437332,228PS365926,91129,843
There are a couple
We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil. – Donald Knuth
Michael Teper’s blog has a great post about a bread and butter optimization scenario involving string replacement. After implementing three logical alternatives, Mike looks at the benchmark