Acquia News Feed

Syndicate content
Updated: 1 hour 21 min ago

Identifying and Integrating Global eCommerce Systems

18 hours 32 min ago

If you’re a retailer considering globalization, or a global retailer looking to streamline your global operations, then you probably already understand the difficulties that lie ahead. Globalizing your commerce systems and overall strategy is no small feat, but it can be done. With the right commerce foundation in place, and a strategy to execute on, you’re ready to start identifying and integrating the appropriate market-specific systems. Here’s what you’ll need to consider:

Pick the Right System for the Right Market

This might sound crazy, but if one commerce system doesn’t make sense for entering a particular market, explore another. Puma makes a great example of this. They run the majority of their online commerce operations through an enterprise SaaS solution, but when entering the Australian market, they opted to implement a nimble and flexible open source backend. Why? Because extending their enterprise platform to operate in this new Australian market would have been time consuming and unnecessarily expensive. The open source solution offered a more expeditious approach, and together with their chosen partner First Scribe, they were able to build a backend that mimicked the behavior of their enterprise platform, allowing the Puma team to manage their Australian ecommerce efforts through their existing business processes. We already know that there isn’t one commerce platform that can deliver on all of your business needs, never mind one that can do so across country borders, so what Puma is doing makes a lot of sense. This approach may not work for your business, but it is worth noting that in certain instances, a new - additional - commerce platform can be a major differentiating factor.

Shipping and Payment Processing

Shipping logistics, payment types, and processing systems differ widely across markets. According to SaleCycle, global cart abandonment was at nearly 74 percent in 2013, for a variety of reasons including hidden charges and payment security. Not only are methods of payment different, but currencies are different, and shipping carriers are different, all of which lead to a rather convoluted and complicated payments and shipping system in markets around the globe. Russian ecommerce marketplace Ozon.ru, for example, has 16 different payment methods for their site alone -- and that’s just one marketplace in one country market.

There are a couple of different ways to approach this issue. In the Forrester report “Identifying Partners to Help Streamline Global Expansion,” they mention that “International shipping is becoming a core way to reach global shoppers.” This is because international shipping offers a way for brands to identify global markets where their products will likely resonate. It also allows brands to reach customers in other country markets where they don’t yet have localized websites or local fulfillment options. International shipping works well as a stepping stone to educate and inform your long-term global strategy.

Some brands may choose to work with existing fulfillment partners in the US like FedEx and UPS to expand internationally. Other providers like Borderfree, Borderlinx, Pitney Bowes, Bongo, and International Checkout offer global order fulfillment and return services. They can help retailers handle payments, determine local currency pricing, and duties and taxes across the international landscape. The same approach that applies to commerce systems also applies here -- assess each market on a case-by-case basis, and determine the optimal payment processing and shipping situation for your business.

How To Make It All Work Together

The goal for any brand seeking to go global is to be able to deliver a consistent message and shopping experience across every market, and to be able to maintain operational efficiencies -- all while contributing to the bottom line: getting your customers to convert. Creating a unified customer experience isn’t possible without a cohesive, unified team behind the scenes. As discussed, this requires the build of a complex ecosystem, with many stakeholders, moving parts, and different systems that need to work together. This is perhaps the most complex step of the process -- creating a seamless operation from country to country, channel to channel, with systems that aren’t purpose-built to work with each other.

That’s where a custom layer like the Acquia Platform comes in. If you take a look at the graphic above, you’ll see how the Acquia Experience Management layer is nestled in between a variety of market-specific sites (what the customer sees) and the backend commerce platforms (what your team manages). The Experience Management layer brings all of these pieces together, allowing for integration between all of your preferred systems, but with one central vein. Here, you can manage all of your technical, transactional, solution-based systems where they directly impact what the customer sees. Like we discussed in this post, it’s much easier to unify a multidimensional ecosystem with a custom layer that allows for integration and flexibility. Being able to integrate new systems, custom modules, APIs, and more on top of your existing commerce platform provides the freedom to expand and unite, wherever the market might take you.

Tags:  commerce retail globalization ecommerce global expansion
Categories: Drupal News

Why I Love Composer, a PHP Dependency Management Tool

18 hours 51 min ago

Like a composer who can’t wait to conduct a great symphony, I couldn’t wait to get my hands on Composer, a PHP dependency management tool.

You could say this blog post is my "Ode to Joy" about using Composer. It was fun watching it update all my libraries on just a single command:

composer update.

But I shouldn’t have all the fun. I’d like to help you incorporate third-party libraries into a project by using Composer. In this post, we’ll create a test PHP project and run test cases using phpunit.

Before we hit the “update” button, though, first let’s look at what Composer is, and why you’ll need it. After all, as my Acquia colleague Chris Pilakas aptly describes in Good Engineer/Bad Engineer, good engineers first focus on the “what” and the “why” before moving onto the “how.”

In a nutshell, Composer manages all of your project’s dependencies by downloading them in a clean directory and tracking the package versions. It’s simple and easy to use.

Composer can play a vital role when you start a project in PHP. It doesn’t want to reinvent the wheel for every single function of your project; rather it wants to use third-party libraries. Before Composer, you had to manually download and manage these libraries. But now, Composer makes it easier to download and maintain the latest version of third-party libraries.

Picture this: Let’s say you want to use PHPUnit for testing and Log for logging your project. You simply tell Composer that you need this particular version of PHPUnit for your project and it is installed locally, in your project directory. After installation, it’s Composer’s responsibility to look for PHPUnit library and download it and the other packages required by the PHPUnit.

So that’s the “what” and “why.” Now, it’s time to learn how Composer works. Here’s a step-by-step guide.

Step 1

Install the composer using Homebrew for OSX, or download it directly. Let's install it globally, so that it's available from anywhere.

    $ curl -sS https://getcomposer.org/installer | php
    $ mv composer.phar /usr/local/bin/composer

(Note: Might need to use sudo is case of permission issues.)

Step 2

Validate the installation
$ composer --version
It should return something like Composer version 1.0-dev (829199c0530ea131262c804924f921447c71d4e8) 2015-03-16 13:11:02

Step 3

After successfully installing Composer, create a JSON file named “composer.json” in the root of your project. This file contains simple things like: “name” “license” “authors” “dependencies.” For this blog, the project directory name is “php-composer-example”. So, with help from the box below, go ahead and create the “composer.json” file.

    {
        "name": "charu/composer-example",
        "require": {
            "phpunit/phpunit": "~3.0",
            "psr/log": "1.0.*@dev"
        }
    }
require here states that phpunit and psr is a required dependency, and phpunit version ~3.0 means package version >=3.0, <4.0 is allowed. With the @dev constraint in psr/log package, composer installs the dev version of the package. Also, if you need to add unstable or dev package, say version dev-master, include flag "minimum-stability": "dev" and "prefer-stable": true as this flag enables composer to prefer more stable packages over unstable ones.

Understanding the Package Name and version:
Package name consists of two parts: first is the vendor name, the other one is the project name. In above case, vendor and project name is phpunit. However, in other dependency applications, vendor is "psr" and project is "log". In Composer, this package name method allows a user to have the same project name with different vendor names.

Package versioning follows the schemantic versioning notation. Here is a good article that explains composer versioning in more detail.

Step 4

Now it's time to install the dependencies.

$ composer install

Once you run the command in the box above, Composer will install all the required packages in the vendor directory.

Step 5

Composer install generates the autoload file in the vendor directory. There are two ways to use the third party libraries installed by composer:

  • You just have to include this code into your file.
  • <?php
    require 'vendor/autoload.php';
    ?>
  • Create a bootstrap.php and phpunit.xml file under your project, so when you execute the phpunit test command from your terminal, it will run the test for all your Test.php files.
  • It’s time to execute these steps. Start by adding these files in your project.

    path\_to\_project/test/bootstrap.php

    <?php
     
        $autoloadFile = __DIR__.'/../vendor/autoload.php';
        if (!file_exists($autoloadFile)) {
            throw new RuntimeException('Install dependencies to run phpunit.');
        }
        require_once $autoloadFile;

    ?>

    path\_to\_project/phpunit.xml

          <?xml version="1.0" encoding="UTF-8"?>
          <phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
               xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/4.4/phpunit.xsd"
               bootstrap="test/bootstrap.php"
               backupGlobals="false"
               verbose="true">
          <testsuites>
              <testsuite name="small">
                  <directory suffix="Test.php">test</directory>
              </testsuite>
          </testsuites>
          <filter>
              <whitelist>
                  <directory suffix=".php">src</directory>
              </whitelist>
          </filter>
        </phpunit>

    path\_to\_project/test/ComposerExampleTest.php

    <?php
        /**
        * Class ComposerExampleTest
        */
        class ComposerExampleTest extends PHPUnit_Framework_TestCase
        {
            /**
             * Test Case 1
             */
            public function testCase1()
            {
                $this->assertTrue(true, "Returns True");
                $this->assertEquals(2, 1+1);
            }
            /**
             * Test Case 2
             */
            public function testCase2()
            {
                $this->assertFalse(false, "Returns False");
                $this->assertNotEquals(2, 2+1);
            }
        }
    ?>

    path\_to\_project/test/ExampleTest.php

    <?php
        /**
         * Class ExampleTest
         */
        class ExampleTest extends PHPUnit_Framework_TestCase
        {
            /**
             * @var string
             */
            private $id = "";
         
            /**
             * Test Case 3
             */
            public function testExampleSuccess()
            {
                $this->id = "123";
                $this->assertClassHasAttribute('id', 'ExampleTest');
            }
        }
    ?>

    Final directory structure should look like this:

    Now, run this command from project root:

      $ vendor/bin/phpunit

    Notes:

    Add your own code to the autoloader by adding autoload field in composer.json. Below code uses PSR-4 autoloader.

        {
            "autoload": {
                "psr-4": {
                    "Charu\\ComposerExample\": "src/"
                }
            },
            "autoload-dev": {
                "psr-4": {
                    "Charu\\ComposerExample\": "test/"
                }
            },
        }
    Run this command to get the latest version of the required packages.

    $ composer update

    Sometimes we need to update the composer itself.

    $ composer self-update

    Good links

  • Composer
  • Packagist
  • Phpunit
  • Categories: Drupal News

    Improve Your Drupal Web Site Performance — Without Coding

    18 hours 58 min ago

    Most advice to improve Drupal site performance is aimed at developers and DevOps folks. In reality, many Drupal sites are built by site builders using flexible Drupal modules rather than custom code.

    In this blog series, we will give site builders the knowledge and tools to enhance the performance of their web sites, without ever touching PHP or the command line.

    The Drupal community is already rich in modules and best practices that can significantly improve the performance of any Drupal site. Now it’s time to take advantage of the community’s hard work!

    But first, let’s start by disabusing you of some common — and wrong — ideas and advice.

    4 Common Drupal Performance Tips (and Why They Are Wrong)

    There is a widespread belief among both developers and end-users that Drupal is 'slow'. Dig through Google and you will see countless old web pages talking about Drupal performance issues.

    Upon closer scrutiny, however, this belief amounts to nothing more than mere myth. As of today, Drupal is one of the fastest CMSes around. In fact, in a study by YOTTAA, Drupal emerged as the fastest free CMS, outperforming both Joomla and WordPress.

    Drupal is an extremely flexible framework, with an abundance of configuration options. With any large framework, flexibility and performance must be balanced. With correct configuration, Drupal can be lightning fast.

    Drupal’s potential for speed and reliability are just two reasons why there are over 1.12 million websites using Drupal across the world today.

    Yet, thanks to the pervasive Drupal slowness myth, there is a lot of bad performance advice floating around on the Internet. This advice is usually easy to follow, but seldom yields any results. Much of it requires the user to throw extra money at the problem, instead of using Drupal's accepted best practices.

    Below, I've listed four such common Drupal performance tips, along with reasons why they are wrong:

    1. "If it runs out of memory, increase memory."

    This common advice can be found on many Drupal communities - just throw in more memory to get over any performance bottlenecks.

    Besides the obvious monetary downsides, this is simply a bad way to deal with performance issues; and as your site grows, you will only need to throw in more and more money. Drupal is engineered to be fast. Poor performance is usually not an indicator of low memory, but poor site configuration. Optimization is about efficiency. Before throwing more memory at the problem, try to comb through site configuration to identify performance bottlenecks.

    2. "Don't use context/views/panels or specific modules."

    If any performance advice begins with a prohibitive statement -- "don't use X" -- it's likely solving a symptom, not the actual problem. Drupal is designed to work with different contexts, views, and panels. If using them is causing performance issues, the solution isn't to stop using them, but to find the real problem.

    3. "You need more servers."

    Adding more servers to make a site faster is like adding a Ferrari engine to a Ford Pinto. Sure, you will get extra speed for a while, but in the long-run, your performance will suffer. Try to exhaust all code and non-code based optimization before spending a few hundred dollars -- and often much more -- purchasing extra servers.

    4. "Caching will solve all your problems."

    I can't overstate the importance of caching enough - it is the single best way to improve site performance. But caching is not a panacea for all your speed issues. There are still a number of additional ways you can improve performance, from evaluating modules to optimizing site configurations.

    Drupal is a complex piece of software. Naturally, performance issues will arise. The solution is almost always to dig deep and identify the problem at its very core. Beware of advice online that offers only cosmetic cures.

    Next time: The 3 Types of Caching in Drupal and How to Use Them.

    Categories: Drupal News

    Industry Leaders Break Down The Marketing Cloud Myth

    26 May 2015 - 11:13pm


    Photo credit: B Garrett

    Assembling the unique set of marketing technologies needed to power your business to success is not a luxury today, it is a necessity.

    “Our average customer uses 26 digital marketing applications and that’s just digital marketing, that’s not the finance and the CRM and everything else,” according to Jeff Lunsford, CEO of Tealium.

    Earlier this month, the “who’s who” of digital marketing converged in San Diego for the inaugural Gartner Digital Marketing conference. Among the topics being discussed was the need to enable innovation in marketing by treating marketing technology as any other open source technology, with shared data, easy integration and powerful APIs.

    “We agree 100 percent that the right place to integrate is with a neutral data layer that can be shared across all these applications,” Lunsford told a panel of the digital marketing pioneers and innovators at a Digital Marketing Meetup during the week of the conference in discussing how to best integrate crucial marketing systems.

    In addition to Lundsford, the panel of experts on the panel included Heather Zynczak, CMO of DOMO, Mike Vaccaro, Chief Revenue Officer at Mirum, Todd Tarplee, Digital Marketing Manager at Qualcomm and Acquia’s own David Mennie, Sr. Director of Product Marketing. Each drew on their experience to set the record straight on the future of marketing technology. Each shared their personal experiences as a digital marketer and described how the open approach is often the best approach for their clients.


    From left to right: David Mennie, Jeff Lunsford, Heather Zynczak, Todd Tarplee, and Mike Vaccaro

    While everyone had a slightly varied take on what a marketing cloud is and how it should be integrated, most agreed that a single-vendor, proprietary system is not the way to go.

    Tealium’s approach to what Acquia calls Open Marketing is to build your own marketing cloud, using tag management technology to connect all of your marketing technology.

    The freedom to integrate and switch out new marketing tools and tech is a key focus. Qualcomm, while a billion-dollar company, is “essentially a giant startup” that prides itself on being able to “pivot on a dime,” according to Tarplee. Getting locked into a vendor’s roadmap is not an option. “We’ll adopt a new technology, implement it…[and] in a matter of months, get in the market, test it, try it out, see if it works, move on,” he said, adding, If you have to wait for a single vendor to do that for you, you’re never going to get there”.

    Mennie echoed Tarplee’s thoughts: “It’s all about innovation. At the end of the day if you look at more of a closed, single vendor approach, when it comes to innovation, you’re moving at the pace of the vendor. Even if a marketing cloud provider has a decent set of tools”, said Mennie, “they can’t acquire and integrate everything that [marketers] require”.

    “We’re all using tons of different things and I just think that speaks volumes about where we have come to as a marketing organization... That we’re going to use a lot of different tools,” said Zynczak. “We’re going to use whatever is best to breathe and we need the ability to bring it all together.”

    “For us, I think, we’re probably going to be doing a disservice to our clients if we try and force them down the one-size-fits-all [solution] because it’s very rare that it does work for them”, said Vaccaro. “It might [work] and if it does, that’s great and if that’s what they want to do, we’ll support that as well. But our job is to make sure that we’re consulting them on what’s the best solution for them to ultimately make them more money”.

    In the end, Jeff Lunsford probably summed up the panel best: “Open is king.”

    Tags:  open marketing marketing cloud
    Categories: Drupal News

    Front End Performance Strategy: Image Handling

    22 May 2015 - 3:33am

    Business is keenly aware of the importance of page-load time, and its impact on conversion and search engine optimization. It’s now a priority at companies like Wal-Mart, Amazon, and Mozilla.

    At Acquia, we hear about it from virtually every customer. They all want to know how our platform and services can improve the performance of their websites. How much can we speed up the responsiveness of the digital experience they are offering their users and customers.

    Performance is often considered to be primarily a back-end problem, but frankly what we find after we dig through back-end code: often poor front-end optimization is the culprit and not Drupal itself.

    While internet users don't have a page-load value in mind — they’re not counting seconds — they do want their content now. A content owner’s fear is that with a finger hovering over the back button, a user's brain is doing an automatic cost-benefit analysis on whether the loading content is worth the wait. If the site is too slow, they are impatiently wondering if they can get what they’re looking for somewhere else, somewhere quicker.

    It's important for business to understand the impact of design and feature-level decisions on performance, and the importance of balancing a sophisticated and elegant user experience with nimble performance. As Engagement Managers, Architects, and Developers, it’s up to us to inform stakeholders of the impacts of their choices, offer compromises where we can, and to implement in smart and responsible ways. Regardless of the heroic efforts we are asked to make at the code level, we should all be able to agree on this:

    Faster Page Loads = Happier Users

    This article kicks off a series about optimizing the requests made by a Drupal site after the DOM loads. The goal of the series is to give site and product owners a new set of tools to evaluate their internal performance and to provide architects and developers specific recommendations. Today we’ll tackle image handling. Subsequent posts will cover JavaScript and CSS optimization, Content Delivery Networks (CDN), semantic HTML and better content selection. We’ll start with image handling because it’s low-hanging fruit and a front end swing-and-miss we often see.

    Our first post is divided in two: Theme Images, the images comprised in your design, and Content Images, the images chosen and uploaded by authors, editors, and producers.

    In Theme Images we cover sprites: why you should use them, how we employ them at Acquia, and some resources to get you going. In Content Images we explore how to deliver high quality images, optimized using compression and size adjustments, and how we accomplish this at Acquia. Finally, we’ll link to some additional resources.

    IMAGE HANDLING

    Your images need to be optimized. Full stop. Apply some lossy compression to that 50 image gallery. Dump all your theme images into one sprite file. Don’t serve a retina-quality image to an outdated smartphone. All of these impact page-load times, and we’ll touch on each one here.

    Theme Images

    We have the most control over theme images because the end users who create content on a site rarely need to manipulate them. Theme images don’t change much after the designer has created them. That makes them ideal for combining into CSS sprite files. A sprite works by combining all theme images into one file and using the x and y positioning values of the “background” CSS property to control which portion of the image is visible.

    Sprites hold the advantage of existing in a singular file that is almost always smaller than the sum of its would-be piecemeal parts, plus it can be downloaded with a single HTTP request and cached for reuse. While nothing new, if you’re unfamiliar or need a refresher on sprites, CSS Tricks has a great introduction.

    There are a lot of ways to create sprites, including manually in Photoshop. Various Ruby gems and Grunt/Gulp plugins make the process easier. Here at Acquia, we tend to rely on Compass to do the heavy lifting for our Professional Services builds. When creating sprites with Compass, you can use directories to group images that will form separate sprites. So, instead of creating one enormous sprite for all of my styles, I'll break them up into logically grouped images based on their use. These almost always end up being PNGs. When employing icons, I try to use a font-icon or an SVG icon if possible. And if you’re considering SVGs because they look great at different resolutions and screen sizes, you can sprite those too.

    Content Images

    Content images differ from theme images in that we as designers don’t have full control. We’re shackled to the whims of a writer or a content producer with a burning desire for that full-window 50-image slideshow. Nevertheless, we need to make sure those 50 images hit a sweet spot for size and compression. That means we’re applying an acceptable amount of lossy compression on our JPGs and sizing them to correspond with viewport size and device resolution.

    We see a lot of designers and developers getting around responsive challenges by simply loading a larger image then necessary, not declaring dimensions on the image, and scaling the image using styles.

    Instead, we should use our current best option, Drupal’s Picture Module. The picture module uses the (soon to be accepted) HTML5 picture element and is a backport of Drupal 8's Responsive Image module which is a part of core Drupal 8. For many, the current preferred solution is to use an image tag with “srcset” and, yes, I am aware of the ongoing conversation around Drupal 8 image handling. Presently, however, the picture element and a polyfill is Acquia’s go-to solution for responsive images. It uses the Breakpoints Module to load the correct image according to viewport size and pixel density, and adopts our defined image styles to create derivatives for different viewports.

    This solution takes care of both image size and compression, doing the math to find that optimized sweet spot so you don’t have to.

    CONCLUSION

    Drupal can be a speedy back-end workhorse, but sloppy front-end implementations can quickly undo all your hard work. Employing the strategies I’ve outlined here can decrease your page-load times by a significant amount. Using sprites for theme images reduces the number of HTTP requests, and enables caching for future use. Drupal’s Picture Module takes the guesswork out of image delivery, optimizing with appropriate compression and size manipulation.

    And this is just a start towards your faster Drupal website. In the next post in this series, I’ll show you how to optimize your javascript and cascading style sheets -- two more ways you can improve your site’s front end to create faster page loads, and happier customers.

    Tags:  acquia drupal planet
    Categories: Drupal News

    How to Build a Global Strategy for eCommerce Excellence

    21 May 2015 - 2:21am

    Building a global technical commerce ecosystem requires looking at how each and every aspect of your retail business operates, both independently and as a cohesive ecosystem; across each channel in one market, and then across all of your markets around the world. With worldwide retail ecommerce sales projected to rise to nearly $2.5 trillion by 2018, now is the time.

    Before you can integrate new systems and start operating in new markets, however, you need to determine your commerce strategy. This should be built off of your commerce business goals, and refined by larger organizational goals, specifically brand and marketing. As you expand across borders, here are the most important strategic considerations.

    Selling in Marketplaces

    China is a buzzing market right now. According to Forrester, online retail spending in China reached $307 billion in 2013, and is projected to exceed $1 trillion by 2019. As a result, many retailers are flocking to the Tmall marketplace to establish a more personalized, Amazon-style online shop. It’s an easy entry point into the Chinese market, where brands can get to know the Chinese consumer and the retail environment through an established channel. In a market where 90 percent of ecommerce happens through marketplaces, this is a huge opportunity. But Tmall is not the only marketplace exploding, and China is not the only market that holds promise. According to eMarketer, 40.5 percent of US-based retailers sold to international customers through marketplaces like Tmall (China), Flipkart (India), Amazon (global), Ozon (Russia), Snapdeal (India), MercadoLibre (Mexico), and Rakuten (Japan) in 2014.

    So why are marketplaces effective? Well according to Forrester, they offer brands an easy point of entry to global markets, with the benefit of offering a sizable audience up front, streamlining market entry, and providing localized offerings. There’s less inherent risk, and the potential for great reward.

    Pursuing Partnerships

    Foreign markets are exactly that to brands seeking expansion: foreign. If you’ve never operated in them, then you have no idea what to expect, and while you can and should do the research and legwork to learn about the new market - trends, consumer behaviors, etc. - it’s often wise to consider leveraging the help of a partner who knows that landscape inside and out. Forrester published a report on Identifying Partners To Help Streamline Global Expansion, where they go into great detail about this idea of globalization partners. To them, the three main advantages of utilizing a partner agency are to:

    • Build and launch digital commerce operations in new countries quickly and easily
    • Reach global consumers through different business models
    • Ensure their websites address differing consumer preferences

    Agencies specializing in a particular market can give your business valuable insights and information that would be far harder to come by on your own, plus the expertise and know-how to accurately and efficiently get your business up and running. The below graphic walks you through the various questions your business must consider when entering a new market, and how a partner can help you answer them.

    Maintain Brand Consistency

    Keeping your branding consistent across all platforms is imperative -- if you can’t tell your story the same way in every market, then how can you expect a consumer to shop with you? It’s relatively easy to maintain your brand vision, voice, and strategy on your main website, but as you start entering new marketplaces, opening new retail stores in new countries, and having your websites localized -- the branding waters can be easily muddied.

    To do this effectively, your goal should be to keep the overall brand direction at the corporate level, so that ownership of messaging across all markets is directed by one united team at the top. Then you can create small, local teams for every market to add local flair and personalized messaging that appeals to customers in that market, and also adheres to the overarching brand message. This will require educating new market partners, internal teams, and anyone else with a hand in branding about your brand strategy and messaging, so that the message can stay crisp and clear across all channels and markets. If you can develop a broad brand strategy and story at the global level, then you can augment and apply it to each individual market as you enter it.

    Translation, Localization, and Transcreation

    In order to strike the right chord with consumers in your newest target market, you need to customize your assets to target them specifically. English assets with photos of an American family won’t resonate with a millennial shopper in India. This means assets not only need to be translated, but localized or even transcreated. Localization means taking existing assets and applying localized touches, like figures of speech or images that are more culturally appropriate. For example, the New York City skyline won’t resonate with a Japanese shopper like a scene from downtown Tokyo might. Swapping out a simple graphic might seem like a small change, but it makes a big impact.

    Transcreating content means completely overhauling existing assets, keeping in mind the initial business strategy, but allowing for local talent ingrained in the local community to tweak imagery and copy to preserve the creative and emotional intent of the content. Transcreation can often help assets resonate most powerfully in a new market.

    How you decide to update your content is up to you -- and you can ask market-specific partners for their input, too. This is a frequently outsourced part of the globalization process, because it’s easy to find experts in any new market who can localize and transcreate for you. Not only is delivering localized content a great way to target customers in a new market, but it also frees up your internal team to focus on other globalization efforts.

    Once you’ve got your strategic decisions sorted out -- marketplaces targeted, partners identified, branding message defined, and localization experts secured -- it’s time to consider what systems you’ll need to get the job done. In our next post, we’ll explore the system considerations you’ll need to identify and integrate to execute on your commerce business strategy.

    Tags:  commerce ecommerce globalization global expansion retail
    Categories: Drupal News

    Web Accessibility for Clients

    20 May 2015 - 3:32am

    You’re in good hands. A developer is building or renovating your organization’s website, and everything is shaping up as planned. You like what the developer has done and can’t wait to see the finished product.

    Just keep in mind that, at some point, your daily relationship with your developer is likely to end, when the contract comes to an end. The relationship can continue, of course, but at some point — no matter how impressive your website eventually looks and responds — you won’t need to rely on the developer. You’ll slowly take control of the site, adding more content, tweaking tools, and maybe even tinkering with design.

    That’s why it’s important in those building stages to understand how to make your website accessible to people with disabilities. Accessibility allows those with blindness and low vision, deafness and other disabilities to have full use and enjoyment of the Web. There’s no better time to implement the steps necessary for an accessible website then when reviewing the content that will shape a new or remodeled website. Much of what you need to do, in fact, goes hand in hand with creating content. And if your website is already up and running, there’s no harm going back and focusing on accessibility.

    This is the first of a two-part series that offers clients simple ways to create an accessible website. Hopefully, clients will see that they, too, can easily take the actions needed to make their websites accessible without the help of a developer. (If you’re interested, we not long ago posted a two-part series on web accessibility for developers.)

    Use Descriptive Alt Text

    A developer should use alt text throughout a website. It helps visually impaired visitors understand all the details behind an image. If, for some reason, the developer hasn’t made the alt text field required, you can ask them to do so. Regardless, you should still insert the alt text in the field yourself.

    But don’t settle for only one word of alt text. Just writing “koala bear,” for instance, won’t tell a visitor who’s using a screen reader that the koala bear is hanging delicately off a long branch of a eucalyptus tree while chomping on leaves. The more description the alt text provides in the 255 characters allowed, the more enlightened your visitors will be.

    Caption Away!

    Similarly, being descriptive doesn’t end with images. You should make all digital media on your website accessible to the hearing impaired. That means offering captions and transcripts for videos, podcasts and pre-recorded webinars.

    Most software —although not all — has the capability to create captions and transcripts. YouTube, for one, provides captions. Just as alt text lets visually impaired visitors understand what an image has to offer, captions and transcripts allow hearing-impaired visitors to read all that’s behind your site’s digital media offerings.

    Know the Limits of Third-party Services

    Again, not every third-party service lets users create captions and transcripts. Many services, for good or bad, limit what people can do with their products. Keep that in mind when working with your vendor; they usually have no control over third-party Web tools and services. It’s ideal to learn what those limitations are so you can either work with the third-party service to see if you can get what you need, or find a workaround solution with your developer. If a service says it doesn’t allow transcription, for example, then it usually doesn’t.

    We’ll soon post part two of this series. In the meantime, try some – or all – of these tips and you'll see that website accessibility is not that difficult to accomplish.

    Categories: Drupal News

    Fidélisation client : transactionnel contre émotionnel

    19 May 2015 - 10:24pm

    Les attentes des consommateurs vis-à-vis de l’expérience proposée par les détaillants ont évolué, et les marques doivent rester en phase avec ces attentes. Il existe toutefois deux catégories de consommateurs : ceux motivés par la « bonne affaire » et ceux motivés par l’expérience. Les consommateurs constamment à l’affût d’une bonne affaire veulent bénéficier du meilleur prix aussi rapidement que possible et choisissent à cette fin le canal le plus pratique. Les consommateurs qui recherchent la meilleure expérience ne se désintéressent pas nécessairement du prix, mais ils rêvent d’une expérience sur mesure.

    Fidélisation transactionnelle

    Les entreprises de commerce électronique comme Amazon, Overstock et Ebay excellent à susciter une fidélité transactionnelle chez leurs clients. Ces consommateurs sont séduits par la possibilité d’acheter au moment qui leur convient en bénéficiant du meilleur prix possible. Ils sont donc fidèles aux sites qui offrent prix bas, livraison gratuite et même souvent d’autres avantages comme le retour gratuit. La règle selon laquelle « le contenu est roi » ne s’applique pas à ces consommateurs car le contenu a peu d’influence sur leurs décisions d’achat. S’il y a un meilleur prix ailleurs, ils y vont sans hésiter.

    Il faut toutefois noter que, selon le rapport State of the American Consumer publié par Gallup pour 2014, les consommateurs fondent leurs décisions d’achat sur le prix uniquement lorsqu’il n’y a pas de lien émotionnel avec une marque ou un détaillant particulier — autrement dit, le prix prime lorsqu’il n’y a pas d’engagement. Le prix devient le seul facteur d’influence lorsqu’il constitue le seul élément de différenciation entre des offres concurrentes.

    Fidélisation émotionnelle

    Les consommateurs qui font preuve d’une fidélité émotionnelle sont ceux que nous qualifions comme étant « engagés » ; leurs motivations sont totalement différentes. Ils veulent se sentir écoutés et accordent leur fidélité à une marque en contrepartie d’un service personnalisé. Ils apprennent à connaître la marque et la marque apprend à les connaître jusqu’à tisser un lien relationnel.

    Une marque qui met l’accent sur la fidélisation émotionnelle développe une clientèle beaucoup plus dévouée et bénéficie de ventes répétées auprès de cette clientèle. Bien qu’Amazon et Overstock soient des sites populaires, leurs clients pourraient facilement les délaisser au profit d’autres sites dans l’espoir de réaliser de meilleures affaires. Imaginons, par exemple, qu’Amazon décide d’augmenter ses marges ou de supprimer la livraison gratuite. Un geste simple comme celui-ci réduirait à néant son avantage et les acheteurs autrefois fidèles au site s’en détourneraient instantanément.

    Target et Walmart, les géants de la vente au détail et en ligne, ont des business modèles similaires et proposent des expériences en magasin comparables, mais ont développé deux types distincts de fidélisation. Les clients de Target sont des acheteurs émotionnels — ils connaissent Bullseye, la mascotte de Target, le nom de la marque et son histoire. Les clients de Walmart sont des acheteurs transactionnels séduits par les prix et l’aspect pratique des magasins Walmart. Mais la question demeure — qu’est-ce qui permet de conserver un client sur le long terme ?

    Avec une concurrence de plus en plus forte dans le domaine de la vente au détail multicanale, les marques devront se concentrer sur la construction de ce lien avec le client. Selon le rapport Gallup « State of the American Consumer », le taux de visite annuel des clients totalement engagés est supérieur de 44% à celui des visites des consommateurs non engagés. D’après Gallup, cette augmentation du nombre de visites est payante puisque les acheteurs fidèles dépensent deux fois plus que les autres. Une excellente raison de créer ce lien entre une marque et le consommateur, non ?

    Les détaillants qui survivent uniquement grâce à des prix compétitifs devront trouver d’autres moyens pour transformer leurs acheteurs transactionnels en fans de leur marque, faute de quoi ils courront le risque d’être condamnés à vie à se contenter de marges faibles et de clients opportunistes. Même si les acheteurs transactionnels ne seront sans doute jamais des clients aussi dévoués à long terme que les acheteurs émotionnels, certains facteurs peuvent les pousser à l’achat ; le fait pour une marque de délivrer une expérience intégrant ces facteurs pourra les amener à revenir.

    Accorder aux acheteurs transactionnels une attention supplémentaire pourrait également les transformer en acheteurs émotionnels en faisant appel à leur désir de réaliser une bonne affaire. Il peut s’agir de leur proposer la livraison gratuite à un moment donné dans le cycle de vente si ces clients abandonnent régulièrement leur panier, ou de leur offrir un code promo à durée limitée. Ou peut-être de leur recommander un produit répondant précisément à leur besoin au bon moment, sur la base des recherches qu’ils ont effectuées. Vous montrez ainsi aux clients que vous vous souciez suffisamment d’eux pour leur délivrer un service personnalisé et que vous êtes attentif aux raisons qui les poussent à se rendre sur votre site.

    Même si le prix ou une offre spécifique est à l’origine de leur première visite, vous pouvez personnaliser leur expérience pour construire un lien émotionnel. Et si vous parvenez à créer ce lien émotionnel, vous gagnerez pratiquement à chaque fois.

    Tags:  retail commerce customer loyalty
    Categories: Drupal News

    How to Select Drupal Modules: Part 3 - Evaluation Tips

    19 May 2015 - 4:26am

    In the previous posts we’ve focused on defining your requirements and the basics of searching for modules. Once you’ve found a Drupal project you’re interested in, now you can make a quick evaluation of the project to determine if you should dig deeper before you test it out.

    Evaluation Criteria

    Each module you select and install on your site must be maintained. There will be security updates, feature improvements and bug fixes offered on a rolling basis. The update manager within Drupal will notify you when new releases are available. This means you will never miss a key security release.

    If a module is actively maintained it will mean that one aspect of your site is more likely to be secure and bug-free. One less thing to worry about! Take a “maintenance first” approach to module selection to limit potential issues arising from compatibility issues or security issues that might arise.

    An initial evaluation is something an experienced Drupal developer might do in about one to two minutes, simply to compare two modules to decide which to download and try first. However, let’s tease this apart. There are three useful criteria for evaluating a module.

    1. Reputation: How many maintainers? What other contributions have the maintainers made? Is the individual or company a member of the Drupal Association?
    2. Reach: Is there a community around the module? Are there related modules which integrate with it? What is the total number of installations? Checking the usage over time is there a stable arc?
    3. Currency: Have there been recent commits? Are issues being added by users? Is the maintainer responding? Is there a stable (green/not alpha or beta) release available?

    These criteria can give you some indication of the level of effort that is being invested in maintaining the software, and help you interpret information on the project page.

    The Project Page

    You can determine how a project scores against those criteria based on the information available on the project page itself. A wealth of information is available.

    1. Description: This should provide some basic information about the project and you should be able to tell what requirements the module has.
    2. Project information: Maintenance status and how many reported installations. Just because only two others use a project, doesn’t mean it’s not a good start for a solution for your team.
    3. Downloads: Is there a compatible version available? If it's not recently updated it might be a warning sign, or it might just be a stable, well-used module that just works.
    4. Maintainers: Is there an active team of maintainers? You can look at their profiles which also list other contributions and activities.
    5. What are current issues? The graphs indicate recent activity and also a brief analysis of how responsive the maintenance team is. Keep in mind most of this work is done on a voluntary basis, so if you’re willing to help out, you can often get a better response.
    6. Is documentation available? This will help you in the next step of testing and exploring the module.

    The project information provided should be considered in relation to the other information. For example, you might see a project like Bean doesn’t have a Drupal 8 version. This might make you wonder if the solution is future-friendly. In this case, similar functionality has been incorporated into Drupal 8, so it actually makes this module unnecessary.

    To give another example, a project with few installations could be just that unique solution you need to connect your Drupal site to an obscure third party application. And as another example, a project managed by a Drupal newcomer who has few contributions could be a great sign that someone is bringing in new skills and experience to the community.

    I would never disparage or dismiss a project based on just one of the criteria. Make sure you look at each aspect of the project and balance it with the rest of the information available.

    How can I help?

    OK, now we’ve whittled down our choices and found a module or two we’d like to try out. In the next blog post, we’ll actually install and test out a module. After that, I’ll show you how to explore and “learn” a new module.

    In our Drupal Site Building course we focus on the essential building blocks of Drupal and contributed modules. In fact, some of the contributed modules we use in the Drupal 7 course have become core in Drupal 8, which is a good sign that the community has convened around specific requirements and solutions.

    If you’re stuck trying to find a module for X, please leave a comment and I’ll help you find the module you’re looking for.

    Tags:  modules drupal 7 site building training learning functionality acquia drupal planet
    Categories: Drupal News

    Web Accessibility for Developers -- Part 2

    15 May 2015 - 4:15am

    We’re at the halfway point of what hopefully has been a helpful guide for developers to make a website accessible for all visitors. (If you missed the first part of this two-part series, please click here.)

    In this blog, we’ll review how instructional text, navigation, and other parts of development can allow those with blindness and low vision, deafness, and other disabilities to make full use of a website.

    There’s a Proper Place for Instructional Text

    When providing an example that will help the user fill out a field, place it after the label of the field and before the field itself. This will let the screen reader pinpoint the instructional text and leave no doubt to the user that they’re hearing an example of what’s required. For instance, an example of how to enter the country code and remaining digits of a telephone number should come just before the field.

    A Search that Searches When Instructed

    Many people love filters that are dynamic — offering results after each selection is made — but it’s not the best thing for a text reader. Dynamic searches cause the page to constantly refresh, leaving a visitor who’s using a text reader to wonder what’s going on. A page shouldn’t reload until the user hits a button. That means all filters and search functionality should have “submit,” “go,” and “apply” buttons.

    Jump Directly to Main Content

    Readers without disabilities probably take it for granted that they can jump directly to the main content on a webpage. But for those using a screen reader, they first have to listen to a long list of navigation links, icons and other elements before reaching the main content. That’s where a “skip to main content” link comes in handy. It allows a user to skip everything at the top of the page.

    The good news for developers using Drupal is that the “skip to main content” link is beginning to come right out of the box and is already included in some themes. If it’s not included, don’t worry. The code in your template should look similar to:

    <a id="skip-link" href="#main-content" class="element-invisible element-focusable">Skip to main content</a>.

    The CSS code should make the link invisible to a sighted user but will allow a screen reader to focus on the link.

    An Easier Way to Zoom and Shrink

    Visually impaired people who don’t need a screen reader still may need to manipulate the size of text. They don’t always know how to use keyboard shortcuts and need a user-friendly aid. In a matter of minutes, a site administrator can plop a text-resizing module onto a Drupal webpage. Here’s a handy helper on how to do it. Just keep in mind that it doesn’t always work for menu items, but it usually does resize static text.

    Know What to Show; What to Hide

    CSS allows developers to change the style of a webpage and make content sparkle. But some text-based screen readers or older screen readers need to read the page with all of the styles disabled. It’s important to make sure that if the stylesheets are turned off, the screen reader will still be able to read the order of the content correctly and be able to access all functionality.

    Most of the responsive Drupal themes are already providing this functionality out of the box, but this standard is important to think about, and test when choosing how you will lay out your pages.

    In order to test, disable your stylesheets — as seen in this screenshot of a White House page, for instance — and scroll down the page to ensure that the content order is the same as you originally intended.

    These are only a few steps that can help developers make a website accessible to all visitors. If you’d like to see more ideas — or perhaps even gain a greater understanding of Web accessibility itself — here are two resources worth checking out:

    The first is a checklist of standards from Section 508 of the federal Rehabilitation Act that government agencies must follow to provide full and fair Internet access to people with disabilities. Even though only federal agencies are required to follow them, the standards serve as a thorough and detailed source of steps for businesses and organizations to use.

    Another useful resource are the Web Content Accessibility Guidelines offered by the World Wide Web Consortium (WC3). The guidelines are comprehensive and should also help you on the way to creating an accessible website.

    Thanks for reading. Please leave a comment below if you have other suggestions you’d like to share.

    Down the road, we’ll post a companion, two-part series on accessibility for clients – stay tuned.

    Tags:  acquia drupal planet
    Categories: Drupal News

    How to Build a Flexible eCommerce Architecture for Your Global Brand

    15 May 2015 - 1:32am

    You’re the Head of eCommerce, or the CTO of a major retail brand. You’ve got a national retail store presence, and a massive customer database. Your sales are growing, your team excels at merchandising, your commerce platform works well in the US, and you’re ahead of the curve in product innovation within your industry.

    You’re running a well-oiled machine here, and now it’s time to expand into a new market. According to the Forrester Evolution of Global eCommerce Markets report, global expansion is set to explode in the next two years, so if you’re not thinking global you’re already behind. Given the projections Forrester has put forth, the question is not should you go global, but how do you globalize?

    Forrester’s report on how to “Capture the Global eCommerce Opportunity” breaks down the the biggest changes across the global ecommerce landscape in the past five years. Here’s what’s changed:

    • Companies across all categories are now expanding aggressively online.
    • Brands are adding a more diverse set of countries to their lists.
    • Businesses are looking for low-cost, low-risk ways to test international markets.
    • Brands are turning to marketplaces as an option to enter new markets.
    • Brands have a preferred global platform, but also assess the best option for each market.
    • Organizations are carefully straddling centralized versus localized control.

    In our previous post on building a world-class technical commerce ecosystem, we discussed the necessary considerations when building a system that’s “best-for-me” -- or best for your business. We talked about the importance of integrating custom tools, modules, and APIs to create a system tailored to meet the needs of your company. The approach is similar when deciding to globalize your commerce operations, except that everything is on a much grander scale.

    Unfortunately, most commerce platforms aren’t built to be globalized. Traditional commerce platforms were built for an antiquated commerce landscape. Back then, it was good enough to simply have an online presence in addition to your physical one. But those platforms aren’t equipped to handle this digitized era of omnichannel commerce, where experiences across every channel, in every country, on every device must be united. According to Forbes, 86 percent of buyers will pay more for a better customer experience. So why not deliver it?

    Not only does your company need to offer a seamless experience across all channels -- it now has to deliver that seamless experience in a locally relevant way across different markets around the world. Product information has to translated and localized, user experience needs to be thought through, new payment systems need to be considered, partners need to be identified, marketplaces explored, shipping and payment logistics sorted out -- and then you have to put all the pieces together. All of this must be done with a global perspective in mind: What kind of system will propel you forwards into the global marketplace today, tomorrow, and even 5-10 years down the line?

    Whether globalization is a new initiative for your company, or you’re already operating globally but are looking to unify your systems to create a more seamless experience, now is the time to capitalize on that opportunity. In our next post, we’ll discuss the necessary steps to take towards globalizing your commerce strategy, and then we’ll dive into the systems that you’ll need to help your business execute.

    Tags:  commerce retail global expansion commerce technology
    Categories: Drupal News

    Build Your Drupal 8 Team: Technical Roles and Required Skills

    14 May 2015 - 9:38pm

    Last time, we discussed some big themes your Drupal 8 team should be synched up with, like object-oriented programming. Now we're going to drill down into more specifics on the technical side.

    Is your tech team full of generalists, or do all your developers have special skill sets and focus on specific kinds of functionality, like databases or communications? Either way, someone on your team will have to fill each of these technical roles for a successful Drupal 8 project.

    Drupal 8 Architect

    More than anyone else on the project, the Drupal 8 architect needs to understand Drupal 8 in depth. The architect needs to make the decisions about the project's overall architecture, which requires envisioning how the system works as a whole. This is bigger than just the Drupal 8 application, because the project needs to fit into your company's entire software environment. It may need to be integrated with other corporate back-end systems, so this role needs to understand the full technical environment, not just the tech stack that comes with Drupal 8. As much as possible, this individual needs to have a strong understanding of front-end and back-end development tools in addition to a thorough understanding of how Drupal 8 works.

    UI Designer

    The UI designer needs to understand what the technology is capable of and how to use it to create the best experience for end users. To work with Drupal 8, the UI designer should keep building HTML, CSS and Javascript knowledge, but also develop a Drupal 8-specific understanding of how to create themes and build sites. Learning the capabilities of Twig is needed because Twig replaces PHPTemplate in the new version of Drupal. Instead of .tpl.php files, .html.twig files are needed.

    Front-End Developer

    All that stuff the UI designer promised the business? It's the front-end developer's job to turn that hypothetical design into a functioning interface. Like the UI designer, front end developers should enhance their knowledge of HTML, CSS and Javascript, and pick up knowledge of Twig. PHP knowledge will help also; so will knowing MySQL. The front-end developer will also want a Drupal 8-specific understanding of how to create themes and build sites, as well as how to develop custom modules and address Drupal 8 performance and Drupal 8 security concerns.

    Back-End Developer

    Clicking on website front-end elements does nothing until you implement the functionality in the back-end. You need to be able to write new functionality from scratch, building on existing components when possible. When the application needs to integrate with other systems, the back-end developer writes the code that hooks it all together into a system that functions seamlessly. This role needs some knowledge of front-end tools like HTML, CSS and JavaScript, but it also requires understanding back-end tools like PHP and MySQL in depth. For Drupal 8 knowledge, the back-end developer should focus on architecture and planning topics as well as how to develop custom modules and address Drupal 8 performance and Drupal 8 security concerns.

    Marketing Technical Lead

    The marketing technical lead owns the content publishing process. She defines the procedure for publishing content and makes sure it adheres to site standards. Because content doesn't accomplish anything unless someone sees it, the marketing technical lead needs to make sure it follows good SEO and SEM practices. It's important that the marketing tech lead keeps current with ever-changing SEO practices, and focuses on learning Drupal 8 as a content management system. Learning about the administration functions, and the kinds of changes you can make that won't require a developer to write code, will be especially useful for this role.

    Next time: Non-Technical Team Roles and Required Skills for a Drupal 8 Project.

    Tags:  acquia drupal planet
    Categories: Drupal News

    Selecting Drupal Modules: Part 2 - Searching for Modules

    14 May 2015 - 9:28pm

    In the first part of this series, you set out your list of requirements for a Drupal module of your dreams. In Drupal, modules extend the base functionality, and often there are contributed modules which will suit your needs.

    Now you know what you’re looking for. If you’ve learned essential site building skills, you’ve also eliminated any possibility that you might be able to create your solution in another way.

    The obvious place to start your search is on Drupal.org; the less obvious place is in your local user group. Drupal.org search results will prefer the most popular, widely used modules. And that is a path you can follow confidently. In your local community you can also glean from others' experience, and you may find people are quite friendly and generous. However, they will expect you’ve covered your bases first.

    Module searching

    Let's start your search on Drupal.org. The module search page allows you to filter your search by version, to select for compatibility.

    You can also browse by the topic area the modules relate to, for example "content modules" or "image modules."

    Case studies

    You should also review the in-depth case studies available in the community, paying closer attention to the more recent ones. It’s amazing to see how developers are forthcoming with details about modules they’ve evaluated, and which ones they chose. They also speak about the gaps, and where they needed to provide custom code.

    Community events

    You might hear a common phrase in the Drupal community: “The drop is always moving." The Drupal community is quick to respond to new trends and directions in web development; new modules come out to solve problems, or the community hive buzzes around a particular technique which involves several modules. This kind of information is easier to find at community events.

    Even if you can’t make it to the events in person, there’s a wealth of recordings published by the Drupal Association. You can find them on YouTube, organized by DrupalCons. Larger DrupalCamps are also publishing their recordings online. DrupalCamp London and DrupalCamp Brighton are two regional events I missed recently; thankfully they’ve posted online.

    They aren’t all called camps and ‘cons though. For example, there's DrupalSouth in New Zealand/Australia. Check your regional group on Groups.Drupal.org to find out what’s happening near you.

    There’s even an online DrupalCamp! My colleague, Jam, runs an online virtual DrupalCamp. Here you can check out the playlist of recent recordings.

    Even if you can’t make events in person, you can get the buzz of a community event online.

    What are you looking for?

    If you’re stuck trying to find a module for X, please leave a comment and I’ll help you find the module you’re looking for.

    It’s most likely that your problem can be solved not through some unique snowflake module, but actually through using the most common Drupal building blocks. We cover these commonly used and most popular modules in our Drupal Site Building class.

    Tags:  modules drupal 7 site building training learning functionality
    Categories: Drupal News

    Redefining Commerce: Bellroy Slims Down Site Without Compromising Quality

    12 May 2015 - 10:22pm

    This blog series - Redefining Commerce - highlights retail brands that are elevating traditional online commerce experiences, pushing the boundaries of what it means to be an online retailer, and delivering unparalleled consumer experiences.

    Bellroy sells wallets. That’s it.

    Their product line is simple, straightforward, and practical. If you assume that those things equate to a boring, lackluster brand, you’d be wrong. Bellroy has a carefully developed brand image with a thoughtful, comprehensive story to tell about their product and how it fits into the lives of their customers. They’ve clearly built a business around understanding customer pain points and needs, and have executed a nearly flawless UX based on that information. Their website is interesting, dynamic, and fun -- anything but boring.

    Right from your first experience landing on the homepage (both from a desktop and if you view their mobile site), Bellroy’s creativity and personality shines through. They use a mix of stylized product shots, illustrations, animated GIFs, and video on their homepage. Their use of mixed media adds intrigue and ensures that the customer will stick around to learn more.

    Every customer touch point is easy. They don’t make you work hard to find what you need, and that makes their site pleasant and enjoyable to explore. From the top navigation, which only offers four link options, to the page layout which is easy to navigate, everything is easy to find and simple to consume.

    Bellroy gives life to their products through weaving them into stories. Given the simplicity of the product, these stories could be pretty short or insignificant, but instead they do a great job of clearly explaining - through images and video - how their wallets can positively impact your life. Their “Stories” feature walks you through different use cases for their wallets, like travel or outdoors, and how exactly their wallets can make a difference.



    Their travel story, titled “Transit with Ease,” is far more than just a ploy to sell a product -- they offer quick tips for making travel easier, a tutorial on how to efficiently pack a bag to maximize space, and how to “digitize your docs” to make travel easier. Only after they’ve gone through these super helpful hints do they pitch the product, and visualize through video the benefits of buying a Bellroy wallet. This added value for customers is something that makes Bellroy’s experience better, because they’re offering educational content that can really make a difference in someone’s day, instead of just trying to sell.

    Specific product pages have the same look and feel as the rest of the site, and visuals are front and center. Upon landing on a product page, a video automatically starts and walks you through the benefits of your selected wallet, and animates precisely how the design works. A variety of practical product shots are included that visually display the benefits of the wallet. As you scroll down the page, you’ll find more product details, and more supporting visuals about the special wallet details -- what it’ll hold, how it all fits. This is done with pictures without relying on any text. At the bottom of each product page is a beautiful Instagram integration, which shows the wallets in everyday scenarios. Bellroy has a dedicated hashtag for collecting these images -- #MyBellroy.


    The Bellroy site is simply a pleasure to peruse, and makes me -- someone not at all in the market for a wallet -- interested in buying one just to see if they’re the wallets are as amazing as the online experience. And as the icing on the cake? The company is about more than just making a profit. Read more about their strong ideologies and commitment to the environment, and to see what sets Bellroy apart from other similar commerce sites.

    What’s Working:

    • Back to Basics. Bellroy strips down the traditional commerce experience to the bare bones, making it simple to navigate and easy to find all of their outstanding content. The true beauty of the site lies in its simplicity.
    • Visualize Everything. Wallets aren’t an inherently beautiful product, but Bellroy makes them beautiful. Their product imagery is clear and simple, yet it resonates, leaving shoppers not only wanting to see, but to touch and feel these wallets.
    • Know Your Customers. Bellroy has gone to great lengths to develop their products, which is part of what makes them so successful. Because they have a customer-first mentality, they’re able to offer an experience that feels more educational than salesy, and offer a product of tremendous value.
    Tags:  commerce retail
    Categories: Drupal News

    Acquia Helps Shine Spotlight on Drupal 8 at DrupalCon Los Angeles

    12 May 2015 - 5:36am


    Here’s an understatement of the year: There’s an abundance of Drupal brainpower gathered in Los Angeles this week for DrupalCon 2015.

    Here’s another: Drupalists aren't afraid to share what they know to make the Drupal community a smarter place.

    Thousands of the world’s best and brightest Drupalists (users, developers, themers, module maintainers, core contributors and others) are in LA for the largest DrupalCon in history – perhaps more than 4,000 attendees. Thankfully, there’s no truth to the rumor that all that brain tonnage will cause California to sink into the Pacific Ocean.

    Community growth and massive adoption of the Drupal open source web content management platform are reasons enough for a record turnout. But there’s also this: The upcoming release of Drupal 8, the most important and innovative release in Drupal’s history, will be front and center at Los Angeles.

    Acquia’s involvement at DrupalCon is massive. Look for Acquians (we’ll be wearing Acquia t-shirts), stop us in the hallways, ask us what we’re doing, and visit our Expo booth. And, be sure to come to our speaking sessions. My Acquia colleagues lead no fewer than 15 Drupal-related sessions at DrupalCon.

    Dries Buytaert, Drupal creator and Acquia co-founder and CTO, will keynote DrupalCon Los Angeles on Tuesday, May 12, at 9 am. Drupal 8 and a lot more is on his mind. Don’t miss his landmark keynote.

    Plan also to attend Acquia’s speaking sessions; many will spotlight Drupal 8. A few highlights from Acquia’s sessions:

    • Personalization and Drupal: An Inside View to the World's Biggest Brands
    • Inside Los Angeles' Move to Drupal
    • A "plain Drupal English" guide to the remaining Drupal 8 criticals
    • Q&A with Dries
    • A complete list of Acquia speakers can be found here

    A river of info on Drupal and D8 will also flow from Acquia’s Expo booth.

    At the Expo reception (Monday, May 11, 5-6 pm Pacific) come by Booth #301 to participate in Drupal 8 Jeopardy, a game-show themed Q&A hosted by Acquia’s jam and Drupal core maintainer Angie Byron (@webchick) who’ll quiz passers-by and hand out prizes for correct answers.

    Beyond that, stick around for a full slate of rich, useful content from Acquians in our booth theatre from Tuesday-Thursday. Topics include:

    • Semantic Content in Drupal 8 (Kevin O’Leary)
    • Multisites and Microsites (Ron Northcutt)
    • Drupal 8’s Render Pipeline (Wim Leers)
    • Drupal Personalization Architecture (Tim Holt)
    • …and many more quick-hitting sessions can be found here

    Finally, attendees are invited to register for an Acquia Certification exam during DrupalCon LA. As a DrupalCon-exclusive offer, free retakes will be offered onsite.

    The week will be over before you know it. Plan wisely and enjoy!

    Tags:  Drupal Drupal 8 D8 DrupalCon Acquia Los Angeles dries buytaert
    Categories: Drupal News

    Acquia Certification offers testing at DrupalCon LA

    8 May 2015 - 10:39pm

    The Acquia Certification Program is running a test center at DrupalCon LA in room 306A.

    Attendees can test their knowledge and skills and earn an Acquia Certification credential while at the event. Stop by and say hello! For those who have earned a credential in the past, we have special pins and stickers for you, get them while they last!

    Testing starts Monday at 1 p.m. For more information and to register for an exam visit Acquia Certification DrupaCon LA

    All exams taken at DrupalCon have a free retake offer and are offered on a first-come, first-served basis. You can reserve your seat during the event and this offer is only available if you take the exam at the event.

    There are now four exams to choose from! Including the brand new Acquia Certified Drupal Site Builder exam.

    Acquia Certification Program

    Follow the program on twitter @AcquiaCertified and for further questions, email peter.manijak@acquia.com.

    Acquia Certification will validate your skills and knowledge that focus on open source web development with Drupal.
    • Establish your credibility and expertise with your peers
    • Give you more visibility within the marketplace
    • Provide you with a formal certification in a dynamic field

    Tags:  training certification learning Drupal developer
    Categories: Drupal News

    Web Accessibility Tips for Developers

    8 May 2015 - 3:06am

    Creating the code that makes a website accessible to all visitors doesn’t have to be as time-consuming or resource-intensive as you might think. All you need to do is follow some simple steps that require a little extra time and effort. But these efforts will ensure that your Web content is at the fingertips of everyone — including those with blindness and low vision, deafness, and other disabilities.

    It’s up to both the developer and the client to achieve site accessibility. Although they usually work together in the planning and later stages of website creation, a developer and client also have separate responsibilities in making a site accessible. This blog post, the first in a four-part series that offers website accessibility tips for developers, will make this important part of development easy to follow. And it comes just in time for Global Accessibility Awareness Day on May 21.

    Reading More Shouldn’t Take More Effort

    The visually impaired rely on screen readers to help them learn what’s on a page, and to navigate a site. But without the proper code in place, a screen reader that’s reading a short list of blog posts on a landing page that will direct users to a longer list of items, will only say “read more” over and over again.

    Not knowing what the “more” is, a user will probably get frustrated and go somewhere else. Fortunately, all that’s needed to get a screen reader to articulate the details that accompany the “more” is just a few snippets of code — commands that accommodate disabled people while at the same time hiding text and not cluttering up the screen for non-disabled people.

    A developer simply needs to include a small snippet of code similar to:

    <a href="/">Read more <span class="readmore"> [site] Blogs</span></a>.

    The “read more” CSS class should include code that makes the span class invisible to sighted users but can be heard by non-sighted users. Sighted users would still see “Read More” but non-sighted users would hear “Read More about [site] Blogs.”

    Alt Text Should Paint a Clear Picture

    Developers should stress to clients the necessity and importance of using alt text on a webpage. It helps visually impaired visitors know all there is to know about an image.

    It’s easy to overlook when constructing a webpage, but it’s super easy to include alt text in an image’s markup code. A simple description of what the image is, and its title, are all that’s needed — as seen in this example of the markup box for a photo of Attorney General Eric Holder.

    Spell Out What’s Required in a Required Field

    Many websites use an asterisk as a cue for people to know what’s a required field of input on a form — but that’s not the best method to reach everyone. That sort of general warning doesn’t always work with screen readers; the user will be left guessing where the required field is. Not to mention, a colorblind visitor won’t see the red or green that’s typically used to highlight the field asterisk warning.

    The solution is easy. First, the code behind the field should spell out the name of the required field, and the fact that inputting information there is required — so that people using screen readers will have no doubt about what they need to do. Also, the code should inform users that an asterisk is indeed the warning that’s denoting a required field; that way colorblind visitors who can’t see the red or green text that’s often used on websites as the only type of warning won’t have to second-guess and those using a screen reader will also will know what to do.

    Don’t Bury Mistakes; Put the Error Message at Top

    Another thing about website forms: A visitor who errs when completing an online form should be immediately informed on the refreshed page about where they’ve made a mistake. Otherwise, a screen reader will speak the entire page again and mention the errors only when it reaches the incorrect fields. The refreshed page should instead offer — at the very top — a basic box that lists what went wrong and what is required.

    That’s it for now. Stay tuned for second part of this series, as we take you, the developer, down a true and easy path to website accessibility.

    Tags:  acquia drupal planet
    Categories: Drupal News

    Acquia's Move to Boston

    8 May 2015 - 1:55am

    After more than six years in the suburbs, Acquia is moving its corporate headquarters from Burlington to downtown Boston. The move is a major milestone for our company as we get ready to take residence in the heart of the city’s Financial District, a short walk to Faneuil Hall, Post Office Square, and Boston Harbor. Some of our sales colleagues are already there; for the rest of the company, our move becomes official Monday, May 11.

    Our new headquarters, Exchange Place at 53 State Street, mixes classic and contemporary architecture. The historic Boston Stock Exchange, a 12 floor granite and marble edifice, connects with an ultra-modern 40-story, reflective glass office tower. Acquia will have a home in both buildings, in the towers' 10th and 11th floors. Advertising agencies Hill Holliday and The Blackstone Group will be our neighbors, as will be Goodwin Procter and several other law firms.

    Our move to Boston will have a transformative impact on our company and our culture. Our new location nearly doubles the capacity for our global headquarters and gives us needed room to grow. We’ll continue to have an open office environment, and the two-floor space will feature dozens of meeting rooms and collaboration spaces. Each floor will have a walking track for one-on-one meetings on the move. Being in the city will help us find and recruit the area’s best talent too, as we join Boston’s thriving tech community, and be a convenient location for customers and partners to visit. We look forward to sharing more as we get acquainted with our new facility.


    "Exchange-place-boston" by Arjunkach. Licensed under CC BY-SA 3.0 via Wikimedia Commons

    Categories: Drupal News

    Building a great remote team, helping clients & giving back

    8 May 2015 - 12:26am
    Language Undefined

    The European Acquia Client Advisory team had an onsite week in Reading the week after Drupal Camp London 2015. I got the chance to see a number of them there and sit down with two of my friends from "Supporta!"–Daniel Blomqvist and Henk Beld. We talked about remote teams and helping others succeed with Drupal, while also paying it back/forward by sharing and teaching what they learn and what they know.

    Categories: Drupal News

    Security in the Cloud: Why Open Source is the Best Choice

    7 May 2015 - 10:37pm


    This is the first of a series of security-related postings, which Acquia will compile into a free ebook. In this entry, we’ll look at the perennial question: Is Open Source software inherently more secure than commercial closed-source software?

    Securing applications is an ongoing process. It’s a continuum that requires vigilance.

    Application security begins during the requirements analysis stage of the Software Development Lifecycle, and must be nurtured throughout the life of the application to be successful.

    With Drupal properly configured and managed, it is as secure and reliable as any enterprise content management tool available. However, a Drupal application must be maintained and enhanced over the course of its existence. Acquia Cloud eases this management and maintenance burden on customers, and substantially reduces the risk that software vulnerabilities, external actors, or poor human choices will compromise the integrity of the application or the organization.

    As requirements are gathered for a new project, and both open and closed systems are considered, evaluators often ask, Which solution is more secure?

    This is frequently cast as a contest between the ideologies of open and closed source software.

    It’s the wrong question. All software is susceptible to errors at every step of the lifecycle: from first release, through patches, and on through end-of-life support, when the provider no longer supports the code.

    Repeated professional and academic assessments have demonstrated that coding errors are simply part of software development. The professionalism of closed-source commercial software development, which has continually improved its security reviews and practices, is matched by the professional commitment of open source engineers. The main difference between the two is the visibility of source code to all users.

    Because most malicious users take the same approach to probing for and exploiting known vulnerabilities, by trying to enter systems on the Web, source code availability seldom plays an important role in discovering flaws in mistakenly unprotected servers, services, or protocols. Open source code, however, enjoys a greater flexibility and speed-to-solution when a vulnerability is discovered, which we will look at later.

    Writing, testing, and shipping perfect code is the impossible dream that falsely creates the impression that some software is inherently more secure than others. All non-trivial software is imperfect, and the hardware it runs on can also carry vulnerabilities. In fact, the likelihood of security vulnerabilities is inherent in any application, because people often make mistakes in development or configuration of an application.

    So, when we talk about “computer security,” we must recognize that we’re really talking about human security practices that can fail at any number of user-controlled points. Open source software makes those potential flaws a discussion among a group of coders, reviewers, and security professionals. In closed source software, a potential flaw is often regarded as a secret -- one that may impede the resolution time or increase the risk of a discovered vulnerability.

    A race with intruders

    At the time a vulnerability is discovered, the clock starts counting down to an increase in attacks against that vulnerability. The closed-source software world depends on “security through obscurity,” the assumption that hiding source code makes it harder to discover vulnerabilities. This means that a newly discovered vulnerability sets off a race between the developer and malicious users: who’s going to patch or exploit that vulnerability first?

    The same race happens in the open-source software field, but there are many more people familiar with the open source code, so the dynamics are very different. Sometimes projects even collaborate with each other to increase the number of developers working on the same fix, as was the case in August, 2014 for the XML-RPC Denial of Service affecting both WordPress and Drupal.

    By comparison, in proprietary software only the commercial software company’s employees can work to fix an error in the closed code.

    Indeed, many commercial software security vulnerabilities are discovered by outside consultants and security professionals, who inform the company that built the application. These outside discoverers may bring a solution to the problem along with their vulnerability report, but ultimately the vulnerability will only be patched when the company decides to respond, when it is able.

    In some situations, this vulnerability becomes an open secret held closely by an ever-expanding circle of people in the know, all hoping the Bad Guys don’t find out before they deliver a patch. By contrast, commercial companies with a vested interest in the security and capabilities of certain open source systems are now frequently joining together to fund development or security remediations out in the open. Thus, open source actually adds another dimension of security through this community approach to development: it provides a constructive outlet for coders whose passion is searching for vulnerabilities.

    Open source code software allows many hands to work towards the mission of identifying and fixing vulnerabilities. The same race to patch a vulnerability exists, but the open source community has a more distributed approach to responding to a known issue. This is generally understood to be an advantage. In a 2009 University of Washington paper, Is Open Source Software More Secure?, researchers, including a Microsoft contributor, concluded:

    “...Open source does not pose any significant barriers to security, but rather reinforces sound security practices by involving many people that expose bugs quickly, and offers side-effects that provide customers and the community with concrete examples of reusable, secure, and working code.”

    It’s worth mentioning, by the way, that in late 2014 Microsoft itself, once the paragon of the closed software model, announced that it will make its server-side .NET stack and core runtime frameworks available as open source code. Acquia’s Christopher Stone said it was the software equivalent of the falling of the Berlin Wall.

    So the real operational security challenges come after a vulnerability is discovered, in the time between a patch becoming available and the time that customers patch their software. Most successful attacks occur in that window. Any system left unpatched is likely to be targeted at some point.

    This is why Acquia Cloud's managed platform includes patching and maintaining of all server components, prepares security updates for their customers with Remote Administration, and recommends security best practices and configuration hardening for Drupal applications.

    With Acquia, customers can count on rapid responses to vulnerabilities and a quick delivery of patches when available.

    The intractable problems in computer security remain: open or closed, people write imperfect code; many are lazy about patching or upgrading to the latest version to close newly discovered vulnerabilities.

    The challenge is bigger than open source versus closed software.

    That’s why we’re confident that the Acquia approach is the best hybrid response to the threat of imperfect software. We leverage professional practice, the open source community, and a tightly managed continuous-deployment workflow to quickly patch vulnerabilities on our platform, while providing the tools to customers to stay up to date with regards to patching their Drupal applications.

    We’ll get into the details of Acquia’s approach to patch management in one of our next posts.

    Tags:  acquia drupal planet
    Categories: Drupal News