PlumberSurplus.com Ecommerce and Entrepreneurship Blog | About | Contact | PlumberSurplus.com Store

Enough With Opportunity, Let’s Add Some Vision!

Posted on November 20, 2009 by Brian

Ok, so I came a little late to the mobile commerce game.  I’ll admit it, I didn’t think too much about it, good or bad, until one day my partner sent out a video clip to our managers.  Here it is:

 

 

As usual, we had a good discourse related to what we could learn about our customers from the video, how we could adjust accordingly, how funny it was, and so forth.  As I pondered the issue, strangely, my mind made its way to mobile and my eyes began to open.

As I watched the Google survey video I wondered why one would care if a person knew what a browser is, unless they were selling a browser.  It is obvious everyone interviewed knew how to get online and do their version of surfing, even if they couldn't delineate between a browser and a search engine.  If you asked 50 people what a graphical user interface is, most commonly referred to as a GUI, there might be 8% who know the answer, even though every one of them may use a GUI effectively every day. I would also guess a majority of Twitter users couldn't define "micro-blogging" if asked on the street. Maybe in our technology bubble we think some things are important that just aren't.

Maybe we shouldn't assume it's important that our customers know what our tools are, such as a browser vs. a search engine, but rather how to extract value from them. Even better yet, instead of wanting them educated so they can better see the value and get the value as we deliver it today, we should find better ways to bring them the value in ways they already understand, and are comfortable with.  You know, like getting a movie on demand in my living room rather than having to go to the theater. Enter mobile commerce. I bet 100% of people reading this know what an iPhone is. So Apple doesn't care if 92% don't know how it works or what the components are called.

As I’ve continued to ponder the notion of reaching into our customer’s environment in a comfortable way, rather than pulling them into ours, I’ve refined my vision of mobile. This thought line, in part, spawned a new business that is currently in development at Gordian Project.  Although not ready for release, we believe it’s a visionary blend of e-commerce, m-commerce, the social web, and time tested marketing techniques. I say visionary because it’s definitely not the opportunistic reaction we see in the “mobile version of your site” tools of today.  If you don’t know the difference, read Mark Goulston’s post The Opportunist in Visionary’s Clothing. PlumberSurplus.com and OutdoorPros.com are both opportunistic and now we’re going to take a gamble at visionary. We’re going to assume that because a cell phone can display a traditional web site doesn’t mean that is how a cell phone user wants us to inject our value into their mobile environment. Injecting the same tools in a new environment is opportunistic; using new tools in this new environment can be visionary.

I wrote this post today because I got some encouraging news. Those assuming the opportunistic move to provide the traditional web on a smaller screen are finding little traction. Here’s the news: App Publishing offers retailers low-cost entry into m-commerce. So mPoria has stagnated in nowheresville and it’s too soon to tell if Mobile Store Maker is making a materially better effort at it. This gives me reason to believe our approach will be a little less of a gamble. There’s your teaser, be on the lookout for more…

 


For the best prices, on the largest selection of faucets, from your favorite brands like Kohler, Danze, and American Standard shop PlumberSurplus.com 24 hours a day, 7 days a week.

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkListFacebookTwitter

Integrating Open Source Software Into a Work Environment

Posted on October 29, 2009 by Jordon

I am a fan of open source software.  The main characteristic of open source software is that the source code is freely published.  This contributes to the success of the programs in many ways: the code is available for modification making it flexible, users are able to collaborate to correct defects, authors are more likely to stand behind their claims (because the code can be read), oh and it’s typically free.  Linux (Ubuntu) is my main desktop operating system at home and on my personal laptop.

However, as do many open source enthusiasts, I use Windows at work.  But, of course, I would prefer to use an open source solution. The question is, how does one “infiltrate” open source into their primarily Windows based work environment?
     
First I thought about letting everyone know that we should be running Linux (*BSD, OpenSolaris) on everything regardless, no matter what it is or who is running it. What stopped me is that I am still unable to grow a proper Unix/Linux Beard:


unix beard and linux beard

Little bit of nerd humor, but joking aside, for the everyday office circumstance this is probably not the best approach for integrating open source software into a work environment that has been based on a Windows operating system. What does make sense is starting small and simple.  Instead of replacing the current platform, build on top of it.  That is, find open source software that runs on Windows.

