Home Depot Considers Middlesex New Jersey To Be Invalid

For some reason, and we’re sure someone will figure it out but we’re not going to waste our morning, the Home Depot Tool Rental Search does not recognize Middlesex, NJ as a valid zip code. This irritated our reader enough that he wrote several letters to Home Depot, in a vain attempt to find a location in New Jersey that rented tools. Read his letters and Home Depot’s replies inside.

Chris writes:

Yesterday I was searching for some local tool rental places, and I
recalled that Home Depot does offer tool rentals in certain locations.
The have a snazzy website to help you at http://www.homedepotrents.com.
Anyhow, I went there and I type in my zip code to be displayed an
error that says “Please enter a valid zip code!” I try a few more NJ
zip codes (all of which lead off with a zero) which all fail as well.
I then try a few non-NJ zip codes (that lead with something other than
a zero) which all work. Seems that I’ve found a bug that prevents the
entire state of NJ from searching for Home Depot tool rental centers.

Naturally, I contact Home Depot’s customer service through their website form:

###

Hi,

I am visiting http://www.homedepotrents.com, which appears to be slightly
broken. I live in NJ and when I input my zip code (in the upper right)
I get an “invalid zip code” error. I think it is because of the leading
0 in the zip code (as I did try other cities w/out leading 0s and it
worked). Please resolve this issue as you are shutting out all NJ
residents from using this site.

Thanks,

Chris

###

A few minutes later I get a canned response from Home Depot:

###

Dear Home Depot Customer,

Thank you for your feedback concerning our website. Your feedback has
been forwarded to the appropriate department.

Thank you for shopping at homedepot.com.

###

Then, this morning I get a response from a person who didn’t even read
my email, which made me quite peeved and prompted me to write you
guys:

###

Dear Customer,

Thank you for your e-mail to Home Depot Direct.

We realize your concern and apologize for any inconvenience caused to
you.

For assistance regarding product search online, visit our websitehttp://www.homedepot.com and on top right hand side Search enter the product
name or model number and click on search, you can browse the products
and place an order online.

For additional information, click on Description and Specification.

If you need help finding the store closest to you, please follow these
steps: go to http://www.homedepot.com and click the Store Finder tab on the
toolbar. Once you accessed the Store Finder page, enter your geographic
information, and click the Find Store button. The Store Locator will
provide you with a map and a list of stores in your area.

Please let us know if we can be of further assistance.

Sincerely,

Manish
Home Depot Direct

###

I guess it was another canned response, but it had nothing to do with
what I initially asked, so I sent a final reply telling them exactly
how to reproduce the bug:

###

Read my email again. I’m not trying to find the closest Home Depot
location. I already know where that is! I am trying to find the
closest location that RENTS TOOLS!!!

Do this to see where your bug is:

1- Go to http://www.homedepotrents.com
2- In the upper right corner of the screen see “Find a rental center
near you”, then input “08846” as the zip code and then press search.
3- You will get a pop-up saying “Please enter a valid zip code!”

Please fix this as all zip codes in the state of NJ start with a zero.

Thanks,

Chris

###

It was a good theory, but some zip codes from New Jersey do work…just not yours, Chris. Home Depot considers Middlesex, NJ to be invalid. Don’t take it personally though.

Anyway, we dug up this PDF of tool rental locations for you in about 15 seconds of searching Home Depot’s site. One would have thought the Home Depot help monkey could have done that for you but hey… We’re the Consumerist. We’re everyone’s help desk. —MEGHANN MARCO

Comments

Edit Your Comment

Looks like they need to fix the quirk/bug . I tried my zip code, I live in Lowell, MA, which has a leading zero and I get the same error. However if I try the zipcode where I work, I work in Brookline, MA, and I don’t get the error. Well I am pretty sure if you call the closest HD, via the good ole yellow pages, they would know if they rent out tools or not.

I suspect this is why many people don’t avail themselves of online help resources like live chat or email; there seems to be an epidemic of comprehension issues on the corporate end. It’s especially enraging when you type a clear and concise message and get back some unhelpful regurgitation of the Web site’s FAQ files.

Salem, NH 03079 works but Methuen, MA 01844 that has a home depot does not work and if you type the 03079 you see the 01844 home depot listed as one of the rental locations. Some one really dropped the ball on their site. My guess is maybe only older Home Depots zip codes work.

@dantc – the problem isn’t always a lack of comprehension, but a lack of ability to help. the people answering support emails most likely have no connection to the people who design the website search functions, and no way to contact those people other than forwarding the issue to their managers, who will only forward it on to someone else if enough people complain about it. one email from one dude is not going to motivate most companies to change anything.

