Clockstagram – Communication Arts webPick of the day

Clockstagram
Yay! Clockstagram got some attention today… Communication Arts selected Clockstagram.com as their webPick of the day!

Clockstagram is a simple app that displays the current time using images from Instagram’s most popular feed. The site is fluid and adapts perfectly to various screen sizes. You can run Clockstagram.com on your iPhone as well as a widescreen monitor. I’ve repurposed an old iPod Touch as a bedside photo frame. I’ve also had fun projecting a huge clock on my wall using a projector.

Clockstagram is also available as a free iOS app for iPhone and iPad. Since releasing over the summer, I’ve received many ideas for new features for the next version.

Please follow @clockstagram on Twitter and Instagram for updates on the next release!

Posted in Uncategorized | Leave a comment

Instagram Engineering Challenge: The Unshredder

Instagram recently released a challenge to create an algorithm that reconstructs a “shredded” photograph into its original form. You can read more about the challenge on their blog. You can also jump to my solution or read on for how I decided to solve the problem.

Meanwhile, here’s an example image they provided.


There was also a “bonus” component… auto-detect the width of the strips.

I chose to use Processing because I could visually work out my approach which was…generally… find the left-most strip… then recursively work out which strips best matched the right edge of that strip using the average RGB value of their left edge.

Here it is in detail.

Bonus – find the strip interval:
1. Iterate over every column of pixels, create an Object representing the column, determine an average RGB value for the column and assign it as a property.

2. Compare each column’s RGB value to the column to its left and save the difference as a property.

3. Sort the columns by the difference.

4. Do some crazy shit to find a list of the lowest common multipliers between the position of the last two columns. The lowest value that represents a strip edge is the strip width.

Now that we have the strip width:
1. Iterate over the strips and create Objects representing the strips in an ArrayList.

2. Iterate over the strips’ left and right edges and assign the average RGB value as properties.

3. Find the left-most strip by finding the left edge with the largest difference in average RGB value from all the right edges.

4. Start placing strips by finding the left edges that most closely match the average RGB value of the right edge of the last strip placed… gasp…

Anyway, check out my solution. Processing turned out to be a good choice for prototyping the solution… and once I had it, why not publish as a java applet?

While we’re talking about Instagram, check out my cat.

Posted in Processing, Projects | Leave a comment

BKNYdesign.com

If you design and build websites, you may have heard of responsive web design. If you’ve used a website on your phone and realized it was just as functional as its desktop version, you’ve encountered the responsive approach to building sites.

FOLDI is happy to announce the launch of BKNYdesign, a website for Paula Patterson’s design shop that fully embraces responsive web design principles.

BKNYdesign.com

So why was it so important to take a responsive approach?

First, because BKNYdesign’s debut product is a beautiful, handmade iPad accessory stand called the V-luxe, the site had to function especially well on iPads.

Second, the shop’s second release will be the V-luxe Junior, a smaller stand for the iPhone. So of course, it makes sense for the site to render well on smartphones.

Third, BKNYdesign needs to exhibit at upcoming design shows and needs a big display that will attract visitors approaching the booth from a distance. Stretching the website across a 27-inch iMac or similar large display is a great low-cost solution.

Because BKNYdesign would rather spend time building cool furniture than web sites, time and resource constraints meant building three separate sites was not option. One site would have to adapt to the three critical contexts outlined above.

Enter responsive web design. On large screens, the beautiful product photos scale up to full resolution. On tablets, the images scale down while remaining crisp and clear. On smartphones, the images scale while the site navigation transforms into a touch-driven menu.

Please visit BKNYdesign and leave any comments or questions below. Thanks!

Posted in Projects | Leave a comment

Clockstagram available on the App Store

I’m happy to announce Clockstagram is available in the App Store!

Now you can turn you iPhone, iPad or iPod touch into a photo frame that displays the current time using photos from Instagram’s “Popular” feed.

It’s also FREE. I’ll be updating the app with some new features in the next version. Meanwhile, please check it out and leave any feedback on iTunes or in the comments section below.

Clockstagram available on the App Store


Posted in Projects | 2 Comments

Clockstagram.com

ClockstagramWhile playing around with Instagram during the NYC Mermaid Parade, I had an idea about creating a clock using Instagram’s most popular feed. You can check it out at:

http://www.clockstagram.com

I’ve been letting it run on an iPod Touch that’s gone unused since I picked up my iPhone… not bad for a bedside photo-clock. Meanwhile, I’m working on releasing it as an iPhone/iPad app.

Please check it out… I’d love to hear comments or suggestions… just leave them below. Happy Instagramming!

Posted in Projects | 1 Comment