MBP: An Uneventful Return

April 26th, 2006

This post is part of the MacBook Pro Complaints series. Instead of (or in addition to) linking directly to this post, consider linking to the series link, which includes a summary of all findings to date and direct links to the pertinent downloads that users may find useful. Thanks for reading!

I got my MacBook Pro back from Apple repair, today. It was actually ready late last week, but I was out of town. I had called DHL to arrange for them to not attempt first delivery until today. When I got home from my trip I discovered two messages on my machine from DHL, each warning me that my machine was in imminent danger of being returned. Instead of following my request to deliver today, they just went ahead and tried on Friday and Monday. Today I drove out to the DHL shipping center 20 minute away so I could take care of it once and for all without waiting around all day for another delivery.

I opened the box with anticipation. Maybe all of my concerns would be addressed. Or at least the screen brightness noise! I opened it and started it up to discover that they had completely wiped the hard drive, and reinstalled the base system (10.4.5). Well, at least maybe this was a sign of a huge overhaul of the system. The service slip describes replacement of four distinct parts, including (I think) the main logic board. I still have the same serial number as before, however.

The worst news? The one thing I thought would absolutely fixed completely – the screen-brightness relating buzzing – is clearly not 100% resolved. I can’t tell if the new behavior is the same or better, because it seemed like the buzzing varied a lot throughout the day, but I know that if I put my ear up to the right side of the computer, there’s a buzzing when the brightness is less than full, and no buzzing at full. Something in there is still “more noisy when not full.” That sounds like “not fixed” to me, but maybe it’s much quieter and “within spec,” now.

The expected-but-sad news? The whine is present as ever. I was shocked to come home and discover that the 17″ MacBook Pro was announced at NAB of all places. If the 17″ edition of this computer exhibits anywhere near the same noise problems as the 15″, then I don’t see how any NAB professional could possibly use it for their work. My only A/V interests with the machine is for home recording, and even for that it seems to be dodgy at best. If I make a blank recording with GarageBand, with the audio input set to “built-in audio”, but nothing plugged in to the input plug, I can record the noise. That just doesn’t seem right. Plugging a mini-jack to RCA cable into the headphones line-out on the computer, I am able to amplify the CPU whine to whatever volume I care to, through my home stereo. The freaking noise is there, Apple! Is it acceptable? I have a hard time accepting it, and I don’t see how any professional would allow it on their A/V portable computer.

Among the components replaced by Apple are some heat regulator parts. Hopefully this will make the unit run cooler, but I have to suspect that if the main noise complaints were not addressed, this repair might have been a waste of effort, since I’ll be pursuing further repair as suggested in my original complaint.

If Apple or anybody else can convince me that it’s OK for my machine to make a headache-inducing, audio-track ruining noise during ordinary operations, then I’ll shut up and stop posting about this. Otherwise, I want a freaking Pro computer, Apple. And I’m exhausted already just thinking about dealing with another round of DHL shipments and ineffective Apple repairs.

I’m going to hold on to the unit at least for a few days, since I’m doing some traveling next week. Yes, it’s true. I rely on the computer. It is in fact useful, but it’s fatally flawed and does not meet my expectations for an Apple computer.

Update: Positive Notes

I’m cranky because the main problem of the CPU whine wasn’t fixed. But on a positive note, I should add that both the CPU whine and display noises seem much less noticeable than before. The CPU whine is now my main concern as it’s still loud enough to notice all the time in a quiet room, and it gives me a low-grade headache, but I think the display brightness noise is now “quiet enough to ignore.” That’s good!

Other bright points? It’s now been running for a couple hours and it’s still relatively cool. I think there was something wrong with the heat management and it’s now fixed. That’s nice! Thanks, Apple. Also, I have yet to hear the mooing noise since I got it back. We’ll see how it holds up when I head out of town again this weekend. It’s always easier to hear the noises on the road – in part because hotel rooms are quiet, and in part because I’m more likely to be running on battery power.

It’s possible. Just possible that I might be willing to cut my losses and keep this computer as-is. The whining CPU still drives me nuts, but as long as one of my workarounds continues to work, I might prefer to just live with it (albeit with a bit of a sour taste in my mouth about Apple quality), instead of pursuing further action. I’m afraid if I pursue the repair process any further, I might end up with another machine that is worse than this one. Crappy way to have to look at the world, huh? Is this how PC owners feel?

Update: should have known not to write anything about this until I had used the machine for a couple hours. The mooing is still there. Silver linings are falling like flies.

Easy Programming

April 20th, 2006

Recently, Brent Simmons posted a catalog of some ineffective approaches customers take when lobbying to get their requested changes into his software. One that stands out for me is “surely it must be easy for a developer like you.” Yes, this is a funny one! The customer uses this incredibly loaded language that in one fell swoop expresses ass-kissing and the threat of dismissive contempt should you refuse. Bastards!

But that got me thinking. Surely it must be easy for developers like us, at least most of the time. If it wasn’t, we’d find other work or go nuts under all the pressure. Easy and hard are powerful words in the software world, and convey a lot of meaning – some desirable and some not. Who on your team is management’s favorite programmer? The one who replies “Oh, that’ll be easy,” to every marketing requirement they’re presented with. It doesn’t have to be true. If management thinks that Sarah has an easy time turning all of the company’s ideas into pure profit, then she’s the favorite. So what if she’s working her ass off until 3 in the morning every night to “make it so.”

If you’re honest and admit how difficult something might be, you risk being labeled by management as a can’t-do individual. Some people are pathologically negative about the outlook of a task’s difficulty. Just as Sarah masks the difficulty of the task to make herself look good, her coworker Jenny masks the easiness of the task… to make herself look good. How could this be? Sarah knows she’ll look good because she gets things done. Jenny knows she’ll look good because nobody will be able to understand what it is exactly that she does. If she’s lucky she’ll last many years as the team’s misunderstood genius, until one day management realizes she hasn’t done anything at all. Meanwhile Sarah has been asked to work on every hot project that comes down the line.

Surely there must be a compromise between running yourself ragged to maintain the illusion of effortlessness, and pessimistically shooting down every opportunity that presents itself to you. My proposal? Consider your work and any future work that is offered to you as a “series of time-consuming yet easy tasks.” This strategy allows you to estimate with some accuracy the realistic amount a time a project will take, while still offering management the comforting sense of “easiness” that seals your reputation as a “can-do” person. This series of easy tasks also works as a beautiful motivational and planning tool.

It turns out Brent’s nightmare customer is right. Surely it must be easy. In fact, that’s my new mantra. From here on out I shall let that phrase serve as a reminder to me that my office is an “ease-enabled” environment. I’ve reviewed many of the trendy programming philosophies: extreme programming, pair programming, agile development, etc. They all offer interesting advice, and none of them particularly prescribes taking the whole kit and caboodle. I’ve picked and chosen from the advice that appeals most to me. So I can’t say I’m an “extreme programmer” or that I follow the “agile development process.” I guess I’ll just admit that I’m easy.

Below are a few guidelines that help me maintain an easy programming lifestyle. I hope these resonate with you. Feel free to pick and choose!

The Simplest Correct Solution

Planning for the “inevitable” is almost always a waste of time. If you are building functionality into your product, it better satisfy a current customer requirement, or you’ve got some explaining to do. You’re gambling with your own time, and doing so with terrible odds. The payoff for such squandering needs to be huge; it needs to be a proportional avalanche to the investment you make today. Should you invest 10 hours now on a feature that has a 50% chance of saving you 1000 hours in a year? Maybe. Should you invest 10 hours now on a feature that will be interesting to a niche customer base if they happen to take a spark to your product’s 1.0 release? Absofrickinlutely not.

Why does the payoff have to be so huge? Because it’s probably not going to happen. Planning for the inevitable in software is like planning to win the lottery. Whatever you think your customers or clients will want in the future is wrong. Big companies pay thousands of dollars on focus groups and user testing just to figure out what users want and need right now. How are you going to find out what they’ll want next year?

This fact of life is only depressing until you look at it from the point of view that it gives you virtual carte blanche to do the minimum amount of work required to satisfy today’s requirements. It’s not even laziness. It’s efficiency. Enjoy the extra time. Go for a bike ride. Read a book. Write a blog entry. Take a nap. It’s easy.