If you don't know where to start there is the OpenDisc which is a CD you can download that has open source software to try out.

Also, here is a list of programs that I use at work:

  • Open Office: Office productivity suite that is able to open the new docx and xlsx out of the box unlike office 2003.

  • FireFox: Even you don't know about open source you've most likely heard of this web browser that offers many custom features, add ons and plug-ins.

  • FreeMind: A java based mind mapping program.

  • GIMP: For image retouching, editing and authoring.

  • SharpDevelop: A free IDE for C#, VB.NET and Boo projects on Microsoft's .NET platform.

Of course check with your IT Manager to make sure that the use of these programs is allowed.  Also, check out this presentation by Chad Wollenberg titled “The Free and Open Advantage”.



Kohler is arguably one of the most innovative brands in the home improvement industry. The new Karbon faucet has completely transformed the kitchen and more specifically revolutionized the kitchen faucet. Meanwhile Kohler seems to effortlessly create bathroom fixtures that are not only sleek but save water, like the Escale toilet.

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkListFacebookTwitter

Experimenting with Multivariate Testing from A Merchant’s Perspective

Posted on October 28, 2009 by Zach

A couple of months ago our awesome Adwords team was able to hook us up with five free hours of assistance from a third party to help train and setup Google Website Optimizer tests. We had mentioned to them that we were interested in trying some tests but did not have much experience in doing so and through that conversation they were able to help get us resources to get started. Looking back (as we are collecting the final data from our first test) having that help was invaluable. With that in mind I wanted to share the steps we took with the third party to get things going before our first test kicked off.

First, get familiarized with Google Website Optimizer (GWO). There are several resources available in video and written forms which explain how it works and what needs to be done.

Second, review the website for tests which might be a good jumping off point. Typically, good first tests are variations of an add-to-cart or checkout button, text location or color, banner / promotion variations, etc. For the first test you want something which is easy to setup and has many creatable variations as to get some experience before moving onto more complex tests.

Third, open up your GWO account and start to setup the test. This will include tasks like, telling GWO what kind of test you want to run, and installing the tracking codes on the test and order complete pages.

Fourth, the variations of what is going to be tested need to be created, reviewed and loaded to GWO. At least for multivariate tests GWO handles what code gets swapped out, be it an image or text. Once the codes are in place for the test, developers don't need to be the ones setting up all of the variations as they are created inside the GWO console. All of the buttons, badges, text, etc. will need to be created though (get your designer on the horn ahead of time) and setup inside of the GWO interface. Depending on where your developer setup the test codes it may require a little HTML or CSS knowledge but nothing too crazy.

Fifth, once everything is setup and ready to roll you’ll want to make sure to test that all of the codes are setup (especially the conversion tracking), and then use the preview tool in GWO to preview how all of the variations will look. Test! Test! Test! You don't want to turn on a multi variant test which does not work, has broken variations or takes your site down.

Finally, kick off the test and let the data roll in! Remember that depending on site traffic and how many variations are being tested it could take days or weeks to get enough data for GWO to show recommendations about which variations are the best.



Little Giant has been hard at work engineering pumps that their most loyal customers have been waiting for. PlumberSurplus.com is your destination for the new Little Giant TSW Sump Pump System and their NXTGen Condensate Pumps.

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkListFacebookTwitter

The Correlation Between Automation and Decline in Common Sense

Posted on September 24, 2009 by Trevor

As a developer, I'm always looking for ways to make people's jobs easier. If I can automate a repetitive task in order to help us get more done, that's usually great, but every once in a while it can come back to bite you.  There is a point when automation can lead to the detriment of basic logic.

healthBase is a sort of health-oriented search engine. It's powered by a technology called NetBase that combs the web for information, flagging and extracting relevant information based on the semantics of a sentence. Sounds good, right? You can look up treatments for a headache,  or pros and cons of Tylenol. You can see it's not perfect, but it does seem to have the right idea.

