Google Maps ‘streetview’ panoramas and their subjects

When those creepy-camera bearing vans that make the streetview panoramas for Google Maps passes by, remember to keep you eyes on where you are walking.


Google has since corrected this issue by blurring out the picture of the subject.


Fatify App Review..

The Fatify app lets you upload a picture from your iPhone photo library, or take a picture of anyone, and at the press of a button, see how the person in the picture looks possibly 100 pounds heavier. Judging by the results, probably 300 pounds heavier as it makes your any subjects third chin hang down to their chest clavicle.

The best part of this app is that it eerily mimics any person’s image acting normally as if it was a real picture of that person living and breathing instead of just displaying a static image. Of course the behavior is limited to some extent but you can get more behavior if pay to download more as this app is 100% free. With the free features that you have you can the newly obese subject shrink and grow, roll their eyes, fart, sneeze and much more. The image can then be tweeted, put on Facebook, emailed, or have that eerily animated video uploaded directly to your YouTube account. These images are of course saved to your camera roll for later date amusement.

I uploaded some pics of my girlfriend out of curiosity once again just for some late evening amusement. This time, I was able to integrate this app with another app called the Aging Booth.

Needless to day, this integration make any subject obese and old and I am sleeping on the couch yet again.

This was a blessing in disguise however, because it just gave me more time to see how Gisele Bundchen would fair in this app, if she was just a few pounds heavier. Hey, everyone needs one or two silly apps.



Internet Explorer 6 is not dead enough..

Wanted Dead

On Dec. 31st, Microsoft finally announced that Internet Explorer 6 has dropped below 1% in the United States. This usually signifies some type of death in the browser world when your number have fallen below this particular number. When the news first dropped, I was literally ready to rejoice. Whenever I’m tesing a website in Internet Explorer 6, I usually make a separate section in my bug repository just to house all of the nasty CSS issues in IE 6 because of it’s ridiculously poor support for web standards.

When I say web standards, I usually mean HTML 4.01, XHTML 1.0, CSS 2.1, DOM Level 2, and the ECMAScript Language Specification. These are published by international standards organizations, and together,well, define the backbone of the web. So it’s not much of a surprise that Internet Explorer 6 may soon be forgotten.

However is this not really truly the case. As it stands today, these are the current stats of users around the world using Internet Explorer 6.

IE 6 die

World-wide users are still at 7.7% and the U.S. is at 0.9% which means this number has not really dropped much in the U.S. since this announcement in December. So why aren’t we like Norway, Denmark, and Finland whose usage is below 0.5%? Many of the 0.9% here in the U.S. are apparently corporate users tied to old network structures, like me.

So why am I still using it, regardless of the fact that it Well because although these numbers are pretty low, most of our exiting client’s web sites were built to support IE 6 and whenever we make a new deployment, it still has to support IE 6 as per the client. Also, because it’s an iffy grey area about whether to support it or not (Supporting IE 1.1 isn’t so iffy.) because the entire world has not completely jumped on the bandwagon to finally put this browser to rest. Therefore we are stuck developing for this browser and I am stuck testing for this browser.

Now during our requirement building phase with new clients, we now ask if the client wants their new site to support Internet Explorer 6 when we build it. Most, if not all of the time the answer is yes for various reasons. While performing user acceptance testing, the client will also be using Internet Explorer 6 as the foundation for giving feedback and making enhancements, granted they are tied to their old network structure, just like me.

Putting code on your site to state this fact hasn’t worked. Personally declaring ‘I’m officially ending my support for IE 6’, won’t do it either. If you see a half-dead animal on the side of the highway, rejoice in it’s death, but at the same time periodically perform CPR on that half-dead animal, he won’t just die right away. In turn, this is the case with Internet Explorer 6; we simply just have to stop catering to this browser and stop asking the question. And if we are still asking the question, IE 6 really isn’t dead enough. We just have to pull the plug and let go.

I found a CSS bug today on Linkedin..

I was posting a comment on a linkedin group thread today, and I found this little bug. I was a bit curious as to what would happen if a new dynamic message appeared on the site and I triggered an existing flag. The results are below. I was able to reproduce this in all of the major browsers.

Test Case:
Precondition: User has an existing log-in and is part of a group that they can post to.
1. Navigate to Linkedin
2. Log-in with existing credentials
3. Post a comment on a thread. (You can delete it temporarily), click any of the existing menu items.

You will see the following:

