Wednesday, January 10, 2007

Why I Am an Un-Reformed Apple Fanboy

Everyone loves a winner. Did you ever notice that your local football team gets a lot more popular the closer they get to the championship? So what makes someone love a company? It seems like it should be the one that makes the most money, but that doesn’t appear to be it. What explains the passion that surrounds Apple, Inc.?

I think it has a lot to do with how personal these products are. MacBooks and iPods inspire such devotion because they get inside our lives and change us. Apple is famous for blowing right past the status quo. Where another company would think they have a winner if their product is 20% smaller or 10% cheaper, Apple has a habit of saying, “Forget about the state of the art. It just isn’t nearly good enough.” The underlying message is that we, their customers, deserve something we haven’t even dared to dream of yet. The new iPhone is a prime example of this. For better or for worse, this product puts a groundswell of emotion in me. What’s the emotion? It’s gratitude. I am grateful that someone stood up and said “Adequate isn’t.”

There is a contagious pride in a category-smashing Apple product. It’s the same pride you feel in your football team. When Apple is at their best, they are not producing just any old thing, they are producing the best that has ever been made. People love to see someone take a million-to-one shot and just nail it. Again, I’m getting back to emotions. As social creatures, we have a deep desire to be part of something greater than ourselves.

The vast majority of companies or organizations of any kind are only seeking to produce something of value. But when your standard is much higher than that, when your standard is the best that has ever been, you enter into the realm of passion, into something deep inside of every human being that usually lies dormant. The difference between passion-off and passion-on is not just a difference of degree; it is a difference of kind. Passionate people aren’t just more productive (though they are that). Passion reconfigures what is even possible.

I have only worked for one organization where passion was normal, a small company called Human Code in Austin, Texas, that was acquired and dismantled during the dotcom boom and bust. Now, I’m starting my own company, and I don’t even know what we’re going to build yet. But I know that whatever it is, whether it’s a product or a service, our vision will be to build the best that has ever been made. It sounds like the height of hubris to even say that, but it is ok with me to strive and fail, if there is passion in the striving.

So yes, I am an Apple fanboy, and I make no apologies. I may have to buy two iPhones: one to use and one to eat.

Sunday, November 19, 2006

12#

As I write this, I’m wrapping up my eighth week on the Paleo diet. I am twelve pounds lighter. I think it’s safe to say that this has as much to do with being calorie-deprived as with any unique properties of the “Paleo way.” My goal with the diet is not to lose weight, but to control my cholesterol without statin drugs. I won’t know how I’m doing on that score until I get my next blood test, which I will probably schedule for sometime this week.

I have not been a perfect Paleo dieter, but I have had better-than-average self discipline. When I take the trouble to plan ahead, I’m eating very well. When I don’t, I scarcely eat at all. At the sophisticated end of the spectrum, you’re supposed to fill a lot of time with planning, shopping, cooking, storing, and transporting your ideal Paleo food. At the other extreme, you can do this diet in two laughably simple steps:

  1. Sit down to a meal.
  2. If your food has sugar, salt, grains, legumes, dairy, corn, or potatoes in it, don’t put it in your mouth.

Will you be hungry? Oh yes, you will. Will you be jealous when your wife prepares quiche? Affirmative.

You’re allowed to eat as much lean meat as you can choke down. I was a vegetarian before this, because I think factory farming is bad for people, animals, and the environment. Since I went Paleo, I have only purchased organic, vegetarian-fed meat, which is a half-measure at best. I still don’t know where this meat comes from. I do not have a clear conscience about this, and I’m not sure what to do long-term. If it turns out this diet is doing nothing for my blood, I’ll be a vegetarian again in a New York minute. But what if it turns out I’m in the best health of my life? I’ll have a dilemma on my hands.

More on this developing story as it — develops.

Saturday, November 11, 2006

Waking Up

Elizabeth and I were trying to figure out why we’re not more excited by the historic power shift in Washington this week. I said, “Well, the good news is we have finally woken up from the nightmare. The bad news is that while we were sleeping, we did, in fact, shit the bed.”

Wednesday, October 25, 2006

Poverty is Better than Regret

