Category Archives: Tech

“Late 2008” unibody MacBook Pro screen flicker problem

After Apple announced the unibody MacBook Pro about a year ago, I walked into the San Francisco Apple Store that night just to “check them out”, of course, I walked out with one. I’d owned a large number of Apple products and I kindda knew getting one of the first batch of a brand new design was probably not the best idea, but the unibody construction was just too cool to pass up at the time. Plus, Apple did the right thing in the past when our “dual-USB” iBook G3 failed.

The first batch of the “Late 2008” unibody MacBook Pros, and I think MacBooks as well, have a fairly common screen flicker problem. If you google “macbook pro screen flicker” you will find a ton of information at various forums about this issue. It bothered me some, but it wasn’t really that bad. However, after upgarding to Snow Leopard, the problem got MUCH worse. So bad that I made an appointment at the Genius Bar to get it looked at. The flickering happens pretty often, and even though I am usually plugged into an external monitor and only use the MBP’s display as an “extended desktop” display, the flickers bothered the hell out of me even in my peripheral vision.

When I got to the genius bar this morning, of course the machine wasn’t flickering at all, I explained that it had been widely reported online, and told him the facts like it does not happen with the discrete video card, and only happens on the built-in display, not external monitor. The genius then said since it didn’t happen on the external display it must not be the graphics card, I was like, well, I’m not sure about that and probably wouldn’t rule out the graphics card because of that. He was being pretty helpful and offered to take the machine in and have someone research the knowledge base and see if there was a fix for it. I agreed and said I’d leave the machine there for the day and would pick it up before they close.

At around 6pm a guy from the store called, and told me that he had seen the problem before on the early unibody laptops, but there isn’t a known fix for it. He said he had submitted the information to engineering and he was hopeful that there will be some kindda fix later, and if after a couple of months there was still not one then I could bring it back and talk to a manager and see what he would be able to do for me. He said since I reported this problem now, even if I don’t get AppleCare they would still be able to take care of it after the 1-year mark. I thought that was pretty reasonable so that’s what I’ll do with that machine. (I haven’t had the best luck with genius bar or Apple products lately, btw)

After my genius appointment this morning I went and looked at the antiglare MacBook Pros, the glossy screen had always bothered me, it pretty much renders the machine unusable in a lot of conditions, and it’s pretty scary when you have to do things like edit color photos. I work from coffeeshops pretty often and the glossy screen absolutely sucks when there are windows or just when using the machine any time except at night. After thinking about it for half a day and checking out resale values of my other macs on eBay, I decided to get another 15″ with the antiglare display, and I’ll keep the glossy one around in hope for a fix later, and I’ll sell my older (10/2008 rev) MacBook Pro. That machine is in really good shape, but we just don’t need 3 macs. It’s pretty cool how the MacBook Pros got so much cheaper now, I remember my first PowerBook was close to $3k, my first MBP was $2k but I got the “lowend” version, my first unibody was $2.5k, now you can get a 17″ for under that! Pretty amazing.

Anyway, the main reason I felt like blogging about this was that while I was migrating data between machines, I found some information I can add to the screen flicker issue:

  • the screen flickered when I had the machine in Target Disk Mode, this means the problem is most likely not software related, when in TDM the OS isn’t even loaded
  • the flickering happened during Snow Leopard clean install, again, the full OS X was not loaded when I booted to the install DVD directly (by holding option key when machine starts up and choosing the DVD)

So I can pretty much eliminate any user or even OS software from plausible causes. I really hope a EFI/firmware upgrade would fix it, there might be a loose connection somewhere, but I highly doubt that. Worst case it will be a faulty graphics chipset (it’s not uncommon to have yield problems), that would require a logicboard replacement, but a few people posted that the issue remained after they had their logicboards replaced. If Apple doesn’t acknowledge this problem and come up with an official fix, a class action lawsuit for something like this is not unheard of (right? @seoulfully I’m looking at you).

In case you’re wondering, no, I have not seen any screen flicker on my new MBP. If I ever see one I will be very upset. btw, I really like the silver bezel around the matte display:

matte screen ftw

RailsRumble ’09

I participated in last weekend’s RailsRumble, my first time “rumbling”, it was a pretty awesome experience. Ray‘s team at Intridea had an opening and he asked if I wanted to join last week, I was like, why not. I’ve been doing paired coding with Ray for years now and I know we can easily pull it off in 48 hours. We also had Doug March, an awesome designer who helped with the design and layout of the app. Check out our app: MovieTwitvia

I don’t really have anything profound to say about the whole experience, but a few random things:

  • Linode was awesome, I requested to install and boot to Ubuntu jaunty and I was able to ssh in pretty much instantly
  • It took a while to get Github access, but that didn’t stop us to git init and start hacking
  • I used Sprinkle to setup our Passenger stack, with a few small exceptions it worked flawlessly, we were able to `cap deploy` within half hour of the start of the competition. I thought about trying deprec but at the time of server setup I didn’t have Rails app setup yet so I went with Sprinkle, which I’ve used quite extensively at Inigral
  • since our app uses Twitter authentication, I used mbleigh’s twitter app template, I had issues with one of his plugins in the past so I was uneasy using it, but I have to say it worked great for us
  • We used Pivotal Tracker and planned out the features before the app. They fall nicely into Cucumber features after we started coding. Ray and I wrote Cucumber features and steps for all our model codes. We didn’t follow through with integration testing, mocking all that API stuff would’ve been a bit of a pain, and our app is pretty simple
  • (pickler didn’t work for me, I think it doesn’t work with the version of Cucumber I used)
  • Ray and I coded til 7am my time Saturday night (or Sunday morning), at that time our app was pretty much done, only major thing we had to do was to put in the reply box so users can reply to the question on our site directly. We were pretty pumped up and thought about working for a few more hours, but decided that it was probably better to get a few hours of sleep, so we can hack with better focus and more energy til deadline. It was a good decision, I got up at around 10:30 and hacked out that reply box pretty quickly
  • I actually had to go to tomales bay state park for a BBQ so I had to leave at 2pm California time, Ray and Doug took care of the final touches and the verification steps, it was nice to have finished all features way ahead of time and we were able to fix bugs and try out the sites with a few friends before the end of the competition
  • I found one bug in the code this afternoon, it’s very minor and probably won’t matter unless we get more than a certain number of replies for a given question 🙂

