This page could not be found.

Blog

November 3, 2011

Flex Box Width Inconsistency Across Browsers

Using Flex Box for the first time, I've run into an issue with Firefox vs. Chrome/Safari. In the example below, you'll notice when viewed in Firefox, the inner green box's border extends off the page. However, when viewed in Webkit (Safari/Chrome), the inner green box's border is constrained to the same width as the outer flex box.

I'm not sure which implementation is correct, but it makes sense to me that the child element would inherit the width of the parent flex box regardless of content that's 'too wide' to fit.

What's really unfortunate is that setting the width property on the inner box dynamically to the width of the outer box has no effect. This is probably the Right Thing to do from the browser's perspective, but it doesn't help me solve the inconsistency.


View the flex box problem demo.
August 30, 2011

CSS3 - Glowing Lights / Orbs

As I get back into UI work (oh, how I missed you), thanks to my new employer, it's fun to see what's possible with straight CSS now.

Gradients, highlights and glows, oh my!



July 4, 2011

Why Generic Redirects Are Bad

While perusing my Facebook news feed, I saw a link share from a friend. It had your typical spam-laced title & image. 'This girl learns why to always turn your webcam off,' along with a photo of a vagina. The odd thing was the URL it was sharing from, which was Harvard Business School.

After grabbing the URL without ending up on whatever deadly page lay on the other end, I discovered that Harvard Business School (HBS) had created a classic web development error - a page on your server that redirects someone to any page on the Web with a simple parameter in the URL.

This is frequently done in order to track links, whether Javscript is enabled or not. It's quick and easy to code. It will look something like this:

http://RyanGillespie.com/redirect?url=ComputerVirusWebsite.com

The Trust Problem
The first problem, as I see it, is you now have a URL that starts with your own, audience loyal domain name. The general public has a hard enough time looking at URLs to know whether or not to trust a site. Your redirect makes that task even more difficult. Your loyal users may now be shepherded into sites that expose them to the latest in web viruses.

Let's start with another real example. I've ragged on Yelp before about this a long time ago and since they still do it to an extent, I'll point to them. Yelp has this URL:

http://www.yelp.com/redir?url=

I can create a page on the Web that looks just like the Yelp login page and start snatching passwords by redirecting people to it. The URL begins with yelp.com so someone would assume if the page they land on looks like Yelp, they arrived at the right page. After I steal the password, I can redirect them from my fake page to yelp.com, so they are none the wiser.

I've heard arguments against this which say, 'who cares if they steal the password for my website? I'm not a bank or holding any other credit card type information.'

First, ask your users how they feel about it. I'm sure they wouldn't care for that attitude. Some people invest a lot of time & effort into these sites and if someone were to erase all of their hard work, they'd be upset. Respect your users or face their wrath.

Secondly, and most worrisome, is many people use the same password for everything on the Web. Their GMail password is the same as their Twitter password or their password to a random craft beer forum. This is not uncommon. Once someone gets the password for your site, they suddenly have access to everything. And no, you can't say, 'Well, that's the user's fault for being stupid.'

The Social Problem
I think the Trust Problem is bad enough, but for those who insist on discounting it, here's a problem I think will get your attention.

Do you want your users to be able to share on Facebook? What if Facebook suddenly shut off all links to your site? Not only that, any time someone were to try to share your site, they get a message that says your site is known to be 'spam or abusive.' Yikes! Not exactly good marketing.

The problem lies partially with you. Spammers know that a URL that looks unsual is less likely to be clicked by others on Facebook. However, if they can get the URL to look like a site someone would trust, like in the case of the Harvard Business School situation I mentioned above, they'll assume it's safe. If you put the HBS URL into Facebook now, you will get the 'abusive or spammy' message.

The Solution
We need to let our users create links in some instances. There's no getting around that. But when it happens, we have to do 2 things and do them loud and clear. First, inform them they are leaving the trusted website and second, give the user the option to stay or leave.

This can be achieved by not placing your own domain at the front of the redirect. If the URL doesn't look like your URL, then there isn't a problem. It communicates both points to a user. As for tracking with this method, an asynchronous Javascript call to your tracking service will work. It doesn't catch users without Javascript, but that's a very small percentage of people.