I can hear the steam coming out of your ears from halfway around the world. Damnit! You hate it when pinko commies like me tell you it’s foolish to plan for the future. Relax. Of course you should plan. Only, plan for the future that will actually happen! It’s all right (even imperative) that you write code for cases that don’t exist, but be extremely rational in your decisions. Let’s say you’re writing software that manages vehicles and roadways. You’ve got special cases for commercial trucks, passenger vehicles, etc. A good programmer will argue that “vehicle” should be abstracted such that future or overlooked classes of vehicle can be easily adapted to the existing system. Fine – this leads to a good design. But the bad programmer will argue that “vehicle” needs to be suitably abstracted such that it covers hovercraft and spaceships. Then they will argue with you endlessly about the series of eventualities that the software will be unprepared for, if by some chance they should happen. I know – I’ve been the bad programmer. Not on this project, buddy!

Only Work on Easy Tasks

In easy programming, you have permission to be selective in choosing which requirement to tackle next. I suggest you turn your nose up at hard problems, and instead only work on easy ones. Obviously, this is a trick, right? Sort of. You’ll end up with hard tasks on your list, and you have to make those lists disappear from the list. One way is to barrel ahead and complete the hard task, as painful as it may be. The other way is to turn the hard task into a series of easy tasks. Now you’ve got a “lot more TODO items,” but the good news is they’re all easy.

For anybody familiar with the Getting Things Done methodology, working on only easy tasks should be familiar. I developed this approach after reading about the “next actions” strategy of GTD. Basically, tasks that are singular are “actions” while multi-step processes are “projects.” Most of us make the mistake of listing projects on our TODO lists, and projects are overwhelming. The challenge here is to look at your hard tasks and think, “what is the simplest possible task that needs to get done before this project can proceed”? Often you’ll find it comes down to something like “send an email to mailing list asking for help,” or “print out Apple’s documentation on NSProxy.” These are tasks a trained monkey could do – almost.

When I’m at my least motivated, sometimes my “next action” on a particularly hard project is something as simple as “create empty template source files.” Once that’s out of the way, I’m free to move on to the next easy task on my list.

Never Fix a Bug Twice

Lots of programmers make their jobs harder than they need to be by fixing the same problems again and again. They also confuse this ability to fix the bug as a laudable skill, when it’s really a symptom of stupidity. If you find yourself fixing the same kinds of bugs so often that you get good at it, then you’re probably getting more practice than you should be. Why is this bug, or a bug very much like it, coming up again and again?

I used to suffer from the common problem of my shoelaces coming untied. Every day, at least once, I would find myself kneeling down to retie my shoes. I figured this was just the way things went. You walk, your laces come untied, you retie, you walk. Although I had a problem – a recurring problem – I was adept at solving the problem in seconds flat. Then at WWDC in 1998 or so an Apple compiler engineer taught me how to tie my shoes. A very minor variation on the regular shoe-tying knot produces a knot that doesn’t slip and won’t come untied until requested to do so. For the past 8 years I have tied my shoes once per wearing. I changed my process and it eliminated the bug-fixing. The bug fix was the process change.

When bugs come back, it sometimes means the bug wasn’t really fixed correctly the first time. You can do a lot to prevent bug recurrences (shoes untying) by thinking carefully about what it means to fix the bug. Let’s say you get a customer report that your application crashes when an extremely long an nonsensical phrase is entered into the “City” field. You dutifully type or paste the long phrase into your app and, sure enough, it crashes. Using the debugger, you see problem almost immediately. The open source library you use to process text is obviously not too careful about the length or character encoding of its inputs. You see an easy fix and, having the project’s source code, you’re able to fix it in just a few minutes. Months later, a similar but different report comes in. Again, it comes down to this damned open source project! Another assumption made wrong. How many times are you going to go through this process before you treat the problem at the source? The open source library can’t be trusted with unbounded text, and you’re not in a position to review the entire source base correcting problems. You have to adjust your contract with the library. Instead of assuming that it was programmed by people with your same attention to detail and crash prevention, you need to accept its shortcomings and massage the data you feed it. By adding one “sanitizer” function, you can ensure that your data meets the library’s foolish assumptions. Instead of relying on the library to be bug free, you rely on your code to be provocation-free. Now this bug, and others like it, are permanently fixed.

Test Your own Strength

Even after you’ve made a wise choice in permanently fixing a defect, it’s liable to sneak back up on you – often when you’d least expect it to. Unit testing and test-driven development are concepts which I agree with in concept but which have not completely taken over my development process. If you pick just one aspect of your work to apply programmatic testing to, however, it should be in the bug fixing department. By writing a test that first detects your bugs presence, and then (after you fix it) correctly detects its absence, you’ve bought yourself permanent piece of mind. Bugs may come and bugs may go, but you’ll be first to know when your unit test sets off the alarm.

I’ve found that test-driven development can also help a lot when spinning wheels in the “make all tasks easy” phase. Often the easiest possible task that you can do on a project is the one that satisfies your next test. You have to write a complex natural language parsing algorithm encapsulated by an Objective-C object that takes an NSData object containing English paragraphs and returns a tree structure representing the grammatical constructs contained in the text. The first test? “[[MyParser alloc] initWithData:myText] should not be nil”. Phew! That was easy. Didn’t even need a PhD! Next test, please!

Do Hard Things Once

If you hate doing hard things as much as me, then you better make sure that when you’re done grumbling your way through the seemingly endless list of hard tasks made into easy actions, you have something you can reuse. The very fear of having to do this again someday should be enough to encourage a modular design that can be repurposed as needed down the road.

Wait! Doesn’t this conflict with my “don’t bet on the future, sucker” advice? Not at all. Writing modular code that can be reused when needed is nothing like the crystal-ball peering I was so dismissive of. This is planning for the expected, while the other plans for the unexpected. You will probably be asked to do something very similar to this hard task in the future, and if you can’t reuse your existing code, then you’re going to feel like a real fool. Notice that planning for reuse doesn’t require planning for future requirements, it just means leaving a set of tools on your belt that will be useful regardless of future requirements.

By always focusing on how much you really, really, really don’t want to have to do this tedious task again, you are subliminally programming yourself to write a reusable solution that will protect you from such a cruel fate.

Just Say No to Features

Some programmers assume that the way to improve software is to add features. This is true to some extent, but without further clarification, it’s a useless concept. Suppose a Martian lands on Earth and, needing some ground transportation, decides to steal a car. Before doing so he carefully examines the behavior of people and their cars. Turn the wheel to steer. Press the pedals to speed up and slow down. Extend middle finger as appropriate. Periodically add clear and brown liquids. He thinks he’s got it down so he steals a car and speeds off down the road. Things are going great: the wind in his hair, Tom Petty on the radio, not a care in the world when the car putters to a stop. “Aha!” he observes shrewdly, “it’s time for the clear liquid.” Spotting a lake nearby he siphons a full tank’s worth into the car and gears up to speed off again.

Putting “features” into your application is like putting “liquid” into your car. It’s absolutely essential, but picking the wrong kind will prove disastrous.

Instead of asking which features should be added, consider asking which should be taken away. There should be a “feature brainstorm” for the high level requirements. These are the “what your product does” features. Then you trim away everything you can from even those features, say no to absolutely everything else, and ship. Apple took over the portable mp3 player market by producing a device with markedly fewer features than the competion. What does my iPod do? It plays songs and syncs with iTunes. Those are the high level features and everything else is up for negotiation.

Brent’s advice, while useful for customers who want to sweet-talk their way into a personalized fix or feature, also serves as a list of warning signs for developers. When these schemes show up in your inbox, respond cordially but do not be tempted to add useless features. It’s you who will pay for it eventually.

Consumers love easy products! And easy products are, it should come as no surprise, easy to program and support. Fewer features + more sales = retirement. Then you can work on hard stuff if you really want to.

The Mental Tie-Breaker

A lot of the time when I’m stuck or unmotivated it’s not because of a particularly hard problem, it’s because I’ve reduced a hard problem to two equally appealing series of easy steps, but I can’t decide which to choose. The classic dilemma, which path to follow? Sadly, in computer programming the path less traveled is liable to lead to disaster. Except for rare, innovative departures from the norm, succeeding in software is about taking the road most traveled. Design patterns are one example of a method aimed at helping you do this, but they only work if you recognize the synopsis of the pattern in your problem.

When I’m stuck and don’t know how to design some piece of my application, I take comfort in “mental tie-breakers.” The problem of indecision often stems from an underlying statistical tie. Basically, you can see the good and bad in both of your choices, and are worried that there’s more bad in one than you can currently observe. The mental tie-breaker can help you tip the scales in one direction or the other, usually with the weight of some valuable truism that you respect implicitly.

To be really effective, I think you have to develop your own mental tie-breakers. These are personal. They work because they represent your values, and you’ve been stunned to see their value proven in real life. Here are two examples of mine, which can be phrased in the context of that magical “easiness”:

Would a scripter have an easy time writing to this model?

This question often reveals the inherent flaws in your MVC design. If your scripter can’t easily identify the items in your model, then they’re probably being modeled in the wrong way. This trick is amazing because it often reveals surprising flaws like “I can’t believe I stuck all that model behavior in the view.” If you identify design flaws using this tie-breaker, you will have an insanely easy time adding scriptability to your app, and you will be in excellent position to take advantage of the many benefits a separated MVC hierarchy brings.

Which of these approaches yields an easier API?

By thinking of your code as “API code” even if it’s only ever going to be used by your application, you will probably choose better and more robust designs. This question or a variant on it is also useful when iterating over your task list. When deciding how to approach a “hard” problem on your list, it can be helpful to ask “What kind of API would make this problem easy?” Once you answer the question, you no longer have a problem, you have an API (a separate project) to write.

Wrapping Up

I’m sure this is the tip of the iceberg with easy programming. If you’re of a similar mind and have other tips for making our job the laziest, happiest job on earth, please share them in the comments below.

Update (and incidentally, appropriate to wrapping up): I should have known that I couldn’t mention the miracle shoelace method without at least trying to explain how it works. Well, I really don’t look forward to trying to draw it or even explain it, but fortunately there are sites out there that talk about this kind of stuff, and I was lucky enough to find the knot. This site contains a catalog of shoelacing knots. The one I’m referring to is called the better bow on the site, but will always for me be remembered as the Ira Ruben Miracle Knot, in honor of the person who showed it to me.

The knot diagrams make it look really hard, but it’s easy if you do a “standard knot” already. If your current technique involves making a bow and wrapping the other lace around before “tucking through” to make the second bow, then that’s the “standard knot.” All you have to do for the Ira Ruben Miracle Knot is wrap around twice before tucking. You probably already use your thumb or another finger as the placeholder for the tucked bow. Just wrap around it twice instead of once. It produces a sort of double-cinch that keeps the knot tied all day (or forever). If you know me or if you ever meet me, be sure to make me show you in person the next time we meet. In honor of Ira Ruben I will be happy to pass this life-changing trick on to anybody who asks.

A side-effect of using this knot is that you end up with just about the tidiest looking knots possible. At least, in my humble opinion :)

MBP: I Need a Hero

April 20th, 2006

This post is part of the MacBook Pro Complaints series. Instead of (or in addition to) linking directly to this post, consider linking to the series link, which includes a summary of all findings to date and direct links to the pertinent downloads that users may find useful. Thanks for reading!

The good news is my MacBook Pro is coming back to me. It left Texas at around 6:00AM this morning. The bad news is I don’t know whether it’s fixed or not. In any case, I’ll be happy to move on to the next phase of this process. If it’s still busted, then I’ll be pushing for a refund or (if they want to gamble on it) a replacement. While it’s not very encouraging that new owners of MacBook Pros are still reporting the CPU whine, I have heard that it is at least quieter on some than on others. Perhaps quieter would be marginally acceptable to me. Otherwise, I’ll wait and hope that the MacBook or a later Pro edition is more suitable for “quiet work.”

John Siracusa over at FatBits wrote a great article a month or so ago, validating the the noise complaints people are having with Apple’s recent products. Today he passes along information from one of his astute readers about a job opening at Apple for an analog engineer. The job listing was posted in February, mere months after the final designs on the MacBook Pro must have been completed. The job listing includes specific language about DC converters and power supply design for desktop and mobile computers. These are the apparent culprits in the “CPU whine” category of annoying noises.

I can’t help but read into this job listing. Does it mean that Apple had a person filling this role who didn’t cut the mustard? Or are there several engineers in this capacity all working together to come up with solutions? Did they just realize in February, after all the Apple executives started toting around MacBook Pros, that the problem was as bad as it is?

Here is the history of the last several thousand dollars I have given money, along with a brief description of the quality of the product:

  1. iPod 40GB – $300. My girlfriend’s iPod. Works perfectly. Changed her life.
  2. PowerMac G5 – $2500. Big, pretty, fast, reliable. Makes a high pitched chirping noise that will drive me out of my effing mind if I don’t run a script to “disable CPU napping.” Sticks in my craw as the “top of the line Mac that will forever require an annoying hardware workaround.”
  3. iPod Nano – $250. Small, beautiful, doesn’t even scratch too much in my pocket. My only complaint is that I can’t unplug the dock cable while the headphones are plugged in. I use it to listen to Podcasts every day. Changed my life.

  4. ADC Membership – 2 Years. $1000. Reliable access to pre-release software. Hardware discount on price of defective MacBook Pro. Responsive tech support representatives. All in all a good deal – especially if you’re buying hardware.
  5. MacBook Pro – $2000. Sleek, fast, beautiful. Innovative design. Brilliant Intel-native software blazes and rocks my world. Noisier than any computer I’ve used since my dad’s Kaypro IV.

Seems the more money I give Apple, the less satisfied I am. The two most expensive products listed above are the two that have caused me the most grief. Shouldn’t Apple be making customers of its $2500 products as giddy as customers of its $200 ones? Perhaps my determination to not rest with this defective MacBook Pro is the result of Apple “using up its pass” with me on the G5. It’s been a long time since I owned a Mac that didn’t have an irritating aural defect. It surprises the hell out of me that a company with a self-proclaimed audiophile and perfectionist as a leader could allow these products to continue eroding Apple’s reputation for highest quality.

Have you ever stood at the top of a large cliff, or peered over the edge of a bridge, and curiously wondered what it would feel like to jump? Not suicidal – just indulgent curiosity. It’s the kind of thinking that makes you take a step back and double-check your grip on reality. I do know that I would never do that, right? Lately my thinking about the Mac has led me to such frightening thought experiments as “what if I lose confidence in Macs and abandon them? Can I get used to Windows?” This isn’t likely to happen. I’m so incredibly dependent on the Mac OS X software and the Apple development APIs, that I would essentially be giving up computing if I abandoned Macs. I don’t want to use any other computer.

I don’t want to use any other computer, yet I’ve indulged in the curiosity of whether I would. Apple is pushing me to that point. I’m not jumping ship yet, but I need a hero. I need an analog system designer of utmost skill and confidence – somebody who can save Apple’s computer business. If I end up buying a third top-of-the-line computer with a completely ridiculous noise defect, it might be the last $2000+ Apple ever gets from me. And that would be sad. Where would I dock my iPod?

MBP: Stop the Cow, MacBook Pro

April 18th, 2006

This post is part of my MacBook Pro Complaints series. Instead of (or in addition to) linking directly to this post, consider linking to the series link, which includes a summary of all findings to date and direct links to the pertinent downloads that users may find useful. Thanks for reading!

My MacBook Pro is still in Texas. But apparently they spent all day today “repairing it.” This sounds slightly better than the situation a friend is in, whose MacBook Pro went in for roughly the same problem, but is now on indefinite pause as he waits for a “part on order.” I can’t help but wonder what is so different about mine and his that we require different solutions. The only thing different about mine, that I can tell, is I complained about a whole lot more. Maybe they’re still reading through the list …

In my last post, I shared some rather silly statistics about Google and how many hits one receives for certain silly queries. I noticed over the past day or so that Google is sort of clogging my “referrals” list. I don’t know if this is because more people are searching on terms that I happen to match, or if my PageRank just went up. I think the PageRank for the blog itself might have just gone from 5 to 6. That’s cool. And I haven’t looked at the “search referrals” in my logs for a long time, but the recent influx caused me to do some examining.

It’s fascinating to pore over the list of search terms that people type in to ultimately reach your blog or site. I don’t think most users know that the exact phrase they enter gets transmitted in this way to the target site that is ultimately clicked-through to. It’s worth considering. If you’re interviewing for a job with Bob Jones, you might not want to type “How do I eff with Bob Jones in my interview tomorrow?” into Google the night before the interview, and then click-through to his personal blog. Just a little word to the wise.

Sometimes I worry that my obsession with the MacBook Pro noise flaws is unnatural. You know, maybe I just got fixated on it and now I’m this cranky geek who can’t ignore it. Kind of like after my dad pointed out the Sony Trinitron lines (defects!) in our computer monitor when I was a kid. Damn it! I never did much like Trinitrons after that. But it’s kind of reassuring (and saddening, at the same time) to browse through my search referrals and see just how frequent people are desperately typing MacBook Pro related queries into search engines. As I looked through my logs, I tried to think of how I could best convey the magnitude of queries that exist, and how clearly frustrated and at a loss the public is to find an answer to these problems. There’s no way I could do it, so I decided the best thing to do would be to just show you exactly what it looks like.