However, while healthBase's search algorithm seems acceptable, they unfortunately forgot or didn’t have the resources to put any sort of filtering on the results. This can produce some hilarious misapplications. Want to know what treatments there are for Obama? They've got that covered. How about the causes of rap? Or the pros and cons of vampires? Feel free to experiment yourself; these are some of the tamest results.

We can all laugh at those results. But what about when people are actually searching the site for medical advice and the wrong results are returned? What if someone is searching for treatments for Appendicitis, for example, for which immediate surgery is the only proven treatment? HealthBase returns a whole list of treatments (including things like licorice!), which could lull a reader into thinking surgery is only one of several options. Or how about the pros and cons of suicide, at the top of which is listed "provide relief"? While it's true that you can click the "+" button next to a phrase and read the scrap of text from which it's extracted (often entirely out of context), the fact remains that the lists themselves are in some cases dangerously misleading.  I mean they can use the “Beta” excuse but that will only last for so long.

There are two key differences between an automatic process and a human: the automatic process is much faster and easier, but a human has common sense. Both need to be taken into account when considering automating part of your business. If you do decide to automate something, be sure to test and test again, and the more vital the application is, the greater the depth and breadth of your testing needs to be. At Gordian Project, we try to balance automation for speed and convenience with a human element for sanity and a personal touch.  Surely no one here, which I know of, promotes Nazis, but surprisingly healthBase managed to find a whole list of pros:


Pros and Cons of Nazis according to HealthBase

 

 


Little Giant has been hard at work engineering pumps that their most loyal customers have been waiting for. PlumberSurplus.com is your destination for the new Little Giant TSW Sump Pump System and their NXTGen Condensate Pumps.

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkListFacebookTwitter

Gmail Crashes: Users Scramble for Relevant Updates

Posted on September 3, 2009 by Josh

You may already know that Gordian Project users are in the cloud.  Well, on Tuesday, we hit our second bump in the road with Google Apps. An outage. You may say to yourself, "An outage? With Google Apps? Really?" Well. Yes. Really. Totally freakin' down. Apparently, Google had an issue Tuesday morning that brought down the email interface for apps users.  Déjà vu?

Here is the error I got in Chrome:

Google 502 Error Please try again in 30 seconds

 

At first I thought to myself, "Hmmm. That's weird." So I literally waited 30 seconds and tried again. Same thing. So I asked the person next to me to try. Same thing. So, I tried my iPhone and got:

Google iPhone 502 error

 

OK. Seems likely to be a global problem. So, I alerted users on our network that I was aware of an issue with Google Apps and was looking into it. Because the error says, "Please try again in 30 seconds.” I figured it would be a temporary outage and waited only a few minutes. The problem persisted. So I checked Google News and, sure enough, there's a widely recognized outage. From the news, I noticed two things that were particularly interesting:

  1. I wonder if the "tip-toeing" of wave into apps created yesterday's havoc.
  2. Google has an Apps Status Dashboard

So, after I found out that there was an Apps Status Dashboard, I checked it out and here's what I got:

Google Apps Status Dashboard

Google, why didn't you show this to me on the 502 error page? Instead, you told me to try every 30 seconds. I can't imagine how many people wasted hours of their day refreshing every 30 seconds to try to get to critical email. You may remember this article highlighting good custom error pages.

After the incident was stabilized, Google posted an incident report here. According to the report, Google "underestimated the increased load that some of the new updates placed on request routing." Not sure what the "new updates" were, but it doesn't seem like Google should underestimate the anticipated load.

Noting the red "X" by Google Mail, I clicked on it at 1:48 PM to find:

Status report at 1:48

 

It says there will be an update at 1:53 PM, so I waited until 1:58 PM and clicked again:

Google Apps Status Dashboard update

 

Hey! Wait just a second! Ten minutes ago there was not an update at 1:02 PM. What gives Google? Don't you know that 45 minutes after I announced it to everyone, people are still coming to my desk to say "Hey Josh. My email's down."? Please, just tell me what I need to know when you know it! Also, I love that there is a link to the "How to use IMAP or POP", where the first step outlined is to "Enable POP or IMAP in your Google Apps email account". I can't get to my apps account! Then I realized, I already had IMAP enabled on my account and had it set up in Outlook. So, I started up Outlook... only to be woefully reminded of why I wanted desperately to switch to Google Apps to begin with. I quit Outlook before I even used it, as it was either Outlook or every other application, and a choice had to be made. Instead, I waited for the Google update. At 2:40 PM I refreshed the Status Dashboard to find:

