Snow Leopard: That Doesn’t Sound Like Apple

Had a very strange experience in the Apple Store in Reston, VA where I learned three very disturbing things. Snow Leopard purchasers beware. Hardware purchases, stop in your tracks.

I went to the Apple Store today with a friend that was looking at buying a MacMini and another friend that was picking up a copy of Snow Leopard, which sells for $29. That is, unless you’d like a copy for $25.

Apple’s policy toward operating systems has historically been a good one. There is no home, business, professional, expert, business, yadda-yadda-yadda flavors. There is no upgrade or full version. There is no pricing tier. Everything is one low price, you can upgrade or install fresh at any time.

And, if you buy a machine at the Apple Store it comes with the latest-and-greatest software, and if a new product on it comes out within 30-days, simply come back and pick up your updated version for either free or a very steeply discounted price. This is how it’s been at the Tyson’s Store for years. It shines of Apple customer service.

We went to the new Apple Store in Reston, VA and had the most disturbing news presented by Apple blue-shirt, John.

Unfortunately, I have no way of knowing at this time if what he told us is fact, fiction, or fallacy. So don’t take what you read here as gospel, but rather use it as guideline for formulating solid questions when you deal with Apple for the next few months.

#1) Apple had on display a Mac Box Set (OS X Snow Leopard, iLife ’09, and iWork ’09) for $169. My friend having iLife ’08 and iWork ’08 asked, “is it worth the cost to upgrade?” The Apple guy looked at us and said straight faced, “honestly, no… the features are minimal, just get Snow Leopard.” Now, I appreciate his honesty and opinion, and that alone commanded enough respect for me to retain trust in Apple — much like Macy’s sending people to Gimbel’s. However, I suspect we got lucky and that was not the Apple corporate line. Nor would pointing out you can get it for much less at about $114.

#2) We noticed the word “upgrade” all over the box and asked, “do you have to have Leopard installed to install this?” The answer, surprisingly, was yes. This was an upgrade and not a regular OS X disc like Apple historically has done. We were told that the real OS wasn’t coming out until December. Yes, December. When asked about machine recovery, he confessed they had a special version in the back they could use under dire emergencies. This begs the question if $29 is an upgrade price, with the ‘full’ OS will be the normal $120 later.

Update 31-Aug-2009: An Apple employee in BestBuy also confirmed what’s out now is an upgrade path. Although according to him, if you buy a new machine (with Leopard on it) you get the Snow Leopard update for free, which sounds like the Steve Jobs’s Apple policy we’re used to.

#3) When we asked about the MacMini, we were told that it had Leopard on it and that if we wanted Snow Leopard, we’d have to buy that for an additional $29. However, the electronic Apple Store online was selling MacMini’s with Snow Leopard already installed, without the extra cost. I probed deeply about this. Did the machines really have Leopard, and not Snow Leopard? Yes, the excuse was that they hadn’t moved inventory with the old OS on it. I asked if one simply got the upgrade for free like Tyson’s always used to do. Again, no. When I pointed out that buying online was the-cost-of-Snow-Leopard cheaper, I was met by an indifferent shrug.

All three of these things were very non-Apple.

Again, I don’t know if it was the sales person, the store in general, or Apple taking a page from the Microsoft book of marketing. But suffice it to say there was an abrupt halt on major purchases today.

Customers expect two things from a business, common sense and consistency. Price is often a very distance third.

A Side Note: Customer service plays a big role, and I have another Apple story which illustrates going above and beyond. In BestBuy, when we went to go get a copy of Snow Leopard, they were out of stock. However, while browsing another part of the store, the Apple employee came up and handed over a copy of Snow Leopard. Apparently, a FedEx shipment had just arrived, so he pulled one out of the box, and then hunted down our party in the whole store, on the off chance we hadn’t left yet. That’s service. You know that BestBuy’s floor staff would not have done that.

Printing in Parallels

Using Parallels virtualization, I got this pretty scary error message: pstopdffilter/pstocupsraster failed with err number -31000. I’m almost ashamed to tell you what the solution is to get past it.

Parallels is a virtualization package for the Macintosh that primarily is used for running Microsoft Windows in a virtualized environment on OS X.

At some point you’re going to run into the problem of wanting to print something from the guest OS. Do not try to install a Windows XP print driver for the device that’s connected directly to your Apple. That’s not how it works.

You have a virtual machine. Surprise, you have a virtual printer too.

