MobileMe Sync Problems – Resolved

Apple’s MobileMe service stopped syncing for me, claiming there was one conflict, which it wouldn’t let me resolve. Here are the steps and a Python script that fixes it.

Not very long ago, I noticed my iPhone was no longer pushing data up to MobileMe, and further investigation showed that my laptop was also having problems syncing.

The MobileMe icon had an exclamation mark in it, it told me there was 1 conflict, and if I tried to resolve it, nothing happened. If I attempted a sync, it’d attempt it, but I’d get a system log full of errors with no obvious signs of successful data synchronization.

I was seeing ominous system log failures in Console like this repeated many times:

Conflict Resolver[276] [110660] |ISyncRecordGraphNode|Warning| Warning: Failed to look up record with Id: 09000000-0000-0000-1234-430001005678
Conflict Resolver[276] [110660] |ISyncRecordGraphNode|Warning| Warning: Failed to get entityName for record with Id: 09000000-0000-0000-1234-430001005678 (record = (null))
Conflict Resolver[276] [110660] |Conflict Resolver|Error| failed to look up parent relationshipName for entityName: (null) (exception = *** -[NSCFArray initWithObjects:count:]: attempt to insert nil object at objects[0])

There were other strange messages like this:

Conflict Resolver[276] [110660] |UI Helper Proxy|Error| failed to look up UIHelper for attributeName: calendar on entityName: (null) (exception = *** -[NSCFArray initWithObjects:count:]: attempt to insert nil object at objects[0])

And this (my personal favorite as it has a sense of humor):

Conflict Resolver[276] [110660] |UI Helper Proxy|Warning| No data type returned for property “calendar” on entity “(null)”, displaying on blind faith…

And also this:

Conflict Resolver[276] [110660] |Conflict Resolver|Warning| Conflict Resolver: *** -[NSCFArray initWithObjects:count:]: attempt to insert nil object at objects[0]
Conflict Resolver[276] *** -[NSCFArray objectAtIndex:]: index (-1 (or possibly larger)) beyond bounds (2)

My guess is that MobileMe has some globally unique identifier that represents one of my sync-able objects, and for some reason it’s missing. That in turn throws off some collection count, and when things don’t balance out between what was expected and what was loaded, a software exception happens.

At that point, I was fairly sure I needed to converse with MobileMe support. Apple has free chat-based support services, but it’s buried. Really buried. Really, really, buried.

  1. Go to http://www.apple.com/support/mobileme/
  2. Expand Syncing With MobileMe
  3. Click Troubleshooting MobileMe Sync issues
  4. Click Chat Now at the bottom of the page.

It’s a good idea to have your machine and your MobileMe data backed up. TimeMachine, SuperDuper!, or Carbon Copy Cloner will help you do this.

Unregister and Re-Register the Machine


Bring up Apple / System Preferences… / MobileMe. Go to the Sync tab, and at the bottom click on Advanced…

Then select the computer name in the list, and a Stop Syncing Computer… button will appear. Press it. Confirm with Unregister.

Then press the Register Computer button. Press Done.

Check and set the synchronize with MobileMe to Manually. Leave the preferences panel up, you’ll be back in a second.

Blow Aware the Sync History


You’ll need to reset your sync history which requires the iSync tool and a Python script run at the command line:

  1. In the Finder, choose Applications from the Go menu, then double-click iSync.
  2. Choose Preferences from the iSync menu.
  3. Click the Reset Sync History button.
  4. When the window opens to confirm the reset, click Reset Sync History.
  5. Close the Preferences window.
  6. Quit iSync.
  7. Open the Utilities folder (located inside the Applications folder) and double click the terminal.
  8. Paste this command in the Terminal and press return: “/System/Library/Frameworks/SyncServices.framework/Versions/A/Resources/resetsync.pl full” – without the quote marks. There will be no output.
  9. Quit terminal.

Re-sync


