Feeds:
Posts
Comments

Archive for April, 2008

Life-Changing Books

Last week I ran across a quick little article entitled “Life-Changing Books: Recommendations from 17 Leading Scientists“.  Few things in life excite me anymore the way a really good book does (I could tell you “tales of the glories of Christmases long, long ago”), so this definitely piqued my interest.

I knew I was in for a treat when I noticed that the fourth one down was Isaac Asimov’s Foundation Trilogy.  I was a big Asimov fan “way back” in high school.  If I had been asked to participate in the making of the aforementioned list (alas, I am not yet considered a “Leading Scientist”), I might have selected Asimov’s I, Robot.  Let me tell you why.

  • I was and still am fascinated by how literarily fertile his 3 laws of robotics are.  (If Asimov can invent the word “robotics”, I can invent “literarily”.)  I lifted the following from Wikipedia: “SF scholar James Gunn writes, ‘The Asimov robot stories as a whole may respond best to an analysis on this basis: the ambiguity in the Three Laws and the ways in which Asimov played twenty-nine variations upon a theme.’”
  • I didn’t quite realize it at the time, but it now occurs to me that the stories in I, Robot are engineering at its finest.  Here’s a problem, now solve it.  That’s really what I’ve been doing since I got my first programming job.
  • Who doesn’t like robots?

Random posted a few days ago asserting that Great Hackers Read Books.  I totally concur.  It’s really one more way to exercise your mind.  Not only that, books are a great source of ideas!  New ideas, for the most part, are just new combinations of existing ideas.  The more combinations you have available in your brain, the more likely you are to be able to come up with something new and cool.

Some of my recent favorite nerdy-ish books are:

In the famous words of Levar Burton, “don’t take my word for it.”

Read Full Post »

Great hackers continuously expand their minds and discover new principles that make them stand out among their peers. Books, blogs, lectures, etc. are all great sources for new ideas. Just remember to take everything you hear with a grain of salt, and compare it to what you already know. (more…)

Read Full Post »

A few years ago, Stevey at Amazon wrote about the benefits of blogging, even if nobody reads what you write. Paul Graham said something similar when discussing how and why he writes Essays. Elsewhere, Joel related the same principle to writing specs.

So here’s the principle: one of the best ways to exercise your brain and explore ideas is by writing. This works even if nobody ends up reading your stuff, and works even better when there is any possibility (however likely) that your writing will be read by others. For some reason, we humans do better when we feel accountable.

When I ran track and cross-country with some friends in high school, we learned early on the value of having a running partner. When you have someone to “pace” yourself against, suddenly you have more motivation to run harder and longer (basically until you puke). Writing essays or creating software works the same way. You need a great team of people to motivate you and keep ideas fresh. You also need readers or users for the same reason.

Writing down your thoughts and creating real solutions to peoples problems not only makes the world a better place, but it also makes you a better person.

Share what you know. Be good.

Random Boy

New! See our recommended reading list for principle-based engineering.

Read Full Post »

[We join our hero, Captain Constructor, atop the tallest turret of Doctor Destructor's hidden hideout: Fallacy Fortress...]

Dr. Destructor: You’re too late, Constructor! Before the next clock cycle, all of those mortals you call friends will be destroyed! And your little dog, too! [Maniacal laughter...]

Cptn. Constructor: Close your handle, Destructor. Just tell me how to interrupt the detonation kernel … er … process … sequence … thing.

Dr. Destructor: The sequence is perfectly synchronized and it cannot be pre-empted! Unless, of course, you are able to correctly identify the set of slightly-heavier-than-the-rest spheroids. But it is a task that is surely intractable to your puny single-core mind.

Cptn. Constructor: YOUR FACE IS SINGLE-CORE! [Our hero clears his throat, embarrassed. He is not generally given to such base language. Quickly he recovers his composure.] Tell me more about these spheroids.

Dr. Destructor: Over here you will find I have sorted 100 spheroids into 10 buckets labeled 0 through 9. Each bucket holds 10 spheroids, as you can plainly see. 90 of these spheroids all weigh 1 gram each. The other 10 weigh 1.01 grams each and they have been placed all together in the same bucket. You should also have noticed by now that all 100 spheroids are visually indistinguishable from one another. Shall I go on? Your stack is beginning to look overflowed.

Cptn. Constructor: I have stack space you could never even dream of. continue;

Dr. Destructor: Immediately next to the buckets I have placed a scale. The scale has been badly damaged from overuse. I keep telling that furry PHP elephant he’s too big! Never mind that, though. I assure you that the scale is still perfectly accurate. However, it only has one good measurement left in it.

Cptn. Constructor: What does all of this have to do with the spheroids?

Dr. Destructor: It should be quite clear that to interrupt the sequence of destruction, you must identify which bucket contains the heavier spheroids. You may take any combination of spheroids you like from these 10 buckets, place your selection in this empty bucket labelled “this.EmtpyBucket”, and place “this.EmptyBucket” (which at that point will no longer be empty) on the scale. The scale will tell you the weight and you must then tell me which of the 10 buckets contains the heavier spheroids.

Cptn. Constructor: Truly, you have a dizzying intellect.

Dr. Destructor: Wait till I get going! Where was I?

[Join us next time for the exciting conclusion...]

Read Full Post »

101 Easter Eggs

On Friday I came across The 101 Coolest Easter Eggs Hidden in Your Software, DVDs and Video Games.  Although I haven’t hunted down more than a handful of them, some of them appear to be fun (OpenOffice.org: Star Wars Game), some are funny (Firefox: Firefox’s Revenge for IE5′s Joke), some are lame (Winamp: Spinning Fish), and some are quite intriguing (IRIX: Hidden Recipes in Release Notes).

That’s all IMHO, of course.

Happy hunting!

Read Full Post »

Follow

Get every new post delivered to your Inbox.