To set it up is trivial:

  1. Stop your Windows VM if it’s running.
  2. Open VM Configuration Editor (Parallels Desktop menu – Edit – Virtual Machine)
  3. Add Parallel Port Printer to the VM Configuration: click “Add” – select “Parallel Port”, hit “Next” – select “Use a printer” – select the printer you have available in the Mac OS.
  4. Make sure that you are able to print using that printer from the Mac OS side.
  5. Start Windows and try printing some document using “HP Color LaserJet 8500 PS” (it’s generic driver that’s being used for printing from the Virtual Machine to any Mac OS compatible printer).

This creates a HP Color LaserJet 8500 PS printer, which then gets redirected to the host operating system’s default printer. Printing then works normally, queuing and all.

Now, I did run into this problem using Microsoft Office on Windows XP with a HP DeskJet 6980 connected wirelessly through an Apple AirPort Extreme in bridge mode:

pstopdffilter/pstocupsraster failed with err number -31000

Here’s how I solved it.
I deleted the print queue on the host operating system, then I turned the power off and back on again on the printer, and tried again.

Seriously. I power cycled the printer. That’s all that was required. Second time through, it worked like a champ.

Big scary error message, itty-bitty solution.

NOTE: You will want to scan through your document if you’re using exotic fonts. In my case apostrophes were coming out as í.

Safari Problems Downloading .DMG Files

A number of users are reporting that Safari 4 is no longer downloading .dmg files. Here’s how I fixed the problem when it started happening to me.

A while back I started having problems with Safari 4 being able to download files. Normally when one clicks on a .dmg or .zip file, Safari downloads it.

Recently, it stopped working, either doing absolutely nothing or trying to load the file into the browser itself for display. It was as if the MIME type wasn’t properly being handled.

Here’s how I fixed it.

It appears that Speed Download‘s broswer plugin is to blame. While it works amazingly well with Safari 3, it doesn’t seem to work quite right with Safari 4.0.3.

  1. Quit completely out of Safari.
  2. Go to /Library/Internet Plug-Ins directory and locate the file SpeedDownload Browser Plugin.plugin and move it out of that folder.
  3. Restart Safari.

“Mail: SafetyNet not needed” log messages

New messages about SafetyNet not needed are appearing in my logs from OS X’s Mail. Trying to figure out what they are. Looking for ideas as Google was dry.

Warning this is a geek-related post, if you’re looking for photography and humor, try another entry or browse the comics.

I’ve noticed OS X’s Mail going something a little weird. I’ve got GeekTool pumping messages to my desktop in the background, and I keep seeing this filling the log:

Mail: SafetyNet not needed – wrongState:0
Mail: SafetyNet issues SELECT before CLOSE – wrongState:0

I’m trying to figure out what it means.

I’ve also noticed before that happens, I see this from /Applications/Mail.app/Contents/MacOS/Mail:

ATS AutoActivation: Query timed out. (elapsed 5.0 seconds. params: queryString = {com_apple_ats_name_postscript == “Helv” && kMDItemContentTypeTree != com.adobe.postscript-lwfn-font}, valueListAttrs = {{type = immutable, count = 1, values = (
0 : {contents = “kMDItemContentType”}
)}}, sortingAttrs = {{type = immutable, count = 1, values = (
0 : {contents = “kMDItemContentModificationDate”}
)}}, scopeList = {{type = immutable, count = 1, values = (
0 : {contents = “kMDQueryScopeComputer”}
)}}.)

The only other interesting behavior is that sometimes when I close the laptop lid and it goes into calmshell sleep, when I open the lid, I soon find that Mail is locked up to the point that it needs a Force Quit to exit, as Quit is unresponsive. Activity Monitor as well as Mail’s own activity status shows nothing going.

Anyone else seeing this behavior or know what it means?

ModRewrite Woes (Solved!)

Problems with ModRewrite, relative URLs, base paths, things executing without extensions being specified, and using MultiViews — read on.

While working on a project, I stumbled into some of the weirdest Apache2 mod_rewrite problems that I’d ever seen.

The goal was to make a URL like http//www.nowhere.com/item/1234 turn into http://www.nowhere.com/item.php?id=1234. Trivial, and I’ve done it all the time.

RewriteEngine on
RewriteRule ^item/(.+)$ item.php?id=$1 [L]

This time it wasn’t working the way I expected. When I used the human-readable version, my page got delivered by I had no images, no css, no javascript. Yet, if I used the computer-friendly long form with parameters, it worked just fine.

A little examination with Safari’s activity window showed me that in the initial case the browsers were looking at all relative URLs as if they were prefixed with /item/. This make sense, because the URL redirect knows how to play rewrite games with the rules to get to my page, but the relative links on those pages, to css, graphics, and js, had no clue this was a fake base url.