Select the items you want sync’d. Change the Synchronize with MobileMe back to Automatically.

You might get prompted with a request to sync immediately. If you are trying to push everything on your machine to MobileMe, stepping on what’s there, then press cancel and follow the next step. Otherwise confirm and skip the next step.

This next part is optional and you do at your own risk, assuming you have a backup and this is what you intended to do:
Press the Advanced… button. Click Reset Sync Data… and select the direction you want to sync, most likely computer to MobileMe.

At this point, the conflict disappears, but you’re no long able to sync either. Move on to resetting the preferences.

Resetting Preferences for MobileMe


In the MobileMe preferences pane, select the Account Tab, and click Sign Out… Confirm with Sign Out.

Now provide a bogus username and password like: blah@me.com / blahblahblah

You’ll get a name or password invalid message, but your log will show some interesting stuff.

/Applications/System Preferences.app/Contents/MacOS/System Preferences[352] Warning: Removed .Me password
[0x0-0x2c02c].com.apple.systempreferences[352] com.apple.CSConfigDotMacCert-blah@me.com-SharedServices: Already loaded
com.apple.launchd.peruser.501[206] (com.apple.CSConfigDotMacCert-blah@me.com-SharedServices) Throttling respawn: Will start in 6 seconds
com.apple.launchd.peruser.501[206] (com.apple.CSConfigDotMacCert-blah@me.com-SharedServices[470]) Exited with exit code: 1
/System/Library/CoreServices/FileSyncAgent.app/Contents/MacOS/FileSyncAgent[462] PIDFilePath() => ‘/Users/yourname/Library/FileSync/01254cc20d18/.pid’

Sign back in. Once again, go to the Sync tab and set Synchronize with MobileMe to Automatically.

You will get a message that says “A computer named [your machine name] is already registered with MobileMe synchronization server.” If so, press the “Use same name” button.

You may see this in the logs, not to worry:

System Preferences[352] First pass at computer registration failed with error: Error Domain=DotMacProxyErrorDomain Code=-100 UserInfo=0x200e73280 “A computer with this name is already registered with MobileMe.”
System Preferences[352] First pass at computer registration failed with error: Error Domain=DotMacProxyErrorDomain Code=-100 UserInfo=0x200e5fa20 “A computer with this name is already registered with MobileMe.”
System Preferences[352] LightweightMallornLoginSession is registered.

Now check off the items you want sync’d again and press the Sync Now button.

If you are trying to move all of your machine’s data to MobileMe, select the correct replace option when prompted.

And just to be sure that it didn’t do a partial sync, press Sync Now a second time, just incase the automatic setting jumped the gun before you finished selecting all the desired items.

Your syncing woes should be resolved.

But what about me.com?


At this point it’s a good idea to head over the your web account by going to me.com and logging in.

Check to make sure your data is there.

At this point in time there is known issue with me.com in which the calendar and the contact data does not appear. It is a known problem. Apple is aware of it. It is specific to your profile (other MobileMe accounts aren’t affected). And you need to contact support (see above) and open a trouble ticket. Apple only knows this as a “contacts and calendar loading issue” it has no formal title.

The error you see will be this message on a grey screen: MobileMe is unable to load your contacts. MobileMe could not load your information from the server. Try reloading the page. If this problem persists, contact MobileMe Support.

You can try and clear out your Safari cookies and cache, but realistically this won’t work as other browsers, like Firefox, show the same thing.

  1. First click the log out button and close the MobileMe (me.com) window.
  2. Click the safari title (next to the Apple logo) and select “empty cache.”
  3. Next click the safari title and select preferences.
  4. Click the security tab.
  5. Click “show cookies” then hit “remove all”.
  6. Now close the preferences.
  7. After all that open a new browser window and log back into MobileMe.

Apple can fix the problem by escalating to the next level of support, and this is most likely more desirable than closing your MobileMe account and opening another, which will force your MobileMe account name to change.