Here are my last 500 search referrals. Now, I know a lot of them have absolutely nothing to do with MacBook Pro or noises associated with them. But a lot of them do. people are spending their quality time searching on this. This is not what people like to Google. They’d rather look up themselves, their friends, porn, or world of warcraft tips. Instead they’re looking up MacBook Pro noises, hissing, humming, buzzing, etc. And keep in mind that these results span a relatively short period of time (less than 48 hours), and only consist of clicks that actually made it through to my little site. Multiply this over every day (and probably different users every day), and you start to understand how disappointing, how personally infuriating these defects are to those of us who expect the highest quality product from Apple.

My favorite quote? “Stop the cow macbook pro.” I couldn’t agree more.

060418 20:46:04 macbook pro noise problem
/107/macbook-pro-noise-update
Google
060418 20:42:28 macbook pro noise
/macbook-pro-noise-complaints/
Google
060418 20:39:31 quietmbp
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060418 20:37:01 firewire noise whine sound
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 20:35:44 NSNotification observer
/66/helping-myself-and-others
Google
060418 20:35:12 macbook whine isight
/macbook-pro-noise-complaints/
Google
060418 20:34:56 macbook pro whine
/macbook-pro-noise-complaints/
Google
060418 20:27:44 High-Pitched Sound MacBook Pro
/107/macbook-pro-noise-update
Google
060418 20:23:39 macbook pro humming
/macbook-pro-noise-complaints/
Google
060418 20:18:31 QuietMBP
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060418 20:18:20 macbook battery life
/111/macbook-pro-noise-battery-life-tests
Google
060418 20:14:29 itunes movie chapters
/84/fake-video-with-itunes-chapter-markers
Google
060418 20:12:19 macbook noise
/macbook-pro-noise-complaints/
Google
060418 20:11:20 macbook pro noise
/macbook-pro-noise-complaints/
Google
060418 20:08:03 cooling fan in iBook will not turn off
/107/macbook-pro-noise-update
Google
060418 20:03:40 automatic subversion version number build number
/23/automatic-build-sub-versioning-in-xcode
Google
060418 19:59:53 macbook pro noise
/107/macbook-pro-noise-update
Google
060418 19:58:10 macbook pro moo
/107/macbook-pro-noise-update
Google
060418 19:50:33 export netflix queue
/99/netnewsflix
Google
060418 19:47:40 macbook 108
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 19:42:11 ADC Documentation Bomb
/104/adc-documentation-bomb
Google
060418 19:40:29 macbook whine
/113/macbook-pro-the-whining-user
Google
060418 19:31:29 Macbook pro noise
/macbook-pro-noise-complaints/
Google
060418 19:31:14 red sweater blog
/
Google
060418 19:20:21 mac book pro manual cd eject
/113/macbook-pro-the-whining-user
Google
060418 19:16:03 MACBOOk whining
/macbook-pro-noise-complaints/
Google
060418 19:15:43 stop the cow macbook pro
/107/macbook-pro-noise-update
Google
060418 19:14:52 nerd out
/17/nerd-out-with-gdb/feed/
Google
060418 19:14:26 AppleScript get current URL from Safari
/30/safari-link-sniffing
Google
060418 18:56:58 red sweater
/
Google
060418 18:54:48 photo booth – stunt software mac download
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 18:54:38 incremental backups useless
/60/backups-are-useless
Google
060418 18:54:01 setting network domain
/106/the-network-domain
Google
060418 18:53:29 mac screen brightness waste battery
/
Google
060418 18:52:34 when opening quicktime i get a question mark
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 18:50:12 macbook pro wake from sleep
/107/macbook-pro-noise-update
Google
060418 18:47:25 quiet mbp
/107/macbook-pro-noise-update
Yahoo
060418 18:42:54 Macbook Pro heat issue
/113/macbook-pro-the-whining-user
Google
060418 18:39:21 macpro noise
/117/macbook-pro-noise-customer-sensory-issues
Google
060418 18:38:04 macbook pro
/macbook-pro-noise-complaints/
Google
060418 18:35:46 macbook whine utility
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060418 18:30:19 loud cd drive MacBook Pro
/107/macbook-pro-noise-update
Google
060418 18:27:49 macbook noise issues
/macbook-pro-noise-complaints/
Google
060418 18:27:43 how to use magic noise killer
/108/macbook-pro-noise-i-believe-in-miracles/feed/
Google
060418 18:24:34 mirror widget hack
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 18:22:09 MagicNoiseKiller
/macbook-pro-noise-complaints/
Google
060418 18:21:42 magic noise killer
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 18:20:48 macbook problems buzzing fix mnk
/113/macbook-pro-the-whining-user
Google
060418 18:19:53 Mac Book pro whine
/113/macbook-pro-the-whining-user
Google
060418 18:17:26 xcode progress indicator example
/?p=85
Google
060418 18:17:09 macbook problems buzzing fix
/113/macbook-pro-the-whining-user
Google
060418 18:16:59 safari back
/21/safari-back-out-of-mistake/feed/
Google
060418 18:14:16 screen goes white when laptop gets hot
/113/macbook-pro-the-whining-user
Google
060418 18:11:21 hacking isight
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 18:06:57 magicnoisekiller
/macbook-pro-noise-complaints/
Google
060418 18:05:56 milliamp-hours calculator
/96/google-calculator/feed/
Google
060418 18:03:49 mosquito noise machine
/107/macbook-pro-noise-update
Google
060418 18:03:13 macbook pro heat problem fixed
/113/macbook-pro-the-whining-user
Google
060418 17:59:51 network domain setup
/106/the-network-domain
Google
060418 17:57:06 macbook pro widgets
/111/macbook-pro-noise-battery-life-tests
Google
060418 17:48:55 noise macbook pro
/macbook-pro-noise-complaints/
Google
060418 17:44:25 mbp processor noise
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 17:38:51 mac book pro noise
/107/macbook-pro-noise-update
MSN
060418 17:30:27 netinfo afp authentication
/106/the-network-domain
Google
060418 17:21:54 whine macbook pro
/macbook-pro-noise-complaints/
Google
060418 17:21:11 netinfo webdav vfstype
/106/the-network-domain
Google
060418 17:21:10 something red sweater
/
Google
060418 17:11:37 macbook pro disable cpu
/111/macbook-pro-noise-battery-life-tests
Google
060418 17:10:00 hack ichat video
/
Google
060418 17:08:58 Revision D Macbook pro
/113/macbook-pro-the-whining-user
Google
060418 17:08:16 macbook pro noises
/macbook-pro-noise-complaints/
Google
060418 17:01:00 macbook pro noise
/macbook-pro-noise-complaints/
Google
060418 16:58:16 macbook pro problems
/113/macbook-pro-the-whining-user
Google
060418 16:57:18 macbook pro power consumption
/macbook-pro-noise-complaints/
Google
060418 16:49:54 priority club
/118/remembering-apple-the-start-date
Google
060418 16:49:54 macbook xp mic fix
/107/macbook-pro-noise-update
Google
060418 16:45:50 what do black holes do except suck things in?
/87/documentation-sucks
Google
060418 16:42:01 finding lost bookmarks in safari
/78/grr-izon
Google
060418 16:35:53 macbook pro whine replace
/113/macbook-pro-the-whining-user
Google
060418 16:35:03 is my ipod fake?
/84/fake-video-with-itunes-chapter-markers
Google
060418 16:30:31 hidden NSWindow
/97/windows-of-perception
Google
060418 16:26:48 does the apple store replace macbook pro for processor hiss
/107/macbook-pro-noise-update
Google
060418 16:24:36 what fans are inside the macbook
/107/macbook-pro-noise-update
Google
060418 16:22:09 amazon macbook pro revision D
/107/macbook-pro-noise-update
Google
060418 16:21:34 MacBook buzzing noise
/107/macbook-pro-noise-update
Google
060418 16:16:34 subversion revision tags
/?p=23
Google
060418 16:16:03 sharing os x address book via webdav
/106/the-network-domain
Google
060418 16:14:20 macbook issues
/macbook-pro-noise-complaints/
Google
060418 16:13:36 WHAT IS A NETWORK DOMAIN
/106/the-network-domain
Google
060418 16:08:36 mirror widget
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 16:06:32 mbp noise
/107/macbook-pro-noise-update
Google
060418 16:05:29 macbook pro dock
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 15:58:10 macbook hiss
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060418 15:52:19 thinkpad faint noise problem high frequency
/107/macbook-pro-noise-update
Google
060418 15:50:50 solutions for macbook whine
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060418 15:50:04 regular expression finder
/26/rock-the-funky-finder-regex
Google
060418 15:43:15 System/Library/Extensions/IOPlatformPluginFamily.kext
/105/all-work-and-no-play-makes-a-quiet-macbook-pro/feed/
Google
060418 15:42:59 macbook pro whining
/macbook-pro-noise-complaints/
Google
060418 15:39:39 update itunes library on shared network library
/106/the-network-domain
Google
060418 15:38:29 macbook pro buzzing
/107/macbook-pro-noise-update
Google
060418 15:31:43 macbook lcd noise
/113/macbook-pro-the-whining-user
Google
060418 15:31:34 macbook pro blog
/107/macbook-pro-noise-update
Google
060418 15:27:34 macbook inverter buzz
/111/macbook-pro-noise-battery-life-tests
Google
060418 15:27:01 macbook pro trackpad problem
/113/macbook-pro-the-whining-user
Google
060418 15:25:17 QuietMBP
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060418 15:23:55 create a favorites section
/63/add-a-favorites-section-to-xcode-file-templates
Google
060418 15:12:19 skype cocoa mac
/80/an-skype-like-app-with-open-source-roots
Google
060418 15:12:07 xcode trap exceptions
/67/xcode-search-gone-mad
Google
060418 15:11:59 mac book pro becomes hot
/113/macbook-pro-the-whining-user
Google
060418 15:09:44 new shell process completed help
/48/victory-over-process-completed
Google
060418 15:09:26 Network Mount Mac OS X
/106/the-network-domain
Google
060418 15:06:22 tomshardware macbook pro
/105/all-work-and-no-play-makes-a-quiet-macbook-pro/feed/
Google
060418 15:03:39 Built-in iSight Camera macbook pro
/macbook-pro-noise-complaints/
Google
060418 15:00:21 macbook pro 3 partitions
/111/macbook-pro-noise-battery-life-tests
Google
060418 14:53:52 BuzzKiller MagicNoiseKiller
/111/macbook-pro-noise-battery-life-tests/feed/
Google
060418 14:47:16 paul tiger
/106/the-network-domain/feed/
Google
060418 14:44:25 MacBook Pro Hard Drive Noise
/113/macbook-pro-the-whining-user
Google
060418 14:42:58 trac subversion cvs
/22/the-bumpy-road-to-subversion
Google
060418 14:42:37 macbook pro whine
/macbook-pro-noise-complaints/
Google
060418 14:40:01 MacBook Pro Firmware update
/107/macbook-pro-noise-update
Google
060418 14:33:28 Whine MBP
/113/macbook-pro-the-whining-user
Google
060418 14:32:08 create domain name for local network in os x
/106/the-network-domain
Google
060418 14:31:15 mac book pro noise speakers
/113/macbook-pro-the-whining-user
Google
060418 14:30:02 mac book pro whining
/113/macbook-pro-the-whining-user
Google
060418 14:25:24 macbook pro heat hardware version
/113/macbook-pro-the-whining-user
Google
060418 14:19:59 mac book pro 8613
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 14:17:46 os x network library alias
/106/the-network-domain
Google
060418 14:17:08 macbook pro whine widget
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 14:06:27 hot macbook pro
/113/macbook-pro-the-whining-user
Google
060418 13:54:55 macbook pro rev.e
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 13:53:12 program for macbook pro
/107/macbook-pro-noise-update
Google
060418 13:51:01 macbook 8612
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 13:49:33 macbook download
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 13:43:43 macbook pro hard drive noise
/113/macbook-pro-the-whining-user
Google
060418 13:43:16 macbook pro updates
/107/macbook-pro-noise-update
Google
060418 13:42:40 windows network mac the alias could not be opened
/106/the-network-domain/feed/
Google
060418 13:40:31 macbook pro isight driver
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 13:39:22 macbook intel hard disk keeps running energy saving
/111/macbook-pro-noise-battery-life-tests
Google
060418 13:33:04 macbook pro not responding to battery
/macbook-pro-noise-complaints/
Google
060418 13:30:59 magic noise mac
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 13:30:19 macbook whine isight
/macbook-pro-noise-complaints/
Google
060418 13:29:00 MagicNoiseKiller download
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 13:25:12 MagNoiseKiller
/comments/feed/
Google
060418 13:20:33 mac book pro noise problem
/113/macbook-pro-the-whining-user
Google
060418 13:11:44 my screen saver keeps coming back during login
/111/macbook-pro-noise-battery-life-tests
Google
060418 13:10:49 macbook pro noise battery power
/111/macbook-pro-noise-battery-life-tests
Google
060418 13:08:10 xcode run log has no output
/81/really-simple-consolation
Google
060418 13:02:01 macbook tomshardware
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060418 12:58:14 qt_export
/84/fake-video-with-itunes-chapter-markers/feed/
Google
060418 12:58:03 macbook pro whine fixed
/107/macbook-pro-noise-update
Google
060418 12:51:54 xcode run.log broken
/page/3/
Google
060418 12:49:10 xcode dynamic libraries
/56/xcode-22-quickies
Google
060418 12:47:51 macbook pro cpu noise
/107/macbook-pro-noise-update
Google
060418 12:43:23 xcode no log bug
/67/xcode-search-gone-mad
Google
060418 12:41:10 info.plist keys
/32/destroy-xcode-tedium
Google
060418 12:41:05 macbook pro help
/macbook-pro-noise-complaints/
Google
060418 12:35:19 how to get rid of macbook pro whine
/107/macbook-pro-noise-update
Google
060418 12:28:45 Express Card Slot
/88/intel-impatience/feed/
Google
060418 12:15:15 apple notebook just make a crashing noise
/107/macbook-pro-noise-update
Google
060418 12:09:41 DOES A Petabyte HARD DRIVE EXIST
/60/backups-are-useless
Google
060418 12:07:59 subversion installation
/22/the-bumpy-road-to-subversion/feed/
Google
060418 11:51:22 whining sound macbook pro
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 11:51:07 setting up webdav os x server 10.4
/106/the-network-domain
Google
060418 11:44:01 computadoras dell
/?p=69
Yahoo
060418 11:37:12 macbook pro high pitch noise
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 11:34:17 macbook pro noise miracles widget
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 11:29:43 turning off processor for Macbook pro
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 11:26:01 loud noises coming from the macbook pro
/107/macbook-pro-noise-update
Google
060418 11:25:37 MacBook Pro noise
/macbook-pro-noise-complaints/
Google
060418 11:24:32 macbook laser
/macbook-pro-noise-complaints/
Google
060418 11:21:16 macbook pro whining isight firmware
/107/macbook-pro-noise-update
Google
060418 11:15:00 setting up os x server domain
/106/the-network-domain
Google
060418 11:14:56 applescript droplet
/31/self-opening-applescript-droplets
Google
060418 11:14:24 hacking aac files
/84/fake-video-with-itunes-chapter-markers
Google
060418 11:13:26 blog intel
/category/technology/intel/
Google
060418 11:10:25 macbook pro built-in isight drivers
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 11:08:39 macbook repair whine
/113/macbook-pro-the-whining-user
Google
060418 11:07:10 macbook hard drive noise
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 11:06:41 whining macbook pro
/macbook-pro-noise-complaints/
Google
060418 11:06:33 macbook Speaker Defective
/117/macbook-pro-noise-customer-sensory-issues
Google
060418 11:06:01 macbook whinning
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 11:05:10 macbook fan
/macbook-pro-noise-complaints/
Google
060418 11:01:57 macbook mooing
/107/macbook-pro-noise-update
Google
060418 11:01:10 quietMBP download
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060418 10:53:51 macbook cpu noise
/macbook-pro-noise-complaints/
Google
060418 10:53:29 what is a network domain
/106/the-network-domain
Google
060418 10:43:42 macbook pro rev.e sn
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 10:36:13 iemulator 1.7.9
/86/noooooooooo/feed/
Google
060418 10:34:18 whine macbook pro replacement
/107/macbook-pro-noise-update
Google
060418 10:31:04 I believe in miracles
/108/macbook-pro-noise-i-believe-in-miracles
MSN
060418 10:25:14 how to turn off core in macbook
/107/macbook-pro-noise-update/feed/
Google
060418 10:04:28 macbook pro issue
/107/macbook-pro-noise-update
Google
060418 10:01:23 fw800 Express Card
/88/intel-impatience/feed/
Google
060418 09:59:33 UNIX – steps for setting up a network share
/106/the-network-domain
Google
060418 09:50:14 magic widget
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 09:47:07 Magicnoisekiller
/macbook-pro-noise-complaints/
Google
060418 09:43:54 mac magicnoisekiller
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 09:40:33 macbook pro noise cow
/107/macbook-pro-noise-update
Google
060418 09:34:58 watching video in Linux
/84/fake-video-with-itunes-chapter-markers
Google
060418 09:30:49 macbook pro noise
/107/macbook-pro-noise-update
Google
060418 09:29:46 sudo mv /System/Library/Extensions/IOPlatformPluginFamily.kext /backup
/105/all-work-and-no-play-makes-a-quiet-macbook-pro/feed/
Google
060418 09:26:59 cpu noise macbook
/macbook-pro-noise-complaints/
Google
060418 09:25:20 mirror widget quiet mbp
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 09:11:20 blog wordpress mac
/91/wordpress-20
Google
060418 09:10:33 macbook pro disable a core
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 09:10:01 macbook pro whine play
/macbook-pro-noise-complaints/
Google
060418 09:08:15 ichat status screen saver chud
/feed/
Google
060418 09:05:23 ichat screen saver chud
/
Google
060418 09:00:34 mac book pro defects
/113/macbook-pro-the-whining-user
Google
060418 08:55:51 fix MacBook Pro
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 08:55:05 daniel jalkut
/
Google
060418 08:53:22 silica gel what to do swallow
/95/a-word-of-caution
Google
060418 08:42:22 why syslog showing up in console shell
/?p=81
Google
060418 08:41:08 what is that buzzing macbook pro
/macbook-pro-noise-complaints/
Google
060418 08:39:19 red sweater macbook pro
/macbook-pro-noise-complaints/
Google
060418 08:18:02 mac book pro whine noise
/107/macbook-pro-noise-update
Google
060418 08:17:57 macbook pro battery time
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 08:13:56 macbook pro buzzing noise
/macbook-pro-noise-complaints/
Google
060418 08:09:23 macbook pro battery tests
/111/macbook-pro-noise-battery-life-tests
Google
060418 07:59:02 useful problems macbook pro reinstall
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 07:54:55 mac book pro whining problem
/113/macbook-pro-the-whining-user
Google
060418 07:51:43 netflix rss feed blog
/99/netnewsflix
Google
060418 07:51:38 macbook pro hissing workaround
/107/macbook-pro-noise-update
Google
060418 07:42:45 setting up macbook pro for audio
/107/macbook-pro-noise-update
Google
060418 07:36:53 macbook noise issue
/macbook-pro-noise-complaints/
Google
060418 07:32:00 setting up a network apple
/106/the-network-domain
Google
060418 07:30:05 macbook pro fixed issues
/113/macbook-pro-the-whining-user
Google
060418 07:24:02 macbook screen goes black
/113/macbook-pro-the-whining-user
Google
060418 07:21:03 set domain on os x
/106/the-network-domain
Google
060418 07:16:01 1145367555
/macbook-pro-noise-complaints/
Google
060418 07:06:29 anybody bought macbook pro?
/107/macbook-pro-noise-update
Google
060418 06:56:51 macbook update
/107/macbook-pro-noise-update
Google
060418 06:55:20 macbook pro whine
/macbook-pro-noise-complaints/
Google
060418 06:54:18 Info.plist system variables
/23/automatic-build-sub-versioning-in-xcode/feed/
Google
060418 06:52:19 domain macosx share
/106/the-network-domain
Google
060418 06:50:46 macbook xp power management
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060418 06:46:56 MacBook Pro heat problem
/113/macbook-pro-the-whining-user
Google
060418 06:37:09 macbook pro magic
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 06:28:56 iPhoto the volume cannot be found
/106/the-network-domain/feed/
Google
060418 06:24:33 nidump domain
/106/the-network-domain
Google
060418 06:21:21 Issues and various point of hacking
/macbook-pro-noise-complaints/
Google
060418 06:04:02 macbook pro humming on battery power
/macbook-pro-noise-complaints/
Google
060418 05:56:42 noisy screen macbook pro
/107/macbook-pro-noise-update
Google
060418 05:42:10 macbook pro inverter noise
/macbook-pro-noise-complaints/
Google
060418 05:32:46 Faults with macbook pro
/113/macbook-pro-the-whining-user
Google
060418 05:21:49 macbook bootcamp sound driver
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 05:16:12 http://www.red-sweater.com/blog/108/macbook-pro-noise-i-believe-in-miracles
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 05:13:17 mac book pro electric noise
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 05:06:49 A comment on Gulliver s Travels
/92/easy-endian-ness
Google
060418 05:06:16 revision d problems macbook pro
/macbook-pro-noise-complaints/
Google
060418 04:51:24 macbook pro electrical noise
/113/macbook-pro-the-whining-user
Google
060418 04:46:32 how to fix whinning sound macbook pro
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 04:40:08 magic noise
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 04:29:09 chud tools cpu whine
/107/macbook-pro-noise-update
Google
060418 04:25:37 quiet macbook
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060418 04:21:37 XRAID PC COMPATIBILITY
/69/adis-a-las-computadoras-dell
Google
060418 04:14:56 macbook cpu clock utility
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060418 04:04:34 macbook pro faults
/107/macbook-pro-noise-update/feed/
Google
060418 03:59:07 electric shock macbook pro
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 03:58:55 buzzing macbook
/107/macbook-pro-noise-update
Google
060418 03:51:17 osx library directory iphoto
/106/the-network-domain
Google
060418 03:50:14 macbook noise heat
/113/macbook-pro-the-whining-user
Google
060418 03:48:39 mac os network disappears
/106/the-network-domain
Google
060418 03:44:47 Additionally a 302 Found error was encountered while trying to use an ErrorDocument to handle the request.
/50/be-a-web-browser-for-halloween
Google
060418 03:25:31 macbook pro isight on xp driver download
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 02:56:46 macbook power management
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060418 02:43:03 milliseconds to seconds calculator
/96/google-calculator
Google
060418 02:39:44 macbook pro update
/107/macbook-pro-noise-update
Google
060418 02:31:31 macbook pro sounds
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 02:29:00 redsweater blog
/91/wordpress-20
Google
060418 02:22:04 inside open macbook pro
/107/macbook-pro-noise-update
Google
060418 02:12:26 mbp display noise
/107/macbook-pro-noise-update
Google
060418 02:03:05 macbook pro noise blog
/macbook-pro-noise-complaints/
Google
060418 01:58:22 Mac Book Pro revisions
/113/macbook-pro-the-whining-user
Google
060418 01:52:57 live preview visitor keystrokes blog
/52/fixing-keychain-look-ma-no-code
Google
060418 01:52:17 macbook pro battery issue after firmware update
/111/macbook-pro-noise-battery-life-tests
Google
060418 01:44:31 macbook pro whine fix
/107/macbook-pro-noise-update
Google
060418 01:43:52 consolation messages
/?p=81
Google
060418 01:36:43 magic noise killer download
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 01:33:15 macbook pro cpu whine
/macbook-pro-noise-complaints/
Google
060418 01:12:43 macbook pro hissing noise problem
/108/macbook-pro-noise-i-believe-in-miracles
Google
060418 01:09:05 regulating fan macbook
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060418 01:03:58 http://www.red-sweater.com/blog/macbook-pro-noise-complaints/
/macbook-pro-noise-complaints/
Google
060418 00:57:41 red sweater b log
/
Google
060418 00:50:31 how to buy Gesture keyboard
/61/a-mighty-mistake/feed/
Google
060418 00:49:10 intel mac cpu noise
/
Google
060418 00:45:58 applescript attribute run
/46/blogging-with-style
Google
060418 00:23:42 quietMBP
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060418 00:14:49 mac widget lego error
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 23:58:08 xcode svn build directory
/23/automatic-build-sub-versioning-in-xcode
Google
060417 23:46:52 macbook pro whine issues
/macbook-pro-noise-complaints/
Google
060417 23:41:08 macbook pro trackpad scroll tilt
/113/macbook-pro-the-whining-user
Google
060417 23:40:10 macbook whine killing program
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 23:08:51 magicnoisekiller 10.4.6
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 23:07:53 perl regex error quantifier followed by nothing in regex
/26/rock-the-funky-finder-regex
Google
060417 23:06:42 MacBook Pro sound problem fixes
/107/macbook-pro-noise-update
Google
060417 23:02:52 macbook pro cooling upgrade
/107/macbook-pro-noise-update
Google
060417 22:52:25 adding an accidentally deleted podcast itunes
/62/a-home-for-wayward-podcasts
Google
060417 22:38:09 weird noises macbookpro
/111/macbook-pro-noise-battery-life-tests
Google
060417 22:29:09 adding an AppleScript to an Xcode project
/32/destroy-xcode-tedium
Google
060417 22:13:50 xcode subversion
/22/the-bumpy-road-to-subversion
Google
060417 21:52:21 macbook moo
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060417 21:40:41 creating a subversion repo
/22/the-bumpy-road-to-subversion
Google
060417 21:33:20 quiet macbook pro
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060417 21:21:58 my macbook pro makes a weird noise
/107/macbook-pro-noise-update
Google
060417 21:21:55 mac book pro cpu noise fix
/107/macbook-pro-noise-update
Google
060417 21:21:46 How many hours does the macbook pro battery last
/111/macbook-pro-noise-battery-life-tests
Google
060417 21:19:17 mac book pro cpu noise
/113/macbook-pro-the-whining-user
Google
060417 21:17:35 heat macbook fix
/113/macbook-pro-the-whining-user
Google
060417 21:10:06 macbook pro processor whine
/113/macbook-pro-the-whining-user
Google
060417 20:49:35 mugshot flickr
/83/magical-code
Google
060417 20:42:56 mac book pro\noise
/113/macbook-pro-the-whining-user
Google
060417 20:24:08 how to setup mac server 10.4 to publish ical
/106/the-network-domain
Google
060417 20:14:57 mac book pro high frequency fix
/107/macbook-pro-noise-update
Google
060417 20:07:21 MAC BOOK PRO GETTING VERY HOT
/113/macbook-pro-the-whining-user
Google
060417 20:03:17 seagate hard drive squeaking
http://red-sweater.com/blog/index.php
Google
060417 19:58:32 ibook bright spots
/113/macbook-pro-the-whining-user
Google
060417 19:56:51 macbook pro whine sample
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 19:47:35 maCBOOK NOISE
/macbook-pro-noise-complaints/
Google
060417 19:41:11 open dashboard widget
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 19:00:54 macbook pro whine photo booth
/111/macbook-pro-noise-battery-life-tests
Google
060417 18:55:51 macbook noise red
/macbook-pro-noise-complaints/
Google
060417 18:51:31 daniel jalkut radar
/51/keychain-inaccessibility
Google
060417 18:46:07 macbook pro dock -ipod
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 18:43:50 macbook temperature
/macbook-pro-noise-complaints/
Google
060417 18:42:51 macbook pro screen complaints
/113/macbook-pro-the-whining-user
Google
060417 18:41:15 tilt macbook pro
/113/macbook-pro-the-whining-user
Google
060417 18:39:36 macbook pro processor heat
/113/macbook-pro-the-whining-user
Google
060417 18:37:09 install magic noise killer
/108/macbook-pro-noise-i-believe-in-miracles/feed/
Google
060417 18:33:47 powerbook pro command line
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060417 18:18:54 mirror widget bad for isight
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 18:10:41 replacing hard drive in macbook pro
/113/macbook-pro-the-whining-user
Google
060417 18:08:41 interface builder autosizing
/35/lazy-parent-views
Google
060417 17:42:18 macbook pro cpu tool
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Yahoo
060417 17:32:09 macbook pro trackpad problems
/113/macbook-pro-the-whining-user
Google
060417 17:31:10 macbook pro complaints
/macbook-pro-noise-complaints/
Google
060417 17:29:27 why mirror widget audio
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 17:26:57 macbook pro fan noise
/107/macbook-pro-noise-update
Google
060417 17:23:53 apple mighty mouse defect
/61/a-mighty-mistake
Google
060417 17:18:56 macbook inverter
/107/macbook-pro-noise-update
Google
060417 17:15:04 leave in macbook pro case
/macbook-pro-noise-complaints/
Google
060417 17:14:55 gdb macro
/?p=17
Google
060417 17:13:42 macbook pro heat issues
/113/macbook-pro-the-whining-user
Google
060417 17:11:25 dim noise macbookpro
/113/macbook-pro-the-whining-user
Google
060417 17:07:43 exporting netflix queue
/99/netnewsflix
Google
060417 17:03:31 macbook pro noise fix
/107/macbook-pro-noise-update
Google
060417 17:01:57 macbook pro processor noise fix
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 17:01:14 turn off green led on isight macbook
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060417 16:51:13 are desiccant packs dangerous
/95/a-word-of-caution
MSN
060417 16:50:49 macbook pro hiss
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060417 16:30:43 macbook pro whining noise
/macbook-pro-noise-complaints/
Google
060417 16:22:15 noise issues with macbook pro
/macbook-pro-noise-complaints/
Google
060417 16:18:24 whining macbook pro fix
/107/macbook-pro-noise-update
Google
060417 16:15:52 macbook heat
/113/macbook-pro-the-whining-user
Google
060417 16:11:29 quiet MBP
/107/macbook-pro-noise-update
Google
060417 16:09:56 macbook noise mirror
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 16:07:39 build scripts in xcode
/23/automatic-build-sub-versioning-in-xcode
Google
060417 16:06:16 hard c4e
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060417 16:03:44 macbook left fan
/113/macbook-pro-the-whining-user
Google
060417 16:02:44 no menus fear
/97/windows-of-perception/feed/
Google
060417 16:01:54 curl emulate web browser cookie jar
/50/be-a-web-browser-for-halloween
Google
060417 15:57:57 macbook pro too hot
/113/macbook-pro-the-whining-user
Google
060417 15:54:41 domain OS X
/106/the-network-domain
Google
060417 15:52:42 macbook quicktime .mov no sound
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 15:48:31 macbookpro screensaver work windows xp boot camp
/111/macbook-pro-noise-battery-life-tests
Google
060417 15:44:15 macbook QUIET
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060417 15:21:08 macbook pro red sweater
/macbook-pro-noise-complaints/
Google
060417 14:39:54 macbook whine disable a core
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 14:39:18 curl cookiejar
/50/be-a-web-browser-for-halloween
Google
060417 14:38:47 cool macbook pro tricks
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060417 14:37:51 macbook pro MNK forum
/113/macbook-pro-the-whining-user
Google
060417 14:37:24 MacBook Pro hard drive noise
/113/macbook-pro-the-whining-user
Google
060417 14:19:19 macbook delete logon
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060417 14:15:33 interface builder size
/65/center-windows-in-interface-builder
Google
060417 14:14:44 managing podcasts itunes sucks
/62/a-home-for-wayward-podcasts
Google
060417 14:06:49 CPU Clock MacBook Pro
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060417 14:02:03 CPU Clock for Apple MacBook Pro
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060417 13:57:46 noisy macbook pro
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 13:56:53 macbook inverter noise
/107/macbook-pro-noise-update
Google
060417 13:55:41 Magic Noise Killer Macbook
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 13:35:08 programmer gone mad
/67/xcode-search-gone-mad/feed/
Google
060417 13:32:25 cryptonome noise
/107/macbook-pro-noise-update
Google
060417 13:32:24 macbook pro speaker problems
/113/macbook-pro-the-whining-user
Google
060417 13:29:15 apple quiet script
/105/all-work-and-no-play-makes-a-very-quiet-macbook-pro
Google
060417 13:23:44 Gesture Keyboard buy
/61/a-mighty-mistake/feed/
Google
060417 13:22:30 NSTimer
/64/throttling-nsslider/feed/
Google
060417 13:17:39 MacBook Pro Noise
/107/macbook-pro-noise-update
Google
060417 13:15:51 upgrade MacBook Pro
/107/macbook-pro-noise-update
Google
060417 12:59:25 setting up address network directory
/106/the-network-domain
Google
060417 12:53:31 computer just quit power supply makes clicking noise
/
Google
060417 12:42:37 MagicNoiseKiller
/macbook-pro-noise-complaints/
Google
060417 12:41:55 cpu whine
/macbook-pro-noise-complaints/
Google
060417 12:35:51 macbook pro mike minard
/feed/
Google
060417 12:32:33 macbook pro fix
/107/macbook-pro-noise-update
Google
060417 12:30:33 photo booth on a powermac
/page/2/
Google
060417 12:27:17 apple employment blog
/55/apple-employee-silenced-by-self
Google
060417 12:22:23 macbook pro noise remover
/macbook-pro-noise-complaints/
Google
060417 12:22:15 millisecond to microseconds calculator
/96/google-calculator
Google
060417 12:16:00 macbook pro firmware upgrade
/107/macbook-pro-noise-update
Google
060417 12:14:44 lawsuit macbook pro
/113/macbook-pro-the-whining-user
Google
060417 12:14:17 how to setup a network with a domain
/106/the-network-domain
Google
060417 12:11:16 simulating mozilla openssl
/50/be-a-web-browser-for-halloween
Google
060417 12:10:31 setting up network itunes library
/106/the-network-domain
Google
060417 12:07:35 shark bites
/?p=41
MSN
060417 12:04:29 kids eating silica gel packages
/95/a-word-of-caution
Google
060417 12:02:04 subversion inserting id string in checked files
/23/automatic-build-sub-versioning-in-xcode
Google
060417 12:00:46 macbook noises
/107/macbook-pro-noise-update
Google
060417 12:00:23 dell power adapter hacks
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 11:57:20 mac book pro display dim corners
/113/macbook-pro-the-whining-user
Google
060417 11:50:41 red herring sweater
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 11:50:09 Apple Software Interview Questions
/55/apple-employee-silenced-by-self
Google
060417 11:48:14 Xcode Number of recently open projects
/32/destroy-xcode-tedium
Google
060417 11:44:41 macbook dashboard widget
/111/macbook-pro-noise-battery-life-tests
Google
060417 11:39:49 mav pro buzz
/111/macbook-pro-noise-battery-life-tests
Google
060417 11:35:49 macbook hot repair
/113/macbook-pro-the-whining-user
Google
060417 11:31:33 Magicnoisekiller download
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 11:21:27 problems with the Mac Pro laptop pad
/113/macbook-pro-the-whining-user
Google
060417 11:18:33 macbook pro inverter board location
/113/macbook-pro-the-whining-user
Google
060417 11:17:33 automount webdav os x
/106/the-network-domain
Google
060417 11:17:32 macbook pro battery life
/111/macbook-pro-noise-battery-life-tests
Google
060417 11:13:26 wordpress style tag disappears in post
/94/live-preview-or-die
Google
060417 11:10:48 macbook pro heat lawsuit
/113/macbook-pro-the-whining-user
Google
060417 11:04:35 macbook pro hacks
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 10:59:54 high pitch noise macbook
/107/macbook-pro-noise-update
Google
060417 10:58:38 macbook pro noise revision D
/113/macbook-pro-the-whining-user
Google
060417 10:37:43 skype like programs
/80/an-skype-like-app-with-open-source-roots
Google
060417 10:30:44 dice widget dashboard
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 10:27:13 Macbook Pro random restarts
/113/macbook-pro-the-whining-user
Google
060417 10:26:51 os x network domain
/106/the-network-domain
Google
060417 10:16:11 mac book pro whining noise
/113/macbook-pro-the-whining-user
Google
060417 10:13:54 macbook pro makes buzzing sound
/107/macbook-pro-noise-update
Google
060417 10:13:17 xcode svn versioning
/23/automatic-build-sub-versioning-in-xcode
Google
060417 10:11:47 macbook pro buzzing sound
/107/macbook-pro-noise-update
Google
060417 10:01:14 upgrade macbook pro
/107/macbook-pro-noise-update
Google
060417 09:59:48 whining noise with macbook pro
/macbook-pro-noise-complaints/
Google
060417 09:57:00 mac OS X DOMAIN Settings
/106/the-network-domain
Google
060417 09:45:08 magicnoisekiller download
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 09:42:09 electric shock on mac book pro
/113/macbook-pro-the-whining-user
Google
060417 09:38:01 macbook pro microphone
/107/macbook-pro-noise-update
Google
060417 09:34:38 battery life check apple script
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060417 09:27:40 whine macbook pro
/macbook-pro-noise-complaints/
Google
060417 09:23:32 whining noise update
/107/macbook-pro-noise-update
Google
060417 09:23:23 Mirror widget whine
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 09:14:41 blogs about macbook pro
/macbook-pro-noise-complaints/
Google
060417 09:12:37 red sweater san francisco
/category/web/
Google
060417 09:03:23 MBP noise
/107/macbook-pro-noise-update
Google
060417 08:59:00 iphoto change network mount
/106/the-network-domain
Google
060417 08:45:47 netnewswire subscribe bookmarklet
/103/announcing-dinky-links
Google
060417 08:39:23 Mirror Widget
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 08:37:04 high pitched noise usb power management
/113/macbook-pro-the-whining-user
Google
060417 08:35:37 macbook pro hissing noise
/107/macbook-pro-noise-update
Google
060417 08:29:25 magic mac book pro whine
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 08:24:52 NOOOOOOOOOO
/86/noooooooooo
Google
060417 08:21:53 macbook-pro heat recall
/113/macbook-pro-the-whining-user
Google
060417 08:14:45 interface builder center window
/65/center-windows-in-interface-builder
Google
060417 08:11:56 Be True to Your Work – Short plays
/105/all-work-and-no-play-makes-a-very-quiet-macbook-pro
Google
060417 08:02:43 macbook moo charging
/107/macbook-pro-noise-update
Google
060417 08:02:32 sendAction cocoa
/64/throttling-nsslider
Yahoo
060417 08:01:14 download high pitched mosquito
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060417 07:56:22 macbook pro processor noise
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 07:54:49 macbook pro whine screen
/113/macbook-pro-the-whining-user
Google
060417 07:49:38 network domain
/106/the-network-domain
Google
060417 07:48:07 display noise macbook pro
/macbook-pro-noise-complaints/
Google
060417 07:31:53 qa
/index.php?s=qa
localhost
060417 07:29:11 mac app development hid usb api
/89/hideous-adventures-with-open-source
Google
060417 07:20:06 macbook battery whine
/macbook-pro-noise-complaints/
Google
060417 07:18:45 c1e activate
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060417 07:16:54 Software problems on macbook pro
/107/macbook-pro-noise-update
Google
060417 07:11:06 another term for an open bug fix no completed
/67/xcode-search-gone-mad
Google
060417 07:09:41 subversion unique build id
/23/automatic-build-sub-versioning-in-xcode
Google
060417 07:08:03 macbook pro temperature sensors
/107/macbook-pro-noise-update
Google
060417 07:03:34 rightmark macbook
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060417 07:03:26 computer stop working after running partition magic
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 07:00:32 macbook pro left fan
/113/macbook-pro-the-whining-user
Google
060417 06:57:24 red sweater mac
/
Google
060417 06:47:13 regex and shell scripts
/26/rock-the-funky-finder-regex
Google
060417 06:43:12 macbook pro high pitched noise
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 06:16:39 macbook pro noise killer
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 06:15:56 magicnoisekiller update
/macbook-pro-noise-complaints/
Google
060417 06:14:21 NSPanel not modal
/85/kagi-universal
Google
060417 06:06:36 USB bulk sample source
/89/hideous-adventures-with-open-source/feed/
Google
060417 06:00:10 switch red conection
/97/windows-of-perception
MSN
060417 05:54:26 macbook pro early adopters
/macbook-pro-noise-complaints/
Google
060417 05:51:48 macbook pro brightness
/107/macbook-pro-noise-update
Google
060417 05:46:31 g5 noise chud
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060417 05:27:30 macbook fan
/107/macbook-pro-noise-update
Google
060417 05:17:25 cocoa applescript category
/category/programming/applescript/
Google
060417 05:15:28 converting int to NSString in objective c
/98/string-theory
Google
060417 05:10:31 web text tcpdump
/50/be-a-web-browser-for-halloween
Google
060417 05:00:11 mac book pro noise killer
/113/macbook-pro-the-whining-user
Google
060417 04:57:34 macbook pro noise screen
/107/macbook-pro-noise-update
Google
060417 04:53:19 cpu clock c1e source code
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060417 04:45:50 IOPlatformPluginFamily
/105/all-work-and-no-play-makes-a-quiet-macbook-pro/feed/
Google
060417 04:20:22 powermac g5 fan control widget
/105/all-work-and-no-play-makes-a-quiet-macbook-pro
Google
060417 04:14:44 objective c converting int to NSString
/98/string-theory
Google
060417 04:01:12 leave mnemonic intel assembler
/70/assembler-instruction-reference
Google
060417 03:48:01 mbp quiet
/107/macbook-pro-noise-update
Google
060417 03:33:27 macbook pro models without noise
/108/macbook-pro-noise-i-believe-in-miracles
Google
060417 03:30:04 noise on the macbook pro
/107/macbook-pro-noise-update
Google
060417 03:21:12 electric shock mac book pro
/113/macbook-pro-the-whining-user
Google
060417 02:45:22 quietMPB for powerbook
/107/macbook-pro-noise-update
Google