Google Mail Status Resolved

 

Hooray! We're back up! Not without a few lessons.

  1. Google, or any other cloud service provider, when a critical service goes down, don't show me an error that tells me to retry every 30 seconds; especially if that's not really what you want me to do. Send me to the place with the relevant information. I know, based on your incident reports, that you "published ongoing reports to the Google Apps dashboard, Gmail Help Center, the Enterprise and Gmail blogs, and the GoogleAtWork and Google Twitter feeds, to help provide customers with the latest status and available workarounds.", but the error was unhelpful. Please don't make me Google it.

  2. IT managers, if you're going to start using SAAS and cloud enabled services, find out, in advance, what the notification mechanism is for outages. In this case, it would have been a simple thing to have added the Apps Status Dashboard to one of my feeds.

  3. Don't count on Google Apps, or any other cloud service being available 100% of the time. If you have a critical meeting or a conference call that requires you to have a cloud stored document or email or presentation up and ready to go, make sure it's ready and pulled up long before your event, or make sure to store it locally, as well. Also, based on Google's comments, it may be good to enable IMAP on your account just in case you can't web-surf your email; at least then you can get to critical emails with Outlook or Thunderbird.



The possibilities are endless with a bathroom remodel. Discover your classic side with a clawfoot tub, experiment with fresh bathroom vanities and coordinate it all with matching faucets. Shop PlumberSurplus.com 24 hours a day, 7 days a week for all of your bathroom needs.

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkListFacebookTwitter

When eCommerce Payment Processor’s Fail: A Shift in Philosophy

Posted on August 14, 2009 by Josh

On July 2, 2009, at approximately 11:15PM PST, as I was lying snugly in bed, I had nary a clue that Authorize.net was going down. Apparently, there was a fire at the data center. Many of you have probably already read this story; or, perhaps you are/were a customer of Authorize.net's and were made aware by errors. I wanted to share our experience with the major outage and why the lesson is valuable for others in eCommerce. I could be writing a blog post about how much it sucks that Authorize.net even went down, given that it was only one data center scorched. I could be asking, "Where in the world was the backup data center? "Rackspace, how does a sprinkler system kill backup generators? Where is the backup for your backup's backup?!" I could also be writing about how quickly the status was updated on the situation thanks to some smart person at Authorize.net building a Twitter account that day. But this is a post about a shift in our philosophy.

So, as I slept I had no idea that our payment gateway, Authorize.net, was getting wrecked by a fire. When I woke up at about 7:30AM I had already received a text from one of the managing partners alerting me that we had received a pile of errors related to Authorize.net failures. Let me explain what that means for us. An error from our order system that there was an Authorize.net failure means that an order was placed, but no payment was collected. You might be saying to yourself, "Why in the heck would you guys place an order without first confirming that payment could be collected?!" Well, the reason is simple and goes back to our roots. Early on in our eCommerce venture, we prayed for orders every day. Our strategy on many fronts, including payment processing, was to protect orders; in this case, let the customer place the order on the customer site without failure or error (or some other barrier to transaction) and clean up the mess manually. As a consequence of this strategy, when we made a call to Authorize.net for payment processing and it failed, we would have a placed order in our system with no payment from Authorize.net. So, an email with the customer info would be forwarded over to the tech team to review and contact the customer to process a manual payment. This was a good solution for us, early on, as we didn't want to miss a single transaction. We needed the business!

This process worked for us for a good long while, since downtimes on the Authorize.net front were very rare, but when they did happen it was usually only one or two and could be resolved easily. Well, we hadn't had this issue in quite a while and it had not occurred to us that we would need to update our strategy as we grew. Then we grew. By a lot. The consequences of having more than ten times the volume of four years ago becomes readily apparent when your payment processor goes down for more than eight hours. The morning that Authorize.net went down meant that we had a few dozen orders that were placed without payment but had already begun processing for shipment at warehouses across the country. So, we had quite a cleanup effort on our hands. First, ensure that the orders don't get processed out the door, since they haven't been paid for. Second, disable the Authorize.net payment method until we can figure out what happened or is happening and identify when they're back up. Third, contact all of the customers to see if they would like to complete a manual transaction over the phone or retry their checkout using Google Checkout or PayPal (two services that we did not offer at launch). Four, document and share the happenings with the management team. Finally, fix our outdated checkout so that orders do not get placed when the authorization transaction fails.

