Skip to content
Menu
Justin Ball
  • About
  • Privacy Policy
Justin Ball

How to manage 60,000 digital photos

Posted on September 24, 2007October 25, 2021

QUICK UPDATE: If you want reliable backups for you photos check out my post on using S3.

A friend of mine was surprised that I don’t have a Flickr account. I am try to keep up with the cool kids and keep accounts on many of the so called web 2.0 services. So why don’t I have a Flickr account?

We use Picasa. How very uncool of us. The reason why however has to do with how we manage our photos – all 60,000 at last count and growing. For years we tried to manage our collection using Adobe Photoshop Elements. However, the application strained under the weight of so many pictures and soon became completely unusable. Before Photoshop Elements there wasn’t really a mainstream application and I considered writing my own, but I already have enough code to write and so I gave that up. There were many applications from small independent developers and many were even recommended by users on various forums. However, none was simple enough for my wife to use.

Then Google bought Picasa and started giving it away for free. We found it to be very fast even when given large numbers of photos to index. The search functionality has been great and my wife even likes to use it. It also integrates with various services that let you buy photos online. You might not think this is a big deal, but I buy my wife a credit to Snapfish for 1000 photos each year and she uses it and then some. Who wants to wait around for some crappy upload manager to crash? We tried Sam’s Club for a long time, but their upload process sucks so they are out. Snapfish integrates with Picasa and they will print your photos the right size. In case you are wondering some digital photos aren’t a perfect 4×6 instead they are more like 4×5.3. Snapfish doesn’t crop your photo instead they print it the right size. I am sure there is some way to figure out the exact details and your photos to come out just right, but I have 60k photos to manage so I don’t have time and why should I have to figure that out.

We don’t exclusively use Picasa. Managing our photos takes a bit of work, but here are the secrets on how we do it.

First I don’t let Picasa import my pictures. I use the default Windows wizard. I work on a Mac and spend plenty of time in the open source world so spare me the Windows sucks crap. The wizard copies my pictures puts then into the same directory every time and then deletes them from my camera. That is exactly what I want.

All the photos are dropped into a folder called “NewPicturesFromCamera”. That folder in turn resides on a 250 gig hard drive that is dedicated to pictures. If you are going to blow thousands on several digital cameras and lenses a hundred bucks on the hard drive won’t kill you. It blows me away that people will fuss over which cleaning kit to use or choose to spend a grand on a lens only to get cheap when it comes time to spend a couple hundred on computer equipment. Spend a hundred bucks and get a hard drive to dedicate to your pictures.

Now that all my new pictures are in the NewPicturesFromCamera folder I walk away – usually. I can queue up pictures in that folder for a few weeks or so. Then when I have a spare minute I run a little batch file that I wrote that renames all the picture in the folder according to the data and time the picture was taken. That bit of magic is made possible by ExifUtils. The app costs 29 bucks and is worth every penny. It also runs on pretty much every OS you might use.

My batch file looks like this:

exiffile /n/r “[date-taken].jpg” NewPicturesFromCamera

That’s all you have to do to change the file names to match the exif data in the picture. Sweet.

Next I copy the files into folders that match the year and name. My drive has a pictures folder. Under that I have a folder for each year 2006, 2007 etc. Under each year of months – 01_january, 02_feburary, etc. Picasa watches this folder for me and automatically adds them as new pictures come in. It then generates thumbnails which makes it very fast to view the large collection. Selecting a photo or group of photos in Picasa and then pressing ctrl k will let you add keywords or tags to the photos. You can then search the photos based on those keywords. No need to have a million folders called “family trip 07” or halloween etc.

You might think you are done at this point but you aren’t. Here’s a dirty little secret: your harddrive WILL die. It is mechanical and mechanical things wear out. Do you think your car will last forever? No. The spinning parts will wear out. A hard drive has spinning parts. In fact it spins at 7200rpm. IT WILL DIE EVENTUALLY.

SO… Don’t be a cheap skate. Unless you really want to loose all your pictures back them up. There are a number of ways to do this. I back mine up to a server that I have in my house that uses RAID 5. You don’t need to do that. Instead spend another hundred bucks and buy an external hard drive. They are cheap, buy two. I know you think that is frivolous. Why spend another $300-400 bucks on more computer crap. Your perspective is wrong. Think of this. That little disk spinning at 7200 rpm holds years of memories. If it dies they are gone. I mean really gone. OK, not gone. You can spend $12,000 and have a forensic lab recover bits and pieces of your pictures. At that point I will call you a moron. So get a backup drive or two. In addition to my server I also copy all of our pictures to a backup drive that I send with my parents. If the house burns down we still have pictures.

Consider the advantage of this system compared to film. Think of how hard it would be to make 3 copies of every physical photo you ever took and then take 1 of each of those copies and have mom and dad store it. They would kill you. 60,000 photos takes up a lot of space.

On to the last thing I use to manage my collection – Microsoft’s sync tool. I don’t like backup software for the most part. It tries to out think you and assume you want all the crap on your computer backed up. The problem is that most programs want to save stuff like the junk photos in the “My pictures” folder. I don’t care. I know what I want backed up and I don’t want to mess with the other junk. Ever try to find exactly what you want in a proprietary backup file? Ever hear the line from a sys admin, “well, if the backups worked we might be able to get your files back.” WTF? Backups tend to be a black box. Put random crap in and get random crap back out. The sync tool lets me specify which files/folders I want to copy and how I want to copy them. They files are not compressed and thrown into some giant file. Instead, I end up with an exact copy of my desktop machine on my server and on my backup drive. I can then use those folders on other computers however I want and the sync tool will pick up on any changes and make it right in all the locations. This process takes more thought on the part of the user but for me it works great.

So there you have it. My total software cost is $29 to manage my photos. My hardware cost these days is around $400 bucks for the various drives I need to run my backup scheme. $429 is half what you will pay for a decent DSLR these days. Think it over and then listen to me because when your damn hard drive crashes and you lose all your picture I WILL NOT FIX IT!

Have a great day.

Leave a Reply Cancel reply

You must be logged in to post a comment.

Recent Posts

  • Around and Back to WordPress
  • Last Lagoon (This Year)
  • Logan Sunset
  • Grami Del
  • FanX (and Lagoon)

Recent Comments

  1. Around and Back to WordPress – Justin Ball on Gatsby 2.0 and Forestry
  2. More Stuff You Shouldn’t Hit on a Bike – Justin Ball on Why Cyclists Shave Their Legs. The Most Disgusting Post I Will Ever Make
  3. First Real Ride on the New Trek Madone 6.9 – Justin Ball on Rode Blacksmith Fork Canyon Tonight
  4. First ride up Black Smith Fork canyon this season – Justin Ball on Why Cyclists Shave Their Legs. The Most Disgusting Post I Will Ever Make
  5. How New Carpet and Rattlesnake turned me into a Consultant or What the Hell Happened? – Justin Ball on Why Cyclists Shave Their Legs. The Most Disgusting Post I Will Ever Make

Archives

  • November 2021
  • October 2021
  • September 2021
  • January 2020
  • February 2018
  • January 2018
  • December 2017
  • November 2017
  • October 2017
  • February 2017
  • November 2016
  • September 2016
  • August 2016
  • May 2016
  • March 2016
  • February 2016
  • November 2015
  • September 2015
  • June 2015
  • May 2015
  • February 2015
  • January 2015
  • October 2014
  • September 2014
  • July 2014
  • June 2014
  • May 2014
  • April 2014
  • March 2014
  • February 2014
  • January 2014
  • December 2013
  • October 2013
  • September 2013
  • August 2013
  • June 2013
  • May 2013
  • April 2013
  • February 2013
  • January 2013
  • December 2012
  • October 2012
  • September 2012
  • June 2012
  • January 2012
  • December 2011
  • September 2011
  • August 2011
  • July 2011
  • June 2011
  • May 2011
  • March 2011
  • February 2011
  • January 2011
  • December 2010
  • November 2010
  • September 2010
  • August 2010
  • July 2010
  • June 2010
  • May 2010
  • March 2010
  • February 2010
  • January 2010
  • December 2009
  • November 2009
  • October 2009
  • September 2009
  • August 2009
  • July 2009
  • June 2009
  • May 2009
  • April 2009
  • March 2009
  • February 2009
  • January 2009
  • December 2008
  • November 2008
  • October 2008
  • September 2008
  • August 2008
  • July 2008
  • June 2008
  • May 2008
  • April 2008
  • March 2008
  • February 2008
  • January 2008
  • December 2007
  • November 2007
  • October 2007
  • September 2007
  • August 2007
  • July 2007
  • June 2007
  • May 2007
  • March 2007
  • February 2007
  • January 2007
  • December 2006
  • November 2006
  • October 2006
  • September 2006
  • August 2006
  • July 2006
  • June 2006
  • May 2006
  • April 2006
  • March 2006
  • December 2005
  • November 2005
  • October 2005
  • September 2005