basically, when you get an unhelpful answer from email support, it probably means that they understand your issue, but it’s not important or widespread enough for them to fix it. and of course the company doesn’t want their workers to admit that outright, so you get meaningless, unhelpful answers like the ones above.

I believe that the error lies in the zip code detection function doVerify(). In that function they detect if less than 5 characters have been entered, where numeric data has been entered and finally, and in what I believe is at fault, parses the string to a digit. The parseInt() function requires two parameters, the string and the desired base. The second parameter is optional. If you leave the second parameter off (which is what they did) then the function parseInt() tries to auto detect what type of number its looking at. In this case strings leading with 0 are treated as octal. If the number entered parses to less than 100 octal the function returns a false and you see an error message.

“It was a good theory, but some zip codes from New Jeresey do work…just not yours, Chris. Home Depot considers Middlesex, NJ to be invalid. Don’t take it personally though.

Anyway, we dug up this PDF of tool rental locations for you in about 15 seconds of searching Home Depot’s site. One would have thought the Home Depot help monkey could have done that for you buthey… We’re the Consumerist. We’re everyone’s help desk.”

Wow, I think you missed the point almost as much as Home Depot did… it wasn’t about being able to find a tool rental location, it was about getting a canned, unhelpful response from a question he asked via e-mail form. To wit:

“Then, this morning I get a response from a person who didn’t even read my email, which made me quite peeved and prompted me to write you guys.”

The Consumerist looks almost as bad as The Home Depot in this situation.

After viewing the Javascript source on the page, their validation is incorrectly using the ParseInt() function. They assume that ParseInt treats all numbers as base 10, but a leading zero means that the number is evaluated in base 8. 03103 evaluates to 1603, which passes their scheme. My zip of 06385 evaluates to 51 (the 8 and 5 get truncated as invalid input), which does not.

This is actually a good Consumerist article. A customer attempting to use a use Companies Website is being frustrated when attempting to use the help from that site.

I don’t see this as a he should use a phone book instead type thing. He tried to use the Help link to let the sysadmins know about the problem. Instead of a meaningful response, they just had an offshore resource send out the canned response.

Usually, these places are unmanned, but if you wait half a year…..eventually you will be remedied but you will not get any email about it..

Like when I complained about routing to a specific school via my local transit system and inquired why their computer made walk half a mile from one subways stop, if the address I entered is right next to another train stop, like 20 feet from it….

And then, they have a landmarks roster, and there were other schools, but this school wasnt in it..

2 automatically generated emails and 3 month later, i tried again, and the site was updated with the features i have complained about…

Wow, I think you missed the point almost as much as Home Depot did… it wasn’t about being able to find a tool rental location, it was about getting a canned, unhelpful response from a question he asked via e-mail form.

@mattloaf1: So what? They’re not supposed to help him get the information he’s looking for because the complaint was the response he got from Home Depot? It’s not like they can go in and fix Home Depot’s process for handling web site complaintes.

Without timestamps on the email, I can’t really tell if that guy was just being impatient or not. As a software engineer, I’ll give you some insight. Bugs on large distributed websites like that take time to fix. This stuff is all load balanced and optimized because of it’s heavy traffic, it’s not a simple HTML homepage on some free webserver account. It probably only takes like 1/2 the day to fix the code and unit test it. Then it needs to go through additional acceptance testing before it’s deemed worthy enough for deployment. Then, you need to wait for some sort of window to deploy the fix. You don’t want to bring the server down or update code when your site is busy processing requests, so you wait till like 2am on a Sunday night or some time when traffic is at it’s lowest before you update the site. Probably takes around 2 weeks turnaround for something a small as that.

@urban_ninjya: I’m guessing you didn’t read the whole post? Basically, they didn’t even acknowledge it was a problem with the site at all, they assumed I didn’t know what I was talking about and send me a form response instead.

@urban_ninjya: On the technical side, you are correct. It’s a simple fix (forcing ParseInt() to evaluate zip codes in decimal), that needs to go through the proper channels. However, the real issue is that there is no evidence that these email replies have come from anyone who has read the initial complaint.

@chrismar: To work around the bug, try a zip code that is geographically close to you that doesn’t contain the digits 8 or 9. That gives the best chance for success without actually having to do any math.

@jwissick: I just wanted to know why it wasn’t working. The initial leading-zero theory seemed so likely that evidence to the contrary made it an interesting problem. The algorithm identifies a reasonable approximation of valid zip codes, but the error was in the implementation. Only blind luck allowed it to work for some east coast zips.