Our checkout process and a redesign have been on our radar for an update for some time now. This, however, is one issue that escaped us until it became a pain. Hopefully, this will help us to think critically about updates to our site as we examine where we were, where we are, and where we're going.

 


Kohler is arguably one of the most innovative brands in the home improvement industry. The new Karbon faucet has completely transformed the kitchen and more specifically revolutionized the kitchen faucet. Meanwhile Kohler seems to effortlessly create bathroom fixtures that are not only sleek but save water, like the Escale toilet.

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkListFacebookTwitter

Vanessa’s Variety for the Week of June 5th, 2009

Posted on June 5, 2009 by Vanessa
  • Tim Berry and his wife Vange collaborated on what they have learned over the last 22 years as small business owners and came up with a list of ten lessons they learned.  They point out that these lessons may not work for every business but in my opinion Tim and Vange may be too humble about their list.  Businesses are still failing today because they either don’t know about the topics discussed in this article or they choose to ignore them.  I chose three points to reiterate for our audience:
    • 2. We built it around ourselves
      Our business was and is a reflection of us, what we like to do, what we do well. It didn’t come off of a list of hot businesses.
    • 5. We spent our own money. We never spent money we didn’t have.
      We hate debt. We never got into debt on purpose, and we didn’t go looking for other people’s money until we didn’t need it (in 2000 we took in a minority investment from Silicon Valley venture capitalists; we bought them out again in 2002). We never purposely spent money we didn’t have to make money. (And in this one I have to admit: that was the theory, at least, but not always the practice. We did have three mortgages at one point, and $65,000 in credit card debt at another. Do as we say, not as we did.)
    • 7. We minded cash flow first, before growth.
      This was critical, and we always understood it, and we were always on the same page. See lesson number 5, above. We rejected ways we might have spurred growth by spending first to generate sales later.

  • The Palm Pre comes out this weekend, and I am quite excited about it!  Search Engine Land reports on Google’s excitement for the release of this smartphone that has Google Search, Maps and YouTube already built into the device.  What’s important about this article is the trend toward mobile apps and how advertisers will choose to plan for future PPC campaigns.

  • Bing seems to be the word of the week and (#badabing) the tweet of the week.  Bing even managed to become the number two search engine for a day, which isn’t all that surprising considering the dollars that Microsoft is tossing at their ad campaign, but will it last?  Some think not, and I tend to agree.  I tried to use Bing for a day, but I couldn’t even make it that long.

  • Adobe BrowserLab is making it easier for developers to test cross browser compatibility.

  • We pride ourselves on being problem solvers, in fact that is how Gordian Project came to be our name.  We go about discovering problems and implementing solutions in various ways, but I enjoyed this simple outline for those in their infancy of tackling issues.


Kohler is arguably one of the most innovative brands in the home improvement industry. The new Karbon faucet has completely transformed the kitchen and more specifically revolutionized the kitchen faucet. Meanwhile Kohler seems to effortlessly create bathroom fixtures that are not only sleek but save water, like the Escale toilet.

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkListFacebookTwitter

Cross-browser Compatibility: Firefox, Internet Explorer, Google Chrome, and Floating Boxes

Posted on May 13, 2009 by Trevor

I try not to discuss technical subjects in my posts because, being a developer, I understand that most of the stuff I find fascinating just wouldn't be interesting to most of you. But sometimes I run across something that's both useful and understandable, and I have to share it. So I hope you'll bear with me.

Cross-browser compatibility is a major headache for web developers. The web is built on standard protocols like HTML, CSS and Javascript. This is great, because it allows all sorts of different computers to communicate with each other. However, there are many different browsers out there to interpret these standards: Internet Explorer, Firefox, Safari, Opera, Chrome, and many more. And each of these browsers comes in multiple versions. And every version of every browser interprets the standards a little differently. Sometimes that's because the standards aren't clear, but usually the browser is simply in error, or a decision was made not to support the standard. So instead of being a simple job of following the standard when developing web sites, a web developer has to consider the unique behavior of the most common browsers to make sure most users see the website correctly. Usually this is done by developing in a more "standards-compliant" browser and then trying to fix the quirks in other browsers while not accidentally introducing any in the original. It's a balancing act that involves a lot of knowledge of the browsers' inner workings.

Troubleshooting Browser Errors

So, I ran across a strange bug on our website, PlumberSurplus.com, that I knew immediately was a browser problem, but hadn't seen the problem before. There were several "divs", or blocks of content, on a page that were displaying differently in different browsers. In Firefox and Internet Explorer, the page looked something like this:


div content displayed in IE and Firefox

However, in Google Chrome, the page looked like this:


div Content displayed in Google Chrome

Obviously, Chrome was displaying the page differently than the others. To understand why, we have to dig into CSS, the standard web language that dictates how pages are formatted. CSS works hand-in-hand with HTML: in CSS, HTML elements are given attributes whose values determine how the elements are formatted. For example, you could take some text in HTML and use CSS to make it bold. In this case, the first div (in red) has a CSS attribute called "display" that's set to "inline-block". That means that the div acts like a solid block, that doesn't wrap or change shape because of things around it, but that it also stays inline, so that if there's text around it, it fits right in as part of the text. We'll revisit this later. The second (blue) div has an attribute called "float" that's set to "right". This means that instead of simply being inserted into the text of the page, the div gets attached to the right side of the page (or the section it's in), and the rest of the content flows around it. The third (green) div has no special attributes associated with it; it's just there to illustrate page flow.