I'm going to India in March. Yeah, it's funny how things work. Just a week ago, spending 17 days in India soaking up the culture couldn't have been further from my mind. But then I got a surprise email from my high school. They're organizing a trip to India for spring break (I know, much cooler than South Padre, right?) and they decided to extend the invitation to alums. The best thing about this is that it's being led by my favorite teacher, David Weidman. He was the theatre director back when theatre was the best thing in my life, and he was an indispensable mentor. For the purposes of this trip, it doesn't hurt that he was raised in India. I was conflicted, because the trip costs $3500, which is about $3500 more than I can afford for a trip of this kind. After considering it from a dozen sides, I decided I'd be crazy not to go. I asked my friend Mike for advice, and he said, “Poverty is better than regret.” Fuckin’ a.

Ass-First Programming

Full disclosure: I was an English major. As a programmer, I am one hell of a faker. I even wrote an essay about it a few years ago. I am not sure when I will ever live this down. I like to read about software, and I find plenty of things to remind me how far short I fall.

My new favorite blog is by Steve Yegge. He writes so well, he makes it look easy.

When I read The Truth About Interviewing he really struck a nerve. This part in particular:

If you want a job at a company like Microsoft, Yahoo!, Apple, or Amazon.com, they’re going to have high standards. It doesn’t matter if you “know how to program”. They’re going to test you on algorithmic complexity analysis, advanced data structures, algorithm design, searching and sorting, internationalization techniques, network protocols, OS-level memory management, parsing and semantic analysis, recursion and mathematical induction, graph theory, combinatorics, programming language theory, machine architecture, discrete math and logic, graphics and window systems, fonts and typesetting, color spaces and representations, databases and query languages, filesystems and storage, embedded systems, device drivers, mobile and wireless protocols, and internet standards and technologies.

If you’re lucky, that is.

If you’re unlucky, they’ll ask you to derive the outline of their Ph.D. thesis on fault-tolerant massively parallel machine-learning systems. Or to solve a grand-unification style computation problem involving telephone switches, grid networks, and third-degree differential equations. Or, God forbid, they’ll ask you about the darkest corners of C++ syntax.

And you want to know why they’ll ask you about that stuff? Because they’re using it every day. They’ve tried hiring people who don’t know this stuff. Believe me, they try all the time. They want to hire more programmers, and they’re out there on the constant lookout for new meat. But when they lower their standards, they get burned.…the service goes down for days, losing them millions; the project gets delivered late or even not at all, losing them contracts and customers; they lose the business battle to competitors who hired better engineers.

Putting together a pretty Ruby on Rails site is no small feat. Learning to program is no small feat. Many people try and fail to get even that far. But it’s 3- to 5-ball juggling, and it just doesn’t cut it for the Cirque du Soleils and private hospitals of the software industry. I’m sure you want to be a racecar driver, a hang-gliding instructor, a corporate lawyer, a movie sound editor, a rocket scientist. But you know you don’t have the requisite training or experience. Why do you think knowing a little (or even a lot) about programming automatically qualifies you to get hired at Microsoft?

Software companies have excruciatingly high standards, just like any other profession. Those that don’t get eaten up by those that do.

He mentions this idea again in passing in Dreaming in Browser Swamp

One cause [of disrespect for web programming], and let’s be honest here, is that a lot of web developers were self-taught, weaned from text to HTML to onclick=”foo.hide()” and onwards to CSS and DOM and more complex JavaScript, and thence on to CGI and PHP and VB and ActiveX and SVG and Flash and the rest…

This is exactly how I came to be a programmer (although in my case it was Java instead of VB and ActiveX). It hurts to be pegged.

Sigh, this is a long-lived meme. Here’s Philip Greenspun from the introduction to SQL for Web Nerds:

That doesn’t sound too tough to implement, does it? And, after all, one of the most refreshing things about the Web is how it encourages people without formal computer science backgrounds to program. So why not build your Internet bank on a transaction system implemented by an English major who has just discovered Perl?

And Joel Spolsky, from the forward to Mike Gunderloy’s “Coder to Developer:”

There’s something weird about software development, some mystical quality, that makes all kinds of people think they know how to do it. I’ve worked at dotcom-type companies full of liberal arts majors with no software experience or training who nevertheless were convinced that they knew how to manage software teams and design user interfaces. This is weird, because nobody thinks they know how to remove a burst appendix, or rebuild a car engine, unless they actually know how to do it, but for some reason there are all these people floating around who think they know everything there is to know about software development.