Seeing in Black and White

I just had an interesting thing happen: I saw in black and white. That’s what my brian actually saw with the unaided eye. Here’s the cool part, I tell you how I reproduced it. It was like nothing I’d experienced before. It was beautiful.

A few moments ago, I just had a very interesting and unique experience. I saw in black’n’white. I’d never had this happen before in my life. First I’ll describe the experience, then how I did it, which, curiously enough was repeatable.

“It was clearly not imagination… It was a greyscale world that I physically saw, like a black and white movie, but a zillion times sharper, far more dynamic range, and in 3D.”
With the totally unaided eye, my brain saw my surroundings, in broad daylight, in black and white. The only exception was that objects which were normally bright red had an ever slight red hue to them, but it was only brilliant red objects that did this.

The effect lasted about 7-10 seconds in duration before the color faded back in, almost as if the saturation was being brought up from near nothing to normal.

To convey the effect, this is much like the image I saw:

Seeing in Black and White

When I moved my eyes to look at other parts of the scene, the effect diminished, but if I kept focusing on one spot, like a child’s staring contest, the effect would hold longer. This was very much the inverse of the behavior of an after-image, where if you stay still it fades, but if you rapidly blink, it returns.

The black and white effect composed of the entire field of view. And as it gently faded back to normal, it affected more of the center of the field of view first:

Seeing in Black and White

It only took 2-3 seconds for normal color to return. There was no pain or any form of discomfort before, during, or after. I’m in very good health.

It was as if the signals from the cones were being ignored by the brain, but the signals from the rods were fine. I remember that the detail was astounding, and that the tone of the grass was very similar to the sky, though I’ve been unable to represent that as closely as I’d like in my photographic simulation.

I’m certain you’ve personally woken up in the morning and upon your eyes adjusting to the light have seen the image fade in, not focus, but as your brian assembles bits of the information into meaningful images, like it’s adapting to light after not being exposed to it for a long while.

Here’s how I did it.


I’m going to err on the side of giving too much information, some that might not be relevant, primarily because I don’t know what actually caused it. However, I was able to recreated it, on demand, several minutes later by experimentation; the effect lasted even longer. It was wondrous.

Being inside for the better part of the morning, I figured I’d go outside an lay in the sun for a few minutes. So, I lay down on my back on our driveway which has a slight incline. It was about thirty minutes past noon, and the sun was slightly overhead just off center to my right, enough that it was still bright enough that just closing my eyes was uncomfortable, so I criss-crossed my arms over them to put them in shadow, though I could still tell it was very bright out with my eyes closed. The weather was 89°F, I was in direct light, and there were few clouds in the sky.

I rested this way for about 10 minutes, and I did so just to the point where my eyes were fully relaxed and no longer concerned about the brightness of the light though my eyelids. Also, I wasn’t quite drifting off, but relaxed as you might be just taking in warmth of a nice day at the beach.

What led to the discovery was that I heard a car drive by and so I sat up quickly, opening my eyes. Two things stood out. One, this gave me a slight head-rush, though I’d describe it weak at best. Two, my eyes had not adjusted to the light fully. And, although while bright, it wasn’t uncomfortable, there was no blinding whitewash, no pain, and no caused for squinting required — I was looking away from direct light.

That’s when I noticed the scene seemed extremely washed out and monochromatic; it looked like a black and white photograph.

Thinking my mind or eyes were playing tricks on me, I moved my eyes, but the effect lasted longer than a second, though faded as I looked at more “new” material in my field of attention.

The reds came rushing back in first, with greens right after. It wasn’t one color than another, it was overlapped. I became visually more aware of reds, as that happened, greens started replacing the grey tones as well, and by the time greens were normal, the other colors like purples and blues from the nearby flowers in our garden were already present.

This part will be hard to describe because there’s no English equivalent for it, but it wasn’t like I was seeing in black and white, but rather the absence of color.