So it looks like what's happening is that the first div is forcing the second div down in Firefox and Internet Explorer, but flowing around it in Chrome. Let's do some tests to find out why. First, let's get some text in there to see better how the content flow works. Here's how Firefox looks:


Content in Mozilla Firefox

As you can see, the first div is right in the content flow where it's supposed to be, and the second div is sitting on the right as the content wraps around it. Looks good so far. Here's Chrome:


Content Google Chrome

This looks pretty much the same except for one subtle change. The second div is one line higher than in Firefox. Why is that? I've colored the text to demonstrate. The black text is all before the floating div. The blue text is actually after the floating div, but since the div floats, it wraps around it so it looks like it comes immediately after the previous text. So the difference between the two browsers is this (and this is important, so I'm setting it out):

In Firefox and Internet Explorer, a floating div floats below all previous content. In Chrome, a floating div only floats below content that is directly above it.

W3C (Wide Web Consortium) Standards

So, which is correct? For that, we turn to the World Wide Web Consortium, W3C, the standards body that determines the specifications for CSS. Now, just as there are several versions of each browser, there are also several versions of CSS. The main version of CSS in use for some time has been CSS2.1, but recent browsers have begun adopting parts of CSS3 (which is itself still in development). However, for our purposes they are identical. They give these rules for positioning floats:

4. A floating box's outer top may not be higher than the top of its containing block. When the float occurs between two collapsing margins, the float is positioned as if it had an otherwise empty anonymous block parent taking part in the flow. The position of such a parent is defined by the rules in the section on margin collapsing.
5. The outer top of a floating box may not be higher than the outer top of any block or floated box generated by an element earlier in the source document.
6. The outer top of an element's floating box may not be higher than the top of any line-box containing a box generated by an element earlier in the source document.
8. A floating box must be placed as high as possible.

Those rules are somewhat technical, but the two most important ones here are six and eight. Rule six says that a floating div can't be higher than any line of content that came before it. Rule eight says that, unless another rule conflicts, a floating div should be as high as possible. So, looking at the pictures again, it looks like Firefox and Internet Explorer both line up with the bottom of the previous line of text, whereas Chrome lines up with the top. That means that Firefox and Internet Explorer violate rule eight; Chrome is indeed in the right.