Linkedin Bug

The text that was hidden was ‘Click on’ that I could not see or click on, then the visible text ‘Poll to get started’. This is the type of bug that I dislike the most. A bug that affects a major function of the site; even if it’s a message to get to that function.

Tested on: Mac with Parallel’s Desktop (Win 7, Vista, XP)
Browsers: Shipped

Getting a list of all link URL’s on a page with Selenium..

You get a list of all URLs on the page by using the getHtmlSource command to get all of the HTML source code from the page. You can then use either a regular expression or HTML parser to extract what you’d like. In this case; all of the a href elements on the page.

If you’re using Selenium, you can the following code into your script.

This will open up in Safari and get a list of all the link on the page and put the output into your console. If you use this as a function for every page that loads, the output in your console could get pretty lengthy if you’re dealing with multiple pages. It would be better to have this output in a text file.

If you’re using JUnit Reports to do your reporting, you can easily have all that information output into a text file. If you’re new to reporting, please see my post on how to set up JUnit reporting in Eclipse with Junit and Ant.

public void setUp() throws Exception {
selenium = new DefaultSelenium(“localhost”, 4444, “*safari”, “”);


public void testUntitled() throws Exception {“/”);

String htmlSource = selenium.getHtmlSource();
Pattern linkElementPattern = Pattern.compile(“]*href=\”[^>]*>(.*?)“);
Matcher linkElementMatcher = linkElementPattern.matcher(htmlSource);
while (linkElementMatcher.find()) {
Object myurl = selenium.getLocation();

public void tearDown() throws Exception {

The strongest 404 page error…

Megaupload, a major digital locker was recently shutdown recently pursuant to an order issued by a U.S. District Court. In the wake of these events, the shutdown has raised some major concerns about online legal content.

Some companies have already begun changing their policies due regarding content that is copyrited., another popular digital locker stopped allowing people to download files that they had not uploaded themselves. also blocked access from Internet locations that are in the U.S. It seems this may cause a ripple effect for other popular digital lockers as users may be too afraid to upload any media content to lockers out of fear they will be shutdown just like MegaUpoad. Their redirect which I tried to break is pretty much unbreakable and they mean business due to the Federal flier that they left hanging on their domain.

So what does this mean for users of MegaUpload? Let’s take into consideration that lockers are more user friendly in general, and this is one of the main reasons why sharing has become so popular. Your grandmother could basically open her email, click on a link and download a copyrited movie, or any other type of copyrited media your grandmother may be into.

Alternatives such as BitTorrent and PirateBay, are much more difficult to use, but they are also completely FREE. Due to the higher complexity of these peer-to-peer sites, I can only imagine grandmothers across America will start using torrents along with the rest of post-shutdown Megaupload users, as the gravy train it now just, stopping at a different station.

Piratebay doesn’t even seem afraid. I had gone over to their site after the jump, and expected to see a banner of man shivering and sweating, with a cartoon caption ‘I didn’t upload anything, I just host the domain’ plastered horizontally across that banner.

PirateBay didn’t really seem to care about the fall of Megaupload from what I could tell. It’ll be interesting to see if there is a rise of users that start using torrent to get their files. The next time you go over grandma’s house, she may just be a seeder.

In the meantime, please see the indestructible custom 404 page that the authorities have put in place to let you know, downloading is not so legal! If there were 500 Errors, this page wouldn’t change.

Custom shutdown

Aging Booth App..

Aging booth is an app that lets you upload a picture from your iPhone photo library and at the press of a button, see how the person in the picture looks 50 years down the line. There was a similar app called Age My Face Pro that wasn’t nearly as good as this. I paid around $.99 for this app and after playing around with it for a few; couldn’t believe how well of a job this app does in showing a much older version of the person in the selected photo. It’s almost too realistic. It even mimics life(uncut) sucking the happiness out of your face and removing the twinkle from the eye. For Christ’s same, Kristen Stewart looks like the Hollywood vampire fad has run dry many moons ago.

I uploaded some pics of my girlfriend out of curiosity to give her the demo, and well, it’s 12:29am and I’m sleeping on the couch.


Best Practices for null Search Validation

As long as I can remember, I’ve always seen sites with search functions where the user can search the entire site they are served. I’ve always thought what would be the proper treatment to pass null values into the search query.

Usually, validation messages are in place to treat the negative cases involved in testing the Search Feature that you can find on most sites. I’ve seen so many different treatments of how these fields should be validated, but the same rules always apply to the leaders in the game. The game becomes more interesting as there is usually no real estate to put in Search Validation messages.

What does this mean for us testers? We have to observe and explore flows of the folks that have somewhat standardized what the expected behavior of this commonly used function should be.

Let’s see the results:

1. AOL -Search nothing happens when you click Sumbmit, meaning you’re starting from scratch.
2. Yahoo – Directs you to the an alternate Yahoo search page similar, where you can do a ‘formal’ search. (I have a feeling some serious searching is about to be started.)
3. Google – Hitting submit with a null value will get you nowhere on Google as well. You’ve searched for nothing, so you’ve got zero results.
4. Bing – Hitting submit with a null value will also get you nowhere on Bing. You’ve searched for nothing, so you’ve also got zero results. Bing does give you some interesting rollovers to interact with though.
5. eBay – eBay get it’s really right in the fact that if you enter in a null value, it will take you to the site map with every category you possibly could ever want to navigate to and may also prove intuitive to optimize your custom search results to what categories are displayed.

So what’s the best solution? Judging by what these guys are doing, it’s safe to say, your target should end up in either the target’s sitemap OR nothing should happen as the user has not searched for anything. Mobile users hate typing especially on a moving train. It makes them unconsciously nervous to have to think about typing on such a small device.

With that said, No. 1,2,3,4 are all good options. They give you what you searched for; which is nothing. eBay however, gives you a sitemap and the ability to do the same search again; therefore offering you more options than one.

What shouldn’t happen is having your Search results based on the keyword (Search). I did this on and got the following: Search

2460 Results for the term ‘Search’.

This is a lot to sift through.

The 5%…

I got this as a text today. I didn’t check it out because it was from ATT&T. It was either a bill or some promotion or survey, and I already paid my bill.

After reading this message, this can’t possibly can’t be true. I’m on the fence about whether this is a good thing or a bad thing.

5% of users

You’re in good hands with Allstate, just don’t try to get a quote from their site.

As of late, I have not been in the mood to browse around sites looking for bugs and providing some light commentary to accompany it, like I’ve kind of been doing back in July. I think these are the times when I’d like to believe that software isn’t buggy by nature, and we live in a happy world where software always works as expected.

Well, studies show that there’s a good ratio people that visit product websites right after viewing the commercial for that product.

So I was watching the Allstate commercial with that stately actor from some show who decided to supplement his income by being the spokesman for an insurance company, and decided to take a walk over to their site to see what they were up to, in terms of site quality. The commercial was well-done. I was even convinced I was in good hands and I didn’t even get the insurance yet. 

I head over to and decide that I want to get a quote; but say to myself what if I put in the wrong zip code to try and get a quote. Well this was certainly the beginning of sorrows, as I didn’t even get through that test case as all of a sudden, scrollbars started showing up without me finishing filing out the form.

Allstate Errors 1

What follows next is a series of mishaps that I’ve landscaped for you to see how buggy just trying to get a quote on this site really is.

Allstate Error 2

In Step A, I’ve tried to get a quote, but did not finish before i started seeing browser display bugs

In Step B, I’ve actually entered in a valid zip code, but when I hit submit, the form does not want to submit so I stay stuck on this screen. This may be due to the sequence A, but who really knows. I just know that this should work. After Step 2, I did get this nasty error in my console

Unsafe JavaScript attempt to access frame with URL from frame with URL!uCQzFzhDAFyICoUOFQ%2Fd%3D1%2F#id=I1_1328122409897& Domains, protocols and ports must match. – The Console

In Step C, I get fed up with quote finder and want to find an agent. I enter in an invalid zip code and got the screen from C. Notice what happens here; the validation is completely different and is now happening inside the input boxes. However, I will never know what that validation message is because half of it is hidden, and that input box has onFocus property that instantly deletes this validation message if you place your mouse cursor in the input field.

In Step D, it’s the same deal as Step C, except this time the buttons have totally shifted on me and the layout has changed.

The bug that broke the tester’s back is the bug below when I tried selecting the state with other error states enabled.

AOL Errors 3

You know, any time your form changes on the screen and there is no consistency in functionality, you are certainly going to leave your users confused and unempowered. It never hurts to check your reset button in various forms, especially if there are ajax calls or state changes as you fill out the form.

Tested in:
Windows 7
Chrome v16.0.912.77 m