Categories

  • 2.3.2
  • 3g
  • 3tera
  • 420
  • 51weeks
  • 64bit
  • accessibility
  • ActionView::MissingTemplate
  • activemerchant
  • ActiveRecord
  • activesalesforce
  • acts as taggable
  • acts_as_facebook_user
  • acts_as_nested_set
  • acts_as_state_machine
  • advertising
  • Affiliate Marketing
  • air quality
  • ajax
  • Alyssa
  • ama
  • amazon
  • amazon s3
  • amazon wishlist
  • amazon.com
  • ancestry
  • animal cookies
  • antshares
  • apache
  • API
  • apis
  • apollo
  • apollo client
  • apple
  • Apple Store
  • Apple Time Capsule
  • application
  • applications
  • Art
  • ASP.Net
  • assert_sent_email
  • asyncronous processing
  • Atomic Jolt
  • Aubrey
  • Authentication
  • authorize.net
  • Autumn
  • babelphish
  • back problems
  • backbone.js
  • backup software
  • backups
  • bacon
  • Battlestar Galactica
  • big companies
  • birthday.
  • bitcoin
  • black cherry vanilla coke
  • Black Smith Fork Canyon
  • blockchain
  • blog
  • Blogging
  • bluehost
  • books
  • BoomStartup
  • bread
  • buddypress
  • bug
  • bugs
  • business
  • business. mother's animal cookies
  • cache county
  • cache valley
  • California
  • Cancun
  • canvas
  • capistrano
  • Catholic Church
  • cereal
  • chauvet obey 40
  • checkbox list
  • checkboxes
  • chess
  • Chicago
  • china
  • chocolate
  • Christmas
  • Chrome
  • church
  • Cinderella
  • Cisco
  • cloud computing
  • cms
  • code generation
  • code sprint
  • coke
  • Comcast
  • commerce
  • Common Lisp
  • communities
  • Community
  • complex
  • Computers
  • conference
  • conference software
  • configuration
  • consulting
  • cookies
  • cooking
  • COSL
  • cosmos
  • count
  • courts
  • cows
  • create
  • creative commons
  • cryptocurrencies
  • cryptography
  • css animations
  • cucumber
  • currency
  • Cycling
  • database
  • dataloader
  • date
  • death
  • death ray
  • debugging
  • decentralized applications
  • dell dimension 8400
  • democray
  • deployment
  • developing
  • development
  • Devin
  • diet
  • digg
  • Digital Ocean
  • digital-photography
  • disease
  • disguise
  • disgusting
  • disney
  • disneyland
  • DiSo
  • disposable
  • DMX
  • Docker
  • domain name
  • domains
  • doom
  • dr strangelove
  • driving
  • Dryers
  • DVI
  • ec2
  • economics
  • economy
  • ecto
  • edge rails
  • Education
  • EFF
  • Egypt
  • ElasticSearch
  • elastra
  • elections
  • elixir
  • email
  • Ember
  • Ember.js
  • encoding
  • energy
  • engine yard
  • engines testing
  • engineyard
  • enterprise
  • epp
  • error
  • errors
  • ethereum
  • Event Machine
  • expercom
  • facebook
  • failure
  • Family
  • family history
  • family reunion
  • family search
  • family trip
  • Family Vacation
  • familysearch
  • familysearch.org
  • farmers market
  • fashion
  • fences
  • field trip
  • file uploads
  • Firebase
  • fireeagle
  • fix
  • flat tax
  • flowers
  • folksonomy
  • food
  • France iPad Internet access
  • free book
  • freedom
  • friendfeed
  • friends
  • fuel
  • Fun Stuff
  • funeral
  • Funny
  • funny kids
  • gadgets
  • galleries
  • gamenight
  • garden
  • gardens
  • garter snake
  • gatsby
  • gatsbyjs
  • gearsynper
  • geek
  • gelatin
  • gem
  • gems
  • gems ruby on rails
  • genealogy
  • genius
  • geocaching
  • geotagging
  • girl's camp
  • gistr
  • git
  • github
  • global
  • gmail
  • godaddy
  • Goliath
  • Google
  • google bomb
  • google docs
  • google hacks
  • Gorden B Hinckley
  • government
  • gps
  • grand master
  • grand-teton-national-park
  • graph ql
  • graphcool
  • graphql
  • graphqlsummit
  • great firewall
  • grocery
  • gross
  • group work
  • HABTM
  • Hacks
  • halloween
  • happy
  • has and belongs to many
  • has_many
  • hashgraph
  • Hawaii
  • health
  • health insurance
  • heirachy
  • Heirarchies
  • helps
  • Heroku
  • Holiday
  • home building
  • home improvement
  • home plans
  • homebrew
  • homework
  • hosting
  • house plans
  • House Stuff
  • housing
  • human rights
  • hyperledger
  • i18n
  • ice cream
  • icls2008
  • idaho
  • ideas
  • identity
  • identity_theft
  • iiw2006b
  • image
  • image processing
  • inbox
  • induglences
  • insane
  • inspiration
  • install
  • Instructure
  • Interesting
  • internet
  • Internet Explorer
  • InvalidAuthenticityToken
  • iPhone
  • jackson-hole
  • jamis buck
  • Javascript
  • JavaScript (Programming Language)
  • Javscript
  • Jenna
  • jeweler
  • jobs
  • joyent
  • jQuery
  • jungle disk
  • jurlp
  • justin ball
  • kids
  • knowledge workers
  • lambad
  • laptop case
  • launchup.org
  • lds
  • LDS church
  • learning
  • legal
  • Lego
  • legos
  • leopard
  • lesson
  • Levi Leipheimer
  • Liahona
  • library
  • life
  • lifestream
  • Links
  • litecoin
  • LMS
  • loans
  • localization
  • logan
  • Logan Canyon
  • logistics
  • logitech
  • LTI
  • lucene
  • lucene.net
  • Lucifer
  • luvfoo
  • mac
  • Mac OSX 10.6
  • Mac Ports
  • macbook
  • macbook pro
  • Maker
  • Maker Faire
  • manage
  • marginal changes
  • marion
  • marriage
  • Matt Mullenweg
  • me
  • medicine
  • Meetings
  • merb
  • Mexico
  • micro-blogging
  • microcontent
  • microformats
  • Microsoft
  • Middle East
  • migrations
  • mom
  • money
  • Monitor
  • morph
  • morph exchange
  • morphexchange
  • mortgage
  • mosso
  • motorcycle
  • mountain biking
  • Mountain West Javascript
  • Mountain West Ruby
  • mountain west ruby conference
  • mountainwestrubyconf
  • mozy
  • MRI
  • mtnwestrubyconf
  • muck
  • multi-user
  • music
  • mwjs
  • mwrc
  • mysql
  • mysql gem
  • MYTecC
  • Neat Stuff
  • neighbors
  • newgem
  • No Programming
  • node.js
  • nuclear weapons
  • nutcracker
  • Oahu
  • Oauth
  • oauth-plugin
  • Obama
  • Obie Fernandez
  • OER
  • OER Glue
  • olympic torch
  • olympics
  • omniauth
  • Open Assessments
  • open source
  • OpenContent
  • opened2007
  • OpenID
  • opensocial
  • optimism
  • ordered tree
  • oreos
  • osx
  • outdoors
  • outsourcing
  • ozmozr
  • pain
  • panasonic plasma
  • Paris
  • password recovery
  • payday lenders
  • paypal
  • pety
  • PGP
  • Phil Windley
  • photography
  • photoJAR
  • photos
  • php
  • pickle soup
  • pickup
  • piclens
  • Pictures
  • plasma tv
  • Playa Del Carmen
  • plugin
  • plugins
  • poinsettia
  • Political
  • politics
  • portablecontacts
  • PostGreSQL
  • PostGresSQL
  • poverty
  • privacy
  • problems
  • product: web
  • professional
  • Programming
  • Projects
  • prophet
  • protect_from_forgery
  • protests
  • prototype
  • psych
  • psychology
  • queue
  • rails
  • rails 2.0
  • rails conference
  • Rails I18n Textmate bundle
  • RailsConf
  • RailsConf07
  • rake
  • rant
  • react
  • react router
  • React.js
  • Reactive
  • reactjs
  • reactrouter
  • realestate
  • recipe
  • recommender
  • records
  • red green
  • redirect_to
  • regular expressions
  • relay
  • religion
  • render
  • replace
  • reputation
  • require.js
  • research
  • REST
  • restaurant
  • rFacebook
  • ridiculous
  • rightscale
  • ringside networks
  • river
  • river trail
  • robots
  • romantic
  • roomba
  • rpsec
  • rspec
  • rspec bundle
  • rss
  • ruby
  • Ruby On Rails
  • Ruby On Railst
  • ruby_on_rails
  • rvm
  • s3
  • sad
  • Salesforce
  • samsung ml1740
  • sarah sample
  • scalability
  • School
  • Science
  • scorm
  • scream
  • script.aculo.us
  • SDK
  • search
  • senate
  • SEO
  • serverless
  • servers
  • sessions
  • shopping
  • shortcodes
  • shoulda
  • sign language
  • simple
  • small business
  • snakes
  • Snelgrove
  • social graph
  • social media
  • social network dilution
  • social networking
  • social search
  • Social Software
  • socialsoftware
  • society2.0
  • soda
  • software
  • software design
  • Software Development
  • solidity
  • solo
  • soviet union
  • sovrin
  • sql
  • sql server
  • SQL Server 2005 Express
  • sql server 2008 express
  • starling
  • start ups
  • startups
  • starvation
  • stm bags
  • stm medium alley
  • storage
  • subversion
  • target
  • tax
  • Teachers Without Borders
  • tech
  • teeth whitening
  • template not foudn
  • templates
  • test-spec
  • testing
  • tests
  • textmate
  • thanksgiving point
  • The Japanese Mafia is controlling the weather
  • The Kids
  • The Plan Collection
  • The Web
  • theming skin
  • theplancollection
  • theplancollection.com
  • time
  • timr
  • tips
  • to_json
  • tools
  • Tour de France
  • transfer
  • translations
  • Travel
  • Travel, Disneyland, LA
  • trees
  • trip
  • truffles
  • tutorial
  • tutorials
  • tv
  • twitter
  • Uncategorized
  • uninsured
  • universe
  • unpack
  • unread
  • upgrades
  • uploader
  • uploads
  • user discovery
  • user interface
  • userfly
  • utah
  • utah government
  • utah senate
  • utf8
  • Vacation
  • values
  • vinegar
  • virtual hosts
  • walmart
  • warranty
  • Waste of Time
  • weather
  • Web
  • web design
  • web development
  • Web RTC
  • Web2.0
  • web2con2006
  • webservices
  • weddings
  • Wesley Connell
  • whereigo
  • wife
  • windows
  • Wired
  • wishlist
  • with
  • word press
  • Wordpress
  • work
  • workling
  • wpmu
  • xml
  • yeast
  • yellowstone
  • zentest
©2023 Justin Ball | Powered by SuperbThemes & WordPress