However, now we need to know what to do to fix the issue so that all the browsers display the same thing. There are two ways to do this: we could fix Firefox and Internet Explorer to display correctly, or we could "fix" Chrome to display the same as the other browsers. In this case, I actually wanted all the browsers to put the floating div below the first div rather than to the side, so I chose the second option. My fix was to change the first div from "display:inline-block" to "display:block". This took it out of the content flow and pushes everything after it to the next line, like so:


All Browsers with floating div below the first div

That includes any floating divs below it, so now the second div is positioned the way I want it (as in the first picture) even in Chrome. Since there wasn't any text on the page in that section, it didn't interrupt the content flow. If there was text there, I would have had to find a way to keep the first div as "inline-block" while pushing the float down; possibly by moving the floating div itself lower in the content flow.

If, on the other hand, I had wanted to make Firefox and Internet Explorer work the way Chrome does, allowing the floating div up beside the first, I would simply have to move it to just before the first div in the content. That way it wouldn't be below the div at all: it would be first, and the div would "wrap around" it by staying to its left. Both solutions are relatively easy once you understand why each browser is behaving the way it is, but it took some digging to do that. I wasn't able to find anyone else detailing this discrepancy, so I hope this post is helpful to you web designers out there, and for the rest of you, chalk it up as a glimpse into the life of a developer.
 



The possibilities are endless with a bathroom remodel. Discover your classic side with a clawfoot tub, experiment with fresh bathroom vanities and coordinate it all with matching faucets. Shop PlumberSurplus.com 24 hours a day, 7 days a week for all of your bathroom needs.

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkListFacebookTwitter

Mobile Capabilities: Changing the Framework of Shopping

Posted on May 8, 2009 by Josh

I was struck recently by a video I watched on Fora.tv, Google's Vic Gundotra: Mobile Phones as Answer Machines. In the video, Vic Gundotra describes how he was having lunch with a friend and his four year old daughter. His friend asked him a question and he replied, "I don't know." His daughter piped in, "Daddy, where's your phone?!" At first he thought nothing of it, but then he and his friend realized that his four year old had surmised that when information was needed, one could simply pull out a phone to obtain it. Remarkable! I have a two year old, and even he has displayed what I perceive as a shift in thinking about information retrieval from my generation to his. We were recently watching "Mickey Mouse Clubhouse" on TV and I said to him, "You and I are going to go to the store." He got in the car, climbed into his car seat, and asked me for my iPhone. He turned it on, unlocked it, and started the YouTube app so that he could continue to watch "Mickey Mouse Clubhouse" clips in the car. Naturally I had to search for the clip, but I am amazed that he is aware of this resource portability.


On the iPhone at 2 years old

Until I owned a "cloud-enabled" phone, I was skeptical of the mobile revolution. Sure, I have recognized Generation Y as the text message generation, but until recently I hadn't seen the utility in being connected to cloud applications via a sensory-based platform. My 49 year old father-in-law once proclaimed to me that online shopping would never overtake physical retail shopping in overall revenues. Though I am sure people will still want to go to the grocery store to make sure their melons feel ripe, I'm not sure I believe that the shopping experience or buying decision process will look anything like it does today in 20 10 5 years. More and more, I use the cloud to make buying decisions. What's more, I find myself diving ever-deeper into my phone while I'm shopping in physical retail stores. Whether I'm doing price comparisons, or reading product reviews, or searching for similar products or services, I find that I'm more inclined to trust information found from reliable sources in the cloud than I am information found at a retailer's store. 

I wonder… how will cloud-connected customers affect eCommerce and vice-versa? More specifically, how will this affect PlumberSurplus.com, OutdoorPros.com, and any other venture we decide to undertake? Well, in order for us to be able to make an impact in mobile, we have to know what success looks like in order to understand whether or not we can execute in an easy and scalable way. With this type of marketing in its infancy, how can we really measure this? 

I came across this article today, Search Giants Encounter Challenges in Mobile Ad Market.  In the article, Frank Reed discusses a company that starts off with mobile ad campaigns running on five mobile Internet networks. After only one day, the company pulled Google and Yahoo campaigns because they were not effective. Frank cites two reasons as the primary hurdles for behemoths like Google and Yahoo in the mobile ad market: "First, the ads that are run on their traditional platform don’t often translate or fit well in the mobile environment... Secondly, the position of the ads on a mobile device will not correspond to the ‘top of the page’ and ‘right hand column’ look that is now ingrained in everyone’s way of seeing and reacting to the ads." These seem like relatively easy problems for resource heavy organizations like Google and Yahoo to overcome over time. However, it's a good indicator to me that mobile advertising isn't mature (certainly not mature enough for a small business like ours to throw money at).

