Effortless Image Resizing
Websites
Monday, 24 May 2010 04:34

Yesterday a new website came to life. It's purpose is to make dynamically sized (and otherwise manipulated) images a breeze. Here's a use case: You have a website where you let users upload images. Think flikr, myspace, facebook. Your users will be uploading images is a variety of formats and sizes, but you will usually want to display these images in a uniform fashion. Typically you have two options to accomplish this:

  1. Resize the images at the time of upload to any formats/sizes that you will need
  2. Resize images to the needed formats/sizes as needed (on-the-fly) with some kind of special GET request

Both of these options are used on many websites and work just fine. However, they're not for everyone. Option 1 requires that you know all of the sizes that you'll need throughout your website. If you decide to change things and you need a new size, you'll have to figure out a way to process all of your images to create that new size. Depending on your website, that may be a lot of images. You also have to store lots of files. With option 2, you have the flexibility of requesting any size you want, but since you're dynamically resizing the images, you have to be careful that you're doing some things that would normally be done for you with a static request. Namely, support for conditional GET requests. You'll also want to be sure you're caching the resulting images so that they're faster to retrieve.

Enter option 3: using the Image Rendering Service at irs.synchrosinteractive.com. This option is very similar to option 2 above except for a few things. First, you don't have to implement any of the logic, which saves you time and money. Second, you don't have to worry about making any mistakes implementing the conditional GET logic, caching, etc. It's all done for you, tested and ready to go. Third, your server doesn't have to do any of the work of resizing images, so there's one less thing to break that you're responsible for.

This service is in very early alpha development. I'm still finishing some features related to performance and you'll notice that the website is dead simple and ugly. However, everything works and you can feel free to try it out a no cost. Stay tuned for updates!


blog comments powered by Disqus