Finally adding Video support to ZenSync!

I’m in testing phase of ZenSync – I’ve added video support, and improved some error handling, as well as started using the newest API. Will post when complete.

It’s been a while!

Posted in Uncategorized | Leave a comment

Apple Maps really IS that bad

I went on a trip to Redmond this week, and decided to stay with family the first night.  Not knowing exactly where I was going, I just let Apple Maps guide me – with the 6.0 release, it includes turn-by-turn instructions – much nicer experience than Navigon.  My brother-in-law’s family isn’t exactly in the North Bend City Center, and Apple’s reputation with Maps isn’t, shall we say stellar.  But, when I told my iPhone to map his address, and the pin went right to the general area I expected it to be, I decided to give it a shot.  So, off I went!

Now, I’m sure you can guess where this story is heading – idiot, on the road, relying on technology too much, disaster strikes.


The thing is, though, this story turned out worse BECAUSE I KNOW APPLE MAPS HAS PROBLEMS!

See, when I turned off the highway, the environment was fairly rural, but not out of my expectations.  When I originally selected my destination, Apple Maps confidently pinpointed his home – no ambiguity, no question, no grey area.  I assumed that if there was any doubt, the Maps App would inform me.  I know, I know.  Assume.  Ass-ume.  When you assume, you make a… moving on.

So, when I got to the dirt road, I said, “Hey, it’s probably a short cut, or they just mislabeled a connector as a paved road.  No big deal.  I’m close, I’m early, it’s all part of the adventure!”


So, when the dirt road started to have potholes, I got a little nervous, but I said, “I’m only about a mile away according to Apple Maps, and I’m on-time, fine, I’ll keep going.”  So, I soldiered on.


So, when the friendly Siri lady told me to take a left here, I decided enough was enough.

photo 1

If you can’t read the sign, I’ll help:

  • “Area Closed to Motorized Use”
  • “Road Closed to Motorized Vehicles”
  • “No Shooting” (with bullet holes, natch)
  • “Discover Pass Required” (because, you know, NOBODY HAS EVER BEEN HERE BEFORE!)

I was able to turn around, back-track, get a cell signal, and have my brother-in-law just talk me through it.  I’ll live.

So, in conclusion.

  1. Apple Maps still sucks, Google was spot-on with the same input data.
  2. I have a new sympathy how people get into these situations.
  3. Who gets fired for approving this cartographic sputum?

photo 2

Those potholes?  Most are 6-12″ deep.  You just don’t know for sure until you’re in one, and you hear that rock-on-metal noise and pray you haven’t just lost your oil pan…

Posted in Uncategorized | Leave a comment

Update Coming…

There are a few errors that have been reported that I’m looking into (dayjob + kids, you know!), and since Zenfolio natively supports video uploading, I plan on forking my custom video upload solution and integrate the Zenfolio solution natively.

It shouldn’t be too difficult (he says before looking at the API….), and should be done soon.

Thanks for all the support & I’m glad that others can use this tool!


Posted in Uncategorized | 4 Comments

Slight change – broken 1.1 API

For some reason, recent changes to Zenfolio have caused Zensync to break.  Not sure why, but I’ve got a fix – change line 82 of zensync.php from:

$client = new SoapClient(“”);


$client = new SoapClient(“”);

and everything should be right with the world again!

I’ll fix the posted version of Zensync2 so it has this fix, but if you have customized code, you can just make the change above.



Posted in Uncategorized | Leave a comment

Zensync & Windows

As Windows is an ever changing beast, I figure I’d update my post on using Zensync with Windows:

It’s 5 easy steps.

  1. All you need to do is install PHP 5 (currently 5.3.0), use the default options (SOAP is installed by default now, but double-check anyway).
  2. Create a repository for Zensync (C:\Zensync worked for me), copy the Zensync files there.
  3. Edit the config.php file to point to your localpath, and add your username and password.
  4. Copy your files to your photo repository in whatever order you desire.
  5. Launch a command-line (cmd.exe), and CD to your Zensync directory, and type “PHP zensync.php”.

There, done.  That was easy, wasn’t it?  🙂


Posted in Uncategorized | 2 Comments

Zensync 2 – finally!

Many thanks for Harald over at Hirim at harim fotografien for making Zensync2 happen – he basically took my rag-tag code and made a proverbial man out of it.  It’s much better now, more robust, more international, more more.

I’m adding my version here – it’s his, tweaked a bit for my personal needs.  I upload my videos to a webhost where I use Flowplayer to play flash and h.264 videos that I convert from my digicam.  Works pretty good, but you’re on your own for making it work.  It’s easy if you have a Dreamhost account, though!

Thanks again to Zenfolio for having such an awesome service!

Dan’s modified Zensync2:

Linux (.tgz) format: Zensync2.tgz

Windows (.zip) format:


Posted in Uncategorized | Leave a comment

Still Alive!

Hey all, it’s been forever since I’ve made an appearance here – there was some horrible SPAM coming in, and weeding out the comments from the SPAM was just too much (like 1000:1 ratio – seriously!).