The thing is, I have high standards too. I’m not satisfied with the status quo. My wife and my (non-technical) co-workers are always telling me not to be so hard on myself. In their opinion, I’m a good engineer. While that feels nice, and I appreciate their support, it lures me into a false sense of security, because they don’t know anything about software development. I try to learn all the time, but it always feels like I’m putting lipstick on a pig, because I don’t know jack about pointer arithmetic, discrete math, number theory, compiler design, multi-threading, and on and on. Perhaps one day I’ll cave to my mediocrity and phone it in for the rest of my life, but by God I hope not. Until then, I stubbornly refuse to accept that I cannot be a good programmer just because I didn’t go to MIT. I’m trying to be very pragmatic and systematic about this: I will put the full light of day on my ignorance and chip away at it in the right places until I like the shape I’m taking. Which is not to say that it will ever be finished. I have to accept the fact that I have limitations — every human being does. But I don’t have to accept that my life is not up to me.

In a perfectly painful synergy, this is also the story of how I became a “musician.” I will not rest until I can play piano like a cross between Reuben Gonzales and Count Basie. I hope you’re willing to wait, because this is going to take a while.

Wednesday, September 27, 2006

the Paleo Diet, day 3

I got the book and as of Sunday evening I'm officially on the Paleo Diet. I've done some crazy things, folks. I've done detox diets, I've been vegetarian. But this really takes the cake. Scratch that; Cake is not allowed. Here is a brief summary of what is not allowed on the Paleo Diet: dairy, beans, corn, potatoes, grains, sugar, and salt. This lays devastating waste to the food guide pyramid. Strangely, beer and wine are not prohibited, even though Paleo Man could not have had them. Loren Cordain PhD recommends moderation, of course! I'm only on the third full day, and this is hard. Basically, you can only have lean, fresh meat, fruit, and most vegetables (legumes and the starchy ones excluded). My fervent hope is that once I figure out how to shop for these things and how to make a few delicious meals under these restrictions, that I'll be happy again. I want to give this a good college try, because it promises to bring out the caveman in me!

Thursday, September 07, 2006

Paleo Man!

I did not care for my primary care physician at all, so I followed a recommendation from the fine folks at our local natural food store and switched to a very, um, different sort of doctor. Lane Sebring, M.D. spent more time with me in our initial consult than anybody I've ever gone to see before. Here are some highpoints of our visit:
  • He extolled the virtues of hunting and gathering.
  • Vegetarianism and low-cholesterol diets are both vile propaganda.
  • I can choose to juice up my libido with a liberal course of testosterone.
  • His favorite breakfast: a 6 or 8 ounce buffalo steak with a side of spinach.
So he's taking me off statins ("What are they for? Certainly not for your health!") and putting me on the Paleo Diet and I'm going to turn into some kind of primal man. Now we're talking!

Wednesday, August 23, 2006

SOCI 3307

I started auditing a statistics class today, from Dr. Sally Caldwell who is “the best stat teacher in the world.” [1] This is gonna rock. [1] Sally Caldwell, PhD. August 23, 2006

Thursday, July 06, 2006

Better Living Through Numbers

If you have 20 minutes to have your mind blown and your old assumptions about the world re-programmed, then watch this video of Swedish public health expert Hans Rosling at this year's TED conference.

Among the surprises: measured by the rate of child survival to the age of 5, Mao Tse Tung figures as one of the great humanitarians of all time.

Tuesday, June 27, 2006

Oh, Glorious Day!

Everyone buy this book immediately.

Edward Tufte (pronounced “tufty”) is one of my intellectual role models, right up there with Christopher Alexander. Tufte is for information what Alexander is for buildings. When I was in college, in a rut of non-inspiration, I took a gamble on an odd little course from the Division of Rhetoric and Composition called “Information Architecture,” for which Tufte's “Envisioning Information” was one of the texts. It was one of only two times in college I was awestruck (the other was an introduction to ancient Greek and Roman art). Granted, this tells you as much about my difficulties as an undergrad as it does about Tufte, but there you have it.

I went on to be riveted by the rest of his books. I can honestly say that post-Tufte I see the world in an entirely different light. A new book is like a national holiday. Imagine getting Harry Potter #7 delivered to your door out of nowhere by surprise. Times bajillion!