I know that sounds identical from a logic standpoint, but the perception was an absence of something, not the presence of something. Intellectually, I knew there had to be color, I just wasn’t seeing it.

It was a greyscale world that I physically saw, like a black and white movie, but a zillion times sharper, far more dynamic range, and in 3D.

It was clearly not imagination, nor dream, it was very real and perceptible.

That’s what made me want to try and repeat it.


Though this time around, if I could get it to work, I’d plan a more scientific excursion. So I selected an area of our yard with brilliant colors, our flower garden, which would be my baseline.

First, I waited about 5 minutes and looked at the area, taking in all the things I should be expecting to see. The area was already in normal color after the effect had faded long ago, but I wanted to be sure.

Seeing in Black and White

So, I laid back down with the intention of trying to get the head rush. I shielded my eyes in shadow, and waited for them to relax and get comfortable, and then waiting a moment, quickly sat up and stared at the area I knew had colorful flowers, a bright red car, and tons of green grass. I made sure I would focus only in one area, trying to stare out to infinity, much as you’d do for those 3D posters, though I was more trying to keep my eyes in a relaxed state because I wanted them in focus.

The preparation this time around took merely a minute or two. The head-rush was again weak from sitting up quickly. I turned in the direction I had planned and opened my eyes.

It’d worked.

The effect returned just as before, but lasted this time about 20 seconds and the effect was just as strong until I couldn’t help myself and look at the astounding detail in scene around me, which caused the effect to fade.

Since I had more time to study the scene, this is when I actually noticed the reds within the black’n’white image in my head. The B/W effect seemed more pronounced when I didn’t move my eyes, relaxing them.

When I turned to look at other things, color would seep in, and if I held my eyes relaxed in the same spot, the color would fade back out partly, much the same way as you can make objects in your blind spot vanish by holding your vision still long enough. That same kind of fading away was what I saw, but with color.

I suspect the effect is caused less by the head rush and more by the eyes being exposed and conditioned to bright light (even with the eyes closed, or maybe the red light through the eyelids saturates the cones like a red filter, though I did not see a green after image). When the eyes are opened, there’s a whole rush of visual information, and I suspect the brain is compensating for the overload by taking in shapes, detail, and tone and then overlaying color after the signal settles. I wasn’t aware that visual processing of color was an independent process.

This led me to two very interesting side thoughts.

One, I’ve always wondered if while under hypnosis people really saw things but said they didn’t, or whether their honestly perceived it. I now know it’s possible to perceive things differently than the visual input as actually providing.

Two, the black and white image was astonishingly detailed in greyscale, much like an Ansel Adams image. Being able to produce this effect on demand to view how a scene might be photographed in black and white is a fantastic tool to have in one’s photographic arsenal.

I hope science doesn’t declare this is bad for you, because I’m going to do it again!

[UPDATE: I can’t get it to happen inside, seems bright sunlight is required.]

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.

For models just starting out

If you scan through many modeling websites, you’ll see there’s a common question asked by new comers who want to be models: “What do I need to do to become a model?” Ironically, that question often goes unanswered, even on professional sites. Maybe it’s that the answer is a little more complex than a quick answer. However, as a photographer, I decided to take a shot at answering the question.

If you scan through many modeling websites, you’ll see there’s a common question asked by new comers who want to be models: “What do I need to do to become a model?”

Usually members skip that question. I’m not sure why. Maybe it’s that the answer is a little more complex than a quick answer. Perhaps it’s that a good portion has to deal with genetics. It could even be experienced models don’t want the new competition entering the field.

I decided to take a shot, however, at answering the question.

What can I do to become a modelQ: What can I do to become a model?

A: To a writer, the advice is read as much as you can. To a model, I’d say look at as much as you can — in particular other photos of models.

Analytically, try to figure out what it is about the models you like. Is it their pose, is it their facial expression, do they look into the camera? Try to emulate that pose in the mirror.

