jobvite-feature

Introducing Job Openings for WordPress

Jobvite is a great recruiting service. I’ve developed a WordPress plugin to help you connect your site to their service.
Continue reading

aws

How to Download an S3 File Using a Different Filename

I was recently working on the downloadable files features on the Cinevee platform and noticed that renaming large S3 files (1Gb+) using the AWS SDK S3 client can take up to 5-10 seconds — making the site feel like its frozen or sluggish. So I created a ‘Display Name’ field in our files table to keep track of the public-facing name of the file.

Not only does this beautify our file names to the customer but it speeds up the responsiveness of our platform for admins (usually DB calls are faster than API calls). Before updating, we recognized this introduced a potential disconnect for the customers who would click to download ‘FEATURE FILM 720p HD.m4v’ but end up with a file that was originally named ‘FEATUREFILM_123.m4v’. Luckily, with AWS SDK2, we can download any file in our S3 bucket with a different filename. Let’s get started.
Continue reading

vimeo

Mr. Carousel, meet Mr. Vimeo. Now talk!

Carousels are a great way to share a lot of similarly weighted content in one block — saving previous page real estate. Carousels with video can be even more captivating. But if you want to add video to a carousel that automatically cycles you may find that Mr. Carousel doesn’t care that Mr. Vimeo is playing and will cycle on to the next slide.

So how do we fix that? Enter Froogaloop outlined on Vimeo’s developer page.
Continue reading

aws-eb

Using Multiple AWS Credential Files for Elastic Beanstalk

At Cinevee, we are developing several forks of our distribution platform for each of our partners. This means we deploy to a different environment in a different AWS account (with differing credentials) for each fork. Re-initializing Elastic Beanstalk eb init before you git aws.push can get annoying when you are switching back forth between projects a dozen times a day (we’re quite agile). So here’s a quick way to setup and switch between your AWS credential files per project.
Continue reading

aws-elasticache

CodeIgniter + Memcached = Happy Appy

Using in-memory caching for your web app can dramatically increase the responsiveness of your web app (Apdex) — especially if you make a lot of database calls or complicated joins. Getting caching setup for your web app but also for your development environment can be, well, a pain in the ass. So here’s my step-by-step guide to implement memcached (not memcache, as ElastiCache uses memcached) in CodeIgniter that runs during development with MAMP 2.0 and in production in AWS Elastic Beanstalk with ElastiCache. Phew. Let’s get started.
Continue reading

aws-eb

SSL Upload & Redirect in AWS Elastic Beanstalk

Create & Upload SSL Certificate

AWS has a great step by step guide to creating and uploading a SSL certificate. You’ll have to download some command line tools: IAM CLI & Java Development Kit (JDK). For Mac OS X users, make sure you download the Mac OS X x65 binary, not the Linux binaries. The JAVA_HOME path for that Java install will be export JAVA_HOME=/Library/Java/Home.
Continue reading

aws-eb

Fixing the Elastic Beanstalk application version error

If you’re using the Amazon Web Service CLI tools to push new version of your Elastic Beanstalk application you might eventually run into the following error:

remote: error: Unable to create application version:
Invalid unicode xml character in CreateApplicationVersionMessage.Description at index 13

or

! [remote rejected] HEAD -> master (hook declined)

Continue reading