In order for us to be able to be effective in mobile, I think three things need to happen. First, testability. We need to be able to stare at an anticipated baseline of performance and easily test and measure performance. Second, match ad campaigns to targets. Mobile advertising seems like a moving target at this point. This seems pretty tough to do. Finally, figure out how to take advantage of the sensory aspect of today's mobility. Phones have eyes, ears, skin, they know where you are, they know where you've been, they know who your friends are... how do we leverage these to create an experience that leads a customer to buy?

No matter what happens, at this point, I'm pretty convinced that the way my son finds information and shops when he's my age will be very different than the way I do those things now. I can't wait to see what happens next.

 


For the best prices, on the largest selection of faucets, from your favorite brands like Kohler, Danze, and American Standard shop PlumberSurplus.com 24 hours a day, 7 days a week.

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkListFacebookTwitter

Buy, Build, or Leverage? Reassessing the Value of Third Party Relationships

Posted on May 6, 2009 by Zach

Recently, Elastic Path presented a great webinar on the topic of Buy, Build, or Leverage? It was a really great webinar which presented some great information and posed some interesting questions. Now of course Elastic Path is an eCommerce vendor and therefore certainly have some reasons to push their own product, however, overall I thought it was very interesting and that they did a good job of presenting the points and issues from all sides.

Since the Gordian Project uses a custom platform there are many instances where our problems and solutions can get technical in nature and be solved by an array of solutions. While our platform is mostly custom we have certainly assimilated solutions which we would rather buy or leverage than build such as LivePerson, PowerReviews, Google Analytics, Mcafee Secure, etc. All of these solutions we decided not to build, find a partner and then integrate their solution into our platform, each provides value for us in its own unique way. Most of these solutions were relatively easy to come to an agreement on, integrate and begin using. The webinar does a great job addressing this and I applaud them on their great presentation.

This webinar got me thinking about possible issues though and what we have faced in the past. What happens when things do not work out the way you intend or a solution is no longer providing the value you are looking for? Our saga in this regard has been the site search and merchandising elements of our website. When our website was first created it had custom site search functionality which worked well enough, nothing spectacular, no killer bells and whistles. After several years with this solution we decided that something more robust was needed, preferably with better search, marketing and merchandising capabilities. After looking at all of the options we decided to take on a 3rd party vendor who was considered best of breed in this field. After all negotiations were finished, and documents were inked, we were able to begin the task of integrating the solution, which was no small task. 

The solution worked especially well for most of our commitment with our partner, but issues with scalability arose when taking into account multiple websites.  Product upgrades on their part, required further development on our part became frequent and with less and less accurate notice.  Website changes on our part required cooperation on their part.  While there were few there were enough reliability issues and while any downtime is inopportune, two weeks before Christmas can really hurt an internet retailer.  Finally, there was a hefty price tag associated with the service.  In looking at all of these pieces together, the perceived value of the service began to dwindle. 

With all of that in mind, late last year we decided to forgo renewing our contract and instead decided to build something in-house.  While our solution would have fewer bells and whistles the resolution would be more than sufficient for our current needs, and far better than what we had initially. After some intense planning and development, using what we had learned, taking notes from what industry leaders were doing, and utilizing the research available to us, we created, what is in my opinion a pretty great solution.  It’s our own, and we have full control. While we continue to make tweaks it has been a very positive experience, and it turned out to be a financially smart decision as well.



PlumberSurplus.com offers its customers tens of thousands of plumbing, home improvement, and building products in a range of categories including Kitchen and Bathroom, Water Heaters, Lighting, Pumps, Tools, Access Doors, Valves, Commercial and more. Individuals and businesses can shop quickly and easily at PlumberSurplus.com 24 hours a day, 7 days a week.

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkListFacebookTwitter