Why Netflix and Agent use Amazon's servers

The scale of Amazon Web Services(AWS) is a closely held secret, but it's big. Really big. Just take a look at theircase studies. Netflix, Aribnb, Comcast, and even the CIA use it. And that's just the tip of the iceberg. AWS isn't just for the big guys though. Businesses small and large can benefit from its scale.No matter the business, you're likely generating a lot of data. We knew Agent would, and the good old days of USB sticks, portable hard drives, and YouSendIt emails wasn't going to cut it. Once, I even hand carried a pelican case full of hard drives to a colleague in Vancouver. Sharing data can be hard enough, but we also needed a safe place to keep it all. And according to the Computer Sciences Corporation, our hunger for storage is growing rapidly.

According to the CSC "data production will be 44 times greater in 2020 than it was in 2009."

Basically, you need a plan for your data, and one that considers the long haul. This is where AWS really shines. Specifically Amazon S3. It's scaleable, secure, and cheap. At only $0.0300 per GB, it's one of the cheapest cloud solutions out there. And the 99.999999999% durability rating makes it a lot more secure than your server in the closet. 

Why Agent uses S3

Our average project generates dozens, if not hundreds, of files. Everything from small text documents to large video files. We use public links in our S3 buckets to collaborate between teams, share files for review with our clients, and to deliver each finished project. We automatically backup those files to another private bucket to store project files forever. 

How to build your own Dropbox using S3

So, how do you take advantage of Amazon's giant hard drive in the sky? 1. You could have Agent do it for you. 2. You could do it yourself. If you take #1, just skip to the end. If you want #2, go get a big cup of coffee and keep reading.Disclaimer: AWS is built for developers; meaning that you'll need to use some code. Luckily, most of it can be copy/pasted into your account. Things might seem overly complicated, but it's nothing a quick Google search can't fix.Still here? Great. Let's go. First, you'll need an account. The AWS Free Tier will get you going with 5GB of storage for the first 12 months. Go here to get started. Now that you've created your account you'll need to setup a user. Navigate to "IAM" under services and find the Users tab. Once there, you should see a big blue "Create New Users" button. You'll just need one to get started. Name it something simpler "s3user". AWS will generate a Access Key ID and a Secret Access Key.THIS IS IMPORTANT: download that file and keep it somewhere safe. Those are your credentials and will allow you to access your bucket. Next, you'll need to attach a policy to that user. Select it from the list and click "Attach Policy." Amazon supplies a lot of default policies, but you only need to find "AmazonS3FullAccess." If you're curious you can see the policy code below. Once found, simply attach the policy. This gives your user full access to read and write all of your S3 buckets which we'll create next. 

Amazon S3 Full Access on GitHub

Now to make your first bucket. Think of a bucket like you do a hard drive attached to your computer. It will need a unique name much like a website does. Make sure you keep it simple, and avoid using underscores or other special characters. Use a dash if you need a space. Something like "my-bucket-name". Navigate to S3 under services and click "Create Bucket." This will prompt you to name your bucket and select a region. For this example I'd suggest using "US Standard". It's the go-to region on AWS located in Virginia. Once created, click the little magnifying glass icon next to it's name, and find the permissions drop down on the right.Your bucket needs a policy just like your user did. This can get complicated, but we'll use a simple one that gives everyone with a link permission to read the file, making sharing very easy. Click "Edit bucket policy" under permissions and copy/paste the following code into the prompt. THIS IS IMPORTANT: Before saving you need to change the bucket name on line 11. Replace "YOUR-BUCKET-HERE" with your bucket's exact name.

Amazon S3 Bucket Policy

That's it! Well, almost. Your S3 bucket is all set. Now you need to access that bucket. Those of you familiar with FTP clients will feel right at home. We us Panic's Transmit, but Cyberduck is a good, free alternative for both Mac and Windows.With Cyberduck running, click "Open Connection" and choose S3 from the drop down menu. Remember those credentials you downloaded? Yeah, here's where you need those. Copy and paste your Access Key ID and Secret Access Key into the appropriate fields and click connect. Boom! You're in your own private little cloud.Now for the fun part... Upload a file you'd like to share. Maybe a cute picture of your dog? Once uploaded you can easily share the link by right-clicking the file and choosing Copy URL > HTTP URL. Paste the result into your browser and you should see that cute dog picture ready to be shared with the whole internet.Congratulations! You just setup your own cloud storage solution on the cheap. 

Want the cloud without the code?

What can your company learn from our ad company about the cloud? We work remotely from OKC and DFW, and we need to access big files from anywhere, anytime. There are a lot of good solutions out there that don't require any knowledge of code, but they often don't cater to specific challenges many businesses face. If you're one of those people, let us know, we'd be happy to help.

Matt Doane
Matt is co-founder of Agent, lives in Fort Worth, and is responsible for art direction, photography and too many things to list here.