Atlantic Business Technologies, Inc.

Author: Atlantic BT

  • Caching Twitter Statistics Locally

    twitterSocial networking tools seem to have become one  of the  more popular Internet technologies today.  Out of the many available, Twitter is ahead of them all when it comes to popularity and micro-blogging. While browsing the Internet you may run across a site that has taken advantage of Twitter’s portability by integrating their Twitter feed within the site.

    There are many different ways to retrieve Twitter user information, one of which is using the Twitter API. The Twitter API provides a variety of functions that can be used to retrieve a user’s account data.  On one hand it is very beneficial to use these API functions by reducing in-house programming, but on the other hand making multiple calls to an API from a site that has a large volume of traffic can cause issues like affecting download times and generating errors.

    In our development group, when we need to implement a Twitter feed and not affect performance of the site we prefer to cache the information in a database.  We do this by writing a script that runs as a scheduled service from the database.  This script makes a call to one of the common Twitter API functions to retrieve the user’s timeline.  In this post I will be specifically focusing on the .NET framework.

    ABT_Twitter t2 = new ABT_Twitter();
    
    string timelineAsXml = t2.GetUserTimeline("username", "userpass", OutputFormatType)
    

    Now that we have the data we need from Twitter we can begin picking apart the data to store into our database. In this case we chose XML as the OutputFormatType so first we need to create a XmlDocument to store the local string variable.

    XmlDocument xmlDoc = new XmlDocument();
    
    doc.LoadXml(timelineAsXml);
    

    The next step is to create a simple DataTable that will store each of the desired values to be retrieved from the Twitter API, then we need to add the columns for the values we choose to cache.

    DataTable tweetDataTable = new DataTable();
    
    tweetDataTable.Columns.Add("value1");
    
    tweetDataTable.Columns.Add("value2");
    

    The next thing to do is to loop through each XmlNode in the XmlDocument we instantiated earlier for each node in a certain xpath.  Inside this loop we are going to create a new DataRow and set the values of the columns we added to the tweetDataTable earlier to the nodes we are trying to retrieve.  Once all of the values of the columns in the DataRow have been set we will need to add this new row to the tweetDataTable we created.

    foreach (XmlNode node in xmlDoc.SelectNodes("xpath")
    
    {
    
    DataRow tweetDataRow = tweetDataTable.NewRow();
    
    tweetDataRow["value1"] = (node["desiredNode1"].InnnerText);
    
    tweetDataRow["value2"] = (node["desiredNode2"].InnerText);
    
    tweetDataTable.Rows.Add(dr);
    
    }
    

    Now we have retrieved the information we need from the Twitter API and placed it into a DataTable. Also, we will perform an if statement to make sure that our DataTable has information in it to keep our script from performing unnecessary actions.  We will need to truncate the table that we are storing our Twitter information in to eliminate the possibility of redundant data.  After the table has been truncated our script will now loop through each row in the tweetDataTable we populated earlier and insert data associated with each “tweet.”

    if (tweetDataTable.Rows.Count > 0)
    
    {
    
    SqlCommand truncateCommand = new SqlCommand("truncateStoredProcedureName", connectionString);
    
    truncateCommand.CommandType = CommandType.StoredProcedure;
    
    truncateCommand.ExecuteNonQuery;
    
    for (int i = 0; i < tweetDataTable.Rows.Count; i++)
    
    {
    
    SqlCommand insertCommand = new SqlCommand("insertStoredProcedureName", connectionString);
    
    cmd.CommandType = CommandType.StoredProcedure;
    
    cmd.Parameters.Add(new SqlParameter("@parameter1", tweetDataTable.Rows[i]["value1"]));
    
    cmd.Parameters.Add(new SqlParameter("@parameter2", tweetDataTable.Rows[i]["value2"]));
    
    cmd.ExecuteNonQuery();
    
    }
    
    }
    

    And voilà! Now all of the information has been retrieved from the Twitter API and cached into a local database.  The idea behind using this method to retrieve the user information is to only call the script on a scheduled service so the service is not called every time the page is loaded.  Now that the data is stored locally it takes a simple database call to retrieve the information.

  • Guide to E-Commerce: Usability, Upsell, Cross-sell, & Conversion

    The Guide to E-Commerce is a complete resource that talks about ways to engage your website visitors, stimulate interest in your products, improve the checkout process, and engage in other marketing tactics that will help promote your products.

    Guide to E-Commerce: Part I

    • Product Categories
    • Search/Sort Functionality
    • Product Photos
    • Product Descriptions

    Guide to E-Commerce: Part II

    • Sell-ups
    • Cross-sells
    • Product Comparisons
    • Customer Reviews/Ratings

    Guide to E-Commerce: Part III

    • Checkout Process
    • Timely Offers/Incentives
    • Seasonal Product Offerings

    Guide to E-Commerce: Part IV

    • E-mail Marketing
    • Mobile Alerts
    • Gift Cards
    • Affiliate Programs
  • Guide to eCommerce: Usability, Upsell, Cross-sell, & Conversions – Part IV

    In part 4 of the Guide to E-Commerce we will look at other ways you can drum up business, other than search engine traffic.

    Why settle for just one way a customer can reach and purchase your products?  There are a number of ways you can increase sales and promote your products other than people finding your site on a search engine.

    E-mail Marketingtemplates_large

    Leveraging your current customer basis is essential for any e-commerce site.  A current customer has already purchased from you, understands your company/products, most likely had a positive experience, and are more likely to purchase from you again.

    There are a few ways you can go about implementing an e-mail marketing strategy.

    1. Gain Feedback: You do not necessarily want to sell, sell, sell.  If all you do is fill up a users inbox with nothing but product offerings, you can almost guarantee that that user will get annoyed and unsubscribe immediately.  Try sending out a customer satisfaction survey.  This can be a great way to learn what customers think about your site, company and how you conduct business.  On a broader scale, if you listen to what customers are saying and making improvements on your products and services based on their feedback, you can bet that sales will follow.
    2. Cross-sells: Once a customer has purchased, send out a email thanking them for their purchase and include some complimentary products that go with what they just bought.
    3. Specials/New Product Promotions: Holiday promotion emails are a big part of a online store’s strategy.  Send out a blast to your current customers notifying them about the upcoming specials, savings, and promotions.

    Mobile Alerts

    With mobile technology really starting to develop, mobile marketing is becoming a mainstream marketing tactic.  More and more people have smart phones or blackberry’s that come with unlimited text and data transfer.  Try setting up a mobile marketing campaign and text your customers with promotions, shipping status updates, or even customer polls. MobileStorm and Broadtexter are a few companies that allow you to setup mobile marketing campaigns.

    x17_header

    Gift Cardsgiftcard

    Especially around the holidays, gift cards are a simple gift for anyone.  Allow users to purchase gift cards through your site.  Give multiple delivery options such as printable gift cards, physical cards, or e-mailed directly to the person.

    Affiliate Programs

    Affiliate marketing is a huge business.  People can make a pretty good living off of selling other companies products. Create an affiliate program using Link Share or Commission Junction and allow other people to sign up for your program and sell your products.  It is like having your own salesforce promoting your products without the overhead!  Yes, they will receive a percentage of every product they sell, but a sale is a sale.  Just think about the lifetime value of a customer.

    affiliate-marketing-leads

    << Guide To E-Commerce Part III

     

  • Guide to eCommerce: Usability, Upsell, Cross-sell, & Conversions – Part III

    With the use of an analytics program like Google Analytics, you can review visitor statistics to determine a great deal of how your site is being accessed and review entry and exit points. In many cases, you would be surprised to find out how one little issue in the buying cycle can me significant loss in potential buyers.  It could be that the checkout process is difficult to complete or the price point is too high or the offer/incentive lacks…well a true incentive.  The following are aspects of an E-Commerce site that should be tested on a regular basis.

    Checkout Process

    When a user is ready to buy, the last thing you want to do is put up a road block and make it difficult to checkout. The hard part is getting them to buy, checking out should be a walk in the park.  Keep the buying cycle as easy as possible by keeping the steps to a minimum.

    Checkout Process Quick Tips:Google-Goal-funnel-784339

    • Give multiple payments options
    • Do not require the user to sign-in to purchase
    • Do not try to add additional fees at the end of the purchase
    • Give access to return policies, contact information, shipping tracking #s, privacy policies, support
    • Only require information that is necessary to complete the purchase
    • Send a confirmation email after purchase

    One of the most important aspects of the checkout process is to track the abandonment rate using an analytics program like Google Analytics.  If your checkout process is flawed it will not matter what the user has done prior to checking out, they will not buy.  If you have multiple steps in the checkout process, make sure you setup your analytics to track every step.  If you have 3 steps in your process, there may be a reason why 65% of users are abandoning their cart at step 2.  Try an A/B or multivariate test to see if you can increase the percentage of checkout completions.

    Timely Offers/Incentives

    You would be surprised how far an offer as simple as “Free summer-saleShipping” can go.  Even if you are not giving a discount on the product itself, you can give the impression to the user that they are getting a great deal!

    Timely offers can act as a great reason to speed up the buyers decision.  If you are offering a special 3 day sale, with 20% off everything in the store a user will feel the sense of urgency to purchase before the sale ends.

    Cheaptickets.com does a great job of creating a sense of urgency in their buying cycle.  When you go to purchase a plane ticket, they will show “3 Seats Left” at that discounted price.  This will help the user want to buy sooner than later, to take advantage of the lower rates.

    Seasonal Product Offerings

    Take advantage of users searching for seasonal products, by tailoring your messaging for that holiday.

    For Example:

    1. Christmas: Circuit City, 12/25 — Merry Christmas! Find Santa-sized savings on TVs, cameras, GPS & more
    2. Halloween: Dell, 10/27 — Un-Boolievable Savings – Up to $345 off Select Systems
    3. Mothers Day: Lands’ End, 4/19 — Mother’s Day is May 11 – consider us “landsend.mom”
    4. Easter: Finish Line, 3/21 — The Easter Bunny Wears Chucks—-Do You?

    Seasonal Products Quick Tips:

    • Bundle similar seasonal products
    • Tailor the offer to a specific gender/demographic (mom, dad, children)
    • Offering FREE gift wrapping
    • Offer a customized message
    • Offer customized engraving
    • Guarantee delivery before the date of the holiday
    • Have multiple timely promotions that end the day before the holiday
    • Give extra savings after the holiday has past

    << Guide To E-Commerce: Part II

  • Guide to eCommerce: Usability, Upsell, Cross-sell, & Conversions – Part II

    Once a potential customer has reached your eCommerce website, the way you display your products and information can help increase your conversions.  Your end goal should be first and foremost for your visitor to purchase a product, but also provide options to upgrade their order by purchasing a product that costs more or add-on by purchasing an accessory or complimentary product.

    Here are some helpful tips to entice visitors to want to spend more at your online store.

    Sell-ups

    When a online customer is looking to purchase a product, they usually have a price range in mind.  One way you can squeeze as much out of that customer as possible is to sell them up into a more expensive product.  The best way to do that is to provide product recommendations when that user has reached a product page.  You will need more than just putting a few products next to the one they are looking to purchase.  It is important to have research and data that shows why these products are superior to the current product they are viewing.  If you can show value for a product over another, it may change the buyer’s decision.  Here are just a few ways you can increase the chance of a user switching and upgrading to a more expensive product.

    • New Model
    • Top Rated Items
    • Better Specs/Performance
    • Improved Features
    • Incentives/Deals
    • Positive Reviews
    • Bundled Products

    Cross-sells

    During the checkout process when purchasing an iPod Touch, Apple gives you additional product recommendations that would compliment the product you are purchasing. In this example they give you the option to add a protection plan to your new iPod Touch, along with accessories that would go perfect with the product. When a user is in the checkout process, it is a great time to try and add complimentary products to the sale. The logic here is they are already making an investment, why not protect the investment or have it perform better with optional accessories.

    Product Comparisons

    Apple does a great job of showing a side-by-side comparison of their iPod product line.  By comparing Price, Capacity, Battery Life, Colors, Display and Capabilities the user can make an educated decision on which product suits their needs.

    Customer Reviews/Ratings

    Reviews that are given by customers who have actually used the product can be extremely powerful.  Especially for higher dollar items, many users will want to read reviews and testimonials to see if there is any negative feedback before making a decision.  For example, someone who is looking to purchase chicken egg rolls, may read a review that talks about how there is a certain spice added that makes them extremely spicy.  If the product description never mentions this, the consumer would have no idea that it is spicy.  If the consumer does not care for spicy food, they may choose a product that better caters to their needs.

    Reviews not only help give the consumer better product knowledge, but gives the product more credibility when positive reviews are coming from someone other than the business.

    << Guide To E-Commerce: Part I

  • Guide to eCommerce: Usability, Upsell, Cross-sell, & Conversions – Part I

    When a user gets to your site, they want the ability to find exactly what they are looking for in seconds.  If the user is just browsing, it is important to have your products categorized in a well, thought-out manner.  If you make it difficult for a user to navigate your site, you can almost guarantee that you will lose that potential customer.

    Part one of the guide to eCommerce, talks about factors of how to present and organize your products to gain the highest results.

    Product Categories

    navigate

    The way that you categorize your products has a major impact as to how well a user will understand your product offerings and know where to find what they are looking for.  Something to think about when categorizing your products is to remember that everyone searches differently.  Having multiple ways to navigate to the same product is important. This is known as “redundant navigation.”

    For example, someone looking for an office desk may search by “Office Desk”, “Office Furniture”, “Cherry Desk”, or “Glass Desk”.  No matter how that user searches, you want the ability for that user to find what they are looking for within your site navigation.  The example shown illustrates how you can access the same product or group of products either “By Design”, “By Style”, or “By Finish”.

    By using multiple navigation points, sites that do not offer many products, can seem more comprehensive.

    Search/Sort Functionality

    For ready-to-buy shoppers, there is a good possibility that they already know which product or model they want to buy.  For these buyers, it may be easier to enter the model # or product name into a search box that will check the entire site.  For example, if a user wants to purchase a Sony Cybershot camera, they may enter “Cybershot” or even “Cybershot DSC-W220” to quickly find what they are looking for.

    sony-camera

    So what about the user that knows they want a camera, however they are not sure exactly what brand or type of camera they want?  That user will either search the broad term “camera” or “digital camera” or they will search using your navigation.  For this type of search, it is important to have multiple ways to sort the results of that broad category.  For example, some users may have a certain price range they are looking to stay in, some may be looking for a specific brand, or others may be looking for product capabilities.  Using a “Sort By” function, will help the user further refine their search quickly and determine which product is right for them.

    sort-by-pricesort-by-brandsort-by-megapixels

    Product Photos

    tag-watch-2

    Because users cannot physically touch the product when purchasing online, it is essential you give them the tools they need to picture what it would be like to have the product in their hands.

    The most important aspect to displaying products on your site is to have high-quality photos.  Especially for luxury products or products that have a lot of detail, high-quality jpegs will help a user visualize what the product would look like.

    A zoom in feature is another easy way for a user to see greater detail of the product.

    zoom-feature

    Not only will professional product photos help increase sales, but if you decide to create a printable catalog, you can reuse the same photos.

    Photo enhancements and zoom in photo features can go beyond just products. The same enhancements can be applied to multiple industries and product types. For example, in the real estate market a great tool for showcasing homes are 360 views and virtual tours. If the product you are selling is too big for a photo or could be better explained using 360 views or video, this can be a great way to tell the story of your product…whatever that may be.

    virtual-tour

    Product Descriptions

    Having a good product description can make or break a sale.  Most websites will just cut and paste the product description from the manufacturer.  However there are a number of reasons why you should have a unique product description.

    • SEO Benefits:  Search engines love unique content, so it makes sense that if every other website uses the same content to describe a product, that the one that is unique, will stand out.  If you take the time to write a description that varies from the manufacturers, search engines can see that and will reward you for it.
    • Conversion Benefits:  If the end-user reads a description that is well thought-out and highlights the benefits of the product, a user is more inclined to purchase the product.