That’s basically all I have to say right now, if we get through to the public voting round, please vote for us!

Switched comments system to IntenseDebate

I just switched to IntenseDebate, the plugin is dope, it imports your existing comments to IntenseDebate, and when a new comment is posted it also adds it to your blog’s database, so there is zero cost to try it as you can always switch back.

I enabled Facebook Connect and Twitter login, when you post a comment you will have the option to post to your wall or tweet it. It also supports OpenID, and personally I always use that when it’s supported.

From BusySync to CalDAV (iCal + iPhone + GCal)

UPDATE: these instructions are quite old, use this instead: http://www.google.com/support/calendar/bin/answer.py?hl=en&answer=99358#ical

I’ve moved everything to Google Apps for Domains a long time ago, so my personal and work mails, contacts, and calendars are all on my GApps accounts. All my consulting clients are also on GApps. Using GApps, iCal and Addressbook on my Mac, and my iPhone, I got decent PIM integration between phone, mac, and cloud. (it’s come a long way since my PIM post in 2005). Before Google enbaled CalDAV, I used BusySync to sync iCal and Google Calendars, it worked well, and my phone synced with iCal and it in return synced with GCal. This worked well enough, but now iPhone OS 3.0 supports CalDAV, it is possible to have my calendars on the phone synced with GCal directly, without having to go through iTunes. (I must mention that BusySync does a lot more than syncing iCal and GCal, but that was the only feature I used and also the only reason why I paid for it).

So the basic idea is, remove BusySync, setup iCal and phone to sync with GCal separately via CalDAV, stop iPhone calendar syncing in iTunes. I have quite a few GApps accounts and I have multiple calendars in my personal account. My passwords are also randomly-generated with 1Password and they are 50-character long, so I needed an easy way to get all these CalDAV accounts configured on the iPhone. (even with copy-and-paste it can still get really tedious very quickly). After a little bit of Googling, I found these:

  • iPhone Configuration Utility – With this I can setup a configuration profile with all my CalDAV accounts, and then install the profile onto the phone, this is the only way to configure anything on an iPhone, period. You can find detail instructions with screenshots here.
  • Calaboration – an opensource tool for Mac to help setup GCals CalDAV accounts in iCal, without this it is a bit more work to figure out the URIs for your additional calendars.

It took only about 15 minutes to get CalDAV setup for iCal and the phone, and now when I add something from the phone it shows up on my mac without having to sync the phone in iTunes.

Note that all my calendars were already on GCal in my GApps accounts, if you have a calendar in iCal that is not already on Google, CalDAV won’t really help you there. I’m sure you can figure out how to import it into GCal though.

The next thing I really want is, obviously, to get everything pushed to the phone. I have quite a few mail and CalDAV accounts on my phone, and pulling every 15 minutes for all accounts probably eats up quite a bit of battery. I’ve been using msgpush.com to get push notifications via ActiveSync for my personal mails, but it doesn’t work all that well. Also, msgpush.com doesn’t even work after I changed my password to a 50-character-long string. The GPush app looks more promising, so hopefully Apple approves it. In Apple Mail on my mac I use IMAP IDLE and sorta does push, but that doesn’t work very well either! In fact, I think this is why msgpush hasn’t worked well for me, IMAP IDLE is a pretty old spec and it sucks. Right now even CalDAV accounts are doing sync every 15 minutes in both iCal and on my phone, and I don’t think the technology itself has any push capability built in. (It is an extension to WebDAV afterall). I’m beginning to think ActiveSync might not be such a bad idea, and this is a lot coming from a guy who generally don’t like or use anything by Microsoft.

My gdgt widget

They don’t really provide you a way to put this on any webpage, IMO the clearspring thing is pretty lame, but no worries, inspect the page and grab the object tag and you can put it anywhere:

I’m really loving gdgt, if they make it easier to add new companies and products it would be even better. From the discussion forums, I already helped sold RadTech ScreenSaverz, and I bought Beejive from info I got from there.

optimize your mac firefox (sqlite db)

A while ago I read a few blog posts about running the sqlite vacuum command on the Apple Mail internal databases to speed things up, and it dramatically sped up my Mail, I saw that Firefox also uses sqlite for a lot of stuff, so I tried this after upgrading to 3.5, and it definitely sped things up even further, so here it is, quite Firefox and run it and re-launch Firefox:

find ~/Library/Application\ Support/Firefox/ -name \*.sqlite -exec sqlite3 {} 'vacuum;' \;

For other OSes just change the find path to whatever you use, like ~/.mozilla for Linux.

After I did this I noticed my del.icio.us extension is a bit messed up, so I re-installed that add-on and everything’s fine.