Study books on posing. And if you’re really clever, study books on photographic composition. If you can deliver what the photographer is trying to capture, you’ll make life so easy he’ll be raving about you.

Another thought is to find pictures of models that look like you. There are some web sites where you can beam up a picture of yourself and it will give you celebrity matches. Perhaps hair styles, makeup, and clothes that work for them will also work for your looks and body type.

Take care of your body; keep your skin clean and healthy. Apart from good diet, steer clear of all the things you know you should. Modeling is based upon looks, and you have it in your control to keep them.

Know your body, be comfortable with it, and find make up that works for you. Photographers often go for the natural look, so keep that in mind the next time you want a sprawling tattoo or obvious body piercing. These won’t necessary stop you from being a model, but it can raise unnecessary barriers to entry. Imagine a bank looking to fill a teller position, which candidate has the higher probability of landing the job: someone dressed in punk with a lip ring and colored spiked hair, or, the candidate in an pressed shirt, tie, and jacket. Both might be equally capable and friendly, but one will have a harder time than the other.

Work on building a decent portfolio. The best way to do this is to find local photographers you trust and negotiate a Time for Prints/CD shoot. It costs you nothing but some time, and in return you get some great pictures.

Ideally, you want more photos that you know what to do with. Cull them down to the best of the best, you don’t need to show every photo you have. Make sure you get a variety of looks. You want to show you’re versatile. Demonstrate that you’re adaptable.

Post your portfolio where photographers can see you, and let them know about your availability, interest, and boundaries. You may get more TFP offers, you may get fixed rate sessions, you may get a set hourly rate. Take only the jobs you feel comfortable with.

Seek opportunities where the photography is going to get exposure, even if you have to do it at a reduced rate. The more exposure you get, the more you’ll be able to command later.

It’s important not to let things get to your head. When a model without serious experience wants to be compensated as someone who’s done it as a career, opportunities can start to dry up. Photographers just want to take the picture, not deal with a diva. Think of it much like a job interview; you wouldn’t hire someone to be your doctor if they simply wanted to be a doctor all their life and took a class in first aid. Experience is important. And you can get all you want with TFP/CD.

Be professional, be on time, and know when to say no. Consider setting up a website, something which doesn’t say “I got a MySpace account.” Show your styles and answer the who/what/when/where/why about yourself; let people know how to contact you, and get back with them promptly. Sometimes photographers are working under horrific deadlines, and reaching a viable model is all that’s needed. A quick response can give you the edge.

You might want to forge a relationship with a makeup artist and/or a favorite photographer. If you have a solid relationship with good communication and trust, the photo sessions will go seamlessly and productively. They in turn will become part of a mini-network and potentially bring opportunities to your door that you’d otherwise not have known about.

Eventually, demand may increase, and if it does you may want to get an agent. Usually it’s a while before one gets that far. You might not even need one.

Modeling is a competitive field, with new and younger models entering all the time. Switch your mental role about how you’d market yourself and you’ll see what you need to do to become that. You’re selling an image: yours.

Models: Getting more from a TFP/CD shoot

TFP/CD is an arrangement whereby a model and a photographer exchange professional services instead of one hiring the other. Surprisingly, though, many new models don’t know it exists, and those that do have some serious misunderstandings about it. Here are two secrets models might like to know.

Getting more from a TFP shootTFP/CD means “Time for Print” / “Time for CD,” and it’s an arrangement whereby a model and a photographer exchange professional services instead of one hiring the other.

Surprisingly, though, many new models don’t know it exists, and those that do have some serious misunderstandings about it.

I happened to be reading a discussion forum where some photographers were discussing photo shoots and the models were wanting quick turn around times on CDs. Reasonable. But then it dawned on me, perhaps it wasn’t clear too all what caused the delay. By the time I was done, I derived two secrets models might like to know.

For photographers, setting expectations up front is really important. Failure to do lets misconceptions propagate.

For instance, an inexperienced model may do a 2 hour shoot and roughly estimate the photographer took 500 pictures based on shots-per-minute during a scene and how long the total session was. When a CD doesn’t arrive within the next few days, anxiety replaces anticipation, and when it does arrive there may be only a handful of images leaving a model to wonder why it took so long. But what’s really happening? Did the model get screwed? Was the photographer lazy?

Is there anything that could have been done to get even more images, get some them sooner, or even get even higher quality images? Actually, yes.

The photographer in a TFP/CD deal is just as concerned about his or her reputation as a model is and doesn’t want anything substandard floating in the wild. As such images rarely go from camera to CD to model without review and processing.

Here’s the same scenario from the other side of the camera:

In reality, the photographer may have taken only 200 pictures. Photos are often taken in bursts and during makeup and wardrobe changes the camera isn’t firing; this counts for a lot of down time.

Of the photos, there will always be some that didn’t turn out: eye blinks, unwanted motion blur, lens flare, a horrible facial expression, hair obstructing the face, an unflattering fold of skin, an oil shine, a harsh shadow, undesirable lint, fly away hair, hot spots, exposure alterations, etc. The bursting allows for lots of micro differences to choose from, so that the best of a given set can be selected. To the untrained eye it can simply look like a lot of the same picture. This narrows down the usable images considerably.

Also neglected is that many photographers now also do their own photo editing. And that’s where the really time-consuming part starts. A single photo might take an hour just to get right. The higher the resolution photo and the sharper it is, the more time it takes. Often a photographer inspects every pore of skin. So, even if 20% of the photos are usable, this can represents a full-time week’s worth of editing.

Think about it; that’s 40hrs of follow-up work from a mere 2hr shoot. The misconception is that pictures are ready once taken, usually they aren’t. And, in a TFP/CD shoot, there’s no cash income from this job, so it’s very likely that this post-processing time has to come from in-between other paying gigs, which pushes out the delivery further depending on other commitments and schedules.

A studio uses TFP/CD to put their best foot forward, and that’s why the model greatly benefits from this. It’s unspoken, but often TFP/CD shoots get a little more time, care, and attention; one isn’t producing product, but art.

Sometimes whole segments that looked like a good idea during the shoot just don’t have the magic when everything is seen in context. As such, the photographer will often cull down from the usable photos to just the absolute best of the best and then spend a lot of time and detail on just those.

Believe it or not, the photographer also wants the model to have the images as soon as possible, because if they’re ready for the model’s portfolio, they’re also ready for the photographer’s.

I think the best advice to a photographer in this case is to under commit and over deliver. Don’t say it will take a week if it will take two. Explain that the goal is to get some small number of high quality photos, regardless of how many are taken.

And as for information to the model, the shoot isn’t over for the photographer when the last picture has been taken; that’s when the laborious and time consuming meticulous editing begins.

But here’s some secret advice that will get a model better product, sooner, and more of it:

1) If you are patient and have the extra time, offer during the TFP/CD shoot to allow the photographer to experiment with the lighting. Almost always there are a number of experimental configurations a photographer is secretly wanting to try, but he knows it’s high risk because it might not work perfectly and he doesn’t want to send you home with nothing. Conversely, it could really work out special and you’d have something new, amazing, and highly creative for your portfolio. By allowing for creative freedom, which might not work out, you actually increase your chances of getting super-spectacular shots. Photographers kill for models who let them tinker with experimental lighting.

2) If you are a tech-savvy model and are willing to accept electronic delivery instead of a CD, many photographers will happily send you email attachments or URLs where you can get your photos as they become ready. Because there is no bulk collection with a looming deadline, the photographer will often end up giving you more photos over the course of time, but you also benefit from getting those already done sooner. Plus, since you’ve set up a venue for delivery, a photographer revisiting prior shoots experimenting with new editing techniques has the means of sending you future updates for your portfolio as well.

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”

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.

OS X Mail’s Strange Log Messages

A while back I installed a pretty neat Mail extension called MailTags, which was used to tag mail messages with additional information. Cool concept.

However, at the time the usage I was personally getting out of it didn’t warrant the price for the app, and I uninstalled the application after the trial period was over.

Unfortunately, things didn’t end there, because I kept getting repeated log messages like this when I looked at the console:

1/1/09 2:52:05 PM Mail[362] Cannot restore width of table column with identifier 24

It was really obvious (and annoying), as I use GeekTools to monitor my console on my desktop in order to keep a bird’s eye view on what’s happening in the background.

I found out that I was not the only other user having this problem, and the MailTags site had a solution invoked from the Terminal:

$ defaults delete com.apple.mail TableColumns

I’d done this before, but the problem resurfaced. Not sure why. And, doing it again seems to have fixed the problem, again. My log is back to normal.

Meanwhile, I discovered that that MailTags has a new version out, and perhaps I’ll give them a second chance.

I just tend to get worried when an extension appears to go deep, especially when we know Apple is about to revamp things with the next release of the OS, and cruft somehow got left behind before.

Invisible Drive on OS X

The hard drive icon on my OS X’s Finder was no longer appearing on my desktop; here’s how I fixed it.

I happened to sign on to my desktop Mac and noticed something very strange, the Harddisk icon was no longer on the desktop.

Other clever tricks for looking at the file systems showed the file was most certainly present, although Finder operations were treating the volume as if the hard disk was hidden or invisible. The drive was there when I used terminal and did $ ls -l /Volumes

Finder Preferences showed that icons should be shown, but just the drive icon wasn’t appearing.

Then I found this aritcle, which suggested firing up the Script Editor and running this script:

tell application “System Events”
set visible of disk “NameofDisk” to true
end tell
tell application “Finder” to quit
delay 1
tell application “Finder” to launch

I believe I got myself into trouble by accident when I did the last disk repair using Disk Warrior or Disk Utility. Somehow the operation marked the drive as invisible. Undoing it was as simple as asking the system to make it visible again.

Garmin WebUpdater

I own a Garmin GPSmap 60CSx in order to geoencode my photography using HoudahGeo.

Garmin now has a means up updating the firmware in their GPSs by using a WebUpdater, of which I use the version for the Mac.

I Got Myself Into Trouble
In retrospect, I got myself into trouble by starting the program, it failed to detect the GPS, to which I turn on the GPS, and plugged it into the USB port. While the WebUpdater saw the device and went to update, it stayed in the “Erasing… Do Not Unplug” state for about two hours before I got brave.

What I Did, And Boy Was I Lucky
I couldn’t cancel. I couldn’t Quit. So I had to Force Quite by using Command-Option-Escape, that at least got WebUpdater to stop. The GPS was still stating “Loader Loading…” when I pulled the USB, and when that didn’t change anything, I turned off the power to it. I wasn’t so sure I was going to see much of anything when I powered it back on.

I got lucky. I turn the power back on and I was still at the old revision. Then plugged in the USB to the computer. Then started WebUpdater, which again noticed the GPS version, downloaded the firmware again, and had no problems installing it. Seems doing things in this order works just fine.

My Plans If I Was Unlucky
Over on Bill Turner’s site, he’s written an article about Fixing a Dead Garmin GPSMap 60CSx. It seems he’s learned holding down the Power Button and the Up Arrow at the same time while starting the WebUpdater software (I think he has three hands to pull this off), he’s able to force the GPS to identify itself to the updater. Problem is, according to his instructions, you have to keep holding down these button chord during the update; some comments on the blog state it isn’t necessary, and there’ve been mixed results as to whether this works universally or not.

I’m not sure I would have had the bravery to just go killing processes plain outright, but since Bill did such a nice job of providing an alternative, I felt it was worth the risk — even if I didn’t have to go that route. Thanks Bill for blogging your GPS recovery notes.