Anyway, I put in a filter and it seems to have gone away, so now I can actually see comments. I’m going to take a look at Zensync and see if there’s some things I can do to improve it, and perhaps include my video hosting hack that I put in my copy (I point to videos on my Dreamhost account with a thumbnail I generate, but it’s a SERIOUS hack).


Posted in Uncategorized | 2 Comments

Running on XP

There was a request for instructions on how to run Zensync on Windows, specifically XP.  Someone has previously sent me info that it worked, and since I never tried it, I just assumed it did.  And it does – it’s just not obvious if you’re not a PHP coder like I am.  So, since my daughter is sick and I’m at home on this nice Sunday, I figured I’d give it a shot.

Here goes:

First, get the PHP executable from here:  There might not be an installer for the latest version (5.4.0 at the time of updating this), so download the version you are comfortable with.  This tutorial uses the latest available installer (5.3.10).

Install as normal.  Since you probably aren’t running a webserver for this, select, “Do not set up a web server”.  Next, hit the “+” on PHP->Extensions and scroll down to SOAP, and select, “Will be installed on local hard drive”.  The installer should proceed like any other after this.  SOAP should be installed by default in my experience.

On my Windows 7 Machine, you’ll need to set the PATH variable to point to PHP in order for it to work from the command-line.  I won’t teach you how to do that here, but I found this video helpful:

Next, unpack the Zensync.tgz file, I use Winrar from here:, but Winzip would probably work, too.

Now, set up a photo directory in a manner that you are going to use Zensync.  This is totally up to your taste.  I just make a directory in the same location that Zensync.php is, and copy all my photos there.  This really makes it easier on a Windows machine, since you don’t have to account for drive letters (C:, D:, etc..) when you configure Zensync.

Copy, copy, copy, organize, rename, move, shuffle, etc…

Now you need to edit things.  You need to know your Zenfolio username (NOT e-mail!), and password.  You also need to know the location of your photos.  Right-click on “zensync.php” and select Open With…, and Choose Program.  Select WordPad, otherwise the formatting will look terrible.  Edit these 3 lines to reflect your account.  The local directory name could be “photos”, if you want to make it really easy.

$userlogin = “username”;
$userpass = “password”;
$path = “local directory name”;

Finally, if you want the warnings to not show, go to Start->Programs->Php5->php.ini.   Find this line: “error_reporting  =  E_ALL” and change it to “error_reporting  =  E_ALL & ~E_NOTICE | E_STRICT”.  PHP is very strict on its error reporting, and this just relaxes it a bit.

Now, go to Start->Run, and type “cmd”.  A terminal should open up.  From here, navigate to your Zensync directory (“e:\”, and “cd zensync” if it happens to be at “e:\zensync”).  Now, just type “php zensync.php” and it should run!

You could make it a one-click deal, too.  Just right-click on Zensync.php, and “Open With…” and “Choose Program…”.  Browse to “C:\program files\Php” and select “php.exe”.  Check the “always use this program…” checkbox if you want to make this permanent.

That should be it – I created a test Zenfolio account just now, and it uploaded all my photos.

Edit: I just tried this under Windows 7 64-bit using the above instructions and it works great still.


Posted in Uncategorized | 6 Comments

About ZenSync

ZenSync is a tool to help move your photos from your computer to Zenfolio.  It is run from the command-line and syncronizes your photo collection each time it is run. Zensync goes down an entire directory and uploads only those photos that are not already on Zenfolio.  It doesn’t matter how you organize your photos — they just need to be in a single directory tree.  If you are hosting your own photos, using Gallery, or Coppermine, this would be a great tool to help transition to Zenfolio.

 Folder & Zenfolio

It is written in PHP5, and can run on any operating system that has PHP5 installed.  It has been tested on Ubuntu Linux, and should not require any non-standard modules installed to run it.  The code should be pretty easy to follow and modify.

Code Output 

Optionally, it will use ImageMagick’s ‘convert’ command to convert PhotoCD images to JPEG’s, and FFMPEG to create Video thumbnails of AVI files it encounters.

Get the code here: Zensync.tgz

Posted in Uncategorized | 41 Comments

ZenSync Release!

Well, ZenSync was working pretty good, but I wrested the remaining kinks out of it, and it’s working just fine to make it the release!  Hooray!  Get it here:

This release syncs with Zenfolio, creating Albums and Galleries on the fly, skipping over those AVI files that we all love to make with our Point & Shoots, labeling your photos with their filename, and generally allowing you to just fire-and-forget.  Whenever you sync again it just uploads all the new files and skips over the current ones.

What it won’t do is delete a file on Zenfolio if you’ve deleted it from your directory, nor will it know if you changed an existing file and replace it with the new version – you’ll have to manually do that yourself.

But other than those caveats, it’s a nice little program.  I have it running over on my account at Dreamhost and it is pretty smooth and fast.



Posted in Uncategorized | 4 Comments