Ridiculous SmugMug URLs

I now have virtually all my photos available on my personal site running on Marmox™. I had been on SmugMug for several years and had used it as my primary photo distribution site, so last Friday I disabled search engine indexing on SmugMug so that all my photos would be indexed on this site and the SmugMug-based links would be removed. From time to time over the past few days I've performed a Google search just to see if the new Marmox-based photos are being picked up and the SmugMug photos are being dropped. As I examine how Google indexes the old SmugMug-based site, I realize just how extremely ridiculous the SmugMug URL system is.

To see which of my photo galleries have been recognized as moved by Google, I typed in the name of one of my Brazilian photography models, "Sofia Laura". The first link returned by Google was spot-on: Google gave me back the main public Sofia Laura gallery at <http://www.garretwilson.com/photography/people/sofialaura/>, which is part of my personal site running on the Marmox™ Network. Just three links under that was a link to photos on SmugMug which Google had not yet removed from its index. But what sort of URL was it? Google had indexed the following URL on SmugMug: <(old domain on SmugMug) /gallery/2271498_YAWUZ/1/118656302_Petto/Medium>.

If that looks like a nightmare of a URL, it is. It's not just an issue of aesthetics. Because of SmugMug's system of managing URLs, Google has somehow randomly indexed a particular photo at a parcular size and associated that with search term. Under SmugMug's URL system, it's difficult to distinguish relationships among categories, galleries, and photos.

Before explaining how SmugMug manages URLs, let me first explain a little about how Flickr uses URLs. Flickr has several URL schemes (or at least did several years ago when I last used Flickr extensively). One is in the form /photos/user/photoID/, like this:

http://www.flickr.com/photos/exampleuser/12345/

That will simply show a photo in the photo stream. If you want to see a photo as part of a specific set, the form is expanded to the form /photos/user/photoID/in/set-setID/, like this:

http://www.flickr.com/photos/exampleuser/12345/in/set-54321/

If I want to see a specific set, you can use the form /photos/userID/sets/setID/, like this:

http://www.flickr.com/photos/exampleuser/sets/123454321/

Flickr's URL scheme could be improved, but it's not as bad as SmugMug's URL scheme, which has been haphazardly expanded as new features were needed, and it wound up being inconsistent and not even working in some cases. For SmugMug, you can have a single category in the form /categoryName/, like this:

http://photos.example.com/events/

But for a subcategory, you're stuck with a number in the form /categoryName/subcategoryID/

http://photos.example.com/events/12345/

Then for an actual gallery, the form suddenly becomes /gallery/galleryID/, like this:

http://photos.example.com/gallery/54321/

But what about an actual picture within the gallery? The form becomes /gallery/page/photoID/, like this:

http://photos.example.com/gallery/54321/1/67890/

But why is there a page in the URL (you'll notice the "1")? Because SmugMug's default layout allows you to page through photos. But if I have a thumbnail-only view, then a page has no relevance—but SmugMug continues to add it to the URL, even though it isn't used and makes no sense. Furthermore, if you click on a link in the form above, it doesn't actually go to the picture—it goes to the thumbnail-only version of the gallery. That's because if your gallery shows thumbnails only, SmugMug even ignores the photo ID in the URL ("67890") and doesn't show the requested photo but instead shows all the photos.

The only way to show an actual photo inside a gallery is something in the form /gallery/page/photoID/size, for example:

http://photos.example.com/gallery/54321/1/67890/Large

That will give you the photo in the gallery. Again, the page number ("1") is ignored, because it has no relevance in this context. But here's the problem—why specify a size? What if the user has specified that they want by default to see the medium or small version of the picture? In short, SmugMug (unlike Flickr) allows no way to indicate with a URL that a single picture should be shown in the context of a gallery, without indicating an irrelevant page and without specifying what size the pictures should be. It's all just a buggy hack, and SmugMug (after many, many emails from me) has shown no interest in fixing the problem, sometimes even claiming that this isn't a bug, even though I've illustrated many instances within their site where URLs are used without the size indication but that do not work correctly if the site owner has changed the default layout of a gallery.

Let me make a few things clear about SmugMug. Everyone I've talked to at SmugMug, down to the last person, has been very cordial and friendly. The people at SmugMug provide some of the nicest and patient support available. On the other hand, SmugMug has refused to even acknowledge that some issues are system bugs that need to be fixed. At the end of the day, SmugMug has not met my needs as a consumer. The shortcomings of SmugMug, along with SmugMug's unwillingness to address them, were some of the biggest motivations I had for creating Marmox. One of the most prominent of these shortcomings is the haphazard, illogical, and unuseful URL system on SmugMug.

In this case, not only is it difficult to share link to a single photo with someone else, it produces crazy URLs that get indexed erratically by search engines. The URL segment nesting (e.g. categories and galleries) can only be two deep, and once you get past the category level, there's no way to specify the segment name of the gallery itself. URLs are not case sensitive, and the URLs of galleries in categories are not even under the category URL.

In Marmox, of course, none of this is a problem. Create as many nesting as you want. Name each semgent anything you want. You can easily link directly to a "gallery" (a Marmox folder) which can contain "sub-galleries", or link to a specific image. And for each folder and/or image (or audio file or PDF, for that matter), you can specify a display title, which is distinct from its URL segment name.

SmugMug recently added a feature I had asked for a long time ago: the ability to hide specific images like Flickr has always been able to do. Of course, this feature is still light years behind what Marmox allows. In Marmox, just bring up the access properties for any photo or folder and choose from many options, specifying whether everyone can see only previews, or whether only one person can download the full-sized photo but other users, can't, or whether the folder is hidden to all but a few people, etc.

When I got ready to effectively turn off SmugMug as I switched to Marmox, I asked SmugMug if there is a way that I could hide entire categories of galleries on SmugMug. There isn't—I would have to go into each SmugMug gallery and manually set it to private. Luckily SmugMug does have the ability to leave the galleries public but turn of indexing by search engines for the entire site, so I chose that option. Now I'm waiting for Google to do its work, and soon all my photos will be indexed on my personal site running Marmox, using logical, consistent, readable, and usable URLs.