Monday, June 26, 2006

Post-Cartesian Objectivity

The older I get, the less of a relativist I become. I hope this trajectory does not lead to close-minded dogmatism, but I can at least flirt with it, right?

I'm near the end of a magnificent book called "The Nature of Order: the Phenomenon of Life," by architect Christopher Alexander. I learned about him from software engineering, weirdly enough; He's the pioneer of a system of problem-solving by codifying the essence of common problems and describing a generic solution taken from accepted wisdom. He writes about it from the point of view of buildings, but it turns out to be a wonderful device for talking about software problems as well.

"The Nature of Order" is a four-volume magnum opus that strives to do no less than codify beauty in objective terms. In order to do this, he first has to re-cast the very meaning of objectivity away from 17th century mechanistic scientific objectivity. Alexander blames this impersonal worldview for the cold, lifeless, and even hostile architecture of 20th century. In the Alexandrian model of life and beauty in the world, beauty is objective from the frame of reference of our shared humanity; it is a deeply-felt, profoundly human experience. What he describes is not so much an approach to the built environment as it is a philosophy by which we aim to make ourselves more truly alive.

I can't wait to start volume two!

Friday, June 23, 2006

“Overwhelming Response”

I just dialed 1-800-MY-APPLE and got this:

Due to overwhelming response to our products and services, we are unable to take your call.…

Notice how they spin that to make it sound like a good thing.

Saturday, June 17, 2006

MacBook Review

I'm loving my new Apple MacBook. I've got the white one, because I couldn't see why I should want to pay more to get the color of almost every other portable computer on earth. I ordered it with the minimum RAM configuration and bought 2GB from Newegg right away. Apple must be smoking drugs to charge $500 for the same upgrade: Newegg's was around $180. I'm thrilled that the MacBook's RAM and hard drive are user-swappable, but there's a pitfall when installing the memory: shoving the memory modules in takes a good deal more force than anyone would reasonably expect. You don't usually want to be subjecting an expensive piece of equipment to brute force only a few minutes after you lift it out of the box. And it's a beautiful box, by the way. Apple has a knack for achieving obsessive levels of refinement, and you can see it right down to the museum-of-modern-art packaging. The MacBook has a new and different keyboard, and since I bought this machine sight unseen, I didn't know if I was going to like it. Well, I love it. It has a very crisp action that doesn't feel notebook-y at all. The key caps have a very subtle texture on them that makes them more tactile. The surface of the trackpad has the same texture, which makes it very nice to touch. If you put two fingers on the trackpad, you can scroll the active window. Remarkably, it's smart enough that if you have a window with multiple panes and multiple scrollbars, it scrolls the one your pointer is over even if if that pane does not have keyboard focus. Trackpad scrolling is so nice, I hope I never have to click a scroll button again. Speaking of clicking, the MacBook trackpad button is unfortunately a little mushy. My previous machine was a G4 PowerBook, so I am enjoying a big speed boost. I can build Sakai from scratch in four minutes instead of twelve. I've never had a computer with dual processor cores, let alone a "low end" consumer laptop like this one. Oh, I just misspoke. A lot of hay has been made about how the MacBook and MacBook Pro are too hot to sit comfortably on your lap. It is absolutely true. It's fine for a few minutes, but only if you're wearing pants. ;-) For extended use on your couch or in your bed, you are going to want some kind of tray to set it on. In spite of the dual cores, the heat, and the fact that it has a brighter screen and 25% more pixels than my old PowerBook, battery life is about a third longer. Since I like to be mobile, that's a lovely surprise. The MacBook has a new high-gloss screen. I wasn't excited about this, but it turns out that in most lighting conditions you won't notice it. In one case, reflections were obvious and I just had to adjust the angle a little bit. I personally don't buy the claim that this glossy screen is going to make video look better. That sounds like pseudoscience to me. The complement of software that comes bundled is pretty amazing. OS X is an entire universe all by itself, but you also get iLife '06, PhotoBooth, FrontRow, and full versions of ComicLife, OmniOutliner, and 7 classic board games from Freeverse. By surprise, there's also a full version of Quicken 2006 on here, which I could find no mention of on Apple's website. That's about it for my first impressions. The built-in iSight camera is nice, as is the ability to boot into Windows, should that need ever arise (I'm not holding my breath).