Many thanks to richardk who pointed out multiple solutions back in 2005.

  • Don’t use /, and there isn’t a problem.
  • Use absolute paths, though you have to edit all the links on your page; if using PHP, consider a variable for the base path.
  • Use a RewriteRule to hack off the offensive directory that doesn’t exist.
  • Or, use the <BASE …> tag.

Well, that rendered the page prettier, but I realized my argument wasn’t being passed in. Yet, the re-write rule was correct.

So I tried http//www.nowhere.com/item, which should not have matched and should not have brought up a page. Yet it did.

A little experimentation showed that any page that had a known extension was getting delivered.

What this meant was that the moment the browser saw /item it found the item.php page and delivered it without ever going through Apache’s rewrite module, and hence no parameters.

Luckily, I’ve encountered this symptom before in a different context. The offender: MultiViews. This is the bugger that deals with multiple language support; you know, where you have a zillion internationalized instances based on filename extensions….

Turning that off instantly solved the problem of delivering a file without an extension:
# Options Indexes FollowSymLinks MultiViews
Options Indexes FollowSymLinks

That also meant that the mod-rewrite rules worked. And that meant the parameters were passed correctly. And that meant I was was happy, because the code was working.

FIX: undefined symbol: apr_ldap_ssl_init

Did an update to Ubuntu Jaunty and Apache stopped working with the message “undefined symbol: apr_ldap_ssl_init”. This post is how I fixed it.

This is a geek entry for resolving the problem:

* Restarting web server apache2
/usr/sbin/apache2: symbol lookup error: /usr/sbin/apache2: undefined symbol: apr_ldap_ssl_init [fail]

Non-geeks will want to move along…
Continue reading “FIX: undefined symbol: apr_ldap_ssl_init”

uTorrent: Software Jesus Would Use

I was very surprised to see when the last version of uTorrent was updated.

When I want to keep my software up to date on my Mac, I use Version Tracker Pro. The pay software works great and, seriously, I have no complaints.

But then a friend pointed me at this new tool called AppFresh. It does the same thing, but for free. And, honestly, it’s a lot prettier and I love the way it organizes the downloads into meaningful folder names.

uTorrent released before Christ was bornOf course, it does have some small kinks, being still beta.

Check out when it thought this update for uTorrent was released.

Software so old, it predates the birth of Christ.

MacHeist 3: A Look At Group Purchasing Behavior

Have MacHeist sales stagnated? He’s my take on why, and what can be done to fix it, and how it has to play out… for the better!

As a glossed over quick introduction, MacHeist is a short-run sale of software packages for the Mac that has a twist. You pay $39 for a bundle of software, and some of that software is “locked.” A portion of your purchase price goes to charity, and the more money raised for charity, the more items in the bundle that get “unlocked.” Thus the more people buy, the more you continue to get. It’s a great scheme, only it isn’t working.

MacHeist 3MacHeist, at the time of this writing, is conducting their third “heist” and after some amazing fluster of activity, new sales appear to have stagnated at an alarming rate.

Alarming to bundle purchasers, because if not enough sales happen, bundle purchasers won’t get all the amazing high-cost software at the extreme end of the bundle. What’s important about that statement is that it’s never happened before, and the problem isn’t the recession.

In informal polling, there appear to be two kinds of purchasers: early adopters and frugal purchasers.

The early adopter purchases the bundle early, knowing a good value when they see it, spurred on by the fact that there are additional incentives for doing so.

The frugal purchasers have their eye on either the final packages in the bundle, or are looking at the bundle as a whole. They don’t want to purchase the bundle until they know everything in it is unlocked.

And that’s the interesting part. If no one buys it, nothing gets unlocked. If everyone takes a risk, everyone gets handsomely rewarded, guaranteed. Thus each potential purchaser is waiting on the action of everyone else — it’s crowd mentality, only the driven behavior is idleness.

The secret ingredient is momentum. By carefully crafting a set of software incentives, under ideal circumstances the early adopter crowd overlaps with the late takers. This manifests itself as a steady stream of purchases.

It might be argued that The Directorate which runs MacHeist became victims of their own success and actually caused the problem by marketing the sale too well. Based on all the pre-sale puzzles, rumors, and incentives, there was a flurry of purchases in the early hours of the sale and projections seemed rather high.

However, one of the primary packages in the bundle required what looked like a high goal to unlock, the perception was that momentum was slowing. And perception drove reality. “Hmm, that doesn’t look like it’ll get unlocked, I think I’ll wait to see if it does before I buy,” is all it took to slow the influx of unlocking purchasers.

