sunset

In 2014, I stretched myself pixel-thin. With a new baby, my wife home full-time, and more bills to pay, I took on every client job I could. I worked on personal side projects as well—too many, in fact—and before I completed any of them, 2015 had rolled around.

Determined to make a change this year, I’m going to focus on one side project at a time until each is finished. So far, it’s working wonders and I launched my first side project of the year: Free Nature Stock. Every day, I’m going to post a nature-focused stock photo that you’re free to download and use however you want.

Why another free-photo-a-day site?

The niche has been filled, I know. Unsplash paved the way and there have been a number of similar sites made since. The reason I built Free Nature Stock was to serve as a personal motivator. The project will give me an excuse to take a computer break, grab my DSLR, and trek into the woods every week. As a bonus, you get free photos out of the deal and I’m excited to see where they get used.

How it was made.

I built the site in half a day using Tumblr. I normally prefer building a custom WordPress site but opted to save time and bandwidth.

For serving the actual photos, one issue I found was Tumblr automatically compresses high-resolution photos. I debated using Dropbox to deliver the photos but learned that they cap daily bandwidth on paid plans to 200GB. I would likely never reach that limit via Free Nature Stock but since I regularly use Dropbox for other large work files, I didn’t want to risk it.

Ultimately, I signed up for an Amazon AWS account and am using their S3 service to host the photos. The major drawback I found was the AWS interface is hideously clunky. Not only does it look outdated but little things bothered me like the filename ordering. For example, numbers don’t go by smallest to largest so you end up with an order like 1.jpg, 10.jpg, then 2.jpg.

To solve this problem, I no longer use the online AWS account and instead FTP files using Transmit. As some of you may already know, the catch with FTPing to S3 is all of your uploads are marked as private by default, requiring me to still log into AWS and change the photos to public. To permanently solve this issue, here’s what you can do:

  • Log into AWS.
  • Navigate to S3, then find the folder where you want files to be public by default.
  • Click on that folder to show it’s settings in the right pane.
  • Click “Perminssions” in the accordion, then click the “Edit Bucket Policy” button.
  • Enter the following snippet into the popup and then save. Make sure you change “your-folder-name” to the real name of your folder.
{
 "Version": "2008-10-17",
 "Statement": [
 {
 "Sid": "AllowPublicRead",
 "Effect": "Allow",
 "Principal": {
 "AWS": "*"
 },
 "Action": "s3:GetObject",
 "Resource": "arn:aws:s3:::your-folder-name/*”
 }
 ]
}

That’s it. Now when you FTP to that bucket, those files will automatically be publicly visible.

To monitor photo stats, I’m using Bitly. Not a lot to explain there.

Automating the site as much as possible was a big requirement to save me time. I’m using Tumblr to queue future posts so I can batch upload and let the site run itself. Tumblr also has a basic auto-tweet feature but I didn’t see a way to edit what the default tweet message would be. Instead, I’m using Zapier so that I have more control over the tweet’s content.

Will free be sustainable?

If you read my article on lessons from Design Kindle, you know that giving away products for free is not a good idea for many reasons. However, Free Nature Stock is different in that I’m often taking nature photos anyway. Using free services, such as Tumblr, will also help me keep running costs to a bare minimum.

Go forth and create.

Get your nature-loving hands on those photos and follow the project on Twitter for a new photo every day. You can help out by spreading the word and feel free to show me what you create with the photos. Enjoy!