Wednesday, June 14, 2006

MacBook Cometh

I'm taking delivery of a rawkin' MacBook tomorrow. Thanks to the international date line, my package can depart China and arrive in Alaska in the past.

Monday, June 12, 2006

I Will Eat My Socks…

… if all the 5-star reviews for this course on DVD were not written by the author himself! His style is — how shall we say &mdash distinctive? Viral marketing on the very cheap. Hey Boris, next time you should mix up your capitalization and punctuation a little bit.

Friday, June 09, 2006

Windows Genuine Advantage

The last time my Windows machine downloaded updates, I got this gem:
The Windows Genuine Advantage Notification tool notifies you if your copy of Windows is not genuine. If your system is found to be non-genuine, the tool will help you obtain a licensed copy of Windows.
How stupid does Microsoft really think its customers are? As a software company, they're well within their rights to do what they feel is necessary to stem the tide of piracy, but they're pitching it like they're doing all of us a magnificent favor. They even have a slick website about it. I don't know about you, but I doubt those that are using Windows for free are going to feel the "genuine advantage" vibe.

Friday, May 26, 2006

Maybe I'm Too Well Paid?

I have yet to work for an employer who will buy software tools for the team when we ask for them. The beautiful side of this is that it drove me to pursue open source alternatives, which has proved to be a very good thing. One of the ways a state agency is ill-equipped to produce great software is that their byzantine purchasing process makes it very difficult to get development tools. Apparently the only place we can easily purchase from is shi. If shi doesn't carry it, then for all practical purposes, it doesn't exist for us. I guess no one has explained to the state agencies that we're entering a new golden age of independent software development. Software in boxes is so last century. I have been using a trial version of TextMate, a fabulous text editor for developers on the mac. Its entire development is the work of one nice young man from Copenhagen. This software is worth more than the asking price (around $50), and Allan deserves our money, so I approached my boss, gave him a flashy demo, and asked him if he can get it. After explaining the near-impossibility of fulfilling this request, he offered me an intriguing organizational hack: "If you pay for it with your own money, I'll reimburse you in time off." By the way, this is the officially-supported means of compensating for overtime, which when you think about it is not really a benefit ("You get to work on Saturday instead of Monday!"). At first, I was excited. A solution! I can get all the software I want! "See you in a couple of weeks boss, there's lots of stuff I wanna get." But then I started wishing I wasn't paid quite so well. If only I made minimum wage, I would get to take more than a day off in compensation for buying TextMate. As it is, though, I only get two and a half hours. Sheesh, that's only a long lunch. It's funny, ever since my son was born I have become very philosophical about time, about how I should value my time ever more highly. When faced with the chance to pay money for time, it suddenly feels like a different equation. In this particular case, it's a no-brainer, because not only do I get two and a half hours back, I get some great software! I guess the problem in general with being compensated in time, is that just like that, it's gone. There's a larger lesson here, isn't there? Time, she is a cruel mistress.

Friday, May 19, 2006

Flirtation with MacBook Pro

I'm borrowing a shiney 15" MacBook Pro from work. First impression? It's cooking my lap! I had heard that these guys run hot, but it's leaving a MacBook-shaped mark on my body. My other impression is that you can sort of tell that the Intel machines aren't as reliable (yet) as their PowerPC brothers. One of the first things I tried to do was download the new Intel compatible version of Eclipse, and on two attempts Firefox would only download the first 75% or so, and then StuffIt Expander would try to expand the incomplete file, hang and eat one of the CPU cores until I opened Activity Monitor to force it to quit. I'm sure there is an Intel mac in my future, but playing with one rubs off some of the mystique. It's still just a computer. It's good for me to learn not to covet.

Wednesday, May 17, 2006

Brainless Stock Photography

Part one of a new series.


This woman loves her computer so much, she'll sit in front of it even when it's not on!

Update: the series began unofficially last October with this beauty from Apple.

Zach Thomas: Browser Maverick!

I guess Firefox is just too popular for my taste. I'm switching to Camino! Actually, I'm just giving Camino a test drive. After all, Greasemonkey contributes a great deal to making Firefox the coolest browser in the world. We'll see where this goes. Heck, I could still wind up with OmniWeb or Opera.