This was ill-timed, as it also happened to coincide with the reward for the first 25,000 buyers being removed from the table as the 25,000th bundle was sold. Days later, a only mere 5,000 more have sold and questions are being raised if the final packages will be unlocked.

The up-front fast burn created enough of a gap that people who were on the fence at different points became more segregated than usual. This didn’t happen in the last two sales.

So here’s my prediction: they have to fix this. Meaning, new incentives will re-emerge, the goals will have to be re-addressed, and it’s in the best interest of MacHeist to unlock the bundles anyhow at the end of it.

Turns out before I could finish this post, a new bonus was added, and that did stir a little traffic. But the real objective here is to convey there’s movement, specifically enough that the goal could be reached. That will inspire sales again, and in turn actually unlock the software. By re-calibrating the goal levels, this would solve the problem. In fact, the easy solution is to put all the last packages into one final, achievable goal.

The truth of the matter, however, is whatever happens will be remembered, if not chronicled in Wikipedia forever. If MacHeist goes down in flames for not unlocking all it’s bundled packages, people will be ever the more skeptical, and that means early adopters turning into late purchasers. That only exacerbates the problem, killing future sales opportunities.

By contrast, if the packages do get unlocked, whether by purchasers or by The Directorate making its own donation from the profits it receives, then MacHeist will be seen as more of a sure thing in the future, sliding more of the late comers and risk adverse customers into the early adopter side. This would actually increase future sales, because more gets unlocked sooner, enticing the skeptical buyers.

As such, “betting” on MacHeist with a purchase at this point still seems like a safe move. And, even if none of my predictions happen to come true, enough is unlocked already that the $39 price tag is still an awesome buy for the collection of software provided.

Hiding Image Files in TextMate

Here’s how to hide JPG, PNG, and GIF files in your TextMate projects so bulk file operations go faster.

TextMateTextMate, perhaps the best generic programming editor that I’ve ever encountered (though I’d be willing to entertain reader suggestions), has the ability to open an entire directory at once, which is great for making bulk changes to automatically generated website files.

However, there’s one trick that I keep having to look up each time I do it, and that’s how to get that side-bar directory listing of the project files not to display image files. The reason you might want to do this is for efficient global replace options across all text-based site files.

The solution is to click the top-level directory in the project, and press the I button in the bottom right corner of the drawer.

This opens a Folder Information dialog box. In the area labeled Recursively Include Contents Matching there are two fields, one for files and one for folders. In the File Pattern field, enter this regular expression: !\.(jpg|png|gif)$

When you close the Folder Information dialog box, all files with the extensions listed will no longer be displayed.

Safari 4 Beta – OS X Users: Wait

Installing the new Safari 4 Beta gave a great browser experience, but it stopped OS X’s Mail from working. Uninstalling it restored normality. Anyone else getting this?

Yesterday I downloaded a copy of Safari 4 Beta for Windows, and I have to say that the speed increase was obvious. Just a little playing around with the browser [especially in developer mode] tells me that Apple has something good. Real good.

However, my experience when installing the Safari4.0BetaLeo.dmg version on OS X wasn’t as hot. Well it was, but the collateral damage was unexpected.

In short, the browser worked great, just like on Windows. The speed up was there, but certainly not as dramatic as when you’ve got Internet Explorer to compare it to.

Safari 4 Beta Kills MailMy problem, however, was that when I went to open up OS X’s Mail, the Mail program crashed. Hard.

Repeated attempts did the same thing. Open Mail, it shows the cached list of old messages, it attempts to download from the IMAP servers, and clicking anywhere causes the Mail application to implode.

It was certainly repeatable.

Two things about the crash impressed me, though.

Number one, Mail was blaming it on a Growl extension. That’s nice to know that an application can tell where it’s detecting a fault.

Number two, after a few repeated failures, it was just like Apple to automatically sense my frustration and have mail automatically ask me if I’d like to reset my preferences and try launching again.

I did. And, it didn’t work.

So, after logging a few problem reports, I decided to uninstall Safari using the Safari4.0BetaUninstall.pkg.

No surprise, Mail returned to normal, and my Growl extensions were functioning just fine.

This raises the question about what the new Safari is doing that affect Mail to begin with.

But the real point here is that this software really seems to be beta. Good beta. But still beta. If OS X Mail stops working and you don’t know why, revert to your original Safari install. I bet it’ll help.

Can any other OS X users confirm or deny this is happening to them?

CONFIRMED WITH SOLUTION: Thanks to reader comments and feedback, it’s clear the problem is with current Growl extensions not being compatible; simply remove them (see comments on how) and wait for Growl to come out with an update.