If you insist on using a URL that redirects from your own domain, create an intersitial page that alerts a person they are about to leave your domain and explicitly show the URL they are about to visit. Also, provide links or buttons to continue to the URL or return to your site. Blogger is an example where this technique is used. You can optionally create a white-list of domains you allow to pass through the interstitial page.

I, personally, prefer the first option as interstitials are annoying to people. And if your site has a lot of external links on it, you're creating a big headache.

The Stubborn Solution
Okay, say you refuse to have an interstitial and you insist on redirecting from your own domain. I don't advise it, but something you can do to hopefully protect yourself from getting Facebook banned is using their open graph sharing meta tags. Don't display your own site's credentials in the redirect page and ensure the redirecting URL is clearly visible. You don't want to be associated with the redirected page!

June 8, 2011

Scribble for Android Released

My first PhoneGap game is now available in the Android Market. And it's entirely FREE, you lucky people! Search for 'scribble' and look for the hot pink letter S icon.

Special thanks to Donna for helping me to kick the tires and providing some great inspiration and creativity along the way to release 1.0! She made the doodles seen in the logo and samples.

Visit the Scribble website.

May 13, 2011

HTML5 canvas tag toDataURL support in Android

I've written a PhoneGap plugin to enable toDataURL on the canvas tag.

Visit the PhoneGap section.

May 11, 2011

Update: PhoneGap FileSystem Made Easy

My easy read/write file system code has been improved.

Visit the PhoneGap section.

May 9, 2011

PhoneGap Section Added : Android Text Input Notes Added

I'm preventing a PhoneGap mess on this blog by creating a separate section for the lengthier pieces.

Visit the PhoneGap section.

May 5, 2011

PhoneGap: Simplified File Functions

Frustrated by PhoneGap's new (0.9.5) file system implementation? Want simple read/write functions?

Visit the PhoneGap section for my code snippet.

Apr 24, 2011

DCAF released - the lightweight, non-framework framework ;)

Update: Documentation has been added to DCAF on setting up Google Analytics for tracking page views and links on your site.

I've taken the time to generalize and heavily document the website structure and coding techniques I've used for both this portfolio and my photography site. It's called DCAF - Don't Call it A Framework. It's a great way to start building your dynamic site with PHP and includes AJAX navigation with SEO-friendly markup intact.

Download & learn more about DCAF

Apr 11, 2011

SWM ISO Interesting Opportunities

I left Videoegg/Say Media a month ago to focus on taking a bit of a break and I'm starting to feel the urge to get back into the game. Could you use a designer/developer hybrid? Let me know. I love start-ups, photography and long walks on the beach.

Check out my resume

Apr 11, 2011

Photo portfolio relaunch

I decided to make my photo portfolio a lot less flashy and more organized. Over time, I'll be adding a lot more of my photography.

The site uses my MVC Blueprint (don't call it a framework) that I hope to have up on my portfolio soon for others to leverage. It's an organizational contruction in PHP that allows for AJAX navigation with complete web crawler navigation intact. I'm not a fan of heavy-handed frameworks (call me a control freak), so this is meant to be in the lightweight category.

Visit ryan gillespie photography

Jun 12, 2010

Art collaboration site goes live

Finite and Infinite Games is a collaborative art project between a choreographer, filmmaker, visual artist & fashion designer. The launch, timed with their visit to Art Basel, utilizes motion design without Flash to create a broader reach of mobile devices.

Visit Finite & Infinite Games Film

Apr 19, 2010

Flash samples added

I've been working at Videoegg for over a year making a ton of ads and generally flexing my AS3 and expediting skills. Roll on over to the Flash section of my portfolio to see some of ads that involved unique integrations and features.

View Flash samples

Feb 22, 2009

Scribble for Facebook is live

Scribble is game played on Facebook that challenges your doodle imagination with your friends. My first Actionscript 3 project.

Play the Scribble game

Feb 7, 2009

Snapshotist is live

Update: snapshotist.com has relaunched with a new design. The previous site is available if you're feeling nostalgic.

After years of keeping my photos private, I've finally created a Web site to showcase some of my photography at snapshotist.com .

Visit ryan gillespie photography

Aug 5, 2008

52 Clix goes live

I designed and developed a weekly, themed photo assignment Web site from the ground up using almost every skill I've learned over the last 10 years.

Visit 52clix.com photo assignments